summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--.github/CODEOWNERS11
-rw-r--r--.gitignore1
-rw-r--r--doc/languages-frameworks/android.section.md2
-rw-r--r--doc/languages-frameworks/haskell.section.md2
-rw-r--r--doc/languages-frameworks/php.section.md112
-rw-r--r--doc/languages-frameworks/vim.section.md7
-rw-r--r--doc/preface.chapter.md2
-rw-r--r--doc/stdenv/multiple-output.xml2
-rw-r--r--flake.nix2
-rw-r--r--lib/attrsets.nix4
-rw-r--r--lib/default.nix2
-rw-r--r--lib/deprecated.nix1
-rw-r--r--lib/generators.nix53
-rw-r--r--lib/licenses.nix12
-rw-r--r--lib/sources.nix7
-rw-r--r--lib/strings.nix32
-rw-r--r--lib/systems/default.nix1
-rw-r--r--lib/systems/doubles.nix3
-rw-r--r--lib/systems/inspect.nix1
-rw-r--r--lib/systems/parse.nix3
-rw-r--r--lib/tests/misc.nix42
-rw-r--r--lib/tests/systems.nix5
-rw-r--r--maintainers/maintainer-list.nix149
-rw-r--r--maintainers/team-list.nix9
-rw-r--r--nixos/doc/manual/installation/installing.xml3
-rw-r--r--nixos/doc/manual/release-notes/rl-2003.xml162
-rw-r--r--nixos/doc/manual/release-notes/rl-2009.xml103
-rw-r--r--nixos/lib/make-iso9660-image.sh1
-rw-r--r--nixos/lib/make-options-doc/default.nix6
-rw-r--r--nixos/lib/test-driver/test-driver.py15
-rw-r--r--nixos/maintainers/scripts/azure-new/.gitignore1
-rw-r--r--nixos/maintainers/scripts/azure-new/README.md42
-rwxr-xr-xnixos/maintainers/scripts/azure-new/boot-vm.sh36
-rw-r--r--nixos/maintainers/scripts/azure-new/common.sh7
-rw-r--r--nixos/maintainers/scripts/azure-new/examples/basic/image.nix10
-rw-r--r--nixos/maintainers/scripts/azure-new/examples/basic/system.nix34
-rw-r--r--nixos/maintainers/scripts/azure-new/shell.nix13
-rwxr-xr-xnixos/maintainers/scripts/azure-new/upload-image.sh58
-rw-r--r--nixos/modules/config/gtk/gtk-icon-cache.nix2
-rw-r--r--nixos/modules/config/vte.nix4
-rw-r--r--nixos/modules/config/xdg/autostart.nix8
-rw-r--r--nixos/modules/config/xdg/icons.nix4
-rw-r--r--nixos/modules/config/xdg/menus.nix8
-rw-r--r--nixos/modules/config/xdg/mime.nix4
-rw-r--r--nixos/modules/config/xdg/portal.nix4
-rw-r--r--nixos/modules/config/xdg/sounds.nix4
-rw-r--r--nixos/modules/hardware/sensor/iio.nix7
-rw-r--r--nixos/modules/hardware/uinput.nix19
-rw-r--r--nixos/modules/i18n/input-method/ibus.nix4
-rw-r--r--nixos/modules/installer/cd-dvd/installation-cd-base.nix2
-rw-r--r--nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix2
-rw-r--r--nixos/modules/installer/cd-dvd/installation-cd-graphical-plasma5.nix2
-rw-r--r--nixos/modules/installer/cd-dvd/installation-cd-minimal.nix2
-rw-r--r--nixos/modules/installer/cd-dvd/iso-image.nix24
-rw-r--r--nixos/modules/installer/tools/nixos-generate-config.pl4
-rw-r--r--nixos/modules/misc/documentation.nix4
-rw-r--r--nixos/modules/module-list.nix10
-rw-r--r--nixos/modules/profiles/hardened.nix3
-rw-r--r--nixos/modules/profiles/installation-device.nix4
-rw-r--r--nixos/modules/programs/geary.nix4
-rw-r--r--nixos/modules/programs/gnome-disks.nix4
-rw-r--r--nixos/modules/programs/gnome-documents.nix4
-rw-r--r--nixos/modules/programs/gnome-terminal.nix6
-rw-r--r--nixos/modules/programs/nm-applet.nix4
-rw-r--r--nixos/modules/security/acme.nix6
-rw-r--r--nixos/modules/services/amqp/activemq/default.nix8
-rw-r--r--nixos/modules/services/backup/borgbackup.nix28
-rw-r--r--nixos/modules/services/backup/borgbackup.xml227
-rw-r--r--nixos/modules/services/backup/syncoid.nix6
-rw-r--r--nixos/modules/services/cluster/hadoop/default.nix32
-rw-r--r--nixos/modules/services/continuous-integration/buildkite-agents.nix4
-rw-r--r--nixos/modules/services/continuous-integration/gitlab-runner.nix11
-rw-r--r--nixos/modules/services/continuous-integration/hydra/default.nix33
-rw-r--r--nixos/modules/services/databases/mysql.nix17
-rw-r--r--nixos/modules/services/databases/postgresql.xml103
-rw-r--r--nixos/modules/services/desktops/accountsservice.nix4
-rw-r--r--nixos/modules/services/desktops/bamf.nix4
-rw-r--r--nixos/modules/services/desktops/gnome3/at-spi2-core.nix4
-rw-r--r--nixos/modules/services/desktops/gnome3/chrome-gnome-shell.nix4
-rw-r--r--nixos/modules/services/desktops/gnome3/evolution-data-server.nix6
-rw-r--r--nixos/modules/services/desktops/gnome3/glib-networking.nix4
-rw-r--r--nixos/modules/services/desktops/gnome3/gnome-initial-setup.nix4
-rw-r--r--nixos/modules/services/desktops/gnome3/gnome-keyring.nix6
-rw-r--r--nixos/modules/services/desktops/gnome3/gnome-online-accounts.nix4
-rw-r--r--nixos/modules/services/desktops/gnome3/gnome-online-miners.nix4
-rw-r--r--nixos/modules/services/desktops/gnome3/gnome-remote-desktop.nix6
-rw-r--r--nixos/modules/services/desktops/gnome3/gnome-settings-daemon.nix4
-rw-r--r--nixos/modules/services/desktops/gnome3/gnome-user-share.nix4
-rw-r--r--nixos/modules/services/desktops/gnome3/rygel.nix6
-rw-r--r--nixos/modules/services/desktops/gnome3/sushi.nix4
-rw-r--r--nixos/modules/services/desktops/gnome3/tracker-miners.nix5
-rw-r--r--nixos/modules/services/desktops/gnome3/tracker.nix4
-rw-r--r--nixos/modules/services/desktops/gvfs.nix4
-rw-r--r--nixos/modules/services/desktops/malcontent.nix9
-rw-r--r--nixos/modules/services/desktops/pantheon/contractor.nix18
-rw-r--r--nixos/modules/services/desktops/pipewire.nix6
-rw-r--r--nixos/modules/services/desktops/telepathy.nix4
-rw-r--r--nixos/modules/services/desktops/tumbler.nix4
-rw-r--r--nixos/modules/services/desktops/zeitgeist.nix5
-rw-r--r--nixos/modules/services/games/factorio.nix26
-rw-r--r--nixos/modules/services/hardware/xow.nix17
-rw-r--r--nixos/modules/services/mail/sympa.nix12
-rw-r--r--nixos/modules/services/misc/matrix-synapse.nix9
-rw-r--r--nixos/modules/services/misc/nix-daemon.nix69
-rw-r--r--nixos/modules/services/misc/nixos-manual.nix73
-rw-r--r--nixos/modules/services/misc/rogue.nix62
-rw-r--r--nixos/modules/services/monitoring/netdata.nix19
-rw-r--r--nixos/modules/services/monitoring/prometheus/alertmanager.nix2
-rw-r--r--nixos/modules/services/network-filesystems/netatalk.nix5
-rw-r--r--nixos/modules/services/network-filesystems/rsyncd.nix5
-rw-r--r--nixos/modules/services/network-filesystems/samba.nix5
-rw-r--r--nixos/modules/services/networking/3proxy.nix10
-rw-r--r--nixos/modules/services/networking/connman.nix17
-rw-r--r--nixos/modules/services/networking/dnscache.nix10
-rw-r--r--nixos/modules/services/networking/magic-wormhole-mailbox-server.nix28
-rw-r--r--nixos/modules/services/networking/mullvad-vpn.nix43
-rw-r--r--nixos/modules/services/networking/ndppd.nix10
-rw-r--r--nixos/modules/services/networking/networkmanager.nix4
-rw-r--r--nixos/modules/services/networking/pixiecore.nix134
-rw-r--r--nixos/modules/services/networking/quorum.nix229
-rw-r--r--nixos/modules/services/networking/rxe.nix29
-rw-r--r--nixos/modules/services/networking/ssh/sshd.nix4
-rw-r--r--nixos/modules/services/networking/strongswan.nix30
-rw-r--r--nixos/modules/services/networking/syncthing.nix14
-rw-r--r--nixos/modules/services/networking/wg-quick.nix2
-rw-r--r--nixos/modules/services/scheduling/atd.nix2
-rw-r--r--nixos/modules/services/web-apps/gerrit.nix218
-rw-r--r--nixos/modules/services/web-apps/moinmoin.nix2
-rw-r--r--nixos/modules/services/web-apps/nextcloud.nix72
-rw-r--r--nixos/modules/services/web-apps/nextcloud.xml48
-rw-r--r--nixos/modules/services/web-apps/youtrack.nix8
-rw-r--r--nixos/modules/services/web-servers/nginx/default.nix22
-rw-r--r--nixos/modules/services/web-servers/phpfpm/default.nix1
-rw-r--r--nixos/modules/services/x11/desktop-managers/enlightenment.nix2
-rw-r--r--nixos/modules/services/x11/desktop-managers/gnome3.nix19
-rw-r--r--nixos/modules/services/x11/desktop-managers/mate.nix44
-rw-r--r--nixos/modules/services/x11/desktop-managers/pantheon.nix4
-rw-r--r--nixos/modules/services/x11/desktop-managers/pantheon.xml16
-rw-r--r--nixos/modules/services/x11/desktop-managers/xfce.nix5
-rw-r--r--nixos/modules/services/x11/display-managers/account-service-util.nix5
-rw-r--r--nixos/modules/services/x11/display-managers/default.nix13
-rw-r--r--nixos/modules/services/x11/display-managers/gdm.nix8
-rw-r--r--nixos/modules/services/x11/display-managers/lightdm-greeters/pantheon.nix4
-rw-r--r--nixos/modules/services/x11/display-managers/lightdm.nix4
-rw-r--r--nixos/modules/services/x11/xserver.nix3
-rw-r--r--nixos/modules/system/boot/initrd-ssh.nix178
-rw-r--r--nixos/modules/system/boot/stage-1.nix5
-rw-r--r--nixos/modules/system/boot/systemd.nix1
-rw-r--r--nixos/modules/tasks/filesystems/zfs.nix2
-rw-r--r--nixos/modules/tasks/network-interfaces-scripted.nix18
-rw-r--r--nixos/modules/tasks/network-interfaces.nix126
-rw-r--r--nixos/modules/virtualisation/azure-common.nix2
-rw-r--r--nixos/modules/virtualisation/azure-image.nix47
-rw-r--r--nixos/modules/virtualisation/containers.nix8
-rw-r--r--nixos/modules/virtualisation/libvirtd.nix11
-rw-r--r--nixos/release-combined.nix190
-rw-r--r--nixos/release-small.nix7
-rw-r--r--nixos/tests/all-tests.nix13
-rw-r--r--nixos/tests/ceph-multi-node.nix6
-rw-r--r--nixos/tests/ceph-single-node.nix6
-rw-r--r--nixos/tests/dovecot.nix4
-rw-r--r--nixos/tests/gerrit.nix55
-rw-r--r--nixos/tests/hydra/common.nix47
-rw-r--r--nixos/tests/hydra/db-migration.nix86
-rw-r--r--nixos/tests/hydra/default.nix137
-rw-r--r--nixos/tests/initrd-network-ssh/default.nix22
-rw-r--r--nixos/tests/initrd-network-ssh/dropbear.privbin1573 -> 0 bytes
-rw-r--r--nixos/tests/initrd-network-ssh/dropbear.pub1
-rw-r--r--nixos/tests/initrd-network-ssh/generate-keys.nix8
-rw-r--r--nixos/tests/initrd-network-ssh/id_ed255197
-rw-r--r--nixos/tests/initrd-network-ssh/id_ed25519.pub1
-rw-r--r--nixos/tests/initrd-network-ssh/openssh.priv51
-rw-r--r--nixos/tests/initrd-network-ssh/openssh.pub1
-rw-r--r--nixos/tests/initrd-network-ssh/ssh_host_ed25519_key7
-rw-r--r--nixos/tests/initrd-network-ssh/ssh_host_ed25519_key.pub1
-rw-r--r--nixos/tests/installer.nix1
-rw-r--r--nixos/tests/kafka.nix2
-rw-r--r--nixos/tests/magic-wormhole-mailbox-server.nix38
-rw-r--r--nixos/tests/mongodb.nix84
-rw-r--r--nixos/tests/mysql.nix60
-rw-r--r--nixos/tests/nextcloud/basic.nix6
-rw-r--r--nixos/tests/nextcloud/with-mysql-and-memcached.nix8
-rw-r--r--nixos/tests/nextcloud/with-postgresql-and-redis.nix8
-rw-r--r--nixos/tests/nginx-pubhtml.nix20
-rw-r--r--nixos/tests/os-prober.nix2
-rw-r--r--nixos/tests/php/default.nix7
-rw-r--r--nixos/tests/php/fpm.nix55
-rw-r--r--nixos/tests/php/pcre.nix (renamed from nixos/tests/php-pcre.nix)31
-rw-r--r--nixos/tests/quorum.nix79
-rw-r--r--nixos/tests/rabbitmq.nix2
-rw-r--r--nixos/tests/rxe.nix2
-rw-r--r--nixos/tests/switch-test.nix2
-rw-r--r--nixos/tests/systemd-confinement.nix6
-rw-r--r--nixos/tests/systemd.nix2
-rw-r--r--nixos/tests/virtualbox.nix4
-rw-r--r--nixos/tests/wireguard/default.nix142
-rw-r--r--nixos/tests/wireguard/make-peer.nix23
-rw-r--r--nixos/tests/wireguard/wg-quick.nix63
-rw-r--r--pkgs/applications/accessibility/contrast/default.nix1
-rw-r--r--pkgs/applications/audio/MMA/default.nix2
-rw-r--r--pkgs/applications/audio/aeolus/default.nix6
-rw-r--r--pkgs/applications/audio/ardour/default.nix4
-rw-r--r--pkgs/applications/audio/avldrums-lv2/default.nix29
-rw-r--r--pkgs/applications/audio/beast/default.nix38
-rw-r--r--pkgs/applications/audio/bshapr/default.nix4
-rw-r--r--pkgs/applications/audio/cantata/default.nix15
-rw-r--r--pkgs/applications/audio/cheesecutter/0001-fix-impure-build-date-display.patch26
-rw-r--r--pkgs/applications/audio/cheesecutter/default.nix48
-rw-r--r--pkgs/applications/audio/deadbeef/default.nix6
-rw-r--r--pkgs/applications/audio/deadbeef/fix-wildmidi.patch19
-rw-r--r--pkgs/applications/audio/drumkv1/default.nix6
-rw-r--r--pkgs/applications/audio/elisa/default.nix37
-rw-r--r--pkgs/applications/audio/faust/faust2.nix6
-rw-r--r--pkgs/applications/audio/faust/faust2jaqt.nix2
-rw-r--r--pkgs/applications/audio/faust/faust2lv2.nix3
-rw-r--r--pkgs/applications/audio/ft2-clone/default.nix4
-rw-r--r--pkgs/applications/audio/gnome-podcasts/default.nix1
-rw-r--r--pkgs/applications/audio/grandorgue/default.nix32
-rw-r--r--pkgs/applications/audio/jackmix/default.nix3
-rw-r--r--pkgs/applications/audio/lingot/default.nix42
-rw-r--r--pkgs/applications/audio/lollypop/default.nix4
-rw-r--r--pkgs/applications/audio/lsp-plugins/default.nix5
-rw-r--r--pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix2
-rw-r--r--pkgs/applications/audio/mixxx/default.nix20
-rw-r--r--pkgs/applications/audio/mopidy/default.nix6
-rw-r--r--pkgs/applications/audio/muse/fix-parallel-building.patch15
-rw-r--r--pkgs/applications/audio/ncspot/default.nix13
-rw-r--r--pkgs/applications/audio/nootka/default.nix31
-rw-r--r--pkgs/applications/audio/nootka/unstable.nix33
-rw-r--r--pkgs/applications/audio/padthv1/default.nix6
-rw-r--r--pkgs/applications/audio/pianobooster/default.nix40
-rw-r--r--pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake-gcc4.7.patch11
-rw-r--r--pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake.patch44
-rw-r--r--pkgs/applications/audio/picard/default.nix33
-rw-r--r--pkgs/applications/audio/pt2-clone/default.nix4
-rw-r--r--pkgs/applications/audio/pulseeffects/default.nix4
-rw-r--r--pkgs/applications/audio/qmidiarp/default.nix49
-rw-r--r--pkgs/applications/audio/qmmp/default.nix6
-rw-r--r--pkgs/applications/audio/qtractor/default.nix2
-rw-r--r--pkgs/applications/audio/rhvoice/default.nix2
-rw-r--r--pkgs/applications/audio/rofi-mpd/default.nix4
-rw-r--r--pkgs/applications/audio/samplv1/default.nix6
-rw-r--r--pkgs/applications/audio/sfxr-qt/default.nix7
-rw-r--r--pkgs/applications/audio/shortwave/default.nix87
-rw-r--r--pkgs/applications/audio/snd/default.nix4
-rw-r--r--pkgs/applications/audio/sonic-lineup/default.nix2
-rw-r--r--pkgs/applications/audio/sonic-visualiser/default.nix4
-rw-r--r--pkgs/applications/audio/sound-juicer/default.nix1
-rw-r--r--pkgs/applications/audio/spotify-tui/default.nix6
-rw-r--r--pkgs/applications/audio/synthv1/default.nix6
-rw-r--r--pkgs/applications/audio/tony/default.nix37
-rw-r--r--pkgs/applications/audio/traverso/default.nix4
-rw-r--r--pkgs/applications/audio/tree-from-tags/Gemfile.lock2
-rw-r--r--pkgs/applications/audio/vocal/default.nix2
-rw-r--r--pkgs/applications/audio/x42-avldrums/default.nix31
-rw-r--r--pkgs/applications/audio/x42-gmsynth/default.nix30
-rw-r--r--pkgs/applications/audio/zita-ajbridge/default.nix31
-rw-r--r--pkgs/applications/audio/zita-at1/default.nix36
-rw-r--r--pkgs/applications/backup/vorta/default.nix42
-rw-r--r--pkgs/applications/blockchains/bitcoin-abc.nix4
-rw-r--r--pkgs/applications/blockchains/go-ethereum.nix10
-rw-r--r--pkgs/applications/blockchains/ledger-live-desktop/default.nix4
-rw-r--r--pkgs/applications/blockchains/lnd.nix8
-rw-r--r--pkgs/applications/blockchains/namecoin.nix6
-rw-r--r--pkgs/applications/blockchains/tessera.nix26
-rw-r--r--pkgs/applications/editors/amp/default.nix4
-rw-r--r--pkgs/applications/editors/android-studio/default.nix18
-rw-r--r--pkgs/applications/editors/apostrophe/default.nix (renamed from pkgs/applications/editors/uberwriter/default.nix)21
-rw-r--r--pkgs/applications/editors/aseprite/default.nix2
-rw-r--r--pkgs/applications/editors/aseprite/skia.nix12
-rw-r--r--pkgs/applications/editors/dit/default.nix6
-rw-r--r--pkgs/applications/editors/eclipse/default.nix20
-rw-r--r--pkgs/applications/editors/eclipse/plugins.nix12
-rw-r--r--pkgs/applications/editors/emacs-modes/elpa-generated.nix28
-rw-r--r--pkgs/applications/editors/emacs-modes/manual-packages.nix13
-rw-r--r--pkgs/applications/editors/emacs-modes/recipes-archive-melpa.json4162
-rw-r--r--pkgs/applications/editors/flpsed/default.nix2
-rw-r--r--pkgs/applications/editors/glow/default.nix6
-rw-r--r--pkgs/applications/editors/gnome-builder/default.nix23
-rw-r--r--pkgs/applications/editors/kakoune/default.nix2
-rw-r--r--pkgs/applications/editors/leo-editor/default.nix22
-rw-r--r--pkgs/applications/editors/nano/default.nix4
-rw-r--r--pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock2
-rw-r--r--pkgs/applications/editors/netbeans/default.nix6
-rw-r--r--pkgs/applications/editors/quartus-prime/default.nix121
-rw-r--r--pkgs/applications/editors/quilter/default.nix4
-rw-r--r--pkgs/applications/editors/qxmledit/default.nix28
-rw-r--r--pkgs/applications/editors/qxmledit/qxmledit.json6
-rw-r--r--pkgs/applications/editors/standardnotes/default.nix49
-rw-r--r--pkgs/applications/editors/texworks/default.nix4
-rw-r--r--pkgs/applications/editors/vim/configurable.nix2
-rw-r--r--pkgs/applications/editors/vim/vimacs.nix34
-rw-r--r--pkgs/applications/editors/vscode/generic.nix12
-rw-r--r--pkgs/applications/editors/vscode/vscode.nix8
-rw-r--r--pkgs/applications/editors/vscode/vscodium.nix8
-rw-r--r--pkgs/applications/gis/qgis/unwrapped.nix4
-rw-r--r--pkgs/applications/gis/saga/default.nix6
-rw-r--r--pkgs/applications/graphics/antimony/default.nix11
-rw-r--r--pkgs/applications/graphics/drawing/default.nix4
-rw-r--r--pkgs/applications/graphics/drawio/default.nix6
-rw-r--r--pkgs/applications/graphics/fluxus/default.nix4
-rw-r--r--pkgs/applications/graphics/gscan2pdf/default.nix4
-rw-r--r--pkgs/applications/graphics/gthumb/default.nix5
-rw-r--r--pkgs/applications/graphics/image_optim/Gemfile.lock2
-rw-r--r--pkgs/applications/graphics/sane/backends/airscan/default.nix27
-rw-r--r--pkgs/applications/graphics/shotwell/default.nix4
-rw-r--r--pkgs/applications/kde/default.nix1
-rw-r--r--pkgs/applications/kde/elisa.nix46
-rw-r--r--pkgs/applications/kde/fetch.sh2
-rw-r--r--pkgs/applications/kde/ffmpeg-path.patch25
-rw-r--r--pkgs/applications/kde/kdenlive.nix12
-rw-r--r--pkgs/applications/kde/kitinerary.nix6
-rw-r--r--pkgs/applications/kde/srcs.nix1728
-rw-r--r--pkgs/applications/misc/alacritty/default.nix115
-rw-r--r--pkgs/applications/misc/archiver/default.nix7
-rw-r--r--pkgs/applications/misc/buku/default.nix5
-rw-r--r--pkgs/applications/misc/calcurse/default.nix6
-rw-r--r--pkgs/applications/misc/calibre/default.nix3
-rw-r--r--pkgs/applications/misc/cheat/default.nix19
-rw-r--r--pkgs/applications/misc/cherrytree/default.nix4
-rw-r--r--pkgs/applications/misc/clipit/default.nix37
-rw-r--r--pkgs/applications/misc/clipmenu/default.nix4
-rw-r--r--pkgs/applications/misc/cura/lulzbot/curaengine-openmp-compat.patch47
-rw-r--r--pkgs/applications/misc/cura/lulzbot/curaengine.nix9
-rw-r--r--pkgs/applications/misc/dbeaver/default.nix6
-rw-r--r--pkgs/applications/misc/ddgr/default.nix28
-rw-r--r--pkgs/applications/misc/devilspie2/default.nix2
-rw-r--r--pkgs/applications/misc/doing/Gemfile.lock2
-rw-r--r--pkgs/applications/misc/electron-cash/default.nix15
-rw-r--r--pkgs/applications/misc/exercism/default.nix4
-rw-r--r--pkgs/applications/misc/fetchmail/default.nix6
-rw-r--r--pkgs/applications/misc/fusee-interfacee-tk/default.nix4
-rw-r--r--pkgs/applications/misc/gallery-dl/default.nix4
-rw-r--r--pkgs/applications/misc/geoipupdate/default.nix4
-rw-r--r--pkgs/applications/misc/gollum/Gemfile.lock127
-rw-r--r--pkgs/applications/misc/gollum/default.nix9
-rw-r--r--pkgs/applications/misc/gollum/gemset.nix312
-rw-r--r--pkgs/applications/misc/gpsprune/default.nix12
-rw-r--r--pkgs/applications/misc/gpxsee/default.nix4
-rw-r--r--pkgs/applications/misc/hugo/default.nix10
-rw-r--r--pkgs/applications/misc/img2pdf/default.nix6
-rw-r--r--pkgs/applications/misc/jekyll/basic/Gemfile.lock2
-rw-r--r--pkgs/applications/misc/jekyll/full/Gemfile.lock2
-rw-r--r--pkgs/applications/misc/josm/default.nix6
-rw-r--r--pkgs/applications/misc/khard/default.nix6
-rw-r--r--pkgs/applications/misc/kitty/default.nix6
-rw-r--r--pkgs/applications/misc/kitty/no-lto.patch5
-rw-r--r--pkgs/applications/misc/kitty/png2icns.patch21
-rw-r--r--pkgs/applications/misc/klayout/default.nix63
-rw-r--r--pkgs/applications/misc/kondo/default.nix22
-rw-r--r--pkgs/applications/misc/latte-dock/default.nix4
-rw-r--r--pkgs/applications/misc/lilyterm/default.nix21
-rw-r--r--pkgs/applications/misc/lutris/chrootenv.nix2
-rw-r--r--pkgs/applications/misc/lutris/default.nix15
-rw-r--r--pkgs/applications/misc/mediainfo/default.nix6
-rw-r--r--pkgs/applications/misc/minder/default.nix4
-rw-r--r--pkgs/applications/misc/moolticute/default.nix4
-rw-r--r--pkgs/applications/misc/mwic/default.nix4
-rw-r--r--pkgs/applications/misc/obinskit/default.nix4
-rw-r--r--pkgs/applications/misc/opentx/default.nix47
-rw-r--r--pkgs/applications/misc/orca/default.nix4
-rw-r--r--pkgs/applications/misc/pdfsam-basic/default.nix4
-rw-r--r--pkgs/applications/misc/prusa-slicer/default.nix37
-rw-r--r--pkgs/applications/misc/pt/Gemfile.lock2
-rw-r--r--pkgs/applications/misc/pueue/default.nix14
-rw-r--r--pkgs/applications/misc/pydf/default.nix6
-rw-r--r--pkgs/applications/misc/qcad/application-dir.patch35
-rw-r--r--pkgs/applications/misc/qcad/default.nix92
-rw-r--r--pkgs/applications/misc/qmapshack/default.nix6
-rw-r--r--pkgs/applications/misc/rofi-emoji/0001-Patch-plugindir-to-output.patch25
-rw-r--r--pkgs/applications/misc/rofi-emoji/default.nix69
-rw-r--r--pkgs/applications/misc/rofi/wrapper.nix21
-rw-r--r--pkgs/applications/misc/sequeler/default.nix6
-rw-r--r--pkgs/applications/misc/simplenote/default.nix4
-rw-r--r--pkgs/applications/misc/stretchly/default.nix203
-rw-r--r--pkgs/applications/misc/syncthingtray/default.nix4
-rw-r--r--pkgs/applications/misc/synergy/default.nix6
-rw-r--r--pkgs/applications/misc/taskjuggler/3.x/Gemfile.lock2
-rw-r--r--pkgs/applications/misc/taskjuggler/Gemfile.lock2
-rw-r--r--pkgs/applications/misc/tilda/default.nix21
-rw-r--r--pkgs/applications/misc/todoist-electron/default.nix6
-rw-r--r--pkgs/applications/misc/todoist/default.nix10
-rw-r--r--pkgs/applications/misc/tut/default.nix24
-rw-r--r--pkgs/applications/misc/tut/deps.nix273
-rw-r--r--pkgs/applications/misc/ulauncher/0001-Adjust-get_data_path-for-NixOS.patch55
-rw-r--r--pkgs/applications/misc/ulauncher/default.nix37
-rw-r--r--pkgs/applications/misc/ulauncher/fix-extensions.patch13
-rw-r--r--pkgs/applications/misc/ulauncher/fix-permissions.patch12
-rw-r--r--pkgs/applications/misc/visidata/default.nix33
-rw-r--r--pkgs/applications/misc/wofi/default.nix20
-rw-r--r--pkgs/applications/misc/wtf/default.nix13
-rw-r--r--pkgs/applications/misc/xmrig/default.nix4
-rw-r--r--pkgs/applications/misc/zathura/cb/default.nix4
-rw-r--r--pkgs/applications/misc/zathura/core/default.nix10
-rw-r--r--pkgs/applications/misc/zathura/djvu/default.nix9
-rw-r--r--pkgs/applications/misc/zathura/pdf-mupdf/default.nix17
-rw-r--r--pkgs/applications/misc/zathura/pdf-poppler/default.nix8
-rw-r--r--pkgs/applications/misc/zathura/ps/default.nix7
-rw-r--r--pkgs/applications/misc/zathura/wrapper.nix2
-rw-r--r--pkgs/applications/networking/browsers/brave/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/browsh/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/chromium/browser.nix10
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix33
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix20
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.nix18
-rw-r--r--pkgs/applications/networking/browsers/ephemeral/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix770
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix770
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/release_sources.nix770
-rw-r--r--pkgs/applications/networking/browsers/firefox/common.nix12
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix12
-rw-r--r--pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix8
-rw-r--r--pkgs/applications/networking/browsers/vivaldi/default.nix4
-rw-r--r--pkgs/applications/networking/calls/default.nix4
-rw-r--r--pkgs/applications/networking/cawbird/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/argo/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/argocd/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/atlantis/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/fluxctl/default.nix12
-rw-r--r--pkgs/applications/networking/cluster/helm/default.nix5
-rw-r--r--pkgs/applications/networking/cluster/helmfile/default.nix26
-rw-r--r--pkgs/applications/networking/cluster/hetzner-kube/default.nix12
-rw-r--r--pkgs/applications/networking/cluster/jx/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/k3s/default.nix235
-rw-r--r--pkgs/applications/networking/cluster/k3s/patches/00-k3s.patch74
-rw-r--r--pkgs/applications/networking/cluster/k9s/default.nix14
-rw-r--r--pkgs/applications/networking/cluster/kops/default.nix8
-rw-r--r--pkgs/applications/networking/cluster/kubernetes/default.nix2
-rw-r--r--pkgs/applications/networking/cluster/kubeseal/default.nix12
-rw-r--r--pkgs/applications/networking/cluster/kubeval/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/linkerd/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/mesos/default.nix1
-rw-r--r--pkgs/applications/networking/cluster/minikube/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/nomad/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/prow/13918-fix-go-sum.patch22
-rw-r--r--pkgs/applications/networking/cluster/prow/default.nix81
-rw-r--r--pkgs/applications/networking/cluster/qbec/default.nix12
-rw-r--r--pkgs/applications/networking/cluster/terraform-docs/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock2
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/data.nix678
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/default.nix128
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/elasticsearch/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix5
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/providers.txt18
-rwxr-xr-xpkgs/applications/networking/cluster/terraform-providers/update-all160
-rw-r--r--pkgs/applications/networking/dnscontrol/default.nix28
-rw-r--r--pkgs/applications/networking/dnscontrol/deps.nix1236
-rw-r--r--pkgs/applications/networking/dropbox/cli.nix6
-rw-r--r--pkgs/applications/networking/feedreaders/newsboat/default.nix25
-rw-r--r--pkgs/applications/networking/gmailctl/default.nix27
-rw-r--r--pkgs/applications/networking/gns3/default.nix12
-rw-r--r--pkgs/applications/networking/gns3/gui.nix9
-rw-r--r--pkgs/applications/networking/gns3/server.nix13
-rw-r--r--pkgs/applications/networking/hydroxide/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/bluejeans/default.nix123
-rw-r--r--pkgs/applications/networking/instant-messengers/bluejeans/localtime64_stub.c12
-rw-r--r--pkgs/applications/networking/instant-messengers/coyim/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/fractal/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/gomuks/default.nix25
-rw-r--r--pkgs/applications/networking/instant-messengers/linphone/default.nix250
-rw-r--r--pkgs/applications/networking/instant-messengers/linphone/fix_minizip_linking.patch13
-rw-r--r--pkgs/applications/networking/instant-messengers/matrix-dl/default.nix25
-rw-r--r--pkgs/applications/networking/instant-messengers/quaternion/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/rambox/default.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/rambox/pro.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json2
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix27
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-web.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-cli/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix7
-rw-r--r--pkgs/applications/networking/instant-messengers/slack/dark-theme.nix19
-rw-r--r--pkgs/applications/networking/instant-messengers/slack/default.nix100
-rwxr-xr-xpkgs/applications/networking/instant-messengers/slack/update.sh19
-rw-r--r--pkgs/applications/networking/instant-messengers/swift-im/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/teams/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix11
-rw-r--r--pkgs/applications/networking/instant-messengers/vk-messenger/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/wire-desktop/default.nix12
-rw-r--r--pkgs/applications/networking/instant-messengers/zoom-us/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/zulip/default.nix4
-rw-r--r--pkgs/applications/networking/ipfs-cluster/default.nix5
-rw-r--r--pkgs/applications/networking/ipfs-migrator/default.nix2
-rw-r--r--pkgs/applications/networking/ipfs-migrator/deps.nix8
-rw-r--r--pkgs/applications/networking/ipfs/default.nix4
-rw-r--r--pkgs/applications/networking/irc/qweechat/default.nix2
-rw-r--r--pkgs/applications/networking/irc/weechat/default.nix4
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix10
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/wee-slack/hardcode-json-file-path.patch12
-rw-r--r--pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix14
-rw-r--r--pkgs/applications/networking/mailreaders/aerc/default.nix5
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/notmuch/default.nix43
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix490
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/default.nix4
-rw-r--r--pkgs/applications/networking/modem-manager-gui/default.nix9
-rw-r--r--pkgs/applications/networking/msmtp/default.nix4
-rw-r--r--pkgs/applications/networking/mullvad-vpn/default.nix10
-rw-r--r--pkgs/applications/networking/p2p/qbittorrent/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/stig/default.nix6
-rw-r--r--pkgs/applications/networking/pjsip/default.nix12
-rw-r--r--pkgs/applications/networking/protonvpn-cli-ng/default.nix15
-rw-r--r--pkgs/applications/networking/remote/remmina/default.nix6
-rw-r--r--pkgs/applications/networking/sniffers/wireshark/default.nix4
-rw-r--r--pkgs/applications/networking/syncthing/default.nix10
-rw-r--r--pkgs/applications/networking/wayback_machine_downloader/Gemfile.lock2
-rw-r--r--pkgs/applications/networking/websocketd/default.nix6
-rw-r--r--pkgs/applications/office/elementary-planner/default.nix24
-rw-r--r--pkgs/applications/office/fava/default.nix4
-rw-r--r--pkgs/applications/office/gnucash/default.nix6
-rw-r--r--pkgs/applications/office/khronos/default.nix4
-rw-r--r--pkgs/applications/office/ledger-web/Gemfile.lock2
-rw-r--r--pkgs/applications/office/libreoffice/default.nix8
-rw-r--r--pkgs/applications/office/mendeley/default.nix2
-rw-r--r--pkgs/applications/office/notes-up/default.nix7
-rw-r--r--pkgs/applications/office/softmaker/desktop_items.nix14
-rw-r--r--pkgs/applications/office/softmaker/freeoffice.nix4
-rw-r--r--pkgs/applications/office/softmaker/softmaker_office.nix4
-rw-r--r--pkgs/applications/office/timetrap/Gemfile.lock12
-rw-r--r--pkgs/applications/office/timetrap/gemset.nix12
-rw-r--r--pkgs/applications/office/zotero/default.nix7
-rw-r--r--pkgs/applications/radio/airspy/default.nix51
-rw-r--r--pkgs/applications/radio/dump1090/default.nix4
-rw-r--r--pkgs/applications/radio/fldigi/default.nix6
-rw-r--r--pkgs/applications/radio/flrig/default.nix6
-rw-r--r--pkgs/applications/radio/gqrx/default.nix2
-rw-r--r--pkgs/applications/radio/hackrf/default.nix11
-rw-r--r--pkgs/applications/radio/pyradio/default.nix4
-rw-r--r--pkgs/applications/radio/uhd/default.nix150
-rw-r--r--pkgs/applications/radio/urh/default.nix4
-rw-r--r--pkgs/applications/science/astronomy/stellarium/default.nix4
-rw-r--r--pkgs/applications/science/biology/deeptools/default.nix4
-rw-r--r--pkgs/applications/science/biology/last/default.nix4
-rw-r--r--pkgs/applications/science/biology/picard-tools/default.nix4
-rw-r--r--pkgs/applications/science/biology/seaview/default.nix6
-rw-r--r--pkgs/applications/science/biology/stacks/default.nix6
-rw-r--r--pkgs/applications/science/chemistry/gwyddion/codegen.patch22
-rw-r--r--pkgs/applications/science/chemistry/gwyddion/default.nix73
-rw-r--r--pkgs/applications/science/chemistry/marvin/default.nix6
-rw-r--r--pkgs/applications/science/electronics/dsview/default.nix4
-rw-r--r--pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix4
-rw-r--r--pkgs/applications/science/electronics/fparser/default.nix26
-rw-r--r--pkgs/applications/science/electronics/xcircuit/default.nix6
-rw-r--r--pkgs/applications/science/logic/alt-ergo/default.nix47
-rw-r--r--pkgs/applications/science/logic/cadical/default.nix29
-rw-r--r--pkgs/applications/science/logic/coq/default.nix1
-rw-r--r--pkgs/applications/science/logic/lean/default.nix4
-rw-r--r--pkgs/applications/science/logic/mcy/default.nix6
-rw-r--r--pkgs/applications/science/logic/poly/default.nix9
-rw-r--r--pkgs/applications/science/logic/symbiyosys/default.nix6
-rw-r--r--pkgs/applications/science/math/cemu/default.nix53
-rw-r--r--pkgs/applications/science/math/gmsh/default.nix4
-rw-r--r--pkgs/applications/science/math/mathematica/default.nix7
-rw-r--r--pkgs/applications/science/math/mathematica/l10ns.nix6
-rw-r--r--pkgs/applications/science/math/palp/default.nix8
-rw-r--r--pkgs/applications/science/math/qalculate-gtk/default.nix4
-rw-r--r--pkgs/applications/science/math/rofi-calc/0001-Patch-plugindir-to-output.patch25
-rw-r--r--pkgs/applications/science/math/rofi-calc/default.nix54
-rw-r--r--pkgs/applications/science/misc/rink/default.nix4
-rw-r--r--pkgs/applications/science/misc/snakemake/default.nix6
-rw-r--r--pkgs/applications/system/glances/default.nix4
-rw-r--r--pkgs/applications/version-management/gerrit/default.nix22
-rw-r--r--pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/Gemfile.lock2
-rw-r--r--pkgs/applications/version-management/git-and-tools/default.nix30
-rw-r--r--pkgs/applications/version-management/git-and-tools/gh/default.nix11
-rw-r--r--pkgs/applications/version-management/git-and-tools/ghq/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-bug/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-cinnabar/default.nix50
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-fame/Gemfile.lock2
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-filter-repo/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/default.nix11
-rw-r--r--pkgs/applications/version-management/git-and-tools/gita/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/grv/default.nix27
-rw-r--r--pkgs/applications/version-management/git-and-tools/lab/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/lefthook/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/legit/default.nix30
-rw-r--r--pkgs/applications/version-management/git-and-tools/scmpuff/default.nix24
-rw-r--r--pkgs/applications/version-management/git-and-tools/scmpuff/deps.nix273
-rw-r--r--pkgs/applications/version-management/git-and-tools/tig/default.nix14
-rw-r--r--pkgs/applications/version-management/git-lfs/default.nix17
-rw-r--r--pkgs/applications/version-management/git-repo/default.nix4
-rw-r--r--pkgs/applications/version-management/gitea/default.nix9
-rw-r--r--pkgs/applications/version-management/gitlab/data.json10
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock2
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock4
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix4
-rw-r--r--pkgs/applications/version-management/gogs/default.nix5
-rw-r--r--pkgs/applications/version-management/monotone-viz/default.nix4
-rw-r--r--pkgs/applications/version-management/redmine/Gemfile.lock2
-rw-r--r--pkgs/applications/video/bombono/default.nix10
-rw-r--r--pkgs/applications/video/celluloid/default.nix4
-rw-r--r--pkgs/applications/video/ffmpeg-normalize/default.nix4
-rw-r--r--pkgs/applications/video/jellyfin-mpv-shim/default.nix4
-rw-r--r--pkgs/applications/video/kodi/default.nix9
-rw-r--r--pkgs/applications/video/kodi/plugins.nix11
-rw-r--r--pkgs/applications/video/makemkv/default.nix6
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix4
-rw-r--r--pkgs/applications/video/mpv/default.nix10
-rw-r--r--pkgs/applications/video/mpv/scripts/mpris.nix6
-rw-r--r--pkgs/applications/video/obs-studio/default.nix4
-rw-r--r--pkgs/applications/video/olive-editor/default.nix4
-rw-r--r--pkgs/applications/video/openshot-qt/default.nix13
-rw-r--r--pkgs/applications/video/openshot-qt/libopenshot-audio.nix4
-rw-r--r--pkgs/applications/video/openshot-qt/libopenshot.nix4
-rw-r--r--pkgs/applications/video/plex-mpv-shim/default.nix4
-rw-r--r--pkgs/applications/video/shotcut/default.nix6
-rw-r--r--pkgs/applications/video/vdr/xineliboutput/default.nix21
-rw-r--r--pkgs/applications/video/vokoscreen/default.nix2
-rw-r--r--pkgs/applications/virtualization/bochs/bochs-2.6.11-glibc-2.26.patch (renamed from pkgs/applications/virtualization/bochs/bochs-2.6.10-glibc-2.26.patch)0
-rw-r--r--pkgs/applications/virtualization/bochs/default.nix6
-rw-r--r--pkgs/applications/virtualization/bochs/fix-build-smp.patch21
-rw-r--r--pkgs/applications/virtualization/conmon/default.nix6
-rw-r--r--pkgs/applications/virtualization/containerd/default.nix5
-rw-r--r--pkgs/applications/virtualization/cri-o/default.nix4
-rw-r--r--pkgs/applications/virtualization/crun/default.nix1
-rw-r--r--pkgs/applications/virtualization/hercules/default.nix18
-rw-r--r--pkgs/applications/virtualization/podman/default.nix2
-rw-r--r--pkgs/applications/virtualization/runc/default.nix2
-rw-r--r--pkgs/applications/virtualization/seabios/default.nix8
-rw-r--r--pkgs/applications/virtualization/singularity/default.nix4
-rw-r--r--pkgs/applications/virtualization/spice-vdagent/default.nix6
-rw-r--r--pkgs/applications/virtualization/virt-top/default.nix2
-rw-r--r--pkgs/applications/virtualization/x11docker/default.nix4
-rw-r--r--pkgs/applications/window-managers/cage/default.nix2
-rw-r--r--pkgs/applications/window-managers/i3/lock-fancy.nix2
-rw-r--r--pkgs/applications/window-managers/icewm/default.nix6
-rw-r--r--pkgs/applications/window-managers/notion/default.nix14
-rw-r--r--pkgs/applications/window-managers/sway/lock-effects.nix40
-rw-r--r--pkgs/build-support/build-pecl.nix12
-rw-r--r--pkgs/build-support/emacs/setup-hook.sh24
-rw-r--r--pkgs/build-support/make-desktopitem/default.nix17
-rw-r--r--pkgs/build-support/release/binary-tarball.nix31
-rw-r--r--pkgs/build-support/release/debian-build.nix2
-rw-r--r--pkgs/build-support/release/default.nix6
-rw-r--r--pkgs/build-support/release/maven-build.nix24
-rw-r--r--pkgs/build-support/release/rpm-build.nix2
-rw-r--r--pkgs/build-support/rust/build-rust-crate/configure-crate.nix2
-rw-r--r--pkgs/build-support/rust/build-rust-crate/default.nix2
-rw-r--r--pkgs/build-support/rust/build-rust-crate/install-crate.nix4
-rw-r--r--pkgs/build-support/rust/build-rust-crate/lib.sh7
-rw-r--r--pkgs/build-support/rust/build-rust-crate/test/default.nix197
-rw-r--r--pkgs/build-support/rust/default.nix2
-rw-r--r--pkgs/build-support/setup-hooks/patch-shebangs.sh4
-rw-r--r--pkgs/build-support/skaware/build-skaware-package.nix33
-rw-r--r--pkgs/build-support/vm/default.nix4
-rw-r--r--pkgs/data/documentation/gnome-user-docs/default.nix4
-rw-r--r--pkgs/data/fonts/fira-code/default.nix6
-rw-r--r--pkgs/data/fonts/inconsolata-nerdfont/default.nix28
-rw-r--r--pkgs/data/fonts/iosevka/bin.nix2
-rw-r--r--pkgs/data/fonts/jetbrains-mono/default.nix4
-rw-r--r--pkgs/data/fonts/joypixels/default.nix4
-rw-r--r--pkgs/data/fonts/junicode/default.nix14
-rw-r--r--pkgs/data/fonts/recursive/default.nix4
-rw-r--r--pkgs/data/fonts/roboto-mono/default.nix38
-rw-r--r--pkgs/data/fonts/roboto-slab/default.nix55
-rw-r--r--pkgs/data/fonts/terminus-nerdfont/default.nix28
-rw-r--r--pkgs/data/fonts/unifont/default.nix6
-rw-r--r--pkgs/data/icons/elementary-xfce-icon-theme/default.nix6
-rw-r--r--pkgs/data/icons/flat-remix-icon-theme/default.nix7
-rw-r--r--pkgs/data/icons/gnome-icon-theme/default.nix33
-rw-r--r--pkgs/data/icons/iconpack-jade/default.nix38
-rw-r--r--pkgs/data/icons/iconpack-obsidian/default.nix4
-rw-r--r--pkgs/data/icons/numix-icon-theme/default.nix6
-rw-r--r--pkgs/data/icons/papirus-icon-theme/default.nix4
-rw-r--r--pkgs/data/misc/cldr-emoji-annotation/default.nix2
-rw-r--r--pkgs/data/misc/hackage/default.nix4
-rw-r--r--pkgs/data/misc/nixos-artwork/icons.nix2
-rw-r--r--pkgs/data/misc/osinfo-db/default.nix2
-rw-r--r--pkgs/data/misc/scowl/default.nix4
-rw-r--r--pkgs/data/misc/unicode-character-database/default.nix2
-rw-r--r--pkgs/data/misc/unicode-emoji/default.nix2
-rw-r--r--pkgs/data/misc/unihan-database/default.nix2
-rw-r--r--pkgs/data/themes/ant-theme/ant-bloody.nix6
-rw-r--r--pkgs/data/themes/ant-theme/ant-dracula.nix6
-rw-r--r--pkgs/data/themes/ant-theme/ant-nebula.nix6
-rw-r--r--pkgs/data/themes/ant-theme/ant.nix6
-rw-r--r--pkgs/data/themes/arc/default.nix2
-rw-r--r--pkgs/data/themes/greybird/default.nix4
-rw-r--r--pkgs/data/themes/jade1/default.nix6
-rw-r--r--pkgs/data/themes/matcha/default.nix4
-rw-r--r--pkgs/data/themes/obsidian2/default.nix6
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-session/0001-Add-dbus_glib-dependency.patch38
-rw-r--r--pkgs/desktops/cinnamon/cinnamon-session/default.nix105
-rw-r--r--pkgs/desktops/cinnamon/default.nix3
-rw-r--r--pkgs/desktops/cinnamon/mint-themes/default.nix41
-rw-r--r--pkgs/desktops/cinnamon/mint-y-icons/default.nix46
-rw-r--r--pkgs/desktops/deepin/dde-api/default.nix21
-rw-r--r--pkgs/desktops/deepin/dde-daemon/default.nix12
-rw-r--r--pkgs/desktops/deepin/deepin-terminal/default.nix10
-rw-r--r--pkgs/desktops/deepin/go-gir-generator/default.nix11
-rw-r--r--pkgs/desktops/deepin/startdde/default.nix8
-rw-r--r--pkgs/desktops/gnome-2/default.nix6
-rw-r--r--pkgs/desktops/gnome-2/desktop/gnome-icon-theme/default.nix20
-rw-r--r--pkgs/desktops/gnome-2/desktop/mail-notification/default.nix4
-rw-r--r--pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix4
-rw-r--r--pkgs/desktops/gnome-2/platform/gtkhtml/default.nix4
-rw-r--r--pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/accerciser/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/evolution/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/file-roller/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/gedit/default.nix14
-rw-r--r--pkgs/desktops/gnome-3/apps/glade/default.nix2
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix8
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix8
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-clocks/default.nix58
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-getting-started-docs/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-maps/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-music/default.nix6
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-notes/default.nix55
-rw-r--r--pkgs/desktops/gnome-3/apps/gnome-weather/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/apps/polari/default.nix19
-rw-r--r--pkgs/desktops/gnome-3/apps/polari/make-thumbnailer-wrappable.patch24
-rw-r--r--pkgs/desktops/gnome-3/apps/seahorse/default.nix6
-rw-r--r--pkgs/desktops/gnome-3/core/adwaita-icon-theme/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/dconf-editor/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/eog/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/epiphany/default.nix6
-rw-r--r--pkgs/desktops/gnome-3/core/evince/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/evolution-data-server/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/evolution-data-server/hardcode-gsettings.patch4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-bluetooth/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-calculator/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-color-manager/default.nix47
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-contacts/default.nix23
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-control-center/default.nix10
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-control-center/paths.patch100
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-desktop/default.nix16
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-initial-setup/default.nix7
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-keyring/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-remote-desktop/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-session/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix13
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix8
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-shell/default.nix58
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-software/default.nix6
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-system-monitor/default.nix7
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-terminal/default.nix8
-rw-r--r--pkgs/desktops/gnome-3/core/gucharmap/default.nix2
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/0001-Revert-ClutterActor-Preserve-valid-paint-volumes-til.patch147
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/3.28.nix97
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/3.34/0001-Fix-glitches-in-gala.patch29
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/3.34/default.nix159
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/3.34/drop-inheritable.patch132
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/3.34/fix-paths.patch (renamed from pkgs/desktops/gnome-3/core/mutter/fix-paths-328.patch)4
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/3.34/fix-sysprof.patch (renamed from pkgs/desktops/gnome-3/core/mutter/0001-build-use-get_pkgconfig_variable-for-sysprof-dbusdir.patch)6
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/default.nix30
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/drop-inheritable.patch10
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/libglvnd-328.patch63
-rw-r--r--pkgs/desktops/gnome-3/core/nautilus/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/simple-scan/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/vino/default.nix98
-rw-r--r--pkgs/desktops/gnome-3/core/yelp-xsl/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/yelp/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/default.nix19
-rw-r--r--pkgs/desktops/gnome-3/devtools/devhelp/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/extensions/appindicator/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/extensions/arc-menu/default.nix8
-rw-r--r--pkgs/desktops/gnome-3/extensions/caffeine/default.nix10
-rw-r--r--pkgs/desktops/gnome-3/extensions/clipboard-indicator/default.nix3
-rw-r--r--pkgs/desktops/gnome-3/extensions/dash-to-dock/default.nix9
-rw-r--r--pkgs/desktops/gnome-3/extensions/dash-to-panel/default.nix6
-rw-r--r--pkgs/desktops/gnome-3/extensions/drop-down-terminal/default.nix10
-rw-r--r--pkgs/desktops/gnome-3/extensions/gsconnect/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/extensions/impatience/default.nix6
-rw-r--r--pkgs/desktops/gnome-3/extensions/mpris-indicator-button/default.nix6
-rw-r--r--pkgs/desktops/gnome-3/extensions/night-theme-switcher/default.nix24
-rw-r--r--pkgs/desktops/gnome-3/extensions/sound-output-device-chooser/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/extensions/system-monitor/default.nix7
-rw-r--r--pkgs/desktops/gnome-3/extensions/topicons-plus/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/extensions/window-corner-preview/default.nix3
-rw-r--r--pkgs/desktops/gnome-3/extensions/workspace-matrix/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/five-or-more/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/four-in-a-row/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-chess/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-klotski/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-mahjongg/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-mines/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-nibbles/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-robots/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-sudoku/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-taquin/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-tetravex/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/hitori/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/iagno/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/lightsoff/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/quadrapassel/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/games/tali/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/misc/geary/default.nix23
-rw-r--r--pkgs/desktops/gnome-3/misc/gnome-applets/default.nix6
-rw-r--r--pkgs/desktops/gnome-3/misc/gnome-flashback/default.nix40
-rw-r--r--pkgs/desktops/gnome-3/misc/gnome-panel/default.nix9
-rw-r--r--pkgs/desktops/gnome-3/misc/gnome-screensaver/default.nix96
-rw-r--r--pkgs/desktops/gnome-3/misc/gpaste/default.nix17
-rw-r--r--pkgs/desktops/gnome-3/misc/libgnome-games-support/default.nix10
-rw-r--r--pkgs/desktops/gnome-3/misc/metacity/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-common/default.nix4
-rw-r--r--pkgs/desktops/mate/mate-power-manager/default.nix8
-rw-r--r--pkgs/desktops/mate/mate-session-manager/default.nix18
-rw-r--r--pkgs/desktops/pantheon/apps/appcenter/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-calculator/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-calendar/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-camera/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-code/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-dock/default.nix78
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-files/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-terminal/default.nix9
-rw-r--r--pkgs/desktops/pantheon/apps/sideload/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/a11y/default.nix6
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/datetime/default.nix13
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/datetime/timezone.patch13
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/keyboard/default.nix18
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/keyboard/xkb.patch22
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/network/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/network/fix-paths.patch23
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/notifications/default.nix18
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/onlineaccounts/default.nix6
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/printers/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/sharing/default.nix14
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/sound/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard/wrapper.nix38
-rw-r--r--pkgs/desktops/pantheon/default.nix14
-rw-r--r--pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix13
-rw-r--r--pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix4
-rw-r--r--pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix3
-rw-r--r--pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix4
-rw-r--r--pkgs/desktops/pantheon/desktop/elementary-session-settings/default.nix25
-rw-r--r--pkgs/desktops/pantheon/desktop/elementary-session-settings/meson.patch272
-rw-r--r--pkgs/desktops/pantheon/desktop/elementary-shortcut-overlay/default.nix4
-rw-r--r--pkgs/desktops/pantheon/desktop/gala/default.nix5
-rw-r--r--pkgs/desktops/pantheon/desktop/gala/plugins-dir.patch30
-rw-r--r--pkgs/desktops/pantheon/desktop/gala/use-new-notifications-default.patch13
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix15
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel-indicators/keyboard/default.nix10
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel-indicators/keyboard/fix-paths.patch17
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel-indicators/network/default.nix6
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel-indicators/notifications/default.nix18
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel-indicators/power/default.nix6
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel-indicators/session/default.nix4
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel-indicators/sound/default.nix4
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel/default.nix6
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix35
-rw-r--r--pkgs/desktops/pantheon/granite/default.nix4
-rw-r--r--pkgs/desktops/pantheon/services/cerbere/default.nix58
-rw-r--r--pkgs/desktops/pantheon/services/elementary-notifications/default.nix60
-rw-r--r--pkgs/desktops/pantheon/services/elementary-settings-daemon/default.nix150
-rw-r--r--pkgs/desktops/pantheon/services/elementary-settings-daemon/elementary-dpms.patch84
-rw-r--r--pkgs/desktops/pantheon/services/elementary-settings-daemon/fix-paths.patch11
-rw-r--r--pkgs/desktops/pantheon/services/elementary-settings-daemon/global-backlight-helper.patch30
-rw-r--r--pkgs/desktops/plasma-5/breeze-plymouth/default.nix4
-rw-r--r--pkgs/desktops/plasma-5/kscreen-417316.patch76
-rw-r--r--pkgs/desktops/plasma-5/kscreen.nix1
-rw-r--r--pkgs/desktops/plasma-5/kwallet-pam.nix9
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-cpugraph-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-dict-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-dockbarx-plugin.nix6
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-embed-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-eyes-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-fsguard-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-genmon-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin.nix6
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-notes-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin.nix2
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin/default.nix4
-rw-r--r--pkgs/desktops/xfce/panel-plugins/xfce4-windowck-plugin.nix2
-rw-r--r--pkgs/development/compilers/acme/default.nix29
-rw-r--r--pkgs/development/compilers/as31/default.nix40
-rw-r--r--pkgs/development/compilers/closure/default.nix4
-rw-r--r--pkgs/development/compilers/compcert/default.nix4
-rw-r--r--pkgs/development/compilers/computecpp/default.nix4
-rw-r--r--pkgs/development/compilers/elm/default.nix8
-rw-r--r--pkgs/development/compilers/elm/packages/elm-instrument.nix8
-rw-r--r--pkgs/development/compilers/flutter/default.nix31
-rw-r--r--pkgs/development/compilers/flutter/flutter.nix129
-rw-r--r--pkgs/development/compilers/flutter/patches/beta/disable-auto-update.patch31
-rw-r--r--pkgs/development/compilers/flutter/patches/beta/move-cache.patch63
-rw-r--r--pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch31
-rw-r--r--pkgs/development/compilers/flutter/patches/stable/move-cache.patch63
-rw-r--r--pkgs/development/compilers/fpc/binary.nix10
-rw-r--r--pkgs/development/compilers/fpc/default.nix6
-rw-r--r--pkgs/development/compilers/fpc/lazarus.nix4
-rw-r--r--pkgs/development/compilers/gcc/9/default.nix10
-rw-r--r--pkgs/development/compilers/gcc/builder.sh4
-rw-r--r--pkgs/development/compilers/ghc/8.10.1.nix18
-rw-r--r--pkgs/development/compilers/ghc/8.2.2-binary.nix5
-rw-r--r--pkgs/development/compilers/ghc/8.4.4.nix4
-rw-r--r--pkgs/development/compilers/ghc/8.6.5-binary.nix (renamed from pkgs/development/compilers/ghc/8.6.3-binary.nix)23
-rw-r--r--pkgs/development/compilers/go/1.12.nix3
-rw-r--r--pkgs/development/compilers/go/1.13.nix3
-rw-r--r--pkgs/development/compilers/go/1.14.nix3
-rw-r--r--pkgs/development/compilers/go/1.4.nix2
-rw-r--r--pkgs/development/compilers/intel-graphics-compiler/default.nix4
-rw-r--r--pkgs/development/compilers/jwasm/default.nix16
-rw-r--r--pkgs/development/compilers/kotlin/default.nix4
-rw-r--r--pkgs/development/compilers/ldc/default.nix4
-rw-r--r--pkgs/development/compilers/llvm/10/clang/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/10/compiler-rt.nix2
-rw-r--r--pkgs/development/compilers/llvm/10/default.nix7
-rw-r--r--pkgs/development/compilers/llvm/10/libc++/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/10/libc++abi.nix2
-rw-r--r--pkgs/development/compilers/llvm/10/libunwind.nix2
-rw-r--r--pkgs/development/compilers/llvm/10/lld.nix2
-rw-r--r--pkgs/development/compilers/llvm/10/lldb.nix2
-rw-r--r--pkgs/development/compilers/llvm/10/llvm.nix4
-rw-r--r--pkgs/development/compilers/llvm/10/openmp.nix2
-rw-r--r--pkgs/development/compilers/matter-compiler/Gemfile.lock2
-rw-r--r--pkgs/development/compilers/nextpnr/default.nix6
-rw-r--r--pkgs/development/compilers/nim/default.nix4
-rw-r--r--pkgs/development/compilers/ocaml/4.09.nix7
-rw-r--r--pkgs/development/compilers/purescript/psc-package/default.nix70
-rw-r--r--pkgs/development/compilers/purescript/purescript/default.nix2
-rw-r--r--pkgs/development/compilers/reason/default.nix6
-rw-r--r--pkgs/development/compilers/rgbds/default.nix6
-rw-r--r--pkgs/development/compilers/rust/0001-Allow-getting-no_std-from-the-config-file.patch52
-rw-r--r--pkgs/development/compilers/rust/1_41_0.nix48
-rw-r--r--pkgs/development/compilers/rust/1_42.nix44
-rw-r--r--pkgs/development/compilers/rust/rustc.nix4
-rw-r--r--pkgs/development/compilers/vala/default.nix9
-rw-r--r--pkgs/development/compilers/yosys/default.nix6
-rw-r--r--pkgs/development/compilers/zasm/default.nix44
-rw-r--r--pkgs/development/coq-modules/coqhammer/default.nix16
-rw-r--r--pkgs/development/coq-modules/paramcoq/default.nix25
-rw-r--r--pkgs/development/go-packages/generic/default.nix2
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix32
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix2
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix6
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix11
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix11
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml308
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix39
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix3980
-rw-r--r--pkgs/development/interpreters/clojure/babashka.nix82
-rw-r--r--pkgs/development/interpreters/clojurescript/lumo/default.nix2
-rw-r--r--pkgs/development/interpreters/erlang/R22.nix4
-rw-r--r--pkgs/development/interpreters/groovy/default.nix6
-rw-r--r--pkgs/development/interpreters/janet/default.nix6
-rw-r--r--pkgs/development/interpreters/joker/default.nix10
-rw-r--r--pkgs/development/interpreters/jruby/default.nix4
-rw-r--r--pkgs/development/interpreters/php/default.nix375
-rw-r--r--pkgs/development/interpreters/python/cpython/default.nix10
-rw-r--r--pkgs/development/interpreters/python/default.nix5
-rw-r--r--pkgs/development/interpreters/python/hooks/default.nix8
-rw-r--r--pkgs/development/interpreters/python/hooks/python-namespaces-hook.sh40
-rw-r--r--pkgs/development/interpreters/python/mk-python-derivation.nix4
-rw-r--r--pkgs/development/interpreters/python/sitecustomize.py19
-rw-r--r--pkgs/development/interpreters/python/tests.nix12
-rw-r--r--pkgs/development/interpreters/python/tests/test_nix_pythonprefix/default.nix25
-rw-r--r--pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/default.nix11
-rw-r--r--pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/setup.py18
-rw-r--r--pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/typeddep/__init__.py0
-rw-r--r--pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/typeddep/py.typed0
-rw-r--r--pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/typeddep/util.py2
-rw-r--r--pkgs/development/interpreters/python/tests/test_python.py6
-rwxr-xr-xpkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py17
-rw-r--r--pkgs/development/interpreters/python/wrapper.nix2
-rw-r--r--pkgs/development/interpreters/racket/default.nix2
-rw-r--r--pkgs/development/interpreters/rakudo/default.nix6
-rw-r--r--pkgs/development/interpreters/rakudo/moarvm.nix4
-rw-r--r--pkgs/development/interpreters/rakudo/nqp.nix4
-rw-r--r--pkgs/development/interpreters/ruby/default.nix18
-rw-r--r--pkgs/development/interpreters/ruby/patchsets.nix14
-rw-r--r--pkgs/development/interpreters/ruby/rvm-patchsets.nix4
-rw-r--r--pkgs/development/interpreters/spidermonkey/68.nix95
-rw-r--r--pkgs/development/libraries/SDL2/default.nix4
-rw-r--r--pkgs/development/libraries/aqbanking/sources.nix2
-rw-r--r--pkgs/development/libraries/aravis/default.nix4
-rw-r--r--pkgs/development/libraries/armadillo/default.nix6
-rw-r--r--pkgs/development/libraries/aspell/default.nix1
-rw-r--r--pkgs/development/libraries/at-spi2-core/default.nix4
-rw-r--r--pkgs/development/libraries/atk/default.nix6
-rw-r--r--pkgs/development/libraries/audio/libbass/default.nix2
-rw-r--r--pkgs/development/libraries/audio/libinstpatch/default.nix8
-rw-r--r--pkgs/development/libraries/audio/vamp-plugin-sdk/default.nix29
-rw-r--r--pkgs/development/libraries/audio/vamp/default.nix31
-rw-r--r--pkgs/development/libraries/bctoolbox/default.nix32
-rw-r--r--pkgs/development/libraries/belcard/default.nix32
-rw-r--r--pkgs/development/libraries/belle-sip/default.nix35
-rw-r--r--pkgs/development/libraries/belr/default.nix35
-rw-r--r--pkgs/development/libraries/boost/1.72.nix16
-rw-r--r--pkgs/development/libraries/bzrtp/default.nix30
-rw-r--r--pkgs/development/libraries/clutter/default.nix4
-rw-r--r--pkgs/development/libraries/cogl/default.nix4
-rw-r--r--pkgs/development/libraries/cpp-utilities/default.nix15
-rw-r--r--pkgs/development/libraries/dconf/default.nix17
-rw-r--r--pkgs/development/libraries/exiv2/default.nix11
-rw-r--r--pkgs/development/libraries/faudio/default.nix4
-rw-r--r--pkgs/development/libraries/fcgi/default.nix23
-rw-r--r--pkgs/development/libraries/flatpak/default.nix4
-rw-r--r--pkgs/development/libraries/folks/default.nix4
-rw-r--r--pkgs/development/libraries/freenect/default.nix4
-rw-r--r--pkgs/development/libraries/freetds/default.nix4
-rw-r--r--pkgs/development/libraries/gcr/default.nix18
-rw-r--r--pkgs/development/libraries/geocode-glib/default.nix4
-rw-r--r--pkgs/development/libraries/geos/default.nix6
-rw-r--r--pkgs/development/libraries/git2/default.nix4
-rw-r--r--pkgs/development/libraries/gjs/default.nix70
-rw-r--r--pkgs/development/libraries/gjs/fix-paths.patch13
-rw-r--r--pkgs/development/libraries/gjs/installed-tests-path.patch24
-rw-r--r--pkgs/development/libraries/gl2ps/default.nix6
-rw-r--r--pkgs/development/libraries/glib-networking/default.nix4
-rw-r--r--pkgs/development/libraries/glib/default.nix14
-rw-r--r--pkgs/development/libraries/glib/fix-gio-launch-desktop-path.patch11
-rw-r--r--pkgs/development/libraries/gmime/3.nix16
-rw-r--r--pkgs/development/libraries/gnome-menus/default.nix4
-rw-r--r--pkgs/development/libraries/gnome-online-accounts/default.nix5
-rw-r--r--pkgs/development/libraries/gobject-introspection/default.nix26
-rw-r--r--pkgs/development/libraries/gpgme/default.nix17
-rw-r--r--pkgs/development/libraries/grantlee/5/default.nix4
-rw-r--r--pkgs/development/libraries/grantlee/5/grantlee-cxx11.patch24
-rw-r--r--pkgs/development/libraries/grantlee/5/grantlee-no-canonicalize-filepath.patch8
-rw-r--r--pkgs/development/libraries/grantlee/5/series1
-rw-r--r--pkgs/development/libraries/grilo-plugins/default.nix1
-rw-r--r--pkgs/development/libraries/grpc/default.nix10
-rw-r--r--pkgs/development/libraries/gsettings-desktop-schemas/default.nix6
-rw-r--r--pkgs/development/libraries/gstreamer/bad/default.nix7
-rw-r--r--pkgs/development/libraries/gstreamer/base/default.nix5
-rw-r--r--pkgs/development/libraries/gstreamer/core/default.nix5
-rw-r--r--pkgs/development/libraries/gtk/3.x.nix5
-rw-r--r--pkgs/development/libraries/gtksourceview/3.x.nix2
-rw-r--r--pkgs/development/libraries/gtksourceview/4.x.nix4
-rw-r--r--pkgs/development/libraries/gtksourceviewmm/default.nix1
-rw-r--r--pkgs/development/libraries/gvfs/default.nix4
-rw-r--r--pkgs/development/libraries/http-parser/default.nix6
-rw-r--r--pkgs/development/libraries/hwloc/default.nix6
-rw-r--r--pkgs/development/libraries/indilib/default.nix36
-rw-r--r--pkgs/development/libraries/intel-gmmlib/default.nix6
-rw-r--r--pkgs/development/libraries/java/commons/lang/default.nix4
-rw-r--r--pkgs/development/libraries/json-glib/default.nix2
-rw-r--r--pkgs/development/libraries/kde-frameworks/fetch.sh2
-rw-r--r--pkgs/development/libraries/kde-frameworks/kcmutils/kcmutils-debug-module-loader.patch18
-rw-r--r--pkgs/development/libraries/kde-frameworks/srcs.nix659
-rw-r--r--pkgs/development/libraries/kerberos/krb5-Fix-Linux-build-error-with-musl-libc.patch32
-rw-r--r--pkgs/development/libraries/kerberos/krb5-Fix-typo-in-musl-build-fix.patch28
-rw-r--r--pkgs/development/libraries/kerberos/krb5.nix11
-rw-r--r--pkgs/development/libraries/khronos-ocl-icd-loader/default.nix12
-rw-r--r--pkgs/development/libraries/khronos-ocl-icd-loader/tracing.patch6
-rw-r--r--pkgs/development/libraries/ldb/default.nix61
-rw-r--r--pkgs/development/libraries/leatherman/default.nix6
-rw-r--r--pkgs/development/libraries/libaacs/default.nix6
-rw-r--r--pkgs/development/libraries/libbluray/default.nix9
-rw-r--r--pkgs/development/libraries/libcroco/default.nix32
-rw-r--r--pkgs/development/libraries/libdap/default.nix2
-rw-r--r--pkgs/development/libraries/libdazzle/default.nix6
-rw-r--r--pkgs/development/libraries/libdvdnav/default.nix6
-rw-r--r--pkgs/development/libraries/libdvdread/default.nix6
-rw-r--r--pkgs/development/libraries/liberio/default.nix37
-rw-r--r--pkgs/development/libraries/libev/default.nix4
-rw-r--r--pkgs/development/libraries/libevdev/default.nix2
-rw-r--r--pkgs/development/libraries/libfprint/default.nix4
-rw-r--r--pkgs/development/libraries/libgpiod/default.nix4
-rw-r--r--pkgs/development/libraries/libguestfs/default.nix2
-rw-r--r--pkgs/development/libraries/libgweather/default.nix4
-rw-r--r--pkgs/development/libraries/libhandy/default.nix2
-rw-r--r--pkgs/development/libraries/libinput/default.nix14
-rw-r--r--pkgs/development/libraries/libirecovery/default.nix4
-rw-r--r--pkgs/development/libraries/liblinphone/default.nix150
-rw-r--r--pkgs/development/libraries/libmanette/default.nix4
-rw-r--r--pkgs/development/libraries/libmediainfo/default.nix6
-rw-r--r--pkgs/development/libraries/libmodulemd/default.nix47
-rw-r--r--pkgs/development/libraries/libmodulemd/glib-devdoc.patch13
-rw-r--r--pkgs/development/libraries/libmodulemd/pygobject-dir.patch45
-rw-r--r--pkgs/development/libraries/libosinfo/default.nix64
-rw-r--r--pkgs/development/libraries/libpeas/default.nix4
-rw-r--r--pkgs/development/libraries/libpsl/default.nix1
-rw-r--r--pkgs/development/libraries/libpst/default.nix6
-rw-r--r--pkgs/development/libraries/librealsense/default.nix4
-rw-r--r--pkgs/development/libraries/librsvg/default.nix13
-rw-r--r--pkgs/development/libraries/librsync/default.nix6
-rw-r--r--pkgs/development/libraries/libsecret/default.nix2
-rw-r--r--pkgs/development/libraries/libsoup/default.nix6
-rw-r--r--pkgs/development/libraries/libssh/default.nix8
-rw-r--r--pkgs/development/libraries/libtorrent-rasterbar/default.nix5
-rw-r--r--pkgs/development/libraries/libuninameslist/default.nix6
-rw-r--r--pkgs/development/libraries/libunique/default.nix2
-rw-r--r--pkgs/development/libraries/libunwind/default.nix6
-rw-r--r--pkgs/development/libraries/libusb/default.nix22
-rw-r--r--pkgs/development/libraries/libuv/default.nix4
-rw-r--r--pkgs/development/libraries/libvirt/5.9.0.nix136
-rw-r--r--pkgs/development/libraries/libvirt/default.nix50
-rw-r--r--pkgs/development/libraries/libvorbis/default.nix2
-rw-r--r--pkgs/development/libraries/libvpx/1_8.nix183
-rw-r--r--pkgs/development/libraries/libwebsockets/default.nix10
-rw-r--r--pkgs/development/libraries/libwnck/3.x.nix14
-rw-r--r--pkgs/development/libraries/libx86emu/default.nix6
-rw-r--r--pkgs/development/libraries/libxml2/default.nix5
-rw-r--r--pkgs/development/libraries/libxslt/default.nix4
-rw-r--r--pkgs/development/libraries/libzen/default.nix6
-rw-r--r--pkgs/development/libraries/libzip/default.nix6
-rw-r--r--pkgs/development/libraries/lime/default.nix36
-rw-r--r--pkgs/development/libraries/loadcaffe/default.nix19
-rw-r--r--pkgs/development/libraries/malcontent/better-separation.patch35
-rw-r--r--pkgs/development/libraries/malcontent/default.nix24
-rw-r--r--pkgs/development/libraries/malcontent/installed-tests-path.patch11
-rw-r--r--pkgs/development/libraries/malcontent/ui.nix70
-rw-r--r--pkgs/development/libraries/malcontent/use-system-dependencies.patch15
-rw-r--r--pkgs/development/libraries/mediastreamer/default.nix101
-rw-r--r--pkgs/development/libraries/mediastreamer/msopenh264.nix48
-rw-r--r--pkgs/development/libraries/mediastreamer/plugins_dir.patch34
-rw-r--r--pkgs/development/libraries/mesa/default.nix18
-rw-r--r--pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch21
-rw-r--r--pkgs/development/libraries/mesa/missing-includes.patch11
-rw-r--r--pkgs/development/libraries/neon/default.nix6
-rw-r--r--pkgs/development/libraries/nghttp2/default.nix28
-rw-r--r--pkgs/development/libraries/nss_wrapper/default.nix4
-rw-r--r--pkgs/development/libraries/nsss/default.nix4
-rw-r--r--pkgs/development/libraries/ntdb/default.nix38
-rw-r--r--pkgs/development/libraries/nuspell/default.nix4
-rw-r--r--pkgs/development/libraries/onnxruntime/default.nix4
-rw-r--r--pkgs/development/libraries/opencl-clhpp/default.nix6
-rw-r--r--pkgs/development/libraries/opencl-headers/default.nix14
-rw-r--r--pkgs/development/libraries/opendht/default.nix15
-rw-r--r--pkgs/development/libraries/openldap/default.nix2
-rw-r--r--pkgs/development/libraries/openxr-loader/default.nix4
-rw-r--r--pkgs/development/libraries/ortp/default.nix28
-rw-r--r--pkgs/development/libraries/packr/default.nix7
-rw-r--r--pkgs/development/libraries/pango/default.nix1
-rw-r--r--pkgs/development/libraries/pcl/default.nix6
-rw-r--r--pkgs/development/libraries/physics/hepmc3/default.nix33
-rw-r--r--pkgs/development/libraries/pipewire/2.nix49
-rw-r--r--pkgs/development/libraries/pipewire/default.nix28
-rw-r--r--pkgs/development/libraries/poco/default.nix1
-rw-r--r--pkgs/development/libraries/popt/default.nix5
-rw-r--r--pkgs/development/libraries/proj/default.nix6
-rw-r--r--pkgs/development/libraries/pupnp/default.nix8
-rw-r--r--pkgs/development/libraries/qgnomeplatform/default.nix23
-rw-r--r--pkgs/development/libraries/qgnomeplatform/hardcode-gsettings.patch24
-rw-r--r--pkgs/development/libraries/qt-5/5.12/default.nix6
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtscxml.nix7
-rw-r--r--pkgs/development/libraries/qtutilities/default.nix4
-rw-r--r--pkgs/development/libraries/qwt/6.nix4
-rw-r--r--pkgs/development/libraries/rarian/default.nix1
-rw-r--r--pkgs/development/libraries/resolv_wrapper/default.nix4
-rw-r--r--pkgs/development/libraries/rubberband/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/mkl/default.nix15
-rw-r--r--pkgs/development/libraries/science/math/openblas/default.nix15
-rw-r--r--pkgs/development/libraries/science/math/petsc/default.nix6
-rw-r--r--pkgs/development/libraries/serf/default.nix2
-rw-r--r--pkgs/development/libraries/skalibs/default.nix4
-rw-r--r--pkgs/development/libraries/soci/default.nix31
-rw-r--r--pkgs/development/libraries/socket_wrapper/default.nix4
-rw-r--r--pkgs/development/libraries/subunit/default.nix6
-rw-r--r--pkgs/development/libraries/swiften/default.nix3
-rw-r--r--pkgs/development/libraries/talloc/default.nix27
-rw-r--r--pkgs/development/libraries/tdb/default.nix32
-rw-r--r--pkgs/development/libraries/tepl/default.nix9
-rw-r--r--pkgs/development/libraries/tevent/default.nix43
-rw-r--r--pkgs/development/libraries/tiledb/default.nix4
-rw-r--r--pkgs/development/libraries/torch-hdf5/default.nix19
-rw-r--r--pkgs/development/libraries/torch/default.nix38
-rw-r--r--pkgs/development/libraries/totem-pl-parser/default.nix4
-rw-r--r--pkgs/development/libraries/tracker-miners/default.nix5
-rw-r--r--pkgs/development/libraries/tracker/default.nix5
-rw-r--r--pkgs/development/libraries/utf8proc/default.nix4
-rw-r--r--pkgs/development/libraries/utmps/default.nix5
-rw-r--r--pkgs/development/libraries/virglrenderer/default.nix6
-rw-r--r--pkgs/development/libraries/vte/default.nix8
-rw-r--r--pkgs/development/libraries/webkitgtk/default.nix15
-rw-r--r--pkgs/development/libraries/webkitgtk/libglvnd-headers.patch574
-rw-r--r--pkgs/development/libraries/xdg-desktop-portal/default.nix4
-rw-r--r--pkgs/development/libraries/zchunk/default.nix4
-rw-r--r--pkgs/development/lua-modules/generated-packages.nix6
-rw-r--r--pkgs/development/mobile/androidenv/compose-android-packages.nix4
-rw-r--r--pkgs/development/mobile/androidenv/emulate-app.nix5
-rw-r--r--pkgs/development/mobile/androidenv/emulator.nix30
-rw-r--r--pkgs/development/mobile/androidenv/generated/addons.nix179
-rw-r--r--pkgs/development/mobile/androidenv/generated/packages.nix738
-rw-r--r--pkgs/development/mobile/androidenv/generated/system-images-android-tv.nix245
-rw-r--r--pkgs/development/mobile/androidenv/generated/system-images-android-wear-cn.nix97
-rw-r--r--pkgs/development/mobile/androidenv/generated/system-images-android-wear.nix143
-rw-r--r--pkgs/development/mobile/androidenv/generated/system-images-android.nix903
-rw-r--r--pkgs/development/mobile/androidenv/generated/system-images-google_apis.nix880
-rw-r--r--pkgs/development/mobile/androidenv/generated/system-images-google_apis_playstore.nix141
-rw-r--r--pkgs/development/mobile/cocoapods/Gemfile.lock2
-rw-r--r--pkgs/development/node-packages/composition-v10.nix2
-rw-r--r--pkgs/development/node-packages/composition-v12.nix2
-rw-r--r--pkgs/development/node-packages/composition-v13.nix2
-rwxr-xr-xpkgs/development/node-packages/generate.sh16
-rw-r--r--pkgs/development/node-packages/node-packages-v10.nix4162
-rw-r--r--pkgs/development/node-packages/node-packages-v12.nix35
-rw-r--r--pkgs/development/node-packages/node-packages-v13.nix20
-rw-r--r--pkgs/development/node-packages/shell-generate.nix8
-rw-r--r--pkgs/development/ocaml-modules/ctypes/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/gnuplot/default.nix20
-rw-r--r--pkgs/development/ocaml-modules/ocaml-gettext/default.nix38
-rw-r--r--pkgs/development/ocaml-modules/ocaml-gettext/stub.nix14
-rw-r--r--pkgs/development/ocaml-modules/ocaml-libvirt/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/ocaml-r/default.nix31
-rw-r--r--pkgs/development/ocaml-modules/phylogenetics/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/ppx_tools/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/sedlex/default.nix6
-rw-r--r--pkgs/development/perl-modules/WWW-YoutubeViewer/default.nix4
-rw-r--r--pkgs/development/python-modules/3to2/default.nix5
-rw-r--r--pkgs/development/python-modules/HTSeq/default.nix4
-rw-r--r--pkgs/development/python-modules/aiohttp-socks/default.nix6
-rw-r--r--pkgs/development/python-modules/alarmdecoder/default.nix28
-rw-r--r--pkgs/development/python-modules/altair/default.nix6
-rw-r--r--pkgs/development/python-modules/ansi/default.nix6
-rw-r--r--pkgs/development/python-modules/apache-airflow/default.nix62
-rw-r--r--pkgs/development/python-modules/application/default.nix17
-rw-r--r--pkgs/development/python-modules/apptools/default.nix17
-rw-r--r--pkgs/development/python-modules/argcomplete/default.nix28
-rw-r--r--pkgs/development/python-modules/arrow/default.nix4
-rw-r--r--pkgs/development/python-modules/ase/default.nix6
-rw-r--r--pkgs/development/python-modules/asgiref/default.nix4
-rwxr-xr-xpkgs/development/python-modules/atlassian-python-api/default.nix4
-rw-r--r--pkgs/development/python-modules/audio-metadata/default.nix4
-rw-r--r--pkgs/development/python-modules/aws-adfs/default.nix10
-rw-r--r--pkgs/development/python-modules/azure-batch/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-common/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-core/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-cosmos/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-identity/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-keyvault-keys/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-keyvault-secrets/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-keyvault/default.nix2
-rw-r--r--pkgs/development/python-modules/azure-loganalytics/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-applicationinsights/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-batchai/default.nix5
-rw-r--r--pkgs/development/python-modules/azure-mgmt-billing/default.nix5
-rw-r--r--pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-compute/default.nix7
-rw-r--r--pkgs/development/python-modules/azure-mgmt-consumption/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-mgmt-containerservice/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-datafactory/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-datalake-analytics/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-mgmt-datalake-store/default.nix7
-rw-r--r--pkgs/development/python-modules/azure-mgmt-datamigration/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-mgmt-devtestlabs/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-mgmt-dns/default.nix5
-rw-r--r--pkgs/development/python-modules/azure-mgmt-hanaonazure/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-iotcentral/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-iothub/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-iothubprovisioningservices/default.nix5
-rw-r--r--pkgs/development/python-modules/azure-mgmt-keyvault/default.nix10
-rw-r--r--pkgs/development/python-modules/azure-mgmt-kusto/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix5
-rw-r--r--pkgs/development/python-modules/azure-mgmt-maps/default.nix5
-rw-r--r--pkgs/development/python-modules/azure-mgmt-monitor/default.nix9
-rw-r--r--pkgs/development/python-modules/azure-mgmt-msi/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-mgmt-network/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-policyinsights/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-rdbms/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-relay/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-mgmt-reservations/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-servicefabric/default.nix6
-rw-r--r--pkgs/development/python-modules/azure-mgmt-sql/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-mgmt-storage/default.nix13
-rw-r--r--pkgs/development/python-modules/azure-mgmt-web/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-multiapi-storage/default.nix7
-rw-r--r--pkgs/development/python-modules/azure-storage-file-share/default.nix4
-rw-r--r--pkgs/development/python-modules/azure-storage/default.nix11
-rw-r--r--pkgs/development/python-modules/bacpypes/default.nix31
-rw-r--r--pkgs/development/python-modules/bayespy/default.nix4
-rw-r--r--pkgs/development/python-modules/boltons/default.nix6
-rw-r--r--pkgs/development/python-modules/bpython/default.nix4
-rw-r--r--pkgs/development/python-modules/bravia-tv/default.nix28
-rw-r--r--pkgs/development/python-modules/carbon/default.nix4
-rw-r--r--pkgs/development/python-modules/cbor2/default.nix6
-rw-r--r--pkgs/development/python-modules/cchardet/default.nix6
-rw-r--r--pkgs/development/python-modules/cddb/default.nix5
-rw-r--r--pkgs/development/python-modules/cgroup-utils/default.nix4
-rw-r--r--pkgs/development/python-modules/chalice/default.nix6
-rw-r--r--pkgs/development/python-modules/cirq/default.nix2
-rw-r--r--pkgs/development/python-modules/ciso8601/default.nix30
-rw-r--r--pkgs/development/python-modules/cliff/default.nix6
-rw-r--r--pkgs/development/python-modules/clikit/default.nix4
-rw-r--r--pkgs/development/python-modules/cmd2/default.nix6
-rw-r--r--pkgs/development/python-modules/cocotb/default.nix6
-rw-r--r--pkgs/development/python-modules/colorlog/default.nix6
-rw-r--r--pkgs/development/python-modules/cufflinks/default.nix3
-rw-r--r--pkgs/development/python-modules/cvxpy/default.nix8
-rw-r--r--pkgs/development/python-modules/dash-core-components/default.nix4
-rw-r--r--pkgs/development/python-modules/dash-html-components/default.nix4
-rw-r--r--pkgs/development/python-modules/dash-renderer/default.nix4
-rw-r--r--pkgs/development/python-modules/dash-table/default.nix4
-rw-r--r--pkgs/development/python-modules/dash/default.nix4
-rw-r--r--pkgs/development/python-modules/datadog/default.nix4
-rw-r--r--pkgs/development/python-modules/datasette/default.nix53
-rw-r--r--pkgs/development/python-modules/dcmstack/default.nix39
-rw-r--r--pkgs/development/python-modules/deap/default.nix3
-rw-r--r--pkgs/development/python-modules/denonavr/default.nix4
-rw-r--r--pkgs/development/python-modules/deprecated/default.nix4
-rw-r--r--pkgs/development/python-modules/deskcon/default.nix3
-rw-r--r--pkgs/development/python-modules/dipy/default.nix68
-rw-r--r--pkgs/development/python-modules/distributed/default.nix5
-rw-r--r--pkgs/development/python-modules/django-auth-ldap/default.nix6
-rw-r--r--pkgs/development/python-modules/django-mailman3/default.nix6
-rw-r--r--pkgs/development/python-modules/django-multiselectfield/default.nix4
-rw-r--r--pkgs/development/python-modules/doc8/default.nix10
-rw-r--r--pkgs/development/python-modules/docker/default.nix11
-rw-r--r--pkgs/development/python-modules/dropbox/default.nix6
-rw-r--r--pkgs/development/python-modules/effect/default.nix9
-rw-r--r--pkgs/development/python-modules/elementpath/default.nix4
-rw-r--r--pkgs/development/python-modules/etesync/default.nix4
-rw-r--r--pkgs/development/python-modules/fastapi/default.nix14
-rw-r--r--pkgs/development/python-modules/faulthandler/default.nix23
-rw-r--r--pkgs/development/python-modules/faulthandler/disable-env-test.patch13
-rw-r--r--pkgs/development/python-modules/filetype/default.nix6
-rw-r--r--pkgs/development/python-modules/fiona/default.nix4
-rw-r--r--pkgs/development/python-modules/fipy/default.nix13
-rw-r--r--pkgs/development/python-modules/fire/default.nix4
-rw-r--r--pkgs/development/python-modules/flake8-future-import/default.nix25
-rw-r--r--pkgs/development/python-modules/flake8-future-import/skip-test.patch13
-rw-r--r--pkgs/development/python-modules/flask-appbuilder/default.nix21
-rw-r--r--pkgs/development/python-modules/flask-babel/default.nix4
-rw-r--r--pkgs/development/python-modules/flask-reverse-proxy-fix/default.nix37
-rw-r--r--pkgs/development/python-modules/flaskbabel/default.nix6
-rw-r--r--pkgs/development/python-modules/fritzconnection/default.nix33
-rw-r--r--pkgs/development/python-modules/ftfy/default.nix2
-rw-r--r--pkgs/development/python-modules/ftputil/default.nix5
-rw-r--r--pkgs/development/python-modules/gateone/default.nix3
-rw-r--r--pkgs/development/python-modules/geoalchemy2/default.nix4
-rw-r--r--pkgs/development/python-modules/globus-sdk/default.nix4
-rw-r--r--pkgs/development/python-modules/google-music-proto/default.nix17
-rw-r--r--pkgs/development/python-modules/google-music/default.nix8
-rw-r--r--pkgs/development/python-modules/graph-tool/2.x.x.nix20
-rw-r--r--pkgs/development/python-modules/graspy/default.nix52
-rw-r--r--pkgs/development/python-modules/grpcio-tools/default.nix4
-rw-r--r--pkgs/development/python-modules/gst-python/default.nix68
-rw-r--r--pkgs/development/python-modules/hass-nabucasa/default.nix14
-rw-r--r--pkgs/development/python-modules/hdbscan/default.nix4
-rw-r--r--pkgs/development/python-modules/hg-evolve/default.nix4
-rw-r--r--pkgs/development/python-modules/hstspreload/default.nix4
-rw-r--r--pkgs/development/python-modules/httplib2/default.nix4
-rw-r--r--pkgs/development/python-modules/httpx/default.nix6
-rw-r--r--pkgs/development/python-modules/ibmquantumexperience/default.nix33
-rw-r--r--pkgs/development/python-modules/icalendar/default.nix4
-rw-r--r--pkgs/development/python-modules/identify/default.nix4
-rw-r--r--pkgs/development/python-modules/ipdb/default.nix4
-rw-r--r--pkgs/development/python-modules/ipympl/default.nix6
-rw-r--r--pkgs/development/python-modules/ipyvue/default.nix31
-rw-r--r--pkgs/development/python-modules/ipyvuetify/default.nix29
-rw-r--r--pkgs/development/python-modules/isbnlib/default.nix6
-rw-r--r--pkgs/development/python-modules/j2cli/default.nix6
-rw-r--r--pkgs/development/python-modules/jaraco_classes/default.nix7
-rw-r--r--pkgs/development/python-modules/jc/default.nix4
-rw-r--r--pkgs/development/python-modules/jsbeautifier/default.nix4
-rw-r--r--pkgs/development/python-modules/jsonrpc-websocket/default.nix6
-rw-r--r--pkgs/development/python-modules/jupyterlab/default.nix4
-rw-r--r--pkgs/development/python-modules/jupyterlab_server/default.nix4
-rw-r--r--pkgs/development/python-modules/jupytext/default.nix4
-rw-r--r--pkgs/development/python-modules/lark-parser/default.nix4
-rw-r--r--pkgs/development/python-modules/libvirt/5.9.0.nix27
-rw-r--r--pkgs/development/python-modules/libvirt/default.nix4
-rw-r--r--pkgs/development/python-modules/luftdaten/default.nix6
-rw-r--r--pkgs/development/python-modules/magic-wormhole/default.nix8
-rw-r--r--pkgs/development/python-modules/marshmallow-polyfield/default.nix4
-rw-r--r--pkgs/development/python-modules/matplotlib/default.nix2
-rw-r--r--pkgs/development/python-modules/mayavi/default.nix6
-rw-r--r--pkgs/development/python-modules/minidb/default.nix4
-rw-r--r--pkgs/development/python-modules/mkl-service/default.nix4
-rw-r--r--pkgs/development/python-modules/moderngl_window/default.nix4
-rw-r--r--pkgs/development/python-modules/monty/default.nix7
-rw-r--r--pkgs/development/python-modules/morphys/default.nix24
-rw-r--r--pkgs/development/python-modules/moviepy/default.nix6
-rw-r--r--pkgs/development/python-modules/mutag/default.nix3
-rw-r--r--pkgs/development/python-modules/mypy-protobuf/default.nix4
-rw-r--r--pkgs/development/python-modules/mypy/default.nix4
-rw-r--r--pkgs/development/python-modules/nbdime/default.nix6
-rw-r--r--pkgs/development/python-modules/nest-asyncio/default.nix6
-rw-r--r--pkgs/development/python-modules/nibabel/default.nix2
-rw-r--r--pkgs/development/python-modules/nilearn/default.nix6
-rw-r--r--pkgs/development/python-modules/nipy/default.nix2
-rw-r--r--pkgs/development/python-modules/nipype/default.nix2
-rw-r--r--pkgs/development/python-modules/nitime/default.nix2
-rw-r--r--pkgs/development/python-modules/notmuch/default.nix12
-rw-r--r--pkgs/development/python-modules/ntlm-auth/default.nix11
-rw-r--r--pkgs/development/python-modules/numpy-stl/default.nix4
-rw-r--r--pkgs/development/python-modules/openwrt-luci-rpc/default.nix36
-rw-r--r--pkgs/development/python-modules/opuslib/default.nix39
-rw-r--r--pkgs/development/python-modules/opuslib/opuslib-paths.patch26
-rw-r--r--pkgs/development/python-modules/osqp/default.nix18
-rw-r--r--pkgs/development/python-modules/pam/default.nix32
-rw-r--r--pkgs/development/python-modules/pastel/default.nix17
-rw-r--r--pkgs/development/python-modules/patch-ng/default.nix22
-rw-r--r--pkgs/development/python-modules/pdfminer_six/default.nix24
-rw-r--r--pkgs/development/python-modules/pglast/default.nix4
-rw-r--r--pkgs/development/python-modules/phonenumbers/default.nix4
-rw-r--r--pkgs/development/python-modules/picos/default.nix13
-rw-r--r--pkgs/development/python-modules/pid/default.nix6
-rw-r--r--pkgs/development/python-modules/pint/default.nix26
-rw-r--r--pkgs/development/python-modules/pip-tools/default.nix5
-rw-r--r--pkgs/development/python-modules/plumbum/default.nix4
-rw-r--r--pkgs/development/python-modules/poetry/default.nix2
-rw-r--r--pkgs/development/python-modules/pony/default.nix4
-rw-r--r--pkgs/development/python-modules/prompt_toolkit/default.nix4
-rw-r--r--pkgs/development/python-modules/protego/default.nix30
-rw-r--r--pkgs/development/python-modules/ptpython/default.nix9
-rw-r--r--pkgs/development/python-modules/py-cpuinfo/default.nix13
-rw-r--r--pkgs/development/python-modules/pyGithub/default.nix25
-rw-r--r--pkgs/development/python-modules/pyarrow/default.nix46
-rw-r--r--pkgs/development/python-modules/pyatspi/default.nix4
-rw-r--r--pkgs/development/python-modules/pychromecast/default.nix4
-rw-r--r--pkgs/development/python-modules/pycognito/default.nix46
-rw-r--r--pkgs/development/python-modules/pyftdi/default.nix22
-rw-r--r--pkgs/development/python-modules/pyglet/default.nix3
-rw-r--r--pkgs/development/python-modules/pygobject/3.nix4
-rw-r--r--pkgs/development/python-modules/pyhcl/default.nix4
-rw-r--r--pkgs/development/python-modules/pyhepmc/default.nix59
-rw-r--r--pkgs/development/python-modules/pyhepmc/pyhepmc_export_edges.patch204
-rw-r--r--pkgs/development/python-modules/pyhepmc/pyhepmc_export_flow.patch20
-rw-r--r--pkgs/development/python-modules/pyicloud/default.nix4
-rw-r--r--pkgs/development/python-modules/pylint-django/default.nix4
-rw-r--r--pkgs/development/python-modules/pymavlink/default.nix4
-rw-r--r--pkgs/development/python-modules/pymumble/default.nix31
-rw-r--r--pkgs/development/python-modules/pymupdf/default.nix4
-rw-r--r--pkgs/development/python-modules/pynanoleaf/default.nix29
-rw-r--r--pkgs/development/python-modules/pyproj/001.proj.patch105
-rw-r--r--pkgs/development/python-modules/pyproj/default.nix14
-rw-r--r--pkgs/development/python-modules/pyqt/5.x.nix3
-rw-r--r--pkgs/development/python-modules/pyroute2/default.nix6
-rw-r--r--pkgs/development/python-modules/pysmbc/default.nix6
-rw-r--r--pkgs/development/python-modules/pytest-faulthandler/default.nix34
-rw-r--r--pkgs/development/python-modules/pytest-html/default.nix23
-rw-r--r--pkgs/development/python-modules/pytest-metadata/default.nix22
-rw-r--r--pkgs/development/python-modules/pytest-pylint/default.nix8
-rw-r--r--pkgs/development/python-modules/pytest-twisted/default.nix27
-rw-r--r--pkgs/development/python-modules/python-baseconv/default.nix22
-rw-r--r--pkgs/development/python-modules/python-jose/default.nix4
-rw-r--r--pkgs/development/python-modules/python-language-server/default.nix7
-rw-r--r--pkgs/development/python-modules/python-mpv-jsonipc/default.nix4
-rw-r--r--pkgs/development/python-modules/python-otr/default.nix7
-rw-r--r--pkgs/development/python-modules/python-stdnum/default.nix6
-rw-r--r--pkgs/development/python-modules/python-vipaccess/default.nix6
-rw-r--r--pkgs/development/python-modules/qdarkstyle/default.nix6
-rw-r--r--pkgs/development/python-modules/qiskit-aer/default.nix103
-rw-r--r--pkgs/development/python-modules/qiskit-aqua/default.nix131
-rw-r--r--pkgs/development/python-modules/qiskit-ibmq-provider/default.nix91
-rw-r--r--pkgs/development/python-modules/qiskit-ignis/default.nix62
-rw-r--r--pkgs/development/python-modules/qiskit/default.nix82
-rw-r--r--pkgs/development/python-modules/quandl/default.nix13
-rw-r--r--pkgs/development/python-modules/roku/default.nix26
-rw-r--r--pkgs/development/python-modules/rope/default.nix10
-rw-r--r--pkgs/development/python-modules/salmon-mail/default.nix18
-rw-r--r--pkgs/development/python-modules/scikit-build/default.nix69
-rw-r--r--pkgs/development/python-modules/scrapy/default.nix67
-rw-r--r--pkgs/development/python-modules/seabreeze/default.nix11
-rw-r--r--pkgs/development/python-modules/sfepy/default.nix5
-rw-r--r--pkgs/development/python-modules/shapely/default.nix4
-rw-r--r--pkgs/development/python-modules/shapely/library-paths.patch87
-rw-r--r--pkgs/development/python-modules/shodan/default.nix6
-rw-r--r--pkgs/development/python-modules/simplekml/default.nix6
-rw-r--r--pkgs/development/python-modules/slob/default.nix4
-rw-r--r--pkgs/development/python-modules/sly/default.nix6
-rw-r--r--pkgs/development/python-modules/snscrape/default.nix6
-rw-r--r--pkgs/development/python-modules/soco/default.nix6
-rw-r--r--pkgs/development/python-modules/somajo/default.nix4
-rw-r--r--pkgs/development/python-modules/spacy/models.json60
-rw-r--r--pkgs/development/python-modules/sphinxcontrib-openapi/default.nix6
-rw-r--r--pkgs/development/python-modules/spotipy/default.nix4
-rw-r--r--pkgs/development/python-modules/spyder-kernels/default.nix4
-rw-r--r--pkgs/development/python-modules/spyder/default.nix20
-rw-r--r--pkgs/development/python-modules/sqlmap/default.nix4
-rw-r--r--pkgs/development/python-modules/starlette/default.nix6
-rw-r--r--pkgs/development/python-modules/stripe/default.nix4
-rw-r--r--pkgs/development/python-modules/subunit/default.nix33
-rw-r--r--pkgs/development/python-modules/sybil/default.nix29
-rw-r--r--pkgs/development/python-modules/tbm-utils/default.nix17
-rw-r--r--pkgs/development/python-modules/tensorflow-estimator/1/default.nix (renamed from pkgs/development/python-modules/tensorflow-estimator/1_15_1.nix)3
-rw-r--r--pkgs/development/python-modules/tensorflow-estimator/2/default.nix (renamed from pkgs/development/python-modules/tensorflow-estimator/default.nix)0
-rw-r--r--pkgs/development/python-modules/tensorflow-probability/default.nix2
-rw-r--r--pkgs/development/python-modules/tensorflow-tensorboard/1/default.nix66
-rw-r--r--pkgs/development/python-modules/tensorflow-tensorboard/2/default.nix (renamed from pkgs/development/python-modules/tensorflow-tensorboard/default.nix)0
-rw-r--r--pkgs/development/python-modules/tensorflow/1/bin.nix121
-rw-r--r--pkgs/development/python-modules/tensorflow/1/binary-hashes.nix43
-rw-r--r--pkgs/development/python-modules/tensorflow/1/default.nix (renamed from pkgs/development/python-modules/tensorflow/default.nix)27
-rw-r--r--pkgs/development/python-modules/tensorflow/1/lift-gast-restriction.patch (renamed from pkgs/development/python-modules/tensorflow/lift-gast-restriction.patch)0
-rwxr-xr-xpkgs/development/python-modules/tensorflow/1/prefetcher.sh33
-rw-r--r--pkgs/development/python-modules/tensorflow/2/bin.nix (renamed from pkgs/development/python-modules/tensorflow/bin.nix)4
-rw-r--r--pkgs/development/python-modules/tensorflow/2/binary-hashes.nix (renamed from pkgs/development/python-modules/tensorflow/binary-hashes.nix)0
-rw-r--r--pkgs/development/python-modules/tensorflow/2/default.nix427
-rw-r--r--pkgs/development/python-modules/tensorflow/2/lift-gast-restriction.patch11
-rwxr-xr-xpkgs/development/python-modules/tensorflow/2/prefetcher.sh (renamed from pkgs/development/python-modules/tensorflow/prefetcher.sh)0
-rw-r--r--pkgs/development/python-modules/tesserocr/default.nix4
-rw-r--r--pkgs/development/python-modules/thespian/default.nix6
-rw-r--r--pkgs/development/python-modules/tkinter/default.nix3
-rw-r--r--pkgs/development/python-modules/traitsui/default.nix10
-rw-r--r--pkgs/development/python-modules/trezor/default.nix4
-rw-r--r--pkgs/development/python-modules/twisted/default.nix4
-rw-r--r--pkgs/development/python-modules/txtorcon/default.nix6
-rw-r--r--pkgs/development/python-modules/uvloop/default.nix45
-rw-r--r--pkgs/development/python-modules/variants/default.nix35
-rw-r--r--pkgs/development/python-modules/varint/default.nix25
-rw-r--r--pkgs/development/python-modules/virtualenv-clone/default.nix6
-rw-r--r--pkgs/development/python-modules/vowpalwabbit/default.nix4
-rw-r--r--pkgs/development/python-modules/weboob/default.nix10
-rw-r--r--pkgs/development/python-modules/whisper/default.nix6
-rw-r--r--pkgs/development/python-modules/xdg/default.nix34
-rw-r--r--pkgs/development/python-modules/xdis/default.nix6
-rw-r--r--pkgs/development/python-modules/xml2rfc/default.nix6
-rw-r--r--pkgs/development/python-modules/yamllint/default.nix6
-rw-r--r--pkgs/development/python-modules/zeroconf/default.nix4
-rw-r--r--pkgs/development/python-modules/zetup/default.nix15
-rw-r--r--pkgs/development/ruby-modules/bundled-common/default.nix2
-rw-r--r--pkgs/development/ruby-modules/bundled-common/gen-bin-stubs.rb6
-rw-r--r--pkgs/development/ruby-modules/bundler-app/default.nix2
-rw-r--r--pkgs/development/ruby-modules/bundler/default.nix4
-rw-r--r--pkgs/development/ruby-modules/solargraph/Gemfile.lock28
-rw-r--r--pkgs/development/ruby-modules/solargraph/gemset.nix83
-rw-r--r--pkgs/development/tools/alloy/default.nix2
-rw-r--r--pkgs/development/tools/ameba/default.nix6
-rw-r--r--pkgs/development/tools/analysis/checkstyle/default.nix4
-rw-r--r--pkgs/development/tools/analysis/codeql/default.nix4
-rw-r--r--pkgs/development/tools/analysis/flow/default.nix4
-rw-r--r--pkgs/development/tools/analysis/hopper/default.nix4
-rw-r--r--pkgs/development/tools/analysis/panopticon/default.nix3
-rw-r--r--pkgs/development/tools/analysis/radare2/cutter.nix4
-rw-r--r--pkgs/development/tools/analysis/radare2/default.nix14
-rw-r--r--pkgs/development/tools/analysis/randoop/default.nix4
-rw-r--r--pkgs/development/tools/analysis/tflint/default.nix12
-rw-r--r--pkgs/development/tools/azcopy/default.nix4
-rw-r--r--pkgs/development/tools/bazel-gazelle/default.nix31
-rw-r--r--pkgs/development/tools/bazelisk/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/alibuild/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_0_26/default.nix (renamed from pkgs/development/tools/build-managers/bazel/bazel_0/default.nix)12
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_0_26/glibc.patch (renamed from pkgs/development/tools/build-managers/bazel/bazel_0/glibc.patch)0
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_0_26/python-stub-path-fix.patch (renamed from pkgs/development/tools/build-managers/bazel/bazel_0/python-stub-path-fix.patch)0
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_0_29/default.nix (renamed from pkgs/development/tools/build-managers/bazel/bazel-latest/default.nix)30
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_0_29/glibc.patch78
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_0_29/src-deps.json506
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_1/default.nix30
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_2/default.nix561
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_2/src-deps.json (renamed from pkgs/development/tools/build-managers/bazel/bazel-latest/src-deps.json)0
-rw-r--r--pkgs/development/tools/build-managers/bear/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/bmake/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/conan/default.nix64
-rw-r--r--pkgs/development/tools/build-managers/drake/Gemfile.lock2
-rw-r--r--pkgs/development/tools/build-managers/dub/default.nix3
-rw-r--r--pkgs/development/tools/build-managers/gn/default.nix30
-rw-r--r--pkgs/development/tools/build-managers/rake/Gemfile.lock2
-rw-r--r--pkgs/development/tools/build-managers/samurai/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/sbt/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/scons/common.nix20
-rw-r--r--pkgs/development/tools/build-managers/scons/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/scons/print-statements.patch13
-rw-r--r--pkgs/development/tools/build-managers/wafHook/setup-hook.sh20
-rw-r--r--pkgs/development/tools/buildah/default.nix6
-rw-r--r--pkgs/development/tools/cadre/Gemfile.lock2
-rw-r--r--pkgs/development/tools/cbor-diag/Gemfile.lock2
-rw-r--r--pkgs/development/tools/cddl/Gemfile.lock2
-rw-r--r--pkgs/development/tools/chefdk/Gemfile.lock2
-rw-r--r--pkgs/development/tools/clj-kondo/default.nix4
-rw-r--r--pkgs/development/tools/cloudflare-wrangler/default.nix6
-rw-r--r--pkgs/development/tools/compass/Gemfile.lock2
-rw-r--r--pkgs/development/tools/conftest/default.nix14
-rw-r--r--pkgs/development/tools/continuous-integration/drone-cli/default.nix13
-rw-r--r--pkgs/development/tools/continuous-integration/drone/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/fly/default.nix12
-rw-r--r--pkgs/development/tools/continuous-integration/jenkins/default.nix4
-rw-r--r--pkgs/development/tools/corundum/Gemfile.lock2
-rw-r--r--pkgs/development/tools/cucumber/Gemfile.lock2
-rw-r--r--pkgs/development/tools/cue/default.nix4
-rw-r--r--pkgs/development/tools/database/dbmate/default.nix4
-rw-r--r--pkgs/development/tools/database/dbmate/deps.nix84
-rw-r--r--pkgs/development/tools/database/liquibase/default.nix4
-rw-r--r--pkgs/development/tools/database/litecli/default.nix7
-rw-r--r--pkgs/development/tools/database/sqlite-web/default.nix6
-rw-r--r--pkgs/development/tools/distgen/default.nix4
-rw-r--r--pkgs/development/tools/dive/default.nix5
-rw-r--r--pkgs/development/tools/ejson/Gemfile.lock2
-rw-r--r--pkgs/development/tools/flyway/default.nix4
-rw-r--r--pkgs/development/tools/fmbt/default.nix4
-rw-r--r--pkgs/development/tools/git-repo-updater/default.nix4
-rw-r--r--pkgs/development/tools/github-changelog-generator/Gemfile.lock2
-rw-r--r--pkgs/development/tools/go-tools/default.nix7
-rw-r--r--pkgs/development/tools/go2nix/default.nix3
-rw-r--r--pkgs/development/tools/godot/default.nix4
-rw-r--r--pkgs/development/tools/golangci-lint/default.nix6
-rw-r--r--pkgs/development/tools/haskell/ihaskell/wrapper.nix2
-rw-r--r--pkgs/development/tools/hcloud/default.nix4
-rw-r--r--pkgs/development/tools/jazzy/Gemfile.lock2
-rw-r--r--pkgs/development/tools/jsduck/Gemfile.lock2
-rw-r--r--pkgs/development/tools/just/default.nix43
-rw-r--r--pkgs/development/tools/kcli/default.nix4
-rw-r--r--pkgs/development/tools/kubeprompt/default.nix4
-rw-r--r--pkgs/development/tools/kubie/default.nix6
-rw-r--r--pkgs/development/tools/kustomize/default.nix6
-rw-r--r--pkgs/development/tools/lazygit/default.nix4
-rw-r--r--pkgs/development/tools/metals/default.nix4
-rw-r--r--pkgs/development/tools/minizinc/ide.nix6
-rw-r--r--pkgs/development/tools/misc/act/default.nix12
-rw-r--r--pkgs/development/tools/misc/circleci-cli/default.nix4
-rw-r--r--pkgs/development/tools/misc/clojure-lsp/default.nix8
-rw-r--r--pkgs/development/tools/misc/editorconfig-checker/default.nix6
-rw-r--r--pkgs/development/tools/misc/elfutils/default.nix35
-rw-r--r--pkgs/development/tools/misc/gdbgui/default.nix4
-rw-r--r--pkgs/development/tools/misc/gede/default.nix4
-rw-r--r--pkgs/development/tools/misc/go-license-detector/default.nix6
-rw-r--r--pkgs/development/tools/misc/hydra-cli/default.nix4
-rw-r--r--pkgs/development/tools/misc/hydra/common.nix135
-rw-r--r--pkgs/development/tools/misc/hydra/default.nix171
-rw-r--r--pkgs/development/tools/misc/lit/default.nix16
-rw-r--r--pkgs/development/tools/misc/mdl/Gemfile.lock2
-rw-r--r--pkgs/development/tools/misc/mkcert/default.nix6
-rw-r--r--pkgs/development/tools/misc/one_gadget/Gemfile.lock2
-rw-r--r--pkgs/development/tools/misc/patchelf/default.nix2
-rw-r--r--pkgs/development/tools/misc/patchelf/unstable.nix2
-rw-r--r--pkgs/development/tools/misc/reviewdog/default.nix6
-rw-r--r--pkgs/development/tools/misc/terracognita/default.nix12
-rw-r--r--pkgs/development/tools/misc/travis/Gemfile.lock2
-rw-r--r--pkgs/development/tools/misc/watson-ruby/Gemfile.lock2
-rw-r--r--pkgs/development/tools/misc/whatstyle/default.nix6
-rw-r--r--pkgs/development/tools/mod/default.nix12
-rw-r--r--pkgs/development/tools/nsis/default.nix2
-rw-r--r--pkgs/development/tools/ocaml/cppo/default.nix7
-rw-r--r--pkgs/development/tools/ocaml/dune/2.nix4
-rw-r--r--pkgs/development/tools/ocaml/ocamlformat/default.nix10
-rw-r--r--pkgs/development/tools/omnisharp-roslyn/default.nix4
-rw-r--r--pkgs/development/tools/overcommit/Gemfile.lock2
-rw-r--r--pkgs/development/tools/parinfer-rust/default.nix3
-rw-r--r--pkgs/development/tools/pet/default.nix6
-rw-r--r--pkgs/development/tools/pew/default.nix54
-rw-r--r--pkgs/development/tools/pgformatter/default.nix4
-rw-r--r--pkgs/development/tools/pgloader/default.nix8
-rwxr-xr-xpkgs/development/tools/poetry2nix/poetry2nix/bin/poetry2nix17
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/cli.nix2
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/default.nix297
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix1
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/lib.nix107
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix15
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix266
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix3
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix359
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/semver.nix109
-rw-r--r--pkgs/development/tools/profiling/sysprof/default.nix4
-rw-r--r--pkgs/development/tools/proto-contrib/default.nix6
-rw-r--r--pkgs/development/tools/protoc-gen-doc/default.nix6
-rw-r--r--pkgs/development/tools/prototool/default.nix6
-rw-r--r--pkgs/development/tools/pry/Gemfile.lock2
-rw-r--r--pkgs/development/tools/puppet/puppet-lint/Gemfile.lock2
-rw-r--r--pkgs/development/tools/redis-dump/Gemfile.lock2
-rw-r--r--pkgs/development/tools/repository-managers/nexus/default.nix4
-rw-r--r--pkgs/development/tools/rgp/default.nix71
-rw-r--r--pkgs/development/tools/ronn/Gemfile.lock2
-rw-r--r--pkgs/development/tools/rshell/default.nix6
-rw-r--r--pkgs/development/tools/rubocop/Gemfile.lock2
-rw-r--r--pkgs/development/tools/rust/cargo-asm/default.nix8
-rw-r--r--pkgs/development/tools/rust/cargo-bloat/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-expand/default.nix6
-rw-r--r--pkgs/development/tools/rust/cargo-make/Cargo.lock14
-rw-r--r--pkgs/development/tools/rust/cargo-make/default.nix6
-rw-r--r--pkgs/development/tools/rust/cbindgen/default.nix8
-rw-r--r--pkgs/development/tools/sass/Gemfile.lock2
-rw-r--r--pkgs/development/tools/scss-lint/Gemfile.lock2
-rw-r--r--pkgs/development/tools/setupcfg2nix/default.nix2
-rw-r--r--pkgs/development/tools/setupcfg2nix/info.nix2
-rw-r--r--pkgs/development/tools/skaffold/default.nix6
-rw-r--r--pkgs/development/tools/skopeo/default.nix28
-rw-r--r--pkgs/development/tools/sqlint/Gemfile.lock6
-rw-r--r--pkgs/development/tools/sqlint/gemset.nix8
-rw-r--r--pkgs/development/tools/sunxi-tools/default.nix4
-rw-r--r--pkgs/development/tools/trellis/default.nix14
-rw-r--r--pkgs/development/tools/unityhub/default.nix4
-rw-r--r--pkgs/development/tools/vagrant/default.nix2
-rw-r--r--pkgs/development/tools/vcstool/default.nix8
-rw-r--r--pkgs/development/tools/wally-cli/default.nix7
-rw-r--r--pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch327
-rw-r--r--pkgs/development/tools/wasm-bindgen-cli/default.nix6
-rw-r--r--pkgs/development/tools/wllvm/default.nix6
-rw-r--r--pkgs/development/tools/wp-cli/default.nix19
-rw-r--r--pkgs/development/tools/xcpretty/Gemfile.lock2
-rw-r--r--pkgs/development/tools/yarn/default.nix4
-rw-r--r--pkgs/development/web/cypress/default.nix4
-rw-r--r--pkgs/development/web/flyctl/default.nix12
-rw-r--r--pkgs/development/web/grails/default.nix6
-rw-r--r--pkgs/development/web/mailcatcher/Gemfile.lock2
-rw-r--r--pkgs/development/web/minify/default.nix6
-rw-r--r--pkgs/development/web/nodejs/v10.nix4
-rw-r--r--pkgs/development/web/nodejs/v12.nix4
-rw-r--r--pkgs/development/web/nodejs/v13.nix4
-rw-r--r--pkgs/development/web/postman/default.nix4
-rw-r--r--pkgs/games/alephone/default.nix11
-rw-r--r--pkgs/games/alephone/infinity/default.nix4
-rw-r--r--pkgs/games/alephone/marathon/default.nix4
-rw-r--r--pkgs/games/armagetronad/default.nix6
-rw-r--r--pkgs/games/cockatrice/default.nix4
-rw-r--r--pkgs/games/crawl/default.nix6
-rw-r--r--pkgs/games/crispy-doom/default.nix4
-rw-r--r--pkgs/games/endless-sky/default.nix6
-rw-r--r--pkgs/games/hyperrogue/default.nix6
-rw-r--r--pkgs/games/katago/default.nix97
-rw-r--r--pkgs/games/keeperrl/default.nix75
-rw-r--r--pkgs/games/mindustry/default.nix6
-rw-r--r--pkgs/games/minecraft-server/default.nix17
-rw-r--r--pkgs/games/minecraft/default.nix4
-rw-r--r--pkgs/games/odamex/default.nix4
-rw-r--r--pkgs/games/openttd/default.nix24
-rw-r--r--pkgs/games/papermc/default.nix35
-rw-r--r--pkgs/games/performous/default.nix2
-rw-r--r--pkgs/games/performous/performous-cmake.patch86
-rw-r--r--pkgs/games/pingus/default.nix43
-rw-r--r--pkgs/games/pingus/default.upstream1
-rw-r--r--pkgs/games/robotfindskitten/default.nix8
-rw-r--r--pkgs/games/scummvm/default.nix6
-rw-r--r--pkgs/games/scummvm/games.nix30
-rw-r--r--pkgs/games/spring/default.nix13
-rw-r--r--pkgs/games/steam/chrootenv.nix8
-rw-r--r--pkgs/games/steam/runtime-generated.nix584
-rw-r--r--pkgs/games/tdm/default.nix2
-rw-r--r--pkgs/games/teeworlds/default.nix17
-rw-r--r--pkgs/games/vdrift/default.nix4
-rw-r--r--pkgs/games/xmage/default.nix41
-rw-r--r--pkgs/games/xonotic/default.nix199
-rw-r--r--pkgs/misc/documentation-highlighter/default.nix2
-rw-r--r--pkgs/misc/drivers/hplip/default.nix6
-rw-r--r--pkgs/misc/drivers/utsushi/default.nix4
-rw-r--r--pkgs/misc/drivers/xboxdrv/default.nix4
-rw-r--r--pkgs/misc/drivers/xow/default.nix33
-rw-r--r--pkgs/misc/drivers/xp-pen-g430/default.nix37
-rw-r--r--pkgs/misc/emulators/atari800/default.nix18
-rw-r--r--pkgs/misc/emulators/dolphin-emu/default.nix87
-rw-r--r--pkgs/misc/emulators/dolphin-emu/master.nix10
-rw-r--r--pkgs/misc/emulators/higan/default.nix51
-rw-r--r--pkgs/misc/emulators/mame/default.nix32
-rw-r--r--pkgs/misc/emulators/mednafen/default.nix4
-rw-r--r--pkgs/misc/emulators/openmsx/default.nix13
-rw-r--r--pkgs/misc/emulators/retroarch/cores.nix4
-rw-r--r--pkgs/misc/emulators/rpcs3/default.nix18
-rw-r--r--pkgs/misc/emulators/stella/default.nix16
-rw-r--r--pkgs/misc/emulators/vbam/default.nix2
-rw-r--r--pkgs/misc/emulators/wine/sources.nix8
-rw-r--r--pkgs/misc/frescobaldi/default.nix4
-rw-r--r--pkgs/misc/rkdeveloptool/default.nix6
-rw-r--r--pkgs/misc/screensavers/xscreensaver/default.nix6
-rw-r--r--pkgs/misc/solfege/default.nix22
-rw-r--r--pkgs/misc/tmux-plugins/default.nix204
-rw-r--r--pkgs/misc/tpm2-pkcs11/default.nix4
-rw-r--r--pkgs/misc/vim-plugins/aliases.nix14
-rw-r--r--pkgs/misc/vim-plugins/default.nix1
-rw-r--r--pkgs/misc/vim-plugins/deprecated.json18
-rw-r--r--pkgs/misc/vim-plugins/generated.nix281
-rw-r--r--pkgs/misc/vim-plugins/overrides.nix31
-rwxr-xr-xpkgs/misc/vim-plugins/update.py183
-rw-r--r--pkgs/misc/vim-plugins/vim-plugin-names65
-rw-r--r--pkgs/misc/vscode-extensions/cpptools/default.nix4
-rw-r--r--pkgs/misc/vscode-extensions/python/default.nix4
-rw-r--r--pkgs/misc/vscode-extensions/remote-ssh/default.nix6
-rw-r--r--pkgs/misc/vscode-extensions/vscode-utils.nix7
-rw-r--r--pkgs/os-specific/darwin/smimesign/default.nix6
-rw-r--r--pkgs/os-specific/linux/acpi-call/default.nix46
-rw-r--r--pkgs/os-specific/linux/apparmor/cross.patch19
-rw-r--r--pkgs/os-specific/linux/apparmor/default.nix13
-rw-r--r--pkgs/os-specific/linux/bcc/default.nix2
-rw-r--r--pkgs/os-specific/linux/bluez/default.nix4
-rw-r--r--pkgs/os-specific/linux/ddcci/default.nix10
-rw-r--r--pkgs/os-specific/linux/device-tree/raspberrypi.nix3
-rw-r--r--pkgs/os-specific/linux/earlyoom/default.nix4
-rw-r--r--pkgs/os-specific/linux/ell/default.nix4
-rw-r--r--pkgs/os-specific/linux/facetimehd/default.nix11
-rw-r--r--pkgs/os-specific/linux/ffado/default.nix70
-rw-r--r--pkgs/os-specific/linux/firejail/default.nix23
-rw-r--r--pkgs/os-specific/linux/fscrypt/default.nix6
-rw-r--r--pkgs/os-specific/linux/fwts/default.nix4
-rw-r--r--pkgs/os-specific/linux/g15daemon/default.nix88
-rw-r--r--pkgs/os-specific/linux/g15daemon/pid_location.patch25
-rw-r--r--pkgs/os-specific/linux/iproute/default.nix4
-rw-r--r--pkgs/os-specific/linux/iwd/default.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.14.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.19.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.9.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.5.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-5.6.nix18
-rw-r--r--pkgs/os-specific/linux/kernel/linux-libre.nix7
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix8
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing.nix4
-rw-r--r--pkgs/os-specific/linux/lxc/default.nix4
-rw-r--r--pkgs/os-specific/linux/lxcfs/default.nix4
-rw-r--r--pkgs/os-specific/linux/net-tools/default.nix4
-rw-r--r--pkgs/os-specific/linux/nfs-utils/default.nix7
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/default.nix10
-rw-r--r--pkgs/os-specific/linux/pcm/default.nix6
-rw-r--r--pkgs/os-specific/linux/plymouth/default.nix50
-rw-r--r--pkgs/os-specific/linux/procdump/default.nix4
-rw-r--r--pkgs/os-specific/linux/rdma-core/default.nix9
-rw-r--r--pkgs/os-specific/linux/s6-linux-utils/default.nix4
-rw-r--r--pkgs/os-specific/linux/sdnotify-wrapper/default.nix6
-rw-r--r--pkgs/os-specific/linux/sssd/default.nix9
-rw-r--r--pkgs/os-specific/linux/sysdig/default.nix4
-rw-r--r--pkgs/os-specific/linux/udisks/2-default.nix8
-rw-r--r--pkgs/os-specific/linux/undervolt/default.nix6
-rw-r--r--pkgs/os-specific/linux/uvcdynctrl/default.nix13
-rw-r--r--pkgs/os-specific/linux/wireguard/default.nix4
-rw-r--r--pkgs/os-specific/linux/zenpower/default.nix10
-rw-r--r--pkgs/os-specific/linux/zfs/default.nix23
-rw-r--r--pkgs/servers/amqp/qpid-cpp/default.nix7
-rw-r--r--pkgs/servers/atlassian/confluence.nix4
-rw-r--r--pkgs/servers/atlassian/jira.nix11
-rw-r--r--pkgs/servers/caddy/default.nix4
-rw-r--r--pkgs/servers/caddy/v2.nix10
-rw-r--r--pkgs/servers/clickhouse/default.nix6
-rw-r--r--pkgs/servers/consul/default.nix4
-rw-r--r--pkgs/servers/dict/default.nix4
-rw-r--r--pkgs/servers/dns/coredns/default.nix10
-rw-r--r--pkgs/servers/documize-community/default.nix6
-rw-r--r--pkgs/servers/echoip/default.nix6
-rw-r--r--pkgs/servers/gobetween/default.nix8
-rw-r--r--pkgs/servers/gortr/default.nix6
-rw-r--r--pkgs/servers/gotify/default.nix5
-rw-r--r--pkgs/servers/gpsd/default.nix2
-rw-r--r--pkgs/servers/grocy/default.nix4
-rw-r--r--pkgs/servers/headphones/default.nix2
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix33
-rw-r--r--pkgs/servers/home-assistant/default.nix20
-rw-r--r--pkgs/servers/home-assistant/esphome.nix13
-rw-r--r--pkgs/servers/home-assistant/frontend.nix4
-rw-r--r--pkgs/servers/home-assistant/relax-deps.patch13
-rw-r--r--pkgs/servers/home-assistant/relax-importlib-metadata-pyaml.patch22
-rw-r--r--pkgs/servers/http/hyp/default.nix6
-rw-r--r--pkgs/servers/http/nginx/generic.nix2
-rw-r--r--pkgs/servers/http/nginx/mainline.nix4
-rw-r--r--pkgs/servers/http/nginx/nix-etag-1.15.4.patch29
-rw-r--r--pkgs/servers/http/openresty/default.nix4
-rw-r--r--pkgs/servers/http/showoff/Gemfile.lock2
-rw-r--r--pkgs/servers/http/unit/default.nix26
-rw-r--r--pkgs/servers/hydron/default.nix6
-rw-r--r--pkgs/servers/imgproxy/default.nix13
-rw-r--r--pkgs/servers/jackett/default.nix4
-rw-r--r--pkgs/servers/jellyfin/default.nix4
-rw-r--r--pkgs/servers/keycloak/default.nix5
-rw-r--r--pkgs/servers/livepeer/default.nix4
-rw-r--r--pkgs/servers/mail/rspamd/default.nix4
-rw-r--r--pkgs/servers/mail/sympa/default.nix12
-rw-r--r--pkgs/servers/matrix-synapse/default.nix4
-rw-r--r--pkgs/servers/matterbridge/default.nix10
-rw-r--r--pkgs/servers/mautrix-telegram/default.nix4
-rw-r--r--pkgs/servers/mautrix-whatsapp/default.nix12
-rw-r--r--pkgs/servers/meguca/default.nix4
-rw-r--r--pkgs/servers/memcached/default.nix21
-rw-r--r--pkgs/servers/metabase/default.nix4
-rw-r--r--pkgs/servers/meteor/default.nix6
-rw-r--r--pkgs/servers/minio/default.nix12
-rw-r--r--pkgs/servers/monitoring/grafana/default.nix6
-rw-r--r--pkgs/servers/monitoring/loki/default.nix4
-rw-r--r--pkgs/servers/monitoring/mtail/default.nix6
-rw-r--r--pkgs/servers/monitoring/munin/default.nix6
-rw-r--r--pkgs/servers/monitoring/prometheus/default.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/mikrotik-exporter.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/varnish-exporter.nix10
-rw-r--r--pkgs/servers/monitoring/prometheus/webui-package.json3
-rw-r--r--pkgs/servers/monitoring/prometheus/webui-yarndeps.nix3896
-rw-r--r--pkgs/servers/monitoring/prometheus/wireguard-exporter.nix12
-rw-r--r--pkgs/servers/monitoring/riemann-dash/Gemfile.lock2
-rw-r--r--pkgs/servers/monitoring/sensu-go/default.nix10
-rw-r--r--pkgs/servers/monitoring/sensu/Gemfile.lock2
-rw-r--r--pkgs/servers/monitoring/telegraf/default.nix16
-rw-r--r--pkgs/servers/monitoring/telegraf/deps.nix1344
-rw-r--r--pkgs/servers/monitoring/thanos/default.nix4
-rw-r--r--pkgs/servers/monitoring/zabbix/versions.nix8
-rw-r--r--pkgs/servers/mpd/default.nix4
-rw-r--r--pkgs/servers/nextcloud/default.nix47
-rw-r--r--pkgs/servers/nginx-sso/default.nix4
-rw-r--r--pkgs/servers/nosql/mongodb/asio-no-experimental-string-view.patch20
-rw-r--r--pkgs/servers/nosql/mongodb/forget-build-dependencies-3-4.patch17
-rw-r--r--pkgs/servers/nosql/mongodb/forget-build-dependencies.patch10
-rw-r--r--pkgs/servers/nosql/mongodb/mongodb.nix (renamed from pkgs/servers/nosql/mongodb/default.nix)95
-rw-r--r--pkgs/servers/nosql/mongodb/mozjs-45_fix-3-byte-opcode.patch27
-rw-r--r--pkgs/servers/nosql/mongodb/v3_4.nix15
-rw-r--r--pkgs/servers/nosql/mongodb/v3_6.nix16
-rw-r--r--pkgs/servers/nosql/mongodb/v4_0.nix17
-rw-r--r--pkgs/servers/nosql/victoriametrics/default.nix13
-rw-r--r--pkgs/servers/plex/raw.nix4
-rw-r--r--pkgs/servers/pulseaudio/default.nix2
-rw-r--r--pkgs/servers/pulseaudio/qpaeq.nix2
-rw-r--r--pkgs/servers/radicale/1.x.nix2
-rw-r--r--pkgs/servers/rainloop/default.nix6
-rw-r--r--pkgs/servers/samba/4.x.nix104
-rw-r--r--pkgs/servers/search/groonga/default.nix4
-rw-r--r--pkgs/servers/search/solr/default.nix4
-rw-r--r--pkgs/servers/sickbeard/sickgear.nix4
-rw-r--r--pkgs/servers/sickbeard/sickrage.nix2
-rw-r--r--pkgs/servers/sozu/default.nix22
-rw-r--r--pkgs/servers/sql/dolt/default.nix12
-rw-r--r--pkgs/servers/sql/mariadb/default.nix35
-rw-r--r--pkgs/servers/tailscale/default.nix4
-rw-r--r--pkgs/servers/traefik/default.nix2
-rw-r--r--pkgs/servers/uwsgi/default.nix9
-rw-r--r--pkgs/servers/web-apps/matomo/default.nix8
-rw-r--r--pkgs/servers/web-apps/mediawiki/default.nix4
-rw-r--r--pkgs/servers/web-apps/searx/default.nix30
-rw-r--r--pkgs/servers/web-apps/shiori/default.nix4
-rw-r--r--pkgs/servers/web-apps/wordpress/default.nix4
-rw-r--r--pkgs/servers/xmpp/ejabberd/default.nix8
-rw-r--r--pkgs/servers/xmpp/prosody/default.nix10
-rw-r--r--pkgs/shells/elvish/default.nix8
-rw-r--r--pkgs/shells/ion/default.nix17
-rw-r--r--pkgs/shells/nushell/default.nix6
-rw-r--r--pkgs/shells/tcsh/default.nix9
-rw-r--r--pkgs/shells/xonsh/default.nix9
-rw-r--r--pkgs/shells/zsh/antibody/default.nix6
-rw-r--r--pkgs/shells/zsh/zplug/default.nix30
-rw-r--r--pkgs/shells/zsh/zsh-history/default.nix6
-rw-r--r--pkgs/shells/zsh/zsh-nix-shell/default.nix29
-rw-r--r--pkgs/shells/zsh/zsh-powerlevel10k/default.nix4
-rw-r--r--pkgs/stdenv/linux/default.nix2
-rw-r--r--pkgs/tools/X11/arandr/default.nix5
-rw-r--r--pkgs/tools/X11/xidlehook/default.nix7
-rw-r--r--pkgs/tools/X11/xpra/0002-Constant-DPI.patch (renamed from pkgs/tools/X11/xpra/xf86videodummy/0002-Constant-DPI.patch)0
-rw-r--r--pkgs/tools/X11/xpra/0003-fix-pointer-limits.patch (renamed from pkgs/tools/X11/xpra/xf86videodummy/0003-fix-pointer-limits.patch)0
-rw-r--r--pkgs/tools/X11/xpra/0005-support-for-30-bit-depth-in-dummy-driver.patch (renamed from pkgs/tools/X11/xpra/xf86videodummy/0005-support-for-30-bit-depth-in-dummy-driver.patch)0
-rw-r--r--pkgs/tools/X11/xpra/default.nix29
-rw-r--r--pkgs/tools/X11/xpra/xf86videodummy/default.nix31
-rw-r--r--pkgs/tools/admin/aws-vault/default.nix6
-rw-r--r--pkgs/tools/admin/awsweeper/default.nix6
-rw-r--r--pkgs/tools/admin/azure-cli/default.nix4
-rw-r--r--pkgs/tools/admin/azure-cli/python-packages.nix47
-rw-r--r--pkgs/tools/admin/berglas/default.nix4
-rw-r--r--pkgs/tools/admin/bubblewrap/default.nix11
-rw-r--r--pkgs/tools/admin/certbot/0001-Don-t-use-distutils.StrictVersion-that-cannot-handle.patch16
-rw-r--r--pkgs/tools/admin/certbot/default.nix36
-rw-r--r--pkgs/tools/admin/certigo/default.nix4
-rw-r--r--pkgs/tools/admin/clair/default.nix8
-rw-r--r--pkgs/tools/admin/docker-credential-gcr/default.nix4
-rw-r--r--pkgs/tools/admin/eksctl/default.nix12
-rw-r--r--pkgs/tools/admin/fastlane/Gemfile.lock2
-rw-r--r--pkgs/tools/admin/google-cloud-sdk/default.nix6
-rw-r--r--pkgs/tools/admin/iamy/default.nix6
-rw-r--r--pkgs/tools/admin/lego/default.nix6
-rw-r--r--pkgs/tools/admin/lxd/default.nix6
-rw-r--r--pkgs/tools/admin/oxidized/Gemfile.lock2
-rw-r--r--pkgs/tools/admin/sewer/default.nix6
-rw-r--r--pkgs/tools/admin/ssh-import-id/default.nix36
-rw-r--r--pkgs/tools/admin/swiftclient/default.nix6
-rw-r--r--pkgs/tools/archivers/unrar/default.nix6
-rw-r--r--pkgs/tools/audio/abcmidi/default.nix4
-rw-r--r--pkgs/tools/audio/alsaequal/caps_9.x.patch21
-rw-r--r--pkgs/tools/audio/alsaequal/default.nix43
-rw-r--r--pkgs/tools/audio/alsaequal/false_error.patch13
-rw-r--r--pkgs/tools/audio/alsaequal/makefile.patch13
-rw-r--r--pkgs/tools/audio/beets/default.nix9
-rw-r--r--pkgs/tools/audio/google-music-scripts/default.nix23
-rw-r--r--pkgs/tools/audio/google-music-scripts/loguru.patch22
-rw-r--r--pkgs/tools/audio/midicsv/default.nix22
-rw-r--r--pkgs/tools/audio/mpdcron/Gemfile.lock2
-rw-r--r--pkgs/tools/audio/qastools/default.nix30
-rw-r--r--pkgs/tools/audio/trx/add_bctoolbox_ldlib.patch15
-rw-r--r--pkgs/tools/audio/trx/default.nix10
-rw-r--r--pkgs/tools/audio/volctl/default.nix14
-rw-r--r--pkgs/tools/backup/bacula/default.nix4
-rw-r--r--pkgs/tools/backup/dar/default.nix6
-rw-r--r--pkgs/tools/backup/easysnap/default.nix6
-rw-r--r--pkgs/tools/backup/lvmsync/Gemfile.lock2
-rw-r--r--pkgs/tools/backup/monolith/default.nix32
-rw-r--r--pkgs/tools/backup/wal-g/default.nix26
-rw-r--r--pkgs/tools/backup/wal-g/deps.nix588
-rw-r--r--pkgs/tools/cd-dvd/sacd/default.nix41
-rw-r--r--pkgs/tools/compression/lz4/default.nix14
-rw-r--r--pkgs/tools/compression/xz/default.nix6
-rw-r--r--pkgs/tools/filesystems/bcachefs-tools/default.nix48
-rw-r--r--pkgs/tools/filesystems/bindfs/default.nix4
-rw-r--r--pkgs/tools/filesystems/ceph/0000-dont-check-cherrypy-version.patch70
-rw-r--r--pkgs/tools/filesystems/ceph/default.nix5
-rw-r--r--pkgs/tools/filesystems/davfs2/default.nix15
-rw-r--r--pkgs/tools/filesystems/fuse-overlayfs/default.nix2
-rw-r--r--pkgs/tools/filesystems/moosefs/default.nix6
-rw-r--r--pkgs/tools/filesystems/mtools/default.nix6
-rw-r--r--pkgs/tools/filesystems/relfs/default.nix51
-rw-r--r--pkgs/tools/filesystems/smbnetfs/default.nix6
-rw-r--r--pkgs/tools/filesystems/squashfs-tools-ng/default.nix8
-rw-r--r--pkgs/tools/graphics/asymptote/default.nix4
-rw-r--r--pkgs/tools/graphics/fast-neural-doodle/default.nix63
-rw-r--r--pkgs/tools/graphics/fast-neural-doodle/fast-neural-doodle.sh28
-rw-r--r--pkgs/tools/graphics/fast-neural-doodle/get-mask-hdf5.sh5
-rw-r--r--pkgs/tools/graphics/gnuplot/default.nix4
-rw-r--r--pkgs/tools/graphics/neural-style/default.nix58
-rw-r--r--pkgs/tools/graphics/neural-style/neural-style.sh25
-rw-r--r--pkgs/tools/graphics/viu/default.nix8
-rw-r--r--pkgs/tools/inputmethods/fusuma/Gemfile.lock2
-rw-r--r--pkgs/tools/misc/3llo/Gemfile.lock2
-rw-r--r--pkgs/tools/misc/alarm-clock-applet/default.nix3
-rw-r--r--pkgs/tools/misc/bcunit/default.nix40
-rw-r--r--pkgs/tools/misc/bdf2psf/default.nix6
-rw-r--r--pkgs/tools/misc/bdf2sfd/default.nix4
-rw-r--r--pkgs/tools/misc/bibutils/default.nix6
-rw-r--r--pkgs/tools/misc/brltty/default.nix6
-rw-r--r--pkgs/tools/misc/broot/default.nix6
-rw-r--r--pkgs/tools/misc/brotab/default.nix13
-rw-r--r--pkgs/tools/misc/chafa/default.nix4
-rw-r--r--pkgs/tools/misc/chezmoi/default.nix12
-rw-r--r--pkgs/tools/misc/csv2latex/default.nix23
-rw-r--r--pkgs/tools/misc/ddcutil/default.nix4
-rw-r--r--pkgs/tools/misc/debootstrap/default.nix4
-rw-r--r--pkgs/tools/misc/diffoscope/default.nix4
-rw-r--r--pkgs/tools/misc/docker-sync/Gemfile.lock2
-rw-r--r--pkgs/tools/misc/docui/default.nix4
-rw-r--r--pkgs/tools/misc/dua/default.nix6
-rw-r--r--pkgs/tools/misc/execline/default.nix16
-rw-r--r--pkgs/tools/misc/ffsend/default.nix6
-rw-r--r--pkgs/tools/misc/fluent-bit/default.nix4
-rw-r--r--pkgs/tools/misc/fluentd/Gemfile.lock2
-rw-r--r--pkgs/tools/misc/fwup/default.nix6
-rw-r--r--pkgs/tools/misc/fzf/default.nix4
-rw-r--r--pkgs/tools/misc/geekbench/default.nix6
-rw-r--r--pkgs/tools/misc/git-town/default.nix38
-rw-r--r--pkgs/tools/misc/gotify-cli/default.nix6
-rw-r--r--pkgs/tools/misc/graylog/default.nix4
-rw-r--r--pkgs/tools/misc/gringo/default.nix2
-rw-r--r--pkgs/tools/misc/homesick/Gemfile.lock2
-rw-r--r--pkgs/tools/misc/html-proofer/Gemfile.lock6
-rw-r--r--pkgs/tools/misc/html-proofer/gemset.nix8
-rw-r--r--pkgs/tools/misc/ipbt/default.nix22
-rw-r--r--pkgs/tools/misc/kanshi/default.nix8
-rw-r--r--pkgs/tools/misc/kargo/default.nix6
-rw-r--r--pkgs/tools/misc/kepubify/default.nix14
-rw-r--r--pkgs/tools/misc/libgen-cli/default.nix30
-rw-r--r--pkgs/tools/misc/lolcat/Gemfile.lock2
-rw-r--r--pkgs/tools/misc/lsd/default.nix24
-rw-r--r--pkgs/tools/misc/memtest86-efi/default.nix6
-rw-r--r--pkgs/tools/misc/mimeo/default.nix4
-rw-r--r--pkgs/tools/misc/mutagen/default.nix6
-rw-r--r--pkgs/tools/misc/page/default.nix32
-rw-r--r--pkgs/tools/misc/parallel-rust/default.nix25
-rw-r--r--pkgs/tools/misc/parallel-rust/fix_cargo_lock_version.patch12
-rw-r--r--pkgs/tools/misc/parallel/default.nix8
-rw-r--r--pkgs/tools/misc/parallel/wrapper.nix13
-rw-r--r--pkgs/tools/misc/pdf-parser/default.nix34
-rw-r--r--pkgs/tools/misc/pfetch/default.nix6
-rw-r--r--pkgs/tools/misc/pgcenter/default.nix4
-rw-r--r--pkgs/tools/misc/pgmetrics/default.nix4
-rw-r--r--pkgs/tools/misc/pistol/default.nix32
-rw-r--r--pkgs/tools/misc/plantuml/default.nix4
-rw-r--r--pkgs/tools/misc/pspg/default.nix4
-rw-r--r--pkgs/tools/misc/pws/Gemfile.lock2
-rw-r--r--pkgs/tools/misc/riemann-tools/Gemfile.lock2
-rw-r--r--pkgs/tools/misc/rmtrash/default.nix39
-rw-r--r--pkgs/tools/misc/rockbox-utility/default.nix4
-rw-r--r--pkgs/tools/misc/rpm-ostree/default.nix6
-rw-r--r--pkgs/tools/misc/s6-portable-utils/default.nix4
-rw-r--r--pkgs/tools/misc/shadowenv/default.nix15
-rw-r--r--pkgs/tools/misc/skim/default.nix18
-rw-r--r--pkgs/tools/misc/starship/default.nix13
-rw-r--r--pkgs/tools/misc/t/Gemfile.lock2
-rw-r--r--pkgs/tools/misc/td/Gemfile.lock2
-rw-r--r--pkgs/tools/misc/teamocil/Gemfile.lock2
-rw-r--r--pkgs/tools/misc/tensorman/default.nix3
-rw-r--r--pkgs/tools/misc/thinkpad-scripts/default.nix22
-rw-r--r--pkgs/tools/misc/timidity/default.nix2
-rw-r--r--pkgs/tools/misc/timidity/timidity-iA-Oj.patch14
-rw-r--r--pkgs/tools/misc/topgrade/default.nix6
-rw-r--r--pkgs/tools/misc/trash-cli/default.nix3
-rw-r--r--pkgs/tools/misc/uhubctl/default.nix4
-rw-r--r--pkgs/tools/misc/unicode/default.nix2
-rw-r--r--pkgs/tools/misc/uutils-coreutils/default.nix4
-rw-r--r--pkgs/tools/misc/vdirsyncer/default.nix3
-rw-r--r--pkgs/tools/misc/vector/default.nix3
-rw-r--r--pkgs/tools/misc/vimwiki-markdown/default.nix6
-rw-r--r--pkgs/tools/misc/wev/default.nix23
-rw-r--r--pkgs/tools/misc/wootility/default.nix4
-rw-r--r--pkgs/tools/misc/x11idle/default.nix17
-rw-r--r--pkgs/tools/misc/yad/default.nix6
-rw-r--r--pkgs/tools/misc/you-get/default.nix4
-rw-r--r--pkgs/tools/misc/youtube-dl/default.nix11
-rw-r--r--pkgs/tools/misc/zoxide/default.nix14
-rw-r--r--pkgs/tools/networking/amass/default.nix6
-rw-r--r--pkgs/tools/networking/axel/default.nix4
-rw-r--r--pkgs/tools/networking/bandwhich/default.nix6
-rw-r--r--pkgs/tools/networking/bgpq3/default.nix24
-rw-r--r--pkgs/tools/networking/boringtun/default.nix6
-rw-r--r--pkgs/tools/networking/cassowary/default.nix6
-rw-r--r--pkgs/tools/networking/circus/default.nix4
-rw-r--r--pkgs/tools/networking/clash/default.nix10
-rw-r--r--pkgs/tools/networking/connman/connman.nix171
-rw-r--r--pkgs/tools/networking/connman/default.nix91
-rw-r--r--pkgs/tools/networking/corerad/default.nix4
-rw-r--r--pkgs/tools/networking/croc/default.nix12
-rw-r--r--pkgs/tools/networking/dnscrypt-proxy2/default.nix4
-rw-r--r--pkgs/tools/networking/dnsproxy/default.nix10
-rw-r--r--pkgs/tools/networking/findomain/default.nix6
-rw-r--r--pkgs/tools/networking/frp/default.nix6
-rw-r--r--pkgs/tools/networking/grpcui/default.nix6
-rw-r--r--pkgs/tools/networking/haproxy/default.nix4
-rw-r--r--pkgs/tools/networking/hey/default.nix6
-rw-r--r--pkgs/tools/networking/httplz/default.nix6
-rw-r--r--pkgs/tools/networking/hue-cli/Gemfile.lock2
-rw-r--r--pkgs/tools/networking/maphosts/Gemfile.lock2
-rw-r--r--pkgs/tools/networking/minio-client/default.nix4
-rw-r--r--pkgs/tools/networking/mosh/default.nix2
-rw-r--r--pkgs/tools/networking/nebula/default.nix12
-rw-r--r--pkgs/tools/networking/nethogs/default.nix4
-rw-r--r--pkgs/tools/networking/network-manager/default.nix4
-rw-r--r--pkgs/tools/networking/network-manager/openvpn/default.nix12
-rw-r--r--pkgs/tools/networking/nfdump/default.nix4
-rw-r--r--pkgs/tools/networking/ngrok-1/default.nix2
-rw-r--r--pkgs/tools/networking/nyx/default.nix4
-rw-r--r--pkgs/tools/networking/obfs4/default.nix6
-rw-r--r--pkgs/tools/networking/openfortivpn/default.nix4
-rw-r--r--pkgs/tools/networking/p2p/gtk-gnutella/default.nix70
-rw-r--r--pkgs/tools/networking/passh/default.nix25
-rw-r--r--pkgs/tools/networking/pirate-get/default.nix6
-rw-r--r--pkgs/tools/networking/pixiecore/default.nix25
-rw-r--r--pkgs/tools/networking/s3cmd/default.nix25
-rw-r--r--pkgs/tools/networking/s6-dns/default.nix5
-rw-r--r--pkgs/tools/networking/s6-networking/default.nix4
-rw-r--r--pkgs/tools/networking/shadowfox/default.nix6
-rw-r--r--pkgs/tools/networking/slirp4netns/default.nix18
-rw-r--r--pkgs/tools/networking/tendermint/default.nix4
-rw-r--r--pkgs/tools/networking/termshark/default.nix5
-rw-r--r--pkgs/tools/networking/ubridge/default.nix5
-rw-r--r--pkgs/tools/networking/uget/default.nix6
-rw-r--r--pkgs/tools/networking/unbound/default.nix4
-rw-r--r--pkgs/tools/networking/v2ray/default.nix12
-rw-r--r--pkgs/tools/networking/yggdrasil/default.nix12
-rw-r--r--pkgs/tools/nix/cached-nix-shell/default.nix49
-rw-r--r--pkgs/tools/nix/nix-script/default.nix6
-rw-r--r--pkgs/tools/package-management/cargo-edit/default.nix12
-rw-r--r--pkgs/tools/package-management/cargo-outdated/0001-Fix-outdated-Cargo.lock.patch25
-rw-r--r--pkgs/tools/package-management/cargo-outdated/default.nix15
-rw-r--r--pkgs/tools/package-management/cargo-update/default.nix4
-rw-r--r--pkgs/tools/package-management/elm-github-install/Gemfile.lock2
-rw-r--r--pkgs/tools/package-management/emplace/default.nix7
-rw-r--r--pkgs/tools/package-management/fpm/Gemfile.lock2
-rw-r--r--pkgs/tools/package-management/home-manager/default.nix11
-rw-r--r--pkgs/tools/package-management/morph/default.nix3
-rw-r--r--pkgs/tools/package-management/mynewt-newt/default.nix4
-rw-r--r--pkgs/tools/package-management/nix/default.nix81
-rw-r--r--pkgs/tools/package-management/packagekit/default.nix5
-rw-r--r--pkgs/tools/security/acsccid/default.nix40
-rw-r--r--pkgs/tools/security/age/default.nix6
-rw-r--r--pkgs/tools/security/bettercap/default.nix30
-rw-r--r--pkgs/tools/security/bettercap/deps.nix534
-rw-r--r--pkgs/tools/security/bitwarden/default.nix4
-rw-r--r--pkgs/tools/security/bitwarden_rs/default.nix6
-rw-r--r--pkgs/tools/security/bitwarden_rs/vault.nix4
-rw-r--r--pkgs/tools/security/bundler-audit/Gemfile.lock2
-rw-r--r--pkgs/tools/security/chipsec/default.nix8
-rw-r--r--pkgs/tools/security/chrome-token-signing/default.nix4
-rw-r--r--pkgs/tools/security/gnupg/22.nix4
-rw-r--r--pkgs/tools/security/gobuster/default.nix7
-rw-r--r--pkgs/tools/security/hcxtools/default.nix6
-rw-r--r--pkgs/tools/security/keybase/default.nix4
-rw-r--r--pkgs/tools/security/keybase/gui.nix6
-rw-r--r--pkgs/tools/security/knockknock/default.nix7
-rw-r--r--pkgs/tools/security/metasploit/Gemfile.lock2
-rw-r--r--pkgs/tools/security/neopg/default.nix6
-rw-r--r--pkgs/tools/security/nwipe/default.nix4
-rw-r--r--pkgs/tools/security/onesixtyone/default.nix30
-rw-r--r--pkgs/tools/security/pass/default.nix235
-rw-r--r--pkgs/tools/security/pass/extension-dir.patch32
-rw-r--r--pkgs/tools/security/pass/extensions/audit.nix42
-rw-r--r--pkgs/tools/security/pass/extensions/audit/0001-Make-it-possible-to-run-the-tests-offline.patch175
-rw-r--r--pkgs/tools/security/pass/extensions/audit/0002-Fix-audit.bash-setup.patch28
-rw-r--r--pkgs/tools/security/pass/extensions/audit/default.nix51
-rw-r--r--pkgs/tools/security/pass/extensions/default.nix2
-rw-r--r--pkgs/tools/security/pcsc-cyberjack/default.nix4
-rw-r--r--pkgs/tools/security/rage/default.nix6
-rw-r--r--pkgs/tools/security/ripasso/cursive.nix4
-rw-r--r--pkgs/tools/security/saml2aws/default.nix10
-rw-r--r--pkgs/tools/security/scallion/default.nix4
-rw-r--r--pkgs/tools/security/sequoia/default.nix11
-rw-r--r--pkgs/tools/security/sops/default.nix4
-rw-r--r--pkgs/tools/security/sshuttle/default.nix6
-rw-r--r--pkgs/tools/security/sudo/default.nix8
-rw-r--r--pkgs/tools/security/tor/default.nix6
-rw-r--r--pkgs/tools/security/vault/default.nix4
-rw-r--r--pkgs/tools/security/wpscan/Gemfile.lock2
-rw-r--r--pkgs/tools/system/colorls/Gemfile.lock2
-rw-r--r--pkgs/tools/system/ctop/default.nix6
-rw-r--r--pkgs/tools/system/facter/default.nix4
-rw-r--r--pkgs/tools/system/foreman/Gemfile.lock2
-rw-r--r--pkgs/tools/system/gotop/default.nix18
-rw-r--r--pkgs/tools/system/hiera-eyaml/Gemfile.lock2
-rw-r--r--pkgs/tools/system/hwinfo/default.nix6
-rw-r--r--pkgs/tools/system/ipmiutil/default.nix6
-rw-r--r--pkgs/tools/system/kmon/default.nix31
-rw-r--r--pkgs/tools/system/localtime/default.nix9
-rw-r--r--pkgs/tools/system/minijail/default.nix47
-rw-r--r--pkgs/tools/system/minijail/tools.nix13
-rw-r--r--pkgs/tools/system/netdata/default.nix15
-rw-r--r--pkgs/tools/system/procodile/Gemfile.lock2
-rw-r--r--pkgs/tools/system/r10k/Gemfile.lock2
-rw-r--r--pkgs/tools/system/s6-rc/default.nix4
-rw-r--r--pkgs/tools/system/s6/default.nix4
-rw-r--r--pkgs/tools/system/stress-ng/default.nix4
-rw-r--r--pkgs/tools/system/thermald/default.nix6
-rw-r--r--pkgs/tools/system/thinkfan/default.nix4
-rw-r--r--pkgs/tools/system/zenith/cargo-lock.patch13
-rw-r--r--pkgs/tools/system/zenith/default.nix27
-rw-r--r--pkgs/tools/text/bcat/Gemfile.lock2
-rw-r--r--pkgs/tools/text/diffr/default.nix14
-rw-r--r--pkgs/tools/text/fanficfare/default.nix4
-rw-r--r--pkgs/tools/text/gtranslator/default.nix6
-rw-r--r--pkgs/tools/text/kdiff3/default.nix6
-rw-r--r--pkgs/tools/text/kramdown-rfc2629/Gemfile.lock2
-rw-r--r--pkgs/tools/text/languagetool/default.nix6
-rw-r--r--pkgs/tools/text/markdown-pp/default.nix4
-rw-r--r--pkgs/tools/text/mdbook/default.nix6
-rw-r--r--pkgs/tools/text/papertrail/Gemfile.lock2
-rw-r--r--pkgs/tools/text/reckon/Gemfile.lock2
-rw-r--r--pkgs/tools/text/ripgrep-all/default.nix10
-rw-r--r--pkgs/tools/text/ripgrep/default.nix6
-rw-r--r--pkgs/tools/text/rosie/default.nix47
-rw-r--r--pkgs/tools/text/sd/default.nix8
-rw-r--r--pkgs/tools/text/shfmt/default.nix8
-rw-r--r--pkgs/tools/typesetting/asciidoctor/Gemfile.lock2
-rw-r--r--pkgs/tools/typesetting/docbookrx/Gemfile.lock2
-rw-r--r--pkgs/tools/typesetting/hevea/default.nix6
-rw-r--r--pkgs/tools/typesetting/kramdown-asciidoc/Gemfile.lock2
-rw-r--r--pkgs/tools/typesetting/rubber/default.nix4
-rw-r--r--pkgs/tools/typesetting/tex/texlive/combine.nix3
-rw-r--r--pkgs/tools/video/vnc2flv/default.nix6
-rw-r--r--pkgs/tools/virtualization/amazon-ecs-cli/default.nix6
-rw-r--r--pkgs/tools/virtualization/euca2ools/default.nix4
-rw-r--r--pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix3
-rwxr-xr-xpkgs/tools/virtualization/nixos-container/nixos-container.pl8
-rw-r--r--pkgs/top-level/aliases.nix64
-rw-r--r--pkgs/top-level/all-packages.nix1029
-rw-r--r--pkgs/top-level/coq-packages.nix2
-rw-r--r--pkgs/top-level/haskell-packages.nix20
-rw-r--r--pkgs/top-level/make-tarball.nix19
-rw-r--r--pkgs/top-level/ocaml-packages.nix6
-rw-r--r--pkgs/top-level/packages-config.nix13
-rw-r--r--pkgs/top-level/perl-packages.nix117
-rw-r--r--pkgs/top-level/php-packages.nix1352
-rw-r--r--pkgs/top-level/python-packages.nix178
-rw-r--r--pkgs/top-level/static.nix7
2232 files changed, 44524 insertions, 27642 deletions
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index d84c6a59538..c9abac5851b 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -82,8 +82,8 @@
 /pkgs/development/r-modules         @peti
 
 # Ruby
-/pkgs/development/interpreters/ruby @alyssais @zimbatm
-/pkgs/development/ruby-modules      @alyssais @zimbatm
+/pkgs/development/interpreters/ruby @alyssais
+/pkgs/development/ruby-modules      @alyssais
 
 # Rust
 /pkgs/development/compilers/rust @Mic92 @LnL7
@@ -178,6 +178,7 @@
 /nixos/tests/prometheus-exporters.nix                        @WilliButz
 
 # PHP
-/pkgs/development/interpreters/php  @etu
-/pkgs/top-level/php-packages.nix    @etu
-/pkgs/build-support/build-pecl.nix  @etu
+/doc/languages-frameworks/php.section.md @etu
+/pkgs/development/interpreters/php       @etu
+/pkgs/top-level/php-packages.nix         @etu
+/pkgs/build-support/build-pecl.nix       @etu
diff --git a/.gitignore b/.gitignore
index b3ae9e6ea86..ca00bc4df57 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,6 +11,7 @@ result-*
 .version-suffix
 
 .DS_Store
+.mypy_cache
 
 /pkgs/development/libraries/qt-5/*/tmp/
 /pkgs/desktops/kde-5/*/tmp/
diff --git a/doc/languages-frameworks/android.section.md b/doc/languages-frameworks/android.section.md
index d76b590ede3..6ee450eeb59 100644
--- a/doc/languages-frameworks/android.section.md
+++ b/doc/languages-frameworks/android.section.md
@@ -186,7 +186,7 @@ with import <nixpkgs> {};
 androidenv.emulateApp {
   name = "emulate-MyAndroidApp";
   platformVersion = "28";
-  abiVersion = "x86_64"; # armeabi-v7a, mips, x86
+  abiVersion = "x86"; # armeabi-v7a, mips, x86_64
   systemImageType = "google_apis_playstore";
 }
 ```
diff --git a/doc/languages-frameworks/haskell.section.md b/doc/languages-frameworks/haskell.section.md
index 944c17a137e..54ba8e4786d 100644
--- a/doc/languages-frameworks/haskell.section.md
+++ b/doc/languages-frameworks/haskell.section.md
@@ -369,7 +369,7 @@ automatically select the right version of GHC and other build tools to build,
 test and execute apps in an existing project downloaded from somewhere on the
 Internet. Pass the `--nix` flag to any `stack` command to do so, e.g.
 ```shell
-git clone --recursive https://github.com/yesodweb/wai
+git clone --recurse-submodules https://github.com/yesodweb/wai.git
 cd wai
 stack --nix build
 ```
diff --git a/doc/languages-frameworks/php.section.md b/doc/languages-frameworks/php.section.md
new file mode 100644
index 00000000000..a302a9a7f87
--- /dev/null
+++ b/doc/languages-frameworks/php.section.md
@@ -0,0 +1,112 @@
+# PHP
+
+## User Guide
+
+### Using PHP
+
+#### Overview
+
+Several versions of PHP are available on Nix, each of which having a
+wide variety of extensions and libraries available.
+
+The attribute `php` refers to the version of PHP considered most
+stable and thoroughly tested in nixpkgs for any given release of
+NixOS. Note that while this version of PHP may not be the latest major
+release from upstream, any version of PHP supported in nixpkgs may be
+utilized by specifying the desired attribute by version, such as
+`php74`.
+
+Only versions of PHP that are supported by upstream for the entirety
+of a given NixOS release will be included in that release of
+NixOS. See [PHP Supported
+Versions](https://www.php.net/supported-versions.php).
+
+Interactive tools built on PHP are put in `php.packages`; composer is
+for example available at `php.packages.composer`.
+
+Most extensions that come with PHP, as well as some popular
+third-party ones, are available in `php.extensions`; for example, the
+opcache extension shipped with PHP is available at
+`php.extensions.opcache` and the third-party ImageMagick extension at
+`php.extensions.imagick`.
+
+The different versions of PHP that nixpkgs provides is located under
+attributes named based on major and minor version number; e.g.,
+`php74` is PHP 7.4 with commonly used extensions installed,
+`php74base` is the same PHP runtime without extensions.
+
+#### Installing PHP with packages
+
+A PHP package with specific extensions enabled can be built using
+`php.withExtensions`. This is a function which accepts an anonymous
+function as its only argument; the function should take one argument,
+the set of all extensions, and return a list of wanted extensions. For
+example, a PHP package with the opcache and ImageMagick extensions
+enabled:
+
+```nix
+php.withExtensions (e: with e; [ imagick opcache ])
+```
+
+Note that this will give you a package with _only_ opcache and
+ImageMagick, none of the other extensions which are enabled by default
+in the `php` package will be available.
+
+To enable building on a previous PHP package, the currently enabled
+extensions are made available in its `enabledExtensions`
+attribute. For example, to generate a package with all default
+extensions enabled, except opcache, but with ImageMagick:
+
+```nix
+php.withExtensions (e:
+  (lib.filter (e: e != php.extensions.opcache) php.enabledExtensions)
+  ++ [ e.imagick ])
+```
+
+If you want a PHP build with extra configuration in the `php.ini`
+file, you can use `php.buildEnv`. This function takes two named and
+optional parameters: `extensions` and `extraConfig`. `extensions`
+takes an extension specification equivalent to that of
+`php.withExtensions`, `extraConfig` a string of additional `php.ini`
+configuration parameters. For example, a PHP package with the opcache
+and ImageMagick extensions enabled, and `memory_limit` set to `256M`:
+
+```nix
+php.buildEnv {
+  extensions = e: with e; [ imagick opcache ];
+  extraConfig = "memory_limit=256M";
+}
+```
+
+##### Example setup for `phpfpm`
+
+You can use the previous examples in a `phpfpm` pool called `foo` as
+follows:
+
+```nix
+let
+  myPhp = php.withExtensions (e: with e; [ imagick opcache ]);
+in {
+  services.phpfpm.pools."foo".phpPackage = myPhp;
+};
+```
+
+```nix
+let
+  myPhp = php.buildEnv {
+    extensions = e: with e; [ imagick opcache ];
+    extraConfig = "memory_limit=256M";
+  };
+in {
+  services.phpfpm.pools."foo".phpPackage = myPhp;
+};
+```
+
+##### Example usage with `nix-shell`
+
+This brings up a temporary environment that contains a PHP interpreter
+with the extensions `imagick` and `opcache` enabled.
+
+```sh
+nix-shell -p 'php.buildEnv { extensions = e: with e; [ imagick opcache ]; }'
+```
diff --git a/doc/languages-frameworks/vim.section.md b/doc/languages-frameworks/vim.section.md
index 05a23d26cf2..4911509212e 100644
--- a/doc/languages-frameworks/vim.section.md
+++ b/doc/languages-frameworks/vim.section.md
@@ -261,12 +261,7 @@ deoplete-fish = super.deoplete-fish.overrideAttrs(old: {
 
 Sometimes plugins require an override that must be changed when the plugin is updated. This can cause issues when Vim plugins are auto-updated but the associated override isn't updated. For these plugins, the override should be written so that it specifies all information required to install the plugin, and running `./update.py` doesn't change the derivation for the plugin. Manually updating the override is required to update these types of plugins. An example of such a plugin is `LanguageClient-neovim`.
 
-To add a new plugin:
-
-  1. run `./update.py` and create a commit named "vimPlugins: Update",
-  2. add the new plugin to [vim-plugin-names](/pkgs/misc/vim-plugins/vim-plugin-names) and add overrides if required to [overrides.nix](/pkgs/misc/vim-plugins/overrides.nix),
-  3. run `./update.py` again and create a commit named "vimPlugins.[name]: init at [version]" (where `name` and `version` can be found in [generated.nix](/pkgs/misc/vim-plugins/generated.nix)), and
-  4. create a pull request.
+To add a new plugin, run `./update.py --add "[owner]/[name]"`. **NOTE**: This script automatically commits to your git repository. Be sure to check out a fresh branch before running.
 
 ## Important repositories
 
diff --git a/doc/preface.chapter.md b/doc/preface.chapter.md
index 88ca5e2e3ce..7fa65ab1102 100644
--- a/doc/preface.chapter.md
+++ b/doc/preface.chapter.md
@@ -37,7 +37,7 @@ security updates. More up to date packages and modules are available via the
 
 Both `nixos-unstable` and `nixpkgs` follow the `master` branch of the Nixpkgs
 repository, although both do lag the `master` branch by generally
-[a couple of days](https://howoldis.herokuapp.com/). Updates to a channel are
+[a couple of days](https://status.nixos.org/). Updates to a channel are
 distributed as soon as all tests for that channel pass, e.g.
 [this table](https://hydra.nixos.org/job/nixpkgs/trunk/unstable#tabs-constituents)
 shows the status of tests for the `nixpkgs` channel.
diff --git a/doc/stdenv/multiple-output.xml b/doc/stdenv/multiple-output.xml
index 83275bb2fbd..51e1cc2e024 100644
--- a/doc/stdenv/multiple-output.xml
+++ b/doc/stdenv/multiple-output.xml
@@ -106,7 +106,7 @@
    </para>
 
    <para>
-    The reason for why <literal>glibc</literal> deviates from the convention is because referencing a library provided by <literal>glibc</literal> is a very common operation among Nix packages. For instance, third-party executables packaged by Nix are typically patched and relinked with the relevant version of <literal>glibc</literal> libraries from Nix packages (please see the documentation on <link xlink:href="https://nixos.org/patchelf.html">patchelf</link> for more details).
+    The reason for why <literal>glibc</literal> deviates from the convention is because referencing a library provided by <literal>glibc</literal> is a very common operation among Nix packages. For instance, third-party executables packaged by Nix are typically patched and relinked with the relevant version of <literal>glibc</literal> libraries from Nix packages (please see the documentation on <link xlink:href="https://github.com/NixOS/patchelf/blob/master/README">patchelf</link> for more details).
    </para>
   </section>
 
diff --git a/flake.nix b/flake.nix
index a6828c98fb5..52fd2f82a37 100644
--- a/flake.nix
+++ b/flake.nix
@@ -25,7 +25,7 @@
           import ./nixos/lib/eval-config.nix (args // {
             modules = modules ++
               [ { system.nixos.versionSuffix =
-                    ".${lib.substring 0 8 self.lastModified}.${self.shortRev or "dirty"}";
+                    ".${lib.substring 0 8 (self.lastModifiedDate or self.lastModified)}.${self.shortRev or "dirty"}";
                   system.nixos.revision = lib.mkIf (self ? rev) self.rev;
                 }
               ];
diff --git a/lib/attrsets.nix b/lib/attrsets.nix
index 72430522f7d..7d84c25de77 100644
--- a/lib/attrsets.nix
+++ b/lib/attrsets.nix
@@ -4,7 +4,7 @@
 let
   inherit (builtins) head tail length;
   inherit (lib.trivial) and;
-  inherit (lib.strings) concatStringsSep;
+  inherit (lib.strings) concatStringsSep sanitizeDerivationName;
   inherit (lib.lists) fold concatMap concatLists;
 in
 
@@ -310,7 +310,7 @@ rec {
       path' = builtins.storePath path;
       res =
         { type = "derivation";
-          name = builtins.unsafeDiscardStringContext (builtins.substring 33 (-1) (baseNameOf path'));
+          name = sanitizeDerivationName (builtins.substring 33 (-1) (baseNameOf path'));
           outPath = path';
           outputs = [ "out" ];
           out = res;
diff --git a/lib/default.nix b/lib/default.nix
index a909cefd60f..d00c4abec0a 100644
--- a/lib/default.nix
+++ b/lib/default.nix
@@ -141,7 +141,7 @@ let
       mergeAttrsWithFunc mergeAttrsConcatenateValues
       mergeAttrsNoOverride mergeAttrByFunc mergeAttrsByFuncDefaults
       mergeAttrsByFuncDefaultsClean mergeAttrBy
-      fakeSha256 fakeSha512
+      fakeSri fakeSha256 fakeSha512
       nixType imap;
     inherit (versions)
       splitVersion;
diff --git a/lib/deprecated.nix b/lib/deprecated.nix
index 155d6f0c361..8c4fe9c390c 100644
--- a/lib/deprecated.nix
+++ b/lib/deprecated.nix
@@ -272,6 +272,7 @@ rec {
   imap = imap1;
 
   # Fake hashes. Can be used as hash placeholders, when computing hash ahead isn't trivial
+  fakeSri = "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=";
   fakeSha256 = "0000000000000000000000000000000000000000000000000000000000000000";
   fakeSha512 = "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000";
 }
diff --git a/lib/generators.nix b/lib/generators.nix
index 240a19789b5..efe6ea6031d 100644
--- a/lib/generators.nix
+++ b/lib/generators.nix
@@ -126,6 +126,59 @@ rec {
       # map input to ini sections
       mapAttrsToStringsSep "\n" mkSection attrsOfAttrs;
 
+  /* Generate a git-config file from an attrset.
+   *
+   * It has two major differences from the regular INI format:
+   *
+   * 1. values are indented with tabs
+   * 2. sections can have sub-sections
+   *
+   * generators.toGitINI {
+   *   url."ssh://git@github.com/".insteadOf = "https://github.com";
+   *   user.name = "edolstra";
+   * }
+   *
+   *> [url "ssh://git@github.com/"]
+   *>   insteadOf = https://github.com/
+   *>
+   *> [user]
+   *>   name = edolstra
+   */
+  toGitINI = attrs:
+    with builtins;
+    let
+      mkSectionName = name:
+        let
+          containsQuote = libStr.hasInfix ''"'' name;
+          sections = libStr.splitString "." name;
+          section = head sections;
+          subsections = tail sections;
+          subsection = concatStringsSep "." subsections;
+        in if containsQuote || subsections == [ ] then
+          name
+        else
+          ''${section} "${subsection}"'';
+
+      # generation for multiple ini values
+      mkKeyValue = k: v:
+        let mkKeyValue = mkKeyValueDefault { } " = " k;
+        in concatStringsSep "\n" (map (kv: "\t" + mkKeyValue kv) (lib.toList v));
+
+      # converts { a.b.c = 5; } to { "a.b".c = 5; } for toINI
+      gitFlattenAttrs = let
+        recurse = path: value:
+          if isAttrs value then
+            lib.mapAttrsToList (name: value: recurse ([ name ] ++ path) value) value
+          else if length path > 1 then {
+            ${concatStringsSep "." (lib.reverseList (tail path))}.${head path} = value;
+          } else {
+            ${head path} = value;
+          };
+      in attrs: lib.foldl lib.recursiveUpdate { } (lib.flatten (recurse [ ] attrs));
+
+      toINI_ = toINI { inherit mkKeyValue mkSectionName; };
+    in
+      toINI_ (gitFlattenAttrs attrs);
 
   /* Generates JSON from an arbitrary (non-function) value.
     * For more information see the documentation of the builtin.
diff --git a/lib/licenses.nix b/lib/licenses.nix
index e2f94e565ce..b63de0911bc 100644
--- a/lib/licenses.nix
+++ b/lib/licenses.nix
@@ -649,6 +649,13 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
     url = http://metadata.ftp-master.debian.org/changelogs/main/d/debianutils/debianutils_4.8.1_copyright;
   };
 
+  sspl = {
+    shortName = "SSPL";
+    fullName = "Server Side Public License";
+    url = https://www.mongodb.com/licensing/server-side-public-license;
+    free = false;
+  };
+
   tcltk = spdx {
     spdxId = "TCL";
     fullName = "TCL/TK License";
@@ -675,6 +682,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) {
     # channel and NixOS images.
   };
 
+  unicode-dfs-2016 = spdx {
+    spdxId = "Unicode-DFS-2016";
+    fullName = "Unicode License Agreement - Data Files and Software (2016)";
+  };
+
   unlicense = spdx {
     spdxId = "Unlicense";
     fullName = "The Unlicense";
diff --git a/lib/sources.nix b/lib/sources.nix
index 05519c3e392..ed9bce48530 100644
--- a/lib/sources.nix
+++ b/lib/sources.nix
@@ -63,17 +63,14 @@ rec {
   #             https://nixos.org/nix/manual/#builtin-filterSource
   #
   #   name:     Optional name to use as part of the store path.
-  #             This defaults `src.name` or otherwise `baseNameOf src`.
-  #             We recommend setting `name` whenever `src` is syntactically `./.`.
-  #             Otherwise, you depend on `./.`'s name in the parent directory,
-  #             which can cause inconsistent names, defeating caching.
+  #             This defaults to `src.name` or otherwise `"source"`.
   #
   cleanSourceWith = { filter ? _path: _type: true, src, name ? null }:
     let
       isFiltered = src ? _isLibCleanSourceWith;
       origSrc = if isFiltered then src.origSrc else src;
       filter' = if isFiltered then name: type: filter name type && src.filter name type else filter;
-      name' = if name != null then name else if isFiltered then src.name else baseNameOf src;
+      name' = if name != null then name else if isFiltered then src.name else "source";
     in {
       inherit origSrc;
       filter = filter';
diff --git a/lib/strings.nix b/lib/strings.nix
index 4f9509ffe7c..7ecd6b143ee 100644
--- a/lib/strings.nix
+++ b/lib/strings.nix
@@ -678,4 +678,36 @@ rec {
        => "1.0"
   */
   fileContents = file: removeSuffix "\n" (builtins.readFile file);
+
+
+  /* Creates a valid derivation name from a potentially invalid one.
+
+     Type: sanitizeDerivationName :: String -> String
+
+     Example:
+       sanitizeDerivationName "../hello.bar # foo"
+       => "-hello.bar-foo"
+       sanitizeDerivationName ""
+       => "unknown"
+       sanitizeDerivationName pkgs.hello
+       => "-nix-store-2g75chlbpxlrqn15zlby2dfh8hr9qwbk-hello-2.10"
+  */
+  sanitizeDerivationName = string: lib.pipe string [
+    # Get rid of string context. This is safe under the assumption that the
+    # resulting string is only used as a derivation name
+    builtins.unsafeDiscardStringContext
+    # Strip all leading "."
+    (x: builtins.elemAt (builtins.match "\\.*(.*)" x) 0)
+    # Split out all invalid characters
+    # https://github.com/NixOS/nix/blob/2.3.2/src/libstore/store-api.cc#L85-L112
+    # https://github.com/NixOS/nix/blob/2242be83c61788b9c0736a92bb0b5c7bbfc40803/nix-rust/src/store/path.rs#L100-L125
+    (builtins.split "[^[:alnum:]+._?=-]+")
+    # Replace invalid character ranges with a "-"
+    (concatMapStrings (s: if lib.isList s then "-" else s))
+    # Limit to 211 characters (minus 4 chars for ".drv")
+    (x: substring (lib.max (stringLength x - 207) 0) (-1) x)
+    # If the result is empty, replace it with "unknown"
+    (x: if stringLength x == 0 then "unknown" else x)
+  ];
+
 }
diff --git a/lib/systems/default.nix b/lib/systems/default.nix
index 4ca932d1792..210674cc639 100644
--- a/lib/systems/default.nix
+++ b/lib/systems/default.nix
@@ -65,6 +65,7 @@ rec {
           freebsd = "FreeBSD";
           openbsd = "OpenBSD";
           wasi = "Wasi";
+          genode = "Genode";
         }.${final.parsed.kernel.name} or null;
 
          # uname -p
diff --git a/lib/systems/doubles.nix b/lib/systems/doubles.nix
index 619b0427918..a839b3d3d57 100644
--- a/lib/systems/doubles.nix
+++ b/lib/systems/doubles.nix
@@ -35,6 +35,8 @@ let
     "vc4-none"
 
     "js-ghcjs"
+
+    "aarch64-genode" "x86_64-genode"
   ];
 
   allParsed = map parse.mkSystemFromString all;
@@ -68,6 +70,7 @@ in {
   unix    = filterDoubles predicates.isUnix;
   wasi    = filterDoubles predicates.isWasi;
   windows = filterDoubles predicates.isWindows;
+  genode  = filterDoubles predicates.isGenode;
 
   embedded = filterDoubles predicates.isNone;
 
diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix
index 01dcf0787df..90a1fb6d80c 100644
--- a/lib/systems/inspect.nix
+++ b/lib/systems/inspect.nix
@@ -47,6 +47,7 @@ rec {
     isMinGW        = { kernel = kernels.windows; abi = abis.gnu; };
     isWasi         = { kernel = kernels.wasi; };
     isGhcjs        = { kernel = kernels.ghcjs; };
+    isGenode       = { kernel = kernels.genode; };
     isNone         = { kernel = kernels.none; };
 
     isAndroid      = [ { abi = abis.android; } { abi = abis.androideabi; } ];
diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix
index 6a02dbb5152..648e7c27024 100644
--- a/lib/systems/parse.nix
+++ b/lib/systems/parse.nix
@@ -279,6 +279,7 @@ rec {
     wasi    = { execFormat = wasm;    families = { }; };
     windows = { execFormat = pe;      families = { }; };
     ghcjs   = { execFormat = unknown; families = { }; };
+    genode  = { execFormat = elf;     families = { }; };
   } // { # aliases
     # 'darwin' is the kernel for all of them. We choose macOS by default.
     darwin = kernels.macos;
@@ -395,6 +396,8 @@ rec {
         then { cpu = elemAt l 0; vendor = "unknown"; kernel = elemAt l 1; abi = elemAt l 2; }
       else if (elemAt l 2 == "ghcjs")
         then { cpu = elemAt l 0; vendor = "unknown"; kernel = elemAt l 2; }
+      else if hasPrefix "genode" (elemAt l 2)
+        then { cpu = elemAt l 0; vendor = elemAt l 1; kernel = elemAt l 2; }
       else throw "Target specification with 3 components is ambiguous";
     "4" =    { cpu = elemAt l 0; vendor = elemAt l 1; kernel = elemAt l 2; abi = elemAt l 3; };
   }.${toString (length l)}
diff --git a/lib/tests/misc.nix b/lib/tests/misc.nix
index 739c5d5fe15..36ddd186d7b 100644
--- a/lib/tests/misc.nix
+++ b/lib/tests/misc.nix
@@ -3,6 +3,23 @@
 # if the resulting list is empty, all tests passed
 with import ../default.nix;
 
+let
+
+  testSanitizeDerivationName = { name, expected }:
+  let
+    drv = derivation {
+      name = strings.sanitizeDerivationName name;
+      builder = "x";
+      system = "x";
+    };
+  in {
+    # Evaluate the derivation so an invalid name would be caught
+    expr = builtins.seq drv.drvPath drv.name;
+    inherit expected;
+  };
+
+in
+
 runTests {
 
 
@@ -490,4 +507,29 @@ runTests {
 
     expected = "'-X' 'PUT' '--data' '{\"id\":0}' '--retry' '3' '--url' 'https://example.com/foo' '--url' 'https://example.com/bar' '--verbose'";
   };
+
+  testSanitizeDerivationNameLeadingDots = testSanitizeDerivationName {
+    name = "..foo";
+    expected = "foo";
+  };
+
+  testSanitizeDerivationNameAscii = testSanitizeDerivationName {
+    name = " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~";
+    expected = "-+--.-0123456789-=-?-ABCDEFGHIJKLMNOPQRSTUVWXYZ-_-abcdefghijklmnopqrstuvwxyz-";
+  };
+
+  testSanitizeDerivationNameTooLong = testSanitizeDerivationName {
+    name = "This string is loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong";
+    expected = "loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong";
+  };
+
+  testSanitizeDerivationNameTooLongWithInvalid = testSanitizeDerivationName {
+    name = "Hello there aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa &&&&&&&&";
+    expected = "there-aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-";
+  };
+
+  testSanitizeDerivationNameEmpty = testSanitizeDerivationName {
+    name = "";
+    expected = "unknown";
+  };
 }
diff --git a/lib/tests/systems.nix b/lib/tests/systems.nix
index dd2b9575fc2..ea6e337937f 100644
--- a/lib/tests/systems.nix
+++ b/lib/tests/systems.nix
@@ -12,16 +12,17 @@ let
     expected = lib.sort lib.lessThan y;
   };
 in with lib.systems.doubles; lib.runTests {
-  testall = mseteq all (linux ++ darwin ++ freebsd ++ openbsd ++ netbsd ++ illumos ++ wasi ++ windows ++ embedded ++ js);
+  testall = mseteq all (linux ++ darwin ++ freebsd ++ openbsd ++ netbsd ++ illumos ++ wasi ++ windows ++ embedded ++ js ++ genode);
 
   testarm = mseteq arm [ "armv5tel-linux" "armv6l-linux" "armv6l-none" "armv7a-linux" "armv7l-linux" "arm-none" "armv7a-darwin" ];
   testi686 = mseteq i686 [ "i686-linux" "i686-freebsd" "i686-netbsd" "i686-openbsd" "i686-cygwin" "i686-windows" "i686-none" "i686-darwin" ];
   testmips = mseteq mips [ "mipsel-linux" ];
-  testx86_64 = mseteq x86_64 [ "x86_64-linux" "x86_64-darwin" "x86_64-freebsd" "x86_64-openbsd" "x86_64-netbsd" "x86_64-cygwin" "x86_64-solaris" "x86_64-windows" "x86_64-none" ];
+  testx86_64 = mseteq x86_64 [ "x86_64-linux" "x86_64-darwin" "x86_64-freebsd" "x86_64-genode" "x86_64-openbsd" "x86_64-netbsd" "x86_64-cygwin" "x86_64-solaris" "x86_64-windows" "x86_64-none" ];
 
   testcygwin = mseteq cygwin [ "i686-cygwin" "x86_64-cygwin" ];
   testdarwin = mseteq darwin [ "x86_64-darwin" "i686-darwin" "aarch64-darwin" "armv7a-darwin" ];
   testfreebsd = mseteq freebsd [ "i686-freebsd" "x86_64-freebsd" ];
+  testgenode = mseteq genode [ "aarch64-genode" "x86_64-genode" ];
   testgnu = mseteq gnu (linux /* ++ kfreebsd ++ ... */);
   testillumos = mseteq illumos [ "x86_64-solaris" ];
   testlinux = mseteq linux [ "aarch64-linux" "armv5tel-linux" "armv6l-linux" "armv7a-linux" "armv7l-linux" "i686-linux" "mipsel-linux" "riscv32-linux" "riscv64-linux" "x86_64-linux" "powerpc64le-linux" ];
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 24164631019..a8b4cc85282 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -302,6 +302,12 @@
     githubId = 786394;
     name = "Alexander Krupenkin ";
   };
+  albakham = {
+    email = "dev@geber.ga";
+    github = "albakham";
+    githubId = 43479487;
+    name = "Titouan Biteau";
+  };
   alexarice = {
     email = "alexrice999@hotmail.co.uk";
     github = "alexarice";
@@ -412,10 +418,15 @@
     githubId = 20530052;
     name = "Andrew Miloradovsky";
   };
-  aminb = {
-    email = "amin@aminb.org";
-    github = "aminb";
+  notbandali = {
     name = "Amin Bandali";
+    email = "bandali@gnu.org";
+    github = "notbandali";
+    githubId = 1254858;
+    keys = [{
+      longkeyid = "rsa4096/0xA21A020248816103";
+      fingerprint = "BE62 7373 8E61 6D6D 1B3A  08E8 A21A 0202 4881 6103";
+    }];
   };
   aminechikhaoui = {
     email = "amine.chikhaoui91@gmail.com";
@@ -645,6 +656,12 @@
     githubId = 10285250;
     name = "Artur E. Ruuge";
   };
+  asbachb = {
+    email = "asbachb-nixpkgs-5c2a@impl.it";
+    github = "asbachb";
+    githubId = 1482768;
+    name = "Benjamin Asbach";
+  };
   ashalkhakov = {
     email = "artyom.shalkhakov@gmail.com";
     github = "ashalkhakov";
@@ -964,6 +981,12 @@
     githubId = 2071583;
     name = "Benjamin Hipple";
   };
+  bhougland = {
+    email = "benjamin.hougland@gmail.com";
+    github = "bhougland18";
+    githubId = 28444296;
+    name = "Benjamin Hougland";
+  };
   binarin = {
     email = "binarin@binarin.ru";
     github = "binarin";
@@ -1257,6 +1280,20 @@
     githubId = 5949913;
     name = "Carlos Fernandez Sanz";
   };
+  cge = {
+    email = "cevans@evanslabs.org";
+    github = "cgevans";
+    githubId = 2054509;
+    name = "Constantine Evans";
+    keys = [
+      { longkeyid = "rsa4096/0xB67DB1D20A93A9F9";
+        fingerprint = "32B1 6EE7 DBA5 16DE 526E  4C5A B67D B1D2 0A93 A9F9";
+      }
+      { longkeyid = "rsa4096/0x1A1D58B86AE2AABD";
+        fingerprint = "669C 1D24 5A87 DB34 6BE4  3216 1A1D 58B8 6AE2 AABD";
+      }
+    ];
+  };
   chaduffy = {
     email = "charles@dyfis.net";
     github = "charles-dyfis-net";
@@ -2367,6 +2404,12 @@
       fingerprint = "67FE 98F2 8C44 CF22 1828  E12F D57E FA62 5C9A 925F";
     }];
   };
+  euank = {
+    email = "euank-nixpkg@euank.com";
+    github = "euank";
+    githubId = 2147649;
+    name = "Euan Kemp";
+  };
   evanjs = {
     email = "evanjsx@gmail.com";
     github = "evanjs";
@@ -2808,6 +2851,12 @@
     githubId = 12064730;
     name = "Alex Ivanov";
   };
+  gnxlxnxx = {
+    email = "gnxlxnxx@web.de";
+    github = "gnxlxnxx";
+    githubId = 25820499;
+    name = "Roman Kretschmer";
+  };
   goibhniu = {
     email = "cillian.deroiste@gmail.com";
     github = "cillianderoiste";
@@ -3190,6 +3239,12 @@
     githubId = 4458;
     name = "Ivan Kozik";
   };
+  ivan-timokhin = {
+    email = "nixpkgs@ivan.timokhin.name";
+    name = "Ivan Timokhin";
+    github = "ivan-timokhin";
+    githubId = 9802104;
+  };
   ivan-tkatchev = {
     email = "tkatchev@gmail.com";
     name = "Ivan Tkatchev";
@@ -3204,6 +3259,12 @@
       fingerprint = "7311 2700 AB4F 4CDF C68C  F6A5 79C3 C47D C652 EA54";
     }];
   };
+  ivar = {
+    email = "ivar.scholten@protonmail.com";
+    github = "IvarWithoutBones";
+    githubId = 41924494;
+    Name = "Ivar";
+  };
   ivegotasthma = {
     email = "ivegotasthma@protonmail.com";
     github = "ivegotasthma";
@@ -4373,6 +4434,12 @@
     github = "ltavard";
     name = "Laure Tavard";
   };
+  luc65r = {
+    email = "lucas@ransan.tk";
+    github = "luc65r";
+    githubId = 59375051;
+    name = "Lucas Ransan";
+  };
   lucus16 = {
     email = "lars.jellema@gmail.com";
     github = "Lucus16";
@@ -4864,6 +4931,12 @@
     githubId = 19479662;
     name = "Kajetan Champlewski";
   };
+  millerjason = {
+    email = "mailings-github@millerjason.com";
+    github = "millerjason";
+    githubId = 7610974;
+    name = "Jason Miller";
+  };
   miltador = {
     email = "miltador@yandex.ua";
     name = "Vasiliy Solovey";
@@ -4877,7 +4950,12 @@
   minijackson = {
     email = "minijackson@riseup.net";
     github = "minijackson";
+    githubId = 1200507;
     name = "Rémi Nicole";
+    keys = [{
+      longkeyid = "rsa2048/0xFEA888C9F5D64F62";
+      fingerprint = "3196 83D3 9A1B 4DE1 3DC2  51FD FEA8 88C9 F5D6 4F62";
+    }];
   };
   mirdhyn = {
     email = "mirdhyn@gmail.com";
@@ -5528,6 +5606,12 @@
     githubId = 101514;
     name = "Orivej Desh";
   };
+  oro = {
+    email = "marco@orovecchia.at";
+    github = "oro";
+    githubId = 357005;
+    name = "Marco Orovecchia";
+  };
   osener = {
     email = "ozan@ozansener.com";
     github = "osener";
@@ -5966,6 +6050,12 @@
     githubId = 37715;
     name = "Brian McKenna";
   };
+  puzzlewolf = {
+    email = "nixos@nora.pink";
+    github = "puzzlewolf";
+    githubId = 23097564;
+    name = "Nora Widdecke";
+  };
   pxc = {
     email = "patrick.callahan@latitudeengineering.com";
     name = "Patrick Callahan";
@@ -6010,6 +6100,11 @@
       fingerprint = "7573 56D7 79BB B888 773E  415E 736C CDF9 EF51 BD97";
     }];
   };
+  raboof = {
+    email = "arnout@bzzt.net";
+    github = "raboof";
+    name = "Arnout Engelen";
+  };
   rafaelgg = {
     email = "rafael.garcia.gallego@gmail.com";
     github = "rafaelgg";
@@ -6438,6 +6533,12 @@
     githubId = 766350;
     name = "Richard Zetterberg";
   };
+  s1341 = {
+    email = "s1341@shmarya.net";
+    name = "Shmarya Rubenstein";
+    github = "s1341";
+    githubId = 5682183;
+  };
   samdoshi = {
     email = "sam@metal-fish.co.uk";
     github = "samdoshi";
@@ -6700,6 +6801,11 @@
     github = "shmish111";
     name = "David Smith";
   };
+  shnarazk = {
+    email = "shujinarazaki@protonmail.com";
+    github = "shnarazk";
+    name = "Narazaki Shuji";
+  };
   shou = {
     email = "x+g@shou.io";
     github = "Shou";
@@ -7277,6 +7383,12 @@
     githubId = 378734;
     name = "TG ⊗ Θ";
   };
+  th0rgal = {
+    email = "thomas.marchand@tuta.io";
+    github = "Th0rgal";
+    githubId = 41830259;
+    name = "Thomas Marchand";
+  };
   thall = {
     email = "niclas.thall@gmail.com";
     github = "thall";
@@ -7318,6 +7430,12 @@
     githubId = 8547242;
     name = "Stefan Rohrbacher";
   };
+  "thelegy" = {
+    email = "mail+nixos@0jb.de";
+    github = "thelegy";
+    githubId = 3105057;
+    name = "Jan Beinke";
+  };
   thesola10 = {
     email = "thesola10@bobile.fr";
     github = "thesola10";
@@ -7957,6 +8075,12 @@
     githubId = 13489144;
     name = "Calle Rosenquist";
   };
+  xe = {
+    email = "me@christine.website";
+    github = "Xe";
+    githubId = 529003;
+    name = "Christine Dodrill";
+  };
   xeji = {
     email = "xeji@cat3.de";
     github = "xeji";
@@ -8091,6 +8215,11 @@
       fingerprint = "85F8 E850 F8F2 F823 F934  535B EC50 6589 9AEA AF4C";
     }];
   };
+  yvesf = {
+    email = "yvesf+nix@xapek.org";
+    github = "yvesf";
+    name = "Yves Fischer";
+  };
   yvt = {
     email = "i@yvt.jp";
     github = "yvt";
@@ -8285,6 +8414,16 @@
     githubId = 474343;
     name = "Xavier Zwirtz";
   };
+  ymeister = {
+    name = "Yuri Meister";
+    email = "47071325+ymeister@users.noreply.github.com";
+    github = "ymeister";
+    githubId = 47071325;
+  };
+  cpcloud = {
+    name = "Phillip Cloud";
+    email = "417981+cpcloud@users.noreply.github.com";
+    github = "cpcloud";
+    githubId = 417981;
+  };
 }
-
-  
diff --git a/maintainers/team-list.nix b/maintainers/team-list.nix
index 1d8b291978b..7efff7f45ec 100644
--- a/maintainers/team-list.nix
+++ b/maintainers/team-list.nix
@@ -30,4 +30,13 @@ with lib.maintainers; {
     ];
     scope = "Maintain GNOME desktop environment and platform.";
   };
+
+  podman = {
+    members = [
+      saschagrunert
+      vdemeester
+      zowoq
+    ];
+    scope = "Maintain podman related packages.";
+  };
 }
diff --git a/nixos/doc/manual/installation/installing.xml b/nixos/doc/manual/installation/installing.xml
index 4041b4ad163..0dbfb39c32b 100644
--- a/nixos/doc/manual/installation/installing.xml
+++ b/nixos/doc/manual/installation/installing.xml
@@ -24,8 +24,7 @@
   </para>
 
   <para>
-   The NixOS manual is available on virtual console 8 (press Alt+F8 to access)
-   or by running <command>nixos-help</command>.
+   The NixOS manual is available by running <command>nixos-help</command>.
   </para>
 
   <para>
diff --git a/nixos/doc/manual/release-notes/rl-2003.xml b/nixos/doc/manual/release-notes/rl-2003.xml
index e5351519f8d..f09fb3255d8 100644
--- a/nixos/doc/manual/release-notes/rl-2003.xml
+++ b/nixos/doc/manual/release-notes/rl-2003.xml
@@ -75,6 +75,24 @@ services.xserver.displayManager.defaultSession = "xfce+icewm";
 </programlisting>
     </para>
    </listitem>
+   <listitem>
+    <para>
+     The testing driver implementation in NixOS is now in Python <filename>make-test-python.nix</filename>.
+     This was done by Jacek Galowicz (<link xlink:href="https://github.com/tfc">@tfc</link>), and with the
+     collaboration of Julian Stecklina (<link xlink:href="https://github.com/blitz">@blitz</link>) and
+     Jana Traue (<link xlink:href="https://github.com/jtraue">@jtraue</link>). All documentation has been updated to use this
+     testing driver, and a vast majority of the 286 tests in NixOS were ported to python driver. In 20.09 the Perl driver implementation,
+     <filename>make-test.nix</filename>, is slated for removal. This should give users of the NixOS integration framework
+     a transitory period to rewrite their tests to use the Python implementation. Users of the Perl driver will see
+     this warning everytime they use it:
+<screen>
+<prompt>$ </prompt>warning: Perl VM tests are deprecated and will be removed for 20.09.
+Please update your tests to use the python test driver.
+See https://github.com/NixOS/nixpkgs/pull/71684 for details.
+</screen>
+     API compatibility is planned to be kept for at least the next release with the perl driver.
+    </para>
+   </listitem>
   </itemizedlist>
  </section>
 
@@ -129,6 +147,17 @@ services.xserver.displayManager.defaultSession = "xfce+icewm";
   <itemizedlist>
    <listitem>
     <para>
+     The <package>dhcpcd</package> package <link xlink:href="https://roy.marples.name/archives/dhcpcd-discuss/0002621.html">
+     does not request IPv4 addresses for tap and bridge interfaces anymore by default</link>.
+     In order to still get an address on a bridge interface, one has to disable
+     <literal>networking.useDHCP</literal> and explicitly enable
+     <literal>networking.interfaces.&lt;name&gt;.useDHCP</literal> on
+     every interface, that should get an address via DHCP. This way, dhcpcd
+     is configured in an explicit way about which interface to run on.
+    </para>
+   </listitem>
+   <listitem>
+    <para>
       GnuPG is now built without support for a graphical passphrase entry
       by default. Please enable the <literal>gpg-agent</literal> user service
       via the NixOS option <literal>programs.gnupg.agent.enable</literal>.
@@ -648,6 +677,121 @@ auth required pam_succeed_if.so uid >= 1000 quiet
        <xref linkend="opt-environment.systemPackages"/>.
      </para>
    </listitem>
+   <listitem>
+    <para>
+     <package>nextcloud</package> has been updated to <literal>v18.0.2</literal>. This means
+     that users from NixOS 19.09 can't upgrade directly since you can only move one version
+      forward and 19.09 uses <literal>v16.0.8</literal>.
+    </para>
+    <para>
+     To provide a safe upgrade-path and to circumvent similar issues in the future, the following
+     measures were taken:
+     <itemizedlist>
+      <listitem>
+       <para>
+        The <package>pkgs.nextcloud</package>-attribute has been removed and replaced with
+        versioned attributes (currently <package>pkgs.nextcloud17</package> and
+        <package>pkgs.nextcloud18</package>). With this change major-releases can be backported
+        without breaking stuff and to make upgrade-paths easier.
+       </para>
+      </listitem>
+      <listitem>
+       <para>
+        Existing setups will be detected using
+        <link linkend="opt-system.stateVersion">system.stateVersion</link>: by default,
+        <package>nextcloud17</package> will be used, but will raise a warning which notes
+        that after that deploy it's recommended to update to the latest stable version
+        (<package>nextcloud18</package>) by declaring the newly introduced setting
+        <link linkend="opt-services.nextcloud.package">services.nextcloud.package</link>.
+       </para>
+      </listitem>
+      <listitem>
+       <para>
+        Users with an overlay (e.g. to use <package>nextcloud</package> at version
+        <literal>v18</literal> on <literal>19.09</literal>) will get an evaluation error
+        by default. This is done to ensure that our
+        <link linkend="opt-services.nextcloud.package">package</link>-option doesn't select an
+        older version by accident. It's recommended to use <package>pkgs.nextcloud18</package>
+        or to set <link linkend="opt-services.nextcloud.package">package</link> to
+        <package>pkgs.nextcloud</package> explicitly.
+       </para>
+      </listitem>
+     </itemizedlist>
+    </para>
+    <warning>
+     <para>
+      Please note that if you're comming from <literal>19.03</literal> or older, you have
+      to manually upgrade to <literal>19.09</literal> first to upgrade your server
+      to Nextcloud v16.
+     </para>
+    </warning>
+   </listitem>
+   <listitem>
+    <para>
+     <package>Hydra</package> has gained a massive performance improvement due to
+     <link xlink:href="https://github.com/NixOS/hydra/pull/710">some database schema
+     changes</link> by adding several IDs and better indexing. However, it's necessary
+     to upgrade Hydra in multiple steps:
+     <itemizedlist>
+      <listitem>
+       <para>
+        At first, an older version of Hydra needs to be deployed which adds those
+        (nullable) columns. When having set <link linkend="opt-system.stateVersion">stateVersion
+        </link> to a value older than <literal>20.03</literal>, this package will be selected
+        by default from the module when upgrading. Otherwise, the package can be deployed using
+        the following config:
+<programlisting>{ pkgs, ... }: {
+  <link linkend="opt-services.hydra.package">services.hydra.package</link> = pkgs.hydra-migration;
+}</programlisting>
+       </para>
+      </listitem>
+      <listitem>
+       <para>
+        Automatically fill the newly added ID columns on the server by running the following
+        command:
+<screen>
+<prompt>$ </prompt>hydra-backfill-ids
+</screen>
+        <warning>
+         <para>Please note that this process can take a while depending on your database-size!</para>
+        </warning>
+       </para>
+      </listitem>
+      <listitem>
+       <para>
+        Deploy a newer version of Hydra to activate the DB optimizations. This can be done by
+        using <package>hydra-unstable</package>. This package already includes
+        <link xlink:href="https://github.com/nixos/rfcs/pull/49">flake-support</link> and is
+        therefore compiled against <package>pkgs.nixFlakes</package>.
+        <warning>
+         <para>
+          If your <link linkend="opt-system.stateVersion">stateVersion</link> is set to
+          <literal>20.03</literal> or greater, <package>hydra-unstable</package> will be used
+          automatically! This will break your setup if you didn't run the migration.
+         </para>
+        </warning>
+        Please note that Hydra is currently not available with <package>nixStable</package>
+        as this doesn't compile anymore.
+       </para>
+      </listitem>
+     </itemizedlist>
+     <warning>
+      <para>
+       <package>pkgs.hydra</package> has been removed to ensure a graceful database-migration
+       using the dedicated package-attributes. If you still have <package>pkgs.hydra</package>
+       defined in e.g. an overlay, an assertion error will be thrown. To circumvent this,
+       you need to set <xref linkend="opt-services.hydra.package" /> to <package>pkgs.hydra</package>
+       explicitly and make sure you know what you're doing!
+      </para>
+     </warning>
+    </para>
+   </listitem>
+   <listitem>
+     <para>
+       The TokuDB storage engine will be disabled in <package>mariadb</package> 10.5. It is recommended to switch
+       to RocksDB. See also <link xlink:href="https://mariadb.com/kb/en/tokudb/">TokuDB</link>.
+     </para>
+   </listitem>
   </itemizedlist>
  </section>
 
@@ -712,8 +856,8 @@ auth required pam_succeed_if.so uid >= 1000 quiet
    </listitem>
    <listitem>
     <para>
-     Predicatbly named network-interfaces get renamed in stage-1. This means that it's possible
-     to use the proper interface name for e.g. dropbear-setups.
+     Predictably named network interfaces get renamed in stage-1. This means that it is possible
+     to use the proper interface name for e.g. Dropbear setups.
     </para>
     <para>
      For further reference, please read <link xlink:href="https://github.com/NixOS/nixpkgs/pull/68953">#68953</link> or the corresponding <link xlink:href="https://discourse.nixos.org/t/predictable-network-interface-names-in-initrd/4055">discourse thread</link>.
@@ -776,6 +920,20 @@ auth required pam_succeed_if.so uid >= 1000 quiet
     not <command>systemd-networkd</command>.
    </para>
   </listitem>
+  <listitem>
+   <para>
+    <package>mongodb</package> has been updated to version <literal>3.4.24</literal>.
+    <warning>
+     <para>
+      Please note that <package>mongodb</package> has been relicensed under their own
+      <link xlink:href="https://www.mongodb.com/licensing/server-side-public-license/faq"><literal>
+      sspl</literal></link>-license. Since it's not entirely free and not OSI-approved,
+      it's listed as non-free. This means that Hydra doesn't provide prebuilt
+      <package>mongodb</package>-packages and needs to be built locally.
+     </para>
+    </warning>
+   </para>
+  </listitem>
   </itemizedlist>
  </section>
 </section>
diff --git a/nixos/doc/manual/release-notes/rl-2009.xml b/nixos/doc/manual/release-notes/rl-2009.xml
index a9a6003d1e8..cf7946ffb80 100644
--- a/nixos/doc/manual/release-notes/rl-2009.xml
+++ b/nixos/doc/manual/release-notes/rl-2009.xml
@@ -24,6 +24,9 @@
     </para>
    </listitem>
    <listitem>
+    <para>GNOME desktop environment was upgraded to 3.36, see its <link xlink:href="https://help.gnome.org/misc/release-notes/3.36/">release notes</link>.</para>
+   </listitem>
+   <listitem>
     <para>
      PHP now defaults to PHP 7.4, updated from 7.3.
     </para>
@@ -108,6 +111,98 @@
       <link linkend="opt-security.duosec.integrationKey">security.duosec.integrationKey</link>.
     </para>
    </listitem>
+   <listitem>
+    <para>
+     The initrd SSH support now uses OpenSSH rather than Dropbear to
+     allow the use of Ed25519 keys and other OpenSSH-specific
+     functionality. Host keys must now be in the OpenSSH format, and at
+     least one pre-generated key must be specified.
+    </para>
+    <para>
+     If you used the <option>boot.initrd.network.ssh.host*Key</option>
+     options, you'll get an error explaining how to convert your host
+     keys and migrate to the new
+     <option>boot.initrd.network.ssh.hostKeys</option> option.
+     Otherwise, if you don't have any host keys set, you'll need to
+     generate some; see the <option>hostKeys</option> option
+     documentation for instructions.
+    </para>
+   </listitem>
+   <listitem>
+     <para>
+       Since this release there's an easy way to customize your PHP install to get a much smaller
+       base PHP with only wanted extensions enabled. See the following snippet installing a smaller PHP
+       with the extensions <literal>imagick</literal>, <literal>opcache</literal> and
+       <literal>pdo_mysql</literal> loaded:
+
+       <programlisting>
+environment.systemPackages = [
+(pkgs.php.buildEnv { extensions = pp: with pp; [
+    imagick
+    opcache
+    pdo_mysql
+  ]; })
+];</programlisting>
+
+       The default <literal>php</literal> attribute hasn't lost any extensions -
+       the <literal>opcache</literal> extension was added there.
+
+       All upstream PHP extensions are available under <package><![CDATA[php.extensions.<name?>]]></package>.
+     </para>
+     <para>
+       The updated <literal>php</literal> attribute is now easily customizable to your liking
+       by using extensions instead of writing config files or changing configure flags.
+
+       Therefore we have removed the following configure flags:
+
+       <itemizedlist>
+         <title>PHP <literal>config</literal> flags that we don't read anymore:</title>
+         <listitem><para><literal>config.php.argon2</literal></para></listitem>
+         <listitem><para><literal>config.php.bcmath</literal></para></listitem>
+         <listitem><para><literal>config.php.bz2</literal></para></listitem>
+         <listitem><para><literal>config.php.calendar</literal></para></listitem>
+         <listitem><para><literal>config.php.curl</literal></para></listitem>
+         <listitem><para><literal>config.php.exif</literal></para></listitem>
+         <listitem><para><literal>config.php.ftp</literal></para></listitem>
+         <listitem><para><literal>config.php.gd</literal></para></listitem>
+         <listitem><para><literal>config.php.gettext</literal></para></listitem>
+         <listitem><para><literal>config.php.gmp</literal></para></listitem>
+         <listitem><para><literal>config.php.imap</literal></para></listitem>
+         <listitem><para><literal>config.php.intl</literal></para></listitem>
+         <listitem><para><literal>config.php.ldap</literal></para></listitem>
+         <listitem><para><literal>config.php.libxml2</literal></para></listitem>
+         <listitem><para><literal>config.php.libzip</literal></para></listitem>
+         <listitem><para><literal>config.php.mbstring</literal></para></listitem>
+         <listitem><para><literal>config.php.mysqli</literal></para></listitem>
+         <listitem><para><literal>config.php.mysqlnd</literal></para></listitem>
+         <listitem><para><literal>config.php.openssl</literal></para></listitem>
+         <listitem><para><literal>config.php.pcntl</literal></para></listitem>
+         <listitem><para><literal>config.php.pdo_mysql</literal></para></listitem>
+         <listitem><para><literal>config.php.pdo_odbc</literal></para></listitem>
+         <listitem><para><literal>config.php.pdo_pgsql</literal></para></listitem>
+         <listitem><para><literal>config.php.phpdbg</literal></para></listitem>
+         <listitem><para><literal>config.php.postgresql</literal></para></listitem>
+         <listitem><para><literal>config.php.readline</literal></para></listitem>
+         <listitem><para><literal>config.php.soap</literal></para></listitem>
+         <listitem><para><literal>config.php.sockets</literal></para></listitem>
+         <listitem><para><literal>config.php.sodium</literal></para></listitem>
+         <listitem><para><literal>config.php.sqlite</literal></para></listitem>
+         <listitem><para><literal>config.php.tidy</literal></para></listitem>
+         <listitem><para><literal>config.php.xmlrpc</literal></para></listitem>
+         <listitem><para><literal>config.php.xsl</literal></para></listitem>
+         <listitem><para><literal>config.php.zip</literal></para></listitem>
+         <listitem><para><literal>config.php.zlib</literal></para></listitem>
+       </itemizedlist>
+     </para>
+   </listitem>
+   <listitem>
+     <para>
+      Gollum received a major update to version 5.x and you may have to change
+      some links in your wiki when migrating from gollum 4.x. More information
+      can be found
+      <link xlink:href="https://github.com/gollum/gollum/wiki/5.0-release-notes#migrating-your-wiki">here</link>.
+     </para>
+   </listitem>
   </itemizedlist>
  </section>
 
@@ -120,7 +215,13 @@
 
   <itemizedlist>
    <listitem>
-    <para />
+    <para>
+     The <package>notmuch</package> package move its emacs-related binaries and
+     emacs lisp files to a separate output. They're not part
+     of the default <literal>out</literal> output anymore - if you relied on the
+     <literal>notmuch-emacs-mua</literal> binary or the emacs lisp files, access them via
+     the <literal>notmuch.emacs</literal> output.
+    </para>
    </listitem>
   </itemizedlist>
  </section>
diff --git a/nixos/lib/make-iso9660-image.sh b/nixos/lib/make-iso9660-image.sh
index b7b1ab52a63..d4633d2c8d1 100644
--- a/nixos/lib/make-iso9660-image.sh
+++ b/nixos/lib/make-iso9660-image.sh
@@ -107,6 +107,7 @@ xorriso="xorriso
  -publisher nixos
  -graft-points
  -full-iso9660-filenames
+ -joliet
  ${isoBootFlags}
  ${usbBootFlags}
  ${efiBootFlags}
diff --git a/nixos/lib/make-options-doc/default.nix b/nixos/lib/make-options-doc/default.nix
index eee8f612410..772b7d3add9 100644
--- a/nixos/lib/make-options-doc/default.nix
+++ b/nixos/lib/make-options-doc/default.nix
@@ -86,7 +86,7 @@ let
   optionsList = lib.sort optionLess optionsListDesc;
 
   # Convert the list of options into an XML file.
-  optionsXML = pkgs.writeText "options.xml" (builtins.toXML optionsList);
+  optionsXML = builtins.toFile "options.xml" (builtins.toXML optionsList);
 
   optionsNix = builtins.listToAttrs (map (o: { name = o.name; value = removeAttrs o ["name" "visible" "internal"]; }) optionsList);
 
@@ -133,6 +133,7 @@ in {
 
   optionsJSON = pkgs.runCommand "options.json"
     { meta.description = "List of NixOS options in JSON format";
+      buildInputs = [ pkgs.brotli ];
     }
     ''
       # Export list of options in different format.
@@ -141,8 +142,11 @@ in {
 
       cp ${builtins.toFile "options.json" (builtins.unsafeDiscardStringContext (builtins.toJSON optionsNix))} $dst/options.json
 
+      brotli -9 < $dst/options.json > $dst/options.json.br
+
       mkdir -p $out/nix-support
       echo "file json $dst/options.json" >> $out/nix-support/hydra-build-products
+      echo "file json-br $dst/options.json.br" >> $out/nix-support/hydra-build-products
     ''; # */
 
   optionsDocBook = pkgs.runCommand "options-docbook.xml" {} ''
diff --git a/nixos/lib/test-driver/test-driver.py b/nixos/lib/test-driver/test-driver.py
index c27947bc610..07f27515990 100644
--- a/nixos/lib/test-driver/test-driver.py
+++ b/nixos/lib/test-driver/test-driver.py
@@ -6,6 +6,7 @@ from xml.sax.saxutils import XMLGenerator
 import _thread
 import atexit
 import base64
+import codecs
 import os
 import pathlib
 import ptpython.repl
@@ -101,10 +102,12 @@ def make_command(args: list) -> str:
 def create_vlan(vlan_nr: str) -> Tuple[str, str, "subprocess.Popen[bytes]", Any]:
     global log
     log.log("starting VDE switch for network {}".format(vlan_nr))
-    vde_socket = os.path.abspath("./vde{}.ctl".format(vlan_nr))
+    vde_socket = tempfile.mkdtemp(
+        prefix="nixos-test-vde-", suffix="-vde{}.ctl".format(vlan_nr)
+    )
     pty_master, pty_slave = pty.openpty()
     vde_process = subprocess.Popen(
-        ["vde_switch", "-s", vde_socket, "--dirmode", "0777"],
+        ["vde_switch", "-s", vde_socket, "--dirmode", "0700"],
         bufsize=1,
         stdin=pty_slave,
         stdout=subprocess.PIPE,
@@ -115,6 +118,7 @@ def create_vlan(vlan_nr: str) -> Tuple[str, str, "subprocess.Popen[bytes]", Any]
     fd.write("version\n")
     # TODO: perl version checks if this can be read from
     # an if not, dies. we could hang here forever. Fix it.
+    assert vde_process.stdout is not None
     vde_process.stdout.readline()
     if not os.path.exists(os.path.join(vde_socket, "ctl")):
         raise Exception("cannot start vde_switch")
@@ -139,7 +143,7 @@ def retry(fn: Callable) -> None:
 class Logger:
     def __init__(self) -> None:
         self.logfile = os.environ.get("LOGFILE", "/dev/null")
-        self.logfile_handle = open(self.logfile, "wb")
+        self.logfile_handle = codecs.open(self.logfile, "wb")
         self.xml = XMLGenerator(self.logfile_handle, encoding="utf-8")
         self.queue: "Queue[Dict[str, str]]" = Queue(1000)
 
@@ -383,7 +387,7 @@ class Machine:
             if state != require_state:
                 raise Exception(
                     "Expected unit ‘{}’ to to be in state ".format(unit)
-                    + "'active' but it is in state ‘{}’".format(state)
+                    + "'{}' but it is in state ‘{}’".format(require_state, state)
                 )
 
     def execute(self, command: str) -> Tuple[int, str]:
@@ -739,6 +743,7 @@ class Machine:
         self.shell, _ = self.shell_socket.accept()
 
         def process_serial_output() -> None:
+            assert self.process.stdout is not None
             for _line in self.process.stdout:
                 # Ignore undecodable bytes that may occur in boot menus
                 line = _line.decode(errors="ignore").replace("\r", "").rstrip()
@@ -936,7 +941,7 @@ if __name__ == "__main__":
                 machine.process.kill()
 
             for _, _, process, _ in vde_sockets:
-                process.kill()
+                process.terminate()
         log.close()
 
     tic = time.time()
diff --git a/nixos/maintainers/scripts/azure-new/.gitignore b/nixos/maintainers/scripts/azure-new/.gitignore
new file mode 100644
index 00000000000..26905a86234
--- /dev/null
+++ b/nixos/maintainers/scripts/azure-new/.gitignore
@@ -0,0 +1 @@
+azure
\ No newline at end of file
diff --git a/nixos/maintainers/scripts/azure-new/README.md b/nixos/maintainers/scripts/azure-new/README.md
new file mode 100644
index 00000000000..20e81c44ce5
--- /dev/null
+++ b/nixos/maintainers/scripts/azure-new/README.md
@@ -0,0 +1,42 @@
+# azure
+
+## Demo
+
+Here's a demo of this being used: https://asciinema.org/a/euXb9dIeUybE3VkstLWLbvhmp
+
+## Usage
+
+This is meant to be an example image that you can copy into your own
+project and modify to your own needs. Notice that the example image
+includes a built-in test user account, which by default uses your
+`~/.ssh/id_ed25519.pub` as an `authorized_key`.
+
+Build and upload the image
+```shell
+$ ./upload-image.sh ./examples/basic/image.nix
+
+...
++ attr=azbasic
++ nix-build ./examples/basic/image.nix --out-link azure
+/nix/store/qdpzknpskzw30vba92mb24xzll1dqsmd-azure-image
+...
+95.5 %, 0 Done, 0 Failed, 1 Pending, 0 Skipped, 1 Total, 2-sec Throughput (Mb/s): 932.9565 
+...
+/subscriptions/aff271ee-e9be-4441-b9bb-42f5af4cbaeb/resourceGroups/nixos-images/providers/Microsoft.Compute/images/azure-image-todo-makethisbetter
+```
+
+Take the output, boot an Azure VM:
+
+```
+img="/subscriptions/.../..." # use output from last command
+./boot-vm.sh "${img}"
+...
+=> booted
+```
+
+## Future Work
+
+1. If the user specifies a hard-coded user, then the agent could be removed.
+   Probably has security benefits; definitely has closure-size benefits.
+   (It's likely the VM will need to be booted with a special flag. See:
+   https://github.com/Azure/azure-cli/issues/12775 for details.)
diff --git a/nixos/maintainers/scripts/azure-new/boot-vm.sh b/nixos/maintainers/scripts/azure-new/boot-vm.sh
new file mode 100755
index 00000000000..1ce3a5f9db1
--- /dev/null
+++ b/nixos/maintainers/scripts/azure-new/boot-vm.sh
@@ -0,0 +1,36 @@
+#!/usr/bin/env bash
+set -euo pipefail
+set -x
+
+image="${1}"
+location="westus2"
+group="nixos-test-vm"
+vm_size="Standard_D2s_v3";  os_size=42;
+
+# ensure group
+az group create --location "westus2" --name "${group}"
+group_id="$(az group show --name "${group}" -o tsv --query "[id]")"
+
+# (optional) identity
+if ! az identity show -n "${group}-identity" -g "${group}" &>/dev/stderr; then
+  az identity create --name "${group}-identity" --resource-group "${group}"
+fi
+
+# (optional) role assignment, to the resource group, bad but not really great alternatives
+identity_id="$(az identity show --name "${group}-identity" --resource-group "${group}" -o tsv --query "[id]")"
+principal_id="$(az identity show --name "${group}-identity" --resource-group "${group}" -o tsv --query "[principalId]")"
+until az role assignment create --assignee "${principal_id}" --role "Owner" --scope "${group_id}"; do sleep 1; done
+
+# boot vm
+az vm create \
+  --name "${group}-vm" \
+  --resource-group "${group}" \
+  --assign-identity "${identity_id}" \
+  --size "${vm_size}" \
+  --os-disk-size-gb "${os_size}" \
+  --image "${image}" \
+  --admin-username "${USER}" \
+  --location "westus2" \
+  --storage-sku "Premium_LRS" \
+  --ssh-key-values "$(ssh-add -L)"
+
diff --git a/nixos/maintainers/scripts/azure-new/common.sh b/nixos/maintainers/scripts/azure-new/common.sh
new file mode 100644
index 00000000000..eb87c3e0650
--- /dev/null
+++ b/nixos/maintainers/scripts/azure-new/common.sh
@@ -0,0 +1,7 @@
+export group="${AZURE_RESOURCE_GROUP:-"azure"}"
+export location="${AZURE_LOCATION:-"westus2"}"
+
+img_file=$(echo azure/*.vhd)
+img_name="$(basename "${img_file}")"
+img_name="${img_name%".vhd"}"
+export img_name="${img_name//[._]/-}"
diff --git a/nixos/maintainers/scripts/azure-new/examples/basic/image.nix b/nixos/maintainers/scripts/azure-new/examples/basic/image.nix
new file mode 100644
index 00000000000..74b12815158
--- /dev/null
+++ b/nixos/maintainers/scripts/azure-new/examples/basic/image.nix
@@ -0,0 +1,10 @@
+let
+  pkgs = (import <nixpkgs> {});
+  machine = import "${pkgs.path}/nixos/lib/eval-config.nix" {
+    system = "x86_64-linux";
+    modules = [
+      ({config, ...}: { imports = [ ./system.nix ]; })
+    ];
+  };
+in
+  machine.config.system.build.azureImage
diff --git a/nixos/maintainers/scripts/azure-new/examples/basic/system.nix b/nixos/maintainers/scripts/azure-new/examples/basic/system.nix
new file mode 100644
index 00000000000..855bd3bab71
--- /dev/null
+++ b/nixos/maintainers/scripts/azure-new/examples/basic/system.nix
@@ -0,0 +1,34 @@
+{ pkgs, modulesPath, ... }:
+
+let username = "azurenixosuser";
+in
+{
+  imports = [
+    "${modulesPath}/virtualisation/azure-common.nix"
+    "${modulesPath}/virtualisation/azure-image.nix"
+  ];
+
+  ## NOTE: This is just an example of how to hard-code a user.
+  ## The normal Azure agent IS included and DOES provision a user based
+  ## on the information passed at VM creation time.
+  users.users."${username}" = {
+    isNormalUser = true;
+    home = "/home/${username}";
+    description = "Azure NixOS Test User";
+    openssh.authorizedKeys.keys = [ (builtins.readFile ~/.ssh/id_ed25519.pub) ];
+  };
+  nix.trustedUsers = [ username ];
+
+  virtualisation.azureImage.diskSize = 2500;
+
+  system.stateVersion = "20.03";
+  boot.kernelPackages = pkgs.linuxPackages_latest;
+
+  # test user doesn't have a password
+  services.openssh.passwordAuthentication = false;
+  security.sudo.wheelNeedsPassword = false;
+
+  environment.systemPackages = with pkgs; [
+    git file htop wget curl
+  ];
+}
diff --git a/nixos/maintainers/scripts/azure-new/shell.nix b/nixos/maintainers/scripts/azure-new/shell.nix
new file mode 100644
index 00000000000..592f1bf9056
--- /dev/null
+++ b/nixos/maintainers/scripts/azure-new/shell.nix
@@ -0,0 +1,13 @@
+with (import ../../../../default.nix {});
+stdenv.mkDerivation {
+  name = "nixcfg-azure-devenv";
+
+  nativeBuildInputs = [
+    azure-cli
+    bash
+    cacert
+    azure-storage-azcopy
+  ];
+
+  AZURE_CONFIG_DIR="/tmp/azure-cli/.azure";
+}
diff --git a/nixos/maintainers/scripts/azure-new/upload-image.sh b/nixos/maintainers/scripts/azure-new/upload-image.sh
new file mode 100755
index 00000000000..1466dcd1f0a
--- /dev/null
+++ b/nixos/maintainers/scripts/azure-new/upload-image.sh
@@ -0,0 +1,58 @@
+#!/usr/bin/env bash
+set -euo pipefail
+set -x
+
+image_nix="${1:-"./examples/basic/image.nix"}"
+
+nix-build "${image_nix}" --out-link "azure"
+
+group="nixos-images"
+location="westus2"
+img_name="nixos-image"
+img_file="$(readlink -f ./azure/disk.vhd)"
+
+if ! az group show -n "${group}" &>/dev/null; then
+  az group create --name "${group}" --location "${location}"
+fi
+
+# note: the disk access token song/dance is tedious
+# but allows us to upload direct to a disk image
+# thereby avoid storage accounts (and naming them) entirely!
+if ! az disk show -g "${group}" -n "${img_name}" &>/dev/null; then
+  bytes="$(stat -c %s ${img_file})"
+  size="30"
+  az disk create \
+    --resource-group "${group}" \
+    --name "${img_name}" \
+    --for-upload true --upload-size-bytes "${bytes}"
+
+  timeout=$(( 60 * 60 )) # disk access token timeout
+  sasurl="$(\
+    az disk grant-access \
+      --access-level Write \
+      --resource-group "${group}" \
+      --name "${img_name}" \
+      --duration-in-seconds ${timeout} \
+        | jq -r '.accessSas'
+  )"
+
+  azcopy copy "${img_file}" "${sasurl}" \
+    --blob-type PageBlob 
+    
+  az disk revoke-access \
+    --resource-group "${group}" \
+    --name "${img_name}"
+fi
+
+if ! az image show -g "${group}" -n "${img_name}" &>/dev/null; then
+  diskid="$(az disk show -g "${group}" -n "${img_name}" -o json | jq -r .id)"
+
+  az image create \
+    --resource-group "${group}" \
+    --name "${img_name}" \
+    --source "${diskid}" \
+    --os-type "linux" >/dev/null
+fi
+
+imageid="$(az image show -g "${group}" -n "${img_name}" -o json | jq -r .id)"
+echo "${imageid}"
diff --git a/nixos/modules/config/gtk/gtk-icon-cache.nix b/nixos/modules/config/gtk/gtk-icon-cache.nix
index 86a6bfb5af4..7441f4de40e 100644
--- a/nixos/modules/config/gtk/gtk-icon-cache.nix
+++ b/nixos/modules/config/gtk/gtk-icon-cache.nix
@@ -77,7 +77,7 @@ with lib;
 
         if [ -w "$themedir" ]; then
           rm -f "$themedir"/icon-theme.cache
-          ${pkgs.gtk3.out}/bin/gtk-update-icon-cache --ignore-theme-index "$themedir"
+          ${pkgs.buildPackages.gtk3.out}/bin/gtk-update-icon-cache --ignore-theme-index "$themedir"
         fi
       done
     '';
diff --git a/nixos/modules/config/vte.nix b/nixos/modules/config/vte.nix
index d4a8c926fef..24d32a00fd4 100644
--- a/nixos/modules/config/vte.nix
+++ b/nixos/modules/config/vte.nix
@@ -16,6 +16,10 @@ in
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   options = {
 
     programs.bash.vteIntegration = mkOption {
diff --git a/nixos/modules/config/xdg/autostart.nix b/nixos/modules/config/xdg/autostart.nix
index 0ee94fed818..40984cb5ec5 100644
--- a/nixos/modules/config/xdg/autostart.nix
+++ b/nixos/modules/config/xdg/autostart.nix
@@ -2,19 +2,23 @@
 
 with lib;
 {
+  meta = {
+    maintainers = teams.freedesktop.members;
+  };
+
   options = {
     xdg.autostart.enable = mkOption {
       type = types.bool;
       default = true;
       description = ''
-        Whether to install files to support the 
+        Whether to install files to support the
         <link xlink:href="https://specifications.freedesktop.org/autostart-spec/autostart-spec-latest.html">XDG Autostart specification</link>.
       '';
     };
   };
 
   config = mkIf config.xdg.autostart.enable {
-    environment.pathsToLink = [ 
+    environment.pathsToLink = [
       "/etc/xdg/autostart"
     ];
   };
diff --git a/nixos/modules/config/xdg/icons.nix b/nixos/modules/config/xdg/icons.nix
index 4677ce090b0..c83fdc251ef 100644
--- a/nixos/modules/config/xdg/icons.nix
+++ b/nixos/modules/config/xdg/icons.nix
@@ -2,6 +2,10 @@
 
 with lib;
 {
+  meta = {
+    maintainers = teams.freedesktop.members;
+  };
+
   options = {
     xdg.icons.enable = mkOption {
       type = types.bool;
diff --git a/nixos/modules/config/xdg/menus.nix b/nixos/modules/config/xdg/menus.nix
index c172692df5d..6735a7a5c43 100644
--- a/nixos/modules/config/xdg/menus.nix
+++ b/nixos/modules/config/xdg/menus.nix
@@ -2,19 +2,23 @@
 
 with lib;
 {
+  meta = {
+    maintainers = teams.freedesktop.members;
+  };
+
   options = {
     xdg.menus.enable = mkOption {
       type = types.bool;
       default = true;
       description = ''
-        Whether to install files to support the 
+        Whether to install files to support the
         <link xlink:href="https://specifications.freedesktop.org/menu-spec/menu-spec-latest.html">XDG Desktop Menu specification</link>.
       '';
     };
   };
 
   config = mkIf config.xdg.menus.enable {
-    environment.pathsToLink = [ 
+    environment.pathsToLink = [
       "/share/applications"
       "/share/desktop-directories"
       "/etc/xdg/menus"
diff --git a/nixos/modules/config/xdg/mime.nix b/nixos/modules/config/xdg/mime.nix
index a5374c2b468..4cdb3f30994 100644
--- a/nixos/modules/config/xdg/mime.nix
+++ b/nixos/modules/config/xdg/mime.nix
@@ -2,6 +2,10 @@
 
 with lib;
 {
+  meta = {
+    maintainers = teams.freedesktop.members;
+  };
+
   options = {
     xdg.mime.enable = mkOption {
       type = types.bool;
diff --git a/nixos/modules/config/xdg/portal.nix b/nixos/modules/config/xdg/portal.nix
index 1330a08070c..3c7cd729c60 100644
--- a/nixos/modules/config/xdg/portal.nix
+++ b/nixos/modules/config/xdg/portal.nix
@@ -7,6 +7,10 @@ with lib;
     (mkRenamedOptionModule [ "services" "flatpak" "extraPortals" ] [ "xdg" "portal" "extraPortals" ])
   ];
 
+  meta = {
+    maintainers = teams.freedesktop.members;
+  };
+
   options.xdg.portal = {
     enable =
       mkEnableOption "<link xlink:href='https://github.com/flatpak/xdg-desktop-portal'>xdg desktop integration</link>"//{
diff --git a/nixos/modules/config/xdg/sounds.nix b/nixos/modules/config/xdg/sounds.nix
index 14d6340fc33..0b94f550929 100644
--- a/nixos/modules/config/xdg/sounds.nix
+++ b/nixos/modules/config/xdg/sounds.nix
@@ -2,6 +2,10 @@
 
 with lib;
 {
+  meta = {
+    maintainers = teams.freedesktop.members;
+  };
+
   options = {
     xdg.sounds.enable = mkOption {
       type = types.bool;
diff --git a/nixos/modules/hardware/sensor/iio.nix b/nixos/modules/hardware/sensor/iio.nix
index a8bc1880002..4c359c3b172 100644
--- a/nixos/modules/hardware/sensor/iio.nix
+++ b/nixos/modules/hardware/sensor/iio.nix
@@ -8,7 +8,12 @@ with lib;
   options = {
     hardware.sensor.iio = {
       enable = mkOption {
-        description = "Enable this option to support IIO sensors.";
+        description = ''
+          Enable this option to support IIO sensors.
+
+          IIO sensors are used for orientation and ambient light
+          sensors on some mobile devices.
+        '';
         type = types.bool;
         default = false;
       };
diff --git a/nixos/modules/hardware/uinput.nix b/nixos/modules/hardware/uinput.nix
new file mode 100644
index 00000000000..55e86bfa6bd
--- /dev/null
+++ b/nixos/modules/hardware/uinput.nix
@@ -0,0 +1,19 @@
+{ config, pkgs, lib, ... }:
+
+let
+  cfg = config.hardware.uinput;
+in {
+  options.hardware.uinput = {
+    enable = lib.mkEnableOption "uinput support";
+  };
+
+  config = lib.mkIf cfg.enable {
+    boot.kernelModules = [ "uinput" ];
+
+    users.groups.uinput = {};
+
+    services.udev.extraRules = ''
+      SUBSYSTEM=="misc", KERNEL=="uinput", MODE="0660", GROUP="uinput", OPTIONS+="static_node=uinput"
+    '';
+  };
+}
diff --git a/nixos/modules/i18n/input-method/ibus.nix b/nixos/modules/i18n/input-method/ibus.nix
index a3d97619fc4..b4746b21b65 100644
--- a/nixos/modules/i18n/input-method/ibus.nix
+++ b/nixos/modules/i18n/input-method/ibus.nix
@@ -75,5 +75,9 @@ in
       QT_IM_MODULE = "ibus";
       XMODIFIERS = "@im=ibus";
     };
+
+    xdg.portal.extraPortals = mkIf config.xdg.portal.enable [
+      ibusPackage
+    ];
   };
 }
diff --git a/nixos/modules/installer/cd-dvd/installation-cd-base.nix b/nixos/modules/installer/cd-dvd/installation-cd-base.nix
index 24070a78694..9303e8fde13 100644
--- a/nixos/modules/installer/cd-dvd/installation-cd-base.nix
+++ b/nixos/modules/installer/cd-dvd/installation-cd-base.nix
@@ -18,8 +18,6 @@ with lib;
   # ISO naming.
   isoImage.isoName = "${config.isoImage.isoBaseName}-${config.system.nixos.label}-${pkgs.stdenv.hostPlatform.system}.iso";
 
-  isoImage.volumeID = substring 0 11 "NIXOS_ISO";
-
   # EFI booting
   isoImage.makeEfiBootable = true;
 
diff --git a/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix b/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix
index 62cbdbcfd17..84394a1ecae 100644
--- a/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix
+++ b/nixos/modules/installer/cd-dvd/installation-cd-graphical-gnome.nix
@@ -7,6 +7,8 @@ with lib;
 {
   imports = [ ./installation-cd-graphical-base.nix ];
 
+  isoImage.edition = "gnome";
+
   services.xserver.desktopManager.gnome3.enable = true;
 
   # Wayland can be problematic for some hardware like Nvidia graphics cards.
diff --git a/nixos/modules/installer/cd-dvd/installation-cd-graphical-plasma5.nix b/nixos/modules/installer/cd-dvd/installation-cd-graphical-plasma5.nix
index e00d3f7535b..e76e06654ac 100644
--- a/nixos/modules/installer/cd-dvd/installation-cd-graphical-plasma5.nix
+++ b/nixos/modules/installer/cd-dvd/installation-cd-graphical-plasma5.nix
@@ -8,6 +8,8 @@ with lib;
 {
   imports = [ ./installation-cd-graphical-base.nix ];
 
+  isoImage.edition = "plasma5";
+
   services.xserver = {
     desktopManager.plasma5 = {
       enable = true;
diff --git a/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix b/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix
index bcdbffdc20b..97506045e0e 100644
--- a/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix
+++ b/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix
@@ -8,5 +8,7 @@
     [ ./installation-cd-base.nix
     ];
 
+  isoImage.edition = "minimal";
+
   fonts.fontconfig.enable = false;
 }
diff --git a/nixos/modules/installer/cd-dvd/iso-image.nix b/nixos/modules/installer/cd-dvd/iso-image.nix
index 4558b4dc955..5243a8aa747 100644
--- a/nixos/modules/installer/cd-dvd/iso-image.nix
+++ b/nixos/modules/installer/cd-dvd/iso-image.nix
@@ -417,8 +417,17 @@ in
       '';
     };
 
+    isoImage.edition = mkOption {
+      default = "";
+      description = ''
+        Specifies which edition string to use in the volume ID of the generated
+        ISO image.
+      '';
+    };
+
     isoImage.volumeID = mkOption {
-      default = "NIXOS_BOOT_CD";
+      # nixos-$EDITION-$RELEASE-$ARCH
+      default = "nixos${optionalString (config.isoImage.edition != "") "-${config.isoImage.edition}"}-${config.system.nixos.release}-${pkgs.stdenv.hostPlatform.uname.processor}";
       description = ''
         Specifies the label or volume ID of the generated ISO image.
         Note that the label is used by stage 1 of the boot process to
@@ -515,6 +524,19 @@ in
   };
 
   config = {
+    assertions = [
+      {
+        assertion = !(stringLength config.isoImage.volumeID > 32);
+        # https://wiki.osdev.org/ISO_9660#The_Primary_Volume_Descriptor
+        # Volume Identifier can only be 32 bytes
+        message = let
+          length = stringLength config.isoImage.volumeID;
+          howmany = toString length;
+          toomany = toString (length - 32);
+        in
+        "isoImage.volumeID ${config.isoImage.volumeID} is ${howmany} characters. That is ${toomany} characters longer than the limit of 32.";
+      }
+    ];
 
     boot.loader.grub.version = 2;
 
diff --git a/nixos/modules/installer/tools/nixos-generate-config.pl b/nixos/modules/installer/tools/nixos-generate-config.pl
index 629c56814a1..a32c19a4eba 100644
--- a/nixos/modules/installer/tools/nixos-generate-config.pl
+++ b/nixos/modules/installer/tools/nixos-generate-config.pl
@@ -91,9 +91,6 @@ sub hasCPUFeature {
 }
 
 
-# Detect the number of CPU cores.
-my $cpus = scalar (grep {/^processor\s*:/} (split '\n', $cpuinfo));
-
 
 # Determine CPU governor to use
 if (-e "/sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors") {
@@ -562,7 +559,6 @@ my $hwConfig = <<EOF;
   boot.kernelModules = [$kernelModules ];
   boot.extraModulePackages = [$modulePackages ];
 $fsAndSwap
-  nix.maxJobs = lib.mkDefault $cpus;
 ${\join "", (map { "  $_\n" } (uniq @attrs))}}
 EOF
 
diff --git a/nixos/modules/misc/documentation.nix b/nixos/modules/misc/documentation.nix
index 7b3f9c0fe9c..7ad4be9a02e 100644
--- a/nixos/modules/misc/documentation.nix
+++ b/nixos/modules/misc/documentation.nix
@@ -218,9 +218,7 @@ in
            ++ optionals config.services.xserver.enable [ desktopItem pkgs.nixos-icons ]);
 
       services.mingetty.helpLine = mkIf cfg.doc.enable (
-          "\nRun `nixos-help` "
-        + optionalString config.services.nixosManual.showManual "or press <Alt-F${toString config.services.nixosManual.ttyNumber}> "
-        + "for the NixOS manual."
+          "\nRun 'nixos-help' for the NixOS manual."
       );
     })
 
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index ccdc39eecd8..c3d2bb85809 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -65,6 +65,7 @@
   ./hardware/usb-wwan.nix
   ./hardware/onlykey.nix
   ./hardware/wooting.nix
+  ./hardware/uinput.nix
   ./hardware/video/amdgpu.nix
   ./hardware/video/amdgpu-pro.nix
   ./hardware/video/ati.nix
@@ -294,7 +295,6 @@
   ./services/desktops/deepin/deepin.nix
   ./services/desktops/dleyna-renderer.nix
   ./services/desktops/dleyna-server.nix
-  ./services/desktops/pantheon/contractor.nix
   ./services/desktops/pantheon/files.nix
   ./services/desktops/flatpak.nix
   ./services/desktops/geoclue2.nix
@@ -368,6 +368,7 @@
   ./services/hardware/thermald.nix
   ./services/hardware/undervolt.nix
   ./services/hardware/vdr.nix
+  ./services/hardware/xow.nix
   ./services/logging/SystemdJournal2Gelf.nix
   ./services/logging/awstats.nix
   ./services/logging/fluentd.nix
@@ -469,7 +470,6 @@
   ./services/misc/nix-daemon.nix
   ./services/misc/nix-gc.nix
   ./services/misc/nix-optimise.nix
-  ./services/misc/nixos-manual.nix
   ./services/misc/nix-ssh-serve.nix
   ./services/misc/novacomd.nix
   ./services/misc/nzbget.nix
@@ -485,7 +485,6 @@
   ./services/misc/redmine.nix
   ./services/misc/rippled.nix
   ./services/misc/ripple-data-api.nix
-  ./services/misc/rogue.nix
   ./services/misc/serviio.nix
   ./services/misc/safeeyes.nix
   ./services/misc/sickbeard.nix
@@ -644,6 +643,7 @@
   ./services/networking/lldpd.nix
   ./services/networking/logmein-hamachi.nix
   ./services/networking/mailpile.nix
+  ./services/networking/magic-wormhole-mailbox-server.nix
   ./services/networking/matterbridge.nix
   ./services/networking/mjpg-streamer.nix
   ./services/networking/minidlna.nix
@@ -654,6 +654,7 @@
   ./services/networking/miredo.nix
   ./services/networking/mstpd.nix
   ./services/networking/mtprotoproxy.nix
+  ./services/networking/mullvad-vpn.nix
   ./services/networking/murmur.nix
   ./services/networking/mxisd.nix
   ./services/networking/namecoind.nix
@@ -682,6 +683,7 @@
   ./services/networking/ostinato.nix
   ./services/networking/owamp.nix
   ./services/networking/pdnsd.nix
+  ./services/networking/pixiecore.nix
   ./services/networking/polipo.nix
   ./services/networking/powerdns.nix
   ./services/networking/pdns-recursor.nix
@@ -692,6 +694,7 @@
   ./services/networking/prosody.nix
   ./services/networking/quagga.nix
   ./services/networking/quassel.nix
+  ./services/networking/quorum.nix
   ./services/networking/quicktun.nix
   ./services/networking/racoon.nix
   ./services/networking/radicale.nix
@@ -823,6 +826,7 @@
   ./services/web-apps/documize.nix
   ./services/web-apps/dokuwiki.nix
   ./services/web-apps/frab.nix
+  ./services/web-apps/gerrit.nix
   ./services/web-apps/gotify-server.nix
   ./services/web-apps/grocy.nix
   ./services/web-apps/icingaweb2/icingaweb2.nix
diff --git a/nixos/modules/profiles/hardened.nix b/nixos/modules/profiles/hardened.nix
index f7b2f5c7fc1..35743d83134 100644
--- a/nixos/modules/profiles/hardened.nix
+++ b/nixos/modules/profiles/hardened.nix
@@ -14,6 +14,9 @@ with lib;
 
   nix.allowedUsers = mkDefault [ "@users" ];
 
+  environment.memoryAllocator.provider = mkDefault "scudo";
+  environment.variables.SCUDO_OPTIONS = mkDefault "ZeroContents=1";
+
   security.hideProcessInformation = mkDefault true;
 
   security.lockKernelModules = mkDefault true;
diff --git a/nixos/modules/profiles/installation-device.nix b/nixos/modules/profiles/installation-device.nix
index 4596e163404..d05c0c50e82 100644
--- a/nixos/modules/profiles/installation-device.nix
+++ b/nixos/modules/profiles/installation-device.nix
@@ -26,10 +26,6 @@ with lib;
 
     # Show the manual.
     documentation.nixos.enable = mkForce true;
-    services.nixosManual.showManual = true;
-
-    # Let the user play Rogue on TTY 8 during the installation.
-    #services.rogue.enable = true;
 
     # Use less privileged nixos user
     users.users.nixos = {
diff --git a/nixos/modules/programs/geary.nix b/nixos/modules/programs/geary.nix
index 01803bc411e..5e441a75cb6 100644
--- a/nixos/modules/programs/geary.nix
+++ b/nixos/modules/programs/geary.nix
@@ -6,6 +6,10 @@ let
   cfg = config.programs.geary;
 
 in {
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   options = {
     programs.geary.enable = mkEnableOption "Geary, a Mail client for GNOME 3";
   };
diff --git a/nixos/modules/programs/gnome-disks.nix b/nixos/modules/programs/gnome-disks.nix
index 1cf839a6ddb..80dc2983ea5 100644
--- a/nixos/modules/programs/gnome-disks.nix
+++ b/nixos/modules/programs/gnome-disks.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   # Added 2019-08-09
   imports = [
     (mkRenamedOptionModule
diff --git a/nixos/modules/programs/gnome-documents.nix b/nixos/modules/programs/gnome-documents.nix
index bfa3d409ee3..9dd53483055 100644
--- a/nixos/modules/programs/gnome-documents.nix
+++ b/nixos/modules/programs/gnome-documents.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   # Added 2019-08-09
   imports = [
     (mkRenamedOptionModule
diff --git a/nixos/modules/programs/gnome-terminal.nix b/nixos/modules/programs/gnome-terminal.nix
index 0036677a157..f2617e5bc03 100644
--- a/nixos/modules/programs/gnome-terminal.nix
+++ b/nixos/modules/programs/gnome-terminal.nix
@@ -12,6 +12,10 @@ in
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   # Added 2019-08-19
   imports = [
     (mkRenamedOptionModule
@@ -20,9 +24,7 @@ in
   ];
 
   options = {
-
     programs.gnome-terminal.enable = mkEnableOption "GNOME Terminal";
-
   };
 
   config = mkIf cfg.enable {
diff --git a/nixos/modules/programs/nm-applet.nix b/nixos/modules/programs/nm-applet.nix
index 1b806071c43..273a6dec59a 100644
--- a/nixos/modules/programs/nm-applet.nix
+++ b/nixos/modules/programs/nm-applet.nix
@@ -1,6 +1,10 @@
 { config, lib, pkgs, ... }:
 
 {
+  meta = {
+    maintainers = lib.teams.freedesktop.members;
+  };
+
   options.programs.nm-applet.enable = lib.mkEnableOption "nm-applet";
 
   config = lib.mkIf config.programs.nm-applet.enable {
diff --git a/nixos/modules/security/acme.nix b/nixos/modules/security/acme.nix
index b787a767539..df5f33c9461 100644
--- a/nixos/modules/security/acme.nix
+++ b/nixos/modules/security/acme.nix
@@ -301,7 +301,7 @@ in
                 # StateDirectory must be relative, and will be created under /var/lib by systemd
                 lpath = "acme/${cert}";
                 apath = "/var/lib/${lpath}";
-                spath = "/var/lib/acme/.lego";
+                spath = "/var/lib/acme/.lego/${cert}";
                 fileMode = if data.allowKeysForGroup then "640" else "600";
                 globalOpts = [ "-d" data.domain "--email" data.email "--path" "." "--key-type" data.keyType ]
                           ++ optionals (cfg.acceptTerms) [ "--accept-tos" ]
@@ -318,7 +318,7 @@ in
                   description = "Renew ACME Certificate for ${cert}";
                   after = [ "network.target" "network-online.target" ];
                   wants = [ "network-online.target" ];
-                  wantedBy = [ "multi-user.target" ];
+                  wantedBy = mkIf (!config.boot.isContainer) [ "multi-user.target" ];
                   serviceConfig = {
                     Type = "oneshot";
                     # With RemainAfterExit the service is considered active even
@@ -330,7 +330,7 @@ in
                     User = data.user;
                     Group = data.group;
                     PrivateTmp = true;
-                    StateDirectory = "acme/.lego ${lpath}";
+                    StateDirectory = "acme/.lego/${cert} ${lpath}";
                     StateDirectoryMode = if data.allowKeysForGroup then "750" else "700";
                     WorkingDirectory = spath;
                     # Only try loading the credentialsFile if the dns challenge is enabled
diff --git a/nixos/modules/services/amqp/activemq/default.nix b/nixos/modules/services/amqp/activemq/default.nix
index 7729da27304..160dbddcd48 100644
--- a/nixos/modules/services/amqp/activemq/default.nix
+++ b/nixos/modules/services/amqp/activemq/default.nix
@@ -63,9 +63,11 @@ in {
       javaProperties = mkOption {
         type = types.attrs;
         default = { };
-        example = {
-          "java.net.preferIPv4Stack" = "true";
-        };
+        example = literalExample ''
+          {
+            "java.net.preferIPv4Stack" = "true";
+          }
+        '';
         apply = attrs: {
           "activemq.base" = "${cfg.baseDir}";
           "activemq.data" = "${cfg.baseDir}/data";
diff --git a/nixos/modules/services/backup/borgbackup.nix b/nixos/modules/services/backup/borgbackup.nix
index a2eb80c55a8..be661b201f0 100644
--- a/nixos/modules/services/backup/borgbackup.nix
+++ b/nixos/modules/services/backup/borgbackup.nix
@@ -189,6 +189,7 @@ let
 
 in {
   meta.maintainers = with maintainers; [ dotlambda ];
+  meta.doc = ./borgbackup.xml;
 
   ###### interface
 
@@ -197,10 +198,11 @@ in {
       Deduplicating backups using BorgBackup.
       Adding a job will cause a borg-job-NAME wrapper to be added
       to your system path, so that you can perform maintenance easily.
+      See also the chapter about BorgBackup in the NixOS manual.
     '';
     default = { };
     example = literalExample ''
-      {
+      { # for a local backup
         rootBackup = {
           paths = "/";
           exclude = [ "/nix" ];
@@ -213,6 +215,23 @@ in {
           startAt = "weekly";
         };
       }
+      { # Root backing each day up to a remote backup server. We assume that you have
+        #   * created a password less key: ssh-keygen -N "" -t ed25519 -f /path/to/ssh_key
+        #     best practices are: use -t ed25519, /path/to = /run/keys
+        #   * the passphrase is in the file /run/keys/borgbackup_passphrase
+        #   * you have initialized the repository manually
+        paths = [ "/etc" "/home" ];
+        exclude = [ "/nix" "'**/.cache'" ];
+        doInit = false;
+        repo =  "user3@arep.repo.borgbase.com:repo";
+        encryption = {
+          mode = "repokey-blake2";
+          passCommand = "cat /path/to/passphrase";
+        };
+        environment = { BORG_RSH = "ssh -i /path/to/ssh_key"; };
+        compression = "auto,lzma";
+        startAt = "daily";
+    };
     '';
     type = types.attrsOf (types.submodule (let globalConfig = config; in
       { name, config, ... }: {
@@ -268,6 +287,8 @@ in {
               <manvolnum>7</manvolnum></citerefentry>.
               If you do not want the backup to start
               automatically, use <literal>[ ]</literal>.
+              It will generate a systemd service borgbackup-job-NAME.
+              You may trigger it manually via systemctl restart borgbackup-job-NAME.
             '';
           };
 
@@ -303,6 +324,10 @@ in {
               you to specify a <option>passCommand</option>
               or a <option>passphrase</option>.
             '';
+            example = ''
+              encryption.mode = "repokey-blake2" ;
+              encryption.passphrase = "mySecretPassphrase" ;
+            '';
           };
 
           encryption.passCommand = mkOption {
@@ -538,6 +563,7 @@ in {
     description = ''
       Serve BorgBackup repositories to given public SSH keys,
       restricting their access to the repository only.
+      See also the chapter about BorgBackup in the NixOS manual.
       Also, clients do not need to specify the absolute path when accessing the repository,
       i.e. <literal>user@machine:.</literal> is enough. (Note colon and dot.)
     '';
diff --git a/nixos/modules/services/backup/borgbackup.xml b/nixos/modules/services/backup/borgbackup.xml
new file mode 100644
index 00000000000..bef7db608f8
--- /dev/null
+++ b/nixos/modules/services/backup/borgbackup.xml
@@ -0,0 +1,227 @@
+<chapter xmlns="http://docbook.org/ns/docbook"
+         xmlns:xlink="http://www.w3.org/1999/xlink"
+         xmlns:xi="http://www.w3.org/2001/XInclude"
+         version="5.0"
+         xml:id="module-borgbase">
+ <title>BorgBackup</title>
+  <para>
+  <emphasis>Source:</emphasis>
+  <filename>modules/services/backup/borgbackup.nix</filename>
+ </para>
+ <para>
+  <emphasis>Upstream documentation:</emphasis>
+  <link xlink:href="https://borgbackup.readthedocs.io/"/>
+ </para>
+ <para>
+  <link xlink:href="https://www.borgbackup.org/">BorgBackup</link> (short: Borg)
+  is a deduplicating backup program. Optionally, it supports compression and
+  authenticated encryption.
+  </para>
+  <para>
+  The main goal of Borg is to provide an efficient and secure way to backup
+  data. The data deduplication technique used makes Borg suitable for daily
+  backups since only changes are stored. The authenticated encryption technique
+  makes it suitable for backups to not fully trusted targets.
+ </para>
+  <section xml:id="module-services-backup-borgbackup-configuring">
+  <title>Configuring</title>
+  <para>
+   A complete list of options for the Borgbase module may be found
+   <link linkend="opt-services.borgbackup.jobs">here</link>.
+  </para>
+</section>
+ <section xml:id="opt-services-backup-borgbackup-local-directory">
+  <title>Basic usage for a local backup</title>
+
+  <para>
+   A very basic configuration for backing up to a locally accessible directory
+   is:
+<programlisting>
+{
+    opt.services.borgbackup.jobs = {
+      { rootBackup = {
+          paths = "/";
+          exclude = [ "/nix" "/path/to/local/repo" ];
+          repo = "/path/to/local/repo";
+          doInit = true;
+          encryption = {
+            mode = "repokey";
+            passphrase = "secret";
+          };
+          compression = "auto,lzma";
+          startAt = "weekly";
+        };
+      }
+    };
+}</programlisting>
+  </para>
+  <warning>
+    <para>
+        If you do not want the passphrase to be stored in the world-readable
+        Nix store, use passCommand. You find an example below.
+    </para>
+  </warning>
+ </section>
+<section xml:id="opt-services-backup-create-server">
+  <title>Create a borg backup server</title>
+  <para>You should use a different SSH key for each repository you write to,
+    because the specified keys are restricted to running borg serve and can only
+    access this single repository. You need the output of the generate pub file.
+  </para>
+    <para>
+        <programlisting>
+# sudo ssh-keygen -N '' -t ed25519 -f /run/keys/id_ed25519_my_borg_repo
+# cat /run/keys/id_ed25519_my_borg_repo
+ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID78zmOyA+5uPG4Ot0hfAy+sLDPU1L4AiIoRYEIVbbQ/ root@nixos</programlisting>
+    </para>
+    <para>
+      Add the following snippet to your NixOS configuration:
+      <programlisting>
+{
+  services.borgbackup.repos = {
+    my_borg_repo = {
+      authorizedKeys = [
+        "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID78zmOyA+5uPG4Ot0hfAy+sLDPU1L4AiIoRYEIVbbQ/ root@nixos"
+      ] ;
+      path = "/var/lib/my_borg_repo" ;
+    };
+  };
+}</programlisting>
+    </para>
+</section>
+
+ <section xml:id="opt-services-backup-borgbackup-remote-server">
+  <title>Backup to the borg repository server</title>
+  <para>The following NixOS snippet creates an hourly backup to the service
+    (on the host nixos) as created in the section above. We assume
+    that you have stored a secret passphrasse in the file
+    <code>/run/keys/borgbackup_passphrase</code>, which should be only
+    accessible by root
+  </para>
+  <para>
+      <programlisting>
+{
+  services.borgbackup.jobs = {
+    backupToLocalServer = {
+      paths = [ "/etc/nixos" ];
+      doInit = true;
+      repo =  "borg@nixos:." ;
+      encryption = {
+        mode = "repokey-blake2";
+        passCommand = "cat /run/keys/borgbackup_passphrase";
+      };
+      environment = { BORG_RSH = "ssh -i /run/keys/id_ed25519_my_borg_repo"; };
+      compression = "auto,lzma";
+      startAt = "hourly";
+    };
+  };
+};</programlisting>
+  </para>
+  <para>The following few commands (run as root) let you test your backup.
+      <programlisting>
+> nixos-rebuild switch
+...restarting the following units: polkit.service
+> systemctl restart borgbackup-job-backupToLocalServer
+> sleep 10
+> systemctl restart borgbackup-job-backupToLocalServer
+> export BORG_PASSPHRASE=topSecrect
+> borg list --rsh='ssh -i /run/keys/id_ed25519_my_borg_repo' borg@nixos:.
+nixos-backupToLocalServer-2020-03-30T21:46:17 Mon, 2020-03-30 21:46:19 [84feb97710954931ca384182f5f3cb90665f35cef214760abd7350fb064786ac]
+nixos-backupToLocalServer-2020-03-30T21:46:30 Mon, 2020-03-30 21:46:32 [e77321694ecd160ca2228611747c6ad1be177d6e0d894538898de7a2621b6e68]</programlisting>
+    </para>
+</section>
+
+ <section xml:id="opt-services-backup-borgbackup-borgbase">
+  <title>Backup to a hosting service</title>
+
+  <para>
+    Several companies offer <link
+      xlink:href="https://www.borgbackup.org/support/commercial.html">(paid)
+      hosting services</link> for Borg repositories.
+  </para>
+  <para>
+    To backup your home directory to borgbase you have to:
+  </para>
+  <itemizedlist>
+  <listitem>
+    <para>
+      Generate a SSH key without a password, to access the remote server. E.g.
+    </para>
+    <para>
+        <programlisting>sudo ssh-keygen -N '' -t ed25519 -f /run/keys/id_ed25519_borgbase</programlisting>
+    </para>
+  </listitem>
+  <listitem>
+    <para>
+      Create the repository on the server by following the instructions for your
+      hosting server.
+    </para>
+  </listitem>
+  <listitem>
+    <para>
+      Initialize the repository on the server. Eg.
+      <programlisting>
+sudo borg init --encryption=repokey-blake2  \
+    -rsh "ssh -i /run/keys/id_ed25519_borgbase" \
+    zzz2aaaaa@zzz2aaaaa.repo.borgbase.com:repo</programlisting>
+  </para>
+  </listitem>
+  <listitem>
+<para>Add it to your NixOS configuration, e.g.
+<programlisting>
+{
+    services.borgbackup.jobs = {
+    my_Remote_Backup = {
+        paths = [ "/" ];
+        exclude = [ "/nix" "'**/.cache'" ];
+        repo =  "zzz2aaaaa@zzz2aaaaa.repo.borgbase.com:repo";
+          encryption = {
+          mode = "repokey-blake2";
+          passCommand = "cat /run/keys/borgbackup_passphrase";
+        };
+        BORG_RSH = "ssh -i /run/keys/id_ed25519_borgbase";
+        compression = "auto,lzma";
+        startAt = "daily";
+    };
+  };
+}}</programlisting>
+  </para>
+  </listitem>
+</itemizedlist>
+ </section>
+  <section xml:id="opt-services-backup-borgbackup-vorta">
+  <title>Vorta backup client for the desktop</title>
+  <para>
+    Vorta is a backup client for macOS and Linux desktops. It integrates the
+    mighty BorgBackup with your desktop environment to protect your data from
+    disk failure, ransomware and theft.
+  </para>
+  <para>
+    It is available as a flatpak package. To enable it you must set the
+    following two configuration items.
+  </para>
+  <para>
+    <programlisting>
+services.flatpak.enable = true ;
+# next line is needed to avoid the Error
+# Error deploying: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown:
+services.accounts-daemon.enable = true;
+    </programlisting>
+  </para>
+  <para>As a normal user you must first install, then run vorta using the
+    following commands:
+    <programlisting>
+flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
+flatpak install flathub com.borgbase.Vorta
+flatpak run --branch=stable --arch=x86_64 --command=vorta com.borgbase.Vorta
+</programlisting>
+    After running <code>flatpak install</code> you can start Vorta also via
+        the KDE application menu.
+  </para>
+  <para>
+    Details about using Vorta can be found under <link
+      xlink:href="https://vorta.borgbase.com/usage">https://vorta.borgbase.com
+      </link>.
+  </para>
+ </section>
+</chapter>
diff --git a/nixos/modules/services/backup/syncoid.nix b/nixos/modules/services/backup/syncoid.nix
index 53787a0182a..fff119c2cf0 100644
--- a/nixos/modules/services/backup/syncoid.nix
+++ b/nixos/modules/services/backup/syncoid.nix
@@ -138,7 +138,11 @@ in {
           };
         }));
         default = {};
-        example."pool/test".target = "root@target:pool/test";
+        example = literalExample ''
+          {
+            "pool/test".target = "root@target:pool/test";
+          }
+        '';
         description = "Syncoid commands to run.";
       };
     };
diff --git a/nixos/modules/services/cluster/hadoop/default.nix b/nixos/modules/services/cluster/hadoop/default.nix
index f0f5a6ecbfc..bfb73f68371 100644
--- a/nixos/modules/services/cluster/hadoop/default.nix
+++ b/nixos/modules/services/cluster/hadoop/default.nix
@@ -7,33 +7,41 @@ with lib;
   options.services.hadoop = {
     coreSite = mkOption {
       default = {};
-      example = {
-        "fs.defaultFS" = "hdfs://localhost";
-      };
+      example = literalExample ''
+        {
+          "fs.defaultFS" = "hdfs://localhost";
+        }
+      '';
       description = "Hadoop core-site.xml definition";
     };
 
     hdfsSite = mkOption {
       default = {};
-      example = {
-        "dfs.nameservices" = "namenode1";
-      };
+      example = literalExample ''
+        {
+          "dfs.nameservices" = "namenode1";
+        }
+      '';
       description = "Hadoop hdfs-site.xml definition";
     };
 
     mapredSite = mkOption {
       default = {};
-      example = {
-        "mapreduce.map.cpu.vcores" = "1";
-      };
+      example = literalExample ''
+        {
+          "mapreduce.map.cpu.vcores" = "1";
+        }
+      '';
       description = "Hadoop mapred-site.xml definition";
     };
 
     yarnSite = mkOption {
       default = {};
-      example = {
-        "yarn.resourcemanager.ha.id" = "resourcemanager1";
-      };
+      example = literalExample ''
+        {
+          "yarn.resourcemanager.ha.id" = "resourcemanager1";
+        }
+      '';
       description = "Hadoop yarn-site.xml definition";
     };
 
diff --git a/nixos/modules/services/continuous-integration/buildkite-agents.nix b/nixos/modules/services/continuous-integration/buildkite-agents.nix
index c17d89c387a..b0045409ae6 100644
--- a/nixos/modules/services/continuous-integration/buildkite-agents.nix
+++ b/nixos/modules/services/continuous-integration/buildkite-agents.nix
@@ -208,8 +208,12 @@ in
       description = "Buildkite agent user";
       extraGroups = [ "keys" ];
       isSystemUser = true;
+      group = "buildkite-agent-${name}";
     };
   });
+  config.users.groups = mapAgents (name: cfg: {
+    "buildkite-agent-${name}" = {};
+  });
 
   config.systemd.services = mapAgents (name: cfg: {
     "buildkite-agent-${name}" =
diff --git a/nixos/modules/services/continuous-integration/gitlab-runner.nix b/nixos/modules/services/continuous-integration/gitlab-runner.nix
index 3d307b1abcf..bd4cf6a37ba 100644
--- a/nixos/modules/services/continuous-integration/gitlab-runner.nix
+++ b/nixos/modules/services/continuous-integration/gitlab-runner.nix
@@ -120,10 +120,16 @@ in
         ++ optional hasDocker "docker.service";
       requires = optional hasDocker "docker.service";
       wantedBy = [ "multi-user.target" ];
+      reloadIfChanged = true;
+      restartTriggers = [
+         config.environment.etc."gitlab-runner/config.toml".source
+      ];
       serviceConfig = {
+        StateDirectory = "gitlab-runner";
+        ExecReload= "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
         ExecStart = ''${cfg.package.bin}/bin/gitlab-runner run \
           --working-directory ${cfg.workDir} \
-          --config ${configFile} \
+          --config /etc/gitlab-runner/config.toml \
           --service gitlab-runner \
           --user gitlab-runner \
         '';
@@ -138,6 +144,9 @@ in
     # Make the gitlab-runner command availabe so users can query the runner
     environment.systemPackages = [ cfg.package ];
 
+    # Make sure the config can be reloaded on change
+    environment.etc."gitlab-runner/config.toml".source = configFile;
+
     users.users.gitlab-runner = {
       group = "gitlab-runner";
       extraGroups = optional hasDocker "docker";
diff --git a/nixos/modules/services/continuous-integration/hydra/default.nix b/nixos/modules/services/continuous-integration/hydra/default.nix
index 8b56207590a..52e4a3aed33 100644
--- a/nixos/modules/services/continuous-integration/hydra/default.nix
+++ b/nixos/modules/services/continuous-integration/hydra/default.nix
@@ -37,6 +37,8 @@ let
 
   haveLocalDB = cfg.dbi == localDB;
 
+  inherit (config.system) stateVersion;
+
 in
 
 {
@@ -63,8 +65,7 @@ in
       };
 
       package = mkOption {
-        type = types.path;
-        default = pkgs.hydra;
+        type = types.package;
         defaultText = "pkgs.hydra";
         description = "The Hydra package.";
       };
@@ -194,6 +195,34 @@ in
 
   config = mkIf cfg.enable {
 
+    warnings = optional (cfg.package.migration or false) ''
+      You're currently deploying an older version of Hydra which is needed to
+      make some required database changes[1]. As soon as this is done, it's recommended
+      to run `hydra-backfill-ids` and set `services.hydra.package` to `pkgs.hydra-unstable`
+      after that.
+
+      [1] https://github.com/NixOS/hydra/pull/711
+    '';
+
+    services.hydra.package = with pkgs;
+      mkDefault (
+        if pkgs ? hydra
+          then throw ''
+            The Hydra package doesn't exist anymore in `nixpkgs`! It probably exists
+            due to an overlay. To upgrade Hydra, you need to take two steps as some
+            bigger changes in the database schema were implemented recently[1]. You first
+            need to deploy `pkgs.hydra-migration`, run `hydra-backfill-ids` on the server
+            and then deploy `pkgs.hydra-unstable`.
+
+            If you want to use `pkgs.hydra` from your overlay, please set `services.hydra.package`
+            explicitly to `pkgs.hydra` and make sure you know what you're doing.
+
+            [1] https://github.com/NixOS/hydra/pull/711
+          ''
+        else if versionOlder stateVersion "20.03" then hydra-migration
+        else hydra-unstable
+      );
+
     users.groups.hydra = {
       gid = config.ids.gids.hydra;
     };
diff --git a/nixos/modules/services/databases/mysql.nix b/nixos/modules/services/databases/mysql.nix
index 248bf0ebc91..f9e657f5774 100644
--- a/nixos/modules/services/databases/mysql.nix
+++ b/nixos/modules/services/databases/mysql.nix
@@ -10,16 +10,8 @@ let
 
   isMariaDB = lib.getName mysql == lib.getName pkgs.mariadb;
 
-  isMysqlAtLeast57 =
-    (lib.getName mysql == lib.getName pkgs.mysql57)
-     && (builtins.compareVersions mysql.version "5.7" >= 0);
-
   mysqldOptions =
     "--user=${cfg.user} --datadir=${cfg.dataDir} --basedir=${mysql}";
-  # For MySQL 5.7+, --insecure creates the root user without password
-  # (earlier versions and MariaDB do this by default).
-  installOptions =
-    "${mysqldOptions} ${lib.optionalString isMysqlAtLeast57 "--insecure"}";
 
   settingsFile = pkgs.writeText "my.cnf" (
     generators.toINI { listsAsDuplicateKeys = true; } cfg.settings +
@@ -366,9 +358,14 @@ in
           pkgs.nettools
         ];
 
-        preStart = ''
+        preStart = if isMariaDB then ''
+          if ! test -e ${cfg.dataDir}/mysql; then
+            ${mysql}/bin/mysql_install_db --defaults-file=/etc/my.cnf ${mysqldOptions}
+            touch /tmp/mysql_init
+          fi
+        '' else ''
           if ! test -e ${cfg.dataDir}/mysql; then
-            ${mysql}/bin/mysql_install_db --defaults-file=/etc/my.cnf ${installOptions}
+            ${mysql}/bin/mysqld --defaults-file=/etc/my.cnf ${mysqldOptions} --initialize-insecure
             touch /tmp/mysql_init
           fi
         '';
diff --git a/nixos/modules/services/databases/postgresql.xml b/nixos/modules/services/databases/postgresql.xml
index 72d4a8249a3..07af4c937f0 100644
--- a/nixos/modules/services/databases/postgresql.xml
+++ b/nixos/modules/services/databases/postgresql.xml
@@ -7,12 +7,10 @@
 <!-- FIXME: render nicely -->
 <!-- FIXME: source can be added automatically -->
  <para>
-  <emphasis>Source:</emphasis>
-  <filename>modules/services/databases/postgresql.nix</filename>
+  <emphasis>Source:</emphasis> <filename>modules/services/databases/postgresql.nix</filename>
  </para>
  <para>
-  <emphasis>Upstream documentation:</emphasis>
-  <link xlink:href="http://www.postgresql.org/docs/"/>
+  <emphasis>Upstream documentation:</emphasis> <link xlink:href="http://www.postgresql.org/docs/"/>
  </para>
 <!-- FIXME: more stuff, like maintainer? -->
  <para>
@@ -23,18 +21,12 @@
   <title>Configuring</title>
 
   <para>
-   To enable PostgreSQL, add the following to your
-   <filename>configuration.nix</filename>:
+   To enable PostgreSQL, add the following to your <filename>configuration.nix</filename>:
 <programlisting>
 <xref linkend="opt-services.postgresql.enable"/> = true;
 <xref linkend="opt-services.postgresql.package"/> = pkgs.postgresql_11;
 </programlisting>
-   Note that you are required to specify the desired version of PostgreSQL
-   (e.g. <literal>pkgs.postgresql_11</literal>). Since upgrading your
-   PostgreSQL version requires a database dump and reload (see below), NixOS
-   cannot provide a default value for
-   <xref linkend="opt-services.postgresql.package"/> such as the most recent
-   release of PostgreSQL.
+   Note that you are required to specify the desired version of PostgreSQL (e.g. <literal>pkgs.postgresql_11</literal>). Since upgrading your PostgreSQL version requires a database dump and reload (see below), NixOS cannot provide a default value for <xref linkend="opt-services.postgresql.package"/> such as the most recent release of PostgreSQL.
   </para>
 
 <!--
@@ -51,9 +43,7 @@ Type "help" for help.
 -->
 
   <para>
-   By default, PostgreSQL stores its databases in
-   <filename>/var/lib/postgresql/$psqlSchema</filename>. You can override this using
-   <xref linkend="opt-services.postgresql.dataDir"/>, e.g.
+   By default, PostgreSQL stores its databases in <filename>/var/lib/postgresql/$psqlSchema</filename>. You can override this using <xref linkend="opt-services.postgresql.dataDir"/>, e.g.
 <programlisting>
 <xref linkend="opt-services.postgresql.dataDir"/> = "/data/postgresql";
 </programlisting>
@@ -63,25 +53,83 @@ Type "help" for help.
   <title>Upgrading</title>
 
   <para>
-   FIXME: document dump/upgrade/load cycle.
+   Major PostgreSQL upgrade requires PostgreSQL downtime and a few imperative steps to be called. To simplify this process, use the following NixOS module:
+<programlisting>
+  containers.temp-pg.config.services.postgresql = {
+    enable = true;
+    package = pkgs.postgresql_12;
+    ## set a custom new dataDir
+    # dataDir = "/some/data/dir";
+  };
+  environment.systemPackages =
+    let newpg = config.containers.temp-pg.config.services.postgresql;
+    in [
+      (pkgs.writeScriptBin "upgrade-pg-cluster" ''
+        set -x
+        export OLDDATA="${config.services.postgresql.dataDir}"
+        export NEWDATA="${newpg.dataDir}"
+        export OLDBIN="${config.services.postgresql.package}/bin"
+        export NEWBIN="${newpg.package}/bin"
+
+        install -d -m 0700 -o postgres -g postgres "$NEWDATA"
+        cd "$NEWDATA"
+        sudo -u postgres $NEWBIN/initdb -D "$NEWDATA"
+
+        systemctl stop postgresql    # old one
+
+        sudo -u postgres $NEWBIN/pg_upgrade \
+          --old-datadir "$OLDDATA" --new-datadir "$NEWDATA" \
+          --old-bindir $OLDBIN --new-bindir $NEWBIN \
+          "$@"
+      '')
+    ];
+</programlisting>
   </para>
+
+  <para>
+   The upgrade process is:
+  </para>
+
+  <orderedlist>
+   <listitem>
+    <para>
+     Rebuild nixos configuration with the configuration above added to your <filename>configuration.nix</filename>. Alternatively, add that into separate file and reference it in <literal>imports</literal> list.
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+     Login as root (<literal>sudo su -</literal>)
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+     Run <literal>upgrade-pg-cluster</literal>. It will stop old postgresql, initialize new one and migrate old one to new one. You may supply arguments like <literal>--jobs 4</literal> and <literal>--link</literal> to speedup migration process. See <link xlink:href="https://www.postgresql.org/docs/current/pgupgrade.html" /> for details.
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+     Change postgresql package in NixOS configuration to the one you were upgrading to, and change <literal>dataDir</literal> to the one you have migrated to. Rebuild NixOS. This should start new postgres using upgraded data directory.
+    </para>
+   </listitem>
+   <listitem>
+    <para>
+     After upgrade you may want to <literal>ANALYZE</literal> new db.
+    </para>
+   </listitem>
+  </orderedlist>
  </section>
  <section xml:id="module-services-postgres-options">
   <title>Options</title>
 
   <para>
-   A complete list of options for the PostgreSQL module may be found
-   <link linkend="opt-services.postgresql.enable">here</link>.
+   A complete list of options for the PostgreSQL module may be found <link linkend="opt-services.postgresql.enable">here</link>.
   </para>
  </section>
  <section xml:id="module-services-postgres-plugins">
   <title>Plugins</title>
 
   <para>
-   Plugins collection for each PostgreSQL version can be accessed with
-   <literal>.pkgs</literal>. For example, for
-   <literal>pkgs.postgresql_11</literal> package, its plugin collection is
-   accessed by <literal>pkgs.postgresql_11.pkgs</literal>:
+   Plugins collection for each PostgreSQL version can be accessed with <literal>.pkgs</literal>. For example, for <literal>pkgs.postgresql_11</literal> package, its plugin collection is accessed by <literal>pkgs.postgresql_11.pkgs</literal>:
 <screen>
 <prompt>$ </prompt>nix repl '&lt;nixpkgs&gt;'
 
@@ -98,8 +146,9 @@ postgresql_11.pkgs.pg_partman        postgresql_11.pkgs.pgroonga
 ...
 </screen>
   </para>
+
   <para>
-    To add plugins via NixOS configuration, set <literal>services.postgresql.extraPlugins</literal>:
+   To add plugins via NixOS configuration, set <literal>services.postgresql.extraPlugins</literal>:
 <programlisting>
 <xref linkend="opt-services.postgresql.package"/> = pkgs.postgresql_11;
 <xref linkend="opt-services.postgresql.extraPlugins"/> = with pkgs.postgresql_11.pkgs; [
@@ -108,10 +157,9 @@ postgresql_11.pkgs.pg_partman        postgresql_11.pkgs.pgroonga
 ];
 </programlisting>
   </para>
+
   <para>
-   You can build custom PostgreSQL-with-plugins (to be used outside of NixOS) using
-   function <literal>.withPackages</literal>. For example, creating a custom
-   PostgreSQL package in an overlay can look like:
+   You can build custom PostgreSQL-with-plugins (to be used outside of NixOS) using function <literal>.withPackages</literal>. For example, creating a custom PostgreSQL package in an overlay can look like:
 <programlisting>
 self: super: {
   postgresql_custom = self.postgresql_11.withPackages (ps: [
@@ -121,8 +169,9 @@ self: super: {
 }
 </programlisting>
   </para>
+
   <para>
-    Here's a recipe on how to override a particular plugin through an overlay:
+   Here's a recipe on how to override a particular plugin through an overlay:
 <programlisting>
 self: super: {
   postgresql_11 = super.postgresql_11.override { this = self.postgresql_11; } // {
diff --git a/nixos/modules/services/desktops/accountsservice.nix b/nixos/modules/services/desktops/accountsservice.nix
index c48036a99e8..ae2ecb5ffeb 100644
--- a/nixos/modules/services/desktops/accountsservice.nix
+++ b/nixos/modules/services/desktops/accountsservice.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.freedesktop.members;
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/desktops/bamf.nix b/nixos/modules/services/desktops/bamf.nix
index 0928ee81a64..4b35146d084 100644
--- a/nixos/modules/services/desktops/bamf.nix
+++ b/nixos/modules/services/desktops/bamf.nix
@@ -5,6 +5,10 @@
 with lib;
 
 {
+  meta = {
+    maintainers = with maintainers; [ worldofpeace ];
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/desktops/gnome3/at-spi2-core.nix b/nixos/modules/services/desktops/gnome3/at-spi2-core.nix
index 8fa108c4f9d..492242e3296 100644
--- a/nixos/modules/services/desktops/gnome3/at-spi2-core.nix
+++ b/nixos/modules/services/desktops/gnome3/at-spi2-core.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/desktops/gnome3/chrome-gnome-shell.nix b/nixos/modules/services/desktops/gnome3/chrome-gnome-shell.nix
index 3d2b3ed85e3..3c7f217b18d 100644
--- a/nixos/modules/services/desktops/gnome3/chrome-gnome-shell.nix
+++ b/nixos/modules/services/desktops/gnome3/chrome-gnome-shell.nix
@@ -4,6 +4,10 @@
 with lib;
 
 {
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
   options = {
     services.gnome3.chrome-gnome-shell.enable = mkEnableOption ''
diff --git a/nixos/modules/services/desktops/gnome3/evolution-data-server.nix b/nixos/modules/services/desktops/gnome3/evolution-data-server.nix
index 7e312a1b81e..bd62d16f61c 100644
--- a/nixos/modules/services/desktops/gnome3/evolution-data-server.nix
+++ b/nixos/modules/services/desktops/gnome3/evolution-data-server.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
@@ -16,7 +20,7 @@ with lib;
         type = types.bool;
         default = false;
         description = ''
-          Whether to enable Evolution Data Server, a collection of services for 
+          Whether to enable Evolution Data Server, a collection of services for
           storing addressbooks and calendars.
         '';
       };
diff --git a/nixos/modules/services/desktops/gnome3/glib-networking.nix b/nixos/modules/services/desktops/gnome3/glib-networking.nix
index fcd58509d6f..7e667b6b1f0 100644
--- a/nixos/modules/services/desktops/gnome3/glib-networking.nix
+++ b/nixos/modules/services/desktops/gnome3/glib-networking.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/desktops/gnome3/gnome-initial-setup.nix b/nixos/modules/services/desktops/gnome3/gnome-initial-setup.nix
index d715d52c2d0..c391ad9694c 100644
--- a/nixos/modules/services/desktops/gnome3/gnome-initial-setup.nix
+++ b/nixos/modules/services/desktops/gnome3/gnome-initial-setup.nix
@@ -44,6 +44,10 @@ in
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/desktops/gnome3/gnome-keyring.nix b/nixos/modules/services/desktops/gnome3/gnome-keyring.nix
index db60445ef77..2916a3c82b3 100644
--- a/nixos/modules/services/desktops/gnome3/gnome-keyring.nix
+++ b/nixos/modules/services/desktops/gnome3/gnome-keyring.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
@@ -35,6 +39,8 @@ with lib;
 
     services.dbus.packages = [ pkgs.gnome3.gnome-keyring pkgs.gcr ];
 
+    xdg.portal.extraPortals = [ pkgs.gnome3.gnome-keyring ];
+
     security.pam.services.login.enableGnomeKeyring = true;
 
     security.wrappers.gnome-keyring-daemon = {
diff --git a/nixos/modules/services/desktops/gnome3/gnome-online-accounts.nix b/nixos/modules/services/desktops/gnome3/gnome-online-accounts.nix
index 748a025414a..3f9ced5e86b 100644
--- a/nixos/modules/services/desktops/gnome3/gnome-online-accounts.nix
+++ b/nixos/modules/services/desktops/gnome3/gnome-online-accounts.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/desktops/gnome3/gnome-online-miners.nix b/nixos/modules/services/desktops/gnome3/gnome-online-miners.nix
index d406bf6f5e3..39d669e8b30 100644
--- a/nixos/modules/services/desktops/gnome3/gnome-online-miners.nix
+++ b/nixos/modules/services/desktops/gnome3/gnome-online-miners.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/desktops/gnome3/gnome-remote-desktop.nix b/nixos/modules/services/desktops/gnome3/gnome-remote-desktop.nix
index 021f4f9534b..164a0a44f8c 100644
--- a/nixos/modules/services/desktops/gnome3/gnome-remote-desktop.nix
+++ b/nixos/modules/services/desktops/gnome3/gnome-remote-desktop.nix
@@ -4,6 +4,10 @@
 with lib;
 
 {
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
   options = {
     services.gnome3.gnome-remote-desktop = {
@@ -13,6 +17,8 @@ with lib;
 
   ###### implementation
   config = mkIf config.services.gnome3.gnome-remote-desktop.enable {
+    services.pipewire.enable = true;
+
     systemd.packages = [ pkgs.gnome3.gnome-remote-desktop ];
   };
 }
diff --git a/nixos/modules/services/desktops/gnome3/gnome-settings-daemon.nix b/nixos/modules/services/desktops/gnome3/gnome-settings-daemon.nix
index 2f83fd653bd..1c33ed064a1 100644
--- a/nixos/modules/services/desktops/gnome3/gnome-settings-daemon.nix
+++ b/nixos/modules/services/desktops/gnome3/gnome-settings-daemon.nix
@@ -12,6 +12,10 @@ in
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   imports = [
     (mkRemovedOptionModule
       ["services" "gnome3" "gnome-settings-daemon" "package"]
diff --git a/nixos/modules/services/desktops/gnome3/gnome-user-share.nix b/nixos/modules/services/desktops/gnome3/gnome-user-share.nix
index f8396287770..f2fe8b41a9e 100644
--- a/nixos/modules/services/desktops/gnome3/gnome-user-share.nix
+++ b/nixos/modules/services/desktops/gnome3/gnome-user-share.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/desktops/gnome3/rygel.nix b/nixos/modules/services/desktops/gnome3/rygel.nix
index 55d5e703aa1..917a1d6541e 100644
--- a/nixos/modules/services/desktops/gnome3/rygel.nix
+++ b/nixos/modules/services/desktops/gnome3/rygel.nix
@@ -4,6 +4,10 @@
 with lib;
 
 {
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
   options = {
     services.gnome3.rygel = {
@@ -26,5 +30,7 @@ with lib;
     services.dbus.packages = [ pkgs.gnome3.rygel ];
 
     systemd.packages = [ pkgs.gnome3.rygel ];
+
+    environment.etc."rygel.conf".source = "${pkgs.gnome3.rygel}/etc/rygel.conf";
   };
 }
diff --git a/nixos/modules/services/desktops/gnome3/sushi.nix b/nixos/modules/services/desktops/gnome3/sushi.nix
index 7a4389038b2..83b17365d5d 100644
--- a/nixos/modules/services/desktops/gnome3/sushi.nix
+++ b/nixos/modules/services/desktops/gnome3/sushi.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/desktops/gnome3/tracker-miners.nix b/nixos/modules/services/desktops/gnome3/tracker-miners.nix
index b390d8368c6..f2af4024927 100644
--- a/nixos/modules/services/desktops/gnome3/tracker-miners.nix
+++ b/nixos/modules/services/desktops/gnome3/tracker-miners.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
@@ -25,7 +29,6 @@ with lib;
 
   };
 
-
   ###### implementation
 
   config = mkIf config.services.gnome3.tracker-miners.enable {
diff --git a/nixos/modules/services/desktops/gnome3/tracker.nix b/nixos/modules/services/desktops/gnome3/tracker.nix
index 2e829274226..cd196e38553 100644
--- a/nixos/modules/services/desktops/gnome3/tracker.nix
+++ b/nixos/modules/services/desktops/gnome3/tracker.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/desktops/gvfs.nix b/nixos/modules/services/desktops/gvfs.nix
index 1d002eac41d..250ea6d4575 100644
--- a/nixos/modules/services/desktops/gvfs.nix
+++ b/nixos/modules/services/desktops/gvfs.nix
@@ -12,6 +12,10 @@ in
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   # Added 2019-08-19
   imports = [
     (mkRenamedOptionModule
diff --git a/nixos/modules/services/desktops/malcontent.nix b/nixos/modules/services/desktops/malcontent.nix
index 416464cbe08..5d6912595b5 100644
--- a/nixos/modules/services/desktops/malcontent.nix
+++ b/nixos/modules/services/desktops/malcontent.nix
@@ -12,7 +12,7 @@ with lib;
 
     services.malcontent = {
 
-      enable = mkEnableOption "Malcontent";
+      enable = mkEnableOption "Malcontent, parental control support for applications";
 
     };
 
@@ -23,10 +23,15 @@ with lib;
 
   config = mkIf config.services.malcontent.enable {
 
-    environment.systemPackages = [ pkgs.malcontent ];
+    environment.systemPackages = with pkgs; [
+      malcontent
+      malcontent-ui
+    ];
 
     services.dbus.packages = [ pkgs.malcontent ];
 
+    services.accounts-daemon.enable = true;
+
   };
 
 }
diff --git a/nixos/modules/services/desktops/pantheon/contractor.nix b/nixos/modules/services/desktops/pantheon/contractor.nix
deleted file mode 100644
index c76145191a7..00000000000
--- a/nixos/modules/services/desktops/pantheon/contractor.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-# Contractor
-
-{ config, pkgs, lib, ... }:
-
-with lib;
-
-{
-
-
-  ###### implementation
-
-  config = mkIf config.services.pantheon.contractor.enable {
-
-    
-
-  };
-
-}
diff --git a/nixos/modules/services/desktops/pipewire.nix b/nixos/modules/services/desktops/pipewire.nix
index 13f3d61e84c..5aee59cfdcc 100644
--- a/nixos/modules/services/desktops/pipewire.nix
+++ b/nixos/modules/services/desktops/pipewire.nix
@@ -8,6 +8,11 @@ let
   packages = with pkgs; [ pipewire ];
 
 in {
+
+  meta = {
+    maintainers = teams.freedesktop.members;
+  };
+
   ###### interface
   options = {
     services.pipewire = {
@@ -33,5 +38,4 @@ in {
     systemd.user.sockets.pipewire.wantedBy = lib.mkIf cfg.socketActivation [ "sockets.target" ];
   };
 
-  meta.maintainers = with lib.maintainers; [ jtojnar ];
 }
diff --git a/nixos/modules/services/desktops/telepathy.nix b/nixos/modules/services/desktops/telepathy.nix
index f5401c18098..34596bf7818 100644
--- a/nixos/modules/services/desktops/telepathy.nix
+++ b/nixos/modules/services/desktops/telepathy.nix
@@ -6,6 +6,10 @@ with lib;
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/desktops/tumbler.nix b/nixos/modules/services/desktops/tumbler.nix
index a833e99ff8c..a09079517f0 100644
--- a/nixos/modules/services/desktops/tumbler.nix
+++ b/nixos/modules/services/desktops/tumbler.nix
@@ -18,6 +18,10 @@ in
       "")
   ];
 
+  meta = {
+    maintainers = with maintainers; [ worldofpeace ];
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/desktops/zeitgeist.nix b/nixos/modules/services/desktops/zeitgeist.nix
index 20c82ccdd56..cf7dd5fe3a1 100644
--- a/nixos/modules/services/desktops/zeitgeist.nix
+++ b/nixos/modules/services/desktops/zeitgeist.nix
@@ -5,6 +5,11 @@
 with lib;
 
 {
+
+  meta = {
+    maintainers = with maintainers; [ worldofpeace ];
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/games/factorio.nix b/nixos/modules/services/games/factorio.nix
index f3831156f45..4b2e1a3c07f 100644
--- a/nixos/modules/services/games/factorio.nix
+++ b/nixos/modules/services/games/factorio.nix
@@ -4,14 +4,13 @@ with lib;
 
 let
   cfg = config.services.factorio;
-  factorio = pkgs.factorio-headless;
   name = "Factorio";
   stateDir = "/var/lib/${cfg.stateDirName}";
   mkSavePath = name: "${stateDir}/saves/${name}.zip";
   configFile = pkgs.writeText "factorio.conf" ''
     use-system-read-write-data-directories=true
     [path]
-    read-data=${factorio}/share/factorio/data
+    read-data=${cfg.package}/share/factorio/data
     write-data=${stateDir}
   '';
   serverSettings = {
@@ -37,7 +36,7 @@ let
     only_admins_can_pause_the_game = true;
     autosave_only_on_server = true;
     admins = [];
-  };
+  } // cfg.extraSettings;
   serverSettingsFile = pkgs.writeText "server-settings.json" (builtins.toJSON (filterAttrsRecursive (n: v: v != null) serverSettings));
   modDir = pkgs.factorio-utils.mkModDirDrv cfg.mods;
 in
@@ -115,6 +114,14 @@ in
           Description of the game that will appear in the listing.
         '';
       };
+      extraSettings = mkOption {
+        type = types.attrs;
+        default = {};
+        example = { admins = [ "username" ];};
+        description = ''
+          Extra game configuration that will go into server-settings.json
+        '';
+      };
       public = mkOption {
         type = types.bool;
         default = false;
@@ -136,6 +143,15 @@ in
           Your factorio.com login credentials. Required for games with visibility public.
         '';
       };
+      package = mkOption {
+        type = types.package;
+        default = pkgs.factorio-headless;
+        defaultText = "pkgs.factorio-headless";
+        example = "pkgs.factorio-headless-experimental";
+        description = ''
+          Factorio version to use. This defaults to the stable channel.
+        '';
+      };
       password = mkOption {
         type = types.nullOr types.str;
         default = null;
@@ -184,7 +200,7 @@ in
       preStart = toString [
         "test -e ${stateDir}/saves/${cfg.saveName}.zip"
         "||"
-        "${factorio}/bin/factorio"
+        "${cfg.package}/bin/factorio"
           "--config=${cfg.configFile}"
           "--create=${mkSavePath cfg.saveName}"
           (optionalString (cfg.mods != []) "--mod-directory=${modDir}")
@@ -197,7 +213,7 @@ in
         StateDirectory = cfg.stateDirName;
         UMask = "0007";
         ExecStart = toString [
-          "${factorio}/bin/factorio"
+          "${cfg.package}/bin/factorio"
           "--config=${cfg.configFile}"
           "--port=${toString cfg.port}"
           "--start-server=${mkSavePath cfg.saveName}"
diff --git a/nixos/modules/services/hardware/xow.nix b/nixos/modules/services/hardware/xow.nix
new file mode 100644
index 00000000000..a18d60ad83b
--- /dev/null
+++ b/nixos/modules/services/hardware/xow.nix
@@ -0,0 +1,17 @@
+{ config, pkgs, lib, ... }:
+
+let
+  cfg = config.services.hardware.xow;
+in {
+  options.services.hardware.xow = {
+    enable = lib.mkEnableOption "xow as a systemd service";
+  };
+
+  config = lib.mkIf cfg.enable {
+    hardware.uinput.enable = true;
+
+    systemd.packages = [ pkgs.xow ];
+
+    services.udev.packages = [ pkgs.xow ];
+  };
+}
diff --git a/nixos/modules/services/mail/sympa.nix b/nixos/modules/services/mail/sympa.nix
index c3ae9d4255b..0cad09927b2 100644
--- a/nixos/modules/services/mail/sympa.nix
+++ b/nixos/modules/services/mail/sympa.nix
@@ -25,8 +25,6 @@ let
     StateDirectory = "sympa";
     ProtectHome = true;
     ProtectSystem = "full";
-    ProtectKernelTunables = true;
-    ProtectKernelModules = true;
     ProtectControlGroups = true;
   };
 
@@ -415,7 +413,7 @@ in
       # force-copy static_content so it's up to date with package
       # set permissions for wwsympa which needs write access (...)
       "R  ${dataDir}/static_content    -    -       -        - -"
-      "C  ${dataDir}/static_content    0711 ${user} ${group} - ${pkg}/static_content"
+      "C  ${dataDir}/static_content    0711 ${user} ${group} - ${pkg}/var/lib/sympa/static_content"
       "e  ${dataDir}/static_content/*  0711 ${user} ${group} - -"
 
       "d  /run/sympa                   0755 ${user} ${group} - -"
@@ -497,7 +495,7 @@ in
           -F ${toString cfg.web.fcgiProcs} \
           -P /run/sympa/wwsympa.pid \
           -s /run/sympa/wwsympa.socket \
-          -- ${pkg}/bin/wwsympa.fcgi
+          -- ${pkg}/lib/sympa/cgi/wwsympa.fcgi
         '';
 
       } // commonServiceConfig;
@@ -518,7 +516,7 @@ in
           fastcgi_split_path_info ^(${loc})(.*)$;
 
           fastcgi_param PATH_INFO       $fastcgi_path_info;
-          fastcgi_param SCRIPT_FILENAME ${pkg}/bin/wwsympa.fcgi;
+          fastcgi_param SCRIPT_FILENAME ${pkg}/lib/sympa/cgi/wwsympa.fcgi;
         '';
       }) // {
         "/static-sympa/".alias = "${dataDir}/static_content/";
@@ -550,7 +548,7 @@ in
           args = [
             "flags=hqRu"
             "user=${user}"
-            "argv=${pkg}/bin/queue"
+            "argv=${pkg}/libexec/queue"
             "\${nexthop}"
           ];
         };
@@ -562,7 +560,7 @@ in
           args = [
             "flags=hqRu"
             "user=${user}"
-            "argv=${pkg}/bin/bouncequeue"
+            "argv=${pkg}/libexec/bouncequeue"
             "\${nexthop}"
           ];
         };
diff --git a/nixos/modules/services/misc/matrix-synapse.nix b/nixos/modules/services/misc/matrix-synapse.nix
index d02fa13bb99..703bc9416f8 100644
--- a/nixos/modules/services/misc/matrix-synapse.nix
+++ b/nixos/modules/services/misc/matrix-synapse.nix
@@ -31,7 +31,6 @@ bind_host: "${cfg.bind_host}"
 ''}
 server_name: "${cfg.server_name}"
 pid_file: "/run/matrix-synapse.pid"
-web_client: ${boolToString cfg.web_client}
 ${optionalString (cfg.public_baseurl != null) ''
 public_baseurl: "${cfg.public_baseurl}"
 ''}
@@ -202,13 +201,6 @@ in {
           This is also the last part of your UserID.
         '';
       };
-      web_client = mkOption {
-        type = types.bool;
-        default = false;
-        description = ''
-          Whether to serve a web client from the HTTP/HTTPS root resource.
-        '';
-      };
       public_baseurl = mkOption {
         type = types.nullOr types.str;
         default = null;
@@ -719,6 +711,7 @@ in {
       Database configuration must be done manually. An exemplary setup is demonstrated in
       <nixpkgs/nixos/tests/matrix-synapse.nix>
     '')
+    (mkRemovedOptionModule [ "services" "matrix-synapse" "web_client" ] "")
   ];
 
   meta.doc = ./matrix-synapse.xml;
diff --git a/nixos/modules/services/misc/nix-daemon.nix b/nixos/modules/services/misc/nix-daemon.nix
index 17c3582db0f..e14df310ae8 100644
--- a/nixos/modules/services/misc/nix-daemon.nix
+++ b/nixos/modules/services/misc/nix-daemon.nix
@@ -92,13 +92,14 @@ in
 
       maxJobs = mkOption {
         type = types.either types.int (types.enum ["auto"]);
-        default = 1;
+        default = "auto";
         example = 64;
         description = ''
-          This option defines the maximum number of jobs that Nix will try
-          to build in parallel.  The default is 1.  You should generally
-          set it to the total number of logical cores in your system (e.g., 16
-          for two CPUs with 4 cores each and hyper-threading).
+          This option defines the maximum number of jobs that Nix will try to
+          build in parallel. The default is auto, which means it will use all
+          available logical cores. It is recommend to set it to the total
+          number of logical cores in your system (e.g., 16 for two CPUs with 4
+          cores each and hyper-threading).
         '';
       };
 
@@ -376,6 +377,59 @@ in
           If enabled (the default), checks that Nix can parse the generated nix.conf.
         '';
       };
+
+      registry = mkOption {
+        type = types.attrsOf (types.submodule (
+          let
+            inputAttrs = types.attrsOf (types.oneOf [types.str types.int types.bool types.package]);
+          in
+          { config, name, ... }:
+          { options = {
+              from = mkOption {
+                type = inputAttrs;
+                example = { type = "indirect"; id = "nixpkgs"; };
+                description = "The flake reference to be rewritten.";
+              };
+              to = mkOption {
+                type = inputAttrs;
+                example = { type = "github"; owner = "my-org"; repo = "my-nixpkgs"; };
+                description = "The flake reference to which <option>from></option> is to be rewritten.";
+              };
+              flake = mkOption {
+                type = types.unspecified;
+                default = null;
+                example = literalExample "nixpkgs";
+                description = ''
+                  The flake input to which <option>from></option> is to be rewritten.
+                '';
+              };
+              exact = mkOption {
+                type = types.bool;
+                default = true;
+                description = ''
+                  Whether the <option>from</option> reference needs to match exactly. If set,
+                  a <option>from</option> reference like <literal>nixpkgs</literal> does not
+                  match with a reference like <literal>nixpkgs/nixos-20.03</literal>.
+                '';
+              };
+            };
+            config = {
+              from = mkDefault { type = "indirect"; id = name; };
+              to = mkIf (config.flake != null)
+                ({ type = "path";
+                   path = config.flake.outPath;
+                 } // lib.filterAttrs
+                   (n: v: n == "lastModified" || n == "rev" || n == "revCount" || n == "narHash")
+                   config.flake);
+            };
+          }
+        ));
+        default = {};
+        description = ''
+          A system-wide flake registry.
+        '';
+      };
+
     };
 
   };
@@ -390,6 +444,11 @@ in
 
     environment.etc."nix/nix.conf".source = nixConf;
 
+    environment.etc."nix/registry.json".text = builtins.toJSON {
+      version = 2;
+      flakes = mapAttrsToList (n: v: { inherit (v) from to exact; }) cfg.registry;
+    };
+
     # List of machines for distributed Nix builds in the format
     # expected by build-remote.pl.
     environment.etc."nix/machines" =
diff --git a/nixos/modules/services/misc/nixos-manual.nix b/nixos/modules/services/misc/nixos-manual.nix
deleted file mode 100644
index ab73f49d4be..00000000000
--- a/nixos/modules/services/misc/nixos-manual.nix
+++ /dev/null
@@ -1,73 +0,0 @@
-# This module optionally starts a browser that shows the NixOS manual
-# on one of the virtual consoles which is useful for the installation
-# CD.
-
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-let
-  cfg = config.services.nixosManual;
-  cfgd = config.documentation;
-in
-
-{
-
-  options = {
-
-    # TODO(@oxij): rename this to `.enable` eventually.
-    services.nixosManual.showManual = mkOption {
-      type = types.bool;
-      default = false;
-      description = ''
-        Whether to show the NixOS manual on one of the virtual
-        consoles.
-      '';
-    };
-
-    services.nixosManual.ttyNumber = mkOption {
-      type = types.int;
-      default = 8;
-      description = ''
-        Virtual console on which to show the manual.
-      '';
-    };
-
-    services.nixosManual.browser = mkOption {
-      type = types.path;
-      default = "${pkgs.w3m-nographics}/bin/w3m";
-      description = ''
-        Browser used to show the manual.
-      '';
-    };
-
-  };
-
-
-  config = mkMerge [
-    (mkIf cfg.showManual {
-      assertions = singleton {
-        assertion = cfgd.enable && cfgd.nixos.enable;
-        message   = "Can't enable `services.nixosManual.showManual` without `documentation.nixos.enable`";
-      };
-    })
-    (mkIf (cfg.showManual && cfgd.enable && cfgd.nixos.enable) {
-      console.extraTTYs = [ "tty${toString cfg.ttyNumber}" ];
-
-      systemd.services.nixos-manual = {
-        description = "NixOS Manual";
-        wantedBy = [ "multi-user.target" ];
-        serviceConfig = {
-          ExecStart = "${cfg.browser} ${config.system.build.manual.manualHTMLIndex}";
-          StandardInput = "tty";
-          StandardOutput = "tty";
-          TTYPath = "/dev/tty${toString cfg.ttyNumber}";
-          TTYReset = true;
-          TTYVTDisallocate = true;
-          Restart = "always";
-        };
-      };
-    })
-  ];
-
-}
diff --git a/nixos/modules/services/misc/rogue.nix b/nixos/modules/services/misc/rogue.nix
deleted file mode 100644
index d56d103b5f3..00000000000
--- a/nixos/modules/services/misc/rogue.nix
+++ /dev/null
@@ -1,62 +0,0 @@
-# Execute the game `rogue' on tty 9.  Mostly used by the NixOS
-# installation CD.
-
-{ config, lib, pkgs, ... }:
-
-with lib;
-
-let
-
-  cfg = config.services.rogue;
-
-in
-
-{
-  ###### interface
-
-  options = {
-
-    services.rogue.enable = mkOption {
-      type = types.bool;
-      default = false;
-      description = ''
-        Whether to enable the Rogue game on one of the virtual
-        consoles.
-      '';
-    };
-
-    services.rogue.tty = mkOption {
-      type = types.str;
-      default = "tty9";
-      description = ''
-        Virtual console on which to run Rogue.
-      '';
-    };
-
-  };
-
-
-  ###### implementation
-
-  config = mkIf cfg.enable {
-
-    console.extraTTYs = [ cfg.tty ];
-
-    systemd.services.rogue =
-      { description = "Rogue dungeon crawling game";
-        wantedBy = [ "multi-user.target" ];
-        serviceConfig =
-          { ExecStart = "${pkgs.rogue}/bin/rogue";
-            StandardInput = "tty";
-            StandardOutput = "tty";
-            TTYPath = "/dev/${cfg.tty}";
-            TTYReset = true;
-            TTYVTDisallocate = true;
-            WorkingDirectory = "/tmp";
-            Restart = "always";
-          };
-      };
-
-  };
-
-}
diff --git a/nixos/modules/services/monitoring/netdata.nix b/nixos/modules/services/monitoring/netdata.nix
index 7589fd0e67b..a5233a46e34 100644
--- a/nixos/modules/services/monitoring/netdata.nix
+++ b/nixos/modules/services/monitoring/netdata.nix
@@ -9,6 +9,8 @@ let
     mkdir -p $out/libexec/netdata/plugins.d
     ln -s /run/wrappers/bin/apps.plugin $out/libexec/netdata/plugins.d/apps.plugin
     ln -s /run/wrappers/bin/freeipmi.plugin $out/libexec/netdata/plugins.d/freeipmi.plugin
+    ln -s /run/wrappers/bin/perf.plugin $out/libexec/netdata/plugins.d/perf.plugin
+    ln -s /run/wrappers/bin/slabinfo.plugin $out/libexec/netdata/plugins.d/slabinfo.plugin
   '';
 
   plugins = [
@@ -152,6 +154,7 @@ in {
         ExecStart = "${cfg.package}/bin/netdata -P /run/netdata/netdata.pid -D -c ${configFile}";
         ExecReload = "${pkgs.utillinux}/bin/kill -s HUP -s USR1 -s USR2 $MAINPID";
         TimeoutStopSec = 60;
+        Restart = "on-failure";
         # User and group
         User = cfg.user;
         Group = cfg.group;
@@ -181,6 +184,22 @@ in {
       permissions = "u+rx,g+rx,o-rwx";
     };
 
+    security.wrappers."perf.plugin" = {
+      source = "${cfg.package}/libexec/netdata/plugins.d/perf.plugin.org";
+      capabilities = "cap_sys_admin+ep";
+      owner = cfg.user;
+      group = cfg.group;
+      permissions = "u+rx,g+rx,o-rx";
+    };
+
+    security.wrappers."slabinfo.plugin" = {
+      source = "${cfg.package}/libexec/netdata/plugins.d/slabinfo.plugin.org";
+      capabilities = "cap_dac_override+ep";
+      owner = cfg.user;
+      group = cfg.group;
+      permissions = "u+rx,g+rx,o-rx";
+    };
+
     security.pam.loginLimits = [
       { domain = "netdata"; type = "soft"; item = "nofile"; value = "10000"; }
       { domain = "netdata"; type = "hard"; item = "nofile"; value = "30000"; }
diff --git a/nixos/modules/services/monitoring/prometheus/alertmanager.nix b/nixos/modules/services/monitoring/prometheus/alertmanager.nix
index 4534d150885..69e3dcf1408 100644
--- a/nixos/modules/services/monitoring/prometheus/alertmanager.nix
+++ b/nixos/modules/services/monitoring/prometheus/alertmanager.nix
@@ -155,7 +155,7 @@ in {
 
       systemd.services.alertmanager = {
         wantedBy = [ "multi-user.target" ];
-        after    = [ "network.target" ];
+        after    = [ "network-online.target" ];
         preStart = ''
            ${lib.getBin pkgs.envsubst}/bin/envsubst -o "/tmp/alert-manager-substituted.yaml" \
                                                     -i "${alertmanagerYml}"
diff --git a/nixos/modules/services/network-filesystems/netatalk.nix b/nixos/modules/services/network-filesystems/netatalk.nix
index 1dd869043f0..5422d4dd4e2 100644
--- a/nixos/modules/services/network-filesystems/netatalk.nix
+++ b/nixos/modules/services/network-filesystems/netatalk.nix
@@ -98,13 +98,14 @@ in
             Set of AFP volumes to export.
             See <literal>man apf.conf</literal> for more information.
           '';
-        example =
+        example = literalExample ''
           { srv =
              { path = "/srv";
                "read only" = true;
                "hosts allow" = "10.1.0.0/16 10.2.1.100 2001:0db8:1234::/48";
              };
-          };
+          }
+        '';
       };
 
       extmap = mkOption {
diff --git a/nixos/modules/services/network-filesystems/rsyncd.nix b/nixos/modules/services/network-filesystems/rsyncd.nix
index b17ec3aa930..ccad64cfdb2 100644
--- a/nixos/modules/services/network-filesystems/rsyncd.nix
+++ b/nixos/modules/services/network-filesystems/rsyncd.nix
@@ -74,13 +74,14 @@ in
             See <command>man rsyncd.conf</command> for options.
           '';
         type = types.attrsOf (types.attrsOf types.str);
-        example =
+        example = literalExample ''
           { srv =
              { path = "/srv";
                "read only" = "yes";
                comment = "Public rsync share.";
              };
-          };
+          }
+        '';
       };
 
       user = mkOption {
diff --git a/nixos/modules/services/network-filesystems/samba.nix b/nixos/modules/services/network-filesystems/samba.nix
index a3c22ce6948..a115590ccaa 100644
--- a/nixos/modules/services/network-filesystems/samba.nix
+++ b/nixos/modules/services/network-filesystems/samba.nix
@@ -189,7 +189,7 @@ in
           See <command>man smb.conf</command> for options.
         '';
         type = types.attrsOf (types.attrsOf types.unspecified);
-        example =
+        example = literalExample ''
           { public =
             { path = "/srv/public";
               "read only" = true;
@@ -197,7 +197,8 @@ in
               "guest ok" = "yes";
               comment = "Public samba share.";
             };
-          };
+          }
+        '';
       };
 
     };
diff --git a/nixos/modules/services/networking/3proxy.nix b/nixos/modules/services/networking/3proxy.nix
index 26aa1667946..ae8a4958ca9 100644
--- a/nixos/modules/services/networking/3proxy.nix
+++ b/nixos/modules/services/networking/3proxy.nix
@@ -334,10 +334,12 @@ in {
           nsrecord = mkOption {
             type = types.attrsOf types.str;
             default = { };
-            example = {
-              "files.local" = "192.168.1.12";
-              "site.local" = "192.168.1.43";
-            };
+            example = literalExample ''
+              {
+                "files.local" = "192.168.1.12";
+                "site.local" = "192.168.1.43";
+              }
+            '';
             description = "Adds static nsrecords.";
           };
         };
diff --git a/nixos/modules/services/networking/connman.nix b/nixos/modules/services/networking/connman.nix
index e8eadc4e187..6ccc2dffb26 100644
--- a/nixos/modules/services/networking/connman.nix
+++ b/nixos/modules/services/networking/connman.nix
@@ -77,6 +77,13 @@ in {
         '';
       };
 
+      package = mkOption {
+        type = types.path;
+        description = "The connman package / build flavor";
+        default = connman;
+        example = literalExample "pkgs.connmanFull";
+      };
+
     };
 
   };
@@ -89,11 +96,13 @@ in {
       assertion = !config.networking.useDHCP;
       message = "You can not use services.connman with networking.useDHCP";
     }{
+      # TODO: connman seemingly can be used along network manager and
+      # connmanFull supports this - so this should be worked out somehow
       assertion = !config.networking.networkmanager.enable;
       message = "You can not use services.connman with networking.networkmanager";
     }];
 
-    environment.systemPackages = [ connman ];
+    environment.systemPackages = [ cfg.package ];
 
     systemd.services.connman = {
       description = "Connection service";
@@ -105,7 +114,7 @@ in {
         BusName = "net.connman";
         Restart = "on-failure";
         ExecStart = toString ([
-          "${pkgs.connman}/sbin/connmand"
+          "${cfg.package}/sbin/connmand"
           "--config=${configFile}"
           "--nodaemon"
         ] ++ optional enableIwd "--wifi=iwd_agent"
@@ -122,7 +131,7 @@ in {
       serviceConfig = {
         Type = "dbus";
         BusName = "net.connman.vpn";
-        ExecStart = "${pkgs.connman}/sbin/connman-vpnd -n";
+        ExecStart = "${cfg.package}/sbin/connman-vpnd -n";
         StandardOutput = "null";
       };
     };
@@ -132,7 +141,7 @@ in {
       serviceConfig = {
         Name = "net.connman.vpn";
         before = [ "connman" ];
-        ExecStart = "${pkgs.connman}/sbin/connman-vpnd -n";
+        ExecStart = "${cfg.package}/sbin/connman-vpnd -n";
         User = "root";
         SystemdService = "connman-vpn.service";
       };
diff --git a/nixos/modules/services/networking/dnscache.nix b/nixos/modules/services/networking/dnscache.nix
index d123bca9321..d06032daecc 100644
--- a/nixos/modules/services/networking/dnscache.nix
+++ b/nixos/modules/services/networking/dnscache.nix
@@ -61,10 +61,12 @@ in {
           Table of {hostname: server} pairs to use as authoritative servers for hosts (and subhosts).
           If entry for @ is not specified predefined list of root servers is used.
         '';
-        example = {
-          "@" = ["8.8.8.8" "8.8.4.4"];
-          "example.com" = ["192.168.100.100"];
-        };
+        example = literalExample ''
+          {
+            "@" = ["8.8.8.8" "8.8.4.4"];
+            "example.com" = ["192.168.100.100"];
+          }
+        '';
       };
 
       forwardOnly = mkOption {
diff --git a/nixos/modules/services/networking/magic-wormhole-mailbox-server.nix b/nixos/modules/services/networking/magic-wormhole-mailbox-server.nix
new file mode 100644
index 00000000000..09d357cd2b6
--- /dev/null
+++ b/nixos/modules/services/networking/magic-wormhole-mailbox-server.nix
@@ -0,0 +1,28 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.magic-wormhole-mailbox-server;
+  dataDir = "/var/lib/magic-wormhole-mailbox-server;";
+  python = pkgs.python3.withPackages (py: [ py.magic-wormhole-mailbox-server py.twisted ]);
+in
+{
+  options.services.magic-wormhole-mailbox-server = {
+    enable = mkEnableOption "Enable Magic Wormhole Mailbox Server";
+  };
+
+  config = mkIf cfg.enable {
+    systemd.services.magic-wormhole-mailbox-server = {
+      after = [ "network.target" ];
+      wantedBy = [ "multi-user.target" ];
+      serviceConfig = {
+        DynamicUser = true;
+        ExecStart = "${python}/bin/twistd --nodaemon wormhole-mailbox";
+        WorkingDirectory = dataDir;
+        StateDirectory = baseNameOf dataDir;
+      };
+    };
+
+  };
+}
diff --git a/nixos/modules/services/networking/mullvad-vpn.nix b/nixos/modules/services/networking/mullvad-vpn.nix
new file mode 100644
index 00000000000..cc98414257c
--- /dev/null
+++ b/nixos/modules/services/networking/mullvad-vpn.nix
@@ -0,0 +1,43 @@
+{ config, lib, pkgs, ... }:
+let
+  cfg = config.services.mullvad-vpn;
+in
+with lib;
+{
+  options.services.mullvad-vpn.enable = mkOption {
+    type = types.bool;
+    default = false;
+    description = ''
+      This option enables Mullvad VPN daemon.
+    '';
+  };
+
+  config = mkIf cfg.enable {
+    boot.kernelModules = [ "tun" ];
+
+    systemd.services.mullvad-daemon = {
+      description = "Mullvad VPN daemon";
+      wantedBy = [ "multi-user.target" ];
+      wants = [ "network.target" ];
+      after = [
+        "network-online.target"
+        "NetworkManager.service"
+        "systemd-resolved.service"
+      ];
+      path = [
+        pkgs.iproute
+        # Needed for ping
+        "/run/wrappers"
+      ];
+      serviceConfig = {
+        StartLimitBurst = 5;
+        StartLimitIntervalSec = 20;
+        ExecStart = "${pkgs.mullvad-vpn}/bin/mullvad-daemon -v --disable-stdout-timestamps";
+        Restart = "always";
+        RestartSec = 1;
+      };
+    };
+  };
+
+  meta.maintainers = [ maintainers.xfix ];
+}
diff --git a/nixos/modules/services/networking/ndppd.nix b/nixos/modules/services/networking/ndppd.nix
index e015f76f622..77e979a8a42 100644
--- a/nixos/modules/services/networking/ndppd.nix
+++ b/nixos/modules/services/networking/ndppd.nix
@@ -43,7 +43,7 @@ let
       timeout = mkOption {
         type = types.int;
         description = ''
-          Controls how long to wait for a Neighbor Advertisment Message before 
+          Controls how long to wait for a Neighbor Advertisment Message before
           invalidating the entry, in milliseconds.
         '';
         default = 500;
@@ -51,7 +51,7 @@ let
       ttl = mkOption {
         type = types.int;
         description = ''
-          Controls how long a valid or invalid entry remains in the cache, in 
+          Controls how long a valid or invalid entry remains in the cache, in
           milliseconds.
         '';
         default = 30000;
@@ -142,7 +142,11 @@ in {
         messages, and respond to them according to a set of rules.
       '';
       default = {};
-      example = { eth0.rules."1111::/64" = {}; };
+      example = literalExample ''
+        {
+          eth0.rules."1111::/64" = {};
+        }
+      '';
     };
   };
 
diff --git a/nixos/modules/services/networking/networkmanager.nix b/nixos/modules/services/networking/networkmanager.nix
index e817f295a44..6f24141b33c 100644
--- a/nixos/modules/services/networking/networkmanager.nix
+++ b/nixos/modules/services/networking/networkmanager.nix
@@ -131,6 +131,10 @@ let
 
 in {
 
+  meta = {
+    maintainers = teams.freedesktop.members;
+  };
+
   ###### interface
 
   options = {
diff --git a/nixos/modules/services/networking/pixiecore.nix b/nixos/modules/services/networking/pixiecore.nix
new file mode 100644
index 00000000000..0e32f182e2a
--- /dev/null
+++ b/nixos/modules/services/networking/pixiecore.nix
@@ -0,0 +1,134 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.pixiecore;
+in
+{
+  meta.maintainers = with maintainers; [ bbigras danderson ];
+
+  options = {
+    services.pixiecore = {
+      enable = mkEnableOption "Pixiecore";
+
+      openFirewall = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Open ports (67, 69 UDP and 4011, 'port', 'statusPort' TCP) in the firewall for Pixiecore.
+        '';
+      };
+
+      mode = mkOption {
+        description = "Which mode to use";
+        default = "boot";
+        type = types.enum [ "api" "boot" ];
+      };
+
+      debug = mkOption {
+        type = types.bool;
+        default = false;
+        description = "Log more things that aren't directly related to booting a recognized client";
+      };
+
+      dhcpNoBind = mkOption {
+        type = types.bool;
+        default = false;
+        description = "Handle DHCP traffic without binding to the DHCP server port";
+      };
+
+      kernel = mkOption {
+        type = types.str or types.path;
+        default = "";
+        description = "Kernel path. Ignored unless mode is set to 'boot'";
+      };
+
+      initrd = mkOption {
+        type = types.str or types.path;
+        default = "";
+        description = "Initrd path. Ignored unless mode is set to 'boot'";
+      };
+
+      cmdLine = mkOption {
+        type = types.str;
+        default = "";
+        description = "Kernel commandline arguments. Ignored unless mode is set to 'boot'";
+      };
+
+      listen = mkOption {
+        type = types.str;
+        default = "0.0.0.0";
+        description = "IPv4 address to listen on";
+      };
+
+      port = mkOption {
+        type = types.port;
+        default = 80;
+        description = "Port to listen on for HTTP";
+      };
+
+      statusPort = mkOption {
+        type = types.port;
+        default = 80;
+        description = "HTTP port for status information (can be the same as --port)";
+      };
+
+      apiServer = mkOption {
+        type = types.str;
+        example = "localhost:8080";
+        description = "host:port to connect to the API. Ignored unless mode is set to 'api'";
+      };
+
+      extraArguments = mkOption {
+        type = types.listOf types.str;
+        default = [];
+        description = "Additional command line arguments to pass to Pixiecore";
+      };
+    };
+  };
+
+  config = mkIf cfg.enable {
+    users.groups.pixiecore = {};
+    users.users.pixiecore = {
+      description = "Pixiecore daemon user";
+      group = "pixiecore";
+    };
+
+    networking.firewall = mkIf cfg.openFirewall {
+      allowedTCPPorts = [ 4011 cfg.port cfg.statusPort ];
+      allowedUDPPorts = [ 67 69 ];
+    };
+
+    systemd.services.pixiecore = {
+      description = "Pixiecore server";
+      after = [ "network.target"];
+      wants = [ "network.target"];
+      wantedBy = [ "multi-user.target"];
+      serviceConfig = {
+        User = "pixiecore";
+        Restart = "always";
+        AmbientCapabilities = [ "cap_net_bind_service" ] ++ optional cfg.dhcpNoBind "cap_net_raw";
+        ExecStart =
+          let
+            argString =
+              if cfg.mode == "boot"
+              then [ "boot" cfg.kernel ]
+                   ++ optional (cfg.initrd != "") cfg.initrd
+                   ++ optional (cfg.cmdLine != "") "--cmdline=${lib.escapeShellArg cfg.cmdLine}"
+              else [ "api" cfg.apiServer ];
+          in
+            ''
+              ${pkgs.pixiecore}/bin/pixiecore \
+                ${lib.escapeShellArgs argString} \
+                ${optionalString cfg.debug "--debug"} \
+                ${optionalString cfg.dhcpNoBind "--dhcp-no-bind"} \
+                --listen-addr ${lib.escapeShellArg cfg.listen} \
+                --port ${toString cfg.port} \
+                --status-port ${toString cfg.statusPort} \
+                ${escapeShellArgs cfg.extraArguments}
+              '';
+      };
+    };
+  };
+}
diff --git a/nixos/modules/services/networking/quorum.nix b/nixos/modules/services/networking/quorum.nix
new file mode 100644
index 00000000000..2f612c9db68
--- /dev/null
+++ b/nixos/modules/services/networking/quorum.nix
@@ -0,0 +1,229 @@
+{ config, pkgs, lib, ... }:
+let
+
+  inherit (lib) mkEnableOption mkIf mkOption literalExample types optionalString;
+
+  cfg = config.services.quorum;
+  dataDir = "/var/lib/quorum";
+  genesisFile = pkgs.writeText "genesis.json" (builtins.toJSON cfg.genesis);
+  staticNodesFile = pkgs.writeText "static-nodes.json" (builtins.toJSON cfg.staticNodes);
+
+in {
+  options = {
+
+    services.quorum = {
+      enable = mkEnableOption "Quorum blockchain daemon";
+
+      user = mkOption {
+        type = types.str;
+        default = "quorum";
+        description = "The user as which to run quorum.";
+      };
+
+      group = mkOption {
+        type = types.str;
+        default = cfg.user;
+        description = "The group as which to run quorum.";
+      };
+
+      port = mkOption {
+        type = types.port;
+        default = 21000;
+        description = "Override the default port on which to listen for connections.";
+      };
+
+      nodekeyFile = mkOption {
+        type = types.path;
+        default = "${dataDir}/nodekey";
+        description = "Path to the nodekey.";
+      };
+
+      staticNodes = mkOption {
+        type = types.listOf types.str;
+        default = [];
+        example = [ "enode://dd333ec28f0a8910c92eb4d336461eea1c20803eed9cf2c056557f986e720f8e693605bba2f4e8f289b1162e5ac7c80c914c7178130711e393ca76abc1d92f57@0.0.0.0:30303?discport=0" ];
+        description = "List of validator nodes.";
+      };
+
+      privateconfig = mkOption {
+        type = types.str;
+        default = "ignore";
+        description = "Configuration of privacy transaction manager.";
+      };
+
+      syncmode = mkOption {
+        type = types.enum [ "fast" "full" "light" ];
+        default = "full";
+        description = "Blockchain sync mode.";
+      };
+
+      blockperiod = mkOption {
+        type = types.int;
+        default = 5;
+        description = "Default minimum difference between two consecutive block's timestamps in seconds.";
+      };
+
+      permissioned = mkOption {
+        type = types.bool;
+        default = true;
+        description = "Allow only a defined list of nodes to connect.";
+      };
+
+      rpc = {
+        enable = mkOption {
+          type = types.bool;
+          default = true;
+          description = "Enable RPC interface.";
+        };
+
+        address = mkOption {
+          type = types.str;
+          default = "0.0.0.0";
+          description = "Listening address for RPC connections.";
+        };
+
+        port = mkOption {
+          type = types.port;
+          default = 22004;
+          description = "Override the default port on which to listen for RPC connections.";
+        };
+
+        api = mkOption {
+          type = types.str;
+          default = "admin,db,eth,debug,miner,net,shh,txpool,personal,web3,quorum,istanbul";
+          description = "API's offered over the HTTP-RPC interface.";
+        };
+      };
+
+     ws = {
+        enable = mkOption {
+          type = types.bool;
+          default = true;
+          description = "Enable WS-RPC interface.";
+        };
+
+        address = mkOption {
+          type = types.str;
+          default = "0.0.0.0";
+          description = "Listening address for WS-RPC connections.";
+        };
+
+        port = mkOption {
+          type = types.port;
+          default = 8546;
+          description = "Override the default port on which to listen for WS-RPC connections.";
+        };
+
+        api = mkOption {
+          type = types.str;
+          default = "admin,db,eth,debug,miner,net,shh,txpool,personal,web3,quorum,istanbul";
+          description = "API's offered over the WS-RPC interface.";
+        };
+
+       origins = mkOption {
+          type = types.str;
+          default = "*";
+          description = "Origins from which to accept websockets requests";
+       };
+     };
+
+      genesis = mkOption {
+        type = types.nullOr types.attrs;
+        default = null;
+        example = literalExample '' {
+          alloc = {
+            a47385db68718bdcbddc2d2bb7c54018066ec111 = {
+              balance = "1000000000000000000000000000";
+            };
+          };
+          coinbase = "0x0000000000000000000000000000000000000000";
+          config = {
+            byzantiumBlock = 4;
+            chainId = 494702925;
+            eip150Block = 2;
+            eip155Block = 3;
+            eip158Block = 3;
+            homesteadBlock = 1;
+            isQuorum = true;
+            istanbul = {
+              epoch = 30000;
+              policy = 0;
+            };
+          };
+          difficulty = "0x1";
+          extraData = "0x0000000000000000000000000000000000000000000000000000000000000000f85ad59438f0508111273d8e482f49410ca4078afc86a961b8410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0";
+          gasLimit = "0x2FEFD800";
+          mixHash = "0x63746963616c2062797a616e74696e65201111756c7420746f6c6572616e6365";
+          nonce = "0x0";
+          parentHash = "0x0000000000000000000000000000000000000000000000000000000000000000";
+          timestamp = "0x00";
+          }'';
+        description = "Blockchain genesis settings.";
+      };
+     };
+  };
+
+  config = mkIf cfg.enable {
+    environment.systemPackages = [ pkgs.quorum ];
+    systemd.tmpfiles.rules = [
+      "d '${dataDir}' 0770 '${cfg.user}' '${cfg.group}' - -"
+    ];
+    systemd.services.quorum = {
+      description = "Quorum daemon";
+      after = [ "network.target" ];
+      wantedBy = [ "multi-user.target" ];
+      environment = {
+        PRIVATE_CONFIG = "${cfg.privateconfig}";
+      };
+      preStart = ''
+        if [ ! -d ${dataDir}/geth ]; then
+          if [ ! -d ${dataDir}/keystore ]; then
+            echo ERROR: You need to create a wallet before initializing your genesis file, run:
+            echo   # su -s /bin/sh - quorum
+            echo   $ geth --datadir ${dataDir} account new
+            echo and configure your genesis file accordingly.
+            exit 1;
+          fi
+          ln -s ${staticNodesFile} ${dataDir}/static-nodes.json
+          ${pkgs.quorum}/bin/geth --datadir ${dataDir} init ${genesisFile}
+        fi
+      '';
+      serviceConfig = {
+        User = cfg.user;
+        Group = cfg.group;
+        ExecStart = ''${pkgs.quorum}/bin/geth \
+            --nodiscover \
+            --verbosity 5 \
+            --nodekey ${cfg.nodekeyFile} \
+            --istanbul.blockperiod ${toString cfg.blockperiod} \
+            --syncmode ${cfg.syncmode} \
+            ${optionalString (cfg.permissioned)
+            "--permissioned"} \
+            --mine --minerthreads 1 \
+            ${optionalString (cfg.rpc.enable)
+            "--rpc --rpcaddr ${cfg.rpc.address} --rpcport ${toString cfg.rpc.port} --rpcapi ${cfg.rpc.api}"} \
+            ${optionalString (cfg.ws.enable)
+            "--ws --wsaddr ${cfg.ws.address} --wsport ${toString cfg.ws.port} --wsapi ${cfg.ws.api} --wsorigins ${cfg.ws.origins}"} \
+            --emitcheckpoints \
+            --datadir ${dataDir} \
+            --port ${toString cfg.port}'';
+        Restart = "on-failure";
+
+        # Hardening measures
+        PrivateTmp = "true";
+        ProtectSystem = "full";
+        NoNewPrivileges = "true";
+        PrivateDevices = "true";
+        MemoryDenyWriteExecute = "true";
+      };
+    };
+    users.users.${cfg.user} = {
+      name = cfg.user;
+      group = cfg.group;
+      description = "Quorum daemon user";
+      home = dataDir;
+      isSystemUser = true;
+    };
+    users.groups.${cfg.group} = {};
+  };
+}
diff --git a/nixos/modules/services/networking/rxe.nix b/nixos/modules/services/networking/rxe.nix
index a6a069ec50c..c7d174a00de 100644
--- a/nixos/modules/services/networking/rxe.nix
+++ b/nixos/modules/services/networking/rxe.nix
@@ -5,20 +5,6 @@ with lib;
 let
   cfg = config.networking.rxe;
 
-  runRxeCmd = cmd: ifcs:
-    concatStrings ( map (x: "${pkgs.rdma-core}/bin/rxe_cfg -n ${cmd} ${x};") ifcs);
-
-  startScript = pkgs.writeShellScriptBin "rxe-start" ''
-    ${pkgs.rdma-core}/bin/rxe_cfg -n start
-    ${runRxeCmd "add" cfg.interfaces}
-    ${pkgs.rdma-core}/bin/rxe_cfg
-  '';
-
-  stopScript = pkgs.writeShellScriptBin "rxe-stop" ''
-    ${runRxeCmd "remove" cfg.interfaces }
-    ${pkgs.rdma-core}/bin/rxe_cfg -n stop
-  '';
-
 in {
   ###### interface
 
@@ -31,9 +17,8 @@ in {
         example = [ "eth0" ];
         description = ''
           Enable RDMA on the listed interfaces. The corresponding virtual
-          RDMA interfaces will be named rxe0 ... rxeN where the ordering
-          will be as they are named in the list. UDP port 4791 must be
-          open on the respective ethernet interfaces.
+          RDMA interfaces will be named rxe_&lt;interface&gt;.
+          UDP port 4791 must be open on the respective ethernet interfaces.
         '';
       };
     };
@@ -44,7 +29,6 @@ in {
   config = mkIf cfg.enable {
 
     systemd.services.rxe = {
-      path = with pkgs; [ kmod rdma-core ];
       description = "RoCE interfaces";
 
       wantedBy = [ "multi-user.target" ];
@@ -54,8 +38,13 @@ in {
       serviceConfig = {
         Type = "oneshot";
         RemainAfterExit = true;
-        ExecStart = "${startScript}/bin/rxe-start";
-        ExecStop = "${stopScript}/bin/rxe-stop";
+        ExecStart = map ( x:
+          "${pkgs.iproute}/bin/rdma link add rxe_${x} type rxe netdev ${x}"
+          ) cfg.interfaces;
+
+        ExecStop = map ( x:
+          "${pkgs.iproute}/bin/rdma link delete rxe_${x}"
+          ) cfg.interfaces;
       };
     };
   };
diff --git a/nixos/modules/services/networking/ssh/sshd.nix b/nixos/modules/services/networking/ssh/sshd.nix
index 464e9ed38c4..17f31e3a488 100644
--- a/nixos/modules/services/networking/ssh/sshd.nix
+++ b/nixos/modules/services/networking/ssh/sshd.nix
@@ -9,8 +9,8 @@ let
   # This middle-ground solution ensures *an* sshd can do their basic validation
   # on the configuration.
   validationPackage = if pkgs.stdenv.buildPlatform == pkgs.stdenv.hostPlatform
-    then [ cfgc.package ]
-    else [ pkgs.buildPackages.openssh ];
+    then cfgc.package
+    else pkgs.buildPackages.openssh;
 
   sshconf = pkgs.runCommand "sshd.conf-validated" { nativeBuildInputs = [ validationPackage ]; } ''
     cat >$out <<EOL
diff --git a/nixos/modules/services/networking/strongswan.nix b/nixos/modules/services/networking/strongswan.nix
index 4ff9c486059..13a1a897c5e 100644
--- a/nixos/modules/services/networking/strongswan.nix
+++ b/nixos/modules/services/networking/strongswan.nix
@@ -4,7 +4,7 @@ let
 
   inherit (builtins) toFile;
   inherit (lib) concatMapStringsSep concatStringsSep mapAttrsToList
-                mkIf mkEnableOption mkOption types;
+                mkIf mkEnableOption mkOption types literalExample;
 
   cfg = config.services.strongswan;
 
@@ -79,19 +79,21 @@ in
     connections = mkOption {
       type = types.attrsOf (types.attrsOf types.str);
       default = {};
-      example = {
-        "%default" = {
-          keyexchange = "ikev2";
-          keyingtries = "1";
-        };
-        roadwarrior = {
-          auto       = "add";
-          leftcert   = "/run/keys/moonCert.pem";
-          leftid     = "@moon.strongswan.org";
-          leftsubnet = "10.1.0.0/16";
-          right      = "%any";
-        };
-      };
+      example = literalExample ''
+        {
+          "%default" = {
+            keyexchange = "ikev2";
+            keyingtries = "1";
+          };
+          roadwarrior = {
+            auto       = "add";
+            leftcert   = "/run/keys/moonCert.pem";
+            leftid     = "@moon.strongswan.org";
+            leftsubnet = "10.1.0.0/16";
+            right      = "%any";
+          };
+        }
+      '';
       description = ''
         A set of connections and their options for the ‘conn xxx’
         sections of the <filename>ipsec.conf</filename> file.
diff --git a/nixos/modules/services/networking/syncthing.nix b/nixos/modules/services/networking/syncthing.nix
index 5b3eb6f04b4..e717d78feed 100644
--- a/nixos/modules/services/networking/syncthing.nix
+++ b/nixos/modules/services/networking/syncthing.nix
@@ -169,12 +169,14 @@ in {
           description = ''
             folders which should be shared by syncthing.
           '';
-          example = {
-            "/home/user/sync" = {
-              id = "syncme";
-              devices = [ "bigbox" ];
-            };
-          };
+          example = literalExample ''
+            {
+              "/home/user/sync" = {
+                id = "syncme";
+                devices = [ "bigbox" ];
+              };
+            }
+          '';
           type = types.attrsOf (types.submodule ({ name, ... }: {
             options = {
 
diff --git a/nixos/modules/services/networking/wg-quick.nix b/nixos/modules/services/networking/wg-quick.nix
index b770d47d269..ff1bdeed9f4 100644
--- a/nixos/modules/services/networking/wg-quick.nix
+++ b/nixos/modules/services/networking/wg-quick.nix
@@ -302,7 +302,7 @@ in {
   ###### implementation
 
   config = mkIf (cfg.interfaces != {}) {
-    boot.extraModulePackages = [ kernel.wireguard ];
+    boot.extraModulePackages = optional (versionOlder kernel.kernel.version "5.6") kernel.wireguard;
     environment.systemPackages = [ pkgs.wireguard-tools ];
     # This is forced to false for now because the default "--validmark" rpfilter we apply on reverse path filtering
     # breaks the wg-quick routing because wireguard packets leave with a fwmark from wireguard.
diff --git a/nixos/modules/services/scheduling/atd.nix b/nixos/modules/services/scheduling/atd.nix
index 93ed9231d3c..cefe72b0e99 100644
--- a/nixos/modules/services/scheduling/atd.nix
+++ b/nixos/modules/services/scheduling/atd.nix
@@ -67,8 +67,6 @@ in
 
     systemd.services.atd = {
       description = "Job Execution Daemon (atd)";
-      after = [ "systemd-udev-settle.service" ];
-      wants = [ "systemd-udev-settle.service" ];
       wantedBy = [ "multi-user.target" ];
 
       path = [ at ];
diff --git a/nixos/modules/services/web-apps/gerrit.nix b/nixos/modules/services/web-apps/gerrit.nix
new file mode 100644
index 00000000000..b184c0754d4
--- /dev/null
+++ b/nixos/modules/services/web-apps/gerrit.nix
@@ -0,0 +1,218 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+let
+  cfg = config.services.gerrit;
+
+  # NixOS option type for git-like configs
+  gitIniType = with types;
+    let
+      primitiveType = either str (either bool int);
+      multipleType = either primitiveType (listOf primitiveType);
+      sectionType = lazyAttrsOf multipleType;
+      supersectionType = lazyAttrsOf (either multipleType sectionType);
+    in lazyAttrsOf supersectionType;
+
+  gerritConfig = pkgs.writeText "gerrit.conf" (
+    lib.generators.toGitINI cfg.settings
+  );
+
+  # Wrap the gerrit java with all the java options so it can be called
+  # like a normal CLI app
+  gerrit-cli = pkgs.writeShellScriptBin "gerrit" ''
+    set -euo pipefail
+    jvmOpts=(
+      ${lib.escapeShellArgs cfg.jvmOpts}
+      -Xmx${cfg.jvmHeapLimit}
+    )
+    exec ${cfg.jvmPackage}/bin/java \
+      "''${jvmOpts[@]}" \
+      -jar ${cfg.package}/webapps/${cfg.package.name}.war \
+      "$@"
+  '';
+
+  gerrit-plugins = pkgs.runCommand
+    "gerrit-plugins"
+    {
+      buildInputs = [ gerrit-cli ];
+    }
+    ''
+      shopt -s nullglob
+      mkdir $out
+
+      for name in ${toString cfg.builtinPlugins}; do
+        echo "Installing builtin plugin $name.jar"
+        gerrit cat plugins/$name.jar > $out/$name.jar
+      done
+
+      for file in ${toString cfg.plugins}; do
+        name=$(echo "$file" | cut -d - -f 2-)
+        echo "Installing plugin $name"
+        ln -sf "$file" $out/$name
+      done
+    '';
+in
+{
+  options = {
+    services.gerrit = {
+      enable = mkEnableOption "Gerrit service";
+
+      package = mkOption {
+        type = types.package;
+        default = pkgs.gerrit;
+        description = "Gerrit package to use";
+      };
+
+      jvmPackage = mkOption {
+        type = types.package;
+        default = pkgs.jre_headless;
+        defaultText = "pkgs.jre_headless";
+        description = "Java Runtime Environment package to use";
+      };
+
+      jvmOpts = mkOption {
+        type = types.listOf types.str;
+        default = [
+          "-Dflogger.backend_factory=com.google.common.flogger.backend.log4j.Log4jBackendFactory#getInstance"
+          "-Dflogger.logging_context=com.google.gerrit.server.logging.LoggingContext#getInstance"
+        ];
+        description = "A list of JVM options to start gerrit with.";
+      };
+
+      jvmHeapLimit = mkOption {
+        type = types.str;
+        default = "1024m";
+        description = ''
+          How much memory to allocate to the JVM heap
+        '';
+      };
+
+      listenAddress = mkOption {
+        type = types.str;
+        default = "[::]:8080";
+        description = ''
+          <literal>hostname:port</literal> to listen for HTTP traffic.
+
+          This is bound using the systemd socket activation.
+        '';
+      };
+
+      settings = mkOption {
+        type = gitIniType;
+        default = {};
+        description = ''
+          Gerrit configuration. This will be generated to the
+          <literal>etc/gerrit.config</literal> file.
+        '';
+      };
+
+      plugins = mkOption {
+        type = types.listOf types.package;
+        default = [];
+        description = ''
+          List of plugins to add to Gerrit. Each derivation is a jar file
+          itself where the name of the derivation is the name of plugin.
+        '';
+      };
+
+      builtinPlugins = mkOption {
+        type = types.listOf (types.enum cfg.package.passthru.plugins);
+        default = [];
+        description = ''
+          List of builtins plugins to install. Those are shipped in the
+          <literal>gerrit.war</literal> file.
+        '';
+      };
+
+      serverId = mkOption {
+        type = types.str;
+        description = ''
+          Set a UUID that uniquely identifies the server.
+
+          This can be generated with
+          <literal>nix-shell -p utillinux --run uuidgen</literal>.
+        '';
+      };
+    };
+  };
+
+  config = mkIf cfg.enable {
+
+    services.gerrit.settings = {
+      cache.directory = "/var/cache/gerrit";
+      container.heapLimit = cfg.jvmHeapLimit;
+      gerrit.basePath = lib.mkDefault "git";
+      gerrit.serverId = cfg.serverId;
+      httpd.inheritChannel = "true";
+      httpd.listenUrl = lib.mkDefault "http://${cfg.listenAddress}";
+      index.type = lib.mkDefault "lucene";
+    };
+
+    # Add the gerrit CLI to the system to run `gerrit init` and friends.
+    environment.systemPackages = [ gerrit-cli ];
+
+    systemd.sockets.gerrit = {
+      unitConfig.Description = "Gerrit HTTP socket";
+      wantedBy = [ "sockets.target" ];
+      listenStreams = [ cfg.listenAddress ];
+    };
+
+    systemd.services.gerrit = {
+      description = "Gerrit";
+
+      wantedBy = [ "multi-user.target" ];
+      requires = [ "gerrit.socket" ];
+      after = [ "gerrit.socket" "network.target" ];
+
+      path = [
+        gerrit-cli
+        pkgs.bash
+        pkgs.coreutils
+        pkgs.git
+        pkgs.openssh
+      ];
+
+      environment = {
+        GERRIT_HOME = "%S/gerrit";
+        GERRIT_TMP = "%T";
+        HOME = "%S/gerrit";
+        XDG_CONFIG_HOME = "%S/gerrit/.config";
+      };
+
+      preStart = ''
+        set -euo pipefail
+
+        # bootstrap if nothing exists
+        if [[ ! -d git ]]; then
+          gerrit init --batch --no-auto-start
+        fi
+
+        # install gerrit.war for the plugin manager
+        rm -rf bin
+        mkdir bin
+        ln -sfv ${cfg.package}/webapps/${cfg.package.name}.war bin/gerrit.war
+
+        # copy the config, keep it mutable because Gerrit
+        ln -sfv ${gerritConfig} etc/gerrit.config
+
+        # install the plugins
+        rm -rf plugins
+        ln -sv ${gerrit-plugins} plugins
+      ''
+      ;
+
+      serviceConfig = {
+        CacheDirectory = "gerrit";
+        DynamicUser = true;
+        ExecStart = "${gerrit-cli}/bin/gerrit daemon --console-log";
+        LimitNOFILE = 4096;
+        StandardInput = "socket";
+        StandardOutput = "journal";
+        StateDirectory = "gerrit";
+        WorkingDirectory = "%S/gerrit";
+      };
+    };
+  };
+
+  meta.maintainers = with lib.maintainers; [ edef zimbatm ];
+}
diff --git a/nixos/modules/services/web-apps/moinmoin.nix b/nixos/modules/services/web-apps/moinmoin.nix
index 0fee64be0bb..dc7abce2a5c 100644
--- a/nixos/modules/services/web-apps/moinmoin.nix
+++ b/nixos/modules/services/web-apps/moinmoin.nix
@@ -299,5 +299,5 @@ in
     ])));
   };
 
-  meta.maintainers = with lib.maintainers; [ b42 ];
+  meta.maintainers = with lib.maintainers; [ mmilata ];
 }
diff --git a/nixos/modules/services/web-apps/nextcloud.nix b/nixos/modules/services/web-apps/nextcloud.nix
index 912e05d6d40..9de2fbc0732 100644
--- a/nixos/modules/services/web-apps/nextcloud.nix
+++ b/nixos/modules/services/web-apps/nextcloud.nix
@@ -6,31 +6,32 @@ let
   cfg = config.services.nextcloud;
   fpm = config.services.phpfpm.pools.nextcloud;
 
-  phpPackage = pkgs.php73;
-  phpPackages = pkgs.php73Packages;
+  phpPackage =
+    let
+      base = pkgs.php74;
+    in
+      base.buildEnv {
+        extensions = e: with e;
+          base.enabledExtensions ++ [
+            apcu redis memcached imagick
+          ];
+        extraConfig = phpOptionsStr;
+      };
 
   toKeyValue = generators.toKeyValue {
     mkKeyValue = generators.mkKeyValueDefault {} " = ";
   };
 
-  phpOptionsExtensions = ''
-    ${optionalString cfg.caching.apcu "extension=${phpPackages.apcu}/lib/php/extensions/apcu.so"}
-    ${optionalString cfg.caching.redis "extension=${phpPackages.redis}/lib/php/extensions/redis.so"}
-    ${optionalString cfg.caching.memcached "extension=${phpPackages.memcached}/lib/php/extensions/memcached.so"}
-    extension=${phpPackages.imagick}/lib/php/extensions/imagick.so
-    zend_extension = opcache.so
-    opcache.enable = 1
-  '';
   phpOptions = {
     upload_max_filesize = cfg.maxUploadSize;
     post_max_size = cfg.maxUploadSize;
     memory_limit = cfg.maxUploadSize;
   } // cfg.phpOptions;
-  phpOptionsStr = phpOptionsExtensions + (toKeyValue phpOptions);
+  phpOptionsStr = toKeyValue phpOptions;
 
   occ = pkgs.writeScriptBin "nextcloud-occ" ''
-    #! ${pkgs.stdenv.shell}
-    cd ${pkgs.nextcloud}
+    #! ${pkgs.runtimeShell}
+    cd ${cfg.package}
     sudo=exec
     if [[ "$USER" != nextcloud ]]; then
       sudo='exec /run/wrappers/bin/sudo -u nextcloud --preserve-env=NEXTCLOUD_CONFIG_DIR'
@@ -38,10 +39,11 @@ let
     export NEXTCLOUD_CONFIG_DIR="${cfg.home}/config"
     $sudo \
       ${phpPackage}/bin/php \
-      -c ${pkgs.writeText "php.ini" phpOptionsStr}\
       occ $*
   '';
 
+  inherit (config.system) stateVersion;
+
 in {
   options.services.nextcloud = {
     enable = mkEnableOption "nextcloud";
@@ -64,6 +66,11 @@ in {
       default = false;
       description = "Use https for generated links.";
     };
+    package = mkOption {
+      type = types.package;
+      description = "Which package to use for the Nextcloud instance.";
+      relatedPackages = [ "nextcloud17" "nextcloud18" ];
+    };
 
     maxUploadSize = mkOption {
       default = "512M";
@@ -309,10 +316,31 @@ in {
         }
       ];
 
-      warnings = optional (cfg.poolConfig != null) ''
-        Using config.services.nextcloud.poolConfig is deprecated and will become unsupported in a future release.
-        Please migrate your configuration to config.services.nextcloud.poolSettings.
-      '';
+      warnings = []
+        ++ (optional (cfg.poolConfig != null) ''
+          Using config.services.nextcloud.poolConfig is deprecated and will become unsupported in a future release.
+          Please migrate your configuration to config.services.nextcloud.poolSettings.
+        '')
+        ++ (optional (versionOlder cfg.package.version "18") ''
+          You're currently deploying an older version of Nextcloud. This may be needed
+          since Nextcloud doesn't allow major version upgrades across multiple versions (i.e. an
+          upgrade from 16 is possible to 17, but not to 18).
+
+          Please deploy this to your server and wait until the migration is finished. After
+          that you can deploy to the latest Nextcloud version available.
+        '');
+
+      services.nextcloud.package = with pkgs;
+        mkDefault (
+          if pkgs ? nextcloud
+            then throw ''
+              The `pkgs.nextcloud`-attribute has been removed. If it's supposed to be the default
+              nextcloud defined in an overlay, please set `services.nextcloud.package` to
+              `pkgs.nextcloud`.
+            ''
+          else if versionOlder stateVersion "20.03" then nextcloud17
+          else nextcloud18
+        );
     }
 
     { systemd.timers.nextcloud-cron = {
@@ -407,7 +435,7 @@ in {
           path = [ occ ];
           script = ''
             chmod og+x ${cfg.home}
-            ln -sf ${pkgs.nextcloud}/apps ${cfg.home}/
+            ln -sf ${cfg.package}/apps ${cfg.home}/
             mkdir -p ${cfg.home}/config ${cfg.home}/data ${cfg.home}/store-apps
             ln -sf ${overrideConfig} ${cfg.home}/config/override.config.php
 
@@ -429,7 +457,7 @@ in {
           environment.NEXTCLOUD_CONFIG_DIR = "${cfg.home}/config";
           serviceConfig.Type = "oneshot";
           serviceConfig.User = "nextcloud";
-          serviceConfig.ExecStart = "${phpPackage}/bin/php -f ${pkgs.nextcloud}/cron.php";
+          serviceConfig.ExecStart = "${phpPackage}/bin/php -f ${cfg.package}/cron.php";
         };
         nextcloud-update-plugins = mkIf cfg.autoUpdateApps.enable {
           serviceConfig.Type = "oneshot";
@@ -471,7 +499,7 @@ in {
         enable = true;
         virtualHosts = {
           ${cfg.hostName} = {
-            root = pkgs.nextcloud;
+            root = cfg.package;
             locations = {
               "= /robots.txt" = {
                 priority = 100;
@@ -537,7 +565,7 @@ in {
                 add_header Referrer-Policy no-referrer;
                 access_log off;
               '';
-              "~ \\.(?:png|html|ttf|ico|jpg|jpeg)$".extraConfig = ''
+              "~ \\.(?:png|html|ttf|ico|jpg|jpeg|bcmap|mp4|webm)$".extraConfig = ''
                 try_files $uri /index.php$request_uri;
                 access_log off;
               '';
diff --git a/nixos/modules/services/web-apps/nextcloud.xml b/nixos/modules/services/web-apps/nextcloud.xml
index d66e0f0c299..fc454f8ba25 100644
--- a/nixos/modules/services/web-apps/nextcloud.xml
+++ b/nixos/modules/services/web-apps/nextcloud.xml
@@ -113,5 +113,53 @@
    maintenance:install</literal>! This command tries to install the application
    and can cause unwanted side-effects!</para>
   </warning>
+
+  <para>
+   Nextcloud doesn't allow to move more than one major-version forward. If you're e.g. on
+   <literal>v16</literal>, you cannot upgrade to <literal>v18</literal>, you need to upgrade to
+   <literal>v17</literal> first. This is ensured automatically as long as the
+   <link linkend="opt-system.stateVersion">stateVersion</link> is declared properly. In that case
+   the oldest version available (one major behind the one from the previous NixOS
+   release) will be selected by default and the module will generate a warning that reminds
+   the user to upgrade to latest Nextcloud <emphasis>after</emphasis> that deploy.
+  </para>
+ </section>
+
+ <section xml:id="module-services-nextcloud-maintainer-info">
+  <title>Maintainer information</title>
+
+  <para>
+   As stated in the previous paragraph, we must provide a clean upgrade-path for Nextcloud
+   since it cannot move more than one major version forward on a single upgrade. This chapter
+   adds some notes how Nextcloud updates should be rolled out in the future.
+  </para>
+
+  <para>
+   While minor and patch-level updates are no problem and can be done directly in the
+   package-expression (and should be backported to supported stable branches after that),
+   major-releases should be added in a new attribute (e.g. Nextcloud <literal>v19.0.0</literal>
+   should be available in <literal>nixpkgs</literal> as <literal>pkgs.nextcloud19</literal>).
+   To provide simple upgrade paths it's generally useful to backport those as well to stable
+   branches. As long as the package-default isn't altered, this won't break existing setups.
+   After that, the versioning-warning in the <literal>nextcloud</literal>-module should be
+   updated to make sure that the
+   <link linkend="opt-services.nextcloud.package">package</link>-option selects the latest version
+   on fresh setups.
+  </para>
+
+  <para>
+   If major-releases will be abandoned by upstream, we should check first if those are needed
+   in NixOS for a safe upgrade-path before removing those. In that case we shold keep those
+   packages, but mark them as insecure in an expression like this (in
+   <literal>&lt;nixpkgs/pkgs/servers/nextcloud/default.nix&gt;</literal>):
+<programlisting>/* ... */
+{
+  nextcloud17 = generic {
+    version = "17.0.x";
+    sha256 = "0000000000000000000000000000000000000000000000000000";
+    insecure = true;
+  };
+}</programlisting>
+  </para>
  </section>
 </chapter>
diff --git a/nixos/modules/services/web-apps/youtrack.nix b/nixos/modules/services/web-apps/youtrack.nix
index 830edac20ba..b4d653d2d77 100644
--- a/nixos/modules/services/web-apps/youtrack.nix
+++ b/nixos/modules/services/web-apps/youtrack.nix
@@ -46,9 +46,11 @@ in
         https://www.jetbrains.com/help/youtrack/standalone/YouTrack-Java-Start-Parameters.html
         for more information.
       '';
-      example = {
-        "jetbrains.youtrack.overrideRootPassword" = "tortuga";
-      };
+      example = literalExample ''
+        {
+          "jetbrains.youtrack.overrideRootPassword" = "tortuga";
+        }
+      '';
       type = types.attrsOf types.str;
     };
 
diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix
index 28b433104a1..8d49dc66eb1 100644
--- a/nixos/modules/services/web-servers/nginx/default.nix
+++ b/nixos/modules/services/web-servers/nginx/default.nix
@@ -46,6 +46,15 @@ let
     }
   ''));
 
+  commonHttpConfig = ''
+      # The mime type definitions included with nginx are very incomplete, so
+      # we use a list of mime types from the mailcap package, which is also
+      # used by most other Linux distributions by default.
+      include ${pkgs.mailcap}/etc/nginx/mime.types;
+      include ${cfg.package}/conf/fastcgi.conf;
+      include ${cfg.package}/conf/uwsgi_params;
+  '';
+
   configFile = pkgs.writers.writeNginxConfig "nginx.conf" ''
     pid /run/nginx/nginx.pid;
     error_log ${cfg.logError};
@@ -61,12 +70,7 @@ let
 
     ${optionalString (cfg.httpConfig == "" && cfg.config == "") ''
     http {
-      # The mime type definitions included with nginx are very incomplete, so
-      # we use a list of mime types from the mailcap package, which is also
-      # used by most other Linux distributions by default.
-      include ${pkgs.mailcap}/etc/nginx/mime.types;
-      include ${cfg.package}/conf/fastcgi.conf;
-      include ${cfg.package}/conf/uwsgi_params;
+      ${commonHttpConfig}
 
       ${optionalString (cfg.resolver.addresses != []) ''
         resolver ${toString cfg.resolver.addresses} ${optionalString (cfg.resolver.valid != "") "valid=${cfg.resolver.valid}"} ${optionalString (!cfg.resolver.ipv6) "ipv6=off"};
@@ -79,7 +83,7 @@ let
         tcp_nopush on;
         tcp_nodelay on;
         keepalive_timeout 65;
-        types_hash_max_size 2048;
+        types_hash_max_size 4096;
       ''}
 
       ssl_protocols ${cfg.sslProtocols};
@@ -172,9 +176,7 @@ let
 
     ${optionalString (cfg.httpConfig != "") ''
     http {
-      include ${cfg.package}/conf/mime.types;
-      include ${cfg.package}/conf/fastcgi.conf;
-      include ${cfg.package}/conf/uwsgi_params;
+      ${commonHttpConfig}
       ${cfg.httpConfig}
     }''}
 
diff --git a/nixos/modules/services/web-servers/phpfpm/default.nix b/nixos/modules/services/web-servers/phpfpm/default.nix
index 2c73da10394..3db19c781d0 100644
--- a/nixos/modules/services/web-servers/phpfpm/default.nix
+++ b/nixos/modules/services/web-servers/phpfpm/default.nix
@@ -47,6 +47,7 @@ let
             Path to the unix socket file on which to accept FastCGI requests.
             <note><para>This option is read-only and managed by NixOS.</para></note>
           '';
+          example = "${runtimeDir}/<name>.sock";
         };
 
         listen = mkOption {
diff --git a/nixos/modules/services/x11/desktop-managers/enlightenment.nix b/nixos/modules/services/x11/desktop-managers/enlightenment.nix
index 26b662a2a64..32c9a40e535 100644
--- a/nixos/modules/services/x11/desktop-managers/enlightenment.nix
+++ b/nixos/modules/services/x11/desktop-managers/enlightenment.nix
@@ -38,7 +38,7 @@ in
       pkgs.gtk2 # To get GTK's themes.
       pkgs.tango-icon-theme
 
-      pkgs.gnome2.gnome_icon_theme
+      pkgs.gnome-icon-theme
       pkgs.xorg.xcursorthemes
     ];
 
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index 5756cf14ed9..ac8e70c52bc 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -57,6 +57,10 @@ in
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   options = {
 
     services.gnome3 = {
@@ -180,7 +184,7 @@ in
               wmCommand = "${pkgs.gnome3.metacity}/bin/metacity";
             } ++ cfg.flashback.customSessions);
 
-      security.pam.services.gnome-screensaver = {
+      security.pam.services.gnome-flashback = {
         enableGnomeKeyring = true;
       };
 
@@ -191,9 +195,10 @@ in
           inherit (wm) wmName;
         }) cfg.flashback.customSessions);
 
-      services.dbus.packages = [
-        pkgs.gnome3.gnome-screensaver
-      ];
+        # gnome-panel needs these for menu applet
+        environment.sessionVariables.XDG_DATA_DIRS = [ "${pkgs.gnome3.gnome-flashback}/share" ];
+        # TODO: switch to sessionVariables (resolve conflict)
+        environment.variables.XDG_CONFIG_DIRS = [ "${pkgs.gnome3.gnome-flashback}/etc/xdg" ];
     })
 
     (mkIf serviceCfg.core-os-services.enable {
@@ -252,7 +257,6 @@ in
       systemd.packages = with pkgs.gnome3; [
         gnome-session
         gnome-shell
-        vino
       ];
 
       services.avahi.enable = mkDefault true;
@@ -304,7 +308,7 @@ in
         environment = mkForce {};
       };
 
-      # Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-32/elements/core/meta-gnome-core-shell.bst
+      # Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-36/elements/core/meta-gnome-core-shell.bst
       environment.systemPackages = with pkgs.gnome3; [
         adwaita-icon-theme
         gnome-backgrounds
@@ -323,11 +327,10 @@ in
         pkgs.hicolor-icon-theme
         pkgs.shared-mime-info # for update-mime-database
         pkgs.xdg-user-dirs # Update user dirs as described in http://freedesktop.org/wiki/Software/xdg-user-dirs/
-        vino
       ];
     })
 
-    # Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-32/elements/core/meta-gnome-core-utilities.bst
+    # Adapt from https://gitlab.gnome.org/GNOME/gnome-build-meta/blob/gnome-3-36/elements/core/meta-gnome-core-utilities.bst
     (mkIf serviceCfg.core-utilities.enable {
       environment.systemPackages = (with pkgs.gnome3; removePackagesByName [
         baobab
diff --git a/nixos/modules/services/x11/desktop-managers/mate.nix b/nixos/modules/services/x11/desktop-managers/mate.nix
index 910a246d776..f236c14fcf3 100644
--- a/nixos/modules/services/x11/desktop-managers/mate.nix
+++ b/nixos/modules/services/x11/desktop-managers/mate.nix
@@ -44,35 +44,35 @@ in
 
   config = mkIf cfg.enable {
 
-    services.xserver.desktopManager.session = singleton {
-      name = "mate";
-      bgSupport = true;
-      start = ''
-        export XDG_MENU_PREFIX=mate-
+    services.xserver.displayManager.sessionPackages = [
+      pkgs.mate.mate-session-manager
+    ];
 
-        # Let caja find extensions
-        export CAJA_EXTENSION_DIRS=$CAJA_EXTENSION_DIRS''${CAJA_EXTENSION_DIRS:+:}${config.system.path}/lib/caja/extensions-2.0
+    services.xserver.displayManager.sessionCommands = ''
+      if test "$XDG_CURRENT_DESKTOP" = "MATE"; then
+          export XDG_MENU_PREFIX=mate-
 
-        # Let caja extensions find gsettings schemas
-        ${concatMapStrings (p: ''
+          # Let caja find extensions
+          export CAJA_EXTENSION_DIRS=$CAJA_EXTENSION_DIRS''${CAJA_EXTENSION_DIRS:+:}${config.system.path}/lib/caja/extensions-2.0
+
+          # Let caja extensions find gsettings schemas
+          ${concatMapStrings (p: ''
           if [ -d "${p}/lib/caja/extensions-2.0" ]; then
-            ${addToXDGDirs p}
+              ${addToXDGDirs p}
           fi
-          '')
-          config.environment.systemPackages
-        }
+          '') config.environment.systemPackages}
 
-        # Let mate-panel find applets
-        export MATE_PANEL_APPLETS_DIR=$MATE_PANEL_APPLETS_DIR''${MATE_PANEL_APPLETS_DIR:+:}${config.system.path}/share/mate-panel/applets
-        export MATE_PANEL_EXTRA_MODULES=$MATE_PANEL_EXTRA_MODULES''${MATE_PANEL_EXTRA_MODULES:+:}${config.system.path}/lib/mate-panel/applets
+          # Add mate-control-center paths to some XDG variables because its schemas are needed by mate-settings-daemon, and mate-settings-daemon is a dependency for mate-control-center (that is, they are mutually recursive)
+          ${addToXDGDirs pkgs.mate.mate-control-center}
+      fi
+    '';
 
-        # Add mate-control-center paths to some XDG variables because its schemas are needed by mate-settings-daemon, and mate-settings-daemon is a dependency for mate-control-center (that is, they are mutually recursive)
-        ${addToXDGDirs pkgs.mate.mate-control-center}
+    # Let mate-panel find applets
+    environment.sessionVariables."MATE_PANEL_APPLETS_DIR" = "${config.system.path}/share/mate-panel/applets";
+    environment.sessionVariables."MATE_PANEL_EXTRA_MODULES" = "${config.system.path}/lib/mate-panel/applets";
 
-        ${pkgs.mate.mate-session-manager}/bin/mate-session ${optionalString cfg.debug "--debug"} &
-        waitPID=$!
-      '';
-    };
+    # Debugging
+    environment.sessionVariables.MATE_SESSION_DEBUG = mkIf cfg.debug "1";
 
     environment.systemPackages =
       pkgs.mate.basePackages ++
diff --git a/nixos/modules/services/x11/desktop-managers/pantheon.nix b/nixos/modules/services/x11/desktop-managers/pantheon.nix
index 869c6694489..01fe230b8a4 100644
--- a/nixos/modules/services/x11/desktop-managers/pantheon.nix
+++ b/nixos/modules/services/x11/desktop-managers/pantheon.nix
@@ -181,7 +181,6 @@ in
         hicolor-icon-theme
         lightlocker
         onboard
-        plank
         qgnomeplatform
         shared-mime-info
         sound-theme-freedesktop
@@ -195,6 +194,7 @@ in
 
         # Desktop
         elementary-default-settings
+        elementary-dock
         elementary-session-settings
         elementary-shortcut-overlay
         gala
@@ -206,9 +206,9 @@ in
         })
 
         # Services
-        cerbere
         elementary-capnet-assist
         elementary-dpms-helper
+        elementary-notifications
         elementary-settings-daemon
         pantheon-agent-geoclue2
         pantheon-agent-polkit
diff --git a/nixos/modules/services/x11/desktop-managers/pantheon.xml b/nixos/modules/services/x11/desktop-managers/pantheon.xml
index 4d92a7446c0..9541f2cfd4e 100644
--- a/nixos/modules/services/x11/desktop-managers/pantheon.xml
+++ b/nixos/modules/services/x11/desktop-managers/pantheon.xml
@@ -89,22 +89,6 @@ switchboard-with-plugs.override {
      </para>
     </listitem>
    </varlistentry>
-   <varlistentry xml:id="sec-pantheon-faq-slow-shutdown">
-    <term>
-     Using Pantheon sometimes makes my shutdown take a long time.
-    </term>
-    <listitem>
-     <para>
-      We have not yet determined what processes fight with systemd during shutdown, there are many reports. In elementary OS the default system timeout is lowered to lessen the impact of the issue. If you'd like to do this in NixOS, set
-<programlisting>
- <xref linkend="opt-systemd.extraConfig"/> = ''
-  DefaultTimeoutStopSec=10s
-  DefaultTimeoutStartSec=10s
-'';
-</programlisting>
-     </para>
-    </listitem>
-   </varlistentry>
    <varlistentry xml:id="sec-pantheon-faq-gnome3-and-pantheon">
     <term>
      I cannot enable both GNOME 3 and Pantheon.
diff --git a/nixos/modules/services/x11/desktop-managers/xfce.nix b/nixos/modules/services/x11/desktop-managers/xfce.nix
index a08b1947f65..d39b4d64904 100644
--- a/nixos/modules/services/x11/desktop-managers/xfce.nix
+++ b/nixos/modules/services/x11/desktop-managers/xfce.nix
@@ -8,6 +8,10 @@ in
 
 {
 
+  meta = {
+    maintainers = with maintainers; [ worldofpeace ];
+  };
+
   imports = [
     # added 2019-08-18
     # needed to preserve some semblance of UI familarity
@@ -129,6 +133,7 @@ in
 
     services.xserver.desktopManager.session = [{
       name = "xfce";
+      desktopNames = [ "XFCE" ];
       bgSupport = true;
       start = ''
         ${pkgs.runtimeShell} ${pkgs.xfce.xfce4-session.xinitrc} &
diff --git a/nixos/modules/services/x11/display-managers/account-service-util.nix b/nixos/modules/services/x11/display-managers/account-service-util.nix
index 1dbe703b566..2b08c62d0ad 100644
--- a/nixos/modules/services/x11/display-managers/account-service-util.nix
+++ b/nixos/modules/services/x11/display-managers/account-service-util.nix
@@ -3,6 +3,7 @@
 , gobject-introspection
 , python3
 , wrapGAppsHook
+, lib
 }:
 
 python3.pkgs.buildPythonApplication {
@@ -36,4 +37,8 @@ python3.pkgs.buildPythonApplication {
     cp $src $out/bin/set-session
     chmod +x $out/bin/set-session
   '';
+
+  meta = with lib; {
+    maintainers = with maintainers; [ worldofpeace ];
+  };
 }
diff --git a/nixos/modules/services/x11/display-managers/default.nix b/nixos/modules/services/x11/display-managers/default.nix
index 5d49ca94387..2a7a19e7695 100644
--- a/nixos/modules/services/x11/display-managers/default.nix
+++ b/nixos/modules/services/x11/display-managers/default.nix
@@ -54,14 +54,6 @@ let
         exec &> >(tee ~/.xsession-errors)
       ''}
 
-      # Start PulseAudio if enabled.
-      ${optionalString (config.hardware.pulseaudio.enable) ''
-        # Publish access credentials in the root window.
-        if ${config.hardware.pulseaudio.package.out}/bin/pulseaudio --dump-modules | grep module-x11-publish &> /dev/null; then
-          ${config.hardware.pulseaudio.package.out}/bin/pactl load-module module-x11-publish "display=$DISPLAY"
-        fi
-      ''}
-
       # Tell systemd about our $DISPLAY and $XAUTHORITY.
       # This is needed by the ssh-agent unit.
       #
@@ -412,6 +404,9 @@ in
             (dm: wm: let
               sessionName = "${dm.name}${optionalString (wm.name != "none") ("+" + wm.name)}";
               script = xsession dm wm;
+              desktopNames = if dm ? desktopNames
+                             then concatStringsSep ";" dm.desktopNames
+                             else sessionName;
             in
               optional (dm.name != "none" || wm.name != "none")
                 (pkgs.writeTextFile {
@@ -427,7 +422,7 @@ in
                     TryExec=${script}
                     Exec=${script}
                     Name=${sessionName}
-                    DesktopNames=${sessionName}
+                    DesktopNames=${desktopNames}
                   '';
                 } // {
                   providedSessions = [ sessionName ];
diff --git a/nixos/modules/services/x11/display-managers/gdm.nix b/nixos/modules/services/x11/display-managers/gdm.nix
index e0ac47bb766..d7bef68e5bc 100644
--- a/nixos/modules/services/x11/display-managers/gdm.nix
+++ b/nixos/modules/services/x11/display-managers/gdm.nix
@@ -38,6 +38,10 @@ in
 
 {
 
+  meta = {
+    maintainers = teams.gnome.members;
+  };
+
   ###### interface
 
   options = {
@@ -184,6 +188,9 @@ in
       "systemd-machined.service"
       # setSessionScript wants AccountsService
       "accounts-daemon.service"
+      # Failed to open gpu '/dev/dri/card0': GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: Operation not permitted
+      # https://github.com/NixOS/nixpkgs/pull/25311#issuecomment-609417621
+      "systemd-udev-settle.service"
     ];
 
     systemd.services.display-manager.after = [
@@ -193,6 +200,7 @@ in
       "getty@tty${gdm.initialVT}.service"
       "plymouth-quit.service"
       "plymouth-start.service"
+      "systemd-udev-settle.service"
     ];
     systemd.services.display-manager.conflicts = [
        "getty@tty${gdm.initialVT}.service"
diff --git a/nixos/modules/services/x11/display-managers/lightdm-greeters/pantheon.nix b/nixos/modules/services/x11/display-managers/lightdm-greeters/pantheon.nix
index 77c94114e6d..087c6b9c38a 100644
--- a/nixos/modules/services/x11/display-managers/lightdm-greeters/pantheon.nix
+++ b/nixos/modules/services/x11/display-managers/lightdm-greeters/pantheon.nix
@@ -10,6 +10,10 @@ let
 
 in
 {
+  meta = {
+    maintainers = with maintainers; [ worldofpeace ];
+  };
+
   options = {
 
     services.xserver.displayManager.lightdm.greeters.pantheon = {
diff --git a/nixos/modules/services/x11/display-managers/lightdm.nix b/nixos/modules/services/x11/display-managers/lightdm.nix
index cb7b5f95958..479548863b4 100644
--- a/nixos/modules/services/x11/display-managers/lightdm.nix
+++ b/nixos/modules/services/x11/display-managers/lightdm.nix
@@ -69,6 +69,10 @@ let
 
 in
 {
+  meta = {
+    maintainers = with maintainers; [ worldofpeace ];
+  };
+
   # Note: the order in which lightdm greeter modules are imported
   # here determines the default: later modules (if enable) are
   # preferred.
diff --git a/nixos/modules/services/x11/xserver.nix b/nixos/modules/services/x11/xserver.nix
index 74d702ea1c3..6aec1c0753a 100644
--- a/nixos/modules/services/x11/xserver.nix
+++ b/nixos/modules/services/x11/xserver.nix
@@ -651,8 +651,7 @@ in
     systemd.services.display-manager =
       { description = "X11 Server";
 
-        after = [ "systemd-udev-settle.service" "acpid.service" "systemd-logind.service" ];
-        wants = [ "systemd-udev-settle.service" ];
+        after = [ "acpid.service" "systemd-logind.service" ];
 
         restartIfChanged = false;
 
diff --git a/nixos/modules/system/boot/initrd-ssh.nix b/nixos/modules/system/boot/initrd-ssh.nix
index 2d3e3b05c98..5a334e69056 100644
--- a/nixos/modules/system/boot/initrd-ssh.nix
+++ b/nixos/modules/system/boot/initrd-ssh.nix
@@ -10,19 +10,21 @@ in
 
 {
 
-  options = {
-
-    boot.initrd.network.ssh.enable = mkOption {
+  options.boot.initrd.network.ssh = {
+    enable = mkOption {
       type = types.bool;
       default = false;
       description = ''
         Start SSH service during initrd boot. It can be used to debug failing
         boot on a remote server, enter pasphrase for an encrypted partition etc.
         Service is killed when stage-1 boot is finished.
+
+        The sshd configuration is largely inherited from
+        <option>services.openssh</option>.
       '';
     };
 
-    boot.initrd.network.ssh.port = mkOption {
+    port = mkOption {
       type = types.int;
       default = 22;
       description = ''
@@ -30,7 +32,7 @@ in
       '';
     };
 
-    boot.initrd.network.ssh.shell = mkOption {
+    shell = mkOption {
       type = types.str;
       default = "/bin/ash";
       description = ''
@@ -38,95 +40,163 @@ in
       '';
     };
 
-    boot.initrd.network.ssh.hostRSAKey = mkOption {
-      type = types.nullOr types.path;
-      default = null;
-      description = ''
-        RSA SSH private key file in the Dropbear format.
-
-        WARNING: Unless your bootloader supports initrd secrets, this key is
-        contained insecurely in the global Nix store. Do NOT use your regular
-        SSH host private keys for this purpose or you'll expose them to
-        regular users!
-      '';
-    };
-
-    boot.initrd.network.ssh.hostDSSKey = mkOption {
-      type = types.nullOr types.path;
-      default = null;
+    hostKeys = mkOption {
+      type = types.listOf (types.either types.str types.path);
+      default = [];
+      example = [
+        "/etc/secrets/initrd/ssh_host_rsa_key"
+        "/etc/secrets/initrd/ssh_host_ed25519_key"
+      ];
       description = ''
-        DSS SSH private key file in the Dropbear format.
-
-        WARNING: Unless your bootloader supports initrd secrets, this key is
-        contained insecurely in the global Nix store. Do NOT use your regular
-        SSH host private keys for this purpose or you'll expose them to
-        regular users!
+        Specify SSH host keys to import into the initrd.
+
+        To generate keys, use
+        <citerefentry><refentrytitle>ssh-keygen</refentrytitle><manvolnum>1</manvolnum></citerefentry>:
+
+        <screen>
+        <prompt># </prompt>ssh-keygen -t rsa -N "" -f /etc/secrets/initrd/ssh_host_rsa_key
+        <prompt># </prompt>ssh-keygen -t ed25519 -N "" -f /etc/secrets/initrd/ssh_host_ed_25519_key
+        </screen>
+
+        <warning>
+          <para>
+            Unless your bootloader supports initrd secrets, these keys
+            are stored insecurely in the global Nix store. Do NOT use
+            your regular SSH host private keys for this purpose or
+            you'll expose them to regular users!
+          </para>
+          <para>
+            Additionally, even if your initrd supports secrets, if
+            you're using initrd SSH to unlock an encrypted disk then
+            using your regular host keys exposes the private keys on
+            your unencrypted boot partition.
+          </para>
+        </warning>
       '';
     };
 
-    boot.initrd.network.ssh.hostECDSAKey = mkOption {
-      type = types.nullOr types.path;
-      default = null;
-      description = ''
-        ECDSA SSH private key file in the Dropbear format.
-
-        WARNING: Unless your bootloader supports initrd secrets, this key is
-        contained insecurely in the global Nix store. Do NOT use your regular
-        SSH host private keys for this purpose or you'll expose them to
-        regular users!
-      '';
-    };
-
-    boot.initrd.network.ssh.authorizedKeys = mkOption {
+    authorizedKeys = mkOption {
       type = types.listOf types.str;
       default = config.users.users.root.openssh.authorizedKeys.keys;
+      defaultText = "config.users.users.root.openssh.authorizedKeys.keys";
       description = ''
         Authorized keys for the root user on initrd.
-        Note that Dropbear doesn't support OpenSSH's Ed25519 key type.
       '';
     };
-
   };
 
-  config = mkIf (config.boot.initrd.network.enable && cfg.enable) {
+  imports =
+    map (opt: mkRemovedOptionModule ([ "boot" "initrd" "network" "ssh" ] ++ [ opt ]) ''
+      The initrd SSH functionality now uses OpenSSH rather than Dropbear.
+
+      If you want to keep your existing initrd SSH host keys, convert them with
+        $ dropbearconvert dropbear openssh dropbear_host_$type_key ssh_host_$type_key
+      and then set options.boot.initrd.network.ssh.hostKeys.
+    '') [ "hostRSAKey" "hostDSSKey" "hostECDSAKey" ];
+
+  config = let
+    # Nix complains if you include a store hash in initrd path names, so
+    # as an awful hack we drop the first character of the hash.
+    initrdKeyPath = path: if isString path
+      then path
+      else let name = builtins.baseNameOf path; in
+        builtins.unsafeDiscardStringContext ("/etc/ssh/" +
+          substring 1 (stringLength name) name);
+
+    sshdCfg = config.services.openssh;
+
+    sshdConfig = ''
+      Port ${toString cfg.port}
+
+      PasswordAuthentication no
+      ChallengeResponseAuthentication no
+
+      ${flip concatMapStrings cfg.hostKeys (path: ''
+        HostKey ${initrdKeyPath path}
+      '')}
+
+      KexAlgorithms ${concatStringsSep "," sshdCfg.kexAlgorithms}
+      Ciphers ${concatStringsSep "," sshdCfg.ciphers}
+      MACs ${concatStringsSep "," sshdCfg.macs}
+
+      LogLevel ${sshdCfg.logLevel}
+
+      ${if sshdCfg.useDns then ''
+        UseDNS yes
+      '' else ''
+        UseDNS no
+      ''}
+    '';
+  in mkIf (config.boot.initrd.network.enable && cfg.enable) {
     assertions = [
-      { assertion = cfg.authorizedKeys != [];
+      {
+        assertion = cfg.authorizedKeys != [];
         message = "You should specify at least one authorized key for initrd SSH";
       }
+
+      {
+        assertion = cfg.hostKeys != [];
+        message = ''
+          You must now pre-generate the host keys for initrd SSH.
+          See the boot.initrd.network.ssh.hostKeys documentation
+          for instructions.
+        '';
+      }
     ];
 
     boot.initrd.extraUtilsCommands = ''
-      copy_bin_and_libs ${pkgs.dropbear}/bin/dropbear
+      copy_bin_and_libs ${pkgs.openssh}/bin/sshd
       cp -pv ${pkgs.glibc.out}/lib/libnss_files.so.* $out/lib
     '';
 
     boot.initrd.extraUtilsCommandsTest = ''
-      $out/bin/dropbear -V
+      # sshd requires a host key to check config, so we pass in the test's
+      echo -n ${escapeShellArg sshdConfig} |
+        $out/bin/sshd -t -f /dev/stdin \
+        -h ${../../../tests/initrd-network-ssh/ssh_host_ed25519_key}
     '';
 
     boot.initrd.network.postCommands = ''
       echo '${cfg.shell}' > /etc/shells
       echo 'root:x:0:0:root:/root:${cfg.shell}' > /etc/passwd
+      echo 'sshd:x:1:1:sshd:/var/empty:/bin/nologin' >> /etc/passwd
       echo 'passwd: files' > /etc/nsswitch.conf
 
-      mkdir -p /var/log
+      mkdir -p /var/log /var/empty
       touch /var/log/lastlog
 
-      mkdir -p /etc/dropbear
+      mkdir -p /etc/ssh
+      echo -n ${escapeShellArg sshdConfig} > /etc/ssh/sshd_config
+
+      echo "export PATH=$PATH" >> /etc/profile
+      echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH" >> /etc/profile
 
       mkdir -p /root/.ssh
       ${concatStrings (map (key: ''
         echo ${escapeShellArg key} >> /root/.ssh/authorized_keys
       '') cfg.authorizedKeys)}
 
-      dropbear -s -j -k -E -p ${toString cfg.port} ${optionalString (cfg.hostRSAKey == null && cfg.hostDSSKey == null && cfg.hostECDSAKey == null) "-R"}
+      ${flip concatMapStrings cfg.hostKeys (path: ''
+        # keys from Nix store are world-readable, which sshd doesn't like
+        chmod 0600 "${initrdKeyPath path}"
+      '')}
+
+      /bin/sshd -e
     '';
 
-    boot.initrd.secrets =
-     (optionalAttrs (cfg.hostRSAKey != null) { "/etc/dropbear/dropbear_rsa_host_key" = cfg.hostRSAKey; }) //
-     (optionalAttrs (cfg.hostDSSKey != null) { "/etc/dropbear/dropbear_dss_host_key" = cfg.hostDSSKey; }) //
-     (optionalAttrs (cfg.hostECDSAKey != null) { "/etc/dropbear/dropbear_ecdsa_host_key" = cfg.hostECDSAKey; });
+    boot.initrd.postMountCommands = ''
+      # Stop sshd cleanly before stage 2.
+      #
+      # If you want to keep it around to debug post-mount SSH issues,
+      # run `touch /.keep_sshd` (either from an SSH session or in
+      # another initrd hook like preDeviceCommands).
+      if ! [ -e /.keep_sshd ]; then
+        pkill -x sshd
+      fi
+    '';
 
+    boot.initrd.secrets = listToAttrs
+      (map (path: nameValuePair (initrdKeyPath path) path) cfg.hostKeys);
   };
 
 }
diff --git a/nixos/modules/system/boot/stage-1.nix b/nixos/modules/system/boot/stage-1.nix
index 93cd801ef80..9e3ee5cf0a3 100644
--- a/nixos/modules/system/boot/stage-1.nix
+++ b/nixos/modules/system/boot/stage-1.nix
@@ -142,7 +142,10 @@ let
              let source' = if source == null then dest else source; in
                ''
                   mkdir -p $(dirname "$out/secrets/${dest}")
-                  cp -a ${source'} "$out/secrets/${dest}"
+                  # Some programs (e.g. ssh) doesn't like secrets to be
+                  # symlinks, so we use `cp -L` here to match the
+                  # behaviour when secrets are natively supported.
+                  cp -Lr ${source'} "$out/secrets/${dest}"
                 ''
           ) config.boot.initrd.secrets))
        }
diff --git a/nixos/modules/system/boot/systemd.nix b/nixos/modules/system/boot/systemd.nix
index cdc9d237939..7f207e6c7ef 100644
--- a/nixos/modules/system/boot/systemd.nix
+++ b/nixos/modules/system/boot/systemd.nix
@@ -842,7 +842,6 @@ in
         [Manager]
         ${optionalString config.systemd.enableCgroupAccounting ''
           DefaultCPUAccounting=yes
-          DefaultBlockIOAccounting=yes
           DefaultIOAccounting=yes
           DefaultBlockIOAccounting=yes
           DefaultIPAccounting=yes
diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix
index 09c7e074e12..43347161a84 100644
--- a/nixos/modules/tasks/filesystems/zfs.nix
+++ b/nixos/modules/tasks/filesystems/zfs.nix
@@ -433,6 +433,7 @@ in
 
       services.zfs.zed.settings = {
         ZED_EMAIL_PROG = mkDefault "${pkgs.mailutils}/bin/mail";
+        PATH = lib.makeBinPath [ packages.zfsUser pkgs.utillinux pkgs.gawk pkgs.gnused pkgs.gnugrep pkgs.coreutils pkgs.curl ];
       };
 
       environment.etc = genAttrs
@@ -478,6 +479,7 @@ in
         createImportService = pool:
           nameValuePair "zfs-import-${pool}" {
             description = "Import ZFS pool \"${pool}\"";
+            # we need systemd-udev-settle until https://github.com/zfsonlinux/zfs/pull/4943 is merged
             requires = [ "systemd-udev-settle.service" ];
             after = [ "systemd-udev-settle.service" "systemd-modules-load.service" ];
             wantedBy = (getPoolMounts pool) ++ [ "local-fs.target" ];
diff --git a/nixos/modules/tasks/network-interfaces-scripted.nix b/nixos/modules/tasks/network-interfaces-scripted.nix
index 4d25137c5df..98bae444df0 100644
--- a/nixos/modules/tasks/network-interfaces-scripted.nix
+++ b/nixos/modules/tasks/network-interfaces-scripted.nix
@@ -291,13 +291,19 @@ let
 
               ${optionalString config.virtualisation.libvirtd.enable ''
                   # Enslave dynamically added interfaces which may be lost on nixos-rebuild
-                  for uri in qemu:///system lxc:///; do
-                    for dom in $(${pkgs.libvirt}/bin/virsh -c $uri list --name); do
-                      ${pkgs.libvirt}/bin/virsh -c $uri dumpxml "$dom" | \
-                      ${pkgs.xmlstarlet}/bin/xmlstarlet sel -t -m "//domain/devices/interface[@type='bridge'][source/@bridge='${n}'][target/@dev]" -v "concat('ip link set ',target/@dev,' master ',source/@bridge,';')" | \
-                      ${pkgs.bash}/bin/bash
+                  #
+                  # if `libvirtd.service` is not running, do not use `virsh` which would try activate it via 'libvirtd.socket' and thus start it out-of-order.
+                  # `libvirtd.service` will set up bridge interfaces when it will start normally.
+                  #
+                  if ${pkgs.systemd}/bin/systemctl --quiet is-active 'libvirtd.service'; then
+                    for uri in qemu:///system lxc:///; do
+                      for dom in $(${pkgs.libvirt}/bin/virsh -c $uri list --name); do
+                        ${pkgs.libvirt}/bin/virsh -c $uri dumpxml "$dom" | \
+                        ${pkgs.xmlstarlet}/bin/xmlstarlet sel -t -m "//domain/devices/interface[@type='bridge'][source/@bridge='${n}'][target/@dev]" -v "concat('ip link set ',target/@dev,' master ',source/@bridge,';')" | \
+                        ${pkgs.bash}/bin/bash
+                      done
                     done
-                  done
+                  fi
                 ''}
 
               # Enable stp on the interface
diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix
index 9542a60beee..63a79abd4eb 100644
--- a/nixos/modules/tasks/network-interfaces.nix
+++ b/nixos/modules/tasks/network-interfaces.nix
@@ -634,19 +634,23 @@ in
 
     networking.bonds =
       let
-        driverOptionsExample = {
-          miimon = "100";
-          mode = "active-backup";
-        };
+        driverOptionsExample =  ''
+          {
+            miimon = "100";
+            mode = "active-backup";
+          }
+        '';
       in mkOption {
         default = { };
-        example = literalExample {
-          bond0 = {
-            interfaces = [ "eth0" "wlan0" ];
-            driverOptions = driverOptionsExample;
-          };
-          anotherBond.interfaces = [ "enp4s0f0" "enp4s0f1" "enp5s0f0" "enp5s0f1" ];
-        };
+        example = literalExample ''
+          {
+            bond0 = {
+              interfaces = [ "eth0" "wlan0" ];
+              driverOptions = ${driverOptionsExample};
+            };
+            anotherBond.interfaces = [ "enp4s0f0" "enp4s0f1" "enp5s0f0" "enp5s0f1" ];
+          }
+        '';
         description = ''
           This option allows you to define bond devices that aggregate multiple,
           underlying networking interfaces together. The value of this option is
@@ -731,12 +735,14 @@ in
 
     networking.macvlans = mkOption {
       default = { };
-      example = literalExample {
-        wan = {
-          interface = "enp2s0";
-          mode = "vepa";
-        };
-      };
+      example = literalExample ''
+        {
+          wan = {
+            interface = "enp2s0";
+            mode = "vepa";
+          };
+        }
+      '';
       description = ''
         This option allows you to define macvlan interfaces which should
         be automatically created.
@@ -764,18 +770,20 @@ in
 
     networking.sits = mkOption {
       default = { };
-      example = literalExample {
-        hurricane = {
-          remote = "10.0.0.1";
-          local = "10.0.0.22";
-          ttl = 255;
-        };
-        msipv6 = {
-          remote = "192.168.0.1";
-          dev = "enp3s0";
-          ttl = 127;
-        };
-      };
+      example = literalExample ''
+        {
+          hurricane = {
+            remote = "10.0.0.1";
+            local = "10.0.0.22";
+            ttl = 255;
+          };
+          msipv6 = {
+            remote = "192.168.0.1";
+            dev = "enp3s0";
+            ttl = 127;
+          };
+        }
+      '';
       description = ''
         This option allows you to define 6-to-4 interfaces which should be automatically created.
       '';
@@ -826,16 +834,18 @@ in
 
     networking.vlans = mkOption {
       default = { };
-      example = literalExample {
-        vlan0 = {
-          id = 3;
-          interface = "enp3s0";
-        };
-        vlan1 = {
-          id = 1;
-          interface = "wlan0";
-        };
-      };
+      example = literalExample ''
+        {
+          vlan0 = {
+            id = 3;
+            interface = "enp3s0";
+          };
+          vlan1 = {
+            id = 1;
+            interface = "wlan0";
+          };
+        }
+      '';
       description =
         ''
           This option allows you to define vlan devices that tag packets
@@ -868,24 +878,26 @@ in
 
     networking.wlanInterfaces = mkOption {
       default = { };
-      example = literalExample {
-        wlan-station0 = {
-            device = "wlp6s0";
-        };
-        wlan-adhoc0 = {
-            type = "ibss";
-            device = "wlp6s0";
-            mac = "02:00:00:00:00:01";
-        };
-        wlan-p2p0 = {
-            device = "wlp6s0";
-            mac = "02:00:00:00:00:02";
-        };
-        wlan-ap0 = {
-            device = "wlp6s0";
-            mac = "02:00:00:00:00:03";
-        };
-      };
+      example = literalExample ''
+        {
+          wlan-station0 = {
+              device = "wlp6s0";
+          };
+          wlan-adhoc0 = {
+              type = "ibss";
+              device = "wlp6s0";
+              mac = "02:00:00:00:00:01";
+          };
+          wlan-p2p0 = {
+              device = "wlp6s0";
+              mac = "02:00:00:00:00:02";
+          };
+          wlan-ap0 = {
+              device = "wlp6s0";
+              mac = "02:00:00:00:00:03";
+          };
+        }
+      '';
       description =
         ''
           Creating multiple WLAN interfaces on top of one physical WLAN device (NIC).
diff --git a/nixos/modules/virtualisation/azure-common.nix b/nixos/modules/virtualisation/azure-common.nix
index 03239991b95..8efa177e30d 100644
--- a/nixos/modules/virtualisation/azure-common.nix
+++ b/nixos/modules/virtualisation/azure-common.nix
@@ -15,6 +15,8 @@ with lib;
   boot.loader.grub.version = 2;
   boot.loader.timeout = 0;
 
+  boot.growPartition = true;
+
   # Don't put old configurations in the GRUB menu.  The user has no
   # way to select them anyway.
   boot.loader.grub.configurationLimit = 0;
diff --git a/nixos/modules/virtualisation/azure-image.nix b/nixos/modules/virtualisation/azure-image.nix
index e91dd72ff5d..21fd58e5c90 100644
--- a/nixos/modules/virtualisation/azure-image.nix
+++ b/nixos/modules/virtualisation/azure-image.nix
@@ -2,27 +2,38 @@
 
 with lib;
 let
-  diskSize = 2048;
+  cfg = config.virtualisation.azureImage;
 in
 {
-  system.build.azureImage = import ../../lib/make-disk-image.nix {
-    name = "azure-image";
-    postVM = ''
-      ${pkgs.vmTools.qemu}/bin/qemu-img convert -f raw -o subformat=fixed,force_size -O vpc $diskImage $out/disk.vhd
-    '';
-    configFile = ./azure-config-user.nix;
-    format = "raw";
-    inherit diskSize;
-    inherit config lib pkgs;
-  };
-
   imports = [ ./azure-common.nix ];
+  
+  options = {
+    virtualisation.azureImage.diskSize = mkOption {
+      type = with types; int;
+      default = 2048;
+      description = ''
+        Size of disk image. Unit is MB.
+      '';
+    };
+  };
+  config = {
+    system.build.azureImage = import ../../lib/make-disk-image.nix {
+      name = "azure-image";
+      postVM = ''
+        ${pkgs.vmTools.qemu}/bin/qemu-img convert -f raw -o subformat=fixed,force_size -O vpc $diskImage $out/disk.vhd
+        rm $diskImage
+      '';
+      configFile = ./azure-config-user.nix;
+      format = "raw";
+      inherit (cfg) diskSize;
+      inherit config lib pkgs;
+    };
 
-  # Azure metadata is available as a CD-ROM drive.
-  fileSystems."/metadata".device = "/dev/sr0";
+    # Azure metadata is available as a CD-ROM drive.
+    fileSystems."/metadata".device = "/dev/sr0";
 
-  systemd.services.fetch-ssh-keys =
-    { description = "Fetch host keys and authorized_keys for root user";
+    systemd.services.fetch-ssh-keys = {
+      description = "Fetch host keys and authorized_keys for root user";
 
       wantedBy = [ "sshd.service" "waagent.service" ];
       before = [ "sshd.service" "waagent.service" ];
@@ -54,6 +65,6 @@ in
       serviceConfig.RemainAfterExit = true;
       serviceConfig.StandardError = "journal+console";
       serviceConfig.StandardOutput = "journal+console";
-     };
-
+    };
+  };
 }
diff --git a/nixos/modules/virtualisation/containers.nix b/nixos/modules/virtualisation/containers.nix
index 02de5801da2..dad211ef55b 100644
--- a/nixos/modules/virtualisation/containers.nix
+++ b/nixos/modules/virtualisation/containers.nix
@@ -609,9 +609,11 @@ in
             bindMounts = mkOption {
               type = with types; loaOf (submodule bindMountOpts);
               default = {};
-              example = { "/home" = { hostPath = "/home/alice";
-                                      isReadOnly = false; };
-                        };
+              example = literalExample ''
+                { "/home" = { hostPath = "/home/alice";
+                              isReadOnly = false; };
+                }
+              '';
 
               description =
                 ''
diff --git a/nixos/modules/virtualisation/libvirtd.nix b/nixos/modules/virtualisation/libvirtd.nix
index 9f7bac480e3..4f22099443f 100644
--- a/nixos/modules/virtualisation/libvirtd.nix
+++ b/nixos/modules/virtualisation/libvirtd.nix
@@ -214,14 +214,14 @@ in {
     };
 
     systemd.services.libvirtd = {
-      description = "Libvirt Virtual Machine Management Daemon";
-
-      wantedBy = [ "multi-user.target" ];
       requires = [ "libvirtd-config.service" ];
       after = [ "systemd-udev-settle.service" "libvirtd-config.service" ]
               ++ optional vswitch.enable "ovs-vswitchd.service";
 
-      environment.LIBVIRTD_ARGS = ''--config "${configFile}" ${concatStringsSep " " cfg.extraOptions}'';
+      environment.LIBVIRTD_ARGS = escapeShellArgs (
+        [ "--config" configFile
+          "--timeout" "120"     # from ${libvirt}/var/lib/sysconfig/libvirtd
+        ] ++ cfg.extraOptions);
 
       path = [ cfg.qemuPackage ] # libvirtd requires qemu-img to manage disk images
              ++ optional vswitch.enable vswitch.package;
@@ -266,5 +266,8 @@ in {
       serviceConfig.ExecStart = "@${pkgs.libvirt}/sbin/virtlockd virtlockd";
       restartIfChanged = false;
     };
+
+    systemd.sockets.libvirtd    .wantedBy = [ "sockets.target" ];
+    systemd.sockets.libvirtd-tcp.wantedBy = [ "sockets.target" ];
   };
 }
diff --git a/nixos/release-combined.nix b/nixos/release-combined.nix
index 9377a931a75..02f19610f8a 100644
--- a/nixos/release-combined.nix
+++ b/nixos/release-combined.nix
@@ -38,98 +38,102 @@ in rec {
     nixpkgs = nixpkgsSrc;
   })) [ "unstable" ];
 
-  tested = pkgs.releaseTools.aggregate {
-    name = "nixos-${nixos.channel.version}";
-    meta = {
-      description = "Release-critical builds for the NixOS channel";
-      maintainers = with pkgs.lib.maintainers; [ eelco fpletz ];
+  tested =
+    let
+      onFullSupported = x: map (system: "${x}.${system}") supportedSystems;
+      onAllSupported = x: map (system: "${x}.${system}") (supportedSystems ++ limitedSupportedSystems);
+      onSystems = systems: x: map (system: "${x}.${system}")
+        (pkgs.lib.intersectLists systems (supportedSystems ++ limitedSupportedSystems));
+    in pkgs.releaseTools.aggregate {
+      name = "nixos-${nixos.channel.version}";
+      meta = {
+        description = "Release-critical builds for the NixOS channel";
+        maintainers = with pkgs.lib.maintainers; [ eelco fpletz ];
+      };
+      constituents = pkgs.lib.concatLists [
+        [ "nixos.channel" ]
+        (onFullSupported "nixos.dummy")
+        (onAllSupported "nixos.iso_minimal")
+        (onSystems ["x86_64-linux"] "nixos.iso_plasma5")
+        (onFullSupported "nixos.manual")
+        (onSystems ["x86_64-linux"] "nixos.ova")
+        (onSystems ["aarch64-linux"] "nixos.sd_image")
+        (onSystems ["x86_64-linux"] "nixos.tests.boot.biosCdrom")
+        (onSystems ["x86_64-linux"] "nixos.tests.boot.biosUsb")
+        (onFullSupported "nixos.tests.boot-stage1")
+        (onSystems ["x86_64-linux"] "nixos.tests.boot.uefiCdrom")
+        (onSystems ["x86_64-linux"] "nixos.tests.boot.uefiUsb")
+        (onSystems ["x86_64-linux"] "nixos.tests.chromium")
+        (onFullSupported "nixos.tests.containers-imperative")
+        (onFullSupported "nixos.tests.containers-ip")
+        (onSystems ["x86_64-linux"] "nixos.tests.docker")
+        (onFullSupported "nixos.tests.ecryptfs")
+        (onFullSupported "nixos.tests.env")
+        (onFullSupported "nixos.tests.firefox-esr")
+        (onFullSupported "nixos.tests.firefox")
+        (onFullSupported "nixos.tests.firewall")
+        (onFullSupported "nixos.tests.fontconfig-default-fonts")
+        (onFullSupported "nixos.tests.gnome3")
+        (onFullSupported "nixos.tests.gnome3-xorg")
+        (onSystems ["x86_64-linux"] "nixos.tests.hibernate")
+        (onFullSupported "nixos.tests.i3wm")
+        (onSystems ["x86_64-linux"] "nixos.tests.installer.btrfsSimple")
+        (onSystems ["x86_64-linux"] "nixos.tests.installer.btrfsSubvolDefault")
+        (onSystems ["x86_64-linux"] "nixos.tests.installer.btrfsSubvols")
+        (onSystems ["x86_64-linux"] "nixos.tests.installer.luksroot")
+        (onSystems ["x86_64-linux"] "nixos.tests.installer.lvm")
+        (onSystems ["x86_64-linux"] "nixos.tests.installer.separateBootFat")
+        (onSystems ["x86_64-linux"] "nixos.tests.installer.separateBoot")
+        (onSystems ["x86_64-linux"] "nixos.tests.installer.simpleLabels")
+        (onSystems ["x86_64-linux"] "nixos.tests.installer.simpleProvided")
+        (onSystems ["x86_64-linux"] "nixos.tests.installer.simpleUefiSystemdBoot")
+        (onSystems ["x86_64-linux"] "nixos.tests.installer.simple")
+        (onSystems ["x86_64-linux"] "nixos.tests.installer.swraid")
+        (onFullSupported "nixos.tests.ipv6")
+        (onFullSupported "nixos.tests.keymap.azerty")
+        (onFullSupported "nixos.tests.keymap.colemak")
+        (onFullSupported "nixos.tests.keymap.dvorak")
+        (onFullSupported "nixos.tests.keymap.dvp")
+        (onFullSupported "nixos.tests.keymap.neo")
+        (onFullSupported "nixos.tests.keymap.qwertz")
+        (onFullSupported "nixos.tests.lightdm")
+        (onFullSupported "nixos.tests.login")
+        (onFullSupported "nixos.tests.misc")
+        (onFullSupported "nixos.tests.mutableUsers")
+        (onFullSupported "nixos.tests.nat.firewall-conntrack")
+        (onFullSupported "nixos.tests.nat.firewall")
+        (onFullSupported "nixos.tests.nat.standalone")
+        (onFullSupported "nixos.tests.networking.scripted.bond")
+        (onFullSupported "nixos.tests.networking.scripted.bridge")
+        (onFullSupported "nixos.tests.networking.scripted.dhcpOneIf")
+        (onFullSupported "nixos.tests.networking.scripted.dhcpSimple")
+        (onFullSupported "nixos.tests.networking.scripted.loopback")
+        (onFullSupported "nixos.tests.networking.scripted.macvlan")
+        (onFullSupported "nixos.tests.networking.scripted.sit")
+        (onFullSupported "nixos.tests.networking.scripted.static")
+        (onFullSupported "nixos.tests.networking.scripted.vlan")
+        (onFullSupported "nixos.tests.nfs3.simple")
+        (onFullSupported "nixos.tests.nfs4.simple")
+        (onFullSupported "nixos.tests.openssh")
+        (onFullSupported "nixos.tests.pantheon")
+        (onFullSupported "nixos.tests.php.fpm")
+        (onFullSupported "nixos.tests.php.pcre")
+        (onFullSupported "nixos.tests.plasma5")
+        (onFullSupported "nixos.tests.predictable-interface-names.predictableNetworkd")
+        (onFullSupported "nixos.tests.predictable-interface-names.predictable")
+        (onFullSupported "nixos.tests.predictable-interface-names.unpredictableNetworkd")
+        (onFullSupported "nixos.tests.predictable-interface-names.unpredictable")
+        (onFullSupported "nixos.tests.printing")
+        (onFullSupported "nixos.tests.proxy")
+        (onFullSupported "nixos.tests.sddm.default")
+        (onFullSupported "nixos.tests.simple")
+        (onFullSupported "nixos.tests.switchTest")
+        (onFullSupported "nixos.tests.udisks2")
+        (onFullSupported "nixos.tests.xfce")
+        (onSystems ["i686-linux"] "nixos.tests.zfs.installer")
+        (onFullSupported "nixpkgs.emacs")
+        (onFullSupported "nixpkgs.jdk")
+        ["nixpkgs.tarball"]
+      ];
     };
-    constituents = [
-      "nixos.channel"
-      "nixos.dummy.x86_64-linux"
-      "nixos.iso_minimal.aarch64-linux"
-      "nixos.iso_minimal.i686-linux"
-      "nixos.iso_minimal.x86_64-linux"
-      "nixos.iso_plasma5.x86_64-linux"
-      "nixos.manual.x86_64-linux"
-      "nixos.ova.x86_64-linux"
-      "nixos.sd_image.aarch64-linux"
-      "nixos.tests.boot.biosCdrom.x86_64-linux"
-      "nixos.tests.boot.biosUsb.x86_64-linux"
-      "nixos.tests.boot-stage1.x86_64-linux"
-      "nixos.tests.boot.uefiCdrom.x86_64-linux"
-      "nixos.tests.boot.uefiUsb.x86_64-linux"
-      "nixos.tests.chromium.x86_64-linux"
-      "nixos.tests.containers-imperative.x86_64-linux"
-      "nixos.tests.containers-ip.x86_64-linux"
-      "nixos.tests.docker.x86_64-linux"
-      "nixos.tests.ecryptfs.x86_64-linux"
-      "nixos.tests.env.x86_64-linux"
-      "nixos.tests.firefox-esr.x86_64-linux"
-      "nixos.tests.firefox.x86_64-linux"
-      "nixos.tests.firewall.x86_64-linux"
-      "nixos.tests.fontconfig-default-fonts.x86_64-linux"
-      "nixos.tests.gnome3.x86_64-linux"
-      "nixos.tests.gnome3-xorg.x86_64-linux"
-      "nixos.tests.hibernate.x86_64-linux"
-      "nixos.tests.i3wm.x86_64-linux"
-      "nixos.tests.installer.btrfsSimple.x86_64-linux"
-      "nixos.tests.installer.btrfsSubvolDefault.x86_64-linux"
-      "nixos.tests.installer.btrfsSubvols.x86_64-linux"
-      "nixos.tests.installer.luksroot.x86_64-linux"
-      "nixos.tests.installer.lvm.x86_64-linux"
-      "nixos.tests.installer.separateBootFat.x86_64-linux"
-      "nixos.tests.installer.separateBoot.x86_64-linux"
-      "nixos.tests.installer.simpleLabels.x86_64-linux"
-      "nixos.tests.installer.simpleProvided.x86_64-linux"
-      "nixos.tests.installer.simpleUefiSystemdBoot.x86_64-linux"
-      "nixos.tests.installer.simple.x86_64-linux"
-      "nixos.tests.installer.swraid.x86_64-linux"
-      "nixos.tests.ipv6.x86_64-linux"
-      "nixos.tests.keymap.azerty.x86_64-linux"
-      "nixos.tests.keymap.colemak.x86_64-linux"
-      "nixos.tests.keymap.dvorak.x86_64-linux"
-      "nixos.tests.keymap.dvp.x86_64-linux"
-      "nixos.tests.keymap.neo.x86_64-linux"
-      "nixos.tests.keymap.qwertz.x86_64-linux"
-      "nixos.tests.lightdm.x86_64-linux"
-      "nixos.tests.login.x86_64-linux"
-      "nixos.tests.misc.x86_64-linux"
-      "nixos.tests.mutableUsers.x86_64-linux"
-      "nixos.tests.nat.firewall-conntrack.x86_64-linux"
-      "nixos.tests.nat.firewall.x86_64-linux"
-      "nixos.tests.nat.standalone.x86_64-linux"
-      "nixos.tests.networking.scripted.bond.x86_64-linux"
-      "nixos.tests.networking.scripted.bridge.x86_64-linux"
-      "nixos.tests.networking.scripted.dhcpOneIf.x86_64-linux"
-      "nixos.tests.networking.scripted.dhcpSimple.x86_64-linux"
-      "nixos.tests.networking.scripted.loopback.x86_64-linux"
-      "nixos.tests.networking.scripted.macvlan.x86_64-linux"
-      "nixos.tests.networking.scripted.sit.x86_64-linux"
-      "nixos.tests.networking.scripted.static.x86_64-linux"
-      "nixos.tests.networking.scripted.vlan.x86_64-linux"
-      "nixos.tests.nfs3.simple.x86_64-linux"
-      "nixos.tests.nfs4.simple.x86_64-linux"
-      "nixos.tests.openssh.x86_64-linux"
-      "nixos.tests.pantheon.x86_64-linux"
-      "nixos.tests.php-pcre.x86_64-linux"
-      "nixos.tests.plasma5.x86_64-linux"
-      "nixos.tests.predictable-interface-names.predictableNetworkd.x86_64-linux"
-      "nixos.tests.predictable-interface-names.predictable.x86_64-linux"
-      "nixos.tests.predictable-interface-names.unpredictableNetworkd.x86_64-linux"
-      "nixos.tests.predictable-interface-names.unpredictable.x86_64-linux"
-      "nixos.tests.printing.x86_64-linux"
-      "nixos.tests.proxy.x86_64-linux"
-      "nixos.tests.sddm.default.x86_64-linux"
-      "nixos.tests.simple.x86_64-linux"
-      "nixos.tests.switchTest.x86_64-linux"
-      "nixos.tests.udisks2.x86_64-linux"
-      "nixos.tests.xfce.x86_64-linux"
-      "nixos.tests.zfs.installer.i686-linux"
-      "nixpkgs.emacs.x86_64-linux"
-      "nixpkgs.jdk.x86_64-linux"
-      "nixpkgs.tarball"
-    ];
-  };
-
 }
diff --git a/nixos/release-small.nix b/nixos/release-small.nix
index 7b86a91357e..6da2c59cedd 100644
--- a/nixos/release-small.nix
+++ b/nixos/release-small.nix
@@ -28,7 +28,7 @@ let
 in rec {
 
   nixos = {
-    inherit (nixos') channel manual iso_minimal dummy;
+    inherit (nixos') channel manual options iso_minimal dummy;
     tests = {
       inherit (nixos'.tests)
         containers-imperative
@@ -40,7 +40,7 @@ in rec {
         nat
         nfs3
         openssh
-        php-pcre
+        php
         predictable-interface-names
         proxy
         simple;
@@ -108,7 +108,8 @@ in rec {
         "nixos.tests.nat.standalone.x86_64-linux"
         "nixos.tests.nfs3.simple.x86_64-linux"
         "nixos.tests.openssh.x86_64-linux"
-        "nixos.tests.php-pcre.x86_64-linux"
+        "nixos.tests.php.fpm.x86_64-linux"
+        "nixos.tests.php.pcre.x86_64-linux"
         "nixos.tests.predictable-interface-names.predictable.x86_64-linux"
         "nixos.tests.predictable-interface-names.predictableNetworkd.x86_64-linux"
         "nixos.tests.predictable-interface-names.unpredictable.x86_64-linux"
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index 51b463747b0..76ca4941617 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -97,6 +97,7 @@ in
   fontconfig-default-fonts = handleTest ./fontconfig-default-fonts.nix {};
   freeswitch = handleTest ./freeswitch.nix {};
   fsck = handleTest ./fsck.nix {};
+  gerrit = handleTest ./gerrit.nix {};
   gotify-server = handleTest ./gotify-server.nix {};
   grocy = handleTest ./grocy.nix {};
   gitdaemon = handleTest ./gitdaemon.nix {};
@@ -120,12 +121,16 @@ in
   handbrake = handleTestOn ["x86_64-linux"] ./handbrake.nix {};
   haproxy = handleTest ./haproxy.nix {};
   hardened = handleTest ./hardened.nix {};
-  hibernate = handleTest ./hibernate.nix {};
+  # 9pnet_virtio used to mount /nix partition doesn't support
+  # hibernation. This test happens to work on x86_64-linux but
+  # not on other platforms.
+  hibernate = handleTestOn ["x86_64-linux"] ./hibernate.nix {};
   hitch = handleTest ./hitch {};
   hocker-fetchdocker = handleTest ./hocker-fetchdocker {};
   home-assistant = handleTest ./home-assistant.nix {};
   hound = handleTest ./hound.nix {};
   hydra = handleTest ./hydra {};
+  hydra-db-migration = handleTest ./hydra/db-migration.nix {};
   i3wm = handleTest ./i3wm.nix {};
   icingaweb2 = handleTest ./icingaweb2.nix {};
   iftop = handleTest ./iftop.nix {};
@@ -165,6 +170,7 @@ in
   #logstash = handleTest ./logstash.nix {};
   lorri = handleTest ./lorri/default.nix {};
   magnetico = handleTest ./magnetico.nix {};
+  magic-wormhole-mailbox-server = handleTest ./magic-wormhole-mailbox-server.nix {};
   mailcatcher = handleTest ./mailcatcher.nix {};
   mathics = handleTest ./mathics.nix {};
   matomo = handleTest ./matomo.nix {};
@@ -210,6 +216,7 @@ in
   nghttpx = handleTest ./nghttpx.nix {};
   nginx = handleTest ./nginx.nix {};
   nginx-etag = handleTest ./nginx-etag.nix {};
+  nginx-pubhtml = handleTest ./nginx-pubhtml.nix {};
   nginx-sso = handleTest ./nginx-sso.nix {};
   nix-ssh-serve = handleTest ./nix-ssh-serve.nix {};
   nixos-generate-config = handleTest ./nixos-generate-config.nix {};
@@ -234,7 +241,7 @@ in
   peerflix = handleTest ./peerflix.nix {};
   pgjwt = handleTest ./pgjwt.nix {};
   pgmanage = handleTest ./pgmanage.nix {};
-  php-pcre = handleTest ./php-pcre.nix {};
+  php = handleTest ./php {};
   plasma5 = handleTest ./plasma5.nix {};
   plotinus = handleTest ./plotinus.nix {};
   postgis = handleTest ./postgis.nix {};
@@ -250,6 +257,7 @@ in
   prosodyMysql = handleTest ./xmpp/prosody-mysql.nix {};
   proxy = handleTest ./proxy.nix {};
   quagga = handleTest ./quagga.nix {};
+  quorum = handleTest ./quorum.nix {};
   rabbitmq = handleTest ./rabbitmq.nix {};
   radarr = handleTest ./radarr.nix {};
   radicale = handleTest ./radicale.nix {};
@@ -306,6 +314,7 @@ in
   vault = handleTest ./vault.nix {};
   victoriametrics = handleTest ./victoriametrics.nix {};
   virtualbox = handleTestOn ["x86_64-linux"] ./virtualbox.nix {};
+  wg-quick = handleTest ./wireguard/wg-quick.nix {};
   wireguard = handleTest ./wireguard {};
   wireguard-generated = handleTest ./wireguard/generated.nix {};
   wireguard-namespaces = handleTest ./wireguard/namespaces.nix {};
diff --git a/nixos/tests/ceph-multi-node.nix b/nixos/tests/ceph-multi-node.nix
index 90dd747525d..22fe5cada48 100644
--- a/nixos/tests/ceph-multi-node.nix
+++ b/nixos/tests/ceph-multi-node.nix
@@ -183,15 +183,15 @@ let
     monA.wait_until_succeeds("ceph -s | grep 'HEALTH_OK'")
 
     monA.succeed(
-        "ceph osd pool create multi-node-test 100 100",
+        "ceph osd pool create multi-node-test 128 128",
         "ceph osd pool ls | grep 'multi-node-test'",
         "ceph osd pool rename multi-node-test multi-node-other-test",
         "ceph osd pool ls | grep 'multi-node-other-test'",
     )
-    monA.wait_until_succeeds("ceph -s | grep '1 pools, 100 pgs'")
+    monA.wait_until_succeeds("ceph -s | grep '1 pools, 128 pgs'")
     monA.succeed("ceph osd pool set multi-node-other-test size 2")
     monA.wait_until_succeeds("ceph -s | grep 'HEALTH_OK'")
-    monA.wait_until_succeeds("ceph -s | grep '100 active+clean'")
+    monA.wait_until_succeeds("ceph -s | grep '128 active+clean'")
     monA.fail(
         "ceph osd pool ls | grep 'multi-node-test'",
         "ceph osd pool delete multi-node-other-test multi-node-other-test --yes-i-really-really-mean-it",
diff --git a/nixos/tests/ceph-single-node.nix b/nixos/tests/ceph-single-node.nix
index 1a027e17836..01c4b413845 100644
--- a/nixos/tests/ceph-single-node.nix
+++ b/nixos/tests/ceph-single-node.nix
@@ -143,12 +143,12 @@ let
     monA.wait_until_succeeds("ceph -s | grep 'HEALTH_OK'")
 
     monA.succeed(
-        "ceph osd pool create single-node-test 100 100",
+        "ceph osd pool create single-node-test 128 128",
         "ceph osd pool ls | grep 'single-node-test'",
         "ceph osd pool rename single-node-test single-node-other-test",
         "ceph osd pool ls | grep 'single-node-other-test'",
     )
-    monA.wait_until_succeeds("ceph -s | grep '1 pools, 100 pgs'")
+    monA.wait_until_succeeds("ceph -s | grep '1 pools, 128 pgs'")
     monA.succeed(
         "ceph osd getcrushmap -o crush",
         "crushtool -d crush -o decrushed",
@@ -158,7 +158,7 @@ let
         "ceph osd pool set single-node-other-test size 2",
     )
     monA.wait_until_succeeds("ceph -s | grep 'HEALTH_OK'")
-    monA.wait_until_succeeds("ceph -s | grep '100 active+clean'")
+    monA.wait_until_succeeds("ceph -s | grep '128 active+clean'")
     monA.fail(
         "ceph osd pool ls | grep 'multi-node-test'",
         "ceph osd pool delete single-node-other-test single-node-other-test --yes-i-really-really-mean-it",
diff --git a/nixos/tests/dovecot.nix b/nixos/tests/dovecot.nix
index c19850f418b..bcbe234fd80 100644
--- a/nixos/tests/dovecot.nix
+++ b/nixos/tests/dovecot.nix
@@ -8,7 +8,7 @@ import ./make-test-python.nix {
     services.dovecot2.protocols = [ "imap" "pop3" ];
     environment.systemPackages = let
       sendTestMail = pkgs.writeScriptBin "send-testmail" ''
-        #!${pkgs.stdenv.shell}
+        #!${pkgs.runtimeShell}
         exec sendmail -vt <<MAIL
         From: root@localhost
         To: alice@localhost
@@ -19,7 +19,7 @@ import ./make-test-python.nix {
       '';
 
       sendTestMailViaDeliveryAgent = pkgs.writeScriptBin "send-lda" ''
-        #!${pkgs.stdenv.shell}
+        #!${pkgs.runtimeShell}
 
         exec ${pkgs.dovecot}/libexec/dovecot/deliver -d bob <<MAIL
         From: root@localhost
diff --git a/nixos/tests/gerrit.nix b/nixos/tests/gerrit.nix
new file mode 100644
index 00000000000..6cee64a2009
--- /dev/null
+++ b/nixos/tests/gerrit.nix
@@ -0,0 +1,55 @@
+import ./make-test-python.nix ({ pkgs, ... }:
+
+let
+  lfs = pkgs.fetchurl {
+    url = "https://gerrit-ci.gerritforge.com/job/plugin-lfs-bazel-master/90/artifact/bazel-bin/plugins/lfs/lfs.jar";
+    sha256 = "023b0kd8djm3cn1lf1xl67yv3j12yl8bxccn42lkfmwxjwjfqw6h";
+  };
+
+in {
+  name = "gerrit";
+
+  meta = with pkgs.stdenv.lib.maintainers; {
+    maintainers = [ flokli zimbatm ];
+  };
+
+  nodes = {
+    server =
+      { config, pkgs, ... }: {
+        networking.firewall.allowedTCPPorts = [ 80 2222 ];
+
+        virtualisation.memorySize = 1024;
+
+        services.gerrit = {
+          enable = true;
+          serverId = "aa76c84b-50b0-4711-a0a0-1ee30e45bbd0";
+          listenAddress = "[::]:80";
+          jvmHeapLimit = "1g";
+
+          plugins = [ lfs ];
+          builtinPlugins = [ "hooks" "webhooks" ];
+          settings = {
+            gerrit.canonicalWebUrl = "http://server";
+            lfs.plugin = "lfs";
+            plugins.allowRemoteAdmin = true;
+            sshd.listenAddress = "[::]:2222";
+            sshd.advertisedAddress = "[::]:2222";
+          };
+        };
+      };
+
+    client =
+      { ... }: {
+      };
+  };
+
+  testScript = ''
+    start_all()
+    server.wait_for_unit("gerrit.service")
+    server.wait_for_open_port(80)
+    client.succeed("curl http://server")
+
+    server.wait_for_open_port(2222)
+    client.succeed("nc -z server 2222")
+  '';
+})
diff --git a/nixos/tests/hydra/common.nix b/nixos/tests/hydra/common.nix
new file mode 100644
index 00000000000..f612717dc96
--- /dev/null
+++ b/nixos/tests/hydra/common.nix
@@ -0,0 +1,47 @@
+{ system, ... }:
+{
+  baseConfig = { pkgs, ... }: let
+    trivialJob = pkgs.writeTextDir "trivial.nix" ''
+     { trivial = builtins.derivation {
+         name = "trivial";
+         system = "${system}";
+         builder = "/bin/sh";
+         allowSubstitutes = false;
+         preferLocalBuild = true;
+         args = ["-c" "echo success > $out; exit 0"];
+       };
+     }
+    '';
+
+    createTrivialProject = pkgs.stdenv.mkDerivation {
+      name = "create-trivial-project";
+      dontUnpack = true;
+      buildInputs = [ pkgs.makeWrapper ];
+      installPhase = "install -m755 -D ${./create-trivial-project.sh} $out/bin/create-trivial-project.sh";
+      postFixup = ''
+        wrapProgram "$out/bin/create-trivial-project.sh" --prefix PATH ":" ${pkgs.stdenv.lib.makeBinPath [ pkgs.curl ]} --set EXPR_PATH ${trivialJob}
+      '';
+    };
+  in {
+    virtualisation.memorySize = 2048;
+    time.timeZone = "UTC";
+    environment.systemPackages = [ createTrivialProject pkgs.jq ];
+    services.hydra = {
+      enable = true;
+      # Hydra needs those settings to start up, so we add something not harmfull.
+      hydraURL = "example.com";
+      notificationSender = "example@example.com";
+      extraConfig = ''
+        email_notification = 1
+      '';
+    };
+    services.postfix.enable = true;
+    nix = {
+      buildMachines = [{
+        hostName = "localhost";
+        systems = [ system ];
+      }];
+      binaryCaches = [];
+    };
+  };
+}
diff --git a/nixos/tests/hydra/db-migration.nix b/nixos/tests/hydra/db-migration.nix
new file mode 100644
index 00000000000..aa1c81c9e77
--- /dev/null
+++ b/nixos/tests/hydra/db-migration.nix
@@ -0,0 +1,86 @@
+{ system ? builtins.currentSystem, ... }:
+
+let inherit (import ./common.nix { inherit system; }) baseConfig; in
+
+{ mig = import ../make-test-python.nix ({ pkgs, lib, ... }: {
+    name = "hydra-db-migration";
+    meta = with pkgs.stdenv.lib.maintainers; {
+      maintainers = [ ma27 ];
+    };
+
+    nodes = {
+      original = { pkgs, lib, ... }: {
+        imports = [ baseConfig ];
+
+        # An older version of Hydra before the db change
+        # for testing purposes.
+        services.hydra.package = pkgs.hydra-migration.overrideAttrs (old: {
+          inherit (old) pname;
+          version = "2020-02-06";
+          src = pkgs.fetchFromGitHub {
+            owner = "NixOS";
+            repo = "hydra";
+            rev = "2b4f14963b16b21ebfcd6b6bfa7832842e9b2afc";
+            sha256 = "16q0cffcsfx5pqd91n9k19850c1nbh4vvbd9h8yi64ihn7v8bick";
+          };
+        });
+      };
+
+      migration_phase1 = { pkgs, lib, ... }: {
+        imports = [ baseConfig ];
+        services.hydra.package = pkgs.hydra-migration;
+      };
+
+      finished = { pkgs, lib, ... }: {
+        imports = [ baseConfig ];
+        services.hydra.package = pkgs.hydra-unstable;
+      };
+    };
+
+    testScript = { nodes, ... }: let
+      next = nodes.migration_phase1.config.system.build.toplevel;
+      finished = nodes.finished.config.system.build.toplevel;
+    in ''
+      original.start()
+      original.wait_for_unit("multi-user.target")
+      original.wait_for_unit("postgresql.service")
+      original.wait_for_unit("hydra-init.service")
+      original.require_unit_state("hydra-queue-runner.service")
+      original.require_unit_state("hydra-evaluator.service")
+      original.require_unit_state("hydra-notify.service")
+      original.succeed("hydra-create-user admin --role admin --password admin")
+      original.wait_for_open_port(3000)
+      original.succeed("create-trivial-project.sh")
+      original.wait_until_succeeds(
+          'curl -L -s http://localhost:3000/build/1 -H "Accept: application/json" |  jq .buildstatus | xargs test 0 -eq'
+      )
+
+      out = original.succeed("su -l postgres -c 'psql -d hydra <<< \"\\d+ jobs\" -A'")
+      assert "jobset_id" not in out
+
+      original.succeed(
+          "${next}/bin/switch-to-configuration test >&2"
+      )
+      original.wait_for_unit("hydra-init.service")
+
+      out = original.succeed("su -l postgres -c 'psql -d hydra <<< \"\\d+ jobs\" -A'")
+      assert "jobset_id|integer|||" in out
+
+      original.succeed("hydra-backfill-ids")
+
+      original.succeed(
+          "${finished}/bin/switch-to-configuration test >&2"
+      )
+      original.wait_for_unit("hydra-init.service")
+
+      out = original.succeed("su -l postgres -c 'psql -d hydra <<< \"\\d+ jobs\" -A'")
+      assert "jobset_id|integer||not null|" in out
+
+      original.wait_until_succeeds(
+          'curl -L -s http://localhost:3000/build/1 -H "Accept: application/json" |  jq .buildstatus | xargs test 0 -eq'
+      )
+
+      original.shutdown()
+    '';
+  });
+}
diff --git a/nixos/tests/hydra/default.nix b/nixos/tests/hydra/default.nix
index 1c0ed3369b1..2336e4033d6 100644
--- a/nixos/tests/hydra/default.nix
+++ b/nixos/tests/hydra/default.nix
@@ -3,102 +3,57 @@
 , pkgs ? import ../../.. { inherit system config; }
 }:
 
-let
-
-  trivialJob = pkgs.writeTextDir "trivial.nix" ''
-   { trivial = builtins.derivation {
-       name = "trivial";
-       system = "${system}";
-       builder = "/bin/sh";
-       allowSubstitutes = false;
-       preferLocalBuild = true;
-       args = ["-c" "echo success > $out; exit 0"];
-     };
-   }
-  '';
+with import ../../lib/testing-python.nix { inherit system pkgs; };
+with pkgs.lib;
 
-  createTrivialProject = pkgs.stdenv.mkDerivation {
-    name = "create-trivial-project";
-    dontUnpack = true;
-    buildInputs = [ pkgs.makeWrapper ];
-    installPhase = "install -m755 -D ${./create-trivial-project.sh} $out/bin/create-trivial-project.sh";
-    postFixup = ''
-      wrapProgram "$out/bin/create-trivial-project.sh" --prefix PATH ":" ${pkgs.stdenv.lib.makeBinPath [ pkgs.curl ]} --set EXPR_PATH ${trivialJob}
-    '';
-  };
+let
 
-  callTest = f: f { inherit system pkgs; };
+  inherit (import ./common.nix { inherit system; }) baseConfig;
 
   hydraPkgs = {
-    inherit (pkgs) nixStable nixUnstable nixFlakes;
+    inherit (pkgs) hydra-migration hydra-unstable;
   };
 
-  tests = pkgs.lib.flip pkgs.lib.mapAttrs hydraPkgs (name: nix:
-    callTest (import ../make-test-python.nix ({ pkgs, lib, ... }:
-      {
-        name = "hydra-with-${name}";
-        meta = with pkgs.stdenv.lib.maintainers; {
-          maintainers = [ pstn lewo ma27 ];
-        };
-
-        machine = { pkgs, ... }:
-          {
-            virtualisation.memorySize = 1024;
-            time.timeZone = "UTC";
-
-            environment.systemPackages = [ createTrivialProject pkgs.jq ];
-            services.hydra = {
-              enable = true;
-
-              #Hydra needs those settings to start up, so we add something not harmfull.
-              hydraURL = "example.com";
-              notificationSender = "example@example.com";
-
-              package = pkgs.hydra.override { inherit nix; };
-
-              extraConfig = ''
-                email_notification = 1
-              '';
-            };
-            services.postfix.enable = true;
-            nix = {
-              buildMachines = [{
-                hostName = "localhost";
-                systems = [ system ];
-              }];
-
-              binaryCaches = [];
-            };
-          };
-
-        testScript = ''
-          # let the system boot up
-          machine.wait_for_unit("multi-user.target")
-          # test whether the database is running
-          machine.wait_for_unit("postgresql.service")
-          # test whether the actual hydra daemons are running
-          machine.wait_for_unit("hydra-init.service")
-          machine.require_unit_state("hydra-queue-runner.service")
-          machine.require_unit_state("hydra-evaluator.service")
-          machine.require_unit_state("hydra-notify.service")
-
-          machine.succeed("hydra-create-user admin --role admin --password admin")
-
-          # create a project with a trivial job
-          machine.wait_for_open_port(3000)
-
-          # make sure the build as been successfully built
-          machine.succeed("create-trivial-project.sh")
-
-          machine.wait_until_succeeds(
-              'curl -L -s http://localhost:3000/build/1 -H "Accept: application/json" |  jq .buildstatus | xargs test 0 -eq'
-          )
-
-          machine.wait_until_succeeds(
-              'journalctl -eu hydra-notify.service -o cat | grep -q "sending mail notification to hydra@localhost"'
-          )
-        '';
-      })));
+  makeHydraTest = with pkgs.lib; name: package: makeTest {
+    name = "hydra-${name}";
+    meta = with pkgs.stdenv.lib.maintainers; {
+      maintainers = [ pstn lewo ma27 ];
+    };
+
+    machine = { pkgs, lib, ... }: {
+      imports = [ baseConfig ];
+      services.hydra = { inherit package; };
+    };
+
+    testScript = ''
+      # let the system boot up
+      machine.wait_for_unit("multi-user.target")
+      # test whether the database is running
+      machine.wait_for_unit("postgresql.service")
+      # test whether the actual hydra daemons are running
+      machine.wait_for_unit("hydra-init.service")
+      machine.require_unit_state("hydra-queue-runner.service")
+      machine.require_unit_state("hydra-evaluator.service")
+      machine.require_unit_state("hydra-notify.service")
+
+      machine.succeed("hydra-create-user admin --role admin --password admin")
+
+      # create a project with a trivial job
+      machine.wait_for_open_port(3000)
+
+      # make sure the build as been successfully built
+      machine.succeed("create-trivial-project.sh")
+
+      machine.wait_until_succeeds(
+          'curl -L -s http://localhost:3000/build/1 -H "Accept: application/json" |  jq .buildstatus | xargs test 0 -eq'
+      )
+
+      machine.wait_until_succeeds(
+          'journalctl -eu hydra-notify.service -o cat | grep -q "sending mail notification to hydra@localhost"'
+      )
+    '';
+  };
 
 in
-  tests
+
+mapAttrs makeHydraTest hydraPkgs
diff --git a/nixos/tests/initrd-network-ssh/default.nix b/nixos/tests/initrd-network-ssh/default.nix
index 73d9f938e22..017de688208 100644
--- a/nixos/tests/initrd-network-ssh/default.nix
+++ b/nixos/tests/initrd-network-ssh/default.nix
@@ -3,7 +3,7 @@ import ../make-test-python.nix ({ lib, ... }:
 {
   name = "initrd-network-ssh";
   meta = with lib.maintainers; {
-    maintainers = [ willibutz ];
+    maintainers = [ willibutz emily ];
   };
 
   nodes = with lib; {
@@ -17,9 +17,9 @@ import ../make-test-python.nix ({ lib, ... }:
           enable = true;
           ssh = {
             enable = true;
-            authorizedKeys = [ "${readFile ./openssh.pub}" ];
+            authorizedKeys = [ (readFile ./id_ed25519.pub) ];
             port = 22;
-            hostRSAKey = ./dropbear.priv;
+            hostKeys = [ ./ssh_host_ed25519_key ];
           };
         };
         boot.initrd.preLVMCommands = ''
@@ -42,11 +42,11 @@ import ../make-test-python.nix ({ lib, ... }:
               "${toString (head (splitString " " (
                 toString (elemAt (splitString "\n" config.networking.extraHosts) 2)
               )))} "
-              "${readFile ./dropbear.pub}"
+              "${readFile ./ssh_host_ed25519_key.pub}"
             ];
           };
           sshKey = {
-            source = ./openssh.priv; # dont use this anywhere else
+            source = ./id_ed25519;
             mode = "0600";
           };
         };
@@ -56,7 +56,17 @@ import ../make-test-python.nix ({ lib, ... }:
   testScript = ''
     start_all()
     client.wait_for_unit("network.target")
-    client.wait_until_succeeds("ping -c 1 server")
+
+
+    def ssh_is_up(_) -> bool:
+        status, _ = client.execute("nc -z server 22")
+        return status == 0
+
+
+    with client.nested("waiting for SSH server to come up"):
+        retry(ssh_is_up)
+
+
     client.succeed(
         "ssh -i /etc/sshKey -o UserKnownHostsFile=/etc/knownHosts server 'touch /fnord'"
     )
diff --git a/nixos/tests/initrd-network-ssh/dropbear.priv b/nixos/tests/initrd-network-ssh/dropbear.priv
deleted file mode 100644
index af340535f0a..00000000000
--- a/nixos/tests/initrd-network-ssh/dropbear.priv
+++ /dev/null
Binary files differdiff --git a/nixos/tests/initrd-network-ssh/dropbear.pub b/nixos/tests/initrd-network-ssh/dropbear.pub
deleted file mode 100644
index 385c625522a..00000000000
--- a/nixos/tests/initrd-network-ssh/dropbear.pub
+++ /dev/null
@@ -1 +0,0 @@
-ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCzJ0OniLB91MpPC86I1m3wwJeAc+Gme7bAuaLIU/cSfPwxT5NO7MfCp0Pu94gYDKtDXMs/wXg0bTAVDeAFFkdIj6kBBumEmQLCTL48q2UxDIXVLT/E/AAgj6q7WwgCg7fwm4Vjn4z7aUyBx8EfRy+5/SQyeYla3D/lFYgMi5x4D6J+yeR+JPAptDE/IR5IizNV7mY0ZcoXYyHrrehI1tTYEEqjX13ZqS4OCBFWwHe1QHhRNM+jHhcATbgikjAj8FyFPtLvc+dSVtkuhQktQl36Bi8zMUQcV6+mM7Ln6DBcDlM9urHKLYPTWmUAyhxM955iglOn5z0RaAIcyNMT6hz0rHaNf0BIlmbXoTC0XGjHh/OnoOEC/zg0JqgQTnPiU45K4TnRSSXp2GfiDfiQAK0+HaXACkjuFR68u7WCZpB1Bse1OgKNClFqtRhIr5DilUb2/e5DCCmFkddMUcjmYqzZdbXNt7fo8CFULe+mbiCp8+tMg4aRTaDZ/Hk93nCvGE5TP2ypEMbfL6nRVKvXOjhdvSQQgKwx+O003FDEHCSG0Bpageh7yVpna+SPrbGklce7MjTpbx3iIwmvKpQ6asnK1L3KkahpY1S3NhQ+/S3Gs8KWQ5LAU+d3xiPX3jfIVHsCIIyxHDbwcJvxM4MFBFQpqRMD6E+LoM9RHjl4C9k2iQ== tmtynkky@duuni
diff --git a/nixos/tests/initrd-network-ssh/generate-keys.nix b/nixos/tests/initrd-network-ssh/generate-keys.nix
index 0183e12d7a8..3d7978890ab 100644
--- a/nixos/tests/initrd-network-ssh/generate-keys.nix
+++ b/nixos/tests/initrd-network-ssh/generate-keys.nix
@@ -1,12 +1,10 @@
 with import ../../.. {};
 
 runCommand "gen-keys" {
-    buildInputs = [ dropbear openssh ];
+    buildInputs = [ openssh ];
   }
   ''
     mkdir $out
-    dropbearkey -t rsa -f $out/dropbear.priv -s 4096 | sed -n 2p > $out/dropbear.pub
-    ssh-keygen -q -t rsa -b 4096 -N "" -f client
-    mv client $out/openssh.priv
-    mv client.pub $out/openssh.pub
+    ssh-keygen -q -t ed25519 -N "" -f $out/ssh_host_ed25519_key
+    ssh-keygen -q -t ed25519 -N "" -f $out/id_ed25519
   ''
diff --git a/nixos/tests/initrd-network-ssh/id_ed25519 b/nixos/tests/initrd-network-ssh/id_ed25519
new file mode 100644
index 00000000000..f914b3f712f
--- /dev/null
+++ b/nixos/tests/initrd-network-ssh/id_ed25519
@@ -0,0 +1,7 @@
+-----BEGIN OPENSSH PRIVATE KEY-----
+b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW
+QyNTUxOQAAACAVcX+32Yqig25RxRA8bel/f604wV0p/63um+Oku/3vfwAAAJi/AJZMvwCW
+TAAAAAtzc2gtZWQyNTUxOQAAACAVcX+32Yqig25RxRA8bel/f604wV0p/63um+Oku/3vfw
+AAAEAPLjQusjrB90Lk3996G3AbtTeK+XweNgxaegYnml/A/RVxf7fZiqKDblHFEDxt6X9/
+rTjBXSn/re6b46S7/e9/AAAAEG5peGJsZEBsb2NhbGhvc3QBAgMEBQ==
+-----END OPENSSH PRIVATE KEY-----
diff --git a/nixos/tests/initrd-network-ssh/id_ed25519.pub b/nixos/tests/initrd-network-ssh/id_ed25519.pub
new file mode 100644
index 00000000000..40de4a8ac60
--- /dev/null
+++ b/nixos/tests/initrd-network-ssh/id_ed25519.pub
@@ -0,0 +1 @@
+ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBVxf7fZiqKDblHFEDxt6X9/rTjBXSn/re6b46S7/e9/ nixbld@localhost
diff --git a/nixos/tests/initrd-network-ssh/openssh.priv b/nixos/tests/initrd-network-ssh/openssh.priv
deleted file mode 100644
index 816d65435fd..00000000000
--- a/nixos/tests/initrd-network-ssh/openssh.priv
+++ /dev/null
@@ -1,51 +0,0 @@
------BEGIN RSA PRIVATE KEY-----
-MIIJKAIBAAKCAgEA7+9A2PCPOTAlFmrablrUWA+VZdAuLfM6JXeHsOF7ZbC2F6lv
-WmvDM925DQqhiAjcgWnt5WHWS5Y+b7lGnuzT7fyKegXd80nCRmqlpSG3srX0/lxR
-aQAJLzfoDjcsF+ceswQo6GSsYnCHVxMNs007gbbVY3f7o+sWZtLdxJPD2iHvl5Zr
-LK0d1RLMmU6cfIhIABlL0S8EWiv29RROepsCQnS0dnK2b+von1SCYoggvAMe2ToA
-IAJ8+uqaYfGAyn9q8fjZiRHxLmKDq90tKoCUL5r/2dmEIE+t8T/3PfHoq1QzZts9
-W9idhBdT21dEXBtGyoMtckp5njk5m82LQDYiOXkuSoIUhSOteh5g7fBv1BtVSERx
-Jg3UeJjPeGKFwdnzapmAKC2w/6V8xcIINNA+fhZA7B9fD1RAi2TECZ+gyMYDc4T+
-USlMSm9cfvSOrf2+5ngtFb84nHjqvClxCMLu+bCWK8HamqUzhE/a5LbR+48E7PyG
-s3KV+sWFN9KOnakTjj/6iQhXZRhgeAK39F2XTk5Ms5Y+BRSStnMoMZA2grIV+jHi
-1zbWokVqXPI5YRo5isR/PgtKAV6FfNWumcYoFJ9F40pMHQ6hJVEmtrCBx7EApSl3
-mSGbQJUmilLC51qNhwQRbD//ZtpIrN82HTMKzZ6kj7kDCdsff+wsnkIXmmMCAwEA
-AQKCAgA4tMINw6UF7hQF3VEsnbjr6xrzCiWv5HlMm5htPI1OdlpC81+G7ksfOfrf
-UzDkFrwOtftsqBfem268Nvyy2OQprfMIbdSMCFWrEM9/XJ2u1gRGDYmMGF8TUtI8
-cduw9oWx53zHl+uKBHBoKu+k/c7flFeQf63wisIroRCawhWau0SF/h3sXCndzuie
-Hw8q+4aQx2m80bDkotlmCNuXbIU3MZ/pEql9gDLlXTLHmMaryM0EqAmZhx0ErGe6
-WDqJIV4kPB0loSDwRoY6GzbugZ8ENUzcruTkQhCpIOYNNNw5idfwKkaxK1vm+SBv
-iYt1fVjYyfH2vhVKSNoNsaGEloa1u4Dymt/FpFztEpRzHXcw93N8BdLxJ4OUhzm2
-iAbpiyjniTIeAVVi7BUwLXh5WAx8nT0eeb1zKoZg1p1ciK5cYl1Uel7j8xRycsSW
-3YgmtuPqY4Agbc9v3eXbQZNDk48JFMEqpIxk97FAkRYpzfxg5Qq14WJCp60CkdRt
-T60hXy8lT/BcI8OWLfGJuBbsVLNRiC7PpwqRKQAinXSv134FpP7jrhpkMybs2oIS
-5obRG7J5OfOTp925erG5mrpwqa3BPkgqx347Wj9z8quOZyuhi+XaPvqmPtvs5JOl
-4RCqjt6RQlHm7xos9ZZGI4jDAIFaFWgyVZrYplOgwxWma4DTgQKCAQEA9+tizQRU
-lF0lxNcEPvsFnYJo80Y+MQK9VdtlhR19YuSfwP1NCaMG1MhQ+PVBVmepOwJMRJR7
-9PLfOouNMfixKBGP12dtStMuh7jowq/BxhRI6JWp3RhTZ1yJ9ouzHze7IDrEBa6w
-p0hUu9H0Sbt51LXbC3JmTyhbdhfry559DfyGW1Ma/bv/pihL9B5Y7sNf1thNp1gi
-GbQ9B+o2Yyw8ZD8zY+sl+aYDSWyCtcBV/KXEF74Bkfs/a5ExJ00X0jYj/TAp2ray
-T4PY0FR8wN/O10bFLP9j+Xa/ywbcPhoj8nvVRIg9VfWT/QaEd+KR0EZVxdjCCqne
-enbSQksTpAZNwQKCAQEA98E+BMmS+yHUVUhNZABtQ5avwuV4+DoSN8KTp3xwQ0CH
-m9fWxSDs12FdyMhDxrJPeywvHtZ18/7cl3dr8wnFVE0s4ongnRDXsNk5xN6J3AaO
-KqW4HF9cbwZqzLILy8TrO+EK/EQV9FypbrxqvxAlP1kezIA2CJNzVRAgimSuV/H7
-05HTnp5W06fjtEf8U1CUrdNetoSROUo1j/IMGPYGlsBFYAGrj5y/BlKd+3T3kjRp
-Xje7HpiykjrZHn0WDp04Ln+u9nveEewXmHKch313emt7HpW0xspp8JM8OZtEKozk
-D5PfYdBfMJJOUlqovCCzTTJ6kNOahknKXFeO/qs5IwKCAQEAjF0/zhWikXF/fcfD
-Bql2z2vTYdEmSvdjHSYff1Nn90K71DdVk5wytOxJM/sfp/z+yoMNjVKIL/IGQw5Z
-va4xFx+CUhGjxlZ0pLEjT37U9gHsGYsK5jvslLvG/MixfH5AOwoqi5ERQVTpbIF9
-jvVPEAh6YSu/ExglWGJIxTsRUIblxvTxdjEnl/p+rlM0RNJnA6vpo1J51BXA7CdF
-7bZQ5u0Feo/bK1I70ClYg/DGfkmYEV0pZG5cxNkqfDbgwsqWa7YGLGd94xkh+ymq
-jETqxeWyozxhbQ83nYpfzeVc7t//qlJ8b5uf0wUKoRmtNr9rtp13lzP/21REzPXW
-w+oxwQKCAQAoAf2Y2lAw25KlPuq4ZlU+n9u8FkBFnWMJvBMJ7c9XHNmJMf6NkLaO
-RTvWy3geYvbwxf7J9QnRH+vRTciR05cY+Olxn6A03N5nwXxRrToH3MsiWeZ0NnX/
-u8KNUYcUHbV60ulqOThuYHQ/3I9EUUAijaqqjV2sXts19ke68W0x6HKpBJhuudT9
-ktPzbdhyP8Xyl/pocNnerXwexZBsi3Ye6+eIDFz+8OnsBHVcgNPluS72tvsxgqj7
-ciNTiBGCxKKo55eCWBhRPpXE2WUrf/hGPYsBMl2h6FfZMH1+M/N7B4tgdJmS+woU
-Ftws8lTjJEiwA6HFN1ZxrwLNjJobx9yPAoIBAE0igsBuWWn6rXeOPylYg4264XOq
-8gb94pte2n9amDgCzyCn8m6AL3snLC/AoCD19DK+gyK0ukoesXPa3iX6w2xv69ZC
-urDx36Jhd4zrJb4QsFPoeKfDP+UvNVZaS41vipRRzY/y11em15prUZ4U8FA/UT1Y
-FzkBo9r6iUZRnyBLppMuEfWASDtuRNmeIHynoT1AcQOH3l9vR210iEpmAuJr0CYA
-bvTuz3UzzGGEAuIUvuaiRtkfKY52jBmiEr7SSPCr1HvLj3Ccz8bgjgR2kiXmcU50
-1zLnaPAD44LZ/0Fjqj+PimQGT6K7CNXPllmYh7MvoU52g3SVPf6rHlIR0Nc=
------END RSA PRIVATE KEY-----
diff --git a/nixos/tests/initrd-network-ssh/openssh.pub b/nixos/tests/initrd-network-ssh/openssh.pub
deleted file mode 100644
index 5b72b8085f2..00000000000
--- a/nixos/tests/initrd-network-ssh/openssh.pub
+++ /dev/null
@@ -1 +0,0 @@
-ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDv70DY8I85MCUWatpuWtRYD5Vl0C4t8zold4ew4XtlsLYXqW9aa8Mz3bkNCqGICNyBae3lYdZLlj5vuUae7NPt/Ip6Bd3zScJGaqWlIbeytfT+XFFpAAkvN+gONywX5x6zBCjoZKxicIdXEw2zTTuBttVjd/uj6xZm0t3Ek8PaIe+XlmssrR3VEsyZTpx8iEgAGUvRLwRaK/b1FE56mwJCdLR2crZv6+ifVIJiiCC8Ax7ZOgAgAnz66pph8YDKf2rx+NmJEfEuYoOr3S0qgJQvmv/Z2YQgT63xP/c98eirVDNm2z1b2J2EF1PbV0RcG0bKgy1ySnmeOTmbzYtANiI5eS5KghSFI616HmDt8G/UG1VIRHEmDdR4mM94YoXB2fNqmYAoLbD/pXzFwgg00D5+FkDsH18PVECLZMQJn6DIxgNzhP5RKUxKb1x+9I6t/b7meC0VvziceOq8KXEIwu75sJYrwdqapTOET9rkttH7jwTs/IazcpX6xYU30o6dqROOP/qJCFdlGGB4Arf0XZdOTkyzlj4FFJK2cygxkDaCshX6MeLXNtaiRWpc8jlhGjmKxH8+C0oBXoV81a6ZxigUn0XjSkwdDqElUSa2sIHHsQClKXeZIZtAlSaKUsLnWo2HBBFsP/9m2kis3zYdMwrNnqSPuQMJ2x9/7CyeQheaYw== tmtynkky@duuni
diff --git a/nixos/tests/initrd-network-ssh/ssh_host_ed25519_key b/nixos/tests/initrd-network-ssh/ssh_host_ed25519_key
new file mode 100644
index 00000000000..f1e29459b7a
--- /dev/null
+++ b/nixos/tests/initrd-network-ssh/ssh_host_ed25519_key
@@ -0,0 +1,7 @@
+-----BEGIN OPENSSH PRIVATE KEY-----
+b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW
+QyNTUxOQAAACDP9Mz6qlxdQqA4omrgbOlVsxSGONCJstjW9zqquajlIAAAAJg0WGFGNFhh
+RgAAAAtzc2gtZWQyNTUxOQAAACDP9Mz6qlxdQqA4omrgbOlVsxSGONCJstjW9zqquajlIA
+AAAEA0Hjs7LfFPdTf3ThGx6GNKvX0ItgzgXs91Z3oGIaF6S8/0zPqqXF1CoDiiauBs6VWz
+FIY40Imy2Nb3Oqq5qOUgAAAAEG5peGJsZEBsb2NhbGhvc3QBAgMEBQ==
+-----END OPENSSH PRIVATE KEY-----
diff --git a/nixos/tests/initrd-network-ssh/ssh_host_ed25519_key.pub b/nixos/tests/initrd-network-ssh/ssh_host_ed25519_key.pub
new file mode 100644
index 00000000000..3aa1587e1dc
--- /dev/null
+++ b/nixos/tests/initrd-network-ssh/ssh_host_ed25519_key.pub
@@ -0,0 +1 @@
+ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM/0zPqqXF1CoDiiauBs6VWzFIY40Imy2Nb3Oqq5qOUg nixbld@localhost
diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix
index 983861911e0..babde4126c4 100644
--- a/nixos/tests/installer.nix
+++ b/nixos/tests/installer.nix
@@ -104,7 +104,6 @@ let
 
       with subtest("Assert readiness of login prompt"):
           machine.succeed("echo hello")
-          machine.wait_for_unit("nixos-manual")
 
       with subtest("Wait for hard disks to appear in /dev"):
           machine.succeed("udevadm settle")
diff --git a/nixos/tests/kafka.nix b/nixos/tests/kafka.nix
index f3de24e873b..d29c802b47b 100644
--- a/nixos/tests/kafka.nix
+++ b/nixos/tests/kafka.nix
@@ -77,7 +77,7 @@ let
           + "--from-beginning --max-messages 1"
       )
     '');
-  }) {});
+  }) { inherit system; });
 
 in with pkgs; {
   kafka_0_9  = makeKafkaTest "kafka_0_9"  apacheKafka_0_9;
diff --git a/nixos/tests/magic-wormhole-mailbox-server.nix b/nixos/tests/magic-wormhole-mailbox-server.nix
new file mode 100644
index 00000000000..144a07e1349
--- /dev/null
+++ b/nixos/tests/magic-wormhole-mailbox-server.nix
@@ -0,0 +1,38 @@
+import ./make-test-python.nix ({ pkgs, ... }: {
+  name = "magic-wormhole-mailbox-server";
+  meta = with pkgs.stdenv.lib.maintainers; {
+    maintainers = [ mmahut ];
+  };
+
+  nodes = {
+    server = { ... }: {
+      networking.firewall.allowedTCPPorts = [ 4000 ];
+      services.magic-wormhole-mailbox-server.enable = true;
+    };
+
+    client_alice = { ... }: {
+      networking.firewall.enable = false;
+      environment.systemPackages = [ pkgs.magic-wormhole ];
+    };
+
+    client_bob = { ... }: {
+      environment.systemPackages = [ pkgs.magic-wormhole ];
+    };
+  };
+
+  testScript = ''
+    start_all()
+
+    # Start the wormhole relay server
+    server.wait_for_unit("magic-wormhole-mailbox-server.service")
+    server.wait_for_open_port(4000)
+
+    # Create a secret file and send it to Bob
+    client_alice.succeed("echo mysecret > secretfile")
+    client_alice.succeed("wormhole --relay-url=ws://server:4000/v1 send -0 secretfile &")
+
+    # Retrieve a secret file from Alice and check its content
+    client_bob.succeed("wormhole --relay-url=ws://server:4000/v1 receive -0 --accept-file")
+    client_bob.succeed("grep mysecret secretfile")
+  '';
+})
diff --git a/nixos/tests/mongodb.nix b/nixos/tests/mongodb.nix
index 9ebf84eed23..a637ec4bfc0 100644
--- a/nixos/tests/mongodb.nix
+++ b/nixos/tests/mongodb.nix
@@ -1,42 +1,52 @@
 # This test start mongodb, runs a query using mongo shell
 
-import ./make-test-python.nix ({ pkgs, ...} : let
-  testQuery = pkgs.writeScript "nixtest.js" ''
-    db.greetings.insert({ "greeting": "hello" });
-    print(db.greetings.findOne().greeting);
-  '';
-in {
-  name = "mongodb";
-  meta = with pkgs.stdenv.lib.maintainers; {
-    maintainers = [ bluescreen303 offline cstrahan rvl phile314 ];
-  };
+import ./make-test-python.nix ({ pkgs, ... }:
+  let
+    testQuery = pkgs.writeScript "nixtest.js" ''
+      db.greetings.insert({ "greeting": "hello" });
+      print(db.greetings.findOne().greeting);
+    '';
 
-  nodes = {
-    one =
-      { ... }:
-        {
-          services = {
-           mongodb.enable = true;
-           mongodb.enableAuth = true;
-           mongodb.initialRootPassword = "root";
-           mongodb.initialScript = pkgs.writeText "mongodb_initial.js" ''
-             db = db.getSiblingDB("nixtest");
-             db.createUser({user:"nixtest",pwd:"nixtest",roles:[{role:"readWrite",db:"nixtest"}]});
-           '';
-           mongodb.extraConfig = ''
-             # Allow starting engine with only a small virtual disk
-             storage.journal.enabled: false
-             storage.mmapv1.smallFiles: true
-           '';
-          };
-        };
+    runMongoDBTest = pkg: ''
+      node.execute("(rm -rf data || true) && mkdir data")
+      node.execute(
+          "${pkg}/bin/mongod --fork --logpath logs --dbpath data"
+      )
+      node.wait_for_open_port(27017)
+
+      assert "hello" in node.succeed(
+          "mongo ${testQuery}"
+      )
+
+      node.execute(
+          "${pkg}/bin/mongod --shutdown --dbpath data"
+      )
+      node.wait_for_closed_port(27017)
+    '';
+
+  in {
+    name = "mongodb";
+    meta = with pkgs.stdenv.lib.maintainers; {
+      maintainers = [ bluescreen303 offline cstrahan rvl phile314 ];
+    };
+
+    nodes = {
+      node = {...}: {
+        environment.systemPackages = with pkgs; [
+          mongodb-3_4
+          mongodb-3_6
+          mongodb-4_0
+        ];
+      };
     };
 
-  testScript = ''
-    start_all()
-    one.wait_for_unit("mongodb.service")
-    one.succeed(
-        "mongo -u nixtest -p nixtest nixtest ${testQuery} | grep -q hello"
-    )
-  '';
-})
+    testScript = ''
+      node.start()
+    ''
+      + runMongoDBTest pkgs.mongodb-3_4
+      + runMongoDBTest pkgs.mongodb-3_6 
+      + runMongoDBTest pkgs.mongodb-4_0
+      + ''
+        node.shutdown()
+      '';
+  })
diff --git a/nixos/tests/mysql.nix b/nixos/tests/mysql.nix
index 924bac84e26..11c1dabf936 100644
--- a/nixos/tests/mysql.nix
+++ b/nixos/tests/mysql.nix
@@ -22,6 +22,27 @@ import ./make-test-python.nix ({ pkgs, ...} : {
         services.mysql.package = pkgs.mysql57;
       };
 
+    mysql80 =
+      { pkgs, ... }:
+
+      {
+        # prevent oom:
+        # Kernel panic - not syncing: Out of memory: compulsory panic_on_oom is enabled
+        virtualisation.memorySize = 1024;
+
+        services.mysql.enable = true;
+        services.mysql.initialDatabases = [
+          { name = "testdb"; schema = ./testdb.sql; }
+          { name = "empty_testdb"; }
+        ];
+        # note that using pkgs.writeText here is generally not a good idea,
+        # as it will store the password in world-readable /nix/store ;)
+        services.mysql.initialScript = pkgs.writeText "mysql-init.sql" ''
+          CREATE USER 'passworduser'@'localhost' IDENTIFIED BY 'password123';
+        '';
+        services.mysql.package = pkgs.mysql80;
+      };
+
     mariadb =
       { pkgs, ... }:
 
@@ -47,6 +68,11 @@ import ./make-test-python.nix ({ pkgs, ...} : {
             "testdb2.*" = "ALL PRIVILEGES";
           };
         }];
+        services.mysql.settings = {
+          mysqld = {
+            plugin-load-add = [ "ha_tokudb.so" "ha_rocksdb.so" ];
+          };
+        };
         services.mysql.package = pkgs.mariadb;
       };
 
@@ -61,6 +87,12 @@ import ./make-test-python.nix ({ pkgs, ...} : {
     # ';' acts as no-op, just check whether login succeeds with the user created from the initialScript
     mysql.succeed("echo ';' | mysql -u passworduser --password=password123")
 
+    mysql80.wait_for_unit("mysql")
+    mysql80.succeed("echo 'use empty_testdb;' | mysql -u root")
+    mysql80.succeed("echo 'use testdb; select * from tests;' | mysql -u root -N | grep 4")
+    # ';' acts as no-op, just check whether login succeeds with the user created from the initialScript
+    mysql80.succeed("echo ';' | mysql -u passworduser --password=password123")
+
     mariadb.wait_for_unit("mysql")
     mariadb.succeed(
         "echo 'use testdb; create table tests (test_id INT, PRIMARY KEY (test_id));' | sudo -u testuser mysql -u testuser"
@@ -79,5 +111,33 @@ import ./make-test-python.nix ({ pkgs, ...} : {
     mariadb.succeed(
         "echo 'use testdb; select test_id from tests;' | sudo -u testuser mysql -u testuser -N | grep 42"
     )
+
+    # Check if TokuDB plugin works
+    mariadb.succeed(
+        "echo 'use testdb; create table tokudb (test_id INT, PRIMARY KEY (test_id)) ENGINE = TokuDB;' | sudo -u testuser mysql -u testuser"
+    )
+    mariadb.succeed(
+        "echo 'use testdb; insert into tokudb values (25);' | sudo -u testuser mysql -u testuser"
+    )
+    mariadb.succeed(
+        "echo 'use testdb; select test_id from tokudb;' | sudo -u testuser mysql -u testuser -N | grep 25"
+    )
+    mariadb.succeed(
+        "echo 'use testdb; drop table tokudb;' | sudo -u testuser mysql -u testuser"
+    )
+
+    # Check if RocksDB plugin works
+    mariadb.succeed(
+        "echo 'use testdb; create table rocksdb (test_id INT, PRIMARY KEY (test_id)) ENGINE = RocksDB;' | sudo -u testuser mysql -u testuser"
+    )
+    mariadb.succeed(
+        "echo 'use testdb; insert into rocksdb values (28);' | sudo -u testuser mysql -u testuser"
+    )
+    mariadb.succeed(
+        "echo 'use testdb; select test_id from rocksdb;' | sudo -u testuser mysql -u testuser -N | grep 28"
+    )
+    mariadb.succeed(
+        "echo 'use testdb; drop table rocksdb;' | sudo -u testuser mysql -u testuser"
+    )
   '';
 })
diff --git a/nixos/tests/nextcloud/basic.nix b/nixos/tests/nextcloud/basic.nix
index 75862feb202..92ac5c46e8f 100644
--- a/nixos/tests/nextcloud/basic.nix
+++ b/nixos/tests/nextcloud/basic.nix
@@ -32,7 +32,7 @@ in {
 
   testScript = let
     withRcloneEnv = pkgs.writeScript "with-rclone-env" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       export RCLONE_CONFIG_NEXTCLOUD_TYPE=webdav
       export RCLONE_CONFIG_NEXTCLOUD_URL="http://nextcloud/remote.php/webdav/"
       export RCLONE_CONFIG_NEXTCLOUD_VENDOR="nextcloud"
@@ -41,12 +41,12 @@ in {
       "''${@}"
     '';
     copySharedFile = pkgs.writeScript "copy-shared-file" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       echo 'hi' | ${withRcloneEnv} ${pkgs.rclone}/bin/rclone rcat nextcloud:test-shared-file
     '';
 
     diffSharedFile = pkgs.writeScript "diff-shared-file" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       diff <(echo 'hi') <(${pkgs.rclone}/bin/rclone cat nextcloud:test-shared-file)
     '';
   in ''
diff --git a/nixos/tests/nextcloud/with-mysql-and-memcached.nix b/nixos/tests/nextcloud/with-mysql-and-memcached.nix
index b9ba5888187..8db630be893 100644
--- a/nixos/tests/nextcloud/with-mysql-and-memcached.nix
+++ b/nixos/tests/nextcloud/with-mysql-and-memcached.nix
@@ -61,14 +61,14 @@ in {
 
   testScript = let
     configureMemcached = pkgs.writeScript "configure-memcached" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       nextcloud-occ config:system:set memcached_servers 0 0 --value 127.0.0.1 --type string
       nextcloud-occ config:system:set memcached_servers 0 1 --value 11211 --type integer
       nextcloud-occ config:system:set memcache.local --value '\OC\Memcache\APCu' --type string
       nextcloud-occ config:system:set memcache.distributed --value '\OC\Memcache\Memcached' --type string
     '';
     withRcloneEnv = pkgs.writeScript "with-rclone-env" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       export RCLONE_CONFIG_NEXTCLOUD_TYPE=webdav
       export RCLONE_CONFIG_NEXTCLOUD_URL="http://nextcloud/remote.php/webdav/"
       export RCLONE_CONFIG_NEXTCLOUD_VENDOR="nextcloud"
@@ -76,12 +76,12 @@ in {
       export RCLONE_CONFIG_NEXTCLOUD_PASS="$(${pkgs.rclone}/bin/rclone obscure ${adminpass})"
     '';
     copySharedFile = pkgs.writeScript "copy-shared-file" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       echo 'hi' | ${pkgs.rclone}/bin/rclone rcat nextcloud:test-shared-file
     '';
 
     diffSharedFile = pkgs.writeScript "diff-shared-file" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       diff <(echo 'hi') <(${pkgs.rclone}/bin/rclone cat nextcloud:test-shared-file)
     '';
   in ''
diff --git a/nixos/tests/nextcloud/with-postgresql-and-redis.nix b/nixos/tests/nextcloud/with-postgresql-and-redis.nix
index 324853350af..95219cac9be 100644
--- a/nixos/tests/nextcloud/with-postgresql-and-redis.nix
+++ b/nixos/tests/nextcloud/with-postgresql-and-redis.nix
@@ -60,14 +60,14 @@ in {
 
   testScript = let
     configureRedis = pkgs.writeScript "configure-redis" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       nextcloud-occ config:system:set redis 'host' --value 'localhost' --type string
       nextcloud-occ config:system:set redis 'port' --value 6379 --type integer
       nextcloud-occ config:system:set memcache.local --value '\OC\Memcache\Redis' --type string
       nextcloud-occ config:system:set memcache.locking --value '\OC\Memcache\Redis' --type string
     '';
     withRcloneEnv = pkgs.writeScript "with-rclone-env" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       export RCLONE_CONFIG_NEXTCLOUD_TYPE=webdav
       export RCLONE_CONFIG_NEXTCLOUD_URL="http://nextcloud/remote.php/webdav/"
       export RCLONE_CONFIG_NEXTCLOUD_VENDOR="nextcloud"
@@ -76,12 +76,12 @@ in {
       "''${@}"
     '';
     copySharedFile = pkgs.writeScript "copy-shared-file" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       echo 'hi' | ${pkgs.rclone}/bin/rclone rcat nextcloud:test-shared-file
     '';
 
     diffSharedFile = pkgs.writeScript "diff-shared-file" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       diff <(echo 'hi') <(${pkgs.rclone}/bin/rclone cat nextcloud:test-shared-file)
     '';
   in ''
diff --git a/nixos/tests/nginx-pubhtml.nix b/nixos/tests/nginx-pubhtml.nix
new file mode 100644
index 00000000000..432913cb42d
--- /dev/null
+++ b/nixos/tests/nginx-pubhtml.nix
@@ -0,0 +1,20 @@
+import ./make-test-python.nix {
+  name = "nginx-pubhtml";
+
+  machine = { pkgs, ... }: {
+    services.nginx.enable = true;
+    services.nginx.virtualHosts.localhost = {
+      locations."~ ^/\\~([a-z0-9_]+)(/.*)?$".alias = "/home/$1/public_html$2";
+    };
+    users.users.foo.isNormalUser = true;
+  };
+
+  testScript = ''
+    machine.wait_for_unit("nginx")
+    machine.wait_for_open_port(80)
+    machine.succeed("chmod 0711 /home/foo")
+    machine.succeed("su -c 'mkdir -p /home/foo/public_html' foo")
+    machine.succeed("su -c 'echo bar > /home/foo/public_html/bar.txt' foo")
+    machine.succeed('test "$(curl -fvvv http://localhost/~foo/bar.txt)" = bar')
+  '';
+}
diff --git a/nixos/tests/os-prober.nix b/nixos/tests/os-prober.nix
index 5407a62339f..6a38f5ca531 100644
--- a/nixos/tests/os-prober.nix
+++ b/nixos/tests/os-prober.nix
@@ -51,6 +51,8 @@ let
       hashed-mirrors =
       connect-timeout = 1
     '';
+    # save some memory
+    documentation.enable = false;
   };
   # /etc/nixos/configuration.nix for the vm
   configFile = pkgs.writeText "configuration.nix"  ''
diff --git a/nixos/tests/php/default.nix b/nixos/tests/php/default.nix
new file mode 100644
index 00000000000..9ab14f722d0
--- /dev/null
+++ b/nixos/tests/php/default.nix
@@ -0,0 +1,7 @@
+{ system ? builtins.currentSystem,
+  config ? {},
+  pkgs ? import ../../.. { inherit system config; }
+}: {
+  fpm = import ./fpm.nix { inherit system pkgs; };
+  pcre = import ./pcre.nix { inherit system pkgs; };
+}
diff --git a/nixos/tests/php/fpm.nix b/nixos/tests/php/fpm.nix
new file mode 100644
index 00000000000..e93a3183418
--- /dev/null
+++ b/nixos/tests/php/fpm.nix
@@ -0,0 +1,55 @@
+import ../make-test-python.nix ({pkgs, ...}: {
+  name = "php-fpm-nginx-test";
+  meta.maintainers = with pkgs.stdenv.lib.maintainers; [ etu ];
+
+  machine = { config, lib, pkgs, ... }: {
+    services.nginx = {
+      enable = true;
+
+      virtualHosts."phpfpm" = let
+        testdir = pkgs.writeTextDir "web/index.php" "<?php phpinfo();";
+      in {
+        root = "${testdir}/web";
+        locations."~ \.php$".extraConfig = ''
+          fastcgi_pass unix:${config.services.phpfpm.pools.foobar.socket};
+          fastcgi_index index.php;
+          include ${pkgs.nginx}/conf/fastcgi_params;
+          include ${pkgs.nginx}/conf/fastcgi.conf;
+        '';
+        locations."/" = {
+          tryFiles = "$uri $uri/ index.php";
+          index = "index.php index.html index.htm";
+        };
+      };
+    };
+
+    services.phpfpm.pools."foobar" = {
+      user = "nginx";
+      settings = {
+        "listen.group" = "nginx";
+        "listen.mode" = "0600";
+        "listen.owner" = "nginx";
+        "pm" = "dynamic";
+        "pm.max_children" = 5;
+        "pm.max_requests" = 500;
+        "pm.max_spare_servers" = 3;
+        "pm.min_spare_servers" = 1;
+        "pm.start_servers" = 2;
+      };
+    };
+  };
+  testScript = { ... }: ''
+    machine.wait_for_unit("nginx.service")
+    machine.wait_for_unit("phpfpm-foobar.service")
+
+    # Check so we get an evaluated PHP back
+    assert "PHP Version ${pkgs.php.version}" in machine.succeed("curl -vvv -s http://127.0.0.1:80/")
+
+    # Check so we have database and some other extensions loaded
+    assert "json" in machine.succeed("curl -vvv -s http://127.0.0.1:80/")
+    assert "opcache" in machine.succeed("curl -vvv -s http://127.0.0.1:80/")
+    assert "pdo_mysql" in machine.succeed("curl -vvv -s http://127.0.0.1:80/")
+    assert "pdo_pgsql" in machine.succeed("curl -vvv -s http://127.0.0.1:80/")
+    assert "pdo_sqlite" in machine.succeed("curl -vvv -s http://127.0.0.1:80/")
+  '';
+})
diff --git a/nixos/tests/php-pcre.nix b/nixos/tests/php/pcre.nix
index d5c22e0582a..56a87778579 100644
--- a/nixos/tests/php-pcre.nix
+++ b/nixos/tests/php/pcre.nix
@@ -1,7 +1,6 @@
-
-let testString = "can-use-subgroups"; in
-
-import ./make-test-python.nix ({ ...}: {
+let
+  testString = "can-use-subgroups";
+in import ../make-test-python.nix ({ ...}: {
   name = "php-httpd-pcre-jit-test";
   machine = { lib, pkgs, ... }: {
     time.timeZone = "UTC";
@@ -10,15 +9,13 @@ import ./make-test-python.nix ({ ...}: {
       adminAddr = "please@dont.contact";
       enablePHP = true;
       phpOptions = "pcre.jit = true";
-      extraConfig =
-      let
+      extraConfig = let
         testRoot = pkgs.writeText "index.php"
-        ''
-          <?php
+          ''
+            <?php
             preg_match('/(${testString})/', '${testString}', $result);
             var_dump($result);
-          ?>
-        '';
+          '';
       in
         ''
           Alias / ${testRoot}/
@@ -30,11 +27,11 @@ import ./make-test-python.nix ({ ...}: {
     };
   };
   testScript = { ... }:
-  ''
-    machine.wait_for_unit("httpd.service")
-    # Ensure php evaluation by matching on the var_dump syntax
-    assert 'string(${toString (builtins.stringLength testString)}) "${testString}"' in machine.succeed(
-        "curl -vvv -s http://127.0.0.1:80/index.php"
-    )
-  '';
+    ''
+      machine.wait_for_unit("httpd.service")
+      # Ensure php evaluation by matching on the var_dump syntax
+      assert 'string(${toString (builtins.stringLength testString)}) "${testString}"' in machine.succeed(
+          "curl -vvv -s http://127.0.0.1:80/index.php"
+      )
+    '';
 })
diff --git a/nixos/tests/quorum.nix b/nixos/tests/quorum.nix
new file mode 100644
index 00000000000..846d2a93018
--- /dev/null
+++ b/nixos/tests/quorum.nix
@@ -0,0 +1,79 @@
+import ./make-test-python.nix ({ pkgs, ... }: {
+  name = "quorum";
+  meta = with pkgs.stdenv.lib.maintainers; {
+    maintainers = [ mmahut ];
+  };
+
+  nodes = {
+    machine = { ... }: {
+      services.quorum = {
+        enable = true;
+        permissioned = false;
+        staticNodes = [ "enode://dd333ec28f0a8910c92eb4d336461eea1c20803eed9cf2c056557f986e720f8e693605bba2f4e8f289b1162e5ac7c80c914c7178130711e393ca76abc1d92f57@0.0.0.0:30303?discport=0" ];
+        genesis = {
+          alloc = {
+            "189d23d201b03ae1cf9113672df29a5d672aefa3" = {
+              balance = "0x446c3b15f9926687d2c40534fdb564000000000000";
+            };
+            "44b07d2c28b8ed8f02b45bd84ac7d9051b3349e6" = {
+              balance = "0x446c3b15f9926687d2c40534fdb564000000000000";
+            };
+            "4c1ccd426833b9782729a212c857f2f03b7b4c0d" = {
+              balance = "0x446c3b15f9926687d2c40534fdb564000000000000";
+            };
+            "7ae555d0f6faad7930434abdaac2274fd86ab516" = {
+              balance = "0x446c3b15f9926687d2c40534fdb564000000000000";
+            };
+            c1056df7c02b6f1a353052eaf0533cc7cb743b52 = {
+              balance = "0x446c3b15f9926687d2c40534fdb564000000000000";
+            };
+          };
+          coinbase = "0x0000000000000000000000000000000000000000";
+          config = {
+            byzantiumBlock = 1;
+            chainId = 10;
+            eip150Block = 1;
+            eip150Hash =
+              "0x0000000000000000000000000000000000000000000000000000000000000000";
+            eip155Block = 1;
+            eip158Block = 1;
+            isQuorum = true;
+            istanbul = {
+              epoch = 30000;
+              policy = 0;
+            };
+          };
+        difficulty = "0x1";
+        extraData =
+          "0x0000000000000000000000000000000000000000000000000000000000000000f8aff869944c1ccd426833b9782729a212c857f2f03b7b4c0d94189d23d201b03ae1cf9113672df29a5d672aefa39444b07d2c28b8ed8f02b45bd84ac7d9051b3349e694c1056df7c02b6f1a353052eaf0533cc7cb743b52947ae555d0f6faad7930434abdaac2274fd86ab516b8410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c0";
+        gasLimit = "0xe0000000";
+        gasUsed = "0x0";
+        mixHash =
+          "0x63746963616c2062797a616e74696e65206661756c7420746f6c6572616e6365";
+        nonce = "0x0";
+        number = "0x0";
+        parentHash =
+          "0x0000000000000000000000000000000000000000000000000000000000000000";
+        timestamp = "0x5cffc201";
+		  };
+     };
+    };
+  };
+
+  testScript = ''
+    start_all()
+    machine.wait_until_succeeds("mkdir -p /var/lib/quorum/keystore")
+    machine.wait_until_succeeds(
+        'echo \{\\"address\\":\\"9377bc3936de934c497e22917b81aa8774ac3bb0\\",\\"crypto\\":\{\\"cipher\\":\\"aes-128-ctr\\",\\"ciphertext\\":\\"ad8341d8ef225650403fd366c955f41095e438dd966a3c84b3d406818c1e366c\\",\\"cipherparams\\":\{\\"iv\\":\\"2a09f7a72fd6dff7c43150ff437e6ac2\\"\},\\"kdf\\":\\"scrypt\\",\\"kdfparams\\":\{\\"dklen\\":32,\\"n\\":262144,\\"p\\":1,\\"r\\":8,\\"salt\\":\\"d1a153845bb80cd6274c87c5bac8ac09fdfac5ff131a6f41b5ed319667f12027\\"\},\\"mac\\":\\"a9621ad88fa1d042acca6fc2fcd711f7e05bfbadea3f30f379235570c8e270d3\\"\},\\"id\\":\\"89e847a3-1527-42f6-a321-77de0a14ce02\\",\\"version\\":3\}\\" > /var/lib/quorum/keystore/UTC--2020-03-23T11-08-34.144812212Z--9377bc3936de934c497e22917b81aa8774ac3bb0'
+    )
+    machine.wait_until_succeeds(
+        "echo fe2725c4e8f7617764b845e8d939a65c664e7956eb47ed7d934573f16488efc1 > /var/lib/quorum/nodekey"
+    )
+    machine.wait_until_succeeds("systemctl restart quorum")
+    machine.wait_for_unit("quorum.service")
+    machine.sleep(15)
+    machine.wait_until_succeeds(
+        'geth attach /var/lib/quorum/geth.ipc --exec "eth.accounts" | grep 0x9377bc3936de934c497e22917b81aa8774ac3bb0'
+    )
+  '';
+})
diff --git a/nixos/tests/rabbitmq.nix b/nixos/tests/rabbitmq.nix
index 8e7f34d06e3..f403e4ac2ed 100644
--- a/nixos/tests/rabbitmq.nix
+++ b/nixos/tests/rabbitmq.nix
@@ -15,7 +15,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
 
     machine.wait_for_unit("rabbitmq.service")
     machine.wait_until_succeeds(
-        'su -s ${pkgs.stdenv.shell} rabbitmq -c "rabbitmqctl status"'
+        'su -s ${pkgs.runtimeShell} rabbitmq -c "rabbitmqctl status"'
     )
   '';
 })
diff --git a/nixos/tests/rxe.nix b/nixos/tests/rxe.nix
index 194a2e3d2b9..10753c4ed0c 100644
--- a/nixos/tests/rxe.nix
+++ b/nixos/tests/rxe.nix
@@ -28,7 +28,7 @@ in {
     # Test if rxe interface comes up
     server.wait_for_unit("default.target")
     server.succeed("systemctl status rxe.service")
-    server.succeed("ibv_devices | grep rxe0")
+    server.succeed("ibv_devices | grep rxe_eth1")
 
     client.wait_for_unit("default.target")
 
diff --git a/nixos/tests/switch-test.nix b/nixos/tests/switch-test.nix
index 7076bd77b77..9ef96cec5ef 100644
--- a/nixos/tests/switch-test.nix
+++ b/nixos/tests/switch-test.nix
@@ -22,7 +22,7 @@ import ./make-test-python.nix ({ pkgs, ...} : {
     # Ensures failures pass through using pipefail, otherwise failing to
     # switch-to-configuration is hidden by the success of `tee`.
     stderrRunner = pkgs.writeScript "stderr-runner" ''
-      #! ${pkgs.stdenv.shell}
+      #! ${pkgs.runtimeShell}
       set -e
       set -o pipefail
       exec env -i "$@" | tee /dev/stderr
diff --git a/nixos/tests/systemd-confinement.nix b/nixos/tests/systemd-confinement.nix
index b7b10fb36aa..f22836e227b 100644
--- a/nixos/tests/systemd-confinement.nix
+++ b/nixos/tests/systemd-confinement.nix
@@ -3,14 +3,14 @@ import ./make-test.nix {
 
   machine = { pkgs, lib, ... }: let
     testServer = pkgs.writeScript "testserver.sh" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       export PATH=${lib.escapeShellArg "${pkgs.coreutils}/bin"}
-      ${lib.escapeShellArg pkgs.stdenv.shell} 2>&1
+      ${lib.escapeShellArg pkgs.runtimeShell} 2>&1
       echo "exit-status:$?"
     '';
 
     testClient = pkgs.writeScriptBin "chroot-exec" ''
-      #!${pkgs.stdenv.shell} -e
+      #!${pkgs.runtimeShell} -e
       output="$(echo "$@" | nc -NU "/run/test$(< /teststep).sock")"
       ret="$(echo "$output" | sed -nre '$s/^exit-status:([0-9]+)$/\1/p')"
       echo "$output" | head -n -1
diff --git a/nixos/tests/systemd.nix b/nixos/tests/systemd.nix
index 8028145939b..ca2e36a443e 100644
--- a/nixos/tests/systemd.nix
+++ b/nixos/tests/systemd.nix
@@ -22,7 +22,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
     test-support.displayManager.auto.user = "alice";
 
     systemd.shutdown.test = pkgs.writeScript "test.shutdown" ''
-      #!${pkgs.stdenv.shell}
+      #!${pkgs.runtimeShell}
       PATH=${lib.makeBinPath (with pkgs; [ utillinux coreutils ])}
       mount -t 9p shared -o trans=virtio,version=9p2000.L /tmp/shared
       touch /tmp/shared/shutdown-test
diff --git a/nixos/tests/virtualbox.nix b/nixos/tests/virtualbox.nix
index f03dc1cc413..aec8da6a2af 100644
--- a/nixos/tests/virtualbox.nix
+++ b/nixos/tests/virtualbox.nix
@@ -23,7 +23,7 @@ let
     guestAdditions = pkgs.linuxPackages.virtualboxGuestAdditions;
 
     miniInit = ''
-      #!${pkgs.stdenv.shell} -xe
+      #!${pkgs.runtimeShell} -xe
       export PATH="${lib.makeBinPath [ pkgs.coreutils pkgs.utillinux ]}"
 
       mkdir -p /run/dbus
@@ -80,7 +80,7 @@ let
       touch /mnt-root/boot-done
       hostname "${vmName}"
       mkdir -p /nix/store
-      unshare -m ${escapeShellArg pkgs.stdenv.shell} -c '
+      unshare -m ${escapeShellArg pkgs.runtimeShell} -c '
         mount -t vboxsf nixstore /nix/store
         exec "$stage2Init"
       '
diff --git a/nixos/tests/wireguard/default.nix b/nixos/tests/wireguard/default.nix
index 8206823a918..e3bc31c600f 100644
--- a/nixos/tests/wireguard/default.nix
+++ b/nixos/tests/wireguard/default.nix
@@ -1,97 +1,71 @@
-let
-  wg-snakeoil-keys = import ./snakeoil-keys.nix;
-in
-
-import ../make-test-python.nix ({ pkgs, ...} : {
-  name = "wireguard";
-  meta = with pkgs.stdenv.lib.maintainers; {
-    maintainers = [ ma27 ];
-  };
-
-  nodes = {
-    peer0 = { lib, ... }: {
-      boot.kernel.sysctl = {
-        "net.ipv6.conf.all.forwarding" = "1";
-        "net.ipv6.conf.default.forwarding" = "1";
-        "net.ipv4.ip_forward" = "1";
-      };
-
-      networking.useDHCP = false;
-      networking.interfaces.eth1 = {
-        ipv4.addresses = lib.singleton {
-          address = "192.168.0.1";
-          prefixLength = 24;
-        };
-        ipv6.addresses = lib.singleton {
-          address = "fd00::1";
-          prefixLength = 64;
-        };
-      };
+import ../make-test-python.nix ({ pkgs, lib, ...} :
+  let
+    wg-snakeoil-keys = import ./snakeoil-keys.nix;
+    peer = (import ./make-peer.nix) { inherit lib; };
+  in
+  {
+    name = "wireguard";
+    meta = with pkgs.stdenv.lib.maintainers; {
+      maintainers = [ ma27 ];
+    };
 
-      networking.firewall.allowedUDPPorts = [ 23542 ];
-      networking.wireguard.interfaces.wg0 = {
-        ips = [ "10.23.42.1/32" "fc00::1/128" ];
-        listenPort = 23542;
+    nodes = {
+      peer0 = peer {
+        ip4 = "192.168.0.1";
+        ip6 = "fd00::1";
+        extraConfig = {
+          networking.firewall.allowedUDPPorts = [ 23542 ];
+          networking.wireguard.interfaces.wg0 = {
+            ips = [ "10.23.42.1/32" "fc00::1/128" ];
+            listenPort = 23542;
 
-        inherit (wg-snakeoil-keys.peer0) privateKey;
+            inherit (wg-snakeoil-keys.peer0) privateKey;
 
-        peers = lib.singleton {
-          allowedIPs = [ "10.23.42.2/32" "fc00::2/128" ];
+            peers = lib.singleton {
+              allowedIPs = [ "10.23.42.2/32" "fc00::2/128" ];
 
-          inherit (wg-snakeoil-keys.peer1) publicKey;
+              inherit (wg-snakeoil-keys.peer1) publicKey;
+            };
+          };
         };
       };
-    };
 
-    peer1 = { pkgs, lib, ... }: {
-      boot.kernel.sysctl = {
-        "net.ipv6.conf.all.forwarding" = "1";
-        "net.ipv6.conf.default.forwarding" = "1";
-        "net.ipv4.ip_forward" = "1";
-      };
-
-      networking.useDHCP = false;
-      networking.interfaces.eth1 = {
-        ipv4.addresses = lib.singleton {
-          address = "192.168.0.2";
-          prefixLength = 24;
-        };
-        ipv6.addresses = lib.singleton {
-          address = "fd00::2";
-          prefixLength = 64;
+      peer1 = peer {
+        ip4 = "192.168.0.2";
+        ip6 = "fd00::2";
+        extraConfig = {
+          networking.wireguard.interfaces.wg0 = {
+            ips = [ "10.23.42.2/32" "fc00::2/128" ];
+            listenPort = 23542;
+            allowedIPsAsRoutes = false;
+
+            inherit (wg-snakeoil-keys.peer1) privateKey;
+
+            peers = lib.singleton {
+              allowedIPs = [ "0.0.0.0/0" "::/0" ];
+              endpoint = "192.168.0.1:23542";
+              persistentKeepalive = 25;
+
+              inherit (wg-snakeoil-keys.peer0) publicKey;
+            };
+
+            postSetup = let inherit (pkgs) iproute; in ''
+              ${iproute}/bin/ip route replace 10.23.42.1/32 dev wg0
+              ${iproute}/bin/ip route replace fc00::1/128 dev wg0
+            '';
+          };
         };
       };
-
-      networking.wireguard.interfaces.wg0 = {
-        ips = [ "10.23.42.2/32" "fc00::2/128" ];
-        listenPort = 23542;
-        allowedIPsAsRoutes = false;
-
-        inherit (wg-snakeoil-keys.peer1) privateKey;
-
-        peers = lib.singleton {
-          allowedIPs = [ "0.0.0.0/0" "::/0" ];
-          endpoint = "192.168.0.1:23542";
-          persistentKeepalive = 25;
-
-          inherit (wg-snakeoil-keys.peer0) publicKey;
-        };
-
-        postSetup = let inherit (pkgs) iproute; in ''
-          ${iproute}/bin/ip route replace 10.23.42.1/32 dev wg0
-          ${iproute}/bin/ip route replace fc00::1/128 dev wg0
-        '';
-      };
     };
-  };
 
-  testScript = ''
-    start_all()
+    testScript = ''
+      start_all()
 
-    peer0.wait_for_unit("wireguard-wg0.service")
-    peer1.wait_for_unit("wireguard-wg0.service")
+      peer0.wait_for_unit("wireguard-wg0.service")
+      peer1.wait_for_unit("wireguard-wg0.service")
 
-    peer1.succeed("ping -c5 fc00::1")
-    peer1.succeed("ping -c5 10.23.42.1")
-  '';
-})
+      peer1.succeed("ping -c5 fc00::1")
+      peer1.succeed("ping -c5 10.23.42.1")
+    '';
+  }
+)
diff --git a/nixos/tests/wireguard/make-peer.nix b/nixos/tests/wireguard/make-peer.nix
new file mode 100644
index 00000000000..d2740549738
--- /dev/null
+++ b/nixos/tests/wireguard/make-peer.nix
@@ -0,0 +1,23 @@
+{ lib, ... }: { ip4, ip6, extraConfig }:
+lib.mkMerge [
+  {
+    boot.kernel.sysctl = {
+      "net.ipv6.conf.all.forwarding" = "1";
+      "net.ipv6.conf.default.forwarding" = "1";
+      "net.ipv4.ip_forward" = "1";
+    };
+
+    networking.useDHCP = false;
+    networking.interfaces.eth1 = {
+      ipv4.addresses = [{
+        address = ip4;
+        prefixLength = 24;
+      }];
+      ipv6.addresses = [{
+        address = ip6;
+        prefixLength = 64;
+      }];
+    };
+  }
+  extraConfig
+]
diff --git a/nixos/tests/wireguard/wg-quick.nix b/nixos/tests/wireguard/wg-quick.nix
new file mode 100644
index 00000000000..7354dd01a34
--- /dev/null
+++ b/nixos/tests/wireguard/wg-quick.nix
@@ -0,0 +1,63 @@
+import ../make-test-python.nix ({ pkgs, lib, ... }:
+  let
+    wg-snakeoil-keys = import ./snakeoil-keys.nix;
+    peer = (import ./make-peer.nix) { inherit lib; };
+  in
+  {
+    name = "wg-quick";
+    meta = with pkgs.stdenv.lib.maintainers; {
+      maintainers = [ xwvvvvwx ];
+    };
+
+    nodes = {
+      peer0 = peer {
+        ip4 = "192.168.0.1";
+        ip6 = "fd00::1";
+        extraConfig = {
+          networking.firewall.allowedUDPPorts = [ 23542 ];
+          networking.wg-quick.interfaces.wg0 = {
+            address = [ "10.23.42.1/32" "fc00::1/128" ];
+            listenPort = 23542;
+
+            inherit (wg-snakeoil-keys.peer0) privateKey;
+
+            peers = lib.singleton {
+              allowedIPs = [ "10.23.42.2/32" "fc00::2/128" ];
+
+              inherit (wg-snakeoil-keys.peer1) publicKey;
+            };
+          };
+        };
+      };
+
+      peer1 = peer {
+        ip4 = "192.168.0.2";
+        ip6 = "fd00::2";
+        extraConfig = {
+          networking.wg-quick.interfaces.wg0 = {
+            address = [ "10.23.42.2/32" "fc00::2/128" ];
+            inherit (wg-snakeoil-keys.peer1) privateKey;
+
+            peers = lib.singleton {
+              allowedIPs = [ "0.0.0.0/0" "::/0" ];
+              endpoint = "192.168.0.1:23542";
+              persistentKeepalive = 25;
+
+              inherit (wg-snakeoil-keys.peer0) publicKey;
+            };
+          };
+        };
+      };
+    };
+
+    testScript = ''
+      start_all()
+
+      peer0.wait_for_unit("wg-quick-wg0.service")
+      peer1.wait_for_unit("wg-quick-wg0.service")
+
+      peer1.succeed("ping -c5 fc00::1")
+      peer1.succeed("ping -c5 10.23.42.1")
+    '';
+  }
+)
diff --git a/pkgs/applications/accessibility/contrast/default.nix b/pkgs/applications/accessibility/contrast/default.nix
index f82462c3933..884cb0ed88d 100644
--- a/pkgs/applications/accessibility/contrast/default.nix
+++ b/pkgs/applications/accessibility/contrast/default.nix
@@ -40,6 +40,7 @@ rustPlatform.buildRustPackage rec {
     pkgconfig
     python3
     wrapGAppsHook
+    glib # for glib-compile-resources
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/MMA/default.nix b/pkgs/applications/audio/MMA/default.nix
index 4304fe59bdf..8b7629bc908 100644
--- a/pkgs/applications/audio/MMA/default.nix
+++ b/pkgs/applications/audio/MMA/default.nix
@@ -61,7 +61,7 @@
 
   meta = {
     description = "Creates MIDI tracks for a soloist to perform over from a user supplied file containing chords";
-    homepage =  http://www.mellowood.ca/mma/index.html;
+    homepage =  "https://www.mellowood.ca/mma/index.html";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.magnetophon ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/audio/aeolus/default.nix b/pkgs/applications/audio/aeolus/default.nix
index ee9932a7aa3..bfd75b4e75c 100644
--- a/pkgs/applications/audio/aeolus/default.nix
+++ b/pkgs/applications/audio/aeolus/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "aeolus";
-  version = "0.9.7";
+  version = "0.9.8";
 
   src = fetchurl {
     url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2";
-    sha256 = "0lhbr95hmbfj8ynbcpawn7jzjbpvrkm6k2yda39yhqk1bzg38v2k";
+    sha256 = "1zfr3567mwbqsfybkhg03n5dvmhllk88c9ayb10qzz2nh6d7g2qn";
   };
 
   buildInputs = [
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Synthetized (not sampled) pipe organ emulator";
-    homepage = http://kokkinizita.linuxaudio.org/linuxaudio/aeolus/index.html;
+    homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/aeolus/index.html";
     license = stdenv.lib.licenses.lgpl3;
     platforms = stdenv.lib.platforms.linux;
     maintainers = [ stdenv.lib.maintainers.nico202 ];
diff --git a/pkgs/applications/audio/ardour/default.nix b/pkgs/applications/audio/ardour/default.nix
index 5b2f6931ed1..c1749029cdc 100644
--- a/pkgs/applications/audio/ardour/default.nix
+++ b/pkgs/applications/audio/ardour/default.nix
@@ -4,7 +4,7 @@
 , librdf_raptor, librdf_rasqal, libsamplerate, libsigcxx, libsndfile
 , libusb, libuuid, libxml2, libxslt, lilv, lrdf, lv2, makeWrapper
 , perl, pkgconfig, python2, rubberband, serd, sord, sratom
-, taglib, vampSDK, dbus, fftw, pango, suil, libarchive
+, taglib, vamp-plugin-sdk, dbus, fftw, pango, suil, libarchive
 , wafHook }:
 
 let
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
       libmad libogg librdf_raptor librdf_rasqal libsamplerate
       libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv lrdf lv2
       makeWrapper pango perl pkgconfig python2 rubberband serd sord
-      sratom suil taglib vampSDK libarchive
+      sratom suil taglib vamp-plugin-sdk libarchive
     ];
 
   # ardour's wscript has a "tarball" target but that required the git revision
diff --git a/pkgs/applications/audio/avldrums-lv2/default.nix b/pkgs/applications/audio/avldrums-lv2/default.nix
deleted file mode 100644
index d71718c32a8..00000000000
--- a/pkgs/applications/audio/avldrums-lv2/default.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ stdenv, fetchFromGitHub, pkgconfig, pango, cairo, libGLU, lv2 }:
-
-stdenv.mkDerivation rec {
-  pname = "avldrums.lv2";
-  version = "0.4.0";
-
-  src = fetchFromGitHub {
-    owner = "x42";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "1z70rcq6z3gkb4fm8dm9hs31bslwr97zdh2n012fzki9b9rdj5qv";
-    fetchSubmodules = true;
-  };
-
-  installFlags = [ "PREFIX=$(out)" ];
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [
-    pango cairo libGLU lv2
-  ];
-
-  meta = with stdenv.lib; {
-    description = "Dedicated AVLDrumkits LV2 Plugin";
-    homepage    = http://x42-plugins.com/x42/x42-avldrums;
-    license     = licenses.gpl2;
-    maintainers = [ maintainers.magnetophon ];
-    platforms   = [ "i686-linux" "x86_64-linux" ];
-  };
-}
diff --git a/pkgs/applications/audio/beast/default.nix b/pkgs/applications/audio/beast/default.nix
deleted file mode 100644
index 29cecb16999..00000000000
--- a/pkgs/applications/audio/beast/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{ stdenv, fetchurl, zlib, guile, libart_lgpl, pkgconfig, intltool
-, gtk2, glib, libogg, libvorbis, libgnomecanvas, gettext, perl }:
-
-stdenv.mkDerivation rec {
-  name = "beast-0.7.1";
-
-  src = fetchurl {
-    url = "https://ftp.gtk.org/pub/beast/v0.7/${name}.tar.bz2";
-    sha256 = "0jyl1i1918rsn4296w07fsf6wx3clvad522m3bzgf8ms7gxivg5l";
-  };
-
-  buildInputs =
-    [ zlib guile libart_lgpl pkgconfig intltool gtk2 glib
-      libogg libvorbis libgnomecanvas gettext
-    ];
-
-  patchPhase = ''
-    unset patchPhase; patchPhase
-    sed 's=-DG_DISABLE_DEPRECATED==g' -i `find -type f` # the patches didn't remove all occurences
-    sed 's=/bin/bash=/${stdenv.shell}=g' -i `find -type f`
-    sed 's=/usr/bin/perl=/${perl}/bin/perl=g' -i `find -type f`
-  '';
-
-  patches =
-    [ (fetchurl {
-        url = mirror://gentoo/distfiles/beast-0.7.1-guile-1.8.diff.bz2;
-        sha256 = "dc5194deff4b0a0eec368a69090db682d0c3113044ce2c2ed017ddfec9d3814e";
-      })
-      ./patch.patch # patches taken from gentoo
-    ];
-
-  meta = with stdenv.lib; {
-    description = "A music composition and modular synthesis application";
-    homepage = http://beast.gtk.org;
-    license = with licenses; [ gpl2 lgpl21 ];
-    broken = true;
-  };
-}
diff --git a/pkgs/applications/audio/bshapr/default.nix b/pkgs/applications/audio/bshapr/default.nix
index 88a671495c3..d2206cf93b5 100644
--- a/pkgs/applications/audio/bshapr/default.nix
+++ b/pkgs/applications/audio/bshapr/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "BShapr";
-  version = "0.7";
+  version = "0.8";
 
   src = fetchFromGitHub {
     owner = "sjaehn";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1422xay28jkmqlj5y4vhb57kljy6ysvxh20cxpfxm980m8n54gq5";
+    sha256 = "0jlq5rjicc4fxlpk869dg0l5bwwz8k9aj2wfk9v89b0qw8l8kaxl";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/audio/cantata/default.nix b/pkgs/applications/audio/cantata/default.nix
index cd1783ff685..799cefc7819 100644
--- a/pkgs/applications/audio/cantata/default.nix
+++ b/pkgs/applications/audio/cantata/default.nix
@@ -1,5 +1,5 @@
-{ mkDerivation, lib, fetchFromGitHub, cmake, pkgconfig, vlc
-, qtbase, qtmultimedia, qtsvg, qttools
+{ mkDerivation, lib, fetchFromGitHub, cmake, pkgconfig
+, qtbase, qtsvg, qttools
 
 # Cantata doesn't build with cdparanoia enabled so we disable that
 # default for now until I (or someone else) figure it out.
@@ -9,12 +9,14 @@
 , withMusicbrainz ? false, libmusicbrainz5
 
 , withTaglib ? true, taglib, taglib_extras
+, withHttpStream ? true, qtmultimedia
 , withReplaygain ? true, ffmpeg, speex, mpg123
 , withMtp ? true, libmtp
 , withOnlineServices ? true
 , withDevices ? true, udisks2
 , withDynamic ? true
 , withHttpServer ? true
+, withLibVlc ? false, vlc
 , withStreams ? true
 }:
 
@@ -26,6 +28,7 @@ assert withMtp -> withTaglib;
 assert withMusicbrainz -> withCdda && withTaglib;
 assert withOnlineServices -> withTaglib;
 assert withReplaygain -> withTaglib;
+assert withLibVlc -> withHttpStream;
 
 let
   version = "2.4.1";
@@ -45,15 +48,17 @@ in mkDerivation {
     sha256 = "0ix7xp352bziwz31mw79y7wxxmdn6060p8ry2px243ni1lz1qx1c";
   };
 
-  buildInputs = [ vlc qtbase qtmultimedia qtsvg ]
+  buildInputs = [ qtbase qtsvg ]
     ++ lib.optionals withTaglib [ taglib taglib_extras ]
     ++ lib.optionals withReplaygain [ ffmpeg speex mpg123 ]
+    ++ lib.optional  withHttpStream qtmultimedia
     ++ lib.optional  withCdda cdparanoia
     ++ lib.optional  withCddb libcddb
     ++ lib.optional  withLame lame
     ++ lib.optional  withMtp libmtp
     ++ lib.optional  withMusicbrainz libmusicbrainz5
-    ++ lib.optional  withUdisks udisks2;
+    ++ lib.optional  withUdisks udisks2
+    ++ lib.optional  withLibVlc vlc;
 
   nativeBuildInputs = [ cmake pkgconfig qttools ];
 
@@ -62,6 +67,7 @@ in mkDerivation {
   cmakeFlags = lib.flatten [
     (fstats withTaglib        [ "TAGLIB" "TAGLIB_EXTRAS" ])
     (fstats withReplaygain    [ "FFMPEG" "MPG123" "SPEEXDSP" ])
+    (fstat withHttpStream     "HTTP_STREAM_PLAYBACK")
     (fstat withCdda           "CDPARANOIA")
     (fstat withCddb           "CDDB")
     (fstat withLame           "LAME")
@@ -71,6 +77,7 @@ in mkDerivation {
     (fstat withDynamic        "DYNAMIC")
     (fstat withDevices        "DEVICES_SUPPORT")
     (fstat withHttpServer     "HTTP_SERVER")
+    (fstat withLibVlc         "LIBVLC")
     (fstat withStreams        "STREAMS")
     (fstat withUdisks         "UDISKS2")
     "-DENABLE_HTTPS_SUPPORT=ON"
diff --git a/pkgs/applications/audio/cheesecutter/0001-fix-impure-build-date-display.patch b/pkgs/applications/audio/cheesecutter/0001-fix-impure-build-date-display.patch
new file mode 100644
index 00000000000..2e2746f4341
--- /dev/null
+++ b/pkgs/applications/audio/cheesecutter/0001-fix-impure-build-date-display.patch
@@ -0,0 +1,26 @@
+diff --git a/src/ct2util.d b/src/ct2util.d
+index 523cadc..e462b09 100644
+--- a/src/ct2util.d
++++ b/src/ct2util.d
+@@ -105,7 +105,7 @@ int main(string[] args) {
+ 	speeds.length = 32;
+ 	masks.length = 32;
+ 	void printheader() {
+-		enum hdr = "CheeseCutter 2 utilities" ~ com.util.versionInfo;
++		enum hdr = "CheeseCutter 2 utilities";
+ 		writefln(hdr);
+ 		writefln("\nUsage: \t%s <command> <options> <infile> <-o outfile>",args[0]);
+ 		writefln("\t%s import <infile> <infile2> <-o outfile>",args[0]);
+diff --git a/src/ui/ui.d b/src/ui/ui.d
+index e418dda..21af408 100644
+--- a/src/ui/ui.d
++++ b/src/ui/ui.d
+@@ -231,7 +231,7 @@ class Infobar : Window {
+ 	  
+ 		screen.clrtoeol(0, headerColor);
+ 
+-		enum hdr = "CheeseCutter 2.9" ~ com.util.versionInfo;
++		enum hdr = "CheeseCutter 2.9";
+ 		screen.cprint(4, 0, 1, headerColor, hdr);
+ 		screen.cprint(screen.width - 14, 0, 1, headerColor, "F12 = Help");
+ 		int c1 = audio.player.isPlaying ? 13 : 12;
diff --git a/pkgs/applications/audio/cheesecutter/default.nix b/pkgs/applications/audio/cheesecutter/default.nix
new file mode 100644
index 00000000000..732c2968fde
--- /dev/null
+++ b/pkgs/applications/audio/cheesecutter/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, lib, fetchFromGitHub, fetchpatch
+, acme, ldc, patchelf
+, SDL
+}:
+
+stdenv.mkDerivation rec {
+  pname = "cheesecutter";
+  version = "unstable-2019-12-06";
+
+  src = fetchFromGitHub {
+    owner = "theyamo";
+    repo = "CheeseCutter";
+    rev = "6b433c5512d693262742a93c8bfdfb353d4be853";
+    sha256 = "1szlcg456b208w1237581sg21x69mqlh8cr6v8yvbhxdz9swxnwy";
+  };
+
+  nativeBuildInputs = [ acme ldc patchelf ];
+
+  buildInputs = [ SDL ];
+
+  patches = [
+    ./0001-fix-impure-build-date-display.patch
+  ];
+
+  makefile = "Makefile.ldc";
+
+  installPhase = ''
+    for exe in {ccutter,ct2util}; do
+      install -D $exe $out/bin/$exe
+    done
+
+    mkdir -p $out/share/cheesecutter/example_tunes
+    cp -r tunes/* $out/share/cheesecutter/example_tunes
+  '';
+
+  postFixup = ''
+    rpath=$(patchelf --print-rpath $out/bin/ccutter)
+    patchelf --set-rpath "$rpath:${lib.makeLibraryPath buildInputs}" $out/bin/ccutter
+  '';
+
+  meta = with lib; {
+    description = "A tracker program for composing music for the SID chip.";
+    homepage = "https://github.com/theyamo/CheeseCutter/";
+    license = licenses.gpl2;
+    platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ];
+    maintainers = with maintainers; [ OPNA2608 ];
+  };
+}
diff --git a/pkgs/applications/audio/deadbeef/default.nix b/pkgs/applications/audio/deadbeef/default.nix
index 2df6b9931cf..4c2323fbe8a 100644
--- a/pkgs/applications/audio/deadbeef/default.nix
+++ b/pkgs/applications/audio/deadbeef/default.nix
@@ -59,13 +59,13 @@ assert remoteSupport -> curl != null;
 
 stdenv.mkDerivation rec {
   pname = "deadbeef";
-  version = "1.8.2";
+  version = "1.8.3";
 
   src = fetchFromGitHub {
     owner = "DeaDBeeF-Player";
     repo = "deadbeef";
     rev = version;
-    sha256 = "016wwnh5jqdcfxn1ff6in5dz73c3gdhh3fva8inq7sc3vzdz5khj";
+    sha256 = "0n0q7zfl56gnadcqqp5rg7sbh1xvfcmp7cvmh2ax07037b346qig";
   };
 
   buildInputs = with stdenv.lib; [ jansson ]
@@ -108,7 +108,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Ultimate Music Player for GNU/Linux";
-    homepage = http://deadbeef.sourceforge.net/;
+    homepage = "http://deadbeef.sourceforge.net/";
     license = licenses.gpl2;
     platforms = [ "x86_64-linux" "i686-linux" ];
     maintainers = [ maintainers.abbradar ];
diff --git a/pkgs/applications/audio/deadbeef/fix-wildmidi.patch b/pkgs/applications/audio/deadbeef/fix-wildmidi.patch
deleted file mode 100644
index c37308459bb..00000000000
--- a/pkgs/applications/audio/deadbeef/fix-wildmidi.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/plugins/wildmidi/src/wildmidi_lib.c
-+++ b/plugins/wildmidi/src/wildmidi_lib.c
-@@ -394,11 +394,11 @@ free_gauss (void) {
-     }
- }
- 
--unsigned long int delay_size[4][2];
--signed long int a[5][2];
--signed long int b[5][2];
--signed long int gain_in[4];
--signed long int gain_out[4];
-+static unsigned long int delay_size[4][2];
-+static signed long int a[5][2];
-+static signed long int b[5][2];
-+static signed long int gain_in[4];
-+static signed long int gain_out[4];
- 
- void init_lowpass (void) {
-        float c = 0;
diff --git a/pkgs/applications/audio/drumkv1/default.nix b/pkgs/applications/audio/drumkv1/default.nix
index d3399315376..ae32a5f41a3 100644
--- a/pkgs/applications/audio/drumkv1/default.nix
+++ b/pkgs/applications/audio/drumkv1/default.nix
@@ -2,11 +2,11 @@
 
 mkDerivation rec {
   pname = "drumkv1";
-  version = "0.9.12";
+  version = "0.9.13";
 
   src = fetchurl {
     url = "mirror://sourceforge/drumkv1/${pname}-${version}.tar.gz";
-    sha256 = "0hmnmk9vvi43wl6say0dg7j088h7mmwmfdwjhsq89c7i7cpg78da";
+    sha256 = "1h88sakxs0b20k8v2sh14y05fin1zqmhnid6h9mk9c37ixxg58ia";
   };
 
   buildInputs = [ libjack2 alsaLib libsndfile liblo lv2 qt5.qtbase qt5.qttools ];
@@ -15,7 +15,7 @@ mkDerivation rec {
 
   meta = with lib; {
     description = "An old-school drum-kit sampler synthesizer with stereo fx";
-    homepage = http://drumkv1.sourceforge.net/;
+    homepage = "http://drumkv1.sourceforge.net/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/elisa/default.nix b/pkgs/applications/audio/elisa/default.nix
deleted file mode 100644
index 1d56ce089d9..00000000000
--- a/pkgs/applications/audio/elisa/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ mkDerivation, fetchFromGitHub, lib
-, extra-cmake-modules, kdoctools, wrapGAppsHook
-, qtmultimedia, qtquickcontrols2, qtwebsockets
-, kconfig, kcmutils, kcrash, kdeclarative, kfilemetadata, kinit, kirigami2
-, baloo, vlc
-}:
-
-mkDerivation rec {
-  pname = "elisa";
-  version = "19.12.3";
-
-  src = fetchFromGitHub {
-    owner  = "KDE";
-    repo   = "elisa";
-    rev    = "v${version}";
-    sha256 = "0s1sixkrx4czckzg0llkrbp8rp397ljsq1c309z23m277jsmnnb6";
-  };
-
-  buildInputs = [ vlc ];
-
-  nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
-
-  propagatedBuildInputs = [
-    qtmultimedia qtquickcontrols2 qtwebsockets
-    kconfig kcmutils kcrash kdeclarative kfilemetadata kinit kirigami2
-    baloo
-  ];
-
-  enableParallelBuilding = true;
-
-  meta = with lib; {
-    description = "Elisa Music Player";
-    license     = licenses.gpl3;
-    maintainers = with maintainers; [ peterhoeg ];
-    inherit (kconfig.meta) platforms;
-  };
-}
diff --git a/pkgs/applications/audio/faust/faust2.nix b/pkgs/applications/audio/faust/faust2.nix
index 74a5f4d383d..cca0e21f835 100644
--- a/pkgs/applications/audio/faust/faust2.nix
+++ b/pkgs/applications/audio/faust/faust2.nix
@@ -20,13 +20,13 @@ with stdenv.lib.strings;
 
 let
 
-  version = "2.20.2";
+  version = "unstable-2020-03-20";
 
   src = fetchFromGitHub {
     owner = "grame-cncm";
     repo = "faust";
-    rev = version;
-    sha256 = "08hv8gyj6c83128z3si92r1ka5ckf9sdpn5jdnlhrqyzja4mrxsy";
+    rev = "2782088d4485f1c572755f41e7a072b41cb7148a";
+    sha256 = "1l7bi2mq10s5wm8g4cdipg8gndd478x897qv0h7nqi1s2q9nq99p";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/applications/audio/faust/faust2jaqt.nix b/pkgs/applications/audio/faust/faust2jaqt.nix
index 5a015e5ca31..144d19cb01e 100644
--- a/pkgs/applications/audio/faust/faust2jaqt.nix
+++ b/pkgs/applications/audio/faust/faust2jaqt.nix
@@ -3,6 +3,7 @@
 , opencv
 , qt4
 , libsndfile
+, which
 }:
 
 faust.wrapWithBuildEnv {
@@ -19,6 +20,7 @@ faust.wrapWithBuildEnv {
     opencv
     qt4
     libsndfile
+    which
   ];
 
 }
diff --git a/pkgs/applications/audio/faust/faust2lv2.nix b/pkgs/applications/audio/faust/faust2lv2.nix
index 3472ce5047e..51d956b1403 100644
--- a/pkgs/applications/audio/faust/faust2lv2.nix
+++ b/pkgs/applications/audio/faust/faust2lv2.nix
@@ -2,6 +2,7 @@
 , faust
 , lv2
 , qt4
+, which
 
 }:
 
@@ -9,6 +10,6 @@ faust.wrapWithBuildEnv {
 
   baseName = "faust2lv2";
 
-  propagatedBuildInputs = [ boost lv2 qt4 ];
+  propagatedBuildInputs = [ boost lv2 qt4 which ];
 
 }
diff --git a/pkgs/applications/audio/ft2-clone/default.nix b/pkgs/applications/audio/ft2-clone/default.nix
index 5bebf1c667c..e80239553f1 100644
--- a/pkgs/applications/audio/ft2-clone/default.nix
+++ b/pkgs/applications/audio/ft2-clone/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ft2-clone";
-  version = "1.09";
+  version = "1.15";
 
   src = fetchFromGitHub {
     owner = "8bitbubsy";
     repo = "ft2-clone";
     rev = "v${version}";
-    sha256 = "18my7fywaf66rq8phsly8lglxzpglran8rj27fvwgpni8098ic7d";
+    sha256 = "19xgdaij71gpvq216zjlp60zmfdl2a8kf8sc3bpk8a4d4xh4n151";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/audio/gnome-podcasts/default.nix b/pkgs/applications/audio/gnome-podcasts/default.nix
index 47945de7833..26175085994 100644
--- a/pkgs/applications/audio/gnome-podcasts/default.nix
+++ b/pkgs/applications/audio/gnome-podcasts/default.nix
@@ -43,6 +43,7 @@ rustPlatform.buildRustPackage rec {
     rustc
     python3
     wrapGAppsHook
+    glib
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/grandorgue/default.nix b/pkgs/applications/audio/grandorgue/default.nix
new file mode 100644
index 00000000000..e2ba4ee2244
--- /dev/null
+++ b/pkgs/applications/audio/grandorgue/default.nix
@@ -0,0 +1,32 @@
+{ lib, stdenv, fetchsvn, cmake, pkg-config, gcc, pkgconfig, fftwFloat, alsaLib
+, zlib, wavpack, wxGTK31, udev, jackaudioSupport ? false, libjack2
+, includeDemo ? true }:
+
+stdenv.mkDerivation rec {
+  pname = "grandorgue";
+  rev = "2333";
+  version = "0.3.1-r${rev}";
+  src = fetchsvn {
+    url = "https://svn.code.sf.net/p/ourorgan/svn/trunk";
+    inherit rev;
+    sha256 = "0xzjdc2g4gja2lpmn21xhdskv43qpbpzkbb05jfqv6ma2zwffzz1";
+  };
+
+  nativeBuildInputs = [ cmake pkg-config ];
+
+  buildInputs = [ pkgconfig fftwFloat alsaLib zlib wavpack wxGTK31 udev ]
+    ++ lib.optional jackaudioSupport libjack2;
+
+  cmakeFlags = lib.optional (!jackaudioSupport) [
+    "-DRTAUDIO_USE_JACK=OFF"
+    "-DRTMIDI_USE_JACK=OFF"
+  ] ++ lib.optional (!includeDemo) "-DINSTALL_DEMO=OFF";
+
+  meta = {
+    description = "Virtual Pipe Organ Software";
+    homepage = "https://sourceforge.net/projects/ourorgan";
+    license = stdenv.lib.licenses.gpl2;
+    platforms = stdenv.lib.platforms.linux;
+    maintainers = [ stdenv.lib.maintainers.puzzlewolf ];
+  };
+}
diff --git a/pkgs/applications/audio/jackmix/default.nix b/pkgs/applications/audio/jackmix/default.nix
index fe7c83dd56f..5df6e1e2dae 100644
--- a/pkgs/applications/audio/jackmix/default.nix
+++ b/pkgs/applications/audio/jackmix/default.nix
@@ -9,9 +9,8 @@ stdenv.mkDerivation {
 
   patches = [ ./no_error.patch ];
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ scons.py2 pkgconfig ];
   buildInputs = [
-    scons
     qt4
     lash
     jack
diff --git a/pkgs/applications/audio/lingot/default.nix b/pkgs/applications/audio/lingot/default.nix
index d2ec92e0654..bf45a466d30 100644
--- a/pkgs/applications/audio/lingot/default.nix
+++ b/pkgs/applications/audio/lingot/default.nix
@@ -1,25 +1,45 @@
-{ stdenv, fetchurl, pkgconfig, intltool, gtk2, alsaLib, libglade }:
+{ stdenv
+, fetchurl
+, pkg-config
+, intltool
+, gtk3
+, wrapGAppsHook
+, alsaLib
+, libpulseaudio
+, fftw
+}:
 
-stdenv.mkDerivation {
-  name = "lingot-0.9.1";
+stdenv.mkDerivation rec {
+  pname = "lingot";
+  version = "1.0.1";
 
   src = fetchurl {
-    url = mirror://savannah/lingot/lingot-0.9.1.tar.gz;
-    sha256 = "0ygras6ndw2fylwxx86ac11pcr2y2bcfvvgiwrh92z6zncx254gc";
+    url = "mirror://savannah/${pname}/${pname}-${version}.tar.gz";
+    sha256 = "cbjHe7mI6DhKDsv0yGHYOPe5hShKjhj3VTKrmBbGoA8=";
   };
 
-  hardeningDisable = [ "format" ];
+  nativeBuildInputs = [
+    pkg-config
+    intltool
+    wrapGAppsHook
+  ];
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ intltool gtk2 alsaLib libglade ];
+  buildInputs = [
+    gtk3
+    alsaLib
+    libpulseaudio
+    fftw
+  ];
 
-  configureFlags = [ "--disable-jack" ];
+  configureFlags = [
+    "--disable-jack"
+  ];
 
   meta = {
     description = "Not a Guitar-Only tuner";
-    homepage = https://www.nongnu.org/lingot/;
+    homepage = "https://www.nongnu.org/lingot/";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = with stdenv.lib.platforms; linux;
-    maintainers = with stdenv.lib.maintainers; [viric];
+    maintainers = with stdenv.lib.maintainers; [ viric ];
   };
 }
diff --git a/pkgs/applications/audio/lollypop/default.nix b/pkgs/applications/audio/lollypop/default.nix
index ddb4646ba54..d0f88170980 100644
--- a/pkgs/applications/audio/lollypop/default.nix
+++ b/pkgs/applications/audio/lollypop/default.nix
@@ -23,7 +23,7 @@
 
 python3.pkgs.buildPythonApplication rec  {
   pname = "lollypop";
-  version = "1.2.23";
+  version = "1.2.32";
 
   format = "other";
   doCheck = false;
@@ -32,7 +32,7 @@ python3.pkgs.buildPythonApplication rec  {
     url = "https://gitlab.gnome.org/World/lollypop";
     rev = "refs/tags/${version}";
     fetchSubmodules = true;
-    sha256 = "059z7ri5qwkmfh2kvv8rq5wp80mz75423wc5hnm33wb9sgdd5x47";
+    sha256 = "03x6qihd349pq5lmgahb77sys60g16v5v6qkdlzf8k88451k8p7n";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/audio/lsp-plugins/default.nix b/pkgs/applications/audio/lsp-plugins/default.nix
index b146fcecc8e..8a2f64b4efd 100644
--- a/pkgs/applications/audio/lsp-plugins/default.nix
+++ b/pkgs/applications/audio/lsp-plugins/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lsp-plugins";
-  version = "1.1.13";
+  version = "1.1.15";
 
   src = fetchFromGitHub {
     owner = "sadko4u";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "00mhrr873kgcnqy3q0yi1r5zacfcvz7fqpzsmfhw5d095jm970al";
+    sha256 = "0lynyjs5zp27gnzcv8a23pvb7c1ghzc2dspypca3ciq40bfpfzik";
   };
 
   nativeBuildInputs = [ pkgconfig php makeWrapper ];
@@ -19,6 +19,7 @@ stdenv.mkDerivation rec {
 
   makeFlags = [
     "PREFIX=${placeholder ''out''}"
+    "ETC_PATH=$(out)/etc"
   ];
 
   NIX_CFLAGS_COMPILE = "-DLSP_NO_EXPERIMENTAL";
diff --git a/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix b/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix
index fece392ab1c..735e7efe54d 100644
--- a/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix
+++ b/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix
@@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
   buildInputs = [ faust2jaqt faust2lv2 ];
 
   buildPhase = ''
+    echo "hack out autoComp.dsp due to https://github.com/grame-cncm/faust/407/issues "
+    rm autoComp.dsp
     for f in *.dsp;
     do
       echo "compiling standalone from" $f
diff --git a/pkgs/applications/audio/mixxx/default.nix b/pkgs/applications/audio/mixxx/default.nix
index 82db91dcb07..8de05ee309b 100644
--- a/pkgs/applications/audio/mixxx/default.nix
+++ b/pkgs/applications/audio/mixxx/default.nix
@@ -1,11 +1,22 @@
-{ stdenv, mkDerivation, fetchFromGitHub, chromaprint
+{ stdenv, mkDerivation, fetchurl, fetchFromGitHub, chromaprint
 , fftw, flac, faad2, glibcLocales, mp4v2
 , libid3tag, libmad, libopus, libshout, libsndfile, libusb1, libvorbis
 , libGLU, libxcb, lilv, lv2, opusfile
 , pkgconfig, portaudio, portmidi, protobuf, qtbase, qtscript, qtsvg
-, qtx11extras, rubberband, scons, sqlite, taglib, upower, vampSDK
+, qtx11extras, rubberband, scons, sqlite, taglib, upower, vamp-plugin-sdk
 }:
 
+let
+  # Because libshout 2.4.2 and newer seem to break streaming in mixxx, build it
+  # with 2.4.1 instead.
+  libshout241 = libshout.overrideAttrs (o: rec {
+    name = "libshout-2.4.1";
+    src = fetchurl {
+      url = "http://downloads.xiph.org/releases/libshout/${name}.tar.gz";
+      sha256 = "0kgjpf8jkgyclw11nilxi8vyjk4s8878x23qyxnvybbgqbgbib7k";
+    };
+  });
+in
 mkDerivation rec {
   pname = "mixxx";
   version = "2.2.3";
@@ -17,10 +28,11 @@ mkDerivation rec {
     sha256 = "1h7q25fv62c5m74d4cn1m6mpanmqpbl2wqbch4qvn488jb2jw1dv";
   };
 
+  nativeBuildInputs = [ scons.py2 ];
   buildInputs = [
-    chromaprint fftw flac faad2 glibcLocales mp4v2 libid3tag libmad libopus libshout libsndfile
+    chromaprint fftw flac faad2 glibcLocales mp4v2 libid3tag libmad libopus libshout241 libsndfile
     libusb1 libvorbis libxcb libGLU lilv lv2 opusfile pkgconfig portaudio portmidi protobuf qtbase qtscript qtsvg
-    qtx11extras rubberband scons sqlite taglib upower vampSDK
+    qtx11extras rubberband sqlite taglib upower vamp-plugin-sdk
   ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/audio/mopidy/default.nix b/pkgs/applications/audio/mopidy/default.nix
index c1c8bb964e4..66be35bfcc8 100644
--- a/pkgs/applications/audio/mopidy/default.nix
+++ b/pkgs/applications/audio/mopidy/default.nix
@@ -4,13 +4,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "mopidy";
-  version = "3.0.1";
+  version = "3.0.2";
 
   src = fetchFromGitHub {
     owner = "mopidy";
     repo = "mopidy";
     rev = "v${version}";
-    sha256 = "0fpjprjw143ixak68iwxjpscdjgyb7rsr1cxj7fsdrw6hc83nq4z";
+    sha256 = "1n9lpgq0p112cjgsrc1cd6mnffk56y36g2c5skk9cqzw27qrkd15";
   };
 
   nativeBuildInputs = [ wrapGAppsHook ];
@@ -32,7 +32,7 @@ python3Packages.buildPythonApplication rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.mopidy.com/;
+    homepage = "https://www.mopidy.com/";
     description = ''
       An extensible music server that plays music from local disk, Spotify,
       SoundCloud, Google Play Music, and more
diff --git a/pkgs/applications/audio/muse/fix-parallel-building.patch b/pkgs/applications/audio/muse/fix-parallel-building.patch
index abeec5d54cc..a11970b7111 100644
--- a/pkgs/applications/audio/muse/fix-parallel-building.patch
+++ b/pkgs/applications/audio/muse/fix-parallel-building.patch
@@ -36,6 +36,13 @@ In file included from ../muse/mixer/rack.cpp:49:
 ui_plugindialogbase.h: No such file or directory
 
 
+ninja muse/midiedit/CMakeFiles/midiedit.dir/drumedit.o
+
+In file included from /build/source/muse3/muse/midiedit/drumedit.cpp:64:
+/build/source/muse3/muse/components/filedialog.h:29:10: fatal error:
+ui_fdialogbuttons.h: No such file or directory
+
+
 --- a/muse/components/CMakeLists.txt
 +++ b/muse/components/CMakeLists.txt
 @@ -343,4 +343,5 @@ set_target_properties( components
@@ -76,3 +83,11 @@ ui_plugindialogbase.h: No such file or directory
 +      components
        widgets
        )
+--- a/muse/midiedit/CMakeLists.txt
++++ b/muse/midiedit/CMakeLists.txt
+@@ -93,4 +93,5 @@ set_target_properties( midiedit
+ target_link_libraries ( midiedit
+       ${QT_LIBRARIES}
++      components
+       al
+       ctrl
diff --git a/pkgs/applications/audio/ncspot/default.nix b/pkgs/applications/audio/ncspot/default.nix
index 0d8fd8e2637..bee1065328a 100644
--- a/pkgs/applications/audio/ncspot/default.nix
+++ b/pkgs/applications/audio/ncspot/default.nix
@@ -2,26 +2,28 @@
 , withALSA ? true, alsaLib ? null
 , withPulseAudio ? false, libpulseaudio ? null
 , withPortAudio ? false, portaudio ? null
+, withMPRIS ? false, dbus ? null
 }:
 
 let
   features = [ "cursive/pancurses-backend" ]
     ++ lib.optional withALSA "alsa_backend"
     ++ lib.optional withPulseAudio "pulseaudio_backend"
-    ++ lib.optional withPortAudio "portaudio_backend";
+    ++ lib.optional withPortAudio "portaudio_backend"
+    ++ lib.optional withMPRIS "mpris";
 in
 rustPlatform.buildRustPackage rec {
   pname = "ncspot";
-  version = "0.1.2";
+  version = "0.1.3";
 
   src = fetchFromGitHub {
     owner = "hrkfdn";
     repo = "ncspot";
     rev = "v${version}";
-    sha256 = "10jp2yh8jlvdwh297658q9fi3i62vwsbd9fbwjsir7s1c9bgdy8k";
+    sha256 = "144a7wn5l64fhvj8vgwl7z4bp8lbq0pb0dl38x9y4wkqmdh6wrli";
   };
 
-  cargoSha256 = "0081wc3xw11hivz0nwy4my3y4a53ch857bq989dr0pm9p2pirvj1";
+  cargoSha256 = "19gn0v7j1ly3ywgflfj27pnrwjiiy17m3g1z0kzagxpjy2xi2qxy";
 
   cargoBuildFlags = [ "--no-default-features" "--features" "${lib.concatStringsSep "," features}" ];
 
@@ -30,7 +32,8 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ ncurses openssl ]
     ++ lib.optional withALSA alsaLib
     ++ lib.optional withPulseAudio libpulseaudio
-    ++ lib.optional withPortAudio portaudio;
+    ++ lib.optional withPortAudio portaudio
+    ++ lib.optional withMPRIS dbus;
 
   doCheck = false;
 
diff --git a/pkgs/applications/audio/nootka/default.nix b/pkgs/applications/audio/nootka/default.nix
new file mode 100644
index 00000000000..4f7b1e7e30f
--- /dev/null
+++ b/pkgs/applications/audio/nootka/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, cmake
+, alsaLib, fftwSinglePrec, libjack2, libpulseaudio, libvorbis, soundtouch, qtbase
+}:
+
+stdenv.mkDerivation rec {
+  name = "nootka-1.4.7";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/nootka/${name}-source.tar.bz2";
+    sha256 = "1y9wlwri74v2z9dwbcfjs7xri54yra24vpwq19xi2lfv1nbs518x";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [
+    alsaLib fftwSinglePrec libjack2 libpulseaudio libvorbis soundtouch qtbase
+  ];
+
+  cmakeFlags = [
+    "-DCMAKE_INCLUDE_PATH=${libjack2}/include/jack;${libpulseaudio.dev}/include/pulse"
+    "-DENABLE_JACK=ON"
+    "-DENABLE_PULSEAUDIO=ON"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Application for practicing playing musical scores and ear training";
+    homepage = https://nootka.sourceforge.io/;
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ orivej ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/nootka/unstable.nix b/pkgs/applications/audio/nootka/unstable.nix
new file mode 100644
index 00000000000..d76fd0835ca
--- /dev/null
+++ b/pkgs/applications/audio/nootka/unstable.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchurl, cmake
+, alsaLib, fftwSinglePrec, libjack2, libpulseaudio, libvorbis, soundtouch
+, qtbase, qtdeclarative, qtquickcontrols2
+}:
+
+stdenv.mkDerivation rec {
+  name = "nootka-1.7.0-beta1";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/nootka/${name}-source.tar.bz2";
+    sha256 = "13b50vnpr1zx2mrgkc8fmhsyfa19rqq1rksvn31145dy6fk1f3gc";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [
+    alsaLib fftwSinglePrec libjack2 libpulseaudio libvorbis soundtouch
+    qtbase qtdeclarative qtquickcontrols2
+  ];
+
+  cmakeFlags = [
+    "-DCMAKE_INCLUDE_PATH=${libjack2}/include/jack;${libpulseaudio.dev}/include/pulse"
+    "-DENABLE_JACK=ON"
+    "-DENABLE_PULSEAUDIO=ON"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Application for practicing playing musical scores and ear training";
+    homepage = https://nootka.sourceforge.io/;
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ orivej ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/padthv1/default.nix b/pkgs/applications/audio/padthv1/default.nix
index 0cb0f00844e..911bb4c8c77 100644
--- a/pkgs/applications/audio/padthv1/default.nix
+++ b/pkgs/applications/audio/padthv1/default.nix
@@ -2,11 +2,11 @@
 
 mkDerivation rec {
   pname = "padthv1";
-  version = "0.9.12";
+  version = "0.9.13";
 
   src = fetchurl {
     url = "mirror://sourceforge/padthv1/${pname}-${version}.tar.gz";
-    sha256 = "1zz3rz990k819q0rlzllqdwvag0x9k63443lb0mp8lwlczxnza6l";
+    sha256 = "1c1zllph86qswcxddz4vpsj6r9w21hbv4gkba0pyd3q7pbfqr7nz";
   };
 
   buildInputs = [ libjack2 alsaLib libsndfile liblo lv2 qt5.qtbase qt5.qttools fftw ];
@@ -15,7 +15,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "polyphonic additive synthesizer";
-    homepage = http://padthv1.sourceforge.net/;
+    homepage = "http://padthv1.sourceforge.net/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.magnetophon ];
diff --git a/pkgs/applications/audio/pianobooster/default.nix b/pkgs/applications/audio/pianobooster/default.nix
index f2130fe5559..bbf64a4325b 100644
--- a/pkgs/applications/audio/pianobooster/default.nix
+++ b/pkgs/applications/audio/pianobooster/default.nix
@@ -1,35 +1,31 @@
-{ stdenv, fetchurl, alsaLib, cmake, libGLU, libGL, makeWrapper, qt4 }:
+{ stdenv, fetchFromGitHub, cmake, pkg-config, qttools
+, alsaLib, ftgl, libGLU, libjack2, qtbase, rtmidi
+}:
 
-stdenv.mkDerivation  {
+stdenv.mkDerivation rec {
   pname = "pianobooster";
-  version = "0.6.4b";
+  version = "0.7.2b";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/pianobooster/pianobooster-src-0.6.4b.tar.gz";
-    sha256 = "1xwyap0288xcl0ihjv52vv4ijsjl0yq67scc509aia4plmlm6l35";
+  src = fetchFromGitHub {
+    owner = "captnfab";
+    repo = "PianoBooster";
+    rev = "v${version}";
+    sha256 = "03xcdnlpsij22ca3i6xj19yqzn3q2ch0d32r73v0c96nm04gvhjj";
   };
 
-  patches = [
-    ./pianobooster-0.6.4b-cmake.patch
-    ./pianobooster-0.6.4b-cmake-gcc4.7.patch
-  ];
-
-  preConfigure = "cd src";
+  nativeBuildInputs = [ cmake pkg-config qttools ];
 
-  buildInputs = [ alsaLib cmake makeWrapper libGLU libGL qt4 ];
-  NIX_LDFLAGS = "-lGL -lpthread";
+  buildInputs = [ alsaLib ftgl libGLU libjack2 qtbase rtmidi ];
 
-  postInstall = ''
-    wrapProgram $out/bin/pianobooster \
-      --prefix LD_LIBRARY_PATH : ${libGL}/lib \
-      --prefix LD_LIBRARY_PATH : ${libGLU}/lib
-  '';
+  cmakeFlags = [
+    "-DOpenGL_GL_PREFERENCE=GLVND"
+  ];
 
   meta = with stdenv.lib; {
     description = "A MIDI file player that teaches you how to play the piano";
-    homepage = http://pianobooster.sourceforge.net;
-    license = licenses.gpl3;
+    homepage = https://github.com/captnfab/PianoBooster;
+    license = licenses.gpl3Plus;
     platforms = platforms.linux;
-    maintainers = [ maintainers.goibhniu ];
+    maintainers = with maintainers; [ goibhniu orivej ];
   };
 }
diff --git a/pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake-gcc4.7.patch b/pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake-gcc4.7.patch
deleted file mode 100644
index 2b1b28c5a84..00000000000
--- a/pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake-gcc4.7.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- pianobooster-src-0.6.4b/src/CMakeLists.txt.orig	2013-04-06 10:48:02.469532914 -0700
-+++ pianobooster-src-0.6.4b/src/CMakeLists.txt	2013-04-06 10:48:12.989532445 -0700
-@@ -203,8 +203,6 @@
-         ${PIANOBOOSTER_UI_HDRS} )

- ENDIF(WIN32)

- 

--SET_TARGET_PROPERTIES(pianobooster PROPERTIES LINK_FLAGS "-mwindows")

--

- IF (USE_PCH)

- ADD_PRECOMPILED_HEADER( pianobooster ${CMAKE_CURRENT_SOURCE_DIR}/precompile/precompile.h )

- ENDIF (USE_PCH)

diff --git a/pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake.patch b/pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake.patch
deleted file mode 100644
index 8cdd8738e2b..00000000000
--- a/pkgs/applications/audio/pianobooster/pianobooster-0.6.4b-cmake.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- pianobooster-src-0.6.4b/src/CMakeLists.txt.orig
-+++ pianobooster-src-0.6.4b/src/CMakeLists.txt
-@@ -2,12 +2,6 @@
- # for the debug build type cmake -DCMAKE_BUILD_TYPE=Debug

- SET(CMAKE_BUILD_TYPE Release)

- SET(CMAKE_VERBOSE_MAKEFILE OFF)

--SET(USE_FLUIDSYNTH OFF)

--

--# The inplace directory is mainly for windows builds

--# SET(FLUIDSYNTH_INPLACE_DIR C:/download/misc/ljb/fluidsynth-1.0.9)

--SET(FLUIDSYNTH_INPLACE_DIR /home/louis/build/fluidsynth-1.0.9)

--

- 

- # Testing precompiled headers  it does not work -- leave as OFF.

- SET(USE_PCH OFF)

-@@ -78,18 +72,7 @@
-     ADD_DEFINITIONS(-DPB_USE_FLUIDSYNTH)

-     MESSAGE("Building using fluidsynth")

-     SET( PB_BASE_SRCS MidiDeviceFluidSynth.cpp )

--

--    IF(FLUIDSYNTH_INPLACE_DIR)

--        INCLUDE_DIRECTORIES(${FLUIDSYNTH_INPLACE_DIR}/include/)

--        IF(WIN32)

--            LINK_LIBRARIES( ${FLUIDSYNTH_INPLACE_DIR}/src/.libs/libfluidsynth.dll.a)

--        ENDIF(WIN32)

--        IF(UNIX)

--            LINK_LIBRARIES(${FLUIDSYNTH_INPLACE_DIR}/src/.libs/libfluidsynth.so)

--        ENDIF(UNIX)

--    ELSEIF(FLUIDSYNTH_INPLACE_DIR)

--        LINK_LIBRARIES( fluidsynth)

--    ENDIF(FLUIDSYNTH_INPLACE_DIR)

-+	LINK_LIBRARIES(fluidsynth)

- ENDIF(USE_FLUIDSYNTH)

- 

- 

-@@ -214,8 +197,6 @@
- INSTALL(TARGETS pianobooster RUNTIME DESTINATION bin)

- #INSTALL( index.docbook INSTALL_DESTINATION ${HTML_INSTALL_DIR}/en  SUBDIR kmidimon )

- 

--INSTALL( FILES ../README.txt  DESTINATION share/doc/pianobooster )

--

- INSTALL ( FILES images/pianobooster.png DESTINATION share/pixmaps )

- 

- 

diff --git a/pkgs/applications/audio/picard/default.nix b/pkgs/applications/audio/picard/default.nix
index b241f750d03..5830e1eefb8 100644
--- a/pkgs/applications/audio/picard/default.nix
+++ b/pkgs/applications/audio/picard/default.nix
@@ -1,7 +1,15 @@
-{ stdenv, python3Packages, fetchFromGitHub, gettext, chromaprint, qt5 }:
+{ stdenv, python3Packages, fetchFromGitHub, gettext, chromaprint, qt5
+, enablePlayback ? true
+, gst_all_1
+}:
 
 let
   pythonPackages = python3Packages;
+  pyqt5 = if enablePlayback then
+    pythonPackages.pyqt5_with_qtmultimedia
+  else
+    pythonPackages.pyqt5
+  ;
 in pythonPackages.buildPythonApplication rec {
   pname = "picard";
   version = "2.3.1";
@@ -13,7 +21,16 @@ in pythonPackages.buildPythonApplication rec {
     sha256 = "0xalg4dvaqb396h4s6gzxnplgv1lcvsczmmrlhyrj0kfj10amhsj";
   };
 
-  nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ];
+  nativeBuildInputs = [ gettext qt5.wrapQtAppsHook qt5.qtbase ]
+    ++ stdenv.lib.optionals (pyqt5.multimediaEnabled) [
+      qt5.qtmultimedia.bin
+      gst_all_1.gstreamer
+      gst_all_1.gst-vaapi
+      gst_all_1.gst-libav
+      gst_all_1.gst-plugins-base
+      gst_all_1.gst-plugins-good
+    ]
+  ;
 
   propagatedBuildInputs = with pythonPackages; [
     pyqt5
@@ -27,10 +44,14 @@ in pythonPackages.buildPythonApplication rec {
     substituteInPlace setup.cfg --replace "‘" "'"
   '';
 
-  installPhase = ''
-    python setup.py install --prefix="$out"
-    wrapQtApp $out/bin/picard
-  '';
+  # In order to spare double wrapping, we use:
+  preFixup = ''
+    makeWrapperArgs+=("''${qtWrapperArgs[@]}")
+  ''
+    + stdenv.lib.optionalString (pyqt5.multimediaEnabled) ''
+      makeWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0")
+    ''
+  ;
 
   meta = with stdenv.lib; {
     homepage = "https://picard.musicbrainz.org/";
diff --git a/pkgs/applications/audio/pt2-clone/default.nix b/pkgs/applications/audio/pt2-clone/default.nix
index f659d20f463..2f21e3ea56b 100644
--- a/pkgs/applications/audio/pt2-clone/default.nix
+++ b/pkgs/applications/audio/pt2-clone/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pt2-clone";
-  version = "1.06";
+  version = "1.07";
 
   src = fetchFromGitHub {
     owner = "8bitbubsy";
     repo = "pt2-clone";
     rev = "v${version}";
-    sha256 = "00zifwiprd3i60z4pf4471jxbc33vh9p30ib0lnzwpgjz5pnxqnr";
+    sha256 = "0g2bp9n05ng2fvqw86pb941zamcqnfz1l066wvh5j3av1w22khi8";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/audio/pulseeffects/default.nix b/pkgs/applications/audio/pulseeffects/default.nix
index 00c5af4422d..82dd0223bc8 100644
--- a/pkgs/applications/audio/pulseeffects/default.nix
+++ b/pkgs/applications/audio/pulseeffects/default.nix
@@ -46,13 +46,13 @@ let
   ];
 in stdenv.mkDerivation rec {
   pname = "pulseeffects";
-  version = "4.7.1";
+  version = "4.7.2";
 
   src = fetchFromGitHub {
     owner = "wwmm";
     repo = "pulseeffects";
     rev = "v${version}";
-    sha256 = "1r1hk5zp2cgrwyqkvp8kg2dkbihdyx3ydzhmirkwya8jag9pwadd";
+    sha256 = "1yga25da5bpg12zkikp6dn4wqhn9f7r10awvjzfcz8s6w9xlz6rx";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/audio/qmidiarp/default.nix b/pkgs/applications/audio/qmidiarp/default.nix
new file mode 100644
index 00000000000..4bbfe79a2c9
--- /dev/null
+++ b/pkgs/applications/audio/qmidiarp/default.nix
@@ -0,0 +1,49 @@
+{ stdenv
+, fetchgit
+, automake
+, autoreconfHook
+, lv2
+, pkg-config
+, qt5
+, alsaLib
+, libjack2
+}:
+
+stdenv.mkDerivation rec {
+  name = "qmidiarp";
+  version = "0.6.5";
+
+  src = fetchgit {
+    url = "https://git.code.sf.net/p/qmidiarp/code";
+    sha256 = "1g2143gzfbihqr2zi3k2v1yn1x3mwfbb2khmcd4m4cq3hcwhhlx9";
+    rev = "qmidiarp-0.6.5";
+  };
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkg-config
+    qt5.wrapQtAppsHook
+  ];
+
+  buildInputs = [
+    alsaLib
+    lv2
+    libjack2
+  ] ++ (with qt5; [
+    qttools
+  ]);
+
+  meta = with stdenv.lib; {
+    description = "An advanced MIDI arpeggiator";
+    longDescription = ''
+      An advanced MIDI arpeggiator, programmable step sequencer and LFO for Linux.
+      It can hold any number of arpeggiator, sequencer, or LFO modules running in
+      parallel.
+    '';
+
+    homepage = "http://qmidiarp.sourceforge.net";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ sjfloat ];
+  };
+}
diff --git a/pkgs/applications/audio/qmmp/default.nix b/pkgs/applications/audio/qmmp/default.nix
index a941ea485b7..6cc731710b7 100644
--- a/pkgs/applications/audio/qmmp/default.nix
+++ b/pkgs/applications/audio/qmmp/default.nix
@@ -29,11 +29,11 @@
 # handle that.
 
 mkDerivation rec {
-  name = "qmmp-1.3.6";
+  name = "qmmp-1.3.7";
 
   src = fetchurl {
     url = "http://qmmp.ylsoftware.com/files/${name}.tar.bz2";
-    sha256 = "0dihy6v6j1cfx4qgwgajdn8rx6nf8x5srk8yjki9xh1mlcaanhp8";
+    sha256 = "13mk8p7bfl3fkavpqyhpcxkxb8a4f5d4qc1lasyf7wls3ghrdag7";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
@@ -55,7 +55,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Qt-based audio player that looks like Winamp";
-    homepage = http://qmmp.ylsoftware.com/;
+    homepage = "http://qmmp.ylsoftware.com/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/applications/audio/qtractor/default.nix b/pkgs/applications/audio/qtractor/default.nix
index 4076692e7fe..8cb9f8dccb8 100644
--- a/pkgs/applications/audio/qtractor/default.nix
+++ b/pkgs/applications/audio/qtractor/default.nix
@@ -23,6 +23,8 @@ stdenv.mkDerivation rec {
       suil
     ];
 
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
     description = "Audio/MIDI multi-track sequencer";
     homepage = http://qtractor.sourceforge.net;
diff --git a/pkgs/applications/audio/rhvoice/default.nix b/pkgs/applications/audio/rhvoice/default.nix
index e3eb750496b..59a8b6ec8c4 100644
--- a/pkgs/applications/audio/rhvoice/default.nix
+++ b/pkgs/applications/audio/rhvoice/default.nix
@@ -15,7 +15,7 @@ in stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [
-    scons pkgconfig
+    scons.py2 pkgconfig
   ];
 
   buildInputs = [
diff --git a/pkgs/applications/audio/rofi-mpd/default.nix b/pkgs/applications/audio/rofi-mpd/default.nix
index 97c737675ad..ef57466ec84 100644
--- a/pkgs/applications/audio/rofi-mpd/default.nix
+++ b/pkgs/applications/audio/rofi-mpd/default.nix
@@ -2,13 +2,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "rofi-mpd";
-  version = "2.0.1";
+  version = "2.2.0";
 
   src = fetchFromGitHub {
     owner = "JakeStanger";
     repo = "Rofi_MPD";
     rev = "v${version}";
-    sha256 = "12zzx0m2nwyzxzzqgzq30a27k015kcw4ylvs7cyalf5gf6sg27kl";
+    sha256 = "1b0y8706mmrxhiyz8g6znisllc35j8g7sz8gfjll9svysjmvb6lc";
   };
 
   propagatedBuildInputs = with python3Packages; [ mutagen mpd2 toml appdirs ];
diff --git a/pkgs/applications/audio/samplv1/default.nix b/pkgs/applications/audio/samplv1/default.nix
index 8c8e5407f7a..86f8f666d80 100644
--- a/pkgs/applications/audio/samplv1/default.nix
+++ b/pkgs/applications/audio/samplv1/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "samplv1";
-  version = "0.9.12";
+  version = "0.9.13";
 
   src = fetchurl {
     url = "mirror://sourceforge/samplv1/${pname}-${version}.tar.gz";
-    sha256 = "0xzjxiqzcf1ygabrjsy0iachhnpy85rp9519fmj2f568r6ml6hzg";
+    sha256 = "0clsp6s5qfnh0xaxbd35vq2ppi72q9dfayrzlgl73800a8p7gh9m";
   };
 
   buildInputs = [ libjack2 alsaLib liblo libsndfile lv2 qt5.qtbase qt5.qttools];
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An old-school all-digital polyphonic sampler synthesizer with stereo fx";
-    homepage = http://samplv1.sourceforge.net/;
+    homepage = "http://samplv1.sourceforge.net/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/sfxr-qt/default.nix b/pkgs/applications/audio/sfxr-qt/default.nix
index 615a8a8c660..165f8446c76 100644
--- a/pkgs/applications/audio/sfxr-qt/default.nix
+++ b/pkgs/applications/audio/sfxr-qt/default.nix
@@ -10,12 +10,12 @@
 
 mkDerivation rec {
   pname = "sfxr-qt";
-  version = "1.2.0";
+  version = "1.3.0";
   src = fetchFromGitHub {
     owner = "agateau";
     repo = "sfxr-qt";
     rev = version;
-    sha256 = "1ndw1dcmzvkrc6gnb0y057zb4lqlhwrv18jlbx26w3s4xrbxqr41";
+    sha256 = "15yjgjl1c5k816mnpc09104zq0ack2a3mjsxmhcik7cmjkfiipr5";
     fetchSubmodules = true;
   };
   nativeBuildInputs = [
@@ -27,10 +27,9 @@ mkDerivation rec {
     qtquickcontrols2
     SDL
   ];
-  configurePhase = "cmake . -DCMAKE_INSTALL_PREFIX=$out";
 
   meta = with lib; {
-    homepage = https://github.com/agateau/sfxr-qt;
+    homepage = "https://github.com/agateau/sfxr-qt";
     description = "A sound effect generator, QtQuick port of sfxr";
     license = licenses.gpl2;
     maintainers = with maintainers; [ fgaz ];
diff --git a/pkgs/applications/audio/shortwave/default.nix b/pkgs/applications/audio/shortwave/default.nix
new file mode 100644
index 00000000000..d26d314cd3e
--- /dev/null
+++ b/pkgs/applications/audio/shortwave/default.nix
@@ -0,0 +1,87 @@
+{ stdenv
+, fetchFromGitLab
+, cargo
+, dbus
+, desktop-file-utils
+, gdk-pixbuf
+, gettext
+, glib
+, gst_all_1
+, gtk3
+, libhandy
+, meson
+, ninja
+, openssl
+, pkg-config
+, python3
+, rust
+, rustc
+, rustPlatform
+, sqlite
+, wrapGAppsHook
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "shortwave";
+  version = "1.0.1";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "World";
+    repo = "Shortwave";
+    rev = version;
+    sha256 = "13lhlh75vw02vkcknl4nvy0yvpdf0qx811mmyja8bzs4rj1j9kr8";
+  };
+
+  cargoSha256 = "0aph5z54a6i5p8ga5ghhx1c9hjc8zdw5pkv9inmanca0bq3hkdlh";
+
+  nativeBuildInputs = [
+    cargo
+    desktop-file-utils
+    gettext
+    glib # for glib-compile-schemas
+    meson
+    ninja
+    pkg-config
+    python3
+    rustc
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    dbus
+    gdk-pixbuf
+    glib
+    gtk3
+    libhandy
+    openssl
+    sqlite
+  ] ++ (with gst_all_1; [
+    gstreamer
+    gst-plugins-base
+    gst-plugins-good
+    gst-plugins-bad
+  ]);
+
+  # Don't use buildRustPackage phases, only use it for rust deps setup
+  configurePhase = null;
+  buildPhase = null;
+  checkPhase = null;
+  installPhase = null;
+
+  postPatch = ''
+    patchShebangs build-aux/meson/postinstall.py
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://gitlab.gnome.org/World/Shortwave";
+    description = "Find and listen to internet radio stations";
+    longDescription = ''
+      Shortwave is a streaming audio player designed for the GNOME
+      desktop. It is the successor to the older Gradio application.
+    '';
+    maintainers = with maintainers; [ lasandell ];
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/snd/default.nix b/pkgs/applications/audio/snd/default.nix
index cfe79f4e361..9bc8fcb6694 100644
--- a/pkgs/applications/audio/snd/default.nix
+++ b/pkgs/applications/audio/snd/default.nix
@@ -4,11 +4,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "snd-20.1";
+  name = "snd-20.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/snd/${name}.tar.gz";
-    sha256 = "0v7zhavkkbh1bagzy3l08kb235hhdqn28y0m4znkd3k31p4l4dz8";
+    sha256 = "0ip4sfyxqlbghlggipmvvqjqs1a7qas0zcmzw8d1nwg6krjkfj0r";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/audio/sonic-lineup/default.nix b/pkgs/applications/audio/sonic-lineup/default.nix
index 68e1b6b3f8a..93b4c2dade4 100644
--- a/pkgs/applications/audio/sonic-lineup/default.nix
+++ b/pkgs/applications/audio/sonic-lineup/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, alsaLib, boost, bzip2, fftw, fftwFloat, libfishsound
 , libid3tag, liblo, libmad, liboggz, libpulseaudio, libsamplerate
-, libsndfile, lrdf, opusfile, portaudio, rubberband, serd, sord, vampSDK, capnproto
+, libsndfile, lrdf, opusfile, portaudio, rubberband, serd, sord, capnproto
 , wrapQtAppsHook, pkgconfig
 }:
 
diff --git a/pkgs/applications/audio/sonic-visualiser/default.nix b/pkgs/applications/audio/sonic-visualiser/default.nix
index 187c887baa5..f7803098066 100644
--- a/pkgs/applications/audio/sonic-visualiser/default.nix
+++ b/pkgs/applications/audio/sonic-visualiser/default.nix
@@ -3,7 +3,7 @@
 { stdenv, fetchurl, alsaLib, bzip2, fftw, libjack2, libX11, liblo
 , libmad, libogg, lrdf, librdf_raptor, librdf_rasqal, libsamplerate
 , libsndfile, pkgconfig, libpulseaudio, qtbase, qtsvg, redland
-, rubberband, serd, sord, vampSDK, fftwFloat
+, rubberband, serd, sord, vamp-plugin-sdk, fftwFloat
 , capnproto, liboggz, libfishsound, libid3tag, opusfile
 , wrapQtAppsHook
 }:
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   buildInputs =
     [ libsndfile qtbase qtsvg fftw fftwFloat bzip2 lrdf rubberband
-      libsamplerate vampSDK alsaLib librdf_raptor librdf_rasqal redland
+      libsamplerate vamp-plugin-sdk alsaLib librdf_raptor librdf_rasqal redland
       serd
       sord
       # optional
diff --git a/pkgs/applications/audio/sound-juicer/default.nix b/pkgs/applications/audio/sound-juicer/default.nix
index 7f22a03c1bb..20c8a83676e 100644
--- a/pkgs/applications/audio/sound-juicer/default.nix
+++ b/pkgs/applications/audio/sound-juicer/default.nix
@@ -27,7 +27,6 @@ in stdenv.mkDerivation rec{
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;
-      attrPath = "gnome3.${pname}";
     };
   };
 
diff --git a/pkgs/applications/audio/spotify-tui/default.nix b/pkgs/applications/audio/spotify-tui/default.nix
index 5837bd45310..65dfc50fe1b 100644
--- a/pkgs/applications/audio/spotify-tui/default.nix
+++ b/pkgs/applications/audio/spotify-tui/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "spotify-tui";
-  version = "0.17.0";
+  version = "0.17.1";
 
   src = fetchFromGitHub {
     owner = "Rigellute";
     repo = "spotify-tui";
     rev = "v${version}";
-    sha256 = "1jx2qyshqg84l3fm682h8262da0hy68qjjg3dm2i53dxqxrm5ji9";
+    sha256 = "1gsddjinxmglm05hhphclax08d9pig1f0wjjs3bbcq096fydxgfs";
   };
 
-  cargoSha256 = "12qwp59gshc9d6nz0s3w03zc8sxqri12vrav94vi54fqagiikinm";
+  cargoSha256 = "1y398ypckk3gw1sfzf97xzwf5d5z3kxlcpn3bccmsfr59kvkf661";
 
   nativeBuildInputs = [ pkgconfig ] ++ stdenv.lib.optionals stdenv.isLinux [ python3 ];
   buildInputs = [ openssl ]
diff --git a/pkgs/applications/audio/synthv1/default.nix b/pkgs/applications/audio/synthv1/default.nix
index f58166a5984..6339dad7f37 100644
--- a/pkgs/applications/audio/synthv1/default.nix
+++ b/pkgs/applications/audio/synthv1/default.nix
@@ -2,11 +2,11 @@
 
 mkDerivation rec {
   pname = "synthv1";
-  version = "0.9.12";
+  version = "0.9.13";
 
   src = fetchurl {
     url = "mirror://sourceforge/synthv1/${pname}-${version}.tar.gz";
-    sha256 = "1amxrl1cqwgncw5437r572frgf6xhss3cfpbgh178i8phlq1q731";
+    sha256 = "0bb48myvgvqcibwm68qhd4852pjr2g19rasf059a799d1hzgfq3l";
   };
 
   buildInputs = [ qtbase qttools libjack2 alsaLib liblo lv2 ];
@@ -15,7 +15,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An old-school 4-oscillator subtractive polyphonic synthesizer with stereo fx";
-    homepage = https://synthv1.sourceforge.io/;
+    homepage = "https://synthv1.sourceforge.io/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
diff --git a/pkgs/applications/audio/tony/default.nix b/pkgs/applications/audio/tony/default.nix
new file mode 100644
index 00000000000..92cab9b5b8d
--- /dev/null
+++ b/pkgs/applications/audio/tony/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, pkgconfig, wrapQtAppsHook
+, alsaLib, boost, bzip2, fftw, fftwFloat, libX11, libfishsound, libid3tag
+, libjack2, liblo, libmad, libogg, liboggz, libpulseaudio, libsamplerate
+, libsndfile, lrdf, opusfile, qtbase, qtsvg, rubberband, serd, sord
+}:
+
+stdenv.mkDerivation rec {
+  name = "tony-2.1.1";
+
+  src = fetchurl {
+    url = "https://code.soundsoftware.ac.uk/attachments/download/2616/${name}.tar.gz";
+    sha256 = "03g2bmlj08lmgvh54dyd635xccjn730g4wwlhpvsw04bffz8b7fp";
+  };
+
+  nativeBuildInputs = [ pkgconfig wrapQtAppsHook ];
+
+  buildInputs = [
+    alsaLib boost bzip2 fftw fftwFloat libX11 libfishsound libid3tag
+    libjack2 liblo libmad libogg liboggz libpulseaudio libsamplerate
+    libsndfile lrdf opusfile qtbase qtsvg rubberband serd sord
+  ];
+
+  # comment out the tests
+  preConfigure = ''
+    sed -i 's/sub_test_svcore_/#sub_test_svcore_/' tony.pro
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Pitch and note annotation of unaccompanied melody";
+    homepage = https://www.sonicvisualiser.org/tony/;
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ orivej ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/traverso/default.nix b/pkgs/applications/audio/traverso/default.nix
index 9188003ce66..504e6ae9644 100644
--- a/pkgs/applications/audio/traverso/default.nix
+++ b/pkgs/applications/audio/traverso/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation {
   version = "0.49.6";
 
   src = fetchurl {
-    url = "http://traverso-daw.org/traverso-0.49.6.tar.gz";
+    url = "https://traverso-daw.org/traverso-0.49.6.tar.gz";
     sha256 = "12f7x8kw4fw1j0xkwjrp54cy4cv1ql0zwz2ba5arclk4pf6bhl7q";
   };
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "Cross-platform multitrack audio recording and audio editing suite";
-    homepage = http://traverso-daw.org/;
+    homepage = "https://traverso-daw.org/";
     license = with licenses; [ gpl2Plus lgpl21Plus ];
     platforms = platforms.all;
     maintainers = with maintainers; [ coconnor ];
diff --git a/pkgs/applications/audio/tree-from-tags/Gemfile.lock b/pkgs/applications/audio/tree-from-tags/Gemfile.lock
index 2ef77caa6f6..0ae90c1aebb 100644
--- a/pkgs/applications/audio/tree-from-tags/Gemfile.lock
+++ b/pkgs/applications/audio/tree-from-tags/Gemfile.lock
@@ -10,4 +10,4 @@ DEPENDENCIES
   taglib-ruby
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/applications/audio/vocal/default.nix b/pkgs/applications/audio/vocal/default.nix
index c928962c983..8b94450f8bd 100644
--- a/pkgs/applications/audio/vocal/default.nix
+++ b/pkgs/applications/audio/vocal/default.nix
@@ -7,6 +7,7 @@
 , pantheon
 , gtk3
 , glib
+, glib-networking
 , libxml2
 , webkitgtk
 , clutter-gtk
@@ -56,6 +57,7 @@ stdenv.mkDerivation rec {
     pantheon.granite
     sqlite
     webkitgtk
+    glib-networking
   ];
 
   passthru = {
diff --git a/pkgs/applications/audio/x42-avldrums/default.nix b/pkgs/applications/audio/x42-avldrums/default.nix
new file mode 100644
index 00000000000..b34062672f9
--- /dev/null
+++ b/pkgs/applications/audio/x42-avldrums/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub, pkgconfig, cairo, glib, libGLU, lv2, pango }:
+
+stdenv.mkDerivation rec {
+  pname = "x42-avldrums";
+  version = "0.4.1";
+
+  src = fetchFromGitHub {
+    owner = "x42";
+    repo = "avldrums.lv2";
+    rev = "v${version}";
+    sha256 = "1vwdp3d8qzd493qa99ddya7iql67bbfxmbcl8hk96lxif2lhmyws";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ cairo glib libGLU lv2 pango ];
+
+  makeFlags = [
+    "PREFIX=$(out)"
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Drum sample player LV2 plugin dedicated to Glen MacArthur's AVLdrums";
+    homepage = https://x42-plugins.com/x42/x42-avldrums;
+    maintainers = with maintainers; [ magnetophon orivej ];
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/x42-gmsynth/default.nix b/pkgs/applications/audio/x42-gmsynth/default.nix
new file mode 100644
index 00000000000..33d61eeb35f
--- /dev/null
+++ b/pkgs/applications/audio/x42-gmsynth/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub, pkgconfig, glib, lv2 }:
+
+stdenv.mkDerivation rec {
+  pname = "x42-gmsynth";
+  version = "0.4.1";
+
+  src = fetchFromGitHub {
+    owner = "x42";
+    repo = "gmsynth.lv2";
+    rev = "v${version}";
+    sha256 = "08dvdj8r17sfl6l18g2b8abgls2irkbrq5vhrfai01hp2m0rlm34";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ glib lv2 ];
+
+  makeFlags = [
+    "PREFIX=$(out)"
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Chris Colins' General User soundfont player LV2 plugin";
+    homepage = https://x42-plugins.com/x42/x42-gmsynth;
+    maintainers = with maintainers; [ orivej ];
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/zita-ajbridge/default.nix b/pkgs/applications/audio/zita-ajbridge/default.nix
new file mode 100644
index 00000000000..6904952afea
--- /dev/null
+++ b/pkgs/applications/audio/zita-ajbridge/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, alsaLib, libjack2, zita-alsa-pcmi, zita-resampler }:
+
+stdenv.mkDerivation rec {
+  name = "zita-ajbridge-0.8.2";
+
+  src = fetchurl {
+    url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
+    sha256 = "1gvk6g6w9rsiib89l0i9myl2cxxfzmcpbg9wdypq6b27l9s5k64j";
+  };
+
+  buildInputs = [ alsaLib libjack2 zita-alsa-pcmi zita-resampler ];
+
+  preConfigure = ''
+    cd ./source/
+  '';
+
+  makeFlags = [
+    "PREFIX=$(out)"
+    "MANDIR=$(out)/share/man/man1"
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Connect additional ALSA devices to JACK";
+    homepage = http://kokkinizita.linuxaudio.org/linuxaudio/index.html;
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ orivej ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/zita-at1/default.nix b/pkgs/applications/audio/zita-at1/default.nix
new file mode 100644
index 00000000000..c91edf34c82
--- /dev/null
+++ b/pkgs/applications/audio/zita-at1/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl
+, cairo, fftwSinglePrec, libX11, libXft, libclthreads, libclxclient, libjack2
+, xorgproto, zita-resampler
+}:
+
+stdenv.mkDerivation rec {
+  name = "zita-at1-0.6.2";
+
+  src = fetchurl {
+    url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
+    sha256 = "0mxfn61zvhlq3r1mqipyqzjbanrfdkk8x4nxbz8nlbdk0bf3vfqr";
+  };
+
+  buildInputs = [
+    cairo fftwSinglePrec libX11 libXft libclthreads libclxclient libjack2
+    xorgproto zita-resampler
+  ];
+
+  preConfigure = ''
+    cd ./source/
+  '';
+
+  makeFlags = [
+    "PREFIX=$(out)"
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Autotuner Jack application to correct the pitch of vocal tracks";
+    homepage = https://kokkinizita.linuxaudio.org/linuxaudio/index.html;
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ orivej ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/backup/vorta/default.nix b/pkgs/applications/backup/vorta/default.nix
new file mode 100644
index 00000000000..1a4d1832c7e
--- /dev/null
+++ b/pkgs/applications/backup/vorta/default.nix
@@ -0,0 +1,42 @@
+{ buildPythonApplication, fetchFromGitHub, lib, paramiko, peewee, pyqt5
+, python-dateutil, APScheduler, psutil, qdarkstyle, secretstorage
+, appdirs, setuptools, qt5
+}:
+
+buildPythonApplication rec {
+  pname = "vorta";
+  version = "0.6.24";
+
+  src = fetchFromGitHub {
+    owner = "borgbase";
+    repo = "vorta";
+    rev = "v${version}";
+    sha256 = "1xc4cng4npc7g739qd909a8wim6s6sn8h8bb1wpxzg4gcnfyin8z";
+  };
+
+  postPatch = ''
+    sed -i -e '/setuptools_git/d' -e '/pytest-runner/d' setup.cfg
+  '';
+
+  nativeBuildInputs = [ qt5.wrapQtAppsHook ];
+
+  propagatedBuildInputs = [
+    paramiko peewee pyqt5 python-dateutil APScheduler psutil qdarkstyle
+    secretstorage appdirs setuptools
+  ];
+
+  # QT setup in tests broken.
+  doCheck = false;
+
+  postFixup = ''
+    wrapQtApp $out/bin/vorta
+  '';
+
+  meta = with lib; {
+    license = licenses.gpl3;
+    homepage = "https://vorta.borgbase.com/";
+    maintainers = with maintainers; [ ma27 ];
+    description = "Desktop Backup Client for Borg";
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/blockchains/bitcoin-abc.nix b/pkgs/applications/blockchains/bitcoin-abc.nix
index 1fb4078696b..afc5b40f9db 100644
--- a/pkgs/applications/blockchains/bitcoin-abc.nix
+++ b/pkgs/applications/blockchains/bitcoin-abc.nix
@@ -7,13 +7,13 @@ with stdenv.lib;
 mkDerivation rec {
 
   name = "bitcoin" + (toString (optional (!withGui) "d")) + "-abc-" + version;
-  version = "0.21.1";
+  version = "0.21.3";
 
   src = fetchFromGitHub {
     owner = "bitcoin-ABC";
     repo = "bitcoin-abc";
     rev = "v${version}";
-    sha256 = "1aswgmzqk3vhxhp5k0m0awk22lf5ayaqg2cmlqy12jvfmpka9lrj";
+    sha256 = "1pzdgghbsss2qjfgl42lvkbs5yc5q6jnzqnp24lljmrh341g2zn4";
   };
 
   patches = [ ./fix-bitcoin-qt-build.patch ];
diff --git a/pkgs/applications/blockchains/go-ethereum.nix b/pkgs/applications/blockchains/go-ethereum.nix
index 80e17cf1138..980b485b956 100644
--- a/pkgs/applications/blockchains/go-ethereum.nix
+++ b/pkgs/applications/blockchains/go-ethereum.nix
@@ -1,17 +1,17 @@
-{ stdenv, buildGoModule, fetchFromGitHub, libobjc, IOKit, CoreServices }:
+{ stdenv, buildGoModule, fetchFromGitHub, libobjc, IOKit }:
 
 buildGoModule rec {
   pname = "go-ethereum";
-  version = "1.9.11";
+  version = "1.9.12";
 
   src = fetchFromGitHub {
     owner = "ethereum";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0xhkdxn5ajzi05252is5whqank81xy94jp1l5z2a44rajv8rh9vs";
+    sha256 = "143imiphyzk3009cfnqj7q013pb1wva13zq63byfj3d204b58cg6";
   };
 
-  modSha256 = "0jcj0knkhyndndyv1j9xhgbg5psagvyd27ailna3x9ikjlb8f7gg";
+  modSha256 = "15a8if5gx361nrqgv201jy8saq1ir1g18rpqzdmavg4ic75si5x1";
 
   subPackages = [
     "cmd/abigen"
@@ -30,8 +30,6 @@ buildGoModule rec {
     "cmd/wnode"
   ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
-
   # Fix for usb-related segmentation faults on darwin
   propagatedBuildInputs =
     stdenv.lib.optionals stdenv.isDarwin [ libobjc IOKit ];
diff --git a/pkgs/applications/blockchains/ledger-live-desktop/default.nix b/pkgs/applications/blockchains/ledger-live-desktop/default.nix
index 64562fc445a..edc68f9d0c7 100644
--- a/pkgs/applications/blockchains/ledger-live-desktop/default.nix
+++ b/pkgs/applications/blockchains/ledger-live-desktop/default.nix
@@ -2,12 +2,12 @@
 
 let
   pname = "ledger-live-desktop";
-  version = "1.20.0";
+  version = "2.1.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://github.com/LedgerHQ/${pname}/releases/download/v${version}/${pname}-${version}-linux-x86_64.AppImage";
-    sha256 = "09mgd5nsd65w4irgzgmfz1k0r1k4fgkq490pkil8nqy6akjrsw1z";
+    sha256 = "1ywvdqmq8asczhmvc6ai2v6di1f5q19x3ygqlinwz8d1hrj3496r";
   };
 
   appimageContents = appimageTools.extractType2 {
diff --git a/pkgs/applications/blockchains/lnd.nix b/pkgs/applications/blockchains/lnd.nix
index 4be19beedc3..dd45746c8df 100644
--- a/pkgs/applications/blockchains/lnd.nix
+++ b/pkgs/applications/blockchains/lnd.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   pname = "lnd";
@@ -13,12 +13,10 @@ buildGoModule rec {
 
   modSha256 = "1pvcvpiz6ck8xkgpypchrq9kgkik0jxd7f3jhihbgldsh4zaqiaq";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Lightning Network Daemon";
     homepage = "https://github.com/lightningnetwork/lnd";
-    license = licenses.mit;
+    license = lib.licenses.mit;
     maintainers = with maintainers; [ cypherpunk2140 ];
   };
 }
diff --git a/pkgs/applications/blockchains/namecoin.nix b/pkgs/applications/blockchains/namecoin.nix
index 4b8dc5525dc..02f2249862d 100644
--- a/pkgs/applications/blockchains/namecoin.nix
+++ b/pkgs/applications/blockchains/namecoin.nix
@@ -3,14 +3,14 @@
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
-  version = "nc0.15.99-name-tab-beta2";
+  version = "nc0.19.1";
   name = "namecoin" + toString (optional (!withGui) "d") + "-" + version;
 
   src = fetchFromGitHub {
     owner = "namecoin";
     repo = "namecoin-core";
     rev = version;
-    sha256 = "1r0v0yvlazmidxp6xhapbdawqb8fhzrdp11d4an5vgxa208s6wdf";
+    sha256 = "13rdvngrl2w0gk7km3sd9fy8yxzgxlkcwn50ajsbrhgzl8kx4q7m";
   };
 
   nativeBuildInputs = [
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Decentralized open source information registration and transfer system based on the Bitcoin cryptocurrency";
-    homepage = https://namecoin.org;
+    homepage = "https://namecoin.org";
     license = licenses.mit;
     maintainers = with maintainers; [ doublec AndersonTorres infinisil ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/blockchains/tessera.nix b/pkgs/applications/blockchains/tessera.nix
new file mode 100644
index 00000000000..84f7925d218
--- /dev/null
+++ b/pkgs/applications/blockchains/tessera.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchurl, makeWrapper, jre }:
+
+stdenv.mkDerivation rec {
+  pname = "tessera";
+  version = "0.10.2";
+
+  src = fetchurl {
+    url = "https://oss.sonatype.org/service/local/repositories/releases/content/com/jpmorgan/quorum/${pname}-app/${version}/${pname}-app-${version}-app.jar";
+    sha256 = "1zn8w7q0q5man0407kb82lw4mlvyiy9whq2f6izf2b5415f9s0m4";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  dontUnpack = true;
+
+  installPhase = ''
+    makeWrapper ${jre}/bin/java $out/bin/tessera --add-flags "-jar $src"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Enterprise Implementation of Quorum's transaction manager";
+    homepage = "https://github.com/jpmorganchase/tessera";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ mmahut ];
+  };
+}
diff --git a/pkgs/applications/editors/amp/default.nix b/pkgs/applications/editors/amp/default.nix
index 625a5d3c0ab..9be6d56ab34 100644
--- a/pkgs/applications/editors/amp/default.nix
+++ b/pkgs/applications/editors/amp/default.nix
@@ -14,8 +14,8 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "09v991rl2w4c4jh7ga7q1lk6wyl2vr71j5cpniij8mcvszrz78qf";
 
-  nativeBuildInputs = [ cmake pkgconfig ];
-  buildInputs = [ openssl python3 xorg.libxcb libgit2 ] ++ stdenv.lib.optionals stdenv.isDarwin
+  nativeBuildInputs = [ cmake pkgconfig python3 ];
+  buildInputs = [ openssl xorg.libxcb libgit2 ] ++ stdenv.lib.optionals stdenv.isDarwin
     (with darwin.apple_sdk.frameworks; [ curl Security AppKit ]);
 
   # Tests need to write to the theme directory in HOME.
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index 573eec84502..1134b67a24a 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -8,19 +8,19 @@ let
     inherit (gnome2) GConf gnome_vfs;
   };
   stableVersion = {
-    version = "3.6.1.0"; # "Android Studio 3.6.1"
-    build = "192.6241897";
-    sha256Hash = "1mwzk18224bl8hbw9cdxwzgj5cfain4y70q64cpj4p0snffxqm77";
+    version = "3.6.2.0"; # "Android Studio 3.6.2"
+    build = "192.6308749";
+    sha256Hash = "04r4iwlmns1lf3wfd32cqmndbdz9rf7hfbi5r6qmvpi8j83fghvr";
   };
   betaVersion = {
-    version = "4.0.0.12"; # "Android Studio 4.0 Beta 3"
-    build = "193.6296804";
-    sha256Hash = "072rvh20xkn7izh6f2r2bspy06jrvcibj2hc12hz76m8cwzf4v0m";
+    version = "4.0.0.13"; # "Android Studio 4.0 Beta 4"
+    build = "193.6348893";
+    sha256Hash = "0lchi3l50826n1af1z24yclpf27v2q5p1zjbvcmn37wz46d4s4g2";
   };
   latestVersion = { # canary & dev
-    version = "4.1.0.3"; # "Android Studio 4.1 Canary 3"
-    build = "193.6297379";
-    sha256Hash = "0sb8ll9bkkdglq18wvy5hikimhjbpfadjdygx9cd8q545h8dy137";
+    version = "4.1.0.4"; # "Android Studio 4.1 Canary 4"
+    build = "193.6325121";
+    sha256Hash = "19b4a03qfljdisn7cw44qzab85hib000m9mgswzssjh6ylkd9arw";
   };
 in {
   # Attributes are named by their corresponding release channels
diff --git a/pkgs/applications/editors/uberwriter/default.nix b/pkgs/applications/editors/apostrophe/default.nix
index 48ebc79e705..623f86a61c2 100644
--- a/pkgs/applications/editors/uberwriter/default.nix
+++ b/pkgs/applications/editors/apostrophe/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, meson, ninja, cmake
+{ stdenv, fetchFromGitLab, meson, ninja, cmake
 , wrapGAppsHook, pkgconfig, desktop-file-utils
 , appstream-glib, pythonPackages, glib, gobject-introspection
 , gtk3, webkitgtk, glib-networking, gnome3, gspell, texlive
@@ -10,14 +10,15 @@ let
   texliveDist = texlive.combined.scheme-medium;
 
 in stdenv.mkDerivation rec {
-  pname = "uberwriter";
-  version = "unstable-2020-01-24";
+  pname = "apostrophe";
+  version = "unstable-2020-03-29";
 
-  src = fetchFromGitHub {
-    owner  = pname;
+  src = fetchFromGitLab {
+    owner  = "somas";
     repo   = pname;
-    rev    = "0647b413407eb8789a25c353602c4ac979dc342a";
-    sha256 = "19z52fpbf0p7dzx7q0r5pk3nn0c8z69g1hv6db0cqp61cqv5z95q";
+    domain = "gitlab.gnome.org";
+    rev    = "219fa8976e3b8a6f0cea15cfefe4e336423f2bdb";
+    sha256 = "192n5qs3x6rx62mqxd6wajwm453pns8kjyz5v3xc891an6bm1kqx";
   };
 
   nativeBuildInputs = [ meson ninja cmake pkgconfig desktop-file-utils
@@ -30,10 +31,10 @@ in stdenv.mkDerivation rec {
   postPatch = ''
     patchShebangs --build build-aux/meson_post_install.py
 
-    substituteInPlace uberwriter/config.py --replace "/usr/share/uberwriter" "$out/share/uberwriter"
+    substituteInPlace ${pname}/config.py --replace "/usr/share/${pname}" "$out/share/${pname}"
 
     # get rid of unused distributed dependencies
-    rm -r uberwriter/{pylocales,pressagio}
+    rm -r ${pname}/pylocales
   '';
 
   preFixup = ''
@@ -46,7 +47,7 @@ in stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = http://uberwriter.github.io/uberwriter/;
+    homepage = "https://gitlab.gnome.org/somas/apostrophe";
     description = "A distraction free Markdown editor for GNU/Linux";
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/applications/editors/aseprite/default.nix b/pkgs/applications/editors/aseprite/default.nix
index 6e6d7db8177..5ba0f9cf237 100644
--- a/pkgs/applications/editors/aseprite/default.nix
+++ b/pkgs/applications/editors/aseprite/default.nix
@@ -98,6 +98,8 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  passthru = { inherit skia; };
+
   meta = with lib; {
     homepage = https://www.aseprite.org/;
     description = "Animated sprite editor & pixel art tool";
diff --git a/pkgs/applications/editors/aseprite/skia.nix b/pkgs/applications/editors/aseprite/skia.nix
index c89ebd4ad0c..141d51bed0f 100644
--- a/pkgs/applications/editors/aseprite/skia.nix
+++ b/pkgs/applications/editors/aseprite/skia.nix
@@ -6,6 +6,14 @@
 let
   # skia-deps.nix is generated by: ./skia-make-deps.sh 'angle2|dng_sdk|piex|sfntly'
   depSrcs = import ./skia-deps.nix { inherit fetchgit; };
+  gnOld = gn.overrideAttrs (oldAttrs: rec {
+    version = "20190403";
+    src = fetchgit {
+      url = "https://gn.googlesource.com/gn";
+      rev = "64b846c96daeb3eaf08e26d8a84d8451c6cb712b";
+      sha256 = "1v2kzsshhxn0ck6gd5w16gi2m3higwd9vkyylmsczxfxnw8skgpy";
+    };
+  });
 in
 stdenv.mkDerivation {
   name = "skia-aseprite-m71";
@@ -14,11 +22,11 @@ stdenv.mkDerivation {
     owner = "aseprite";
     repo = "skia";
     # latest commit from aseprite-m71 branch
-    rev = "89e4ca4352d05adc892f5983b108433f29b2c0c2";
+    rev = "89e4ca4352d05adc892f5983b108433f29b2c0c2"; # TODO: Remove the gnOld override
     sha256 = "0n3vrkswvi6rib9zv2pzi18h3j5wm7flmgkgaikcm6q7iw4l2c7x";
   };
 
-  nativeBuildInputs = [ python2 gn ninja ];
+  nativeBuildInputs = [ python2 gnOld ninja ];
 
   buildInputs = [
     fontconfig expat icu58 libglvnd libjpeg libpng libwebp zlib
diff --git a/pkgs/applications/editors/dit/default.nix b/pkgs/applications/editors/dit/default.nix
index 2f83b0b8d99..f973e67599c 100644
--- a/pkgs/applications/editors/dit/default.nix
+++ b/pkgs/applications/editors/dit/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dit";
-  version = "0.5";
+  version = "0.6";
 
   src = fetchurl {
     url = "https://hisham.hm/dit/releases/${version}/${pname}-${version}.tar.gz";
-    sha256 = "05vhr1gl3bb5fg49v84xhmjaqdjw6djampvylw10ydvbpnpvjvjc";
+    sha256 = "0ryvm54xxkg2gcgz4r8zdxrl6j2h8mgg9nfqmdmdr31qkcj8wjsq";
   };
 
   buildInputs = [ ncurses lua ]
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A console text editor for Unix that you already know how to use";
-    homepage = https://hisham.hm/dit/;
+    homepage = "https://hisham.hm/dit/";
     license = licenses.gpl2;
     platforms = with platforms; linux;
     maintainers = with maintainers; [ davidak ];
diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix
index 4b3a7e11f3b..345f7eae9fc 100644
--- a/pkgs/applications/editors/eclipse/default.nix
+++ b/pkgs/applications/editors/eclipse/default.nix
@@ -13,10 +13,10 @@ assert stdenv ? glibc;
 
 let
   platform_major = "4";
-  platform_minor = "14";
-  year = "2019";
-  month = "12";
-  timestamp = "201912100610";
+  platform_minor = "15";
+  year = "2020";
+  month = "03";
+  timestamp = "${year}${month}050155";
 in rec {
 
   buildEclipse = import ./build-eclipse.nix {
@@ -32,8 +32,8 @@ in rec {
     description = "Eclipse IDE for C/C++ Developers";
     src =
       fetchurl {
-        url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
-        sha512 = "28h8z45j7zlcbvvabzsniwqls1lns21isx69y6l207a869rknp9vzg6506q6zalj9b49j8c7ynkn379xgbzp07i6zw3dzk3pqp2rgam";
+        url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-cpp-${year}-${month}-R-incubation-linux-gtk-x86_64.tar.gz";
+        sha512 = "2wy4a3p347fajr9zsfz1zlvz6jpy3vficdry27m5fs0azfmxmy2cfns5hh18sin4xqq3jvqppfqxh41rzcpcmiq12zhc6cz42brqgxw";
       };
   };
 
@@ -45,7 +45,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-modeling-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
-        sha512 = "1g1zsz3c2kx4vs1mjpcisbk81lk4hsr1z2fw46lih825c53vwf59snp8d97c8yw2i25y0ml48nc1nskib6qnif8m2h6rpah7kgmi8ay";
+        sha512 = "0qccsclay9000sqrymm8hkg70a4jcvd70vymw1kkxsklcs7dnrhch55an98gbzf9r0jgd1ap62a4hyxlnm6hdqqniwcgdza0i4nwwgj";
       };
   };
 
@@ -57,7 +57,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-platform-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
-        sha512 = "05nsldw937l1g9fj964njivgkf2ipk1rh1jg5w8svdhpp3v1pp3iinfm2mz9kk8namwfkx8krsvsxcgvqyzgrkhf42wqh53vqrjf70h";
+        sha512 = "01rv5x7qqm0a2p30828z2snms3nb2kjx9si63sr5rdkdgr3vbh6xq8n8fn757dqazmpz9zskmwxxmbxnwycfllhgb8msb77pcy3fpg7";
       };
   };
 
@@ -87,7 +87,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops${platform_major}/R-${platform_major}.${platform_minor}-${timestamp}/eclipse-SDK-${platform_major}.${platform_minor}-linux-gtk-x86_64.tar.gz";
-        sha512 = "0dcbxzjqc27v1faz16yxqcm6zrbna4kkd32xy7paadiwn125y6ijx8zvda4kc7bih6v5b9ch2i0z5ndra1lcjcc88z6cklh0vngjkh1";
+        sha512 = "33ra8qslwz73240xzjvr751lpl94drlcf425a7kxngq1qla2cda7gxr71bxlr9fm2hrqq0h097ihmg0ix9hv2dmwnc76gp4hwwrlk41";
       };
   };
 
@@ -99,7 +99,7 @@ in rec {
     src =
       fetchurl {
         url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/technology/epp/downloads/release/${year}-${month}/R/eclipse-java-${year}-${month}-R-linux-gtk-x86_64.tar.gz";
-        sha512 = "21lhgv3z23mn8q0gffgxlfwhyxb348zjnzv716zsys7h7kj5vigl45q9mz0qrl11524rxx7jwi901jjd4l258w9kp7wzlq0d5n1r39m";
+        sha512 = "0ffa1q19z31j8i552mp9zg4v0p4iv002cvlzh49ia8hi0hgk75pbkp6vxlr75jz0as03n71f0ww8xbflji31qgwfmy6rs1rzqihfff9";
       };
   };
 
diff --git a/pkgs/applications/editors/eclipse/plugins.nix b/pkgs/applications/editors/eclipse/plugins.nix
index 87c32c30e19..a60b1a2ae51 100644
--- a/pkgs/applications/editors/eclipse/plugins.nix
+++ b/pkgs/applications/editors/eclipse/plugins.nix
@@ -254,12 +254,12 @@ rec {
 
   cdt = buildEclipseUpdateSite rec {
     name = "cdt-${version}";
-    version = "9.10.0";
+    version = "9.11.0";
 
     src = fetchzip {
       stripRoot = false;
-      url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/9.10/${name}/${name}.zip";
-      sha256 = "11nbrcvgbg9l3cmp3v3y8y0vldzcf6qlpp185a6dzabdcij6gz5m";
+      url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/tools/cdt/releases/9.11/${name}/${name}.zip";
+      sha256 = "1730w6rbv649nzfalfd10p2ph0z9rbrrcflga0n1dpmg181xh9lk";
     };
 
     meta = with stdenv.lib; {
@@ -474,12 +474,12 @@ rec {
 
   jdt = buildEclipseUpdateSite rec {
     name = "jdt-${version}";
-    version = "4.14";
+    version = "4.15";
 
     src = fetchzip {
       stripRoot = false;
-      url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.14-201912100610/org.eclipse.jdt-4.14.zip;
-      sha256 = "1c2a23qviv58xljpq3yb37ra8cqw7jh52hmzqlg1nij2sdxb6hm5";
+      url = "https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-${version}-202003050155/org.eclipse.jdt-${version}.zip";
+      sha256 = "1dm4qgfb6rm7w0dk8br071c7wy0ybp7zrwvr3i02c2bxzy2psz7q";
     };
 
     meta = with stdenv.lib; {
diff --git a/pkgs/applications/editors/emacs-modes/elpa-generated.nix b/pkgs/applications/editors/emacs-modes/elpa-generated.nix
index aa0f625124f..9ae07c1c900 100644
--- a/pkgs/applications/editors/emacs-modes/elpa-generated.nix
+++ b/pkgs/applications/editors/emacs-modes/elpa-generated.nix
@@ -1070,10 +1070,10 @@
       elpaBuild {
         pname = "elisp-benchmarks";
         ename = "elisp-benchmarks";
-        version = "1.3";
+        version = "1.4";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/elisp-benchmarks-1.3.tar";
-          sha256 = "05a891mwbz50q3a44irbf2w4wlp5dm2yxwcvxqrckvpjm1amndmf";
+          url = "https://elpa.gnu.org/packages/elisp-benchmarks-1.4.tar";
+          sha256 = "18ia04aq4pqa8374x60g3g66jqmm17c6n904naa0jhqphlgam8pb";
         };
         packageRequires = [];
         meta = {
@@ -1572,7 +1572,7 @@
           license = lib.licenses.free;
         };
       }) {};
-    ioccur = callPackage ({ elpaBuild, fetchurl, lib }:
+    ioccur = callPackage ({ cl-lib ? null, elpaBuild, emacs, fetchurl, lib }:
       elpaBuild {
         pname = "ioccur";
         ename = "ioccur";
@@ -1581,7 +1581,7 @@
           url = "https://elpa.gnu.org/packages/ioccur-2.4.el";
           sha256 = "1isid3kgsi5qkz27ipvmp9v5knx0qigmv7lz12mqdkwv8alns1p9";
         };
-        packageRequires = [];
+        packageRequires = [ cl-lib emacs ];
         meta = {
           homepage = "https://elpa.gnu.org/packages/ioccur.html";
           license = lib.licenses.free;
@@ -2215,10 +2215,10 @@
       elpaBuild {
         pname = "oauth2";
         ename = "oauth2";
-        version = "0.11";
+        version = "0.12";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/oauth2-0.11.el";
-          sha256 = "0ydkc9jazsnbbvfhd47mql52y7k06n3z7r0naqxkwb99j9blqsmp";
+          url = "https://elpa.gnu.org/packages/oauth2-0.12.el";
+          sha256 = "1rfyfy0h7shr3fmd8lh6s2i3ahfh28wb5fqiqlsjwspn5h77ll29";
         };
         packageRequires = [];
         meta = {
@@ -3056,10 +3056,10 @@
       elpaBuild {
         pname = "sql-indent";
         ename = "sql-indent";
-        version = "1.4";
+        version = "1.5";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/sql-indent-1.4.tar";
-          sha256 = "1nilxfm30nb2la1463729rgbgbma7igkf0z325k8cbapqanb1wgl";
+          url = "https://elpa.gnu.org/packages/sql-indent-1.5.tar";
+          sha256 = "07k5rn9hbxppnka7nq0a3a6zyqqa1hp8j6qrb344js6zyak0cb63";
         };
         packageRequires = [ cl-lib ];
         meta = {
@@ -3225,10 +3225,10 @@
       elpaBuild {
         pname = "tramp";
         ename = "tramp";
-        version = "2.4.3.2";
+        version = "2.4.3.3";
         src = fetchurl {
-          url = "https://elpa.gnu.org/packages/tramp-2.4.3.2.tar";
-          sha256 = "17kay6rpkgz79jggzj53awkbqfsp5sq93wpssw5vlwnigd4mrkzx";
+          url = "https://elpa.gnu.org/packages/tramp-2.4.3.3.tar";
+          sha256 = "1di9ia59k6x7j9r8flwf05r160j30nrg0jvq5fjc9iazag9lniyw";
         };
         packageRequires = [ emacs ];
         meta = {
diff --git a/pkgs/applications/editors/emacs-modes/manual-packages.nix b/pkgs/applications/editors/emacs-modes/manual-packages.nix
index c3c21b40a65..f04319f23de 100644
--- a/pkgs/applications/editors/emacs-modes/manual-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/manual-packages.nix
@@ -52,6 +52,19 @@
     };
   };
 
+  agda-input = self.trivialBuild {
+    pname = "agda-input";
+
+    inherit (external.Agda) src version;
+
+    postUnpack = "mv $sourceRoot/src/data/emacs-mode/agda-input.el $sourceRoot";
+
+    meta = {
+      description = "Standalone package providing the agda-input method without building Agda.";
+      inherit (external.Agda.meta) homepage license;
+    };
+  };
+
   ess-R-object-popup =
     callPackage ./ess-R-object-popup { };
 
diff --git a/pkgs/applications/editors/emacs-modes/recipes-archive-melpa.json b/pkgs/applications/editors/emacs-modes/recipes-archive-melpa.json
index d1cd1018027..b512d5f5c75 100644
--- a/pkgs/applications/editors/emacs-modes/recipes-archive-melpa.json
+++ b/pkgs/applications/editors/emacs-modes/recipes-archive-melpa.json
@@ -283,10 +283,10 @@
  },
  {
   "ename": "ac-alchemist",
-  "commit": "ef9037aa41a8d9467838495bb235db32c19cc417",
-  "sha256": "02ll3hcixgdb8zyszn78714gy1h2q0vkhpbnwap9302mr2racwl0",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0cakni8lvkhgdrzwa2cdqwnkbaiac1fn4j2lqgmx33z7hmrk8am6",
   "fetcher": "github",
-  "repo": "syohex/emacs-ac-alchemist",
+  "repo": "emacsorphanage/ac-alchemist",
   "unstable": {
    "version": [
     20150908,
@@ -334,10 +334,10 @@
  },
  {
   "ename": "ac-capf",
-  "commit": "929da263f57b904c50f5f17b09d4c4b480999c97",
-  "sha256": "1drgk5iz2wp3rxzd39pj0n4cfmm5z8zqlp50jw5z7ffbbg35qxbm",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "08a1ywyv5l1npbkpmg3wmprnqk837bmbwjpcgf5di9a2j33xqbin",
   "fetcher": "github",
-  "repo": "syohex/emacs-ac-capf",
+  "repo": "emacsorphanage/ac-capf",
   "unstable": {
    "version": [
     20151101,
@@ -516,10 +516,10 @@
  },
  {
   "ename": "ac-emoji",
-  "commit": "15f591f9cba367b071046fef5ae01bbbd0475ce3",
-  "sha256": "0msh3dh89jzk6hxva34gp9d5pazchgdknxjbi72z26rss9bkp1mw",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "06cwaasv2bsxr86wsjc21ggibcyqfp352wnc8i5fbr4ypd3vbk42",
   "fetcher": "github",
-  "repo": "syohex/emacs-ac-emoji",
+  "repo": "emacsorphanage/ac-emoji",
   "unstable": {
    "version": [
     20150823,
@@ -547,10 +547,10 @@
  },
  {
   "ename": "ac-etags",
-  "commit": "fda9c7def8bc54af4ab17dc049dd94324c8f10fa",
-  "sha256": "0ag49k9izrs4ikzac9lifvvwhcn5n89lr2vb20pngsvg1czdyhzb",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1qy6v37v7lx93lnpgh5bf2ccxpg2ldzwgdyigqmby9fy0wzwr8sf",
   "fetcher": "github",
-  "repo": "syohex/emacs-ac-etags",
+  "repo": "emacsorphanage/ac-etags",
   "unstable": {
    "version": [
     20161001,
@@ -582,15 +582,15 @@
   "repo": "xiaohanyu/ac-geiser",
   "unstable": {
    "version": [
-    20130929,
-    647
+    20200318,
+    824
    ],
    "deps": [
     "auto-complete",
     "geiser"
    ],
-   "commit": "502d18a8a0bd4b5fdd495a99299ba2a632c5cd9a",
-   "sha256": "0h2kakb4f5hgzf5l2kpqngalcmc4402lkg1pvs88c8z4rqp2vfvz"
+   "commit": "93818c936ee7e2f1ba1b315578bde363a7d43d05",
+   "sha256": "00n2qa26yilaj837n1yp6lbqa4gf30nkkbvanl7m9ih7k48ssqmw"
   },
   "stable": {
    "version": [
@@ -814,10 +814,10 @@
  },
  {
   "ename": "ac-ispell",
-  "commit": "b41acb7387ebef9af2906fa16298b64d6431bfb0",
-  "sha256": "1vsy2qjh60n5lavivpqhhcpg5pk8zz2r0wy1sb65capn841zdi67",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0npbrvwww6mi8q8x3cc6sf02x1b3ns2w7499lip7ymbr1zi9gdxg",
   "fetcher": "github",
-  "repo": "syohex/emacs-ac-ispell",
+  "repo": "emacsorphanage/ac-ispell",
   "unstable": {
    "version": [
     20151101,
@@ -1020,10 +1020,10 @@
  },
  {
   "ename": "ac-racer",
-  "commit": "e4318daf4dbb6864ee41f41287c89010fb811641",
-  "sha256": "1vkvh8y3ckvzvqxj4i2k6jqri94121wbfjziybli74qba8dca4yp",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0vxnc6q2khxf5xl3k8lwvjg5biqxasr4vm9k3c8033xwl6in299r",
   "fetcher": "github",
-  "repo": "syohex/emacs-ac-racer",
+  "repo": "emacsorphanage/ac-racer",
   "unstable": {
    "version": [
     20170114,
@@ -2242,26 +2242,26 @@
   "repo": "domtronn/all-the-icons.el",
   "unstable": {
    "version": [
-    20191127,
-    1123
+    20200326,
+    1553
    ],
    "deps": [
     "memoize"
    ],
-   "commit": "1416f37984486a44c6c0cbe0a2c985e82f965b6b",
-   "sha256": "1nwqn1cwjrmlp8g87ciwpv1h0pd61nh05bdpvz2kqg8b5ssfc4gd"
+   "commit": "f6cbb51c152dd60be5718218600a4ec14d9fd6cc",
+   "sha256": "0a59m1vv0s7czsccfalqyyp3v4lhydn1wbvyxkzy8i9fsjqbyxsa"
   },
   "stable": {
    "version": [
-    3,
-    2,
-    0
+    4,
+    0,
+    1
    ],
    "deps": [
     "memoize"
    ],
-   "commit": "52d1f2d36468146c93aaf11399f581401a233306",
-   "sha256": "1sdl33117lccznj38021lwcdnpi9nxmym295q6y460y4dm4lx0jn"
+   "commit": "d363bb3e73909be013fcf35e1458bb654ec5bbaa",
+   "sha256": "0yh7gnv9xfqn8q4rzaa6wpyn9575vyfxy7d3afly2mqsb367fgm5"
   }
  },
  {
@@ -2272,14 +2272,14 @@
   "repo": "jtbm37/all-the-icons-dired",
   "unstable": {
    "version": [
-    20200301,
-    1346
+    20200327,
+    758
    ],
    "deps": [
     "all-the-icons"
    ],
-   "commit": "733e0b520562d1f78f757f21287547272cedcaef",
-   "sha256": "1ml9xzdaqjnpwb8rnqr0967n3zk7fb56xy531gc52k3pxj68zbcc"
+   "commit": "816987d339630e43f77a5a64ef308e95d341dda7",
+   "sha256": "01wgxdw222pz2sv7x9jwlislkasaw01bkq1nkpdp4jwl816aza8l"
   }
  },
  {
@@ -2309,14 +2309,14 @@
   "repo": "seagle0128/all-the-icons-ibuffer",
   "unstable": {
    "version": [
-    20200315,
-    1244
+    20200319,
+    1625
    ],
    "deps": [
     "all-the-icons"
    ],
-   "commit": "8f8a09e0443738df5c659c1d85c714fc7c111a2d",
-   "sha256": "0rpjrfprpddhp1wymwrx798x09wp6hrjl8131wgkpsnpi3bxcaz5"
+   "commit": "3ee9e32f480329e94e45f86538343b0ddc7ddd4f",
+   "sha256": "1cs9027q26nfm5k3182mbmmhj8s8y2nv47gsyamwpjqdma0sbl73"
   },
   "stable": {
    "version": [
@@ -2371,15 +2371,15 @@
   "repo": "seagle0128/all-the-icons-ivy-rich",
   "unstable": {
    "version": [
-    20200315,
-    1225
+    20200324,
+    550
    ],
    "deps": [
     "all-the-icons",
     "ivy-rich"
    ],
-   "commit": "a12e39b9f343b28a1868112eafce7661aaf883ef",
-   "sha256": "0bdwb5diplzygn768aqmayy276i9cy5qg8dam3bs3vqkmm0is4q1"
+   "commit": "a9a4389c1930a5a071857b4d450eaecb21f4d6b9",
+   "sha256": "133vl3awl3qxxd2ka8zdr33v6s8hrjpsv4bv2db5j8jz35m0hx9d"
   },
   "stable": {
    "version": [
@@ -2595,14 +2595,14 @@
   "repo": "stardiviner/amread-mode",
   "unstable": {
    "version": [
-    20200315,
-    323
+    20200322,
+    843
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "b0c9ec7e8c55e89a565361712dff11dc7b74845f",
-   "sha256": "0bc2p8n5mr06w0jww3snlq15qd125c17qv5fpih3lr7n76zqfcdv"
+   "commit": "76ebe8d56b4d19f2bf75f54479f0e7ecc9cbaac9",
+   "sha256": "09jmllb9an992mzgncxral8i7j532l8i80yvvqwaqwv9azwab5sd"
   }
  },
  {
@@ -2930,11 +2930,11 @@
   "repo": "bastibe/annotate.el",
   "unstable": {
    "version": [
-    20200312,
-    1352
+    20200317,
+    1703
    ],
-   "commit": "b8fd76f712042c210b2139448e53d5f9923ba5f0",
-   "sha256": "179nhb2f2lq2q5pwq6l10n1cgjyr300083g7nsxn4z72la9m5gh4"
+   "commit": "44b378b16ad407c36e8cf728e671c17116d854b6",
+   "sha256": "1xhmgadi4maci25si3mf854d0ammz7w9l317r4m81v1gkdfvv8wi"
   },
   "stable": {
    "version": [
@@ -3200,17 +3200,17 @@
  },
  {
   "ename": "anzu",
-  "commit": "855ea20024b606314f8590129259747cac0bcc97",
-  "sha256": "181hzwy9bc0zfhax26p20q9cjibrmi9ngps5fa3ja5g6scxfs9g1",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0m9wwq5fl7g6gfzv6m9hlrjf8nvqn1q7nqif1x93sh7q3vfwgxzl",
   "fetcher": "github",
-  "repo": "syohex/emacs-anzu",
+  "repo": "emacsorphanage/anzu",
   "unstable": {
    "version": [
-    20190303,
-    1701
+    20200328,
+    2019
    ],
-   "commit": "592f8ee6d0b1bc543943b36a30063c2d1aac4b22",
-   "sha256": "123zbnl36vi0gkffd6m6mkskhmjmm0am23j45w1mbmfyq03r1d8b"
+   "commit": "61cb32aa61f9bd088c519ea3cc96b81e241efed7",
+   "sha256": "1b2zjich6mvypycsrz5jkpv5mbaj77jka17vcc5ss2390dad92f8"
   },
   "stable": {
    "version": [
@@ -3264,6 +3264,30 @@
   }
  },
  {
+  "ename": "apdl-mode",
+  "commit": "2fd3f323919b8eebba081689c93bb918d0af1359",
+  "sha256": "11in64hcs5gmvviv986043r68l34byi31v5vibwqx63qg8k3gqfn",
+  "fetcher": "github",
+  "repo": "dieter-wilhelm/apdl-mode",
+  "unstable": {
+   "version": [
+    20200329,
+    2024
+   ],
+   "commit": "af7764828555486a78727194a001193d03dc12f0",
+   "sha256": "1p5w7kzmmsc3ayh4rvmd0a9g9wchvddhr22dx3jl7dx42s3sig5m"
+  },
+  "stable": {
+   "version": [
+    20,
+    3,
+    0
+   ],
+   "commit": "17bbc63239d2b791887c3d263fa7b4e8ea9d0ccb",
+   "sha256": "0g9nf0853c56w8vpzys4rxw6ki887ajr3h7cgqb295aa16bg65x7"
+  }
+ },
+ {
   "ename": "apel",
   "commit": "4976446a8ae40980d502186615902fc05c15ec7c",
   "sha256": "0zrm8m66p3aqr0108s3cj6z4xqbg2hx37z1pam4c65bqlhh74s8y",
@@ -3446,8 +3470,8 @@
     "let-alist",
     "request"
    ],
-   "commit": "265ab11044b527ca70762fc5d633227001dd4da6",
-   "sha256": "09xww9vz7jjlrya8cyayh79x4inlhi6y7sdgg3xrbaxi9avflcs8"
+   "commit": "5fe8b035b2b6bc165728444bb8e9792d14b7409d",
+   "sha256": "1wbpjz5jgpph6c6wk29dxz8r368ai6jx9cb4y2mdcpngig8kmazm"
   }
  },
  {
@@ -3493,11 +3517,11 @@
   "repo": "rubikitch/archive-region",
   "unstable": {
    "version": [
-    20140201,
-    2342
+    20200316,
+    1425
    ],
-   "commit": "0d357d4c42a6a248c457f358f81b20fd20fede2f",
-   "sha256": "03pmwgvlxxlp4wh0sg5czpx1i88i43lz8lwdbfa6l28g1sv0f264"
+   "commit": "53cd2d96ea7c33f320353982b36854f25c900c2e",
+   "sha256": "1c3ji0asnhdls8pa5hbqg65kc35jc6yndib7cx1zvnpb8pjlvbbr"
   }
  },
  {
@@ -3638,6 +3662,24 @@
   }
  },
  {
+  "ename": "ascii-table",
+  "commit": "d6d5599ff68bf9125a9825ddd2a00009242bf2e1",
+  "sha256": "0p3dyxzs5xaq17209nnf2cqs87hz2b1k3x1nkq4jvhn71v4jcaj1",
+  "fetcher": "github",
+  "repo": "lassik/emacs-ascii-table",
+  "unstable": {
+   "version": [
+    20200329,
+    1744
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "572b62c8305b8c26082a17e15bc2f53066ddcb5a",
+   "sha256": "1k1wfbwzn9gjv7hmc7ffr3r211vxrxassryar6gnajmj9xbzwcgi"
+  }
+ },
+ {
   "ename": "asilea",
   "commit": "858e673c66e876d80f41d47d307c944d7bdb147d",
   "sha256": "1lb8nr6r6yy06m4pxg8w9ja4zv8k5xwhl95v2wv95y1qwhgnwg3j",
@@ -3715,6 +3757,24 @@
   }
  },
  {
+  "ename": "astyle",
+  "commit": "b495f29653edd15cef8eb3c9ea4d8aea35b0ac75",
+  "sha256": "0vchbm2lb9qa66fspyylyv0snmrxjfpzc332j0k7pkp6cmi08fnh",
+  "fetcher": "github",
+  "repo": "storvik/emacs-astyle",
+  "unstable": {
+   "version": [
+    20200328,
+    616
+   ],
+   "deps": [
+    "reformatter"
+   ],
+   "commit": "04ff2941f08c4b731fe6a18ee1697436d1ca1cc0",
+   "sha256": "0midga1dz9yl7mzn6syb3iwnfpzvnfpqnxi9rsv63rqnrm36qy4q"
+  }
+ },
+ {
   "ename": "asx",
   "commit": "2eda72c3574c41184104532bb129cbe0efc8afd4",
   "sha256": "0kijqfwkwm5kd1h3v0rab9fm8ivmqnmijy065iz5xhmi3yicx4aq",
@@ -3936,8 +3996,8 @@
    "deps": [
     "auctex"
    ],
-   "commit": "24270d9452c0b4ae974648cdbcdbad4401f4b1b5",
-   "sha256": "0la88z6g5vf2jq0gk8qfv83mgld1i10q84vn1ihhmnd9sqv99j5s"
+   "commit": "76fba4a1a918ce8a276fa0e22f026ad9a45a47dc",
+   "sha256": "1rd92s2c08z3l2r2wxcs46bbri4rj0d0aym36v89pwq0fcqqx2ry"
   },
   "stable": {
    "version": [
@@ -4667,6 +4727,24 @@
   }
  },
  {
+  "ename": "auto-scroll-mode",
+  "commit": "195041c70d2807184d4d8c711bcd3f54b8dfc73a",
+  "sha256": "1hvnhszn1cqzw42wn7w0hrq7wn161alg2w6xpd53ydg61g31i68n",
+  "fetcher": "github",
+  "repo": "stardiviner/auto-scroll-mode",
+  "unstable": {
+   "version": [
+    20200316,
+    134
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "a23669a8747e71ca5b1003b923f7a3d3834740e3",
+   "sha256": "033msm39fdhm6iqd7khjsqvxrv4314h8klsq3g06zsrgpmjki1xr"
+  }
+ },
+ {
   "ename": "auto-shell-command",
   "commit": "ea710bfa77fee7c2688eea8258ca9d2105d1896e",
   "sha256": "1i78fh72i8yv91rnabf0vs78r43qrjkr36hndmn5ya2xs3b1g41j",
@@ -4824,6 +4902,21 @@
   }
  },
  {
+  "ename": "autocrypt",
+  "commit": "c5aac210984709f020f96f3ca166185900accddf",
+  "sha256": "1y5p5n2p2qk638i1as3wbfz82r08jv4q91470xz9r1gkdnn1xyx8",
+  "fetcher": "git",
+  "url": "https://git.sr.ht/~zge/autocrypt",
+  "unstable": {
+   "version": [
+    20200327,
+    1958
+   ],
+   "commit": "f970fb51c80d582dcc6682106388d6a870ef2c83",
+   "sha256": "0qfawvnjyc0rrvr5zhkq7ngllrf5h9z3wsi2a75s74545d6nyyjq"
+  }
+ },
+ {
   "ename": "autodisass-java-bytecode",
   "commit": "a094845521d76754a29435012af5fba9f7975a8e",
   "sha256": "1k19nkbxnysm3qkpdhz4gv2x9nnrp94xl40x84q8n84s6xaan4dc",
@@ -5476,11 +5569,11 @@
   "url": "https://git.sr.ht/~zge/bang",
   "unstable": {
    "version": [
-    20200102,
-    1933
+    20200325,
+    1053
    ],
-   "commit": "87589331a8f0850a46964dbdbdcc3f2191b03376",
-   "sha256": "0yzz090997jn3d1ah8a32q491bsgzan6zqp2szv7d8ga4ziv3gkp"
+   "commit": "11e121aed7f5fe90700bd3f49d987bff0a796c2d",
+   "sha256": "0y6rdfhywjp0d4l39hjhlzzwp64wgd3xrvr80c2f6xbc74c6l5hk"
   },
   "stable": {
    "version": [
@@ -6455,20 +6548,20 @@
   "repo": "riscy/bifocal-mode",
   "unstable": {
    "version": [
-    20190623,
-    2236
+    20200325,
+    539
    ],
-   "commit": "c354fc32b0a666203f5c546bb2d2c397cb003391",
-   "sha256": "0wzsbrj1rhfl6qgjnphbh6ijfbjdr2wid7mqzz49ykcb9ldm7kjj"
+   "commit": "773a6dde790c4a240e643a9071e4c7bce09d40de",
+   "sha256": "11dirb13hblfa95hqqshrsjri4d4qzcq5qhhnd4xqajdchr62758"
   },
   "stable": {
    "version": [
     0,
     0,
-    5
+    6
    ],
-   "commit": "add30c678488cec04976a85ba8cda20805938a01",
-   "sha256": "01j8s6c3qm4scxy1dk07l41y0n55gz83zzfi254kc2vyx02vqg7f"
+   "commit": "773a6dde790c4a240e643a9071e4c7bce09d40de",
+   "sha256": "11dirb13hblfa95hqqshrsjri4d4qzcq5qhhnd4xqajdchr62758"
   }
  },
  {
@@ -6515,8 +6608,8 @@
     "bind-key",
     "key-chord"
    ],
-   "commit": "42db6b3d90ee57d0f5947d3b0bf4b0010bdf7b40",
-   "sha256": "1an2whgy68l9c1l1qx8p8jz47g4hj2abf0kxvcmbc6wj8lp5zny8"
+   "commit": "c873d5529c9c80cb58222f22873a4f081c307cb2",
+   "sha256": "0jbq3w9ijsbl5gblhr24b0rh4gyp1xx696g20l438a7sbsk4b531"
   },
   "stable": {
    "version": [
@@ -6542,8 +6635,8 @@
     20191110,
     416
    ],
-   "commit": "42db6b3d90ee57d0f5947d3b0bf4b0010bdf7b40",
-   "sha256": "1an2whgy68l9c1l1qx8p8jz47g4hj2abf0kxvcmbc6wj8lp5zny8"
+   "commit": "c873d5529c9c80cb58222f22873a4f081c307cb2",
+   "sha256": "0jbq3w9ijsbl5gblhr24b0rh4gyp1xx696g20l438a7sbsk4b531"
   },
   "stable": {
    "version": [
@@ -6752,6 +6845,29 @@
   }
  },
  {
+  "ename": "blackout",
+  "commit": "9128d87569dc74b90f57dd65edead7199f5c7911",
+  "sha256": "06gxgald2vchfwhbiaap7rfjk7kirfv4yjc4r98g998v96bilw64",
+  "fetcher": "github",
+  "repo": "raxod502/blackout",
+  "unstable": {
+   "version": [
+    20200326,
+    1640
+   ],
+   "commit": "87498cc91916c2f41d28e93fd80102c42b93ccf6",
+   "sha256": "156mnqwcpv3zl5pklqvmayq5j76hm4jc3has4qydfygz8fhx1zhy"
+  },
+  "stable": {
+   "version": [
+    1,
+    0
+   ],
+   "commit": "87822abd1ed46411368ef91752a7f51c0ef2aee0",
+   "sha256": "0n0889vsm3lzswkcdgdykgv3vz4pb9s88wwkinc5bn70vc187byp"
+  }
+ },
+ {
   "ename": "blgrep",
   "commit": "e78ed9dc4a7ff57524e79213973157ab364ae14d",
   "sha256": "0w7453vh9c73hdfgr06693kwvhznn9xr1hqa65izlsx2fjhqc9gm",
@@ -6951,14 +7067,14 @@
   "repo": "sergeyklay/bnf-mode",
   "unstable": {
    "version": [
-    20200313,
-    2245
+    20200323,
+    1348
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "9c8c27e38cce6ba4d059a052ee0e0ece103e0684",
-   "sha256": "0daiv5ac7xnmprqmmc2d8gw83qyvsa8h9wnzh2ak1xs9hpar2nkw"
+   "commit": "d88eef69ae66ea1ffa21a65317afe84c9ddb0814",
+   "sha256": "1bci2w8drwgcli9hqg55izaxpwq4fvqdigvlrfc0524s7021ij24"
   },
   "stable": {
    "version": [
@@ -7360,6 +7476,48 @@
   }
  },
  {
+  "ename": "brf",
+  "commit": "203e7d21e2387866107740ead4ec28787d82ebfb",
+  "sha256": "0439bzzzy6kx536zh9azxrdmfpb69xrr8axxg5q7989892iaqi5m",
+  "fetcher": "git",
+  "url": "https://bitbucket.org/MikeWoolley/brf-mode",
+  "unstable": {
+   "version": [
+    20200329,
+    1531
+   ],
+   "deps": [
+    "fringe-helper"
+   ],
+   "commit": "f1ae0c5eb74f62af109ebaf18e8663d6f51270cb",
+   "sha256": "1pzxz5irx6ysa8nhl9x50v8l5r2cvd6pafj71q4i5lrxv9a1dkl1"
+  }
+ },
+ {
+  "ename": "brightscript-mode",
+  "commit": "9acbba1c180ea7c03156009c08285697a7aae419",
+  "sha256": "0g0lwmd53v6lqihksqdirl12rz6a9ljp9zdm1xpd4wbqz72w17jw",
+  "fetcher": "github",
+  "repo": "viseztrance/brightscript-mode",
+  "unstable": {
+   "version": [
+    20200321,
+    2126
+   ],
+   "commit": "51f2d43e08960aa65a67273101733636026790a6",
+   "sha256": "0dzgkpaqlrqfzsmb61idlrp91vs3lrcymbdd4k6ls58kdv75v1j8"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    0
+   ],
+   "commit": "01405633a14269ab26d053ca6f1494c987d24195",
+   "sha256": "0952smngj32an30v2bqgfc14xrl90xwr4a038w01cdgg9k848g7y"
+  }
+ },
+ {
   "ename": "broadcast",
   "commit": "6ed51896112e702a8b853059884aad50d37738c2",
   "sha256": "1h2c3mb49q3vlpalrsrx8q3rmy1zg0y45ayvzbvzdkfgs8idgbib",
@@ -7763,6 +7921,60 @@
   }
  },
  {
+  "ename": "buffer-wrap",
+  "commit": "446fb5528644d9e51a10ade59de97e248729d3f3",
+  "sha256": "1fdk490hwz1mf4ldw8bh0w2byxi03qwdapgdgcvzir3s913gagrw",
+  "fetcher": "github",
+  "repo": "jcs-elpa/buffer-wrap",
+  "unstable": {
+   "version": [
+    20200223,
+    605
+   ],
+   "commit": "460f90bc024b6c287ed8afac3ff1bed2a147c777",
+   "sha256": "07r50iiiyhbqbia9c8c3kz1hvqjs6dkb8rkqpq4yyv3vd1kc9qnb"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    1
+   ],
+   "commit": "813a3dab3007a34fa27cf0a1ae687dc0eae98240",
+   "sha256": "0m2ryic16083ab0x6qwfrxrpsgq84s518vn0cbfcxycblpdh89al"
+  }
+ },
+ {
+  "ename": "bufler",
+  "commit": "b50d5939113ca9a8ad1ba606f3d3030f110a800b",
+  "sha256": "0y1gfpb99777sxizxvqyffsmbv6ib4zasi2dyrf8imf4z45r6adh",
+  "fetcher": "github",
+  "repo": "alphapapa/bufler.el",
+  "unstable": {
+   "version": [
+    20200318,
+    2005
+   ],
+   "deps": [
+    "dash",
+    "dash-functional",
+    "f",
+    "magit-section",
+    "pretty-hydra"
+   ],
+   "commit": "39e756a23196d12792a3af4a06ab024d8235ee19",
+   "sha256": "1b9ddgdd7b6x6353f8s6cv97xqsmmka6vwmv68sq75104wr189w5"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "commit": "2eca0959657030c5853020da017fe98a19bba3f1",
+   "sha256": "0yqgaqz41sbfdbvjxf773p5m2qsr4mm22j2qgn3mp0z1r5dx67ai"
+  }
+ },
+ {
   "ename": "bufshow",
   "commit": "543a734795eed11aa47a8e1348d14e362b341af0",
   "sha256": "027cd0jzb8yxm66q1bhyi75f2m9f2pq3aswgav1d18na3ybwg65h",
@@ -8978,8 +9190,8 @@
     20200314,
     1557
    ],
-   "commit": "2dcd552b314bc64daa40fd7ac09937439e447548",
-   "sha256": "1scixb6s795hjmkpkljccxg8ja2lqkja905gg5lmp09vykf8x5ir"
+   "commit": "37593d191b255d8633231099c70b1b26b3da0d39",
+   "sha256": "02pn3pxawl6268sy981iqialzyj9zy9dz6ci9jrkvbc8gp9gcvwh"
   }
  },
  {
@@ -8990,16 +9202,16 @@
   "repo": "MaskRay/emacs-ccls",
   "unstable": {
    "version": [
-    20200204,
-    444
+    20200327,
+    1915
    ],
    "deps": [
     "dash",
     "lsp-mode",
     "projectile"
    ],
-   "commit": "e5cc4c3e6f40c9c9f0f53e99154c08018eb36944",
-   "sha256": "1yc7jj4g0kh0m1a4r98shvr48wp9i5mawld0xzs9mbfj97dsb96v"
+   "commit": "17ec7bb4cf362b7268c24e070e841f0dfac1c919",
+   "sha256": "08pndwbw6wcpysnvhkqfvrw91ac0np31swiq0yv3dr2x0sq70cp5"
   }
  },
  {
@@ -9028,8 +9240,8 @@
     20200314,
     1557
    ],
-   "commit": "2dcd552b314bc64daa40fd7ac09937439e447548",
-   "sha256": "1scixb6s795hjmkpkljccxg8ja2lqkja905gg5lmp09vykf8x5ir"
+   "commit": "37593d191b255d8633231099c70b1b26b3da0d39",
+   "sha256": "02pn3pxawl6268sy981iqialzyj9zy9dz6ci9jrkvbc8gp9gcvwh"
   }
  },
  {
@@ -9163,15 +9375,15 @@
   "repo": "ema2159/centaur-tabs",
   "unstable": {
    "version": [
-    20200312,
-    1817
+    20200325,
+    1236
    ],
    "deps": [
     "cl-lib",
     "powerline"
    ],
-   "commit": "69fc454d86eaf279b93efed7b0ee9df67c8a25a2",
-   "sha256": "1jfj6jfz74ia2sdhxy5vp4svsvvqpxlwydfcj3vc65ic7hzh39nd"
+   "commit": "e6bf9f5257fa5401695e0e33d0376a0821ac2f2f",
+   "sha256": "1gm06par7pglwj25ydvlp1n2vniq6283mm0g4s53ra77ywsz73jv"
   },
   "stable": {
    "version": [
@@ -9298,8 +9510,8 @@
     20171115,
     2108
    ],
-   "commit": "b1d6dca276e44e220be69052e7db1fc09cda6fc7",
-   "sha256": "0d5ngarandq3jagpjag7z99ma52wm6nbi46xp4zhx0m2ligq4v2m"
+   "commit": "f09d88781a5557d4b2b7d039757cc5e9a7ddd275",
+   "sha256": "10zr6a3z7gzvqvn5fb4l7hg9wi5vhmkdln0c44gskmikdsm173x1"
   },
   "stable": {
    "version": [
@@ -9882,6 +10094,40 @@
   }
  },
  {
+  "ename": "chronometrist",
+  "commit": "35d03fe9c066e7388d5ff4adad1afa1e30145995",
+  "sha256": "09dil46qjn7y55y7qax92l7mcw8g1bsb1mjqc92zgln96asi25kj",
+  "fetcher": "git",
+  "url": "https://framagit.org/contrapunctus/chronometrist/",
+  "unstable": {
+   "version": [
+    20200324,
+    653
+   ],
+   "deps": [
+    "dash",
+    "s",
+    "seq"
+   ],
+   "commit": "dc0fb3bed6b893ecb924f5b1228ab718325cc808",
+   "sha256": "08mzv8rijsagkj4ykxlgr99axp0kxnz36d3iaffkqzyv50cm4r6f"
+  },
+  "stable": {
+   "version": [
+    0,
+    4,
+    2
+   ],
+   "deps": [
+    "dash",
+    "s",
+    "seq"
+   ],
+   "commit": "cc791cd61ee4580c9786f8c58d9e1964e0ff0c64",
+   "sha256": "1ccy7qz1wcmggqlf3hwigbqq4wrx1amds4x9bxz9py6bypglyjc5"
+  }
+ },
+ {
   "ename": "chronos",
   "commit": "53648c5699fc03e50774270f9560c727e2c22873",
   "sha256": "1fwpll0mk6pc37qagbq3b3z32d2qwz993nxp9pjw4qbmlnq6sy9d",
@@ -9937,8 +10183,8 @@
   "repo": "clojure-emacs/cider",
   "unstable": {
    "version": [
-    20200308,
-    1030
+    20200328,
+    1555
    ],
    "deps": [
     "clojure-mode",
@@ -9949,8 +10195,8 @@
     "sesman",
     "spinner"
    ],
-   "commit": "c027c4948562f736fd77e441dc10cb5d6bb355a1",
-   "sha256": "0p808ks2x9dg98v80icxldynvvvfwwsf2y89la40fsc572s8zqjw"
+   "commit": "dfc13f9c199920522ee02feac1d5da1c0b578b6b",
+   "sha256": "12yifir74qicryl5v5gl80s5m2qvlb09ck6jywx20yin3jkw6l58"
   },
   "stable": {
    "version": [
@@ -10233,21 +10479,6 @@
   }
  },
  {
-  "ename": "cl-font-lock",
-  "commit": "c4cc415c24fc1c404aa9e4d8fcc7bf70ed182633",
-  "sha256": "1igiclz5lshq9bz4sndf0qgsvnrfk39jnpld8g4a985gr2hislb4",
-  "fetcher": "github",
-  "repo": "equwal/cl-font-lock",
-  "unstable": {
-   "version": [
-    20200315,
-    649
-   ],
-   "commit": "9520969b67a42aa577cee2e46f16518fef248dc4",
-   "sha256": "05w6yy4jgar0p4b2715gp7armhfsbw84zyvm5c9j9qawlrjfxr1d"
-  }
- },
- {
   "ename": "cl-format",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "09jwy0fgaz2f04dvcdns6w859s6izvrkp8ib4lws3x8kx8z918fy",
@@ -10454,11 +10685,11 @@
   "repo": "spudlyo/clipetty",
   "unstable": {
    "version": [
-    20200105,
-    15
+    20200327,
+    2241
    ],
-   "commit": "fda5a80cf4b24389b2f95eeec1d567df80a8fb11",
-   "sha256": "1nzlrd7vf4sqhb2a0bsg1gaj722id5i1s9f1wdi2bmx58rzhqnhp"
+   "commit": "7ee3f9c52f70f80820a8c66fb6f796d6e01dd92d",
+   "sha256": "1vgk4ci5di0dxm2ql02g1h484nd6abqiv2xa7fh2d9rbkfh9px30"
   },
   "stable": {
    "version": [
@@ -10741,11 +10972,11 @@
   "repo": "clojure-emacs/clojure-mode",
   "unstable": {
    "version": [
-    20191112,
-    1948
+    20200326,
+    1542
    ],
-   "commit": "51016faaa88956bdd4decf2fa94dd5198777a47c",
-   "sha256": "13xx6ihhr2175w5d0m5zbyg3fmk1s46wj399f4lrc4skwjxbrlgg"
+   "commit": "2f8f3ce4974a5290a99077fcc9b36f1c42309b55",
+   "sha256": "145wpnbv3g2l7i6nckcs7bcrv8fj28gzpz3n0dl8vqlw0qb7hmgr"
   },
   "stable": {
    "version": [
@@ -10765,14 +10996,14 @@
   "repo": "clojure-emacs/clojure-mode",
   "unstable": {
    "version": [
-    20190712,
-    639
+    20200320,
+    823
    ],
    "deps": [
     "clojure-mode"
    ],
-   "commit": "51016faaa88956bdd4decf2fa94dd5198777a47c",
-   "sha256": "13xx6ihhr2175w5d0m5zbyg3fmk1s46wj399f4lrc4skwjxbrlgg"
+   "commit": "2f8f3ce4974a5290a99077fcc9b36f1c42309b55",
+   "sha256": "145wpnbv3g2l7i6nckcs7bcrv8fj28gzpz3n0dl8vqlw0qb7hmgr"
   },
   "stable": {
    "version": [
@@ -11074,19 +11305,17 @@
     20190710,
     1319
    ],
-   "commit": "a6d95f57cc8934813ba273e1016d03bb190c44c0",
-   "sha256": "0m2bg4s4ldm5jmjnhgb82l3dm45pjkrsppkdh31x9clh6gvscvw5"
+   "commit": "887eb6b7680685ae9bc8697f30bf6406df2d318e",
+   "sha256": "1lcfn79fn3cn0sdhw5f50l8830w6lh0j7lhrz7la27sg4ag5rmg0"
   },
   "stable": {
    "version": [
     3,
     17,
-    0,
-    -1,
-    3
+    0
    ],
-   "commit": "1ec72e09471287630cf142d8587a9b8d9abad629",
-   "sha256": "1r0cqv2vfyswzhbh1ydq6g0vkhkhyz3mwhm0irlc22sfxj2dy56y"
+   "commit": "e3185e3d1b92a95c18f22f70b3cef6944dd019eb",
+   "sha256": "1r8nnaisx10d5r3kzyfz4af9mwb5f0nzz8nmn3xvnr12rryg2bwl"
   }
  },
  {
@@ -11154,11 +11383,11 @@
   "repo": "tumashu/cnfonts",
   "unstable": {
    "version": [
-    20200226,
-    206
+    20200327,
+    101
    ],
-   "commit": "1baddba41af7edd6d4eb3c24ac85ba4a1b30aa3f",
-   "sha256": "0hspqc5xhi0mmrwyakqbq7dikn56q05c5xsnpgkx2mjjx7z05jh1"
+   "commit": "d741332ad4bcd9a136d5dc4974a050da8ca28888",
+   "sha256": "1f2nrklzvm0b09d1s5rxvzahc32rs5qdqx910a45fj95hlw2w2wc"
   },
   "stable": {
    "version": [
@@ -11312,10 +11541,10 @@
  },
  {
   "ename": "codic",
-  "commit": "acc9b816796b9f142c53f90593952b43c962d2d8",
-  "sha256": "0fq2qfqhkd6injgl66vcpd61j67shl9xj260aj6cgb2nriq0jxgn",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "05pa2a74c4ra7qqv3da3bx623vf36qrk5dm1jx1a4x1vbpgv5mz0",
   "fetcher": "github",
-  "repo": "syohex/emacs-codic",
+  "repo": "emacsorphanage/codic",
   "unstable": {
    "version": [
     20150926,
@@ -11410,14 +11639,14 @@
   "repo": "patbl/colemak-evil",
   "unstable": {
    "version": [
-    20171015,
-    2307
+    20200326,
+    2359
    ],
    "deps": [
     "evil"
    ],
-   "commit": "192c779281ae1fbf2405dcdb55b3c5b2a1d0b3d1",
-   "sha256": "1clnvr7n6mx5b8pq1c6zchq7n1g8ip8hwgzc61ywrmiyv0v8rnc6"
+   "commit": "981bdcb1a48c6d9139493abe7e25fabe126e43c3",
+   "sha256": "0dqyqaqr71z4mipb4g5jxdw96lzb108fd5w4wi27023hfll3j1hc"
   }
  },
  {
@@ -11627,11 +11856,11 @@
   "url": "https://git.sr.ht/~lthms/colorless-themes.el",
   "unstable": {
    "version": [
-    20200221,
-    1655
+    20200325,
+    1307
    ],
-   "commit": "a7b7c0a32b174988f40378996cd8997f73524f19",
-   "sha256": "0khsf4xz0wjn774hy08pxafm79j55ns28q25pfzyj9s07hi4r0vz"
+   "commit": "2b4c341640c8191a39e4bc28d6cd04c7d6dcbb37",
+   "sha256": "0ni9cnrv464fk840i1ll241kzkiy1zc6nfrbdv3ciixxdxbshxbn"
   },
   "stable": {
    "version": [
@@ -12017,11 +12246,11 @@
   "repo": "company-mode/company-mode",
   "unstable": {
    "version": [
-    20200228,
-    1919
+    20200324,
+    2145
    ],
-   "commit": "94e22c45e92cf220abb9b5a582f85aa99c06004d",
-   "sha256": "0l3hxj2cf9fw7ma3ac95cigw733h2k0dv987hanfhlx2jckjyma1"
+   "commit": "61ddd9afb58879267bf947b152a68f3dbadb9259",
+   "sha256": "097xy8ar6dms4zn7ymxxgmhap096fs8nc5j3js5srzmv14rswm36"
   },
   "stable": {
    "version": [
@@ -12786,22 +13015,22 @@
  },
  {
   "ename": "company-jedi",
-  "commit": "bded1840a39fbf1e014c01276eb2f9c5a4fc218f",
-  "sha256": "1krrgrjq967c3j02y0i345yx6w4crisnj1k3bhih6j849fvy3fvj",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0a1p00jcvslm7h08kzdf6by9v4lf850jb2ki8gl8hgdcf5yvkdyi",
   "fetcher": "github",
-  "repo": "syohex/emacs-company-jedi",
+  "repo": "emacsorphanage/company-jedi",
   "unstable": {
    "version": [
-    20151217,
-    321
+    20200324,
+    25
    ],
    "deps": [
     "cl-lib",
     "company",
     "jedi-core"
    ],
-   "commit": "2f54e791e10f5dc0ff164bfe97f1878359fab6f6",
-   "sha256": "0bpqswcc6a65wms0pdk9rsad9jiigmx2l1jaqr8bz4va945qdlhg"
+   "commit": "5232fbc1fdbfc81b1dd883afb720338c3e39556b",
+   "sha256": "155dba3qim7r8xhrv6dkhzhcc2km9761g5d3qmgd37jnk0mmd8l0"
   },
   "stable": {
    "version": [
@@ -12836,8 +13065,8 @@
     "lean-mode",
     "s"
    ],
-   "commit": "c9dffcda2951c22c483d1d22411d13bc132ce609",
-   "sha256": "1lj6j21hzya41fmlnw7faqmhvsdcgcidwibyvicgsb0gm6qqipjf"
+   "commit": "65b55b1711fb61129312044d5ac7e6a2c2ee245c",
+   "sha256": "1zmw8950qhry2ixk2ng0pg4j0vwx11nvjlrpab9jg6x47ys9j65n"
   }
  },
  {
@@ -12949,6 +13178,25 @@
   }
  },
  {
+  "ename": "company-native-complete",
+  "commit": "b112834a7ab05829fbc9101151bf82440bf6e551",
+  "sha256": "18f62r8y9k5flkqhzz6sr2w3srdhb6cpzrcyl98pv0zy3dq49lp4",
+  "fetcher": "github",
+  "repo": "CeleritasCelery/emacs-native-shell-complete",
+  "unstable": {
+   "version": [
+    20200315,
+    2144
+   ],
+   "deps": [
+    "company",
+    "native-complete"
+   ],
+   "commit": "11803df3706fb23d58e418a14ce981204a64e847",
+   "sha256": "0maljdxigd4fvrm7pv3ssyywl3c1zhfpqdymq933iig7d2hrwxm1"
+  }
+ },
+ {
   "ename": "company-nginx",
   "commit": "fb8843cddfa9133ea9e2790e8a1d8051cd4dabea",
   "sha256": "15pxz0v3zpshwri0v15yh995k7ih9h46y81n4xywlyyh34wys3sj",
@@ -13030,6 +13278,38 @@
   }
  },
  {
+  "ename": "company-org-roam",
+  "commit": "546d4c869c4d2a0981a572b5653f5e9ab8bcec47",
+  "sha256": "0kxf4fhs8ikw06ljdkk4ky1fb83xpmknasp7kyd3lpdk63cfvijh",
+  "fetcher": "github",
+  "repo": "jethrokuan/company-org-roam",
+  "unstable": {
+   "version": [
+    20200329,
+    609
+   ],
+   "deps": [
+    "company",
+    "dash",
+    "org-roam"
+   ],
+   "commit": "0d14bf56f53b1fcf14418d3e545785f4857b5f06",
+   "sha256": "0kjf3pqlb95m1z057sjkqmsi1qhh3d4snp29gk3fzz278bc7sl45"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "deps": [
+    "company",
+    "org-roam"
+   ],
+   "commit": "a4c3f60883de783b190d4eb8bcc85f5912d9393a",
+   "sha256": "087z699i7y0q72s5qc7ks09bzin9cl3gm3aqs4ka99lzg676lrl8"
+  }
+ },
+ {
   "ename": "company-php",
   "commit": "ac283f1b65c3ba6278e9d3236e5a19734e42b123",
   "sha256": "1gnhklfkg17vxfx7fw65lr4nr07jx71y84mhs9zszwcr9p840hh5",
@@ -13078,8 +13358,8 @@
     "company",
     "phpactor"
    ],
-   "commit": "5ccf65d59e6bbc9cd958dd5988e8fd2143b0d57f",
-   "sha256": "0k4dzn4a5y4kq7yz3ifvzziv90rp5si380c5ypgxr5iwb1b8a0l3"
+   "commit": "31fe2ea4dbd5c2f23efd6a4ec2ec881a4ced6b05",
+   "sha256": "0j52n0vs85q7zz5xfqw4rgrjjpr7mzfiqbzk7vwkcdmpnax608w5"
   },
   "stable": {
    "version": [
@@ -13143,15 +13423,15 @@
   "repo": "tumashu/company-posframe",
   "unstable": {
    "version": [
-    20200315,
-    815
+    20200327,
+    148
    ],
    "deps": [
     "company",
     "posframe"
    ],
-   "commit": "37a1f136f61bed4050dbeb182767c7e51cb73e1b",
-   "sha256": "09vryzs42lvwsv9sid5fqnyy8cvmpnf89kb30jjqy71ia8ijqx7l"
+   "commit": "18b83d29dae75239e22ca73d91eb09ceca5e77c4",
+   "sha256": "0gb3y80qhk1xgdx0iglcj78wvnbxnaiyvfgg0bmfvhswjii80160"
   },
   "stable": {
    "version": [
@@ -13182,8 +13462,8 @@
     "company",
     "prescient"
    ],
-   "commit": "7fd8c3b8028da4733434940c4aac1209281bef58",
-   "sha256": "1igsjdkxax2lavglc03h0dk3d7fpgqvlymnhyxx738sjyfzl09cr"
+   "commit": "a194852e8022762843052e58a9d0fbdaa1df0fe5",
+   "sha256": "0da4s32fza42vdiqhh7cdim08by5i4909q93ivxkmgrmqfgdvz0p"
   },
   "stable": {
    "version": [
@@ -13579,8 +13859,8 @@
   "repo": "TommyX12/company-tabnine",
   "unstable": {
    "version": [
-    20200102,
-    2025
+    20200327,
+    2137
    ],
    "deps": [
     "cl-lib",
@@ -13589,8 +13869,8 @@
     "s",
     "unicode-escape"
    ],
-   "commit": "a207f493eaf1cc766eb25ae84d0eca4c9d3e433b",
-   "sha256": "1qk0l4zcsd9jjivbaw7zbhx2dsdnb30slqc66qd3w69aq4r1xyv7"
+   "commit": "e986a4ad0d0e0174b08f1fb94c4f804a98a344e4",
+   "sha256": "1g5qv1fg22x1nkj696n12ixa2akgzivdc5q7yzy502kqjg67mkx5"
   }
  },
  {
@@ -14397,14 +14677,14 @@
   "repo": "abo-abo/swiper",
   "unstable": {
    "version": [
-    20200314,
-    2005
+    20200319,
+    1329
    ],
    "deps": [
     "swiper"
    ],
-   "commit": "8fae568daafdc79d4990ad739bac42ee230d3234",
-   "sha256": "18ppxzafz9f8dn7wwdb9vab3c91n20csvn9kjr3djkjgngz6qjd1"
+   "commit": "64f05f4735bba8b708bc12cfc2cbfb7fb7706787",
+   "sha256": "16b75jw0by1f8divymfygjbp5mikc2bjz4nqd907mdsndf8k6i8q"
   },
   "stable": {
    "version": [
@@ -14544,14 +14824,14 @@
   "repo": "redguardtoo/counsel-etags",
   "unstable": {
    "version": [
-    20200224,
-    410
+    20200320,
+    19
    ],
    "deps": [
     "counsel"
    ],
-   "commit": "172c1f1d806f36d10bdeb6284e1adbce6c52091f",
-   "sha256": "0kbkf5244ajxri4x8aaxsc11jq90lsmpw3jyb5z8yfk1wisdx274"
+   "commit": "0abd7a1b6abaf59a01774ca05f51cc0c6ce7f287",
+   "sha256": "0kfj3b8gx95pa7yaps25javmag2bnlz5zn802wf0x81np4d3hgjs"
   },
   "stable": {
    "version": [
@@ -14779,14 +15059,14 @@
   "repo": "Lautaro-Garcia/counsel-spotify",
   "unstable": {
    "version": [
-    20200315,
+    20200326,
     156
    ],
    "deps": [
     "ivy"
    ],
-   "commit": "51315644440c648b5aada68d5461a5c0b3b58797",
-   "sha256": "1xnzwbn4bf6id8mr804y367rms7g00dlw100kapmwiqmyzshgvb8"
+   "commit": "5d23a898483de19cb60773492c9846facb8ae281",
+   "sha256": "0k9m8xi9p5w2qnpz0zmdf52ip6viws06qq5rssgvb0cr888iqib2"
   }
  },
  {
@@ -14853,8 +15133,8 @@
     "counsel",
     "request"
    ],
-   "commit": "3fadfa55f8e78b4a26f75fed6e972a83688bea7d",
-   "sha256": "0sficf1q881k3vr7yvdcc5gxnac27dp1na9b458fx2mam0892sz7"
+   "commit": "35c648b4cdd9f266ab54512a0fec2a3ca55d5bc6",
+   "sha256": "128vl9a5w8v2xzfi5xn9cqshxmcfq2pcmnkkqcxfmi401m2lm0bx"
   }
  },
  {
@@ -15021,6 +15301,18 @@
    ],
    "commit": "08208ca7b9dc4ac940ce9ca1f79424d2f3d3d391",
    "sha256": "0yspf51h5b7wbqvi9lbd22chyw799n5d05xdzl5axg0i33lzk7bq"
+  },
+  "stable": {
+   "version": [
+    0,
+    2,
+    0
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "08208ca7b9dc4ac940ce9ca1f79424d2f3d3d391",
+   "sha256": "0yspf51h5b7wbqvi9lbd22chyw799n5d05xdzl5axg0i33lzk7bq"
   }
  },
  {
@@ -15439,8 +15731,8 @@
   "repo": "hlolli/csound-mode",
   "unstable": {
    "version": [
-    20200301,
-    31
+    20200326,
+    2154
    ],
    "deps": [
     "dash",
@@ -15448,8 +15740,8 @@
     "multi",
     "shut-up"
    ],
-   "commit": "f8a1af8cfdf9093911a159f73d39ba4f1f671e6c",
-   "sha256": "1gni984j1jlv2is0ah4730xalhv96wimm1iziavbsrsm4hcqqcgh"
+   "commit": "f278a0e13ecd6b00cd7b056a2e36021322bed8ea",
+   "sha256": "1axib3rgy7kdyprpp8cs94rc9yr34faii4n9f70jjkk6x7pr398m"
   },
   "stable": {
    "version": [
@@ -15779,6 +16071,21 @@
   }
  },
  {
+  "ename": "curl-to-elisp",
+  "commit": "11453864d71c7853bc743341db7ca071126ca160",
+  "sha256": "16qyw6yx5vlm32ikmgxhf162jjl1nq7lmrcn6g43fkk93id0374n",
+  "fetcher": "github",
+  "repo": "xuchunyang/curl-to-elisp",
+  "unstable": {
+   "version": [
+    20200321,
+    953
+   ],
+   "commit": "79da15f739984e3ce3e0b137df3634582abb4546",
+   "sha256": "04qjap6wsjd8kdz47bz1a11h1bdn7bmlvfg6y0bqy5yq55f4ampa"
+  }
+ },
+ {
   "ename": "cursor-test",
   "commit": "6439f7561cfab4f6f3beb132d2a65e94b3deba9e",
   "sha256": "1c1d5xq4alamlwyqxjx557aykz5dw87acp0lyglsrzzkdynbwlb1",
@@ -15959,17 +16266,17 @@
     20190111,
     2150
    ],
-   "commit": "bd990e4a3a3f821b395b58e6d68b0bbd8f406241",
-   "sha256": "0bn1c1iw6598zpfhmrj35hyqj8ylj84gwsn59kk62bf8hqvrwabf"
+   "commit": "6a30fecff5decdf20029763afea6183de3177dc3",
+   "sha256": "1qdxr4wdl7mmbahsdhybq4qmc6ahf2h342gf6y99y6jkj8akvjy3"
   },
   "stable": {
    "version": [
     0,
     29,
-    15
+    16
    ],
-   "commit": "26cb654dcf4ed1b1858daf16b39fd13406b1ac64",
-   "sha256": "1b76f47yhalg4pipiarmax3869bwbv43a4qs8h1qrnibyzpwfy2z"
+   "commit": "c8425604fc3e4ea846016689942fa98e886b5f4f",
+   "sha256": "1794w6d9ams691ah8sah93vzb97wpss0j36z0fcn3sfvnf8kvpby"
   }
  },
  {
@@ -16167,8 +16474,8 @@
   "repo": "emacs-lsp/dap-mode",
   "unstable": {
    "version": [
-    20200223,
-    1146
+    20200325,
+    546
    ],
    "deps": [
     "bui",
@@ -16179,8 +16486,8 @@
     "lsp-treemacs",
     "s"
    ],
-   "commit": "e7a5144ce746942b00a21d35a1ca8be71195f5d4",
-   "sha256": "1ryn49v89d204f7dhdc6igw03vzz5gzqrpqmsdrcxcj5yci2wxyk"
+   "commit": "e2086fc9fbde4413f779b314bd5a93f808a3fb78",
+   "sha256": "1ig4s5aimd7zfyaa4fgb584lpzmi38kbfqc4jncifh0i69mi6x9k"
   },
   "stable": {
    "version": [
@@ -16578,6 +16885,40 @@
   }
  },
  {
+  "ename": "dashboard-ls",
+  "commit": "656977197e0030525c52b14de8f6e1faa042daeb",
+  "sha256": "10dsdzps7kh3v5p5grdjwf2xjr7rvaiqp57fg9vh4pficvhylqaa",
+  "fetcher": "github",
+  "repo": "jcs-elpa/dashboard-ls",
+  "unstable": {
+   "version": [
+    20200329,
+    1443
+   ],
+   "deps": [
+    "dashboard",
+    "f",
+    "s"
+   ],
+   "commit": "9026fd157f94b023a7b660a418b66ad638b14272",
+   "sha256": "1r78w47897qd9ki24mqxl3kgr2anzybfqv5x91y4xsvrk0siir64"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    2
+   ],
+   "deps": [
+    "dashboard",
+    "f",
+    "s"
+   ],
+   "commit": "9026fd157f94b023a7b660a418b66ad638b14272",
+   "sha256": "1r78w47897qd9ki24mqxl3kgr2anzybfqv5x91y4xsvrk0siir64"
+  }
+ },
+ {
   "ename": "dashboard-project-status",
   "commit": "dfc05873c6532c866d89c4cc07eb84b447a25c70",
   "sha256": "1r25xmscz3lrjm6jjix416py26za5l1ck3xa77qbyrr4rf1gsakg",
@@ -16811,15 +17152,15 @@
   "repo": "skk-dev/ddskk",
   "unstable": {
    "version": [
-    20200314,
-    2116
+    20200325,
+    1337
    ],
    "deps": [
     "ccc",
     "cdb"
    ],
-   "commit": "2dcd552b314bc64daa40fd7ac09937439e447548",
-   "sha256": "1scixb6s795hjmkpkljccxg8ja2lqkja905gg5lmp09vykf8x5ir"
+   "commit": "37593d191b255d8633231099c70b1b26b3da0d39",
+   "sha256": "02pn3pxawl6268sy981iqialzyj9zy9dz6ci9jrkvbc8gp9gcvwh"
   }
  },
  {
@@ -17610,14 +17951,14 @@
   "repo": "dgutov/diff-hl",
   "unstable": {
    "version": [
-    20191223,
-    26
+    20200329,
+    1724
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "fb9eb1cd3c4c6ed24b93de1a7cfb369d2983be74",
-   "sha256": "0ksp86izjw7vgh21jn4rwl5vnfn1jvgs05lv216mnwia8p14ihjz"
+   "commit": "7fce94f7d5eebea06aed153b0f574567182c8d2b",
+   "sha256": "11m9ab7ymvbsxgddwxwcr8mrll3m67lnib8bpmb9vmh16zb2mzcl"
   },
   "stable": {
    "version": [
@@ -17712,19 +18053,20 @@
   "repo": "retroj/digistar-mode",
   "unstable": {
    "version": [
-    20160218,
-    1955
+    20200322,
+    2109
    ],
-   "commit": "15288b1e1a04b79b5ab7097fdd26d48b2ff41076",
-   "sha256": "0qxdfv1p0140fqcxh677hhxwpx1fihvwhvh76pysn4q4pcfr6ldr"
+   "commit": "567fff3933f80f00f53610e7b08f75bb636b12c0",
+   "sha256": "0252lhkv2r8gy4512frhdh381xrf64nspvfm2hp7bkhz47dlrs7y"
   },
   "stable": {
    "version": [
     0,
-    4
+    6,
+    1
    ],
-   "commit": "0dcde58ec6e473042e55d4f283b223554546de5b",
-   "sha256": "0jzwaivsqh66py9hd3dg1ys5rc3p6pn8ndpwpvgyivk4pg6zhhj6"
+   "commit": "8b350b7a143219b3f927cb3a1aeb16a299363f05",
+   "sha256": "1sxfzirl8kgzmq8l9l868yl92mz1r8yk58fnxf7p6z4y0pdlcqfg"
   }
  },
  {
@@ -17840,8 +18182,8 @@
     20191127,
     1326
    ],
-   "commit": "96b47cf90360e4bd19138fe82dc59bfa86c7bf7d",
-   "sha256": "1ar2bl1w4s3gx8slryf5qzq4qzprdyhm1fngvlnfhxg83k2g3969"
+   "commit": "6ec6ebc391371418efc6c98d70b013f34af5a2ee",
+   "sha256": "0q8pihj9fwq9w978ycmvzv8kq8ksrdf8zfadjy8i2iwc4ib0jg7y"
   },
   "stable": {
    "version": [
@@ -17884,11 +18226,11 @@
   "repo": "gonewest818/dimmer.el",
   "unstable": {
    "version": [
-    20200308,
-    2331
+    20200329,
+    35
    ],
-   "commit": "e13541621e6fa82510fd5cb6ff029c1a134d0bfc",
-   "sha256": "13l33z9ydsh7m2d91dh2m2hin051k9ydbnbww40mpmsimmc90pxi"
+   "commit": "5298af739ce30bacadda892b620858b95709c84b",
+   "sha256": "0dlgk66mcbzdbpw0xn6l7fxjayvgczccsx0igda9745pwm8yvy9z"
   },
   "stable": {
    "version": [
@@ -18256,17 +18598,17 @@
  },
  {
   "ename": "dired-k",
-  "commit": "7f8a828b2fbfa11c4b74192d9d0cfa0ad34b3da7",
-  "sha256": "0lghdmy9qcjykscfxvfrz8cpp87qc0vfd03vw8nfpvwcs2sd28i8",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1nimv6rzk0rrzvniirrsxzd78f4yil1aajcxyra2nmx7dr4xszqh",
   "fetcher": "github",
-  "repo": "syohex/emacs-dired-k",
+  "repo": "emacsorphanage/dired-k",
   "unstable": {
    "version": [
-    20200315,
-    1214
+    20200322,
+    2035
    ],
-   "commit": "256a73b170dfb16e4d7355ce5e9d9caacff2acd9",
-   "sha256": "1b464mr56azv5xmmfs9y5bzn1z3gicgz9g8ayvbbq1f293zxzd44"
+   "commit": "1f90cf6ac932ad30ccfefec27ea7e514c24ab335",
+   "sha256": "1bmpn18z42i8dy331yrks5gsivpvwj677yc58iw66ckjnyjnyjps"
   },
   "stable": {
    "version": [
@@ -18285,11 +18627,11 @@
   "repo": "thomp/dired-launch",
   "unstable": {
    "version": [
-    20180607,
-    1841
+    20200318,
+    1715
    ],
-   "commit": "ad45940f76ef2f6c3bb55e998829b311de191dae",
-   "sha256": "057nqlvqnq30gxfidmynp33040bgdq4gbwk0qdm294c5ap2af5yj"
+   "commit": "1f73233065ddb077adb7019ae33efd8acce9b561",
+   "sha256": "1sc0y7ffvyq5785gcmlgkkblz1nyyx4a5h1m1bi50zkqpna1pxbf"
   }
  },
  {
@@ -18655,14 +18997,14 @@
   "repo": "wbolster/emacs-direnv",
   "unstable": {
    "version": [
-    20200229,
-    1525
+    20200319,
+    2357
    ],
    "deps": [
     "dash"
    ],
-   "commit": "1f93e3f9cae5ec171939fe5c1fe9744a28fa6576",
-   "sha256": "0xkqn4604k2imas6azy1www56br8ls4iv9a44pxcd8h94j1fp44d"
+   "commit": "1daf479b9b7600ce9681f2a980deae7fcb2f3d59",
+   "sha256": "08hwjd1xmq6hxab537zm11kwqhwnc1dfznfqzy66c4agl9z9a7vx"
   },
   "stable": {
    "version": [
@@ -19583,11 +19925,11 @@
   "repo": "progfolio/doct",
   "unstable": {
    "version": [
-    20200313,
-    1851
+    20200329,
+    1548
    ],
-   "commit": "2850e2401c214db0bf0fa7e4773ef4f44ac6df86",
-   "sha256": "1lcw2s6yzvqxhgwv75q8ibmdm4j0z68j10j19jiir56x5bw426g1"
+   "commit": "e788ec71dafdd57a5c0eb3633794abbe3355f0c9",
+   "sha256": "19zqhcjpb23h4nn9h22jn1gh7a53y5v8f52809scl3vif0ch9b2h"
   }
  },
  {
@@ -19702,16 +20044,16 @@
   "repo": "seagle0128/doom-modeline",
   "unstable": {
    "version": [
-    20200311,
-    1726
+    20200322,
+    636
    ],
    "deps": [
     "all-the-icons",
     "dash",
     "shrink-path"
    ],
-   "commit": "06a79f5c5035b12c3110a7ab43b48e50217a2ae7",
-   "sha256": "0pgng5nqc3cj7bb57l0abqc2sr1542lgv7271i602k56sg7ak431"
+   "commit": "0642f7107102e88fb8818da02e6612c6855537ff",
+   "sha256": "1wmsrvzbvixzps6zp1d2r5fn7gkfwvjz2ksjqd6a8sd4swdx9ggk"
   },
   "stable": {
    "version": [
@@ -19736,14 +20078,14 @@
   "repo": "hlissner/emacs-doom-themes",
   "unstable": {
    "version": [
-    20200313,
-    1948
+    20200327,
+    1325
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "b51ab8f35cbbdec137a1b84cd9b07df6735d3d0e",
-   "sha256": "1yj0c7lx1rg31245yrrjza82m64bwk2686ydijkrd6j4pn9ksmck"
+   "commit": "bbb3725af973485424f6ca716b648923defa176c",
+   "sha256": "0pybwshmcfj0ll2hjcdrqdqbf6crn10pjlkbiyf3k23w5ayaql49"
   },
   "stable": {
    "version": [
@@ -19972,20 +20314,20 @@
   "repo": "dracula/emacs",
   "unstable": {
    "version": [
-    20200304,
-    1730
+    20200324,
+    1726
    ],
-   "commit": "ed2f68d85b637636a4f7b782f19ee4f8e9f6fa44",
-   "sha256": "19qvkrknnhkr77hkyv9x1dg6m4difwz59sy2mqzw50wfb6vsy17n"
+   "commit": "e4672e22885772d2be0c75df03c4f805f1acf5fa",
+   "sha256": "0pb0q8grybzl3sh75km93n1cvk7wh5c2r2nbm8rkwzzhxrhrvffl"
   },
   "stable": {
    "version": [
     1,
-    5,
-    1
+    7,
+    0
    ],
-   "commit": "66e429f4d576346661ae3a111bafaa06febc1d94",
-   "sha256": "0lyy8vjzzcfcj4hm7scxl4cg4qm67rprzdj7dmyc3907yad4n023"
+   "commit": "7751d4d3115c5e873b73b670248c49ce8910997e",
+   "sha256": "15y2djc5jljlvls1x9kp50m1kp0dcksmyixafsyimj66xpq9ngh0"
   }
  },
  {
@@ -20184,8 +20526,8 @@
   "repo": "dtk01/dtk",
   "unstable": {
    "version": [
-    20200314,
-    247
+    20200315,
+    1931
    ],
    "deps": [
     "cl-lib",
@@ -20193,8 +20535,8 @@
     "s",
     "seq"
    ],
-   "commit": "230ef5ca2fb0de3d4977942e19ba0c1f65bd5dad",
-   "sha256": "1x2bnammsbz9d2mz8nspzaa4wqda4s4v8p93g2i4ykwd4c2w00fl"
+   "commit": "d21a5b7958da058bb53d36fe9234089409f62c5e",
+   "sha256": "0w46yr5d108z2pipvh449p15qnm6mnix21pbnq3alczilzxzf9lw"
   }
  },
  {
@@ -20356,8 +20698,8 @@
     20191016,
     1241
    ],
-   "commit": "d9c34d1dc421850544ab7f33a23322a7748c2db4",
-   "sha256": "1wjdm7vk4r580lnyxy9h92xq1f3wfklbqrnnv8s94fjfj623bx6b"
+   "commit": "d864995d98479a21fb88fcf6d24b8262f2fdeae2",
+   "sha256": "091c58yvvwly070dgzz1202njlp695fzq85873v4dak1rwxisrwh"
   },
   "stable": {
    "version": [
@@ -20722,16 +21064,16 @@
   "repo": "aki2o/e2wm-term",
   "unstable": {
    "version": [
-    20141009,
-    1308
+    20200322,
+    729
    ],
    "deps": [
     "e2wm",
     "log4e",
     "yaxception"
    ],
-   "commit": "65b5ac88043d5c4048920a048f3599904ca55981",
-   "sha256": "0qv3kh6q3q7vgfsd8x25x8agi3fp96dkpjnxdidkwk6k8h9n0jzw"
+   "commit": "74362d6271e736272df32ea807c5a22e4df54a50",
+   "sha256": "1cr2mp1visx4fnxc73sk6gw7wnl1mxfb624rm1sxz7wwry8b8fx9"
   },
   "stable": {
    "version": [
@@ -21025,14 +21367,14 @@
   "repo": "joostkremers/ebib",
   "unstable": {
    "version": [
-    20200308,
-    2130
+    20200327,
+    1040
    ],
    "deps": [
     "parsebib"
    ],
-   "commit": "cd37aaa9a11e3b2232b8aa12cfe9a8ae9b830b10",
-   "sha256": "0spiz5r2y4pdpyc4d3f9w228giq0j9rm8f5h5akzn5rwiq9pfkwz"
+   "commit": "f57e138d56bd293f30a64c33ab8b374758acfb08",
+   "sha256": "0h8bxy6p91hhx6mvzbxv2j3cr6bxcdbpgbaqa9ibcaxy72d9xrjp"
   },
   "stable": {
    "version": [
@@ -21432,6 +21774,24 @@
   }
  },
  {
+  "ename": "edit-chrome-textarea",
+  "commit": "d9e8d07ed13d190a8a7eab75a59ec5b9a01d97a8",
+  "sha256": "0xp7925y04gr09j204r01jq7hqjp32gqsazwsbih4fkx0n30aqbs",
+  "fetcher": "github",
+  "repo": "xuchunyang/edit-chrome-textarea.el",
+  "unstable": {
+   "version": [
+    20200324,
+    1513
+   ],
+   "deps": [
+    "websocket"
+   ],
+   "commit": "7074fe87c2df4aa7afecb7513326f5d481dcf92d",
+   "sha256": "17kbakpr6d79cih1fmvnrivs0vk41fw0njhb5y6dbml6ppi11i57"
+  }
+ },
+ {
   "ename": "edit-color-stamp",
   "commit": "2ad2ea105b895cb958ce0ab2bf2fad2b40d41b2f",
   "sha256": "1f8v8w3w7vb8jv29w06mplah8yfcs5qfjz2w4irv0rg7dwzy3zk8",
@@ -21887,8 +22247,8 @@
     20200107,
     2333
    ],
-   "commit": "39d416a6ef2c1f863a9482e7ada59d5da6fb7883",
-   "sha256": "0f66fnzkwl37qp8rj3hhnnayx27l06c18n7x3422pvbgxc78c7i8"
+   "commit": "6ea43326d142b714363042a27e06d3487f7845d7",
+   "sha256": "0pvaz69rjaz8m32s4chq7kavf20njb78l380xl97blj9h0yry1l4"
   },
   "stable": {
    "version": [
@@ -21908,15 +22268,15 @@
   "repo": "joaotavora/eglot",
   "unstable": {
    "version": [
-    20200113,
-    1722
+    20200320,
+    852
    ],
    "deps": [
     "flymake",
     "jsonrpc"
    ],
-   "commit": "606e234ea867d057f201fde9a4de2a896f35782e",
-   "sha256": "0fjgy377vb3znzlb49xjf5a6k4ihmql1lbiaw2fla7282r5z5ja6"
+   "commit": "2209779972eee595ff6ea8e75c002f7e5726b0c8",
+   "sha256": "08mfgg9s76wmjzvpdirnm8rsa3fsvlvjivxjdn53aj1pnky55z8d"
   },
   "stable": {
    "version": [
@@ -22033,8 +22393,8 @@
   "repo": "millejoh/emacs-ipython-notebook",
   "unstable": {
    "version": [
-    20200314,
-    443
+    20200328,
+    2131
    ],
    "deps": [
     "anaphora",
@@ -22044,8 +22404,8 @@
     "request",
     "websocket"
    ],
-   "commit": "a0943af912bdda3bbe5a5cb2b49cb529a20a5a6a",
-   "sha256": "15713bv8aqsfh8zf80qsys7sd81hs0bx691jwmrdfhvdi1nyp8qj"
+   "commit": "6fc75f20aa0b6666e743ce674c6da526f88793b1",
+   "sha256": "10cm3pvpjrqy76xd9067ayn108z34014cyaal4vj2l69yrkfr0m1"
   },
   "stable": {
    "version": [
@@ -22119,8 +22479,8 @@
   "repo": "kostafey/ejc-sql",
   "unstable": {
    "version": [
-    20200308,
-    1421
+    20200325,
+    1455
    ],
    "deps": [
     "auto-complete",
@@ -22129,8 +22489,8 @@
     "direx",
     "spinner"
    ],
-   "commit": "046bffbaac2a78e440d39a1f1e2dd8055a39f3bd",
-   "sha256": "0ccww05ivqgsvvrhjlwlciv00213qar4sdzawzmxh85vxj3a045b"
+   "commit": "5bf46fc49b7827604ee82d56b80eee36630b562d",
+   "sha256": "0dcnzq9l1mnfrn7rq8kvyfkbw36r6iagp61c0p757xwfawsaxns4"
   },
   "stable": {
    "version": [
@@ -22556,11 +22916,11 @@
   "repo": "Mstrodl/elcord",
   "unstable": {
    "version": [
-    20200224,
-    1509
+    20200322,
+    2027
    ],
-   "commit": "61cd3834f8650a13d34d845138e40c5aaab75cb7",
-   "sha256": "0l3hv190xkzyalfnxsb0x7npmwdgf9bpc0qdi7p7issbf0vrjp4n"
+   "commit": "94b0afb9bac32fa72354517347646166d6bec986",
+   "sha256": "11gj67d83hx9wfjf4j277jy8jxf97i6bd9r8r057v4i8301qh91p"
   }
  },
  {
@@ -22628,11 +22988,11 @@
   "repo": "casouri/eldoc-box",
   "unstable": {
    "version": [
-    20191102,
-    1433
+    20200316,
+    1956
    ],
-   "commit": "913786070769fac83e7b8ef790b57c8d8cbf8853",
-   "sha256": "0lgwixznvrmgzkridbsmhxqdsgchs5k56vb8nmpmchgf08qvaiz2"
+   "commit": "7fa3b78d073c235ad945fc28d692c5f5fb60860a",
+   "sha256": "06cy6dsn3drfk0jkc10b96qzvi5rfhkjy7cib5dk2kqgg615is6d"
   },
   "stable": {
    "version": [
@@ -22690,15 +23050,15 @@
   "repo": "stardiviner/eldoc-overlay",
   "unstable": {
    "version": [
-    20200216,
-    546
+    20200328,
+    619
    ],
    "deps": [
     "inline-docs",
     "quick-peek"
    ],
-   "commit": "3123b20f26d2f74033de6feb398fd36745c46e14",
-   "sha256": "16crwazyn28qyb9zax1jfz2favgw402z676yf67qchgzsf2jj43s"
+   "commit": "ec318acb564ac5679285b51b7d979410d393fac9",
+   "sha256": "0dx1b9d7zyqcwsnhl18hyrkmrc0zy68zwhp81d43fw84gjb4jcx8"
   }
  },
  {
@@ -22940,28 +23300,28 @@
   "repo": "sp1ff/elfeed-score",
   "unstable": {
    "version": [
-    20200222,
-    7
+    20200328,
+    1855
    ],
    "deps": [
     "cl-lib",
     "elfeed"
    ],
-   "commit": "f14c0526676dd90be62b6aa086462047f7ac2da0",
-   "sha256": "099ch2jlj0fxn3d2v6z9rymkqbkrm3xp0bz4zkqbm54qcvdwib79"
+   "commit": "916c47b3590b2ff3c5075dcc1def4b36a4b14947",
+   "sha256": "1vhchbyy3c79cgvdz12wnryklr5g1bwh02d604zj2wca3b0199w4"
   },
   "stable": {
    "version": [
     0,
-    3,
-    0
+    4,
+    4
    ],
    "deps": [
     "cl-lib",
     "elfeed"
    ],
-   "commit": "f14c0526676dd90be62b6aa086462047f7ac2da0",
-   "sha256": "099ch2jlj0fxn3d2v6z9rymkqbkrm3xp0bz4zkqbm54qcvdwib79"
+   "commit": "916c47b3590b2ff3c5075dcc1def4b36a4b14947",
+   "sha256": "1vhchbyy3c79cgvdz12wnryklr5g1bwh02d604zj2wca3b0199w4"
   }
  },
  {
@@ -23082,11 +23442,11 @@
   "repo": "xuchunyang/elisp-demos",
   "unstable": {
    "version": [
-    20200312,
-    2343
+    20200329,
+    2310
    ],
-   "commit": "0d74766f0c081f8db1292a61889e625bb9a8a758",
-   "sha256": "0j72w9bjgywiwrgw4hfjhgzmlzy68v4wfpsaa78f3vlnkjca82is"
+   "commit": "57dd4ae3e47ecca6cb9eee87328f159b3eb53702",
+   "sha256": "15cjv97240nnmjjbdx9iqz4qwxvbxxsyjllcjwbmkkbpv6x91b89"
   },
   "stable": {
    "version": [
@@ -23151,24 +23511,28 @@
   "repo": "gonewest818/elisp-lint",
   "unstable": {
    "version": [
-    20200217,
-    38
+    20200324,
+    2217
    ],
    "deps": [
     "dash",
     "package-lint"
    ],
-   "commit": "7a3866326631ba1ba8f4cd7a6cfd03c467c32aae",
-   "sha256": "1ldyv0c21dvl362kj566q8gd84gqq8g558slxyl73cf651q0nr84"
+   "commit": "35a3fcc3131c243206fa914b8562cda771eab8c5",
+   "sha256": "09ibaq3mjnw3vm1rwrljdcgybxly2fk9gjdim39s9fpgar4ys12p"
   },
   "stable": {
    "version": [
     0,
-    3,
+    4,
     0
    ],
-   "commit": "d4dc13addde8cacd7660efcb369af5e54a547114",
-   "sha256": "1zyy8dj11sn74wq86hibp17a1zbps2pv26ncn8fh8wvsfy1vdfif"
+   "deps": [
+    "dash",
+    "package-lint"
+   ],
+   "commit": "2b645266be8010a6a49c6d0ebf6a3ad5bd290ff4",
+   "sha256": "1gg9ik0x67cnldzsclp45i7gf190y9pxl11k3grdkrkqjiph1375"
   }
  },
  {
@@ -23673,8 +24037,8 @@
   "repo": "jorgenschaefer/elpy",
   "unstable": {
    "version": [
-    20200202,
-    2031
+    20200329,
+    1830
    ],
    "deps": [
     "company",
@@ -23683,13 +24047,13 @@
     "s",
     "yasnippet"
    ],
-   "commit": "b25ab8c195472cf152fed80c212750b33837025e",
-   "sha256": "1nidig1yxr1fbwkfhpgd5zyqkd4mi5bp5h9bg17azs79xqprkrfx"
+   "commit": "fc54812f5f53889842e7e707727e50d9589443ca",
+   "sha256": "1jdpg6vq88kxg1wfhp9hwnvfadxazmznzscfhvr967fbgq46w6qj"
   },
   "stable": {
    "version": [
     1,
-    32,
+    33,
     0
    ],
    "deps": [
@@ -23699,8 +24063,8 @@
     "s",
     "yasnippet"
    ],
-   "commit": "d54e78edad91660caaabd19e4a6e416889ccfe31",
-   "sha256": "0f00mdnzx6xqwni86rgvaa6sfkwyh62xfbwz8qsar15j0j6vc2dj"
+   "commit": "b69ae7652e5efdda2e3dc650cd425b987ddd65ad",
+   "sha256": "1g9x67dvg5al6i9hnjcyi0zjsz71iv2jbinpzj7gcx77d0dn3cpk"
   }
  },
  {
@@ -24199,10 +24563,10 @@
  },
  {
   "ename": "emamux",
-  "commit": "6de1ed3dfccb9f7e7b8586e8334af472a4988840",
-  "sha256": "1pg0gzi8rn0yafssrsiqdyj5dbfy984srq1r4dpp8p3bi3n0fkfz",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0y75dnaz65fwk8d9l6n1bkbj32rcmzaf58fhj686b1n55bsz3xz6",
   "fetcher": "github",
-  "repo": "syohex/emacs-emamux",
+  "repo": "emacsorphanage/emamux",
   "unstable": {
    "version": [
     20200315,
@@ -24222,10 +24586,10 @@
  },
  {
   "ename": "emamux-ruby-test",
-  "commit": "f11759710881bdf5a77bd309acb03a6699cc7fd6",
-  "sha256": "1l1hp2dggjlc287qkfyj21w9lri4agh91g5x707qqq8nicdlv3xm",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1lk2fpqnmzh1gsbp9pkh36lgr76sf2mbf12577xs4scia7xr29bc",
   "fetcher": "github",
-  "repo": "syohex/emamux-ruby-test",
+  "repo": "emacsorphanage/emamux-ruby-test",
   "unstable": {
    "version": [
     20130812,
@@ -24690,6 +25054,38 @@
   }
  },
  {
+  "ename": "emoji-github",
+  "commit": "64d18d6bb06d2d747b101845d3ed298787abaec0",
+  "sha256": "09b9kyx1zzi1i2m4isvnhb5526589vscv81xg35pgxwv6ilkky4z",
+  "fetcher": "github",
+  "repo": "jcs-elpa/emoji-github",
+  "unstable": {
+   "version": [
+    20200323,
+    233
+   ],
+   "deps": [
+    "emojify",
+    "request"
+   ],
+   "commit": "43f63c0dd64aae6c8054c2dad617bf810abdfadd",
+   "sha256": "0wcxsy3q8912kf87bn3mi2si010i5dd99yinf23nhb2nqvqgiw94"
+  },
+  "stable": {
+   "version": [
+    0,
+    2,
+    2
+   ],
+   "deps": [
+    "emojify",
+    "request"
+   ],
+   "commit": "5d1512fb30c65018a507ef549d92c668d8221da3",
+   "sha256": "00dj0kfllyhiklylj4cjcv64zjaxs6a4cc79f8pppmzvf1spivvz"
+  }
+ },
+ {
   "ename": "emoji-recall",
   "commit": "8f03b34d3e8e5edf9888c71b6e4bd2e1a5aec016",
   "sha256": "06cahk2h6q3vlw2p4jmjrpzycxpm884p31yhbp77lagkqhs2fzbk",
@@ -25082,8 +25478,8 @@
     "closql",
     "dash"
    ],
-   "commit": "edf8c009066360af61caedf67a2482eaa19481b0",
-   "sha256": "1ml5337wbw2zsf1vwv5svwvhd93jgl9sq79l1byiz32bnb0q5nhh"
+   "commit": "37f06fd2daca6a7afa163ceb0ccccd450af85e68",
+   "sha256": "18prjspaz4wlfrk2zzzzpxs4z8dkxxx68sbq2b4bdgg34fgnj02z"
   },
   "stable": {
    "version": [
@@ -25280,20 +25676,20 @@
   "repo": "leathekd/erc-hl-nicks",
   "unstable": {
    "version": [
-    20180415,
-    1946
+    20200317,
+    16
    ],
-   "commit": "756c4438a8245ccd3e389bf6c9850ee8453783ec",
-   "sha256": "0c82rxpl5v7bbxirf1ksg06xv5xcddh8nkrpj7i6nvfarwdfnk4f"
+   "commit": "a67fe361c8f2aa20fc235447fbb898f424b51439",
+   "sha256": "0k57scxa8rm859fqsm8srhps7rlq06jzazhjbwnadzrh8i5fyvra"
   },
   "stable": {
    "version": [
     1,
     3,
-    3
+    4
    ],
-   "commit": "756c4438a8245ccd3e389bf6c9850ee8453783ec",
-   "sha256": "0c82rxpl5v7bbxirf1ksg06xv5xcddh8nkrpj7i6nvfarwdfnk4f"
+   "commit": "a67fe361c8f2aa20fc235447fbb898f424b51439",
+   "sha256": "0k57scxa8rm859fqsm8srhps7rlq06jzazhjbwnadzrh8i5fyvra"
   }
  },
  {
@@ -25618,15 +26014,15 @@
   "repo": "ergoemacs/ergoemacs-mode",
   "unstable": {
    "version": [
-    20190527,
-    348
+    20200319,
+    1250
    ],
    "deps": [
     "cl-lib",
     "undo-tree"
    ],
-   "commit": "7d3656541a00cc04ba4cefa31c0d127adb5a260a",
-   "sha256": "1rw237xiw5nz736l5jdmlsa11l14qvzdac0wqymi80a0rfwqikga"
+   "commit": "4a6ba06d9c618e9380d059fa25ed677b45d134a7",
+   "sha256": "0wgdzxla6kz1zfc3vfd8wc2j40kq023z7b83m2k435hcqdffark8"
   },
   "stable": {
    "version": [
@@ -25673,18 +26069,18 @@
     20200313,
     1030
    ],
-   "commit": "bd554119dd80e0e0f71e2e948e69eaff5ff6a88f",
-   "sha256": "00qp7jp4zmdklilj8vjmrd1s4wy6kzcmcdv3klb89whiymc7jxiq"
+   "commit": "f805a35f696d965b297de3988a2340f86bfe88ba",
+   "sha256": "102yzbgmqyy5m74zhr8kaai17dyhg8k6w0ykxyvmb0q7ghwaq01s"
   },
   "stable": {
    "version": [
     23,
     0,
     -1,
-    1
+    2
    ],
-   "commit": "2b823b90b7dbd56aae3a3fbdcb182f9fd5127a59",
-   "sha256": "00dsbnii0w56jmbzzn43j18rprmc4d2ckd8ad0kzc6cb856mxs9s"
+   "commit": "a24425668beed38e04039c292361e09c4826683f",
+   "sha256": "1i91p2hsajcwjqv10ri6jj2a94g68mb6fmxqx47g50fbc5f0dqj5"
   }
  },
  {
@@ -25826,8 +26222,8 @@
   "repo": "rejeep/ert-runner.el",
   "unstable": {
    "version": [
-    20180831,
-    1145
+    20200321,
+    2158
    ],
    "deps": [
     "ansi",
@@ -25837,13 +26233,13 @@
     "s",
     "shut-up"
    ],
-   "commit": "90b8fdd5970ef76a4649be60003b37f82cdc1a65",
-   "sha256": "04nxmyzncacj2wmzd84vv9wkkr2dk9lcb10dvygqmg3p1gadnwzz"
+   "commit": "1829f05c46b0baaae160d900f89c8881f4fcdbcc",
+   "sha256": "08gygn9fjank5gpi4v6ynrkn0jbknxbwsn7md4p9ndygdbmnkf98"
   },
   "stable": {
    "version": [
     0,
-    7,
+    8,
     0
    ],
    "deps": [
@@ -25854,8 +26250,8 @@
     "s",
     "shut-up"
    ],
-   "commit": "00056c37817f15b1870ccedd13cedf102e3194dd",
-   "sha256": "0rdgdslspzb4s0n4a68hnwfm8vm8baasa8nzrdinf0nryn7rrhbf"
+   "commit": "1829f05c46b0baaae160d900f89c8881f4fcdbcc",
+   "sha256": "08gygn9fjank5gpi4v6ynrkn0jbknxbwsn7md4p9ndygdbmnkf98"
   }
  },
  {
@@ -26206,11 +26602,11 @@
   "repo": "zwild/eshell-prompt-extras",
   "unstable": {
    "version": [
-    20200310,
-    809
+    20200319,
+    322
    ],
-   "commit": "6a30813893e04ab8c0793757cdb2ff9873ab0c56",
-   "sha256": "0vk30sq0p3afpaw9phmfpglvhs01f97rhm3ygzwiv8h4smy9zgsj"
+   "commit": "1801b3aeccf1363f138fe01ee99d892d10fc2a07",
+   "sha256": "1dgfd9yf4ikn5whqpxyliyp21vs1h852wjfqy5lmxzhnzic1xsi1"
   },
   "stable": {
    "version": [
@@ -26422,11 +26818,11 @@
   "repo": "walseb/espy",
   "unstable": {
    "version": [
-    20180929,
-    1602
+    20200317,
+    2333
    ],
-   "commit": "b64a99185c96c20d4d4caa3daf1f5510b039bd6a",
-   "sha256": "1i8wc55rihah39i95w0rryp5scq8v3zyk4cayw5pz8g5bbl8w4zb"
+   "commit": "2c01be937a5e5bde62921684a0b27300705fb4e0",
+   "sha256": "1nnnr184y29g1svxqxlqyg5irzrf1xmay4p78jfv8v07sisl90kp"
   }
  },
  {
@@ -26474,14 +26870,14 @@
   "repo": "emacs-ess/ESS",
   "unstable": {
    "version": [
-    20200314,
-    1134
+    20200328,
+    1547
    ],
    "deps": [
     "julia-mode"
    ],
-   "commit": "a2fb8ff841b08c70b1c401724b92afc0c2b496c4",
-   "sha256": "14arrqjji44kw2mizz6rnsnjzbjiv4fca5632f8lwplgsr63j8nk"
+   "commit": "1c2387fdba509c1c9d072150f65ccc318a570870",
+   "sha256": "0llsjqrvabcvpd2nhixiklwmm2lisywif77iwfrsdc6lfxp8cdd0"
   },
   "stable": {
    "version": [
@@ -26616,14 +27012,14 @@
   "repo": "jschaf/esup",
   "unstable": {
    "version": [
-    20200130,
-    2034
+    20200318,
+    2256
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "4e5bf7d265c3b1484017fc0fd0ad50d2403c2bbe",
-   "sha256": "1jdsy5bqnmbai7kylidyfd0nla26apqvfl2f6vdvjs02hlr1w2s7"
+   "commit": "c9c95e245068d15d8e2732098af9a5d2bc8ec931",
+   "sha256": "0i4cwwvs5zs8g2ajrrkqgrpxzywsa255rc1g7a6bxzvg9hk77f4k"
   },
   "stable": {
    "version": [
@@ -26649,8 +27045,8 @@
     20171129,
     807
    ],
-   "commit": "5548ceba17deae0c3c6d0092672edc4de3c75ce3",
-   "sha256": "00vv8a75wdklygdyr4km9mc2ismxak69c45jmcny41xl44rp9x8m"
+   "commit": "193d199305e7abcb5ed795b9bc5434ded20ae60e",
+   "sha256": "1cbzdwfndz6pdmb3vzb6l2smxb2l47sncmkccya0nzlvvhz3p8c0"
   },
   "stable": {
    "version": [
@@ -26958,10 +27354,10 @@
  },
  {
   "ename": "evil-anzu",
-  "commit": "06b0609b56016d938b28d56d9eeb6305116b38af",
-  "sha256": "19cmc61l370mm4h2m6jw5pdcsvj4wcv9zpa8z7k1fjg57mwmmn70",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "08cc33wjq5853c0hqwn30342ylkfldy7xg7yd2ak0apjxnz4qr40",
   "fetcher": "github",
-  "repo": "syohex/emacs-evil-anzu",
+  "repo": "emacsorphanage/evil-anzu",
   "unstable": {
    "version": [
     20170124,
@@ -27133,16 +27529,16 @@
   "repo": "emacs-evil/evil-collection",
   "unstable": {
    "version": [
-    20200219,
-    1042
+    20200327,
+    722
    ],
    "deps": [
     "annalist",
     "cl-lib",
     "evil"
    ],
-   "commit": "a478a95a8a3665e40bdae3bab2a0519db6c1f29c",
-   "sha256": "15ii5lw6hs4yyl22yyzfwzagdma2sman4rm5gq4m9773g4ava515"
+   "commit": "2df9bedfa48bdc22e46bf4d43f6e2792d4cafbea",
+   "sha256": "17737k612gl5bhkkq8fdivk9rxbcypfl9hnm3mbp5v2wpr8chw3a"
   },
   "stable": {
    "version": [
@@ -27864,11 +28260,11 @@
   "repo": "redguardtoo/evil-nerd-commenter",
   "unstable": {
    "version": [
-    20200222,
-    901
+    20200324,
+    2310
    ],
-   "commit": "fa40dab8d2f010db17e1e62dfd245c1504d0542f",
-   "sha256": "0dn712k54qsxy82jqbqip77k5i3zv8m7afj2yi39zqx28iqvic0z"
+   "commit": "4387407615258d5e95f71bfb425cbe92dd813290",
+   "sha256": "0v31gbn423g20lqksvbc72z325lh0qjmgz8nhy8ygqli4b2msvzb"
   },
   "stable": {
    "version": [
@@ -28185,26 +28581,26 @@
   "repo": "porras/evil-ruby-text-objects",
   "unstable": {
    "version": [
-    20190821,
-    1527
+    20200323,
+    1552
    ],
    "deps": [
     "evil"
    ],
-   "commit": "0ddc4c256a0c778fa65d75b707f20df874e5b5fa",
-   "sha256": "1ppwcyfy5dssswfzd16i1rx14si5r80mdvrnfwaf9jr3c2ws23lg"
+   "commit": "32983d91be83ed903b6ef9655e00f69beed2572c",
+   "sha256": "0qha7xxqxh7c6n6r26r49y85inxcbr4nvxlv2zzj0qkifw7f9ana"
   },
   "stable": {
    "version": [
     0,
-    1,
+    2,
     0
    ],
    "deps": [
     "evil"
    ],
-   "commit": "93cfc5ae3da0ffb19319e301734c51ecb43506b5",
-   "sha256": "0jizvchrisrdc7bl6xfc59axyjz1dmr6hi36jyv1bdwyayj2ifqi"
+   "commit": "e69abb6aad7687222cb47a8a64dc4dd66ef96a9e",
+   "sha256": "0m1ilv4w4rlg8005cqp5l5dwdhqnrf1mb44qmvd8qwkl2rvslsbs"
   }
  },
  {
@@ -28584,10 +28980,10 @@
  },
  {
   "ename": "evil-textobj-line",
-  "commit": "24bf766525ffdaded519ac9f78ae89d8ab5108ef",
-  "sha256": "158w524qzj0f03ihid2fisxyf1g7vwpv3ckfkzi7c2l549jnsdsa",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1jwhg56nhf5iv7zbfdzi6ygikc49bnrqh1r5kd98n5wxz9vz2h75",
   "fetcher": "github",
-  "repo": "syohex/evil-textobj-line",
+  "repo": "emacsorphanage/evil-textobj-line",
   "unstable": {
    "version": [
     20150729,
@@ -29512,11 +29908,11 @@
   "repo": "thblt/eziam-theme-emacs",
   "unstable": {
    "version": [
-    20200124,
-    1045
+    20200327,
+    1810
    ],
-   "commit": "9ae0fdb2ad751044b3bd60aee08523d460db2bd6",
-   "sha256": "0gvf7g5s7wrchwbh0bnr0ryx9zaw56mx09bd4f32793lpv9sxyi6"
+   "commit": "7a585de01b6fee081eaa167b09d7e12d02cf4149",
+   "sha256": "11v8rbaiaihpky1m7azbflz77mwg76nbg8hsgybs86wyjk5797dv"
   },
   "stable": {
    "version": [
@@ -29824,6 +30220,29 @@
   }
  },
  {
+  "ename": "fantom-theme",
+  "commit": "e5cb6a9f6a657b72a00a39c118d90416ae2f343c",
+  "sha256": "18p82f82hr1sx8w9lmjxr3hvvy4ddxvyd245v32vjay5zc730y33",
+  "fetcher": "github",
+  "repo": "adsva/fantom-emacs-theme",
+  "unstable": {
+   "version": [
+    20200328,
+    604
+   ],
+   "commit": "2c1c7fd53086c2ff86ee0961642c3b58e2343c08",
+   "sha256": "1clvpjsf241fdkk3915zjqb4wivsjsvc9phf633pzbvi61qwhaap"
+  },
+  "stable": {
+   "version": [
+    1,
+    0
+   ],
+   "commit": "70cef2886ca90c93bcafc869bcc77bad1e390c33",
+   "sha256": "1q15wx53zq6b9f567anrfmfpj04f3r6wz28w4237f9lg62yqhm9x"
+  }
+ },
+ {
   "ename": "farmhouse-theme",
   "commit": "3b0d427db8ab66d2fe323366b0837595b3b59afa",
   "sha256": "0hbqdrw6x25b331qhbg3yaaa45c2b896wknsjm0a1kg142klq229",
@@ -30055,6 +30474,36 @@
   }
  },
  {
+  "ename": "feather",
+  "commit": "ffb7d037679110473a8c3f9e98f737ecaba37c40",
+  "sha256": "1k3sxwpibk5sdim4pzfi83pzsm4vnq0xl006dy76pv363r9mvs21",
+  "fetcher": "github",
+  "repo": "conao3/feather.el",
+  "unstable": {
+   "version": [
+    20200321,
+    1237
+   ],
+   "deps": [
+    "async",
+    "async-await",
+    "page-break-lines",
+    "ppp"
+   ],
+   "commit": "529b7ec69f1694d7dc8aacb5066cf4ddcf24cc58",
+   "sha256": "0flph6yv5fj5ladksjqfpj9j8p2jcc102kbc833bvx1cnmjx7qk4"
+  },
+  "stable": {
+   "version": [
+    0,
+    0,
+    1
+   ],
+   "commit": "4cb69055cfc42841bad1de072f69dd6923899766",
+   "sha256": "1fq5ysxwiaah56rizkc47vjqi8906af3ga1n1frvrvap8m9vdz4m"
+  }
+ },
+ {
   "ename": "feature-mode",
   "commit": "0a70991695f9ff305f12cfa45e0a597f4a782ba3",
   "sha256": "0ryinmpqb3c91qcna6gbijcmqv3skxdc947dlr5s1w623z9nxgqg",
@@ -30503,6 +30952,21 @@
   }
  },
  {
+  "ename": "fira-code-mode",
+  "commit": "0dc34b2d3cfd5e48df0fbe2086b8b4be1358dea4",
+  "sha256": "09i3xyk1xj7j895xmjwmxl1gaw73j9y22c5mgnavq0sm3fbpk4w0",
+  "fetcher": "github",
+  "repo": "jming422/fira-code-mode",
+  "unstable": {
+   "version": [
+    20200316,
+    1708
+   ],
+   "commit": "64c4e655ea6ef29c7e720a5bf9281e865f2e3fa7",
+   "sha256": "0c11lfwdibx35wwvpq3vl4img4rz2slslqhlqaqbab212ii9jsmy"
+  }
+ },
+ {
   "ename": "firecode-theme",
   "commit": "641d1959bd31598fcdacd39a3d1bb077dcccfa5c",
   "sha256": "10lxd93lkrvz8884dv4sh6fzzg355j7ab4p5dpvwry79rhs7f739",
@@ -30606,11 +31070,11 @@
   "repo": "IBM/firrtl-mode",
   "unstable": {
    "version": [
-    20190224,
-    344
+    20200329,
+    2002
    ],
-   "commit": "e55c555809037b7aaf2367ad2255f0a27addd23a",
-   "sha256": "1nsihyx9znblc4kxyk06r7alhd4wh67312zwp9discgyf4ksm572"
+   "commit": "fa40141411a876ce7a1a9d6d3fe47134bc1fa954",
+   "sha256": "1pj7b8ppkbjp8q5dzw5v086v8lp1gv1il6qc65l4nlm8p5iicvzq"
   }
  },
  {
@@ -30668,11 +31132,11 @@
   "repo": "marcowahl/fit-text-scale",
   "unstable": {
    "version": [
-    20200218,
-    1057
+    20200315,
+    2120
    ],
-   "commit": "cc570af6b8bda346028d070482f4cb30d438b867",
-   "sha256": "143mamvmgn4qyax3faknz77hgmkik0lbc48506kdvcg5mgcbzgn8"
+   "commit": "387acab18f9f4064c051771cf666b8550718dc27",
+   "sha256": "0mrl112vjsl6ddjv0j2pg97s6zk8c2qb92wqsq775ahr1cbhvbw7"
   },
   "stable": {
    "version": [
@@ -31302,8 +31766,8 @@
   "repo": "flycheck/flycheck",
   "unstable": {
    "version": [
-    20200224,
-    2057
+    20200329,
+    2344
    ],
    "deps": [
     "dash",
@@ -31311,8 +31775,8 @@
     "pkg-info",
     "seq"
    ],
-   "commit": "08345d38e2872a3dcb14228edff796195809266f",
-   "sha256": "183s05gm7zkgwphrwq0bq9fv2sldhrxjik8skz7rvbz448syh0c5"
+   "commit": "1751a4e9f8f6f20706a1620429422f101eabcd38",
+   "sha256": "10w9fgcwyni5iid7sfzrza155wrh481gdylwrwa7v640a9jmbyls"
   },
   "stable": {
    "version": [
@@ -31521,14 +31985,14 @@
   "repo": "alexmurray/flycheck-clang-analyzer",
   "unstable": {
    "version": [
-    20190724,
-    542
+    20200320,
+    428
    ],
    "deps": [
     "flycheck"
    ],
-   "commit": "223faa244502150d08a34898858a0b4806c92d4c",
-   "sha256": "1di3d9y0p8g8mndwkzkiiq2svsgk05rnzf7bzfnhig2fchg7ipap"
+   "commit": "7e1bf9853a34828c7f81d824dc4785f1620f2006",
+   "sha256": "1iw3vjdnskbk8zlbyvxiwlisj72d7q8nz8n55ffwz3v44ymzhya6"
   }
  },
  {
@@ -32884,6 +33348,25 @@
   }
  },
  {
+  "ename": "flycheck-pest",
+  "commit": "f0c1b89d79456ecaa22b95f3c292799f5d1aa133",
+  "sha256": "06nvryshinagp26idjcb1r98k39x4k82cjj735l9kiwpiag53ash",
+  "fetcher": "github",
+  "repo": "ksqsf/pest-mode",
+  "unstable": {
+   "version": [
+    20200317,
+    1503
+   ],
+   "deps": [
+    "flycheck",
+    "pest-mode"
+   ],
+   "commit": "4ae88a9c81d499bbe99978ff0216b645fed70023",
+   "sha256": "1zc7dmgp3s9q33wkvw6i7zzlcaa65ixx3hxb78m62lk2a7fzb3ih"
+  }
+ },
+ {
   "ename": "flycheck-phpstan",
   "commit": "5a2b6cc39957e6d7185bd2bdfa3755e5b1f474a6",
   "sha256": "1dr0h6cnwxdjmhlackv4gpsljwzs27gk41p8q99r0m44dada9gaf",
@@ -33158,27 +33641,27 @@
   "repo": "purcell/flycheck-relint",
   "unstable": {
    "version": [
-    20200304,
-    152
+    20200320,
+    2223
    ],
    "deps": [
     "flycheck",
     "relint"
    ],
-   "commit": "f498c130408411906bda81c1023a88b1498dcf18",
-   "sha256": "18sgnj6y9vsj9np58d8cr72jfady0kwdg6rdx667098lbznaw0da"
+   "commit": "296cf8e2f9e85ab0c1c591816b50ecd7c766060c",
+   "sha256": "148xh1alng4s3ydnhwjjrcmq1390pn6ymjszaamrzljwfqzh85ky"
   },
   "stable": {
    "version": [
     0,
-    4
+    5
    ],
    "deps": [
     "flycheck",
     "relint"
    ],
-   "commit": "39ec5deabdd23afaf6e1e34e13edd14d910899d0",
-   "sha256": "0m46n91hmh6gml9ravd0d1i79jnl9vbr733na3w0kg87mixnjdy8"
+   "commit": "296cf8e2f9e85ab0c1c591816b50ecd7c766060c",
+   "sha256": "148xh1alng4s3ydnhwjjrcmq1390pn6ymjszaamrzljwfqzh85ky"
   }
  },
  {
@@ -34231,6 +34714,24 @@
   }
  },
  {
+  "ename": "flymake-pest",
+  "commit": "747e1b060e3aa78b91d61abcf2c9a4dc0d4aaf7e",
+  "sha256": "17bsvrd1g7d5b0z5psx0bvg2ym0bi7dh1vvl8a45dnzpig141f36",
+  "fetcher": "github",
+  "repo": "ksqsf/pest-mode",
+  "unstable": {
+   "version": [
+    20200317,
+    1503
+   ],
+   "deps": [
+    "pest-mode"
+   ],
+   "commit": "4ae88a9c81d499bbe99978ff0216b645fed70023",
+   "sha256": "1zc7dmgp3s9q33wkvw6i7zzlcaa65ixx3hxb78m62lk2a7fzb3ih"
+  }
+ },
+ {
   "ename": "flymake-php",
   "commit": "cae2ac3513e371a256be0f1a7468e38e686c2487",
   "sha256": "12ds2l5kvs7fz38syp4amasbjkpqd36rlpajnb3xxll0hbk6vffk",
@@ -34476,11 +34977,11 @@
   "repo": "federicotdn/flymake-shellcheck",
   "unstable": {
    "version": [
-    20181214,
-    24
+    20200329,
+    2005
    ],
-   "commit": "e22385a9e752e58b18d4c6371e6ff1602bb764f2",
-   "sha256": "0gfk2wsi72n4zkgjpqasdn83zrxlzm735q6c3gs1sfqd7h1jqnwq"
+   "commit": "bb413006afc23105a0f84df6fb82504a06483a55",
+   "sha256": "09cqn0255pxim34v5zfypbzr4clfd2ajlsyxpc9h64wg6v9876y5"
   }
  },
  {
@@ -34994,6 +35495,21 @@
   }
  },
  {
+  "ename": "font-lock-cl",
+  "commit": "b7a2635ceb34f49f84f35e11c14521592a9d330f",
+  "sha256": "1d8r3d558ipk324hpgfm4fv4kxk6mhvkka3aqd4kcv8zv0k79iq3",
+  "fetcher": "github",
+  "repo": "font-lock-cl/font-lock-cl",
+  "unstable": {
+   "version": [
+    20200321,
+    533
+   ],
+   "commit": "1a54066611da213626ab69ea426ba3c63ece3438",
+   "sha256": "1c7n099b8dkrcrvxsva7da1m1z01p0acbyj271lix9w331h9gbf6"
+  }
+ },
+ {
   "ename": "font-lock-profiler",
   "commit": "b372892a29376bc3f0101ea5865efead41e1df26",
   "sha256": "089r74jgi5gwjk9w1bc600vkj0p5ac84rgcl7aqcpqfbh9ylwcp9",
@@ -35057,10 +35573,10 @@
  },
  {
   "ename": "fontawesome",
-  "commit": "93b92f10802ceffc353db3d220dccfd47ea7fa41",
-  "sha256": "07hn4s929xklc74j8s6pd61rxmxw3911dq47wql77vb5pijv6dr3",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1xqq0ndq6hndpyar11qlylkdgqpq5kxhbayyjbad3vbm6r5i9nri",
   "fetcher": "github",
-  "repo": "syohex/emacs-fontawesome",
+  "repo": "emacsorphanage/fontawesome",
   "unstable": {
    "version": [
     20170305,
@@ -35128,11 +35644,11 @@
   "repo": "k-talo/foreign-regexp.el",
   "unstable": {
    "version": [
-    20180224,
-    1121
+    20200325,
+    50
    ],
-   "commit": "2ec5c44f27c2396ee487aa0ed77ae47d143fa5aa",
-   "sha256": "0zww0q8x99sfwzf05pk7blsi3v8xiw4xgmlwnv1qlf2qxjkz1xhb"
+   "commit": "e2dd47f2160cadc194eb156e7c76c3c869e6706e",
+   "sha256": "0bqhabpv992ss8rw3fgym6q5kq1d6b9ycs0a5ndgjpcz19rmlr66"
   }
  },
  {
@@ -35687,6 +36203,30 @@
   }
  },
  {
+  "ename": "freeze-it",
+  "commit": "0b50aa7ce66a827ddd975eddf8e95ba655e05239",
+  "sha256": "03wnmp6m9ss3vvzibajjdvzbgh2ydvq95xk9k2rhrgjj9pdz5ml8",
+  "fetcher": "github",
+  "repo": "rnkn/freeze-it",
+  "unstable": {
+   "version": [
+    20200322,
+    700
+   ],
+   "commit": "0e2ddd99dc1211800d55e874c1bd078f879e0d9c",
+   "sha256": "08jdlwn8da8cgkpwpx8834rhx8is5iigq0cv3abbydmz5lrd72nl"
+  },
+  "stable": {
+   "version": [
+    0,
+    1,
+    2
+   ],
+   "commit": "cf53f31e4f266b7f0b12e091de074e763c7d565b",
+   "sha256": "0drznbwci4swfxmmdvkm14qmpb9y9pykyflhh69l5fdxiigpdlb8"
+  }
+ },
+ {
   "ename": "fringe-current-line",
   "commit": "eaaa6f7f2f753a7c8489415ae406c4169eda9fa8",
   "sha256": "125yn0wbrrxrmdn7qfxj0f4538sb3xnqb3r2inz3gpblc1vxnqb8",
@@ -35851,8 +36391,8 @@
    "deps": [
     "cl-lib"
    ],
-   "commit": "426d8f09b2d62d29a5b89a53492890ce2a49158a",
-   "sha256": "04nwx43xh68nqh84fbrcvnyh57yricr7l7k7shyqdv7922km947a"
+   "commit": "2d85dafa9872fa34b463f6473e61a1ed71c17788",
+   "sha256": "0zwrlvp2i0n4imba84cc0hsivyaxv4sy98bsqfwpy65xm94h0d96"
   },
   "stable": {
    "version": [
@@ -36290,17 +36830,26 @@
  },
  {
   "ename": "gdscript-mode",
-  "commit": "52f99eafb2e80a7fa13a98add98b03a147f35e8b",
-  "sha256": "0v4ab5xxpq1kya2is5qq61fmfgxgvbigyz7wp907z3mc00kg2818",
+  "commit": "b4414989beecd113ec405116402a5232ac32cb85",
+  "sha256": "1clakvkjifqhi847p6zrxxfkr5s3hv33qsh7r96w04pihyd38q9l",
   "fetcher": "github",
-  "repo": "AdamBark/gdscript-mode",
+  "repo": "GDQuest/emacs-gdscript-mode",
   "unstable": {
    "version": [
-    20180118,
-    456
+    20200328,
+    1820
+   ],
+   "commit": "56a864ecff99ae314b838b755cf26af66f4f9323",
+   "sha256": "0mlvvagdr2bj13ibms1vq8p9zp10ag4qhyfklkj93lg6j744qav4"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    2
    ],
-   "commit": "31af5283eaec207bc864022a28e2824132471eaf",
-   "sha256": "0f24zsklkhhvj6qdyid2j1qcyhjnncxjma93zhr0klvn5j1z3aar"
+   "commit": "361439f28bd10649c9f58f1d3290b4ee63ee4f54",
+   "sha256": "1ymblv04as076yfi3inmc3s66j0nqslqvfx34s3da6s8g8zi0ash"
   }
  },
  {
@@ -36388,11 +36937,11 @@
   "repo": "jaor/geiser",
   "unstable": {
    "version": [
-    20200225,
-    1423
+    20200327,
+    2213
    ],
-   "commit": "5fcd56b2d560c04a173ae7d8b21540471322afa4",
-   "sha256": "00zvll0glzx9lp4s9l1ix1grdqa9cj24kszil1akaa8rqniiafn1"
+   "commit": "9b45785173dc61a2897b17edf27df9407d1d94ce",
+   "sha256": "0r21fs262jzzpilynnlnqc9bd42fbq7hn522dfnx93jjmni35kjc"
   },
   "stable": {
    "version": [
@@ -36412,14 +36961,14 @@
   "repo": "noctuid/general.el",
   "unstable": {
    "version": [
-    20200226,
-    101
+    20200320,
+    2340
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "7fdb13e9f90600968d15704851df9c45b5df8ca5",
-   "sha256": "1l8766p9svzjhwglah3ffl93rij106d2gz7sdwx8r30s6p01q2mf"
+   "commit": "14ad4c888b34eb8ebd946d26917aaf2dd4fcce29",
+   "sha256": "09hp8aavimlhasnxl5z74pk6afvjpcpd6fpv7j2amdmyhbflxv9h"
   }
  },
  {
@@ -36459,6 +37008,21 @@
   }
  },
  {
+  "ename": "geoip",
+  "commit": "40336cd135414e1c6f478705e5873eaa396554b0",
+  "sha256": "0j70gl9423ghrjp4k250kq8xpngxa8pzlpivpksyzzj32s7dy1nw",
+  "fetcher": "github",
+  "repo": "xuchunyang/geoip.el",
+  "unstable": {
+   "version": [
+    20200310,
+    911
+   ],
+   "commit": "25eb1278788b942c38405c233d3614a1de92ddea",
+   "sha256": "0nbgbqxmpq6c487yx4igph58zmaslqn7z92x9b1xymw58fnlyrm6"
+  }
+ },
+ {
   "ename": "geolocation",
   "commit": "fddc094aa08365c0e04f0d8f2f19a47908964f50",
   "sha256": "03mxy8dfmy8db8rx9j7q1lvzy11grz0bd3054ckwgmlb6ng7d72q",
@@ -36883,11 +37447,11 @@
   "repo": "Ambrevar/emacs-gif-screencast",
   "unstable": {
    "version": [
-    20200207,
-    1358
+    20200327,
+    1332
    ],
-   "commit": "dce0f3bb71ab8761a689c7382864a20198874b8e",
-   "sha256": "0yf665w06ijjxvzfbg8naa95f5ga3z2kcaq9baq7md222r52xd7q"
+   "commit": "e39786458fb30e2e9683094c75c6c2cef537d9c4",
+   "sha256": "135mkyi8kqsxs0a3qa20splvx4xhl8k91s48yy6gwlz6m81vwvb5"
   },
   "stable": {
    "version": [
@@ -37050,11 +37614,11 @@
   "repo": "ryuslash/git-auto-commit-mode",
   "unstable": {
    "version": [
-    20200217,
-    2348
+    20200322,
+    2007
    ],
-   "commit": "ae69e61233417a7f14efba35e42bd842b707aeb0",
-   "sha256": "0nrx3wnn2jii4yiv9c1cbbll4bgll5j73ypp1fi82kk99n0d8372"
+   "commit": "dd0c2441de0f5ff8c69c8260d9450d0b607e3e55",
+   "sha256": "0r7jry1sbqsp7c1vxf7fchc7ivmnccfrflg52379v3gmpvd8s0kn"
   },
   "stable": {
    "version": [
@@ -37179,8 +37743,8 @@
     "transient",
     "with-editor"
    ],
-   "commit": "e293416cee73dc47a6dc7f0bc2f4624d69625634",
-   "sha256": "0kshzx82ics43x6z8i7wcl5866li8ai05mzkri14l6jrcarz9fjz"
+   "commit": "236c44518d30c43c7035be32f02ba615d148b5ef",
+   "sha256": "0fbcx8qfymvd1i96a21gzsd4882qz6xlgccvba0dam8h9aninqf6"
   },
   "stable": {
    "version": [
@@ -37252,17 +37816,17 @@
  },
  {
   "ename": "git-gutter",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "19s344i95piixlzq4mjgmgjw7cy8af02z6hg89jjjdbxrfl4i2fg",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1vcrjxg9pckixsbfmvpf0624s990nx33qn0p6xhnag4jn81ih03x",
   "fetcher": "github",
-  "repo": "syohex/emacs-git-gutter",
+  "repo": "emacsorphanage/git-gutter",
   "unstable": {
    "version": [
-    20200315,
-    752
+    20200326,
+    1814
    ],
-   "commit": "219f845ccb13f4da44293f12649e6b51178fea3e",
-   "sha256": "0ap4j00anmkbjpmf55k8rv4s0yfnylmc6sh3rdx495zb6nfj9ky9"
+   "commit": "2c3242116a42dbbe30fc0844d1ec3c41074cdaba",
+   "sha256": "18gbns5mjwr5kirgpzjp4iqmj130qa5m1hs4phx1057qdq11ihrr"
   },
   "stable": {
    "version": [
@@ -37308,22 +37872,22 @@
  },
  {
   "ename": "git-gutter-fringe",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "10k07dzmkxsxzwc70vpv05rxjyps9494y6k7yhlv8d46x7xjyp0z",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1i8vvh2si3fdgq1m0yyzs9qbw5jzykp4qgl3ksm4xrimlw1ln4vc",
   "fetcher": "github",
-  "repo": "syohex/emacs-git-gutter-fringe",
+  "repo": "emacsorphanage/git-gutter-fringe",
   "unstable": {
    "version": [
-    20170113,
-    533
+    20200323,
+    2249
    ],
    "deps": [
     "cl-lib",
     "fringe-helper",
     "git-gutter"
    ],
-   "commit": "16226caab44174301f1659f7bf8cc67a76153445",
-   "sha256": "1y77gjl0yznamdj0f55d418zb75k22izisjg7ikvrfsl2yfqf3pm"
+   "commit": "da19a474137876b29b5658ee7e9ae366f2b65c1d",
+   "sha256": "015qaaap2cvy4cxl31r27z48zbgd9vyj6rac9yv3caw5zsvzlkiv"
   },
   "stable": {
    "version": [
@@ -37469,20 +38033,20 @@
  },
  {
   "ename": "git-messenger",
-  "commit": "e791293133f30e5d96c4b29e972f9016c06c476d",
-  "sha256": "1rnqsv389why13cy6462vyq12qc2zk58p01m3hsazp1gpfw2hfzn",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0nmxx7543x7cl40m69lmyb5fv68gzdwbr8dq18qbi5kapvhg5b8y",
   "fetcher": "github",
-  "repo": "syohex/emacs-git-messenger",
+  "repo": "emacsorphanage/git-messenger",
   "unstable": {
    "version": [
-    20200315,
-    1050
+    20200321,
+    2337
    ],
    "deps": [
     "popup"
    ],
-   "commit": "321fcdaca8bc63a1a6d54ab3532891dbd6822e18",
-   "sha256": "1xcn7c4ck21p5s149rjp879l05qqhxhc8wj4s4a1b1x1a5scqni2"
+   "commit": "2d64e62e33be9f881ebb019afc183caac9c62eda",
+   "sha256": "1w23qjc740bxj95gdzjcy3qldfmx4y19dhcrzh83l9wfz4y566c7"
   },
   "stable": {
    "version": [
@@ -38465,11 +39029,11 @@
   "repo": "emacsorphanage/gnuplot",
   "unstable": {
    "version": [
-    20200310,
-    536
+    20200322,
+    53
    ],
-   "commit": "a080f79b6f7a6ca94d11cda0d341acfc6e76d0c5",
-   "sha256": "111n89p74iymxrla3mk387xffnqmkb11pixjfgiv61l9b35hx94g"
+   "commit": "f0001c30010b2899e36d7d89046322467e923088",
+   "sha256": "1qnlcfzaihwc6kxdr1h2mrhccnhlwsdqwmcygxi2s01q2ifq1nc1"
   },
   "stable": {
    "version": [
@@ -38667,10 +39231,10 @@
  },
  {
   "ename": "go-add-tags",
-  "commit": "55d3b893bd68d3d2d86ecdbb4ed442edd256516a",
-  "sha256": "0nvas44rsvqzk2ay5bhzkbrnzql13vnxq9pk4lp4mvp86dda9qim",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0syra7h9wixiq3g4ydamvzw2vc0852zcx5ij0rhw103hrvhrzcjd",
   "fetcher": "github",
-  "repo": "syohex/emacs-go-add-tags",
+  "repo": "emacsorphanage/go-add-tags",
   "unstable": {
    "version": [
     20161123,
@@ -38767,10 +39331,10 @@
  },
  {
   "ename": "go-direx",
-  "commit": "032c0c3cd04f36f1bc66bb7d9d789d354c620a09",
-  "sha256": "0dq5d7fsld4hww8fl68c18qp6fl3781dqqwd98cg68bihw2wwni7",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0x9yrbbcwsc5kf88d1j75g02yndavgb4g4wwhy9ml58a6d6kq5y3",
   "fetcher": "github",
-  "repo": "syohex/emacs-go-direx",
+  "repo": "emacsorphanage/go-direx",
   "unstable": {
    "version": [
     20150316,
@@ -38828,10 +39392,10 @@
  },
  {
   "ename": "go-eldoc",
-  "commit": "6ce1190db06cc214746215dd27648eded5fe5140",
-  "sha256": "1k115dirfqxdnb6hdzlw41xdy2dxp38g3vq5wlvslqggha7gzhkk",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1x8qwmn8b2wc79dqqx89c3l1m9sj08hgdwh5lwrlp1l80vhfp3sr",
   "fetcher": "github",
-  "repo": "syohex/emacs-go-eldoc",
+  "repo": "emacsorphanage/go-eldoc",
   "unstable": {
    "version": [
     20170305,
@@ -38996,10 +39560,10 @@
  },
  {
   "ename": "go-impl",
-  "commit": "aa1a0845cc1a6970018b397d13394aaa8147e5d0",
-  "sha256": "09frwpwc080rfpwkb63yv47dyj741lrpyrp65sq2bn4sf03xw0cx",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1vi986ymza88cpjlxjz88na1w9dq4dr9d82vdbpav762vz828h9i",
   "fetcher": "github",
-  "repo": "syohex/emacs-go-impl",
+  "repo": "emacsorphanage/go-impl",
   "unstable": {
    "version": [
     20170125,
@@ -39280,17 +39844,26 @@
  },
  {
   "ename": "god-mode",
-  "commit": "2dff8dc08583048f9b7b4cb6d8f05a18dd4e8b42",
-  "sha256": "01xx2byjh6vlckaxamm2x2qzicd9qc8h6amyjg0bxz3932a4llaa",
+  "commit": "c4f8b0a0766bcff6b716b9e35da25c00b8a91abd",
+  "sha256": "0l8hdn227axan7ryx6z4fbk9nqsb50bmhwqxgy3g8g19vqhflhfr",
   "fetcher": "github",
-  "repo": "chrisdone/god-mode",
+  "repo": "emacsorphanage/god-mode",
   "unstable": {
    "version": [
-    20180117,
-    1134
+    20200329,
+    209
    ],
-   "commit": "344167ed9b4c212273dd056e7481cf1373b461d0",
-   "sha256": "0y7phh7amrdphv9dkf0304z2knyas745ir59ybngh1a55dfc2mf4"
+   "commit": "b82ce18ae4db2078c03d92946e21808c1f325f15",
+   "sha256": "1a490s5s8884rhb35gw4dxdzk2djvdiw4zsp9866sfrwh7xcama4"
+  },
+  "stable": {
+   "version": [
+    2,
+    16,
+    0
+   ],
+   "commit": "b82ce18ae4db2078c03d92946e21808c1f325f15",
+   "sha256": "1a490s5s8884rhb35gw4dxdzk2djvdiw4zsp9866sfrwh7xcama4"
   }
  },
  {
@@ -39408,10 +39981,10 @@
  },
  {
   "ename": "gom-mode",
-  "commit": "0a1e5f505e048b36c12de36b23b779beeaefc45f",
-  "sha256": "07zr38gzqb3ds9mpf94c1vhl1rqd0cjh4g4j2bz86q16c0rnmp7m",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0qwqvkdvxmwnijj60jvqzwvikw1avrg6i66cl74qbqqcqkhazbpz",
   "fetcher": "github",
-  "repo": "syohex/emacs-gom-mode",
+  "repo": "emacsorphanage/gom-mode",
   "unstable": {
    "version": [
     20131008,
@@ -39422,6 +39995,24 @@
   }
  },
  {
+  "ename": "gomacro-mode",
+  "commit": "ce33236843b8eb266769f588e8d8341b056ccf2c",
+  "sha256": "0gfx9z8cb3lakr1c6irjmcb7fv3val349vxibwlxjbmax689r5v5",
+  "fetcher": "github",
+  "repo": "storvik/gomacro-mode",
+  "unstable": {
+   "version": [
+    20200326,
+    1103
+   ],
+   "deps": [
+    "go-mode"
+   ],
+   "commit": "3112e56d2d5e645a3e0fd877f3e810dbccbf989f",
+   "sha256": "1f3y46q7djr1riz7x26gc7a1gf9p8sfdrnlqyiwzmi9vkk6h8wdz"
+  }
+ },
+ {
   "ename": "google",
   "commit": "45237d37da807559498bb958184e05109f880070",
   "sha256": "11a521cq5bj7afl7bqiilg0c81dy00lnhak7h3d9c9kwg7kfljiq",
@@ -39810,8 +40401,8 @@
     "magit-popup",
     "s"
    ],
-   "commit": "41e33d1f83b19662fc1a894f362c00f25c53e797",
-   "sha256": "1mkdxa51d4nhbfknchg0p9sx2pa0n7fdh88xv5rq282myh2zaxm8"
+   "commit": "a01612b9850519603bfef116bd7bddd9c8e3b975",
+   "sha256": "0kbnhm6m7sf1j63yykrn4p7ykkjvvair3x95wi4b59icc6ydvwv7"
   },
   "stable": {
    "version": [
@@ -40046,8 +40637,8 @@
     "s",
     "websocket"
    ],
-   "commit": "ffff850b77ebbab827538f6ebee872b2638586bc",
-   "sha256": "1kxcnivlbv7dl09y09j72368sycqs96hk5nf7vsnqlfrrbc0337a"
+   "commit": "709bf3124b6e130efcede8b38fc2fed38699e19b",
+   "sha256": "1lz74qqzznv5c6pnsnnp0x0k16q663pkqakvwpg69lavcg68ysxh"
   },
   "stable": {
    "version": [
@@ -40742,14 +41333,14 @@
   "repo": "tmalsburg/guess-language.el",
   "unstable": {
    "version": [
-    20200309,
-    707
+    20200326,
+    1725
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "a0bacb4e3659db5808056e6235abc9f00570cecd",
-   "sha256": "13hqqfjwd69ycmn85rzjpr9qdjv6jvnx7dl555c934xwdlnw9c2d"
+   "commit": "f4ce91eba3c479d08fedf0a3ced6c1265a7838ca",
+   "sha256": "0z7agqi5sgjjidhmnrv7615737xk7p1s6pdhr6swjcr117dq44fm"
   }
  },
  {
@@ -41724,11 +42315,11 @@
   "repo": "purcell/emacs-hcl-mode",
   "unstable": {
    "version": [
-    20200225,
-    2130
+    20200315,
+    2129
    ],
-   "commit": "6599520a350e01354300a962463ecbf5564db622",
-   "sha256": "18vs2cwa1pyly2kh2lapm10n8akam5fvsx8rvgp41lcwrdxs2323"
+   "commit": "c3d1158ad1a64f06aa8986ab1cdea6b7fbdd4bf7",
+   "sha256": "0qza5pgpzcabik3592dk25glsv9zcg84pn1jzm43f9b1j9w5iv4i"
   },
   "stable": {
    "version": [
@@ -41786,16 +42377,16 @@
   "repo": "emacs-helm/helm",
   "unstable": {
    "version": [
-    20200314,
-    1003
+    20200325,
+    757
    ],
    "deps": [
     "async",
     "helm-core",
     "popup"
    ],
-   "commit": "b38c9d1b098310262f331e191a9baaaba789fc25",
-   "sha256": "1rnmdg65r54g2r96j1pq6sz9akjgrpnl5q3la2rrn9pr22mjv0q7"
+   "commit": "0181b7ef468def6ef5547c7241b5c4c854816166",
+   "sha256": "09yvc6jpcb93fwa5blgzaqpk3f3v5h6m2hxajih1y6fxrdaxgnhq"
   },
   "stable": {
    "version": [
@@ -41833,10 +42424,10 @@
  },
  {
   "ename": "helm-ack",
-  "commit": "258d447778525c26c65a5819ba1edc00e2bb65e5",
-  "sha256": "1a8sc5gd2g57dl9g18wyydfmihy74yniwhjr27h7vxylnf2g3pni",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "124w7grwindyv86xfshfm70h0xfq29ns067pchk8dcbjbgh9yl7b",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-ack",
+  "repo": "emacsorphanage/helm-ack",
   "unstable": {
    "version": [
     20141030,
@@ -41903,31 +42494,31 @@
  },
  {
   "ename": "helm-ag",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "050qh5xqh8lwkgmz3jxm8gql5nd7bq8sp9q6mzm2z7367qy4qqyf",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0jzfycbaz88r6scsiw74prcnbvilsaphljdys6i5k9g5rhn5sxh5",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-ag",
+  "repo": "emacsorphanage/helm-ag",
   "unstable": {
    "version": [
-    20200315,
-    1231
+    20200328,
+    533
    ],
    "deps": [
     "helm"
    ],
-   "commit": "e24fb378c8d61e7c2bf12d99a41712126f9878cf",
-   "sha256": "1k5ldnjpcgskn71jrg3mcph8z1rdrdyysl5vbi3bpfx61hw4z2ij"
+   "commit": "ad3ef038584007fbf1b7d6e727be1f18e39a8730",
+   "sha256": "06gjbc1rkxg13nb2hr3gm65zyzpxv77pvsz7b7c9i3qfw782zsax"
   },
   "stable": {
    "version": [
     0,
-    58
+    59
    ],
    "deps": [
     "helm"
    ],
-   "commit": "39ed137823665fca2fa5b215f7c3e8701173f7b7",
-   "sha256": "0a6yls52pkqsaj6s5nsi70kzpvssdvb87bfnp8gp26q2y3syx4ni"
+   "commit": "79373d7f1616d175a5e0730e1e0c3855f04bd945",
+   "sha256": "0vsz2b5qw4qahlf74059z4p1grinhfz28f0psw4c3qf4jasv3b9j"
   }
  },
  {
@@ -42647,8 +43238,8 @@
    "deps": [
     "async"
    ],
-   "commit": "b38c9d1b098310262f331e191a9baaaba789fc25",
-   "sha256": "1rnmdg65r54g2r96j1pq6sz9akjgrpnl5q3la2rrn9pr22mjv0q7"
+   "commit": "0181b7ef468def6ef5547c7241b5c4c854816166",
+   "sha256": "09yvc6jpcb93fwa5blgzaqpk3f3v5h6m2hxajih1y6fxrdaxgnhq"
   },
   "stable": {
    "version": [
@@ -42981,16 +43572,16 @@
   "repo": "emacs-helm/helm-emms",
   "unstable": {
    "version": [
-    20191111,
-    1954
+    20200322,
+    1309
    ],
    "deps": [
     "cl-lib",
     "emms",
     "helm"
    ],
-   "commit": "f0bf6b307f9747ba16b3f582e8364a5012e41465",
-   "sha256": "0wldy81xyb96kg1pz6l2i463pi83qz84m1rmiff7866w9rl1fifd"
+   "commit": "37e5aa029abfa5a5c48636314de8157142944fa2",
+   "sha256": "0r1ai6xhzayyik30w2sx9n62bxxwm12vfmjspv0daqif9az8y3vg"
   },
   "stable": {
    "version": [
@@ -43168,15 +43759,28 @@
   "repo": "emacs-helm/helm-exwm",
   "unstable": {
    "version": [
-    20180827,
-    837
+    20200325,
+    1022
    ],
    "deps": [
     "exwm",
     "helm"
    ],
-   "commit": "e21c6ffabadd2fe8d6c7805b6027cc59a6f914e9",
-   "sha256": "11fyqk3h9cqynifc2zzqn0czrcj082wkdg1qhbj97nl4gcj787rl"
+   "commit": "00ddb4d2a127087a0b99f0a440562bd54408572d",
+   "sha256": "0g4k01ps14bp2az8v6dcag9llg045k2b4kdis81xx4lvw76znr9v"
+  },
+  "stable": {
+   "version": [
+    0,
+    0,
+    2
+   ],
+   "deps": [
+    "exwm",
+    "helm"
+   ],
+   "commit": "00ddb4d2a127087a0b99f0a440562bd54408572d",
+   "sha256": "0g4k01ps14bp2az8v6dcag9llg045k2b4kdis81xx4lvw76znr9v"
   }
  },
  {
@@ -43820,20 +44424,20 @@
  },
  {
   "ename": "helm-gtags",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "1kbpfqhhbxmp3f70h91x2fws9mhx87zx4nzjjl29lpl93vf8xckl",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0qcn6hmm26irlljcq93c6ap0k1kihdakr2jpgzvdbm8km2cxrm47",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-gtags",
+  "repo": "emacsorphanage/helm-gtags",
   "unstable": {
    "version": [
-    20170116,
-    529
+    20200321,
+    1456
    ],
    "deps": [
     "helm"
    ],
-   "commit": "108e93d0d099ebb7b98847388f368311cf177033",
-   "sha256": "0hfshcnzrrvf08yw4xz5c93g9pw6bvjp2bmv0s6acrsjqgwhx158"
+   "commit": "ff4329fec2cc1f53b404054ddab4cd16faef7241",
+   "sha256": "14jjjk258hg2d47d8fgg6qb410ij16400anx5kcghi2680a92f2w"
   },
   "stable": {
    "version": [
@@ -44024,10 +44628,10 @@
  },
  {
   "ename": "helm-ispell",
-  "commit": "edc42b26027dcd7daf0d6f2bd19ca4736fc12d6d",
-  "sha256": "0qyj6whgb2p0v231wn6pvx4awvl1wxppppqqbx5255j8r1f3l1b0",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "14slvcjyqd1ryymh63an7r2z1882dybwpq73bb50xkwrk7rs0389",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-ispell",
+  "repo": "emacsorphanage/helm-ispell",
   "unstable": {
    "version": [
     20151231,
@@ -44198,8 +44802,8 @@
     "helm",
     "lean-mode"
    ],
-   "commit": "c9dffcda2951c22c483d1d22411d13bc132ce609",
-   "sha256": "1lj6j21hzya41fmlnw7faqmhvsdcgcidwibyvicgsb0gm6qqipjf"
+   "commit": "65b55b1711fb61129312044d5ac7e6a2c2ee245c",
+   "sha256": "1zmw8950qhry2ixk2ng0pg4j0vwx11nvjlrpab9jg6x47ys9j65n"
   }
  },
  {
@@ -44365,16 +44969,30 @@
   "repo": "montag451/helm-lxc",
   "unstable": {
    "version": [
-    20190116,
-    2050
+    20200323,
+    816
+   ],
+   "deps": [
+    "cl-lib",
+    "helm",
+    "lxc-tramp"
+   ],
+   "commit": "37fe2d7ed97967edf59a3b68b1434910516ae24f",
+   "sha256": "1xnkwmdcdjfvslahhslw2xnlcym9fvb3m8384c455bas6s180qxh"
+  },
+  "stable": {
+   "version": [
+    0,
+    2,
+    0
    ],
    "deps": [
     "cl-lib",
     "helm",
     "lxc-tramp"
    ],
-   "commit": "a4e17dda329ec39a3dac5751ddcef1145b3d91c1",
-   "sha256": "1z6d752682b21ydp7s5a9jkhjqw7nbascv21qcs9418ydisl8q8d"
+   "commit": "02812daf09d5ffb02abef7a8e0fa1f7b7c472d67",
+   "sha256": "14x69laf6mfz766w6lrzj5a430jr0lrilk60ywc6i1wlpcs2v10v"
   }
  },
  {
@@ -44604,10 +45222,10 @@
  },
  {
   "ename": "helm-open-github",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "1wqlwg21s9pjgcrwr8kdrppinmjn235nadkp4003g0md1d64zxpx",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1lqjaprgybs4svnrgxvnbbzrkibgkf1zvhbg4ipiljz7h1byzqs7",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-open-github",
+  "repo": "emacsorphanage/helm-open-github",
   "unstable": {
    "version": [
     20170220,
@@ -44812,21 +45430,21 @@
  },
  {
   "ename": "helm-perldoc",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "1qx0g81qcqanjiz5fxysagjhsxaj31g6nsi2hhdgq4x4nqrlmrhb",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1xl075bg35lc48zxnwbvyr7dqcz8cxk3v87i9v506kqwfmfpiz95",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-perldoc",
+  "repo": "emacsorphanage/helm-perldoc",
   "unstable": {
    "version": [
-    20160918,
-    556
+    20200315,
+    1716
    ],
    "deps": [
     "deferred",
     "helm-core"
    ],
-   "commit": "1979f9f67814c11ec9498502237c89a5e1153100",
-   "sha256": "0fvjw8sqnwnjx978y7fghvgp5dznx31hx0pjp4iih01xa1hcwbnc"
+   "commit": "6f3526f07f3df3059dbde779f8e681f5f1fee6ea",
+   "sha256": "1g7f2vdvzh9qhk8lviii86w7cb06a60kz6gvv8gnbqx88mndqclq"
   },
   "stable": {
    "version": [
@@ -45090,10 +45708,10 @@
  },
  {
   "ename": "helm-pydoc",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "1sh7gqqiwk85kx89l1sihlkb8ff1g9n460nwj1y1bsrpfl6if4j7",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0a2vn7xgvcil8vp40jiljff83hwb2ysb240amd8darxbfxz1j9mi",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-pydoc",
+  "repo": "emacsorphanage/helm-pydoc",
   "unstable": {
    "version": [
     20160918,
@@ -45319,10 +45937,10 @@
  },
  {
   "ename": "helm-robe",
-  "commit": "e7018f57f6f0e4bd71e172ae23c050b44276581b",
-  "sha256": "1gi4nkm9xvnxv0frmhiiw8dkmnmhfpr9n0b6jpidlvr8xr4s5kyw",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "143azbrj32mk0xv0i7wpvwcj4lqvphbjj3rbcpwnx76rywi3iqp7",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-robe",
+  "repo": "emacsorphanage/helm-robe",
   "unstable": {
    "version": [
     20151209,
@@ -45750,14 +46368,14 @@
   "repo": "emacsorphanage/helm-swoop",
   "unstable": {
    "version": [
-    20200121,
-    1859
+    20200321,
+    231
    ],
    "deps": [
     "helm"
    ],
-   "commit": "9324d8c196ab2a86fde7142f159e081b87a4d277",
-   "sha256": "1nznfrnzfbxa5qlwbddjma96k93f9hr7jv9sqx3krc0i1061nbg8"
+   "commit": "069dc0b3970f1e796e34b7789ae51b1b7979ee30",
+   "sha256": "1jf1573r8v4mda1xiszrz51qarb1ii31cyk0v3ci16bi9dpp8swb"
   },
   "stable": {
    "version": [
@@ -45873,20 +46491,20 @@
  },
  {
   "ename": "helm-themes",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "0r7kyd0i0spwi7xkjrpm2kyphrsl3hqm5pw96nd3ia0jiwp8550j",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "15qs23f467j99wybjd0n6dacgik5ibf96jn00j9fip55v8rp66gj",
   "fetcher": "github",
-  "repo": "syohex/emacs-helm-themes",
+  "repo": "emacsorphanage/helm-themes",
   "unstable": {
    "version": [
-    20160918,
-    545
+    20200323,
+    712
    ],
    "deps": [
     "helm-core"
    ],
-   "commit": "1160af42590b0d845a55e65e1e782d9e4027fd6e",
-   "sha256": "0856h8rnbgrxp3v3jpfmwq7kcdm1ymd4gcfvh0h27mk05113vz53"
+   "commit": "244121903650c2d25a233d12b378060cf8b010e7",
+   "sha256": "0ii70wn3vadx8a36q2frmsvrmlpz1w58qgn2w3knjivj195knliw"
   },
   "stable": {
    "version": [
@@ -46457,6 +47075,21 @@
   }
  },
  {
+  "ename": "hidepw",
+  "commit": "f2ee7663bcedaffa935b8379cc77168035cb1f14",
+  "sha256": "0qnvlcjldg1mcb5ilcy538sbf294glrx5g1a7vbmspdm3wby7lna",
+  "fetcher": "github",
+  "repo": "jekor/hidepw",
+  "unstable": {
+   "version": [
+    20200326,
+    112
+   ],
+   "commit": "73f099da79d73fe4087472df3469d8b9b20a59f2",
+   "sha256": "1lcm5nfpcrvy3700g1zzi89j59n0508xvk3v66x9px5aq6a8xk2j"
+  }
+ },
+ {
   "ename": "hideshow-org",
   "commit": "3de48eee24a5cca9c8b7dba2d6d01dfbc679d8d6",
   "sha256": "1bzx5ii06r64nra92zv1dvw5zv3im7la2dd3md801hxyfrpb74gc",
@@ -47264,16 +47897,16 @@
   "repo": "thanhvg/emacs-hnreader",
   "unstable": {
    "version": [
-    20190909,
-    258
+    20200321,
+    1900
    ],
    "deps": [
     "org",
     "promise",
     "request"
    ],
-   "commit": "7e68beff596a7c67ff436be5cc29660acd46f5df",
-   "sha256": "0yynfz8bw7nvzk05zxypn183y6hf243s55kxfiicnxx7shag217i"
+   "commit": "5dd287e932e2398aab0f34cb23b99457b81ac370",
+   "sha256": "0ynq9dg00frk1sriraglzsszxpx51mpfdkbd1iqdz648rlhzyp3m"
   }
  },
  {
@@ -47506,20 +48139,20 @@
   "repo": "ericdallo/hover.el",
   "unstable": {
    "version": [
-    20200309,
-    1550
+    20200321,
+    1819
    ],
-   "commit": "5d94d07b0213b45fc3b2d57362fd9bcb86a2fbe8",
-   "sha256": "1fkzlp92lqkwnld3hnfk3qywy7ssyfy03vjxxrisryhnyam9r87d"
+   "commit": "cf1cd543f68525732e0a9178c96a5f83a3cabc7f",
+   "sha256": "1yjfvx94ipps91fr8qbgafpkdp38yhlbzvggyi97g91ib2pxfals"
   },
   "stable": {
    "version": [
     1,
-    0,
-    3
+    1,
+    0
    ],
-   "commit": "5d94d07b0213b45fc3b2d57362fd9bcb86a2fbe8",
-   "sha256": "1fkzlp92lqkwnld3hnfk3qywy7ssyfy03vjxxrisryhnyam9r87d"
+   "commit": "cf1cd543f68525732e0a9178c96a5f83a3cabc7f",
+   "sha256": "1yjfvx94ipps91fr8qbgafpkdp38yhlbzvggyi97g91ib2pxfals"
   }
  },
  {
@@ -47553,8 +48186,8 @@
     "promise",
     "request"
    ],
-   "commit": "8bfaffeff945bcfbc1e2b2cfb65e8452a7a34717",
-   "sha256": "05k7ar832bbzvjicri4v5dyivdrypgkqgninf72izykl89v8yzgx"
+   "commit": "ef7f42c14f0f4aec475b74d56931daa36aded6c8",
+   "sha256": "1a1wr86z5368zwvlgyp979x1ypz38m2w2qnp5607vjjplcrcmay2"
   }
  },
  {
@@ -48622,8 +49255,8 @@
    "deps": [
     "dash"
    ],
-   "commit": "a142ff1c33df23ed9665497d0dcae2943b3c706a",
-   "sha256": "0967709jyp9s04i6gi90axgqzhz03cdf1j1w39yrkds6q1b6v7jw"
+   "commit": "a814e25cb272401bdfee94cb98d915119d307414",
+   "sha256": "040mpwwldivyapmj0pjxsk8drgi113k7rpx8ym4jqz1hah5n33s1"
   },
   "stable": {
    "version": [
@@ -48808,8 +49441,8 @@
    "deps": [
     "dash"
    ],
-   "commit": "522af5d55b3d4cd6885f3b4100913566c202cec4",
-   "sha256": "0yh8px5ffx4pjmy97v1z9nwxb3qgzc5pdaj9nn6lsdxv9z7w5p3v"
+   "commit": "6a0bfeaca2e334b47b4f38ab80d63f53535b189e",
+   "sha256": "0q4w0akmnwk42ldbzqxbr7swz026q8wr1g27bl4i4k25bidqlx9q"
   },
   "stable": {
    "version": [
@@ -49442,16 +50075,15 @@
   "repo": "skeeto/impatient-mode",
   "unstable": {
    "version": [
-    20181002,
-    1231
+    20200327,
+    1619
    ],
    "deps": [
-    "cl-lib",
     "htmlize",
     "simple-httpd"
    ],
-   "commit": "96f6a05f8de74e19d570217fe83f0734623ddb0c",
-   "sha256": "1qddy3b3fmxgkpl10p0hvmgrzhkrxyxg72sxxg5ndfwvjpf2rf91"
+   "commit": "fc84f4a333d47ca853842570cf35e659753a3ebe",
+   "sha256": "14zycqky7xkmbfacmfdqbmq1qs3sj2r41nfmg09dv0hl97pavir8"
   },
   "stable": {
    "version": [
@@ -49499,10 +50131,10 @@
  },
  {
   "ename": "import-popwin",
-  "commit": "a6f0629515f36e2e98839a6894ca8c0f58862dc2",
-  "sha256": "0vkw6y09m68bvvn1wzah4gzm69z099xnqhn359xfns2ljm74bvgy",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0ax0s2jkfmjlnvj741n58m52srppzcn58l4vqq5gvmqj3dbh9rhd",
   "fetcher": "github",
-  "repo": "syohex/emacs-import-popwin",
+  "repo": "emacsorphanage/import-popwin",
   "unstable": {
    "version": [
     20170218,
@@ -49590,8 +50222,8 @@
     20200128,
     1052
    ],
-   "commit": "2976e6d9679f3578196ed7c104b4054f4a713b7e",
-   "sha256": "0ggnlvarpy49cp98970jla34khknj7xlkkg4r74hrywa9kk7j0hk"
+   "commit": "9548f14e7f0f7220d6cd1b8e88756b89fc57c471",
+   "sha256": "1hmrg1pyzcldqh858j3zpb6y0ap4x6142m56pas0lyh65d2wzggk"
   },
   "stable": {
    "version": [
@@ -49825,11 +50457,11 @@
   "repo": "nonsequitur/inf-ruby",
   "unstable": {
    "version": [
-    20200303,
-    1736
+    20200327,
+    1418
    ],
-   "commit": "e4ae089218bda49eb87beb2ca3593260e2fa3748",
-   "sha256": "1a3r1piljsrn2sbzkqjl6ffgygx6xjh6c7a7p85br84kq2ca4mfq"
+   "commit": "41e5ed3a886fca56990486f1987bb3bae0dbd54b",
+   "sha256": "12qgd2p664rh0ks5kq6sxaqi5nlmxrzj5p0kpqrx40caicj6jfpl"
   },
   "stable": {
    "version": [
@@ -49950,11 +50582,11 @@
   "repo": "oitofelix/info-rename-buffer",
   "unstable": {
    "version": [
-    20191005,
-    2346
+    20200328,
+    1450
    ],
-   "commit": "c983ae687481f39b8fd0d4ee9d85fd82b6a4ba03",
-   "sha256": "068flcy4rdzwjpzqqlxpcpcqjxd5f11xq00g55ph17vzxf4iwk3c"
+   "commit": "87fb263b18717538fd04878e3358e1e720415db8",
+   "sha256": "07ylrbl9i2d09nspj481hkgcq9vs4ikvl86sfj7594zzdyy6b8qx"
   }
  },
  {
@@ -50027,20 +50659,20 @@
   "repo": "zonuexe/init-open-recentf.el",
   "unstable": {
    "version": [
-    20161206,
-    1445
+    20200321,
+    737
    ],
-   "commit": "7d8fb124806291f7f6ef2ec3a664ea25899b6d68",
-   "sha256": "0vswa7304s7m6cirbaky9rmrxjb2aylvif2vg2p6l274k37c4jyh"
+   "commit": "369304d6adb6875948c4534419c4f303ac23c4f6",
+   "sha256": "1i41xcjj0kdhn7m29jb5gq2j2cyxn424y4lwx6s3fjj1ckx808ii"
   },
   "stable": {
    "version": [
     0,
-    0,
-    3
+    2,
+    1
    ],
-   "commit": "a4f5338a14302d44fa5aebb1ddc7aff3dc9abbe3",
-   "sha256": "0iph5cpz2dva1rnvp5xynmkndny87z308pziadk1qgf05mc0i61d"
+   "commit": "369304d6adb6875948c4534419c4f303ac23c4f6",
+   "sha256": "1i41xcjj0kdhn7m29jb5gq2j2cyxn424y4lwx6s3fjj1ckx808ii"
   }
  },
  {
@@ -50166,11 +50798,11 @@
   "url": "https://git.sr.ht/~zge/kaomoji",
   "unstable": {
    "version": [
-    20200102,
-    1942
+    20200325,
+    2248
    ],
-   "commit": "0c52e1266e61131ca0c8bd0f2092aad7b6d44ed9",
-   "sha256": "01sqc1cg89flxzhav9bgr733840xgqxy1i4sphfhd96c05yj287z"
+   "commit": "b943fe73327acc08dcd431eb8168a01609b9ab76",
+   "sha256": "13fk3b80gmgmr0d5296csvjfyjdq1jdxy3iahaj5mbhb9m3ganpc"
   },
   "stable": {
    "version": [
@@ -50193,8 +50825,8 @@
     20180403,
     1214
    ],
-   "commit": "7bfea92ba1dae9d13d442e2f84f9fb6c05a0a9bd",
-   "sha256": "01f2p58qsny7p9l6vrra0i2m2g1k05p39m0bzi906zm5awx7l0rr"
+   "commit": "af5f95ff98e2432837f5aa848ba38dd626e82fce",
+   "sha256": "0rdh4bzwq60m641r41kbsgzpkx8hxl7vx82y1cf7zp8zk8la4pd8"
   },
   "stable": {
    "version": [
@@ -50462,11 +51094,14 @@
   "repo": "thierryvolpiatto/ioccur",
   "unstable": {
    "version": [
-    20130822,
-    548
+    20200326,
+    1341
+   ],
+   "deps": [
+    "cl-lib"
    ],
-   "commit": "4c0ef992a6fcd2aed62e3866d56650463108ab5a",
-   "sha256": "1rz5wf19lg1lnm0h73ynhb0vl3c99k7vpipay2f8jls24pv60bra"
+   "commit": "59350b2066d61444f93c8a51b16353e746486e4c",
+   "sha256": "1055db76008a5nkb243ciq680fg4nn5yzkdv4x8sd1mq1hrs33qh"
   }
  },
  {
@@ -50943,11 +51578,11 @@
   "repo": "abo-abo/swiper",
   "unstable": {
    "version": [
-    20200311,
-    1144
+    20200319,
+    1247
    ],
-   "commit": "8fae568daafdc79d4990ad739bac42ee230d3234",
-   "sha256": "18ppxzafz9f8dn7wwdb9vab3c91n20csvn9kjr3djkjgngz6qjd1"
+   "commit": "64f05f4735bba8b708bc12cfc2cbfb7fb7706787",
+   "sha256": "16b75jw0by1f8divymfygjbp5mikc2bjz4nqd907mdsndf8k6i8q"
   },
   "stable": {
    "version": [
@@ -51075,6 +51710,24 @@
   }
  },
  {
+  "ename": "ivy-emoji",
+  "commit": "f1121a85321a3184d1fa990ae86f5d1f3b04f145",
+  "sha256": "0sp8z7r1kffgfm4jrn5cqfi335vaynn27hs9345ybrxi3r4a3c0g",
+  "fetcher": "github",
+  "repo": "sbozzolo/ivy-emoji",
+  "unstable": {
+   "version": [
+    20200316,
+    2351
+   ],
+   "deps": [
+    "ivy"
+   ],
+   "commit": "a1b7d32048278afd9b06536a8af96f533639d146",
+   "sha256": "0h3051qq6xjc7gkl2a8if9b9ak6wnlc4gmh268s8jvi0nd8dfw2z"
+  }
+ },
+ {
   "ename": "ivy-erlang-complete",
   "commit": "ac1b9e350d3f066e4e56202ebb443134d5fc3669",
   "sha256": "00fqjgrhvcn3ibpgiy4b0sr4x9p6ym5r1rvi4rdzsw2i3nxmgf3a",
@@ -51091,8 +51744,8 @@
     "erlang",
     "ivy"
    ],
-   "commit": "7d60ed111dbfd34ab6ec1b07c06e2d16a5380b9a",
-   "sha256": "0z34ljmwr0hmkaq5z85p87vljywpv3nnsvhp1zc8cw4hvqarcjqg"
+   "commit": "c443dba0c466d36bef01a8985474f5da0a5a65fe",
+   "sha256": "0f0qr6h4y891lzlfi3k0a555qg0jw79fl9bfgv5fxi06m24q4683"
   },
   "stable": {
    "version": [
@@ -51243,8 +51896,8 @@
     "hydra",
     "ivy"
    ],
-   "commit": "8fae568daafdc79d4990ad739bac42ee230d3234",
-   "sha256": "18ppxzafz9f8dn7wwdb9vab3c91n20csvn9kjr3djkjgngz6qjd1"
+   "commit": "64f05f4735bba8b708bc12cfc2cbfb7fb7706787",
+   "sha256": "16b75jw0by1f8divymfygjbp5mikc2bjz4nqd907mdsndf8k6i8q"
   },
   "stable": {
    "version": [
@@ -51434,8 +52087,8 @@
     "ivy",
     "prescient"
    ],
-   "commit": "7fd8c3b8028da4733434940c4aac1209281bef58",
-   "sha256": "1igsjdkxax2lavglc03h0dk3d7fpgqvlymnhyxx738sjyfzl09cr"
+   "commit": "a194852e8022762843052e58a9d0fbdaa1df0fe5",
+   "sha256": "0da4s32fza42vdiqhh7cdim08by5i4909q93ivxkmgrmqfgdvz0p"
   },
   "stable": {
    "version": [
@@ -51489,26 +52142,26 @@
   "repo": "Yevgnen/ivy-rich",
   "unstable": {
    "version": [
-    20200308,
-    331
+    20200322,
+    1326
    ],
    "deps": [
     "ivy"
    ],
-   "commit": "0f22aff4c7d7d01bb11561578f5fcd7a2eaa7058",
-   "sha256": "0d8q58k5j0vzq8m2z7kc597ks93hq1x98svjkqzlvnak241yzkim"
+   "commit": "596874d1469667f896b83731914d7d4456025553",
+   "sha256": "0yym3l24zzn1yjg3fjkq7lpvpp9w7wi2vl161v53pmg1v94xig6s"
   },
   "stable": {
    "version": [
     0,
     1,
-    5
+    6
    ],
    "deps": [
     "ivy"
    ],
-   "commit": "d2e64aee221228e27e670f6b1c051052cea33ea6",
-   "sha256": "1g45pk1w5vcrrlv7d7yz4qdk26v31a8ik2zkzk323bqwzc2safhi"
+   "commit": "840e13314774a40b69f10f0a15ce1d6af4187b12",
+   "sha256": "1ra18v6lgz3m6asm6d5b92zn1x22yiz4cwxd9b54dnvwi11121m7"
   }
  },
  {
@@ -51550,14 +52203,14 @@
   "repo": "Kungsgeten/ivy-todo",
   "unstable": {
    "version": [
-    20171208,
-    1609
+    20200323,
+    2005
    ],
    "deps": [
     "ivy"
    ],
-   "commit": "964e347cea1a6097854d7113f5b07f6c5ef81df0",
-   "sha256": "07208qdk1a77dgh9qmpn164x5mgkzvprsdvb7y35ax12r2q541b8"
+   "commit": "d74501cd334b7d709659946c5e02b21cfd5507de",
+   "sha256": "0j9cdzr5s7zi6qf4cax8bc2jrprgaz85mfvc9cx52ryd3yn8l6g0"
   }
  },
  {
@@ -51793,11 +52446,11 @@
   "url": "https://bitbucket.org/sbarbit/jack-connect",
   "unstable": {
    "version": [
-    20191125,
-    1321
+    20200325,
+    1639
    ],
-   "commit": "e951217ee3ea0ac6b9ed9a209305ef9a72ec019a",
-   "sha256": "03dklv7daxlqzmv8dq9whc07ia0fihy988gfgdr006pfy2x6mnq7"
+   "commit": "c227d1ed3016960c8666a60e4215bbb029436bc7",
+   "sha256": "1w66dpn0cmdqwgjd1528cd2739ijxhsr62zyx2arlr9ldrnqy5f6"
   }
  },
  {
@@ -52346,8 +52999,8 @@
   "repo": "emiller88/emacs-jest",
   "unstable": {
    "version": [
-    20200223,
-    28
+    20200318,
+    237
    ],
    "deps": [
     "cl-lib",
@@ -52358,8 +53011,23 @@
     "projectile",
     "s"
    ],
-   "commit": "777cca00f8fdb93226225b16b48eb955493243c5",
-   "sha256": "0292bhkc98pbj6lchfkx9i6zyllab2h60cly07ck71glq96kfx3c"
+   "commit": "b51be19c1de9e82ee1dc62921be2222fc5685eed",
+   "sha256": "1jdphlhp9vxvkj51cswqfgka910216snyjhql700x4dgpmvkcv56"
+  }
+ },
+ {
+  "ename": "jest-test-mode",
+  "commit": "767499b7048cc0f1e47dff17f66f1e2fe8b023b5",
+  "sha256": "09vwidm49bw8kb4a9vax4rgbzk1ndg0fkdaj9k9sy973rapb213a",
+  "fetcher": "github",
+  "repo": "rymndhng/jest-test-mode",
+  "unstable": {
+   "version": [
+    20200329,
+    506
+   ],
+   "commit": "f04d08db36715d7509fd68448f74f917c6c1a382",
+   "sha256": "1pmzls19wpg60ql0b5l6rhml8hh8mzpbc0dgylzhps1jghi055s1"
   }
  },
  {
@@ -52595,11 +53263,11 @@
   "repo": "ljos/jq-mode",
   "unstable": {
    "version": [
-    20200312,
-    1315
+    20200317,
+    852
    ],
-   "commit": "b1a4137b30c3d50feb70eb00d8d2e41fa999763c",
-   "sha256": "0bdwfn3frq00sb14fmrsll9jg2p446gg4z7w0czmfqfay6av0hla"
+   "commit": "bc904840f27fe7b0e6dbdaeb912a7175a3837110",
+   "sha256": "0w5cgys1yfhirhsvj4n5k6km2xwyqvlnbv0m0sim1vavizzfmda4"
   },
   "stable": {
    "version": [
@@ -52769,14 +53437,14 @@
   "repo": "sooqua/js-react-redux-yasnippets",
   "unstable": {
    "version": [
-    20190911,
-    1259
+    20200316,
+    1144
    ],
    "deps": [
     "yasnippet"
    ],
-   "commit": "70785d126a28ffcb314fb4b354319418586e06b1",
-   "sha256": "0adlnjkcq0kpadc1dqwfzrrk0xd4jc0rc4k8hbj6nh4dhc7shnk0"
+   "commit": "9f509043f01fa59bff4daf31b2e95d63f8deab4a",
+   "sha256": "00icd76y7sp3cby6n1mkxma4h6aqkrq6cqsnbqrpsgq99qqy30my"
   }
  },
  {
@@ -53249,11 +53917,11 @@
   "repo": "JuliaEditorSupport/julia-emacs",
   "unstable": {
    "version": [
-    20200310,
-    1429
+    20200324,
+    1652
    ],
-   "commit": "b800403fada2b83bc98d6006cfd370e0cfd7876f",
-   "sha256": "1ay4wm303qh48h6g75di66w2f2smg5dnlqv40dgx4nhkyi68wrvg"
+   "commit": "1c122f1dff8dd2674245b2ce5e43b62504864bfd",
+   "sha256": "1ki42xx7vws8hb5vr1rgm2aih4qadf9qva8c4zq1hzmzq5j74jry"
   },
   "stable": {
    "version": [
@@ -53317,8 +53985,8 @@
   "repo": "gcv/julia-snail",
   "unstable": {
    "version": [
-    20200315,
-    529
+    20200327,
+    602
    ],
    "deps": [
     "cl-lib",
@@ -53329,8 +53997,8 @@
     "spinner",
     "vterm"
    ],
-   "commit": "13ddf77079d07326291a1f9ea87d33521d49537d",
-   "sha256": "18p9wm27yhpxa1cai79abiawh9arwn523lk4iy26rbpp0h64vy6f"
+   "commit": "c293f0db0203708e49139cb3b32e5826056ef972",
+   "sha256": "1fyw36c5f70j53jl03yk79pgr0x4q89mwyb77n9xcbscdhaxv3s2"
   },
   "stable": {
    "version": [
@@ -53338,7 +54006,7 @@
     0,
     0,
     -2,
-    5
+    6
    ],
    "deps": [
     "cl-lib",
@@ -53349,8 +54017,8 @@
     "spinner",
     "vterm"
    ],
-   "commit": "a614471cad3a133a00f77a7855407d506d94ce65",
-   "sha256": "01wdly6l0xkzqmqab529mhjc7mnijpv3f78cjnx0w0ak13srva93"
+   "commit": "596f59774edf213c4c4885992dda158de145be03",
+   "sha256": "0x8mlvq264ihhcdbkljhaij6hsvlh8s4fmrd8x970c7i3qi3hh7k"
   }
  },
  {
@@ -53485,8 +54153,8 @@
   "repo": "dzop/emacs-jupyter",
   "unstable": {
    "version": [
-    20200314,
-    1939
+    20200329,
+    828
    ],
    "deps": [
     "cl-lib",
@@ -53494,8 +54162,8 @@
     "websocket",
     "zmq"
    ],
-   "commit": "045f2b8b429fd6dc3ecb4f7baf2bd3012e0887b0",
-   "sha256": "0v78ara8277k92w4qirvk4fh6ljvzp75gfllcag57kzljfvxm17p"
+   "commit": "b691d38483b6540d42d482a32d35eb54178e5658",
+   "sha256": "1lp6xg71snlsaffl7afrgjcs99l2axc5xrbkrncc50zjhxlimxrr"
   },
   "stable": {
    "version": [
@@ -53812,15 +54480,15 @@
   "repo": "ogdenwebb/emacs-kaolin-themes",
   "unstable": {
    "version": [
-    20200314,
-    1600
+    20200324,
+    1349
    ],
    "deps": [
     "autothemer",
     "cl-lib"
    ],
-   "commit": "a523c0a535b8022bfe63aeb592a5c8a744d60d4d",
-   "sha256": "0ai28v2dcdz31qa1hdg4i21pklfx59zglwampwlnjlakmrra879g"
+   "commit": "9877c12ad412e79b3d88423f911be1ff59a72e0e",
+   "sha256": "079si7dhl45rx2vf8kf8srflk6nd6yxqz44xbsrh0s39gpp9v5dh"
   },
   "stable": {
    "version": [
@@ -54518,8 +55186,8 @@
     20180702,
     2029
    ],
-   "commit": "84e7bceb79e0324e0150f7f92421f2b7799d1d58",
-   "sha256": "17z8cw6b8pff8kqr62w5hvzajfv7w8l8jwbwnxic9m5aqcvxs8k6"
+   "commit": "26228b202e821824afd8b2536234b26c23ae1b9d",
+   "sha256": "1329xyhriha7037lnsg8bf4xqkc20f0h3bv7xifm2i40ib0z3wlx"
   },
   "stable": {
    "version": [
@@ -54806,16 +55474,16 @@
   "repo": "abrochard/kubel",
   "unstable": {
    "version": [
-    20200314,
-    1655
+    20200316,
+    207
    ],
    "deps": [
     "dash",
     "s",
     "transient"
    ],
-   "commit": "5f8fefa60d17a11f00d1652ef5278b2fc11da136",
-   "sha256": "055x4cv843k2lk1rwy2dbq42cn1cvcpgcyhs88gh9vhb0wvp5jwf"
+   "commit": "db3a999c028ffeeeb49936e8b921c364bf8f437e",
+   "sha256": "1ai33jma22agrxww6dcgsh6dbv5h36gixgs0b6n1q4d5v7k6d9q3"
   },
   "stable": {
    "version": [
@@ -54841,8 +55509,8 @@
     "evil",
     "kubel"
    ],
-   "commit": "5f8fefa60d17a11f00d1652ef5278b2fc11da136",
-   "sha256": "055x4cv843k2lk1rwy2dbq42cn1cvcpgcyhs88gh9vhb0wvp5jwf"
+   "commit": "db3a999c028ffeeeb49936e8b921c364bf8f437e",
+   "sha256": "1ai33jma22agrxww6dcgsh6dbv5h36gixgs0b6n1q4d5v7k6d9q3"
   },
   "stable": {
    "version": [
@@ -55177,25 +55845,26 @@
   "repo": "lassik/emacs-language-id",
   "unstable": {
    "version": [
-    20200214,
-    2254
+    20200321,
+    724
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "dc18099dd74a954601ab425ef6cfd3ed32003023",
-   "sha256": "1mwkv4cyz8n8vm9jf7nw980j0ig487ch37ayx356nvvznnrfnm5s"
+   "commit": "756f238b4fda63f6e0980f627869eb3c03d13f66",
+   "sha256": "18i1l7vpfa0y5zpy9hbcrkp79n30n7pkf0kasq718cj8ggczj120"
   },
   "stable": {
    "version": [
     0,
-    4
+    4,
+    2
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "dc18099dd74a954601ab425ef6cfd3ed32003023",
-   "sha256": "1mwkv4cyz8n8vm9jf7nw980j0ig487ch37ayx356nvvznnrfnm5s"
+   "commit": "2c7b8599fc7fb56b0c820a9ae9f08053c71a8738",
+   "sha256": "10vrx3vfg8glrqngbyhwgkg5maib8ihv03psdd6qjhd0kik83498"
   }
  },
  {
@@ -55206,8 +55875,8 @@
   "repo": "mihaiolteanu/lastfm.el",
   "unstable": {
    "version": [
-    20200207,
-    1316
+    20200320,
+    1839
    ],
    "deps": [
     "anaphora",
@@ -55216,13 +55885,13 @@
     "request",
     "s"
    ],
-   "commit": "cff7699343467b36ff3dad90061b567025ff9b23",
-   "sha256": "1jk400xh07pnwzab23xwsiyv9j0f4b8fl0v6w712vsn2n1ab88gm"
+   "commit": "54636059512adec0176950e8fce3b9bf7423619d",
+   "sha256": "1ffvh71vgsdv118hhz0x2xfmqb2bayk7i3mdxc1ybs2vrdggnim4"
   },
   "stable": {
    "version": [
     1,
-    0
+    2
    ],
    "deps": [
     "anaphora",
@@ -55231,8 +55900,8 @@
     "request",
     "s"
    ],
-   "commit": "c2b39d2fa4fb7f56e4aacb0a50ed2aa509ab992c",
-   "sha256": "09k8p5bpl7f4dgkvvx4gf91pgyc5ikm6kynkjhdwrsnpnnl2cc9b"
+   "commit": "96568f07324ba32804be9352016956694923f5f3",
+   "sha256": "04a563g6rby8374azpfjdagbgdylcg2glfx5wdx5agd98bs15j28"
   }
  },
  {
@@ -55243,15 +55912,15 @@
   "repo": "storvik/emacs-lastpass",
   "unstable": {
    "version": [
-    20191102,
-    611
+    20200320,
+    2117
    ],
    "deps": [
     "cl-lib",
     "seq"
    ],
-   "commit": "e07b1a062153b9d56d0112ac45caf76d6bce67c5",
-   "sha256": "0pz5svbs7jp7zcjl7p5pbfxqh6xzh48dzz3swkywms9hfh2ynqzp"
+   "commit": "ac472f844bd1e109c62479253cbc40bb5e50ed8f",
+   "sha256": "07bh7vkczzpmkbxxyyhn912b5rjm975a49y1bq08y4vd006zsq4x"
   }
  },
  {
@@ -55452,8 +56121,8 @@
    "deps": [
     "colorless-themes"
    ],
-   "commit": "a7b7c0a32b174988f40378996cd8997f73524f19",
-   "sha256": "0khsf4xz0wjn774hy08pxafm79j55ns28q25pfzyj9s07hi4r0vz"
+   "commit": "2b4c341640c8191a39e4bc28d6cd04c7d6dcbb37",
+   "sha256": "0ni9cnrv464fk840i1ll241kzkiy1zc6nfrbdv3ciixxdxbshxbn"
   },
   "stable": {
    "version": [
@@ -55528,11 +56197,11 @@
   "repo": "conao3/leaf.el",
   "unstable": {
    "version": [
-    20200225,
-    1023
+    20200327,
+    1411
    ],
-   "commit": "0179836fcc8ef613d6f9d7fa509a79a8fbf8db22",
-   "sha256": "0r5crz2n0q8xrh840gp3m8gy647i0khvwzj9pc3w5y9xkw7ca7vh"
+   "commit": "199045bfe411afc30cb7c7d18b8a6b03edebeae1",
+   "sha256": "0apaa5w2zfycigdf8d7x3h8aw8m11mz8b6l2d546dlbvxr5yra28"
   },
   "stable": {
    "version": [
@@ -55552,14 +56221,14 @@
   "repo": "conao3/leaf-keywords.el",
   "unstable": {
    "version": [
-    20200214,
-    1749
+    20200328,
+    845
    ],
    "deps": [
     "leaf"
    ],
-   "commit": "138af8613feded5eaeda84ffaff2621e62c2e0fe",
-   "sha256": "03jvjmr6ki28ngdc0j7sjj14qyzd730jxp8gdcajjln76ni5cayy"
+   "commit": "3164f1f4b98be9efa9e28170cc9b8d14a10b3e56",
+   "sha256": "165x864rn9ha8dd3k62xgdp97fi961x75p6a7nldl0znzan65691"
   },
   "stable": {
    "version": [
@@ -55579,8 +56248,8 @@
   "repo": "leanprover/lean-mode",
   "unstable": {
    "version": [
-    20200211,
-    2010
+    20200319,
+    838
    ],
    "deps": [
     "dash",
@@ -55589,8 +56258,8 @@
     "flycheck",
     "s"
    ],
-   "commit": "c9dffcda2951c22c483d1d22411d13bc132ce609",
-   "sha256": "1lj6j21hzya41fmlnw7faqmhvsdcgcidwibyvicgsb0gm6qqipjf"
+   "commit": "65b55b1711fb61129312044d5ac7e6a2c2ee245c",
+   "sha256": "1zmw8950qhry2ixk2ng0pg4j0vwx11nvjlrpab9jg6x47ys9j65n"
   }
  },
  {
@@ -55686,11 +56355,11 @@
   "repo": "ledger/ledger-mode",
   "unstable": {
    "version": [
-    20200312,
-    2023
+    20200328,
+    1927
    ],
-   "commit": "0ec6c5a74d636b9ec649c1cae26acecf84d1a830",
-   "sha256": "147k8l9mmkq6hhyh9dhqi7cv3l3s2sk0qbqlbx0y4plzbi1v0yay"
+   "commit": "bfa25a92d0cf63c5316b5aa8d50bd6809297ea9e",
+   "sha256": "1gx9brcwdmwhk0w2p93szdla5bgn25f1bsi9lna2l8ax1sn3l5kd"
   },
   "stable": {
    "version": [
@@ -55927,8 +56596,8 @@
     20200122,
     1934
    ],
-   "commit": "dccd751682a0954165c7f2c08414bea0168a9a9f",
-   "sha256": "12njc6pmbadwn71h811alr4rpsmw1b48b3jjmxpy3s51ja44vcc4"
+   "commit": "4bf80c2bb1e679b6e42e8d6547d6f33996830f73",
+   "sha256": "152731dwf0q1i1p5cjd3fwznl100vzsjk45ks1wxw4zv0w59q399"
   }
  },
  {
@@ -56446,8 +57115,8 @@
   "repo": "abo-abo/lispy",
   "unstable": {
    "version": [
-    20200305,
-    1858
+    20200323,
+    1616
    ],
    "deps": [
     "ace-window",
@@ -56456,8 +57125,8 @@
     "iedit",
     "zoutline"
    ],
-   "commit": "c7e282ae06f654bf985466ae05dedc4efc87144d",
-   "sha256": "1gw03xwjwvgvp1m2nl3wmz3y6d2q6xqpawpdfw95kn4rpw1lsh4w"
+   "commit": "b07ab5d8374c75bd1401b320fda17486325bc96d",
+   "sha256": "0gknqazf8pihn903518a5hmy5ggqmmq40rxz4kq2nfblpm6s5zkz"
   },
   "stable": {
    "version": [
@@ -56741,10 +57410,10 @@
  },
  {
   "ename": "literate-coffee-mode",
-  "commit": "855ea20024b606314f8590129259747cac0bcc97",
-  "sha256": "18fdgay7xfgza75z3xma666f414m9dn7d50w94wzzmv7ja74sp64",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "00zd5i6wpn95sslz0gd7m1h1fw7w07swszfqwaphkbqfwckgll6m",
   "fetcher": "github",
-  "repo": "syohex/emacs-literate-coffee-mode",
+  "repo": "emacsorphanage/literate-coffee-mode",
   "unstable": {
    "version": [
     20170211,
@@ -56776,14 +57445,14 @@
   "repo": "jingtaozf/literate-elisp",
   "unstable": {
    "version": [
-    20191012,
-    606
+    20200327,
+    620
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "3bd795288db8dcd3edf5b33ca8fc213fe16c62d5",
-   "sha256": "0in5cryj1abcg6850lxx8qqhxvdij54jmm4ip9ra2kwz55smq4ky"
+   "commit": "732d649136051a4b6d43c2fabeb5233c3e5f16d7",
+   "sha256": "1d4p6s9dj5368ywfpp46pysxvcqwsiacih3n1hia9c4y7p0xx4cz"
   },
   "stable": {
    "version": [
@@ -56867,11 +57536,11 @@
   "repo": "donkirkby/live-py-plugin",
   "unstable": {
    "version": [
-    20200221,
-    611
+    20200329,
+    2216
    ],
-   "commit": "b4ede4811d82063b1439bbc0523587c993bcb17e",
-   "sha256": "10j4ih5vp3bic2hjqwvd90sr1dbza9k2490l6k7m0sfy1pqlqy07"
+   "commit": "18587cf78fa22d61a7365238da852be4a55c0656",
+   "sha256": "0141svf43miy1xyfc4wi3lrv0jyx97qbg9yhnxwlxz5i6gdrnyza"
   },
   "stable": {
    "version": [
@@ -57287,6 +57956,21 @@
   }
  },
  {
+  "ename": "lol-data-dragon",
+  "commit": "c54747f74db0d3c270682c8994e3babdac9d36c4",
+  "sha256": "18aydjkv331gkbsyxgvrrlw37v2m2g65alz82287nwjswgns4pia",
+  "fetcher": "github",
+  "repo": "xuchunyang/lol-data-dragon.el",
+  "unstable": {
+   "version": [
+    20200321,
+    2142
+   ],
+   "commit": "6f53bb3971daad60bd0529d1e3889d5f9fedf235",
+   "sha256": "0xblv8l6krp3581m0xava95pm6wcsjm3rsl47dsvzpgns1kyz8lx"
+  }
+ },
+ {
   "ename": "lolcat",
   "commit": "38e720f524b23b5742764186a695d143f983e179",
   "sha256": "044y0s1wiwjwfw58nhx5zvrli527nim3d81dix2h60d8qwx0566a",
@@ -57417,6 +58101,25 @@
   }
  },
  {
+  "ename": "lsp-docker",
+  "commit": "f592ec9b1d6a05e1e115d4b313be108c8e47ee67",
+  "sha256": "1xmkwhgkcsf52hngb811n2q7q4rav75wwjz7zin6x17vfv8hqifx",
+  "fetcher": "github",
+  "repo": "emacs-lsp/lsp-docker",
+  "unstable": {
+   "version": [
+    20200222,
+    505
+   ],
+   "deps": [
+    "dash",
+    "lsp-mode"
+   ],
+   "commit": "f46e56e554c9207d5ab5b9aebf994df8b41955f3",
+   "sha256": "1281qrskwwjz3x3mi99a6sp9694wbd08myhy0nlba6493ip8wbhz"
+  }
+ },
+ {
   "ename": "lsp-elixir",
   "commit": "c875a05e68d09ecf37f7e13149f2624c70164ea3",
   "sha256": "0mimb67swcq2yis0s6w2bkk7sgqv7lyvz1hrh48h2q6qr3ywmq0n",
@@ -57479,16 +58182,16 @@
   "repo": "emacs-lsp/lsp-ivy",
   "unstable": {
    "version": [
-    20191028,
-    902
+    20200327,
+    1007
    ],
    "deps": [
     "dash",
     "ivy",
     "lsp-mode"
    ],
-   "commit": "78c1429c62c19006058b89d462657e1448d1e595",
-   "sha256": "1bry1vsv6p2h4qrzx8aq7bsqfw12w3v5gz548dwkdk2cwmhsmi3d"
+   "commit": "39b90e7aef755b6e7756f2ae306d66b01cb4d18d",
+   "sha256": "1nss84rzpa1lwxx9sr28nsq1p6z82ifs7n7dh4zl6xm7rl7cr9pz"
   }
  },
  {
@@ -57499,8 +58202,8 @@
   "repo": "emacs-lsp/lsp-java",
   "unstable": {
    "version": [
-    20200114,
-    2313
+    20200327,
+    2019
    ],
    "deps": [
     "dash",
@@ -57512,8 +58215,8 @@
     "request",
     "treemacs"
    ],
-   "commit": "0cea6fd5e7b163766ddf47380d655771c1b070e5",
-   "sha256": "17d5xf2dzy1lnxm6cip0gmzrw37xv362fakn05nhkq5ygl7bhpz6"
+   "commit": "5c6953441916c1e2e76ab0c41384ea6f57a18a5e",
+   "sha256": "13070b986jg1xd8chbr6am8915zg8wjk8mn9zlmn0d9k45zw1gsv"
   },
   "stable": {
    "version": [
@@ -57592,8 +58295,8 @@
   "repo": "emacs-lsp/lsp-mode",
   "unstable": {
    "version": [
-    20200315,
-    950
+    20200329,
+    1431
    ],
    "deps": [
     "dash",
@@ -57604,8 +58307,8 @@
     "markdown-mode",
     "spinner"
    ],
-   "commit": "6113e321b107915375e7f3fa8e9f85242f7fc874",
-   "sha256": "1vkicqf7p9dkp526svkk331pvb51zq1m26jbdvqvcs17zv8si3xr"
+   "commit": "9835e93f5526110bdeb164e42d8da16c1e39feb7",
+   "sha256": "0vd0vdbhfv31r63cygg40bzfj2v66k3zqd66hmkfzghhjl9d4q9f"
   },
   "stable": {
    "version": [
@@ -57853,7 +58556,7 @@
     1434
    ],
    "commit": "1f596a93b3f1caadd7bba01030f8c179b029600b",
-   "sha256": "0fdnkv37m7nf8yjjf01c856g2wrzyzqicv67fnbrnx7abrrfb1nd"
+   "sha256": "0swnan2v2lc7s1jsnmkyzv7gajx08akgm6dvbsgm5hzp0mjbbpy4"
   },
   "stable": {
    "version": [
@@ -57970,26 +58673,26 @@
   "repo": "montag451/lxc-tramp",
   "unstable": {
    "version": [
-    20180523,
-    2024
+    20200321,
+    1815
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "1aab85fef50df2067902bff13e1bac5e6366908b",
-   "sha256": "066qwyk38r42xriifg1ik2f0am0m57wlfrk5278sycr8vbag6fc9"
+   "commit": "ad03a98386d4cdb0df3eb323ecaab8fe6d0942c6",
+   "sha256": "1x43na4m7krkhhsvvync9k0rk4lxdakl52n43aafyx43zgv5zk8y"
   },
   "stable": {
    "version": [
     0,
-    1,
+    2,
     0
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "17fc5962e7c27ac4f0bcc4ed7312dd5709063341",
-   "sha256": "03h6aw98mbwwqj08bzpg147hanx97r8fr8jv790zw7iqqjp46hsm"
+   "commit": "ad03a98386d4cdb0df3eb323ecaab8fe6d0942c6",
+   "sha256": "1x43na4m7krkhhsvvync9k0rk4lxdakl52n43aafyx43zgv5zk8y"
   }
  },
  {
@@ -58270,8 +58973,8 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20200313,
-    1657
+    20200318,
+    1224
    ],
    "deps": [
     "async",
@@ -58280,8 +58983,8 @@
     "transient",
     "with-editor"
    ],
-   "commit": "e293416cee73dc47a6dc7f0bc2f4624d69625634",
-   "sha256": "0kshzx82ics43x6z8i7wcl5866li8ai05mzkri14l6jrcarz9fjz"
+   "commit": "236c44518d30c43c7035be32f02ba615d148b5ef",
+   "sha256": "0fbcx8qfymvd1i96a21gzsd4882qz6xlgccvba0dam8h9aninqf6"
   },
   "stable": {
    "version": [
@@ -58608,8 +59311,8 @@
     "libgit",
     "magit"
    ],
-   "commit": "e293416cee73dc47a6dc7f0bc2f4624d69625634",
-   "sha256": "0kshzx82ics43x6z8i7wcl5866li8ai05mzkri14l6jrcarz9fjz"
+   "commit": "236c44518d30c43c7035be32f02ba615d148b5ef",
+   "sha256": "0fbcx8qfymvd1i96a21gzsd4882qz6xlgccvba0dam8h9aninqf6"
   }
  },
  {
@@ -58757,14 +59460,14 @@
   "repo": "magit/magit",
   "unstable": {
    "version": [
-    20200313,
-    314
+    20200318,
+    1224
    ],
    "deps": [
     "dash"
    ],
-   "commit": "e293416cee73dc47a6dc7f0bc2f4624d69625634",
-   "sha256": "0kshzx82ics43x6z8i7wcl5866li8ai05mzkri14l6jrcarz9fjz"
+   "commit": "236c44518d30c43c7035be32f02ba615d148b5ef",
+   "sha256": "0fbcx8qfymvd1i96a21gzsd4882qz6xlgccvba0dam8h9aninqf6"
   },
   "stable": {
    "version": [
@@ -59004,8 +59707,8 @@
  },
  {
   "ename": "magma-mode",
-  "commit": "59764a0aab7c3f32b5a872a3d10a7e144f273a7e",
-  "sha256": "1gq6yi51h1h7ivrm1xr6nfrpabx8ylbk0waaw04gnw3bb54dmmvc",
+  "commit": "0a82892371eb390d8a802919458c6c2baacd1597",
+  "sha256": "134zm9mg7p0qcqr0m7wsxnwqxr64s9z1njxmvjhsbxi3rhaivcsl",
   "fetcher": "github",
   "repo": "ThibautVerron/magma-mode",
   "unstable": {
@@ -59354,8 +60057,8 @@
    "deps": [
     "manage-minor-mode"
    ],
-   "commit": "e68d979a8a508a86a35eb37a0282d53c1159dfb1",
-   "sha256": "1a10fyqfakrr1a9bp53l1h9m77jn92k6gqpxdldnjjjnv5xfkra4"
+   "commit": "cd126cbeb2e99c8d00b48310938a85448ebc2e1a",
+   "sha256": "1lk2rmv0qhzfyg57h461qdxgqciwqjggipl9i146m9bpjp7bjjvx"
   },
   "stable": {
    "version": [
@@ -60516,8 +61219,8 @@
     20191025,
     851
    ],
-   "commit": "a3eb8ce9a52d48cb521eb2c01297fd224ccf25ee",
-   "sha256": "0i8nxaqb2icw0arbjin23p1ah6p9v4dbvrdr7sak3fm7hxv1v7yi"
+   "commit": "37e38e44f57fa2caac5ed8a1268e747a42174c85",
+   "sha256": "1r73dy1wyrdclcnp9dpk7r463fwkh2ybi31q1mmxym1xwvkg5ahl"
   },
   "stable": {
    "version": [
@@ -60566,14 +61269,14 @@
   "repo": "abrochard/mermaid-mode",
   "unstable": {
    "version": [
-    20200221,
-    1938
+    20200320,
+    1357
    ],
    "deps": [
     "f"
    ],
-   "commit": "833abce1fb232b7dbeac0ee568afe8c468077029",
-   "sha256": "0znc9sv5xv0bqq4szcaz6nlxypijqm5lmi0igkcpibry6bwfipgj"
+   "commit": "a5b16bc4308e2a520711c2ef8a964e269115cbf7",
+   "sha256": "150a69rn0wkfb0bmyx21vywh7vcd5a3yfi7i9jgp8zf8hfclsymg"
   }
  },
  {
@@ -60694,8 +61397,8 @@
     20191018,
     242
    ],
-   "commit": "0177fc4e7edd705db59b82c83a24db51dc405890",
-   "sha256": "1whl7kz4im2jmdz99336wfn152q0l3qwii4w7sn45rlsm2sijiw1"
+   "commit": "821ed77f0982dfeb1df50380931d53e6b7b7036f",
+   "sha256": "16hrnfz4jp5a672rvgk6ky9xfzvgxx73p5l96wh3x9294vyjd4vi"
   },
   "stable": {
    "version": [
@@ -60748,11 +61451,11 @@
   "repo": "kazu-yamamoto/Mew",
   "unstable": {
    "version": [
-    20200130,
-    145
+    20200316,
+    221
    ],
-   "commit": "bdafb13aadeae6af73dadd9f6b383ea6903da32f",
-   "sha256": "09k9bkwf6hz8jnklsm30w79v3vkwsf5nd97cxfmi44j7wlb6kkr1"
+   "commit": "5145145f87bfbe80fd91e82ded33033cf78ef54f",
+   "sha256": "0wdbgh3bady6xad0gnlg3irds5vdffl8d39raqayzgn17yb98pcf"
   },
   "stable": {
    "version": [
@@ -60796,8 +61499,8 @@
     "projectile",
     "s"
    ],
-   "commit": "4501d996767caa9bc9592105113c9743b20b7bc0",
-   "sha256": "1xz5yzgjz2i3bdv6vqij527z5hxxsmm4ga033rdyphfip8ls55ji"
+   "commit": "5eb0423d4b7083cb330a73ef1cfd3e0dd8538567",
+   "sha256": "0vk2d59jvzhdm47w4kcn58njps444i0350lp5z7dnzhaag10dwc0"
   },
   "stable": {
    "version": [
@@ -61001,6 +61704,21 @@
   }
  },
  {
+  "ename": "mini-frame",
+  "commit": "2a10ea61ac4a3c8fa800f4107f256fa3ac5907f2",
+  "sha256": "06zv8qmbvzqzinmb5zcd40a43kmmq7mby6dgacpq81cg5azyfkr7",
+  "fetcher": "github",
+  "repo": "muffinmad/emacs-mini-frame",
+  "unstable": {
+   "version": [
+    20200327,
+    2218
+   ],
+   "commit": "30000e659b0ad2501591343b4818e5877783483b",
+   "sha256": "07b4903i3h91rjdixqsyhfclwg936n538bpiglay9r2klaa6kjp1"
+  }
+ },
+ {
   "ename": "mini-header-line",
   "commit": "122db5436ff9061713c0d3d8f44c47494067843e",
   "sha256": "1yg8i7gsmiv8zwl1wqvgrh2xl2hm5nn3q11rz4hpyxw26355i817",
@@ -61023,14 +61741,14 @@
   "repo": "kiennq/emacs-mini-modeline",
   "unstable": {
    "version": [
-    20200309,
-    413
+    20200319,
+    526
    ],
    "deps": [
     "dash"
    ],
-   "commit": "4d97bf35cf0f9d58b14d13a78172c15463820382",
-   "sha256": "0cqzqrc8wpxav08fx9n1ljpzf97hj3wdhizywj4avnyxj3g63zwi"
+   "commit": "efe3f9743004d7989ea3b82d2bc71960e990bdc0",
+   "sha256": "0wy52ixj16029xk5grh1531afdcmpfi25iacl9bhplsrivzjl7hf"
   },
   "stable": {
    "version": [
@@ -61321,20 +62039,20 @@
   "repo": "jabranham/mixed-pitch",
   "unstable": {
    "version": [
-    20200310,
-    130
+    20200321,
+    1331
    ],
-   "commit": "60907165f118648d658572c578f9fd642bd42beb",
-   "sha256": "0icflm968n89p6kayy8rxm5sll4pxqlnk5pfqq648y3zg273lfk6"
+   "commit": "734fbdf2d2c17beee151faf39bd10174a87eea5d",
+   "sha256": "1i0yd7akkyqhkd8g2g793n6syiy0mbnlq9apg7p1s4xycmwxx684"
   },
   "stable": {
    "version": [
     1,
-    0,
-    1
+    1,
+    0
    ],
-   "commit": "15bb9ec6d8be0812a46917205be6c3a1c78f68ff",
-   "sha256": "1458sy5b6bis1i0k23jdqk6hfqg0ghk637r3ajql2g19ym48rf58"
+   "commit": "734fbdf2d2c17beee151faf39bd10174a87eea5d",
+   "sha256": "1i0yd7akkyqhkd8g2g793n6syiy0mbnlq9apg7p1s4xycmwxx684"
   }
  },
  {
@@ -61356,6 +62074,21 @@
   }
  },
  {
+  "ename": "mlso-theme",
+  "commit": "2e026e2511ead77022cf8ed9d45d0d5a5aa104b9",
+  "sha256": "1abv6zhz28x5yk0rjn19wjxwvdq0ps3j2sx45n0dlbqfrqgw86d1",
+  "fetcher": "github",
+  "repo": "Mulling/mlso-theme",
+  "unstable": {
+   "version": [
+    20200329,
+    1516
+   ],
+   "commit": "a4bb7b55ce81d8dcc0ad8d92acbde309c7cc1ea0",
+   "sha256": "15fmzsf5rpgx5f1fr45j24hgzmz95zxkj1jihdb64p049ak2h5a9"
+  }
+ },
+ {
   "ename": "mmm-jinja2",
   "commit": "721b9a6f16fb8efd4d339ac7953cc07d7a234b53",
   "sha256": "0zg4psrgikb8644x3vmsns0id71ni9fcpm591zn16b4j64llvgsi",
@@ -61698,6 +62431,29 @@
   }
  },
  {
+  "ename": "modern-fringes",
+  "commit": "c765214f003426ac7a0e98c5764b14dd61ccce52",
+  "sha256": "0acp18v97k2iahbd5kp240g46wqdmrk4ddrsgvckzm0chsmjmm8q",
+  "fetcher": "github",
+  "repo": "specialbomb/emacs-modern-fringes",
+  "unstable": {
+   "version": [
+    20200321,
+    1817
+   ],
+   "commit": "108daba8407dc8acf140157e7f49137c397a0af7",
+   "sha256": "15370yw3147fzx8ly1svk7xvm0l9fg2gbzd8sx9ls93nyml7c5k7"
+  },
+  "stable": {
+   "version": [
+    4,
+    4
+   ],
+   "commit": "6884dd16e4d76dedd792f0c5fed48ca8a2f11222",
+   "sha256": "10h5557sppi41pgbbjsffc9n67h8ja28skhdlklc0n6zap71m87s"
+  }
+ },
+ {
   "ename": "modtime-skip-mode",
   "commit": "486a675ca4898f99133bc18202e123fb58af54c0",
   "sha256": "1drafwf4kqp83jp47j2ddl2n4a92zf1589fnp6c72hmjqcxv3l28",
@@ -61720,20 +62476,20 @@
   "repo": "protesilaos/modus-themes",
   "unstable": {
    "version": [
-    20200315,
-    841
+    20200330,
+    706
    ],
-   "commit": "856626de1662986d582b7d264f5415c10657463b",
-   "sha256": "1ynj2ay0r99rjxnh1fmz81gygfi5kxfgflvd1x1rb2lapb8p7k8k"
+   "commit": "cedb331001d0623eb003591b2f650b8e5e4069ed",
+   "sha256": "0nw3jlx2h9127y9b8mmyrps9jyvr33yz2dr9q33j9fll1b8wapn0"
   },
   "stable": {
    "version": [
     0,
-    6,
+    7,
     0
    ],
-   "commit": "a9d1ae86522f158eea2410571ec992775e04b284",
-   "sha256": "15z6qq0b0npp7hscmh04i3mi10bynzdy52fv2b160nji264zvcwa"
+   "commit": "cedb331001d0623eb003591b2f650b8e5e4069ed",
+   "sha256": "0nw3jlx2h9127y9b8mmyrps9jyvr33yz2dr9q33j9fll1b8wapn0"
   }
  },
  {
@@ -61744,20 +62500,20 @@
   "repo": "protesilaos/modus-themes",
   "unstable": {
    "version": [
-    20200315,
-    841
+    20200330,
+    706
    ],
-   "commit": "856626de1662986d582b7d264f5415c10657463b",
-   "sha256": "1ynj2ay0r99rjxnh1fmz81gygfi5kxfgflvd1x1rb2lapb8p7k8k"
+   "commit": "cedb331001d0623eb003591b2f650b8e5e4069ed",
+   "sha256": "0nw3jlx2h9127y9b8mmyrps9jyvr33yz2dr9q33j9fll1b8wapn0"
   },
   "stable": {
    "version": [
     0,
-    6,
+    7,
     0
    ],
-   "commit": "a9d1ae86522f158eea2410571ec992775e04b284",
-   "sha256": "15z6qq0b0npp7hscmh04i3mi10bynzdy52fv2b160nji264zvcwa"
+   "commit": "cedb331001d0623eb003591b2f650b8e5e4069ed",
+   "sha256": "0nw3jlx2h9127y9b8mmyrps9jyvr33yz2dr9q33j9fll1b8wapn0"
   }
  },
  {
@@ -61920,11 +62676,11 @@
   "repo": "belak/emacs-monokai-pro-theme",
   "unstable": {
    "version": [
-    20191115,
-    714
+    20200318,
+    830
    ],
-   "commit": "622e3a7203907978ce0d2409e3df2d65c63ce938",
-   "sha256": "08gl9wcr4xi1v8750j2bqvn0szv2iifi3y8ay9c9lscqax9knx83"
+   "commit": "90f34d48baad78a86f60eb3fae902c545bb82505",
+   "sha256": "0sjxyvv16jm2xss6kxiankn9n92z52l20p2mkv95p2bd47mxn5iw"
   }
  },
  {
@@ -61935,11 +62691,11 @@
   "repo": "oneKelvinSmith/monokai-emacs",
   "unstable": {
    "version": [
-    20190801,
-    1701
+    20200329,
+    49
    ],
-   "commit": "e407f51d34b0c30cfe9d815f80a0c3539b998b08",
-   "sha256": "0psz6z59v0fdl846vaydqrhmy4swxcvz6swa523rcpjxlp3w2vyq"
+   "commit": "1b937eab15326b3b2e4183229a01376c30e6781c",
+   "sha256": "0c2sfzxag01w2n61xy02aw2hwv7k1nm64iwbjyf0rsqcq0m64pz8"
   },
   "stable": {
    "version": [
@@ -62559,16 +63315,16 @@
   "repo": "kljohann/mpv.el",
   "unstable": {
    "version": [
-    20180602,
-    1014
+    20200315,
+    2158
    ],
    "deps": [
     "cl-lib",
     "json",
     "org"
    ],
-   "commit": "9dedf3b7c1bfd778284df7f394207ce0447ea7aa",
-   "sha256": "15z62wi47pwvkbh4qgvz06yk4cyy570pjz1276sd9frdwgd4kc19"
+   "commit": "2d40c4550558eb1bf35a69446777c4e9cae7a623",
+   "sha256": "0f9iq83dfj73gbx7zndvh32b102582lzv4xb8gvqjs26k5bywdxj"
   },
   "stable": {
    "version": [
@@ -62632,6 +63388,21 @@
   }
  },
  {
+  "ename": "msgpack",
+  "commit": "773cb12f9aef4ad45179cb7dd07275d886907836",
+  "sha256": "1vcbngsr0xpqy00g837p2awkin82s145ksh223c1msszwwwgdx5m",
+  "fetcher": "github",
+  "repo": "xuchunyang/msgpack.el",
+  "unstable": {
+   "version": [
+    20200323,
+    515
+   ],
+   "commit": "90e3086f259549b1667a3c5b9aa2d70aaeaa4d3d",
+   "sha256": "0g9a59x7xjf1p2swbi3v8bawdwkqliw3kcg70bca5dgg2jxgd4z6"
+  }
+ },
+ {
   "ename": "msvc",
   "commit": "69939b85353a23f374cab996ede879ab315a323b",
   "sha256": "04gq2klana557qvsi3bv6416l0319jsqb6bdfs7y6729qd94hlq3",
@@ -62714,11 +63485,11 @@
   "repo": "cdominik/mu2tex",
   "unstable": {
    "version": [
-    20190520,
-    503
+    20200329,
+    758
    ],
-   "commit": "9467076ee4115d7fc19abaeadecc603e9115bf8d",
-   "sha256": "1acyynjrr5pxn15g59hd3cq1yvx989ks1b79g1kmhb1cqfpz58b8"
+   "commit": "536a7a0db4ddbdb30a16fdd56c79b78c9b50d865",
+   "sha256": "18s4mks7yxbxlhdkn9s2bgxyl14rv7ds7n6c7g3pzjd94j404b64"
   }
  },
  {
@@ -63802,6 +64573,21 @@
   }
  },
  {
+  "ename": "native-complete",
+  "commit": "abc5469b4400ed05192dcfd6c00504768f05292e",
+  "sha256": "0y1zqmd34jswfw5fi3j6n0d9dhpvl14x3h5nfl6wmxj2g8vv4gns",
+  "fetcher": "github",
+  "repo": "CeleritasCelery/emacs-native-shell-complete",
+  "unstable": {
+   "version": [
+    20200321,
+    2300
+   ],
+   "commit": "11803df3706fb23d58e418a14ce981204a64e847",
+   "sha256": "0maljdxigd4fvrm7pv3ssyywl3c1zhfpqdymq933iig7d2hrwxm1"
+  }
+ },
+ {
   "ename": "nav",
   "commit": "0fda2b54a0ff0b6fc3bd6d20cfcbbf63cae5380f",
   "sha256": "0ly1fk4ak1p8gkz3qmmxyslcjgicnfm8bpqqgndvwcznp8pvpjml",
@@ -63954,11 +64740,11 @@
   "repo": "nickav/naysayer-theme.el",
   "unstable": {
    "version": [
-    20191207,
-    1936
+    20200326,
+    1937
    ],
-   "commit": "22ac2901c7dfbc73f802f6280621fa4e2f92ff78",
-   "sha256": "1n6c43l0c8csagsajc7ibg4395qmigfvhsprba0xgqm95pl7whd9"
+   "commit": "e4d80cb70324a45102075ea923af454a563e9133",
+   "sha256": "0kxlbvpszb0lrj5dzfmzc1iaxgvhcjwq4hwykif22mkgdigxppx3"
   }
  },
  {
@@ -64026,8 +64812,8 @@
     20161029,
     2023
    ],
-   "commit": "7c63573fe66897b089963e9831546e5de7787c5a",
-   "sha256": "15cwfma9cq8i9x8cpaanzjgszddgvxbkn9q5aci0nnvl6nggqzpn"
+   "commit": "ae60dc55822ea1715b203775179080c5d62700d8",
+   "sha256": "0q46r9r2vc50vn3bh321l317lgbbmmbylhgbxllbjpyaidfqzvb9"
   },
   "stable": {
    "version": [
@@ -64070,14 +64856,14 @@
   "repo": "jaypei/emacs-neotree",
   "unstable": {
    "version": [
-    20181121,
-    2026
+    20200324,
+    1946
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "c2420a4b344a9337760981c451783f0ff9df8bbf",
-   "sha256": "1wfx37kvsfwrql8zs2739nx7wb51m26vwlcz1jygbrb62n6wq14k"
+   "commit": "98fe21334affaffe2334bf7c987edaf1980d2d0b",
+   "sha256": "1m4d5l48k1frbkspk6wlzhbjn133bj7spp5chlgv8p4p9rpnc2zr"
   },
   "stable": {
    "version": [
@@ -64429,8 +65215,8 @@
     20181024,
     1439
    ],
-   "commit": "1f3cc7b7207309c441ce5bf120b57081bbea0c18",
-   "sha256": "1y19f8qqd5bvkrpr3b8d18ff8qdi4j0fgha4dkb7zgjhi0rb9nb7"
+   "commit": "8900fa55b56ba1e2f83b3f3ba2a1b336c97e5dc3",
+   "sha256": "0x6l5r5i1q7pbvziynbvb395q8rihkr1zyhp4xzw35xn55qyskiy"
   },
   "stable": {
    "version": [
@@ -64606,6 +65392,35 @@
   }
  },
  {
+  "ename": "nixpkgs-fmt",
+  "commit": "36f9451ad54c787f9e94bfda0e71de99da94be34",
+  "sha256": "1j9k4r25iylmrg0hbjb8jamrci3jxyrpx2baawmcyhqgxiz3lcz8",
+  "fetcher": "github",
+  "repo": "purcell/emacs-nixpkgs-fmt",
+  "unstable": {
+   "version": [
+    20200327,
+    2302
+   ],
+   "deps": [
+    "reformatter"
+   ],
+   "commit": "cc8ee143d4ef45a8c540901852326ccdf6ff8482",
+   "sha256": "0a1ih8w8xk8rdd96k7236v6xh2xr1r6gaiv2b6js95k04igdqxnh"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "deps": [
+    "reformatter"
+   ],
+   "commit": "83e03d6f20bdf79c1c448c15734367b1a7cc6b02",
+   "sha256": "0hw0m4a637w1fm47snywn0mxz09qa5diy4hqngbqf7gxfj6hmfnz"
+  }
+ },
+ {
   "ename": "nlinum-hl",
   "commit": "b13a886535a5c33fe389a6b616988b7377249625",
   "sha256": "17lcp1ira7yhch9npg9sf3npwg06yh9zyhg0lnb22xg09lbndj0x",
@@ -64683,8 +65498,8 @@
   "repo": "dickmao/nndiscourse",
   "unstable": {
    "version": [
-    20200309,
-    242
+    20200315,
+    2046
    ],
    "deps": [
     "anaphora",
@@ -64693,8 +65508,8 @@
     "json-rpc",
     "rbenv"
    ],
-   "commit": "6cf4c73e8144b5eb6708fd5f35245f81389e7859",
-   "sha256": "0l16ql64741m6wkhf691639d17066gizq02s8vnpxqif10zsgaap"
+   "commit": "280ac4943af307e6fe8d43a350c663c18c9c7ea8",
+   "sha256": "11ncy09y4lbivsp72l1lbg45ahqhgdzn56p9j4dxkczv5pnsg6p1"
   }
  },
  {
@@ -64705,8 +65520,8 @@
   "repo": "dickmao/nnhackernews",
   "unstable": {
    "version": [
-    20200310,
-    855
+    20200323,
+    1803
    ],
    "deps": [
     "anaphora",
@@ -64714,8 +65529,8 @@
     "dash-functional",
     "request"
    ],
-   "commit": "ac896a7becd1dcfded728a36ce13cf7dcd823e04",
-   "sha256": "02gv1kc46aa7sbalh02sphaq50kgi055803cnxjbjvlqhlmwc2cw"
+   "commit": "ab0db2b7e76efa8efc72c0f587a33da1f0dc9905",
+   "sha256": "10scn7y0v0hirwlckwxb8cr98qmdl0r6c605qdh8jigmcp4c782j"
   }
  },
  {
@@ -64741,8 +65556,8 @@
   "repo": "dickmao/nnreddit",
   "unstable": {
    "version": [
-    20200301,
-    1930
+    20200327,
+    413
    ],
    "deps": [
     "anaphora",
@@ -64751,8 +65566,8 @@
     "request",
     "virtualenvwrapper"
    ],
-   "commit": "a7e6a3b93949da0a1cf91318ce8bd8cf5cfb2216",
-   "sha256": "0mcj4bdzhin9ibp3m6rrhqh54a2n07ck25djka3apqyd16dvx2y2"
+   "commit": "ccba00ddd62f06e9f085f7f58532b961369d1677",
+   "sha256": "0fkcp3masas1sdrhp27c017b4r2gw2gp65lcjkvcfck2k9hnypip"
   }
  },
  {
@@ -64778,14 +65593,14 @@
   "repo": "emacscollective/no-littering",
   "unstable": {
    "version": [
-    20200309,
-    533
+    20200328,
+    1359
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "05ef102cffd2f32061eacf2d379663122257f5b1",
-   "sha256": "0c75arxqb8p3bp1nasfcwy32al4ys3jv68q48dnc2addvjmld42g"
+   "commit": "92661bc9b33af1e9d405d23f226c1fc80c0c9c01",
+   "sha256": "1c1zrfnzr7vh4fsrzyr1ivsf07ydxyr4v1776z2xv9bynvwb6lhz"
   },
   "stable": {
    "version": [
@@ -64914,11 +65729,11 @@
   "repo": "abicky/nodejs-repl.el",
   "unstable": {
    "version": [
-    20200223,
-    1449
+    20200320,
+    1645
    ],
-   "commit": "ed2052522d1770cc951863000f96165e0c42ec7b",
-   "sha256": "0a5mmg3cmdi73giblp07ksl06xzl9nb2m3f96ny4r3rv0ar3v1bx"
+   "commit": "6fad7d764fa0d818ba497450bd722ae10cb8efed",
+   "sha256": "0saky39n0p8w7lmalg3j4da0crrx40yz0rz1zdjzwpd2bd9v2izg"
   },
   "stable": {
    "version": [
@@ -65046,8 +65861,8 @@
    "deps": [
     "colorless-themes"
    ],
-   "commit": "a7b7c0a32b174988f40378996cd8997f73524f19",
-   "sha256": "0khsf4xz0wjn774hy08pxafm79j55ns28q25pfzyj9s07hi4r0vz"
+   "commit": "2b4c341640c8191a39e4bc28d6cd04c7d6dcbb37",
+   "sha256": "0ni9cnrv464fk840i1ll241kzkiy1zc6nfrbdv3ciixxdxbshxbn"
   },
   "stable": {
    "version": [
@@ -65099,11 +65914,11 @@
   "url": "https://git.notmuchmail.org/git/notmuch",
   "unstable": {
    "version": [
-    20200109,
-    114
+    20200323,
+    121
    ],
-   "commit": "018ad3703ba46ea603854f51f8ff5ae86183cca0",
-   "sha256": "0vr17rhc74cf8k1n1snnfb82rzpsfc9xxcb8y2ydi0pbwd2h87r6"
+   "commit": "1fcf068e331b9b79e14f79c8b126711fc3d72cbb",
+   "sha256": "1pf9xds5csw6vwkb4b15isrw29psdifx8gl8y61la7d1k7b6m517"
   },
   "stable": {
    "version": [
@@ -65123,15 +65938,15 @@
   "repo": "publicimageltd/notmuch-bookmarks",
   "unstable": {
    "version": [
-    20200105,
-    1041
+    20200322,
+    1925
    ],
    "deps": [
     "notmuch",
     "seq"
    ],
-   "commit": "28a8e58521b50bfe0944f74eb2945521e03daad3",
-   "sha256": "0ma8rmxcq0xh1gskzyc8ay5681nidc340ghjryic3g30njidbiwd"
+   "commit": "ec8edfdbd1ac475530591d73a570ded5c18ed86a",
+   "sha256": "01bhxvjsmgxvh08r80lzlyj0wk1izx5bq22w6zsdzvxiclgrzk16"
   },
   "stable": {
    "version": [
@@ -65246,6 +66061,24 @@
   }
  },
  {
+  "ename": "npm",
+  "commit": "012ca672c63711197c98eded098b1d1a9a24fd51",
+  "sha256": "0zi4c5a8cn03i6jdranak586s580bw772vazslxa3zs1y3xripir",
+  "fetcher": "github",
+  "repo": "shaneikennedy/npm.el",
+  "unstable": {
+   "version": [
+    20200329,
+    1904
+   ],
+   "deps": [
+    "transient"
+   ],
+   "commit": "2201ab1d9d424146c725d5e9ad24cc8e0219ba95",
+   "sha256": "18bm31f6zaskyncn97mfwxdih6b31jpm8v858m920i5j45gh78r5"
+  }
+ },
+ {
   "ename": "npm-mode",
   "commit": "22dd6b2f8a94f56a61f4b70bd7e44b1bcf96eb18",
   "sha256": "1aym4jfr6im6hdc5d7995q6myhgig286fk9hpaxdf418h1s17rqr",
@@ -66176,11 +67009,11 @@
   "repo": "arnm/ob-mermaid",
   "unstable": {
    "version": [
-    20200311,
-    2111
+    20200320,
+    1504
    ],
-   "commit": "06ca38e963475542dbf48e416a820c21e1441f28",
-   "sha256": "12g221bcw04gzq7w60j2i2yhqxpy783b5zp38xdyqg34hnk0p1ji"
+   "commit": "cca09b64eff689d8bb15a77de9d4c7fe9845a1f9",
+   "sha256": "1wwmf14df2rnxlfs8bwb9p4q1a1plschbq2g9vqflphj6kv213m4"
   }
  },
  {
@@ -66275,14 +67108,14 @@
   "repo": "alf/ob-restclient.el",
   "unstable": {
    "version": [
-    20200109,
-    730
+    20200316,
+    759
    ],
    "deps": [
     "restclient"
    ],
-   "commit": "c5c22e603531dca48575d0a425fddff16dc0f391",
-   "sha256": "19fs6ms6rj75w4v7p7z0k2004gnb246nksv20mb8cqjnzkj0495s"
+   "commit": "f7449b2068498fe9d8ab9589e0a638148861533f",
+   "sha256": "0s3931w9ab3yfml2pmq71rw21yf6hpg7m3vihxyy3vs6zli1cvmq"
   }
  },
  {
@@ -66743,10 +67576,10 @@
  },
  {
   "ename": "octicons",
-  "commit": "c62867eae1a254eb5fe820d4387dd4e8a0ff9be2",
-  "sha256": "02f37bvnc5qvkvfbyx5wp54nz71bqm747mq1p5361sx091lllkxk",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0p66i8i2ksqld3bd0iq7f7ssskj1hp42s170q74crh3ilapjnkpq",
   "fetcher": "github",
-  "repo": "syohex/emacs-octicons",
+  "repo": "emacsorphanage/octicons",
   "unstable": {
    "version": [
     20151101,
@@ -66808,26 +67641,20 @@
   "repo": "oer/oer-reveal",
   "unstable": {
    "version": [
-    20200313,
-    842
-   ],
-   "deps": [
-    "org-re-reveal"
+    20200325,
+    946
    ],
-   "commit": "8351748a2f79fbf67cea1f1f6a245c4bfef12c9b",
-   "sha256": "1sfjrpd0vn1dgnjgkhg48wvfwr5nfiavddws2jxj6nrzj2jdga6l"
+   "commit": "5f22947a41780a59dab7252ef1e3d510e6e2b28a",
+   "sha256": "1y84lidg5jiix7ap46jakqn3y9x1gzdlnv5473r3qv3cxzaf7l2n"
   },
   "stable": {
    "version": [
     2,
-    5,
-    0
-   ],
-   "deps": [
-    "org-re-reveal"
+    7,
+    2
    ],
-   "commit": "8351748a2f79fbf67cea1f1f6a245c4bfef12c9b",
-   "sha256": "1sfjrpd0vn1dgnjgkhg48wvfwr5nfiavddws2jxj6nrzj2jdga6l"
+   "commit": "5f22947a41780a59dab7252ef1e3d510e6e2b28a",
+   "sha256": "1y84lidg5jiix7ap46jakqn3y9x1gzdlnv5473r3qv3cxzaf7l2n"
   }
  },
  {
@@ -66890,11 +67717,11 @@
   "repo": "rnkn/olivetti",
   "unstable": {
    "version": [
-    20200311,
-    527
+    20200320,
+    1154
    ],
-   "commit": "67e32a7754cda4c8d94227e80bfa708abb4e8e6d",
-   "sha256": "0928kn9yfwc2mhmja13y39iswlkk474xnszh9qza206j6r37h6p3"
+   "commit": "5dc27716c706166e1932f4a0e9f94384b6d17cb0",
+   "sha256": "0im6ds8mvnwfrh3z0cd05g32w9rklhl56xmhzl9i2180pv6qwil8"
   },
   "stable": {
    "version": [
@@ -67745,30 +68572,29 @@
   "repo": "Kungsgeten/org-brain",
   "unstable": {
    "version": [
-    20200229,
-    2229
+    20200328,
+    1700
    ],
    "deps": [
-    "org",
-    "org-ql"
+    "org"
    ],
-   "commit": "6b7fced8015387efd03f28e53be47c3ca8907d7f",
-   "sha256": "01s8cjgxfl5pplswy80qgxisiv7p1kmbq28g3xx1qn2w7pfiyfwa"
+   "commit": "ec4bd9dd290459657426bb06e78f666ac0310420",
+   "sha256": "18937fm3np1ngxc1rmjsg0mzrf7jr56gd87ygsi84y5cmw4j08zb"
   }
  },
  {
   "ename": "org-bullets",
-  "commit": "fe60fc3c60d87b5fd7aa24e858c79753d5f7d2f6",
-  "sha256": "0yrfgd6r71rng3qipp3y9i5mpm6510k4xsfgyidcn25v27fysk3v",
+  "commit": "aa0e1ebac172a73bfed7d55cb4d9eb52178dcbdc",
+  "sha256": "0jcqgp23wgzdmw7il8phwiqdndwyjc7lcc27mk8rfip4ngp3wiyn",
   "fetcher": "github",
-  "repo": "emacsorphanage/org-bullets",
+  "repo": "integral-dw/org-bullets",
   "unstable": {
    "version": [
-    20190802,
-    927
+    20200317,
+    1740
    ],
-   "commit": "c19b13be00df8d8dc596e4f1aef4a094b08ac801",
-   "sha256": "1rvhinwnz660mfz4wkr2wa51ss5cm4gzpwfvwc0s0srk14s2h66h"
+   "commit": "767f55feb58b840a5a04eabfc3fbbf0d257c4792",
+   "sha256": "01ll5b39wpx9qpqybndy58wkq97n512rg7j87482l1ry1s5b02d5"
   },
   "stable": {
    "version": [
@@ -67821,13 +68647,13 @@
   "repo": "IvanMalison/org-projectile",
   "unstable": {
    "version": [
-    20180601,
-    242
+    20200329,
+    313
    ],
    "deps": [
     "org"
    ],
-   "commit": "de37d0094791ab1146276904f3a37eba699e0b60",
+   "commit": "96a57a43555e24e5e0d81e79f0fbb47001c41bac",
    "sha256": "05h9scvnd9ggfwbbl1m124k6sdn5kp9mv2695cril2m4dkr1kyqz"
   },
   "stable": {
@@ -67934,11 +68760,11 @@
   "repo": "justintaft/org-clock-split",
   "unstable": {
    "version": [
-    20191219,
-    457
+    20200315,
+    1716
    ],
-   "commit": "361a7a96af2a7d09ccaf561423b80caca7a108cb",
-   "sha256": "00k7av97l609rf31zqndy92ypbdyvwnr0bdpxfisw33icw7706nb"
+   "commit": "322379f1bf08c74c034c5c86d8a3045675ee64ac",
+   "sha256": "0nigylzzxwm4wn8zp5vyrj4y41czcpkvglvy3p4dqn35agklz5mw"
   }
  },
  {
@@ -68539,20 +69365,20 @@
   "repo": "marcIhm/org-index",
   "unstable": {
    "version": [
-    20200314,
-    1732
+    20200323,
+    1404
    ],
-   "commit": "6de86372d46ca9639f22fe05eaadc0cbec58f5bc",
-   "sha256": "1h4lh9cfz6808wmmhq5xad6a37i145i5ifb84gygcpdx6g7xzjha"
+   "commit": "601435b3aeff1b2c00f62deb39adf9b351e9b567",
+   "sha256": "0v6r78zcvzhj2wgaz22ddpbhjpggiii5j54hl12m02rpbqv0m524"
   },
   "stable": {
    "version": [
     6,
     1,
-    1
+    2
    ],
-   "commit": "6de86372d46ca9639f22fe05eaadc0cbec58f5bc",
-   "sha256": "1h4lh9cfz6808wmmhq5xad6a37i145i5ifb84gygcpdx6g7xzjha"
+   "commit": "601435b3aeff1b2c00f62deb39adf9b351e9b567",
+   "sha256": "0v6r78zcvzhj2wgaz22ddpbhjpggiii5j54hl12m02rpbqv0m524"
   }
  },
  {
@@ -68657,16 +69483,16 @@
   "repo": "gizmomogwai/org-kanban",
   "unstable": {
    "version": [
-    20200126,
-    1158
+    20200329,
+    543
    ],
    "deps": [
     "dash",
     "org",
     "s"
    ],
-   "commit": "4e352ca1a0b712fc92f656b4fe436a04c7033a20",
-   "sha256": "0smjn7jmg5w9nwjp0qadl0sx6r78ycaqm8y3a2wm6slmdad2p1jb"
+   "commit": "544aac80f1c7113cfe42cf1a2b89f5ca6bd9ead6",
+   "sha256": "0sx4mvr5g2ipj1s1jg82vr1q90jkq9lm0pg5cdab8lrx464lqf2c"
   },
   "stable": {
    "version": [
@@ -68810,14 +69636,14 @@
   "repo": "org-mime/org-mime",
   "unstable": {
    "version": [
-    20191226,
-    2309
+    20200323,
+    130
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "b1899762170eaa656555ce62c58e613ca3509ec4",
-   "sha256": "1p3ffxanjpb83xvk4c42lafhfbckh4rkmi32wjdp86fkqx30nvrg"
+   "commit": "778f818ad3d101f27786556c2a7a9995d5da47c6",
+   "sha256": "0w3yyqn225c5y0if5pjvvszpasrvh3rh4f0bqjabrvqvrhf1q8ny"
   },
   "stable": {
    "version": [
@@ -69168,6 +69994,26 @@
   }
  },
  {
+  "ename": "org-pdftools",
+  "commit": "62cf59d93b7b6700c4f7711e5fd22ece04896e6a",
+  "sha256": "0fqkq8hpcxzpj3irczkad78m3chadqk2895bdbj7xpdlr0803n32",
+  "fetcher": "github",
+  "repo": "fuxialexander/org-pdftools",
+  "unstable": {
+   "version": [
+    20200329,
+    1507
+   ],
+   "deps": [
+    "org",
+    "org-noter",
+    "pdf-tools"
+   ],
+   "commit": "96fe7275c75842732c3fd1527619088f66b6a80a",
+   "sha256": "1ri58hyksp4fhmm6323ndc1h3ljkxjgbzcp588h76fkpk19lzhq1"
+  }
+ },
+ {
   "ename": "org-pdfview",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "1qhlmzf2ffcrjnx4yghv7n6rsry8bcwnkw489spgraq9vxvqklah",
@@ -69362,7 +70208,7 @@
     "projectile",
     "s"
    ],
-   "commit": "de37d0094791ab1146276904f3a37eba699e0b60",
+   "commit": "96a57a43555e24e5e0d81e79f0fbb47001c41bac",
    "sha256": "05h9scvnd9ggfwbbl1m124k6sdn5kp9mv2695cril2m4dkr1kyqz"
   },
   "stable": {
@@ -69396,7 +70242,7 @@
     "helm",
     "org-projectile"
    ],
-   "commit": "de37d0094791ab1146276904f3a37eba699e0b60",
+   "commit": "96a57a43555e24e5e0d81e79f0fbb47001c41bac",
    "sha256": "05h9scvnd9ggfwbbl1m124k6sdn5kp9mv2695cril2m4dkr1kyqz"
   },
   "stable": {
@@ -69447,8 +70293,8 @@
   "repo": "alphapapa/org-ql",
   "unstable": {
    "version": [
-    20200314,
-    1908
+    20200315,
+    2004
    ],
    "deps": [
     "dash",
@@ -69463,14 +70309,14 @@
     "transient",
     "ts"
    ],
-   "commit": "5bc4a4a825f5961d1a47b6f35bd3e458bb2546e2",
-   "sha256": "1drn82ajcdzjzaa3qsqp6y5f0ynanb7xcpa57lpw01j4isja5zkw"
+   "commit": "ab5e9aa9116010e5da1995bf19ff26f55b93c214",
+   "sha256": "0h90vagb91zskvmy06yq0b1vjbkqry0fkxiagg4d076rbx3ryc0n"
   },
   "stable": {
    "version": [
     0,
     4,
-    3
+    4
    ],
    "deps": [
     "dash",
@@ -69483,8 +70329,8 @@
     "s",
     "ts"
    ],
-   "commit": "ba7d4a2e82f134b8bb9976c81227ec795dde00d4",
-   "sha256": "01qgnasab82aakx1p2iyjc60qhs6wahlhhmyacwa4s41ki0nlha1"
+   "commit": "4fef5b089f8f77b0dc25dac5f096406156e90858",
+   "sha256": "065wkxd269v19r5s8g2haapwhwr3s6c5amwzshfl2hq5z0bldvqi"
   }
  },
  {
@@ -69766,26 +70612,26 @@
   "repo": "akirak/org-reverse-datetree",
   "unstable": {
    "version": [
-    20200224,
-    548
+    20200325,
+    1003
    ],
    "deps": [
     "dash"
    ],
-   "commit": "800e1094892be1b62087317bd7dbd6c2cdca07f2",
-   "sha256": "1rb9gc99jb1sbzc7hlc6yndaci1dfravjvnlix9wk9bix27g3vca"
+   "commit": "afac070eb64cc24917c0ab0e14686258da4916f6",
+   "sha256": "1737r8c5kpb68yb2sixp88fm7fcmr7rvpkpywyxzwgqk30xpsjgq"
   },
   "stable": {
    "version": [
     0,
     3,
-    1
+    2
    ],
    "deps": [
     "dash"
    ],
-   "commit": "6fad8d248acfd32c7b2347223c9326351f8cefd4",
-   "sha256": "08kwbc630ijmz7nzypzm6bcr3yzij47rhb3ih1hgq6z5pm5cla6v"
+   "commit": "cfb14dc77768ea901fe5a49662ae10ae3ccc7bde",
+   "sha256": "05qjj4zfm84s7lmlnq2nndmh76cpnhh62rybdiz2fjsj1ns0zjln"
   }
  },
  {
@@ -69828,6 +70674,46 @@
   }
  },
  {
+  "ename": "org-roam",
+  "commit": "278f993cf094b39b5d049f05e0cbba61e52a6f0c",
+  "sha256": "1m4nw1r8kdxigdvws5arqglamrx4g62v4p482flikk7w52gcs7is",
+  "fetcher": "github",
+  "repo": "jethrokuan/org-roam",
+  "unstable": {
+   "version": [
+    20200329,
+    1330
+   ],
+   "deps": [
+    "dash",
+    "emacsql",
+    "emacsql-sqlite",
+    "f",
+    "org",
+    "s"
+   ],
+   "commit": "b86d2c8637f5eafd587c4cf4fe85e7d0380844f4",
+   "sha256": "04i8i3dixf50vqp8jrwcbf4c8d7m47g9lyzj76h49jd8bv2fqang"
+  },
+  "stable": {
+   "version": [
+    1,
+    0,
+    0
+   ],
+   "deps": [
+    "dash",
+    "emacsql",
+    "emacsql-sqlite",
+    "f",
+    "org",
+    "s"
+   ],
+   "commit": "1433dbc31602c412914c71ecc81aa5dcf6b03daf",
+   "sha256": "08pfa63k194dpk0y2gfa0nzn5lig81q0l9axkq5j4ibj6ifaap4a"
+  }
+ },
+ {
   "ename": "org-rtm",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "1hdcwmiv2qivdr2g78xz9fl38wn45vj0bn55dbsdj3qx7k7wgfx6",
@@ -70051,20 +70937,20 @@
   "repo": "bastibe/org-static-blog",
   "unstable": {
    "version": [
-    20200117,
-    800
+    20200324,
+    747
    ],
-   "commit": "5c19300d7634e94ae813b1b66abc716fbb1e5fc9",
-   "sha256": "1m7vmibjc6yk2npfrnnqd3g2099300r0q8mr8cvyivmk5ailbfrh"
+   "commit": "635ec9901be9d03402dd3d4b11e71f07bf1cf6f9",
+   "sha256": "1fc0r53209igflfxm2dncpmdh8zncr40y1ylj1j2pcyrdlghqpvw"
   },
   "stable": {
    "version": [
     1,
-    2,
-    1
+    3,
+    0
    ],
-   "commit": "f69d2fd6671fb250fbd87df5efa898a7bf5b9bda",
-   "sha256": "1h9c96rbxxk1jypib5f9pfi5zkimkvhxi61j0sps6r39435dd3w7"
+   "commit": "afe250fc43cd1beffd7946b54692d712d9263ff2",
+   "sha256": "15iy3z8rglaqbx1fz14inh18ksgjsmq30b8hyv3lgjvcc9ssaiw0"
   }
  },
  {
@@ -70523,6 +71409,26 @@
   }
  },
  {
+  "ename": "org-treescope",
+  "commit": "f824498a74dcf0b8130baf474841b240adfa07a7",
+  "sha256": "13j7xz9i11kga1s0yvdv3k54076llna8vnnp0v8ri5pgbdrmc20w",
+  "fetcher": "github",
+  "repo": "mtekman/org-treescope.el",
+  "unstable": {
+   "version": [
+    20200324,
+    1959
+   ],
+   "deps": [
+    "dash",
+    "org",
+    "org-ql"
+   ],
+   "commit": "cad2aa82e5ca73bd7afc31b7a5e764da5ab716c3",
+   "sha256": "1jsc39xmli54mcqcdddzyaphmhlamwq167vfr2g133c3p0wx8swh"
+  }
+ },
+ {
   "ename": "org-trello",
   "commit": "188ed8dc1ce2704838f7a2883c41243598150a46",
   "sha256": "14lq8nn1x6qb3jx518zaaz5582m4npd593w056igqhahkfm0qp8i",
@@ -70660,8 +71566,8 @@
   "repo": "akhramov/org-wild-notifier.el",
   "unstable": {
    "version": [
-    20191114,
-    1632
+    20200328,
+    1153
    ],
    "deps": [
     "alert",
@@ -70669,14 +71575,14 @@
     "dash",
     "dash-functional"
    ],
-   "commit": "713c5205869dde4d42127fd9365f5831ec222503",
-   "sha256": "0585v39lxrqnv4p2k2pcswmx14gvm6l17j05q30cssn5zqy8cv8a"
+   "commit": "4011d7f557da3ae5eee73c56ae514b963fb4d1c1",
+   "sha256": "0mr5qmrnz0mr6w7ib8bcdlqwhzwnxfbnd47zyg9i6lmh20p8qrns"
   },
   "stable": {
    "version": [
     0,
-    3,
-    2
+    4,
+    0
    ],
    "deps": [
     "alert",
@@ -70684,8 +71590,8 @@
     "dash",
     "dash-functional"
    ],
-   "commit": "f2ea8a719cf61742def57475400222a498256bb6",
-   "sha256": "0wrr52bryvv1aj2fk5ik71iifh15bzmvrw1ixzs1afcdp2fn0bcm"
+   "commit": "4011d7f557da3ae5eee73c56ae514b963fb4d1c1",
+   "sha256": "0mr5qmrnz0mr6w7ib8bcdlqwhzwnxfbnd47zyg9i6lmh20p8qrns"
   }
  },
  {
@@ -70741,8 +71647,8 @@
   "repo": "org2blog/org2blog",
   "unstable": {
    "version": [
-    20200303,
-    418
+    20200317,
+    2136
    ],
    "deps": [
     "htmlize",
@@ -70750,8 +71656,8 @@
     "metaweblog",
     "xml-rpc"
    ],
-   "commit": "0177fc4e7edd705db59b82c83a24db51dc405890",
-   "sha256": "1whl7kz4im2jmdz99336wfn152q0l3qwii4w7sn45rlsm2sijiw1"
+   "commit": "821ed77f0982dfeb1df50380931d53e6b7b7036f",
+   "sha256": "16hrnfz4jp5a672rvgk6ky9xfzvgxx73p5l96wh3x9294vyjd4vi"
   },
   "stable": {
    "version": [
@@ -71194,8 +72100,8 @@
    "deps": [
     "reformatter"
    ],
-   "commit": "7b1905787de919e671cbd44360688678025c8395",
-   "sha256": "1l2wz4zk9x66cgnl5c6x3ajhz0cmmjmxvwzl1p3bnykygkndiwj6"
+   "commit": "5d991188b511e9d650c84fc578f2f49c9f995693",
+   "sha256": "1x5nx064cgcjj99xwp7drcvhfmmav1f72jnwwlxllhas2is458m0"
   }
  },
  {
@@ -71608,11 +72514,11 @@
   "repo": "emacsorphanage/ov",
   "unstable": {
    "version": [
-    20200124,
-    1842
+    20200326,
+    1042
    ],
-   "commit": "3b246691d5b728ef1f0164f0cefffe00c9554e64",
-   "sha256": "10synkwxz6kqldx97pc52falr7h7khq97gck5fqidijwzmvs7jb2"
+   "commit": "c5b9aa4e1b00d702eb2caedd61c69a22a5fa1fab",
+   "sha256": "1g3r4jsgvf713jazw0j5mcsbrw9shix9qrc683jm7dccwwrv5pcy"
   },
   "stable": {
    "version": [
@@ -71707,30 +72613,30 @@
   "repo": "aki2o/owdriver",
   "unstable": {
    "version": [
-    20170401,
-    1312
+    20200326,
+    1608
    ],
    "deps": [
     "log4e",
     "smartrep",
     "yaxception"
    ],
-   "commit": "d934f182bafe29aa16c173440eff3fef08b0ec10",
-   "sha256": "0yy5sah7vcjxcik3sp2cxp9gvcryyzw799h8zf4wbvjxv74kd17c"
+   "commit": "a243051365eb7ac0d1845c8b468b90510998f66e",
+   "sha256": "05a3s01y3sls6as28wvd1y5pmasqlz9k597yba10c0spxvlaijcn"
   },
   "stable": {
    "version": [
     0,
-    0,
-    6
+    1,
+    1
    ],
    "deps": [
     "log4e",
     "smartrep",
     "yaxception"
    ],
-   "commit": "0479389d9df9e70ff9ce69dff06252d3aa40fc86",
-   "sha256": "0f2psx4lq98l3q3fnibsfqxp2hvvwk7b30zjvjlry3bffg3l7pfk"
+   "commit": "a243051365eb7ac0d1845c8b468b90510998f66e",
+   "sha256": "05a3s01y3sls6as28wvd1y5pmasqlz9k597yba10c0spxvlaijcn"
   }
  },
  {
@@ -72038,11 +72944,14 @@
   "repo": "linktohack/ox-latex-subfigure",
   "unstable": {
    "version": [
-    20200113,
-    1029
+    20200326,
+    919
+   ],
+   "deps": [
+    "org"
    ],
-   "commit": "18bcee0c89c19da847f38660946a5b9343607cfb",
-   "sha256": "1hpwsx3cba6kk2n954h144pb1ba5yy46gcni8ikvsbqm8j17ragm"
+   "commit": "be0a0dde62fde8cdf8d72b6968344906aa8c6f54",
+   "sha256": "1afikv50ii4xk9pkg4m6dx246bjnwka37lccif8i5r48hfy5w4bq"
   },
   "stable": {
    "version": [
@@ -72203,14 +73112,14 @@
   "repo": "yjwen/org-reveal",
   "unstable": {
    "version": [
-    20200304,
-    937
+    20200327,
+    1636
    ],
    "deps": [
     "org"
    ],
-   "commit": "0d947cbce655cadb035e3b5da0fa2af8c228d69b",
-   "sha256": "1sf8qdih1fbzhsyvkf8grmfsglvrgim0ww14ww01w9xnr02fkb0g"
+   "commit": "ea8b5021702d8f12aa5285fb2a8561ceaeb1332e",
+   "sha256": "1fppdz2r8zig6r1v1n82bxmxyn2f6i1rjv9qll4n866gahkknlkr"
   }
  },
  {
@@ -72966,11 +73875,11 @@
   "repo": "sebasmonia/panda",
   "unstable": {
    "version": [
-    20190907,
-    314
+    20200317,
+    1932
    ],
-   "commit": "5a3da498a8ab8a60cef3a3a5e8f3e14dea9992dd",
-   "sha256": "04fa2895vr0z6y1w1mkpxhzx2q323vl7r3hayxr0vldd8mz8m0lw"
+   "commit": "2a17e3e5c57132777cfef9704565f6bfa129dbe2",
+   "sha256": "02aysxdb660dh19l07g6h2qvckrrd4aj79lryd6h7j3in1s0sn05"
   }
  },
  {
@@ -73154,14 +74063,14 @@
   "repo": "ajgrf/parchment",
   "unstable": {
    "version": [
-    20200308,
-    1727
+    20200322,
+    1714
    ],
    "deps": [
     "autothemer"
    ],
-   "commit": "1aa8cd5e3673c1c55941afa61cbf7a7a45474078",
-   "sha256": "1s95d2pzivq52ci4disnfr95knh0kdr0jqi0br8c8zaxys3p43c8"
+   "commit": "bf158a064e4a00a47d24ed0c1725204ce6675064",
+   "sha256": "1vqvfxrwrlmnmp0bidagphajwlxs6kf480xajkpz590m0zf1xfp3"
   },
   "stable": {
    "version": [
@@ -73639,17 +74548,16 @@
   "repo": "zx2c4/password-store",
   "unstable": {
    "version": [
-    20190929,
-    1627
+    20200328,
+    1214
    ],
    "deps": [
     "auth-source-pass",
-    "f",
     "s",
     "with-editor"
    ],
-   "commit": "88936b11aff49e48f79842e4628c55620e0ad736",
-   "sha256": "0hjb0zh94mda4xq20srba40mh3iww3gg45w3vaqyvplxiw08hqrq"
+   "commit": "98193d3bbb3538eda457d0db4ccccbcc4b04ce3d",
+   "sha256": "133b2m49jd2bw0k5f77y8gc2w53vhp3rym5mzqx7mlfgssgd795k"
   },
   "stable": {
    "version": [
@@ -74589,25 +75497,25 @@
   "repo": "nex3/perspective-el",
   "unstable": {
    "version": [
-    20200313,
-    1842
+    20200326,
+    2358
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "0debeeb542b2b449ad6c2a7e36eeb8691f27ed5b",
-   "sha256": "11jfm3sxnvpwn69y8y3cayq9svpfm21ch01nv58fd5padshagz5n"
+   "commit": "2ac6aff0569923993a251beddb3046ec44841408",
+   "sha256": "1z05vk85zbq4pj1xs69p5x3hwdshl829y28d5j2ckivl313p4had"
   },
   "stable": {
    "version": [
     2,
-    5
+    6
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "21877375d718e57d5e10808f06f78ba0c4d420c8",
-   "sha256": "0a1s1ygxday0602xk5dg19v1wjmz8dm4ajiwiflvyhqas4wcv9j2"
+   "commit": "2ac6aff0569923993a251beddb3046ec44841408",
+   "sha256": "1z05vk85zbq4pj1xs69p5x3hwdshl829y28d5j2ckivl313p4had"
   }
  },
  {
@@ -74637,6 +75545,21 @@
   }
  },
  {
+  "ename": "pest-mode",
+  "commit": "d3145c38d53aa94c6ae33f2bc0cb804e246a8558",
+  "sha256": "0d89s1lqif6mdbm1fh6h1m4414sxa382rjyw3qqsm5iz2b5vf14p",
+  "fetcher": "github",
+  "repo": "ksqsf/pest-mode",
+  "unstable": {
+   "version": [
+    20200321,
+    504
+   ],
+   "commit": "4ae88a9c81d499bbe99978ff0216b645fed70023",
+   "sha256": "1zc7dmgp3s9q33wkvw6i7zzlcaa65ixx3hxb78m62lk2a7fzb3ih"
+  }
+ },
+ {
   "ename": "pfuture",
   "commit": "5fb70c9f56a58b5c7a2e8b69b191aa2fc7c9bcc8",
   "sha256": "15fr9wkpv8v1p22wz7hsyihq7f807ck105c2crfs8y7capfvs53s",
@@ -75056,11 +75979,11 @@
   "repo": "emacs-php/php-mode",
   "unstable": {
    "version": [
-    20200301,
-    1404
+    20200323,
+    1215
    ],
-   "commit": "547a31d71991e7bb1d9e5d1ce45b6be6e5740058",
-   "sha256": "1iwbh8cc3a5ayq1r6lv8jkx5hfa4yfz1rgzmvb2s08si9q3y5wna"
+   "commit": "b5d99881002e3c62ebe874ad9f48474afc16c62d",
+   "sha256": "0pq7nccmrbvrf7120d48aqymdwh5jgjvzwi2820hdw8j6b7prm4h"
   },
   "stable": {
    "version": [
@@ -75148,8 +76071,8 @@
   "repo": "emacs-php/phpactor.el",
   "unstable": {
    "version": [
-    20200121,
-    1218
+    20200324,
+    1347
    ],
    "deps": [
     "async",
@@ -75158,8 +76081,8 @@
     "f",
     "php-runtime"
    ],
-   "commit": "5ccf65d59e6bbc9cd958dd5988e8fd2143b0d57f",
-   "sha256": "0k4dzn4a5y4kq7yz3ifvzziv90rp5si380c5ypgxr5iwb1b8a0l3"
+   "commit": "31fe2ea4dbd5c2f23efd6a4ec2ec881a4ced6b05",
+   "sha256": "0j52n0vs85q7zz5xfqw4rgrjjpr7mzfiqbzk7vwkcdmpnax608w5"
   },
   "stable": {
    "version": [
@@ -75996,6 +76919,25 @@
   }
  },
  {
+  "ename": "playonline",
+  "commit": "27d8ea9dac3637eed39a68308194b30c1672a8ca",
+  "sha256": "10shq955cz664r0j0yjfrnnbvzjpcyq638lm6hwkiia5xbvsdz88",
+  "fetcher": "github",
+  "repo": "twlz0ne/playonline.el",
+  "unstable": {
+   "version": [
+    20200317,
+    642
+   ],
+   "deps": [
+    "dash",
+    "request"
+   ],
+   "commit": "c75da1fdc1dfbd5d9aa274dc4e90ff631ea08e70",
+   "sha256": "0vkgzqdcxp4mlkz9z8p4307lbvjz51wpqhzpmyw4gwl079xc6gkq"
+  }
+ },
+ {
   "ename": "plenv",
   "commit": "a0819979b9567ac5fab9ed6821eba8fe7ee6a299",
   "sha256": "0dw9fy5wd9wm76ag6yyw3f9jnlj7rcdcxgdjm30h514qfi9hxbw4",
@@ -76368,15 +77310,15 @@
   "repo": "galaunay/poetry.el",
   "unstable": {
    "version": [
-    20200112,
-    2309
+    20200326,
+    1328
    ],
    "deps": [
     "pyvenv",
     "transient"
    ],
-   "commit": "01da45f478c8ace3dea5088746873ac2d7c23dbb",
-   "sha256": "08x1q54pnb3hh4a2wbmghffl5cnq99sf280qdbgc65vqhdkj8r1z"
+   "commit": "6dcc9d22cac6642a861770b5518398d8ee4fcc9a",
+   "sha256": "1za8s1k5ni11yqz64rz777lps400jnga151cca2f3l3xx2lcc2c7"
   },
   "stable": {
    "version": [
@@ -76472,20 +77414,21 @@
   "repo": "polymode/poly-R",
   "unstable": {
    "version": [
-    20190605,
-    2103
+    20200316,
+    1315
    ],
    "deps": [
     "poly-markdown",
     "poly-noweb",
     "polymode"
    ],
-   "commit": "0443c89b4d2bc2ed235a0c017109c2dbd342aa02",
-   "sha256": "1v5djxwgqksf84pxfpgbm7qaz3yq5ha7cac0792p62pj1ydzvghi"
+   "commit": "51ffeb6ec45dd44eafa4d22ad2d6150cc4b248fc",
+   "sha256": "0a4wx73jkngw5nbq1fa4jfhba6bsmyn6vnsf887x3xhb5v3ykhsg"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
@@ -76493,8 +77436,8 @@
     "poly-noweb",
     "polymode"
    ],
-   "commit": "0443c89b4d2bc2ed235a0c017109c2dbd342aa02",
-   "sha256": "1v5djxwgqksf84pxfpgbm7qaz3yq5ha7cac0792p62pj1ydzvghi"
+   "commit": "51ffeb6ec45dd44eafa4d22ad2d6150cc4b248fc",
+   "sha256": "0a4wx73jkngw5nbq1fa4jfhba6bsmyn6vnsf887x3xhb5v3ykhsg"
   }
  },
  {
@@ -76542,25 +77485,26 @@
   "repo": "polymode/poly-erb",
   "unstable": {
    "version": [
-    20190605,
-    2102
+    20200316,
+    1314
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "304204f415b9e46ee36b64531b7d170540828335",
-   "sha256": "0v13ssv9fjardg5as832hkhlx7yhjcdkm3bdcdj0qy31cmvk6dzb"
+   "commit": "56c744b8d87d8cbe0aba2696d4e8525afc4aa0e8",
+   "sha256": "118x9qrays54n6ksnln51ps5c298zs8ih7k49mn6aq6lpvwy5wjr"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "304204f415b9e46ee36b64531b7d170540828335",
-   "sha256": "0v13ssv9fjardg5as832hkhlx7yhjcdkm3bdcdj0qy31cmvk6dzb"
+   "commit": "56c744b8d87d8cbe0aba2696d4e8525afc4aa0e8",
+   "sha256": "118x9qrays54n6ksnln51ps5c298zs8ih7k49mn6aq6lpvwy5wjr"
   }
  },
  {
@@ -76571,27 +77515,28 @@
   "repo": "polymode/poly-markdown",
   "unstable": {
    "version": [
-    20190916,
-    702
+    20200316,
+    1315
    ],
    "deps": [
     "markdown-mode",
     "polymode"
    ],
-   "commit": "a867e5e5689f1e1a5bab5db57c7d39bac2448bcb",
-   "sha256": "1mrmrwmrv6xsafhn7ys3y8nbdqgzhkrb2mm0gir63g03kd6bn793"
+   "commit": "1536cf0c32f71d5cd05c90f7905905e38006e95d",
+   "sha256": "1q4qq0ql08hxkdrd2aal03560k612my7bvnfpfij3g432hn0p7v6"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
     "markdown-mode",
     "polymode"
    ],
-   "commit": "b0de1a9f3e4d7191b1b23b65ebf03dd0ac007afc",
-   "sha256": "0b6wlmhrpcw9g8rbw7q7k5fr2lgcp1rpy7d9p9f0gzn52yvcr4dr"
+   "commit": "1536cf0c32f71d5cd05c90f7905905e38006e95d",
+   "sha256": "1q4qq0ql08hxkdrd2aal03560k612my7bvnfpfij3g432hn0p7v6"
   }
  },
  {
@@ -76602,25 +77547,26 @@
   "repo": "polymode/poly-noweb",
   "unstable": {
    "version": [
-    20190605,
-    2102
+    20200316,
+    1315
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "4e65cb22d6bca901021205257f867f868989c665",
-   "sha256": "1pnjg615i5p9h5fppvn36vq2naz4r1mziwqjwwxka6kic5ng81h8"
+   "commit": "3b0cd36ca9a707e8a09337a3468fa85d81fc461c",
+   "sha256": "1jl5h4nf10xd2gdlsxi6h2n3z5zh26ffcixn68xfp5q4zl34zk8p"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "4e65cb22d6bca901021205257f867f868989c665",
-   "sha256": "1pnjg615i5p9h5fppvn36vq2naz4r1mziwqjwwxka6kic5ng81h8"
+   "commit": "3b0cd36ca9a707e8a09337a3468fa85d81fc461c",
+   "sha256": "1jl5h4nf10xd2gdlsxi6h2n3z5zh26ffcixn68xfp5q4zl34zk8p"
   }
  },
  {
@@ -76631,25 +77577,26 @@
   "repo": "polymode/poly-org",
   "unstable": {
    "version": [
-    20200304,
-    1057
+    20200316,
+    1315
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "9f89c1f590f616e2cd93df4f441cd1e9818cc7ac",
-   "sha256": "0r5vlvz2kinblxnzpshxa6mww3al4kwj8gy19hzrq3gj9jpr4ymb"
+   "commit": "8f4d11489532be98a291258ca27405aa528fc126",
+   "sha256": "1srnwcsn2bh8gqzxixkhffk7gbnk66kd4dgvxbnps5nxqc6v0qhc"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "8b0de75b1f9b65c22f7e3fbc205c9408214c8a1f",
-   "sha256": "04x6apjad4kg30456z1j4ipp64yjgkcaim6hqr6bb0rmrianqhck"
+   "commit": "8f4d11489532be98a291258ca27405aa528fc126",
+   "sha256": "1srnwcsn2bh8gqzxixkhffk7gbnk66kd4dgvxbnps5nxqc6v0qhc"
   }
  },
  {
@@ -76660,25 +77607,26 @@
   "repo": "polymode/poly-rst",
   "unstable": {
    "version": [
-    20190605,
-    2103
+    20200316,
+    1315
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "1a7d38e1c1d35cf64e4dad408db486a8e1931e61",
-   "sha256": "1xzbznm43hsvmg2ibqa6a1rymfy85nagjsxadn5mj9r04ivhf2fd"
+   "commit": "8530f56fbdce01bcf4004839ff54e4156282c2b5",
+   "sha256": "088wzagwxpf2j67wb1i6agqfa944sahh2fm8my2m50spbbd9ymhl"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
     "polymode"
    ],
-   "commit": "1a7d38e1c1d35cf64e4dad408db486a8e1931e61",
-   "sha256": "1xzbznm43hsvmg2ibqa6a1rymfy85nagjsxadn5mj9r04ivhf2fd"
+   "commit": "8530f56fbdce01bcf4004839ff54e4156282c2b5",
+   "sha256": "088wzagwxpf2j67wb1i6agqfa944sahh2fm8my2m50spbbd9ymhl"
   }
  },
  {
@@ -76719,27 +77667,28 @@
   "repo": "polymode/poly-slim",
   "unstable": {
    "version": [
-    20190605,
-    2103
+    20200316,
+    1316
    ],
    "deps": [
     "polymode",
     "slim-mode"
    ],
-   "commit": "a4fb8166d110b82eb3f1d0b4fc87045c3308bd7d",
-   "sha256": "06kwhmw5r5h4bsaqscr7dl3rfsa6wp642597zcmzdly94h26iwy9"
+   "commit": "9e9b5164c68955974fd5f5d220aec5af9b5ba3ae",
+   "sha256": "1742wlx07khra7xfbd6f8d3i030w87mncnyx6kf6im10khf8qwmb"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
    "deps": [
     "polymode",
     "slim-mode"
    ],
-   "commit": "a4fb8166d110b82eb3f1d0b4fc87045c3308bd7d",
-   "sha256": "06kwhmw5r5h4bsaqscr7dl3rfsa6wp642597zcmzdly94h26iwy9"
+   "commit": "9e9b5164c68955974fd5f5d220aec5af9b5ba3ae",
+   "sha256": "1742wlx07khra7xfbd6f8d3i030w87mncnyx6kf6im10khf8qwmb"
   }
  },
  {
@@ -76769,19 +77718,20 @@
   "repo": "polymode/polymode",
   "unstable": {
    "version": [
-    20200307,
-    1519
+    20200316,
+    1314
    ],
-   "commit": "44601aace1e9cef9b89379cc7b4e2144cca60b6a",
-   "sha256": "0wl2lc5niq89axbxi2frls2iq0ns6pmdqdaknnppgrasvfjxfwj3"
+   "commit": "44265e35161d77f6eaa09388ea2256b89bd5dcc8",
+   "sha256": "18ssl2h861dm2jkd3df6wkfr48p8zk337dbvpq5522kia7fq1lbn"
   },
   "stable": {
    "version": [
     0,
+    2,
     2
    ],
-   "commit": "82a0c3d71cc02e32a347033b3f42afeac4e43f66",
-   "sha256": "04v0gnzfsjb50bgly6kvpryx8cyzwjaq2llw4qv9ijw1l6ixmq3b"
+   "commit": "44265e35161d77f6eaa09388ea2256b89bd5dcc8",
+   "sha256": "18ssl2h861dm2jkd3df6wkfr48p8zk337dbvpq5522kia7fq1lbn"
   }
  },
  {
@@ -76911,29 +77861,28 @@
   "repo": "aki2o/emacs-pophint",
   "unstable": {
    "version": [
-    20170918,
-    248
+    20200322,
+    737
    ],
    "deps": [
     "log4e",
     "yaxception"
    ],
-   "commit": "909025c5a871ca4b9ec7aed7f1a27c819a94dba1",
-   "sha256": "0qbb36qijkzbzxlmqsvvddm7x2gk9rkafnyjbkxsl76rz1ajy6nz"
+   "commit": "2c43423c87c6892b0fd16e3749e021a3743ee708",
+   "sha256": "0ila3vqv5wkna11qmm221iv1nzafnvffda19mqmv8fpl2iv1197s"
   },
   "stable": {
    "version": [
-    0,
-    9,
-    3
+    1,
+    1,
+    0
    ],
    "deps": [
     "log4e",
-    "popup",
     "yaxception"
    ],
-   "commit": "28dc6a76e726f371bcca3160c27ae2017324399c",
-   "sha256": "18i0kivn6prh5pwdr7b4pxfxqsc8l4mks1h6cfs7iwnfn15g5k19"
+   "commit": "2c43423c87c6892b0fd16e3749e021a3743ee708",
+   "sha256": "0ila3vqv5wkna11qmm221iv1nzafnvffda19mqmv8fpl2iv1197s"
   }
  },
  {
@@ -76983,10 +77932,10 @@
  },
  {
   "ename": "popup-complete",
-  "commit": "b43b85f90c476a3b88f94927a7db90bdc72cd171",
-  "sha256": "04bpm31zx87j390r2xi1yl4kyqgalmyqc48xarsm67zfww9fw9c1",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1mw892nr3dfhsjiqyyf3znd7vji4kxly295bbq74vszza2i0b87i",
   "fetcher": "github",
-  "repo": "syohex/emacs-popup-complete",
+  "repo": "emacsorphanage/popup-complete",
   "unstable": {
    "version": [
     20141109,
@@ -77205,11 +78154,11 @@
   "repo": "tumashu/posframe",
   "unstable": {
    "version": [
-    20200304,
-    631
+    20200319,
+    907
    ],
-   "commit": "4ff106ed5c6e3dc9ddba7e158c7ae9085a43b0bc",
-   "sha256": "1468g9n1dxnsws31zvzm9y6sfcpxx24qj24jmsv7x6r4qk00bq29"
+   "commit": "c15800a8388696474fe9f8466fce1b40735b9304",
+   "sha256": "14xjly5cqziqb0gnklsgg28vimdrpq8273z2inf1c0jnak8x2vzn"
   },
   "stable": {
    "version": [
@@ -77234,6 +78183,14 @@
    ],
    "commit": "ebaacd7266ae7a66605317f57b9f42e9cfb2ce1e",
    "sha256": "0kdcpd59jd1gasqk5gx4ggbyp492b53dy6n3nkv9j2rj8618yzs6"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "commit": "ebaacd7266ae7a66605317f57b9f42e9cfb2ce1e",
+   "sha256": "0kdcpd59jd1gasqk5gx4ggbyp492b53dy6n3nkv9j2rj8618yzs6"
   }
  },
  {
@@ -77415,11 +78372,11 @@
   "repo": "conao3/ppp.el",
   "unstable": {
    "version": [
-    20200313,
-    437
+    20200318,
+    806
    ],
-   "commit": "7504b1e4f3aa7063f15ba683e0e8e65bc1312ab0",
-   "sha256": "1jsliv29h4vz8np8l6vclly5n4i8w1v7kf3d2iq66spr36csdilq"
+   "commit": "bfb9ddfbc124b8b97d7a12610947b76794c0fd06",
+   "sha256": "1632y0vaxv043w4js5jpd9zr36bzy9pwxnhmlh44hmkvgfw07qvn"
   },
   "stable": {
    "version": [
@@ -77480,8 +78437,8 @@
     20191224,
     220
    ],
-   "commit": "7fd8c3b8028da4733434940c4aac1209281bef58",
-   "sha256": "1igsjdkxax2lavglc03h0dk3d7fpgqvlymnhyxx738sjyfzl09cr"
+   "commit": "a194852e8022762843052e58a9d0fbdaa1df0fe5",
+   "sha256": "0da4s32fza42vdiqhh7cdim08by5i4909q93ivxkmgrmqfgdvz0p"
   },
   "stable": {
    "version": [
@@ -77665,25 +78622,25 @@
   "repo": "alphapapa/prism.el",
   "unstable": {
    "version": [
-    20200301,
-    1139
+    20200315,
+    1926
    ],
    "deps": [
     "dash"
    ],
-   "commit": "a9bb7ec3dcf83b4352f2a68134b6fd1d4977b27f",
-   "sha256": "04awq9h795ji90bp7z1d9cmg9s2sjx32snbzyp81gb55z02abihd"
+   "commit": "636059b6ca21d7dd2d46776d799f94b476c62ee2",
+   "sha256": "014zvdqizjqp1cxs8a45nj2nfpvjsfmls41780pjdvzvrvyq16p0"
   },
   "stable": {
    "version": [
     0,
-    1
+    2
    ],
    "deps": [
     "dash"
    ],
-   "commit": "682034ff5f3fd62bd24eee1873a2c68498e8b7d3",
-   "sha256": "1bzqqvyraj5h4flzmhxbjgaw98wgqd21hmjq1jg4j3yxwg8cbrw9"
+   "commit": "636059b6ca21d7dd2d46776d799f94b476c62ee2",
+   "sha256": "014zvdqizjqp1cxs8a45nj2nfpvjsfmls41780pjdvzvrvyq16p0"
   }
  },
  {
@@ -78078,14 +79035,14 @@
   "repo": "bbatsov/projectile",
   "unstable": {
    "version": [
-    20200307,
-    1701
+    20200329,
+    1908
    ],
    "deps": [
     "pkg-info"
    ],
-   "commit": "588692ad56395ed4fd072bac496b33992096bfe4",
-   "sha256": "1dysdh4nwxxz6yqimy65ssyvkyki0lk8j0v120csh9igb97ryy6v"
+   "commit": "56e18fcefa2f286edfec98853189985823d0e53c",
+   "sha256": "0iq93ghwj96xxfsa5s90g36ngwpa92bj91zvkkk40zn9faqkdllc"
   },
   "stable": {
    "version": [
@@ -78450,11 +79407,11 @@
   "repo": "chuntaro/emacs-promise",
   "unstable": {
    "version": [
-    20200209,
-    616
+    20200320,
+    341
    ],
-   "commit": "c45b4e09d796385823cfb42ab15a4e67feb01b77",
-   "sha256": "1crhny97p6yz3z2lb1m43334vsprdiz3sb79jp7czyxskkwqn86r"
+   "commit": "02c470bd6c7bf4ea4244d304f57997bad37c9bb7",
+   "sha256": "1sjwwram45pb9bjap6h24m6734qr5yhnai2lqbdvxd0nplfv91ng"
   },
   "stable": {
    "version": [
@@ -78530,11 +79487,11 @@
   "repo": "ProofGeneral/PG",
   "unstable": {
    "version": [
-    20200313,
-    907
+    20200326,
+    1804
    ],
-   "commit": "23d1199c24927cf5dc6fa53f082291b6e181cd13",
-   "sha256": "1c1rz3n3bli4ggnkp3zk0j5df1s8hsrsygdjn5nqs50gprb683dp"
+   "commit": "9196749d55413224355409d55003f7f8c8ba0f79",
+   "sha256": "17ak2nbgiqwldk6y4cg4qq49hnvzw32jm4m3dqag2smvkl6rjw19"
   },
   "stable": {
    "version": [
@@ -78637,8 +79594,8 @@
     20170526,
     1650
    ],
-   "commit": "422053f3bcb39cac483d2769e936c473e7c8bcdb",
-   "sha256": "0hlyxvriivk0fydqjx0862v53rynlh50sci9h5m3j5b7y3nsykry"
+   "commit": "dec4939439d9ca2adf2bb14edccf876c2587faf2",
+   "sha256": "0kxrgv1pb38lsgpgilaqjlvw6inmlbs8rdrm2bfilzcwwrr92bi9"
   },
   "stable": {
    "version": [
@@ -78702,8 +79659,8 @@
   "repo": "purescript-emacs/psc-ide-emacs",
   "unstable": {
    "version": [
-    20191217,
-    1144
+    20200317,
+    1013
    ],
    "deps": [
     "company",
@@ -78714,8 +79671,8 @@
     "s",
     "seq"
    ],
-   "commit": "2a9394422da317b54aa1da021aea6cded19004c1",
-   "sha256": "18pfi04grvdbgz8v5yb06y5mv0q6mkwm4rj43h35nw75l2gwaapv"
+   "commit": "7fc2b841be25f5bc5e1eb7d0634436181c38b3fe",
+   "sha256": "0r0fymyai30jimm34z1cmav4wgij8ci6s1d9y7qigygfbbfrdsmj"
   }
  },
  {
@@ -78849,8 +79806,8 @@
   "repo": "fvdbeek/emacs-pubmed",
   "unstable": {
    "version": [
-    20200312,
-    1930
+    20200315,
+    1938
    ],
    "deps": [
     "deferred",
@@ -78858,14 +79815,14 @@
     "s",
     "unidecode"
    ],
-   "commit": "b801f7480401e6f3207f150cd945fc5abd96f884",
-   "sha256": "1w9hxh94zkgnsw26hqrs5gdnb8xi7cnavjby9dy71l9n6js7bdb1"
+   "commit": "cc5d258ac83650ad6e8043c8c01d9162c2460308",
+   "sha256": "13n7i80734848by8f0b3z0mqv0rh9x42hglkc8abhmilc0sg4i0y"
   },
   "stable": {
    "version": [
     0,
     4,
-    1
+    2
    ],
    "deps": [
     "deferred",
@@ -78873,8 +79830,8 @@
     "s",
     "unidecode"
    ],
-   "commit": "b801f7480401e6f3207f150cd945fc5abd96f884",
-   "sha256": "1w9hxh94zkgnsw26hqrs5gdnb8xi7cnavjby9dy71l9n6js7bdb1"
+   "commit": "f6e13137ad7731c8b0eb1720aed48d1a1edf4719",
+   "sha256": "1nanaj0liilnplh1njbmch7qsa2h7izkc51bpd4hxw6k4bslplqc"
   }
  },
  {
@@ -79461,8 +80418,8 @@
   "repo": "tumashu/pyim",
   "unstable": {
    "version": [
-    20200315,
-    735
+    20200326,
+    719
    ],
    "deps": [
     "async",
@@ -79470,8 +80427,8 @@
     "pyim-basedict",
     "xr"
    ],
-   "commit": "92af8c283531f08aebf23fb6a0efd452fcc58d42",
-   "sha256": "0nzhg4hl1wv7yz1rbwm6j3vw9lgpg7rl2al1xbxliqkrfv9lh1mi"
+   "commit": "84af8e80a4ac8fa19e7b01a3f9984280e7d501b4",
+   "sha256": "0351mvnnm0xzmlm71byxlbn8dp7qnpw8d12ghwdmd53q87pfgz9s"
   },
   "stable": {
    "version": [
@@ -79616,8 +80573,8 @@
     20170402,
     1255
    ],
-   "commit": "16ed52ec500388aff2277a7144fc8138afb6f796",
-   "sha256": "01xh11991bwijhq44sp4xbmwsmfgj10c3ip9icns143c878svany"
+   "commit": "53e5406b9279008f3ae8b5f045e5cd5773771d70",
+   "sha256": "0c6d0pmbinj65kacnqzbsa6acb3as8blrl5f202s8bbb9zd62vam"
   }
  },
  {
@@ -79694,14 +80651,14 @@
   "repo": "ionrock/pytest-el",
   "unstable": {
    "version": [
-    20181005,
-    1524
+    20200330,
+    41
    ],
    "deps": [
     "s"
    ],
-   "commit": "1bfa7549001e61ecd59cd6eae7c6656a924d1ba4",
-   "sha256": "1ry0czn0qjjiw75v47jamxbfzh70jxai6lvf3pp5v87wp1xhnznh"
+   "commit": "6934047242db79b1c53e9fe3e0734cc9719ed1c4",
+   "sha256": "1gh5sqmhw7hl67m7nqgd4wwns7a10j0sfmabm97k1cmmbwdj0vca"
   }
  },
  {
@@ -79712,20 +80669,20 @@
   "repo": "poppyschmo/pytest-pdb-break",
   "unstable": {
    "version": [
-    20191218,
-    530
+    20200316,
+    301
    ],
-   "commit": "8b097f5fc8b42a9eddb5b020fd2d531c2b1fcddd",
-   "sha256": "0r1j9jjm013gah0cx10wrmv0blqqk6fwgs3wfgq7hsdrkm4pjil9"
+   "commit": "007427af712df9fa2c54869388d74e97f91b2bd7",
+   "sha256": "14l14605lgq498j37916p4gjwkqjb8z4ky85wlk3pgyx6bp20ckz"
   },
   "stable": {
    "version": [
     0,
     0,
-    7
+    8
    ],
-   "commit": "8b097f5fc8b42a9eddb5b020fd2d531c2b1fcddd",
-   "sha256": "0r1j9jjm013gah0cx10wrmv0blqqk6fwgs3wfgq7hsdrkm4pjil9"
+   "commit": "007427af712df9fa2c54869388d74e97f91b2bd7",
+   "sha256": "14l14605lgq498j37916p4gjwkqjb8z4ky85wlk3pgyx6bp20ckz"
   }
  },
  {
@@ -79736,15 +80693,15 @@
   "repo": "wbolster/emacs-python-black",
   "unstable": {
    "version": [
-    20190817,
-    1754
+    20200324,
+    930
    ],
    "deps": [
     "dash",
     "reformatter"
    ],
-   "commit": "706d317f0874d7c5b5a3d844698bcfb8b1fe253e",
-   "sha256": "0fjnd85nlkck156dj6cahk8chhgkbgl2kwywqzi8bl4yj700m4dk"
+   "commit": "a11ca73f6dfcdc125d27ff184496d66bdbd71326",
+   "sha256": "1jv2fwlf7q8l5npqcpr05xzqmfqlx6xmjn0zphh9rx6dd2dpdma9"
   },
   "stable": {
    "version": [
@@ -80205,11 +81162,11 @@
   "repo": "quelpa/quelpa",
   "unstable": {
    "version": [
-    20200304,
-    1835
+    20200329,
+    719
    ],
-   "commit": "497c281fce65c671aa2bfe780aea5dff4f097d13",
-   "sha256": "05k096qky4hn9m27gv3pri95mhn57m0vl8lp8phz5br9gm1isp9h"
+   "commit": "a3c4490a3bb08ee7819b330a93a284b2fd4cd70c",
+   "sha256": "1rm27y9zni9nscrvsmvi653nwkrlr4gd4cy5pyrynh3q32yhkqik"
   }
  },
  {
@@ -80312,10 +81269,10 @@
  },
  {
   "ename": "quickrun",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "0f989d6niw6ghf9mq454kqyp0gy7gj34vx5l6krwc52agckyfacy",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "02wxja6l1xq7gini17ana8qy4kvpfzri0gn2dypjnj2nfh1vvk9i",
   "fetcher": "github",
-  "repo": "syohex/emacs-quickrun",
+  "repo": "emacsorphanage/quickrun",
   "unstable": {
    "version": [
     20200315,
@@ -80480,14 +81437,15 @@
   "repo": "greghendershott/racket-mode",
   "unstable": {
    "version": [
-    20200218,
-    1623
+    20200329,
+    1841
    ],
    "deps": [
-    "faceup"
+    "faceup",
+    "pos-tip"
    ],
-   "commit": "7a1414f83981aa174feba28f3d83e95574c7f075",
-   "sha256": "1bszd21fwaqfqkksqpqiq5058hm7wr500qj75zx1xa2j6r67w7sa"
+   "commit": "c8ac9971814ca9df8ec406f3b76c9ba4878a5d57",
+   "sha256": "0jnw9plmw3r2c12kcy4435v2kf0vmmla9ljb670zhcg690a5cjqh"
   }
  },
  {
@@ -81811,19 +82769,19 @@
   "repo": "purcell/reformatter.el",
   "unstable": {
    "version": [
-    20200304,
-    2250
+    20200327,
+    2358
    ],
-   "commit": "af393979570b801263bd57d7f136dc5bfd1106d1",
-   "sha256": "04ikh7rmm2rs3wjzgl8b0jgpp49kwafffix942av3bmcd4dw3a4d"
+   "commit": "e8f70b20caf6672353a2b0ee3161d4791c412696",
+   "sha256": "19mji7frfvj925nx2m2cdvsx0lf69dzdl5wbdppyra9717rsspbq"
   },
   "stable": {
    "version": [
     0,
-    4
+    5
    ],
-   "commit": "b2963f51009948d5e4885237a148695008d4ccbc",
-   "sha256": "0hhy6x1bkwlhdlarsgm06g3am4yh02yqv8qs34szpzgy53x84qah"
+   "commit": "e8f70b20caf6672353a2b0ee3161d4791c412696",
+   "sha256": "19mji7frfvj925nx2m2cdvsx0lf69dzdl5wbdppyra9717rsspbq"
   }
  },
  {
@@ -81949,6 +82907,30 @@
   }
  },
  {
+  "ename": "register-quicknav",
+  "commit": "fed1473b565f42f7849c7676d0c9739a39562c95",
+  "sha256": "1487mkyz2h5929580racxr4nbc343klns9bcm7m5jn4hsx5aiq6m",
+  "fetcher": "git",
+  "url": "https://schlomp.space/tastytea/register-quicknav.git",
+  "unstable": {
+   "version": [
+    20200325,
+    1612
+   ],
+   "commit": "06afa1efc490a6cbc1d814fc6f1e7a80a601ecc7",
+   "sha256": "055bffsa81chjpv39p2fn10dwikpzb034k19k0mc1026d8a423kg"
+  },
+  "stable": {
+   "version": [
+    0,
+    4,
+    3
+   ],
+   "commit": "e30883a7085ad1f4e1113dc84f5f2222ac4bcd37",
+   "sha256": "18mskl1w5n2cksjds27d1gcrwb065vp9n6hnw9402j3n6z0w8srv"
+  }
+ },
+ {
   "ename": "related",
   "commit": "555932a7b9cf11b50a61c2a9dd2636fd6844fac8",
   "sha256": "08cfr5qbm1h5j4v3vf3kjjwb9nxsrk74lx9gi1icdhqw631h3yxf",
@@ -82583,19 +83565,19 @@
   "repo": "a13/reverse-im.el",
   "unstable": {
    "version": [
-    20200219,
-    1137
+    20200324,
+    1113
    ],
-   "commit": "45a55810ce3e07d4e42d9fb666100d7242004b4e",
-   "sha256": "1669fksymr24fz2lhxv419fm7csm94bkpycz20l2qy55ppn03his"
+   "commit": "030e89a38df6d194546b0629f90c9e1898370eb7",
+   "sha256": "1mfjwxf1l0py2ididzdv86r118ws9iscdv23a0kgf2cjd6ydpbjc"
   }
  },
  {
   "ename": "reverse-theme",
-  "commit": "81f0f525680fea98e804f39dbde1dada887e8821",
-  "sha256": "163kk5qnz9bk3l2fam79n264s764jfxbwqbiwgid8kw9cmk0v776",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "133wl2k0niy9ih0bjn7qx51fykqjj392ibkp1bvmy5dbl09x4gic",
   "fetcher": "github",
-  "repo": "syohex/emacs-reverse-theme",
+  "repo": "emacsorphanage/reverse-theme",
   "unstable": {
    "version": [
     20141205,
@@ -82833,6 +83815,27 @@
   }
  },
  {
+  "ename": "rime",
+  "commit": "0144879cf0dfe4f0447c5da7cd061f7aac91d4fe",
+  "sha256": "1m9jp307czp4mx4xpfnj9bhq7w5xg656dx9l9ih603cbz24salq4",
+  "fetcher": "github",
+  "repo": "DogLooksGood/emacs-rime",
+  "unstable": {
+   "version": [
+    20200329,
+    1205
+   ],
+   "deps": [
+    "cl-lib",
+    "dash",
+    "popup",
+    "posframe"
+   ],
+   "commit": "f78719e5d8c8d2ec6da0f66e0b1e7d660d3a5a89",
+   "sha256": "0pcncx1w7y8rnsg23lf055cc38xrwhx26yhrqwzdf996cad54y6w"
+  }
+ },
+ {
   "ename": "rimero-theme",
   "commit": "c6d07b0c021001195e6e0951c890566a5a784ce1",
   "sha256": "0jbknrp9hc8s956cy2gqffxnx0fgnhmjqp2i4vyp0ywh45wrls5r",
@@ -83025,8 +84028,8 @@
    "deps": [
     "inf-ruby"
    ],
-   "commit": "8190cb7c7beb8385dd3abf6ea357f33d8981ae8a",
-   "sha256": "1lqckmfxm2csh0as22bwf4rvbn5rwqry18xx9m5nfhfl57360q75"
+   "commit": "68503b32bb3a005787ecb7a7fdeb3bb4a2317e2b",
+   "sha256": "1v4nbfr3rhdm1733gb88cv0f018iy53cw5hdcwpshrmjj36a2lpn"
   },
   "stable": {
    "version": [
@@ -83436,26 +84439,26 @@
  },
  {
   "ename": "ruby-electric",
-  "commit": "5fd5fa797a813e02a6433ecbe2bca1270a383753",
-  "sha256": "02xskivi917l8xyhrij084dmzwjq3knjcn65l2iwz34s767fbwl2",
+  "commit": "ccae5ba7c1088837f2dd6cb0992f49ea2dc5bcdf",
+  "sha256": "1fj5vb4n7jiq93z0yakr39vyfd0f5yhf4p4aw4bdm9cx5dmpr8g6",
   "fetcher": "github",
-  "repo": "knu/ruby-electric.el",
+  "repo": "ruby/elisp-ruby-electric",
   "unstable": {
    "version": [
-    20191217,
-    1214
+    20200328,
+    1528
    ],
-   "commit": "ea9571ce3af546fdb1234274c8b1a147109b4869",
-   "sha256": "16g1764igf9y717sg2rg4b2ysxxlnyjyzk2s6w9jx9dnr2lqih39"
+   "commit": "f2323cd9b5df3b34aa9810ba8109502824925d23",
+   "sha256": "1p0l0fsn0jcgb4raimyc4d1wpfksrfhn0rkwdazadvm6s8baydf7"
   },
   "stable": {
    "version": [
     2,
     3,
-    2
+    3
    ],
-   "commit": "0e6c1f1022ac84db6a03d60e7a0f9f1fd42ecc99",
-   "sha256": "1l3zz62d04m3kwj3swffsbkpvkayp9r651cpl07palghx9b34h3m"
+   "commit": "f2323cd9b5df3b34aa9810ba8109502824925d23",
+   "sha256": "1p0l0fsn0jcgb4raimyc4d1wpfksrfhn0rkwdazadvm6s8baydf7"
   }
  },
  {
@@ -83760,11 +84763,11 @@
   "repo": "rust-lang/rust-mode",
   "unstable": {
    "version": [
-    20200303,
-    932
+    20200322,
+    1749
    ],
-   "commit": "eb5270bc1cef48d30f33c2a312bff0638a9ff821",
-   "sha256": "1iip9qhcr3rzvpns71l44vwmm80n5ccldc8zw48xl2ghlxpk2r08"
+   "commit": "2df6cf72163db57fd0c79fefd0e79f38f29f7d93",
+   "sha256": "1f8fbzkc6ifx91kcf5blx22bh3713qmm5kj95i06k8cn10nlx11f"
   },
   "stable": {
    "version": [
@@ -84630,11 +85633,11 @@
   "repo": "ideasman42/emacs-scroll-on-drag",
   "unstable": {
    "version": [
-    20200106,
-    442
+    20200328,
+    116
    ],
-   "commit": "2fbd643ea9632d0e15d32e70b6f3c641476e3071",
-   "sha256": "1gjwsyvjwj4xsp83nws4bcmzsyxv4zp95a9fx0md86cc9gxw3h6n"
+   "commit": "2d79a6d9c2497f701335fd66154a67cd51073c9f",
+   "sha256": "0m2605k8i2z44mqw5ibviwsbn3j8g8hs4q9cih5ip14lik6hhrdz"
   }
  },
  {
@@ -85037,16 +86040,16 @@
   "repo": "conao3/seml-mode.el",
   "unstable": {
    "version": [
-    20200203,
-    1858
+    20200323,
+    220
    ],
    "deps": [
     "htmlize",
-    "simple-httpd",
+    "impatient-mode",
     "web-mode"
    ],
-   "commit": "6e09efaa613f411b9cc8cd30f46ddab44154a1e2",
-   "sha256": "0f6x2w94y1clqzl65f3qgw9hm9d97p91jaak4k8k92qnd9s3471r"
+   "commit": "32f0dbf5a9b39535bc079c9c70456479d0dd3fb2",
+   "sha256": "1284fdraamjsbaslyk8k75a3m1rfa1i8pwrh56k3vsmfmd8a0cib"
   },
   "stable": {
    "version": [
@@ -85130,6 +86133,25 @@
   }
  },
  {
+  "ename": "separedit",
+  "commit": "297ba98f4bc011948c34aad30ae28b7adc611938",
+  "sha256": "00p4crbzr5fkcj8lhpfd9w44ynpmhd9fay9yrwgz0yh87lll6nqx",
+  "fetcher": "github",
+  "repo": "twlz0ne/separedit.el",
+  "unstable": {
+   "version": [
+    20200325,
+    1711
+   ],
+   "deps": [
+    "dash",
+    "edit-indirect"
+   ],
+   "commit": "2ee55780eeced9b0bb086a9d731526ee1a9c3658",
+   "sha256": "08xxl3z7abqk0m4lwflp0cnz7pcy66f6hps8dmxfas2hgl0qyz7i"
+  }
+ },
+ {
   "ename": "sequences",
   "commit": "4cf716df68fb2d6a41fe75fac0b41e356bddcf30",
   "sha256": "12wnkywkmxfk2sx40h90k53d5qmc8hiky5vhlyf0ws3n39zvhplh",
@@ -85332,6 +86354,21 @@
   }
  },
  {
+  "ename": "sexp-diff",
+  "commit": "d29e4d21bf808a74bef27ee00d500ec1f816be74",
+  "sha256": "0cr35b7k6a5japm14bjgnw93g1kqggzwlqwwr0mhg73klnn6qyn8",
+  "fetcher": "github",
+  "repo": "xuchunyang/sexp-diff.el",
+  "unstable": {
+   "version": [
+    20200314,
+    2018
+   ],
+   "commit": "7e8c988bea2af209e17b70fa51316ade55529acb",
+   "sha256": "1daz6jss2346a2p30fhc66m230sj7vyxm7jw6zqz5n8h9lqxpjyk"
+  }
+ },
+ {
   "ename": "sexp-move",
   "commit": "855ea20024b606314f8590129259747cac0bcc97",
   "sha256": "0sdm3kr4594fy9hk8yljj2iwa40bgs8nqpwwl2a60r060spz54z9",
@@ -85517,6 +86554,21 @@
   }
  },
  {
+  "ename": "share2computer",
+  "commit": "47647167cc7b9d7ad0a2fc4785849f69dc07d6cb",
+  "sha256": "067xc1awknx9iqwd4lfj1gkni6aszzfr1179avzzfn1ggp7yzkmq",
+  "fetcher": "github",
+  "repo": "tumashu/share2computer",
+  "unstable": {
+   "version": [
+    20200316,
+    31
+   ],
+   "commit": "15da47625a800e3310b8dc714bd4e41e32966d6a",
+   "sha256": "04h8vhg0fxabjlqgfqsvxkgsmkcp5qmcinxg46xib386r7rzrx4g"
+  }
+ },
+ {
   "ename": "shell-command",
   "commit": "ae489be43b1aee93614e40f492ebdf0b98a3fbc1",
   "sha256": "01nviashfr64wm78zi3vrqrqdqgsamp76d9kasxv0b7fqmfx7yjk",
@@ -85807,8 +86859,8 @@
     20190930,
     730
    ],
-   "commit": "cf30c23a119ef50d1c3ae3fa19ba3c1d07800466",
-   "sha256": "1d94qrb4kvvz75pgqci10akr1cg5knss66mix6sdfmcvg2q8l3zh"
+   "commit": "cbb15424431cd5f579b12307b8fa03122d525006",
+   "sha256": "1wwk5q3viw32pwmf4bjhbywkj0d1prwnldgdjfjzmr3rnvfw7w9h"
   }
  },
  {
@@ -86669,8 +87721,8 @@
   "repo": "yuya373/emacs-slack",
   "unstable": {
    "version": [
-    20200315,
-    743
+    20200320,
+    457
    ],
    "deps": [
     "alert",
@@ -86680,8 +87732,8 @@
     "request",
     "websocket"
    ],
-   "commit": "c1baa8f57895cc7093dcd156bd268c5a0b3ab68c",
-   "sha256": "1fklwbj1cgl2r0mqnw0yd62xqyfnmh11n4dmmsvvcjscw7n82p60"
+   "commit": "03345aabe728da3f5238954eaa0ddbce604807d5",
+   "sha256": "0kyd959a9113vd7d4prgfga7sj6y6n8zrw6nkqxsfkm5sfpv31iv"
   }
  },
  {
@@ -86742,15 +87794,15 @@
   "repo": "slime/slime",
   "unstable": {
    "version": [
-    20200314,
-    1241
+    20200326,
+    1453
    ],
    "deps": [
     "cl-lib",
     "macrostep"
    ],
-   "commit": "9add8d167cee8ecec0e0ce0f2afa2505499000a2",
-   "sha256": "09c9zpsbgg8c219hxrmw85w43qb0xdqq3skqpzig29yzbn4y0pvl"
+   "commit": "faa0c6a0b7c77f6a2db8d3244f24563106857944",
+   "sha256": "1dgmakfazz3p6s64qmy03schapxi1010sa8g7p1paqkpawr9d5qp"
   },
   "stable": {
    "version": [
@@ -86970,8 +88022,8 @@
     20200314,
     55
    ],
-   "commit": "c3a0e8b0480416f73aca253fe9c24724fbe6a603",
-   "sha256": "1wm18sqyhh9hgn8icn6bqjfp3jkfyr9f8vfvhcs4cfv3av032pnc"
+   "commit": "1382bda945ecfb4b177c7d05a36da8fd41e0384c",
+   "sha256": "1hmdx3nakhpsmg6zr52090pimmy0kpjz2adyi0m1wzh9zdg5cx4x"
   },
   "stable": {
    "version": [
@@ -87143,11 +88195,11 @@
   "repo": "zenitani/elisp",
   "unstable": {
    "version": [
-    20190522,
-    1125
+    20200322,
+    24
    ],
-   "commit": "366a4cdab1ad20105910bc24c4f3e4f8734e4eae",
-   "sha256": "1kk7ya14p4vpw31rzcgwq0pmay0wm3pg2j70fv5mms9ala1jyhsy"
+   "commit": "e2a390b9b8518ad62283046400a0fb3e81eb5b79",
+   "sha256": "1s23r0dr10wjnk0j5gicy1dxvbhvnz3zmbssk431vccbba1jm8yg"
   }
  },
  {
@@ -87477,15 +88529,15 @@
   "repo": "Fuco1/smartparens",
   "unstable": {
    "version": [
-    20200229,
-    1752
+    20200324,
+    2147
    ],
    "deps": [
     "cl-lib",
     "dash"
    ],
-   "commit": "1f8857c5febe8b82654ba44ae43e6d2f435f4832",
-   "sha256": "02b05rh474kyk3vmkgh54366k7fqshdf2x5zgrd5q4a8jcffb5nf"
+   "commit": "555626a43f9bb1985aa9a0eb675f2b88b29702c8",
+   "sha256": "0hfywwhzv2dphi7gacp1sdyk47cmajzx5sqrcwxkn7mlwx876nsx"
   },
   "stable": {
    "version": [
@@ -87604,17 +88656,17 @@
  },
  {
   "ename": "smeargle",
-  "commit": "c5b985b24a23499454dc61bf071073df325de571",
-  "sha256": "1dy87ah1w21csvrkq5icnx7g7g7nxqkcyggxyazqwwxvh2silibd",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "04z1prwdd1h91jyf9fnggqp657830657kvbch7m2f2pgmn3czvvs",
   "fetcher": "github",
-  "repo": "syohex/emacs-smeargle",
+  "repo": "emacsorphanage/smeargle",
   "unstable": {
    "version": [
-    20161212,
-    2358
+    20200323,
+    533
    ],
-   "commit": "0665b1ff5109731898bc4a0ca6d939933b804777",
-   "sha256": "0p0kxmjdr02l9injlyyrnnzqdbb7mirz1xx79c3lw1rgpalf0jnf"
+   "commit": "a0e9bc2ea694aa2940102e1f4cfd8db8be437931",
+   "sha256": "05n6vgxw91cxk5ri4mmsxc62jcad0yhjjnn16gk1qhjxjqvrlcis"
   },
   "stable": {
    "version": [
@@ -88098,14 +89150,14 @@
   "repo": "bbatsov/solarized-emacs",
   "unstable": {
    "version": [
-    20200309,
-    2116
+    20200329,
+    1048
    ],
    "deps": [
     "dash"
    ],
-   "commit": "8de268144ab2171896906c8553be7763d5c45fa5",
-   "sha256": "1z19axaaipia56c9b4nvw4wlcr89wapnwza2gc3mdph3jkwwfjfl"
+   "commit": "8cd79c8afd7563a69764c4174098d2b8e7fd0c96",
+   "sha256": "1x1cbyd7kr1izcbbffq1amxgg1gqfwaa5y4m17ffmdrhal37mdzb"
   },
   "stable": {
    "version": [
@@ -88337,21 +89389,21 @@
  },
  {
   "ename": "sound-wav",
-  "commit": "8333470e3d84d5433be489a23e065c876bed2ab2",
-  "sha256": "1vrwzk6zqma7r0w5ivbx16shys6hsifj52fwlf5rxs6jg1gqdb4f",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1sb3345x6rbbxr71x12fj6bzzvj6nin712777rxk59riam4nknd6",
   "fetcher": "github",
-  "repo": "syohex/emacs-sound-wav",
+  "repo": "emacsorphanage/sound-wav",
   "unstable": {
    "version": [
-    20181126,
-    1726
+    20200323,
+    728
    ],
    "deps": [
     "cl-lib",
     "deferred"
    ],
-   "commit": "49a9f10334b914cf6429e49b5449e0711a3aa251",
-   "sha256": "1zg32gn0r06qcp6i5fxwns8xv5nqpc6hfzqajwj0hfvhkqdndv4j"
+   "commit": "8a18f8a62f4fdde80dfa069986aa959091a42472",
+   "sha256": "18iahla8m9b6bdn63x2yrvr3rzyw5ybipf44q9avyy6s1pqsby2a"
   },
   "stable": {
    "version": [
@@ -88448,10 +89500,10 @@
  },
  {
   "ename": "sourcemap",
-  "commit": "557d18259543263932fccdbaf44c4e7986bd277b",
-  "sha256": "0cjg90y6a0l59a9v7d7p12pgmr21gwd7x5msil3h6xkm15f0qcc5",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "1yxjvv3vg14in492hzb3czjfwrg2qp60h4mpxxpx18cjgx8mkybr",
   "fetcher": "github",
-  "repo": "syohex/emacs-sourcemap",
+  "repo": "emacsorphanage/sourcemap",
   "unstable": {
    "version": [
     20200315,
@@ -88610,11 +89662,11 @@
   "repo": "nashamri/spacemacs-theme",
   "unstable": {
    "version": [
-    20200127,
-    1656
+    20200324,
+    1107
    ],
-   "commit": "e088bff4f190495615c29de93079aaa823e2300c",
-   "sha256": "09p5pzy3ibrl8dxmg10v8j16wxdn1fkdqpbi8l9pgfib2azmnvnc"
+   "commit": "f79c40fb241e204539fde97200abae91e828e585",
+   "sha256": "1l2kkiyrskkpx8f901v0wrzaah1wjg15zdyv88spj3mh3hwd3b6n"
   }
  },
  {
@@ -88926,10 +89978,10 @@
  },
  {
   "ename": "splitjoin",
-  "commit": "51e172f46045fbb71b6a13b3521b502339a4a02b",
-  "sha256": "0l1x98fvvia8qx8g125h4d76slv0xnb3h1zxiq9xb5qh7a1h069l",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0g2i1q1npwrczgzp5321lpljff2ykmq932lzj6pdwnn6cyqixzzb",
   "fetcher": "github",
-  "repo": "syohex/emacs-splitjoin",
+  "repo": "emacsorphanage/splitjoin",
   "unstable": {
    "version": [
     20150505,
@@ -89231,14 +90283,14 @@
   "repo": "purcell/sqlformat",
   "unstable": {
    "version": [
-    20200303,
-    802
+    20200327,
+    2329
    ],
    "deps": [
     "reformatter"
    ],
-   "commit": "f18a0bb425a5052022af699df322ba90e6d65e20",
-   "sha256": "10sqq8k27p4fhhwrlq5p1283wrkykkx76fmp4806jiqh4617932f"
+   "commit": "2f10382034cd5cd2356cc69b4a1e9116d77a0d86",
+   "sha256": "18z9hljifw63zy4jrsyg4x2lqzgx29sfibx3maj0dm90yzj6zmcg"
   },
   "stable": {
    "version": [
@@ -89359,6 +90411,35 @@
   }
  },
  {
+  "ename": "srfi",
+  "commit": "ff844713373e376a637625494321c8e8f197b48e",
+  "sha256": "1ik6gbcv79l1za7vr2llph1kb2ll8snq11szdxd0r8lnls7l33xf",
+  "fetcher": "github",
+  "repo": "srfi-explorations/emacs-srfi",
+  "unstable": {
+   "version": [
+    20200326,
+    752
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "fa0c9e1fae26780dcce266df8ad8bf5efc971c30",
+   "sha256": "1azdc14y2jsmqcphk16qbxaj2fc7ajddwjjhc73xbhbn67knk1af"
+  },
+  "stable": {
+   "version": [
+    0,
+    1
+   ],
+   "deps": [
+    "cl-lib"
+   ],
+   "commit": "c0a1ae75bfb3fdc81bb722dff5f5e2fae3f07024",
+   "sha256": "1zymgidk09yyjdd23cz7rx2hql8vpmpqn21i07hwcr7032v0kl7k"
+  }
+ },
+ {
   "ename": "srv",
   "commit": "6b0b7f22631e7749da484ced9192d8ae5e1be941",
   "sha256": "0xrgbi63vg0msxkcmcnvijkxa9y0s7613liqac7fs9514yvkbwin",
@@ -89427,14 +90508,14 @@
   "repo": "magit/ssh-agency",
   "unstable": {
    "version": [
-    20191009,
-    156
+    20200329,
+    1535
    ],
    "deps": [
     "dash"
    ],
-   "commit": "89ea87dbfa0aa2fe644f7215aa3628c3008852c5",
-   "sha256": "0mkrn3jildlqyrkbdp31zf24vkzx4ycy49kxqs3vspbbcpanpj7j"
+   "commit": "67975f7773bfa0140d9dc09bd67df7f5489aa6ea",
+   "sha256": "0vwa1szfy45xpqqv44kyasjv2x0y2n3v680wlb1v3w2mxwwg8vda"
   },
   "stable": {
    "version": [
@@ -89962,6 +91043,30 @@
   }
  },
  {
+  "ename": "stripes",
+  "commit": "f4c7beb05435a70293806b729b6f35c2fc2e8ca4",
+  "sha256": "0pwkqqyhg6gkpj8qh84ylsvq6wjykkkmmil4igw7mn80gy15zd09",
+  "fetcher": "gitlab",
+  "repo": "stepnem/stripes-el",
+  "unstable": {
+   "version": [
+    20200322,
+    2350
+   ],
+   "commit": "8b0010acb9f92c7ab2fb8396aaf354fccedea7c5",
+   "sha256": "0q2zw9nvs9c27c7mcj9psqwf1r7p6k86y63d6q38hps22l063c9x"
+  },
+  "stable": {
+   "version": [
+    0,
+    3,
+    1
+   ],
+   "commit": "8b0010acb9f92c7ab2fb8396aaf354fccedea7c5",
+   "sha256": "0q2zw9nvs9c27c7mcj9psqwf1r7p6k86y63d6q38hps22l063c9x"
+  }
+ },
+ {
   "ename": "stumpwm-mode",
   "commit": "caaa21f235c4864f6008fb454d0a970a2fd22a86",
   "sha256": "11yk7xmmccgv7hin5qd1ibcsm1za01xfwsxa25q7vqwk6svnb0sf",
@@ -90428,6 +91533,21 @@
   }
  },
  {
+  "ename": "svelte-mode",
+  "commit": "fc6a992830520750d2e4a9596668ba3d0eefaa11",
+  "sha256": "0mc9bc8p3a6lkqag72f48xprlrnj077h9mnglq4znxrslm91jr0h",
+  "fetcher": "github",
+  "repo": "leafOfTree/svelte-mode",
+  "unstable": {
+   "version": [
+    20200327,
+    406
+   ],
+   "commit": "17a53e5f8dd45c6bca44659a80a79ca30d161635",
+   "sha256": "1hrrcg42b1fnf8y0mz3fli6mp7aha7w0rv7nhrsrvhrilnq97wzl"
+  }
+ },
+ {
   "ename": "svg-mode-line-themes",
   "commit": "2ca54d78b5e87c3bb582b178e4892af2bf447d1e",
   "sha256": "12lnszcb9bl32n9wir7vf8xiyyv7njw4xg21aj9x4dasmidyx506",
@@ -90580,16 +91700,16 @@
   "repo": "danielmartin/swift-helpful",
   "unstable": {
    "version": [
-    20191226,
-    103
+    20200321,
+    10
    ],
    "deps": [
     "dash",
     "lsp-mode",
     "swift-mode"
    ],
-   "commit": "04c2bf38c16d7cf03a43c065baabaed3a80e78d3",
-   "sha256": "0xi23ywj9kf5qsw933raqs66yl859hhg62na3zybm78l2kq6dnhg"
+   "commit": "e58f26b8ab9cf0522d52fe9890d39dc9e645577e",
+   "sha256": "1yx73wgvaf01wi26ahc9cblsk3sj98rgljb19dxc9ab7hjyncd46"
   },
   "stable": {
    "version": [
@@ -90697,14 +91817,14 @@
   "repo": "abo-abo/swiper",
   "unstable": {
    "version": [
-    20200314,
-    1959
+    20200319,
+    1334
    ],
    "deps": [
     "ivy"
    ],
-   "commit": "8fae568daafdc79d4990ad739bac42ee230d3234",
-   "sha256": "18ppxzafz9f8dn7wwdb9vab3c91n20csvn9kjr3djkjgngz6qjd1"
+   "commit": "64f05f4735bba8b708bc12cfc2cbfb7fb7706787",
+   "sha256": "16b75jw0by1f8divymfygjbp5mikc2bjz4nqd907mdsndf8k6i8q"
   },
   "stable": {
    "version": [
@@ -90807,16 +91927,29 @@
   "repo": "emacsorphanage/swoop",
   "unstable": {
    "version": [
-    20160120,
-    1715
+    20200321,
+    319
    ],
    "deps": [
     "async",
     "ht",
     "pcre2el"
    ],
-   "commit": "a5e475db7a9f5db02ba3d08cd3c1c3594e2e01d7",
-   "sha256": "10ka6f86n07xlf0z7w35db0mzp2zk4xhr6jd19kjdrn2j0ynlcw5"
+   "commit": "7f6f20d0f32b76b7ce5b1459afa44c1ab700f8bb",
+   "sha256": "1d134f3dyh8sa8q8dgmla01wiky61y4jmhqb5whqpb7c2p53niyc"
+  },
+  "stable": {
+   "version": [
+    1,
+    0
+   ],
+   "deps": [
+    "async",
+    "ht",
+    "pcre2el"
+   ],
+   "commit": "de2d29eb45edab802cf8b275aa1c25a24050122e",
+   "sha256": "1caq17f7s4pdy6jzyxfh5zwqmwkwkbfpgcnj5f09qgmwanjygjya"
   }
  },
  {
@@ -90879,6 +92012,36 @@
   }
  },
  {
+  "ename": "sxiv",
+  "commit": "1b3da730053c1f45e67fefb2e9bfce222cc38628",
+  "sha256": "0jj0bzw365227anvg9zqy78zdfczfvqlac47kjdyziqmj958yhh8",
+  "fetcher": "gitlab",
+  "repo": "contrapunctus/sxiv.el",
+  "unstable": {
+   "version": [
+    20200326,
+    1433
+   ],
+   "deps": [
+    "dash"
+   ],
+   "commit": "dae46e6f5890f3d97d45eaadf0194b7ff01f6baf",
+   "sha256": "094kvg0cznddzn5q1clgj9r26h3ygab96rpbr00qn2wnmdb79bhq"
+  },
+  "stable": {
+   "version": [
+    0,
+    3,
+    1
+   ],
+   "deps": [
+    "dash"
+   ],
+   "commit": "dae46e6f5890f3d97d45eaadf0194b7ff01f6baf",
+   "sha256": "094kvg0cznddzn5q1clgj9r26h3ygab96rpbr00qn2wnmdb79bhq"
+  }
+ },
+ {
   "ename": "symbol-overlay",
   "commit": "c2a468ebe1a3e5a35ef40c59a62befbf8960bd7b",
   "sha256": "1al60x2mnjsv99jd10v5sd56zz185wsddiq7128phf1l35bkibis",
@@ -91582,11 +92745,11 @@
   "repo": "11111000000/tao-theme-emacs",
   "unstable": {
    "version": [
-    20200306,
-    1306
+    20200325,
+    344
    ],
-   "commit": "20d38a10b9d9cc49fdf99b99a39f2b03a1f077d6",
-   "sha256": "1g04j5j5w69qr59r9mlv50859bmfirrivlp01li14a0jy8jymcxv"
+   "commit": "34917843cde086943816d8a48977658c663a784e",
+   "sha256": "1ks4pnwp5fg2vswr93hrli2shfd7rrf3nwqwr1qwmqxhq1600f3x"
   },
   "stable": {
    "version": [
@@ -91606,11 +92769,11 @@
   "repo": "saf-dmitry/taskpaper-mode",
   "unstable": {
    "version": [
-    20200225,
-    1349
+    20200321,
+    2124
    ],
-   "commit": "6ebb8b188a39decf22a5cd675aeaa9684e4ea4ef",
-   "sha256": "0j3cxakgf943wv7bf73bwa69gc3m0g2ksw78xanz5hc0r0bsxbac"
+   "commit": "9ca1afb561433ff6d2e8527e3d8d9152de5912f7",
+   "sha256": "0a3hlwzq9ckf7jcxq6drrgl1g8hi5ad0f6lgm3nawbsqmrb6r28y"
   },
   "stable": {
    "version": [
@@ -91806,14 +92969,14 @@
   "repo": "zevlg/telega.el",
   "unstable": {
    "version": [
-    20200314,
-    1914
+    20200329,
+    1557
    ],
    "deps": [
     "visual-fill-column"
    ],
-   "commit": "b7c0b2438cb3152929824bc672ee39e82c67e93a",
-   "sha256": "1lcimnpg3z4gbwryhkqhmmg3896all2kjb5rhv7prw3794hjpf38"
+   "commit": "0da852c0b72ad3473432f9e846ce1371d7c8cd61",
+   "sha256": "0n4jvl6c68wkddvsjfyw82rxy5h7ikc6qrjd35h2v864080gmbjp"
   },
   "stable": {
    "version": [
@@ -92358,10 +93521,10 @@
  },
  {
   "ename": "terraform-mode",
-  "commit": "93e06adf34bc613edf95feaca64c69a0a2a4b567",
-  "sha256": "1m3s390mn4pba7zk17xfk045dqr4rrpv5gw63jm18fyqipsi6scn",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "14bhn86d7xv4nvqdr65pm0nwmzawbnxyxyig5i4k8ax20xh59d67",
   "fetcher": "github",
-  "repo": "syohex/emacs-terraform-mode",
+  "repo": "emacsorphanage/terraform-mode",
   "unstable": {
    "version": [
     20170112,
@@ -92673,26 +93836,26 @@
   "repo": "myTerminal/theme-looper",
   "unstable": {
    "version": [
-    20190501,
-    127
+    20200326,
+    1651
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "67ca7e6ac4740a412a1ea29f86e46ceeb636535a",
-   "sha256": "07bfiikrbmk1jc9ir5d3iwvsi3hbfcsira8gsicphwzhaiahqc1c"
+   "commit": "7077ca11508c6a00d98d592dee967e92185480ff",
+   "sha256": "02kiaqlrb677773809sfkajz31p9fsr72k4k0g5297wlibr9ymjr"
   },
   "stable": {
    "version": [
     2,
-    4,
+    5,
     0
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "388138a238fbab9b4bc5ada0300c9bc5ef63d3f1",
-   "sha256": "0gab7ph1d7z0bjflqrj1y1lb4nk4c32bkpi943px0m5s5cjm54jv"
+   "commit": "7077ca11508c6a00d98d592dee967e92185480ff",
+   "sha256": "02kiaqlrb677773809sfkajz31p9fsr72k4k0g5297wlibr9ymjr"
   }
  },
  {
@@ -92816,18 +93979,18 @@
     20200212,
     1903
    ],
-   "commit": "e2b274cab473f85ffa8136942664211ed64ff742",
-   "sha256": "18z50i08y4fg4ygaz3fqyh5rf07jpah2w2y9zhmkpgqkigdwp3sl"
+   "commit": "9889eb8b3a3a773e8f06df327a76e408f9214cd4",
+   "sha256": "1vhfkfsrnhdzsk1353xl383nsb7x6a01v7r79lxdcrkj5yxppz0d"
   },
   "stable": {
    "version": [
     2020,
     3,
-    9,
+    23,
     0
    ],
-   "commit": "2ece938967751345394c81381efeea4e3165570f",
-   "sha256": "15wzhpd1djzviq9r46srzbrwj8zdfmwg7ca9zjm86nff0asv6i01"
+   "commit": "186d782f02d80c7d8e93be352c2011ed4097c228",
+   "sha256": "1wj4ng9ymi0hszl3kmdg7rqrff4zk0zipbbn1jcxcii2swrkw12g"
   }
  },
  {
@@ -92883,8 +94046,8 @@
    "deps": [
     "haskell-mode"
    ],
-   "commit": "d9c6b84d8cfadcb5111e291c17c1a2a01a984820",
-   "sha256": "13xyx6bb15g7kay1n1cfpfvjkya5i9r4r0182cvpdvcig8l3ii84"
+   "commit": "5d4bce7a9af5e39e6df0d2577962579e31964b65",
+   "sha256": "0hnqcfvc8gca98wyzcrjldn9kcxdc4m8aa9cdr1884kp4kf5dmvj"
   },
   "stable": {
    "version": [
@@ -92907,8 +94070,8 @@
   "repo": "ananthakumaran/tide",
   "unstable": {
    "version": [
-    20200308,
-    259
+    20200327,
+    1218
    ],
    "deps": [
     "cl-lib",
@@ -92917,8 +94080,8 @@
     "s",
     "typescript-mode"
    ],
-   "commit": "10e5c19de798aba2d57fb1ec83ad3d1369e6547a",
-   "sha256": "137kkpsdg4mg2rxidnhzq0a6lqgfld3q1zv91j1k0s2m0q2pb3ck"
+   "commit": "3b45610faaab33bc53ae2d44e1e573f19f35a74a",
+   "sha256": "1507xp8ndhyqvzd5j2qx3y4lpxq52j40srh5mp9784bf1hm9gg2s"
   },
   "stable": {
    "version": [
@@ -93246,15 +94409,15 @@
   "repo": "laishulu/emacs-tmux-pane",
   "unstable": {
    "version": [
-    20200227,
-    1230
+    20200330,
+    456
    ],
    "deps": [
     "names",
     "s"
    ],
-   "commit": "be321093575c1b68946296edd57762c4323c253b",
-   "sha256": "14f1nvnp6qxgq64410kqwi59f29p2shr6v8qg1ck8g9fiarilx5w"
+   "commit": "942270359587d54f4fd6e37e8d35da38373447c5",
+   "sha256": "1x5b0680vxvjqcj5r3674n7gnp4994js13707pikl362bhv398kw"
   }
  },
  {
@@ -93476,6 +94639,24 @@
   }
  },
  {
+  "ename": "tongbu",
+  "commit": "e97578be9aa9bdadc6bdf6c7105242ca9d23bf80",
+  "sha256": "1gnjvb4w0mgr0swpqqk3hmscypv9bdg9q2ixkp2sv19d45gd4pvb",
+  "fetcher": "github",
+  "repo": "xuchunyang/tongbu.el",
+  "unstable": {
+   "version": [
+    20200321,
+    1817
+   ],
+   "deps": [
+    "web-server"
+   ],
+   "commit": "cf3b3ee1468c3dcd1721a5e6802821c8f52f34ce",
+   "sha256": "0s4h711rwkpf1dbqbak4akbm95y8crd0niisx19jmk9lms5kj5n5"
+  }
+ },
+ {
   "ename": "tornado-template-mode",
   "commit": "f329baae028fd17618824128f312a49aa0a0807e",
   "sha256": "1sdv9rlhnabydws2sppsjcgqr0lg6bjapv753ksq5aaq21qsps0h",
@@ -93803,14 +94984,14 @@
   "repo": "holomorph/transmission",
   "unstable": {
    "version": [
-    20200215,
-    1350
+    20200321,
+    216
    ],
    "deps": [
     "let-alist"
    ],
-   "commit": "49d3d764819afabf7a66f9d887a6b16c53566317",
-   "sha256": "00hk1rgqilxhlaabi7pgz25k0ykfizwhpp65yzgs453q6kvhccfv"
+   "commit": "05a80e7a90303cd80f67681df2ec8e1bac88c394",
+   "sha256": "02chl6k9r0mki7iy5rs9xwgd74ypf0c79q9d3p7fw1rc1wqxk9ji"
   },
   "stable": {
    "version": [
@@ -93983,8 +95164,8 @@
   "repo": "Alexander-Miller/treemacs",
   "unstable": {
    "version": [
-    20200309,
-    2057
+    20200328,
+    1143
    ],
    "deps": [
     "ace-window",
@@ -93996,8 +95177,8 @@
     "pfuture",
     "s"
    ],
-   "commit": "81b69d9ee26326178cef08d5aef2811df4f659ed",
-   "sha256": "138iw9sva5s6d2asl1ch0723q3q8zqlyllhxrac3phgmqzjdw68c"
+   "commit": "4c1add44cc0c5a710c22788663353c9c24909149",
+   "sha256": "0zykh36hfn3zldbs08csqysw4ykkaj736jnwzjzsb9rc39nwskid"
   },
   "stable": {
    "version": [
@@ -94033,8 +95214,8 @@
     "evil",
     "treemacs"
    ],
-   "commit": "81b69d9ee26326178cef08d5aef2811df4f659ed",
-   "sha256": "138iw9sva5s6d2asl1ch0723q3q8zqlyllhxrac3phgmqzjdw68c"
+   "commit": "4c1add44cc0c5a710c22788663353c9c24909149",
+   "sha256": "0zykh36hfn3zldbs08csqysw4ykkaj736jnwzjzsb9rc39nwskid"
   },
   "stable": {
    "version": [
@@ -94064,8 +95245,8 @@
     "cl-lib",
     "treemacs"
    ],
-   "commit": "81b69d9ee26326178cef08d5aef2811df4f659ed",
-   "sha256": "138iw9sva5s6d2asl1ch0723q3q8zqlyllhxrac3phgmqzjdw68c"
+   "commit": "4c1add44cc0c5a710c22788663353c9c24909149",
+   "sha256": "0zykh36hfn3zldbs08csqysw4ykkaj736jnwzjzsb9rc39nwskid"
   },
   "stable": {
    "version": [
@@ -94096,8 +95277,8 @@
     "pfuture",
     "treemacs"
    ],
-   "commit": "81b69d9ee26326178cef08d5aef2811df4f659ed",
-   "sha256": "138iw9sva5s6d2asl1ch0723q3q8zqlyllhxrac3phgmqzjdw68c"
+   "commit": "4c1add44cc0c5a710c22788663353c9c24909149",
+   "sha256": "0zykh36hfn3zldbs08csqysw4ykkaj736jnwzjzsb9rc39nwskid"
   },
   "stable": {
    "version": [
@@ -94129,8 +95310,8 @@
     "persp-mode",
     "treemacs"
    ],
-   "commit": "81b69d9ee26326178cef08d5aef2811df4f659ed",
-   "sha256": "138iw9sva5s6d2asl1ch0723q3q8zqlyllhxrac3phgmqzjdw68c"
+   "commit": "4c1add44cc0c5a710c22788663353c9c24909149",
+   "sha256": "0zykh36hfn3zldbs08csqysw4ykkaj736jnwzjzsb9rc39nwskid"
   }
  },
  {
@@ -94148,8 +95329,8 @@
     "projectile",
     "treemacs"
    ],
-   "commit": "81b69d9ee26326178cef08d5aef2811df4f659ed",
-   "sha256": "138iw9sva5s6d2asl1ch0723q3q8zqlyllhxrac3phgmqzjdw68c"
+   "commit": "4c1add44cc0c5a710c22788663353c9c24909149",
+   "sha256": "0zykh36hfn3zldbs08csqysw4ykkaj736jnwzjzsb9rc39nwskid"
   },
   "stable": {
    "version": [
@@ -95607,14 +96788,14 @@
   "repo": "jwiegley/use-package",
   "unstable": {
    "version": [
-    20191126,
-    2034
+    20200322,
+    2110
    ],
    "deps": [
     "bind-key"
    ],
-   "commit": "42db6b3d90ee57d0f5947d3b0bf4b0010bdf7b40",
-   "sha256": "1an2whgy68l9c1l1qx8p8jz47g4hj2abf0kxvcmbc6wj8lp5zny8"
+   "commit": "c873d5529c9c80cb58222f22873a4f081c307cb2",
+   "sha256": "0jbq3w9ijsbl5gblhr24b0rh4gyp1xx696g20l438a7sbsk4b531"
   },
   "stable": {
    "version": [
@@ -95645,8 +96826,8 @@
     "key-chord",
     "use-package"
    ],
-   "commit": "42db6b3d90ee57d0f5947d3b0bf4b0010bdf7b40",
-   "sha256": "1an2whgy68l9c1l1qx8p8jz47g4hj2abf0kxvcmbc6wj8lp5zny8"
+   "commit": "c873d5529c9c80cb58222f22873a4f081c307cb2",
+   "sha256": "0jbq3w9ijsbl5gblhr24b0rh4gyp1xx696g20l438a7sbsk4b531"
   },
   "stable": {
    "version": [
@@ -95707,8 +96888,8 @@
     "system-packages",
     "use-package"
    ],
-   "commit": "42db6b3d90ee57d0f5947d3b0bf4b0010bdf7b40",
-   "sha256": "1an2whgy68l9c1l1qx8p8jz47g4hj2abf0kxvcmbc6wj8lp5zny8"
+   "commit": "c873d5529c9c80cb58222f22873a4f081c307cb2",
+   "sha256": "0jbq3w9ijsbl5gblhr24b0rh4gyp1xx696g20l438a7sbsk4b531"
   },
   "stable": {
    "version": [
@@ -95817,8 +96998,8 @@
     20190715,
     1836
    ],
-   "commit": "c719401992c255f30ed42c4a942651ce7982ce9d",
-   "sha256": "1dafg3549mpkkl4c698byghai7nlr9nfzl2l7bgqxqwh5qrwp15k"
+   "commit": "30c77ce4d7996822721e97ac8042d5bc0d415584",
+   "sha256": "03947csh8nzqqa58z2hq5i87kqf7z65f7b19nyvy0can2flznl7q"
   },
   "stable": {
    "version": [
@@ -96438,20 +97619,20 @@
   "repo": "federicotdn/verb",
   "unstable": {
    "version": [
-    20200313,
-    1956
+    20200326,
+    2322
    ],
-   "commit": "b2570e4809fc0c97add33b4f2e05e5361750c877",
-   "sha256": "02ikvwcqgma8nzpx13nzdjw3y8dmk2y0d5b3g882i9rp04xs0y1l"
+   "commit": "2c4252b2b57f65ebd9fd2c7a7771b4d0354f1d4c",
+   "sha256": "0g0hi1bhrx8bj0wbxwaimfpvl491sd079551199hcyhq607pcpp2"
   },
   "stable": {
    "version": [
     2,
-    8,
-    1
+    9,
+    0
    ],
-   "commit": "b2570e4809fc0c97add33b4f2e05e5361750c877",
-   "sha256": "02ikvwcqgma8nzpx13nzdjw3y8dmk2y0d5b3g882i9rp04xs0y1l"
+   "commit": "2c4252b2b57f65ebd9fd2c7a7771b4d0354f1d4c",
+   "sha256": "0g0hi1bhrx8bj0wbxwaimfpvl491sd079551199hcyhq607pcpp2"
   }
  },
  {
@@ -96499,8 +97680,8 @@
   "repo": "mihaiolteanu/versuri",
   "unstable": {
    "version": [
-    20200309,
-    737
+    20200316,
+    852
    ],
    "deps": [
     "anaphora",
@@ -96511,8 +97692,8 @@
     "request",
     "s"
    ],
-   "commit": "9cae9900e01cb41064209762ca289ca6da8bb196",
-   "sha256": "04r4qg9a1p6igg1j6praa2kxxg5rlc25s0s6gvl56gxb9s1qchh1"
+   "commit": "41e20583d1080beeeda0e36d1b2e6d74b9c57920",
+   "sha256": "0fgc1rai9gp6lwl0rxr9400vi420py0c0b8nv9wzl12ph80yhwj7"
   }
  },
  {
@@ -96611,8 +97792,8 @@
     "helm-rg",
     "outshine"
    ],
-   "commit": "8584e73ab550841b3df7419dea32b874cdd64425",
-   "sha256": "0s0ljcn6lgcr6zqhw31llg4ri2drkxbz31kviir0xwgr8hn4p5dn"
+   "commit": "3dbfe8160e22053f0a9bee70ba6f8e1e3967bc46",
+   "sha256": "1pr7skldslq35ry17yyslfrl2d84msxyh0q77a3djv7ssqlpd270"
   },
   "stable": {
    "version": [
@@ -96750,15 +97931,15 @@
   "repo": "mrkkrp/vimish-fold",
   "unstable": {
    "version": [
-    20200223,
-    1836
+    20200329,
+    1242
    ],
    "deps": [
     "cl-lib",
     "f"
    ],
-   "commit": "d3248a41a79092ea270b07ac60bf7420befa2146",
-   "sha256": "164jx09m7sgmffixlarjdyn8zdrqcmm4ngwddpjyv3phi65pnpj0"
+   "commit": "63685239655a151181b9152e45478dad587f86f2",
+   "sha256": "1l6zca08diq3ppmg1pllihbfj0pcaqvbnisryr92mvbblhk44wxs"
   },
   "stable": {
    "version": [
@@ -96977,6 +98158,21 @@
   }
  },
  {
+  "ename": "vlc",
+  "commit": "bcb69969893a3f70fe9e7e3b2a836df3ba212fb8",
+  "sha256": "1pf3ry205pl4369hbpvcc1xlicf16ws4dc018mk6c1m4fi9qc3lk",
+  "fetcher": "github",
+  "repo": "xuchunyang/vlc.el",
+  "unstable": {
+   "version": [
+    20200328,
+    1143
+   ],
+   "commit": "932840f874e7510ee86e796bb5dc20d44514e31a",
+   "sha256": "0vqsdvaqi8ih98ic9hdwwwwcs4v0yjz3nrwwwkwh2a99l9a59j5g"
+  }
+ },
+ {
   "ename": "vlf",
   "commit": "9116b11eb513dd9e1dc9542d274dd60f183b24c4",
   "sha256": "1ipkv5kmda0l39xwbf7ns9p0mx3kb781mxsm9vmbkhr5x577s2j8",
@@ -97164,11 +98360,11 @@
   "repo": "akermu/emacs-libvterm",
   "unstable": {
    "version": [
-    20200315,
-    1353
+    20200327,
+    1447
    ],
-   "commit": "186914a3f3666b92a5c52fc77063953974a96c47",
-   "sha256": "06d51aqri06lxbnki0hag9g641amgbcnb64arj33wv4cf495q595"
+   "commit": "996c535b9cc6aa70c3595413582d97abfab16edd",
+   "sha256": "0f84376rc9gm54llfln1528p82svczfrz9p48d1vh9pmf5ba09vw"
   }
  },
  {
@@ -97248,6 +98444,28 @@
   }
  },
  {
+  "ename": "vuiet",
+  "commit": "4f63056cf2f637fcb3426851501eeff5e6f40bb3",
+  "sha256": "0hf99rgzhi66in3lr0pl3g8g56l00zcvz1qgclfsbw1yb9ig626y",
+  "fetcher": "github",
+  "repo": "mihaiolteanu/vuiet",
+  "unstable": {
+   "version": [
+    20200326,
+    1738
+   ],
+   "deps": [
+    "bind-key",
+    "lastfm",
+    "mpv",
+    "s",
+    "versuri"
+   ],
+   "commit": "c917155a0c72d9fceb9f7c39efcc97320f9e9028",
+   "sha256": "14djavnczks11lvmldwf0j8nnj4jd0jmz30l6r4hv12f3zjwyk7a"
+  }
+ },
+ {
   "ename": "vyper-mode",
   "commit": "492d42d60bc188a567c5e438b838a275a124c699",
   "sha256": "0mf1w4mw0ijmd9zxip1df85cp15fbvv9j5dqjmb8lfm4m43wpd96",
@@ -97292,11 +98510,11 @@
   "repo": "emacs-w3m/emacs-w3m",
   "unstable": {
    "version": [
-    20200313,
-    0
+    20200325,
+    2226
    ],
-   "commit": "cf30c23a119ef50d1c3ae3fa19ba3c1d07800466",
-   "sha256": "1d94qrb4kvvz75pgqci10akr1cg5knss66mix6sdfmcvg2q8l3zh"
+   "commit": "cbb15424431cd5f579b12307b8fa03122d525006",
+   "sha256": "1wwk5q3viw32pwmf4bjhbywkj0d1prwnldgdjfjzmr3rnvfw7w9h"
   }
  },
  {
@@ -97384,11 +98602,11 @@
   "repo": "darkstego/wakib-keys",
   "unstable": {
    "version": [
-    20190910,
-    1011
+    20200326,
+    2329
    ],
-   "commit": "23237fc2c255de798b8d3fc2cb68c7c22b53caa9",
-   "sha256": "1s5n2gcldwj5srjn44pigd788x0hv4c7lz75krqyz1hysriydv9p"
+   "commit": "7564b39aaa2b38ccca0a21bc72a797f065a0b171",
+   "sha256": "132jwf1d54ykbvw4f9f7i27ig5hpc6wsmm1ib44m5hx1kv1kxvh6"
   }
  },
  {
@@ -97418,15 +98636,30 @@
   "repo": "abrochard/walkman",
   "unstable": {
    "version": [
-    20200224,
-    1501
+    20200319,
+    1739
    ],
    "deps": [
     "org",
     "transient"
    ],
-   "commit": "bdc026b58dc023cf078ec5eafae3b334ac5c39ef",
-   "sha256": "13bhdmylg7k9r5y6wi158rv8rm4cndv8av35g65vc6qk0bgnnwpz"
+   "commit": "da90c9dcd501c1bb88c6bde055911c34bf4202a7",
+   "sha256": "04gzb1v6wva24xbl8r8rr1ys2zmz03ccl0517d3pkgbd9v1wha2f"
+  }
+ },
+ {
+  "ename": "wallpaper",
+  "commit": "764c5b8438197d6f24113e7b3a696b8327a8d6d9",
+  "sha256": "18wpj5qzac0msp9mi8511kpw6157k7dj9zvzh1y6rhd7a5nd0clg",
+  "fetcher": "github",
+  "repo": "farlado/emacs-wallpaper",
+  "unstable": {
+   "version": [
+    20200321,
+    1220
+   ],
+   "commit": "762354e958dbe298de06d119493d1aee8ffd0112",
+   "sha256": "1vcpfamawaja9q2n5qqkfn1bn2psi3ymcniw9g66k3whkqsh0kji"
   }
  },
  {
@@ -97931,14 +99164,14 @@
   "repo": "ahyatt/emacs-websocket",
   "unstable": {
    "version": [
-    20200102,
-    637
+    20200321,
+    102
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "ee44af2cc55415591e7ccb1007193294c702affd",
-   "sha256": "01pc03kial647r1nad1vw6rcbd251hrvjjh87gqqlhh9ksrcwnl9"
+   "commit": "31e122a9d7a1ae092e8f970df718fb8256e16574",
+   "sha256": "1yjdrpn2dwaarmcymf1i8lj72jyvrpp3jqwr3rv59bg8fldin0rs"
   },
   "stable": {
    "version": [
@@ -98376,11 +99609,11 @@
   "repo": "lassik/emacs-whois",
   "unstable": {
    "version": [
-    20190529,
-    1554
+    20200326,
+    1909
    ],
-   "commit": "c86c0ad9adc4787a422cca11b66229cc14a6d83a",
-   "sha256": "1abn5rzapbvk217h1s7lk166y48g7fvdvjmy2fsbz60rwq2zhpk6"
+   "commit": "2186a52db77badd809c99d5c21502878298d78f6",
+   "sha256": "1dnr7navhjzca2hapwx41xdx4i5fgjyjnw2ms5na6n572xp8kgnj"
   },
   "stable": {
    "version": [
@@ -98846,11 +100079,11 @@
   "repo": "ArneBab/wisp",
   "unstable": {
    "version": [
-    20190921,
-    2218
+    20191114,
+    2340
    ],
-   "commit": "0d2c025ac4cfd394706c07fbb60999eaf711020b",
-   "sha256": "1fs4dpc78aax4mzcp0vzcvzf2mxiwzbdwjfgpylwppxamqdycdwy"
+   "commit": "33b4fcdd8a17aa19d57971e4f6db5fcb7758843c",
+   "sha256": "09rrv89b17s4sklkqgci1pmzlnkjlrira22884dh10sbfij42vbp"
   }
  },
  {
@@ -98970,14 +100203,14 @@
   "repo": "p3r7/with-shell-interpreter",
   "unstable": {
    "version": [
-    20200306,
-    1445
+    20200319,
+    1351
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "055b46755b7cbc324a8d92e092de671b9bc97098",
-   "sha256": "10xf2aqxkqdls0ym2a5dvwz96zzziw7v0y493krw2jchzpwkwryk"
+   "commit": "e806b1e5537ba2f23b507a3cc28aa7c3cacd2315",
+   "sha256": "1qklc135ydslcxjhlgbmagib3j184gm72paky6glzdjh2yf8mm50"
   }
  },
  {
@@ -99677,11 +100910,11 @@
   "repo": "xahlee/xah-fly-keys",
   "unstable": {
    "version": [
-    20200311,
-    1951
+    20200330,
+    557
    ],
-   "commit": "691a2bac50db70fc3bda5aa836952c4d3c3aed6f",
-   "sha256": "1cwl2jz0iwkr53b9l2vpj6yik4bghwqd2kcjpp7dpqx29i3sppyw"
+   "commit": "d75567f7f6b85830b97b18ab1b5d8e70acaa05bf",
+   "sha256": "1lmca03y7h584agid7fr5g2w3s9psk55n0qlrcfgg10d67nq6l75"
   }
  },
  {
@@ -100325,8 +101558,8 @@
     20171022,
     1412
    ],
-   "commit": "db84dbb30ed39079d34d5eba01cc67af6f7d92de",
-   "sha256": "1syxgm3a51i3kybbjgjlwlrrgr6rscr4iqam3aa7r55z0hlx8k2r"
+   "commit": "ecb66f0b77aac0123e5b3336ee1910fa07fa44f9",
+   "sha256": "1cvsp6x94b223g21avr2z255s5xwdwmdxnhwzq8qj2c3qrax6sx9"
   }
  },
  {
@@ -100486,11 +101719,11 @@
   "repo": "JorisE/yapfify",
   "unstable": {
    "version": [
-    20200117,
-    1245
+    20200326,
+    917
    ],
-   "commit": "0b4f20af0b00a86353ddc286df26eade89381269",
-   "sha256": "1k91fav3dvdjkg632zhkmgbjvichbixwqdir4x8lc332ma3wwi0h"
+   "commit": "2e5d344b6d9cf1965a1153b160b3a52582d492ff",
+   "sha256": "1pi1dgcqz1xn5r4z5pjxbyx4kq75cxzl3711zzp0dyn48w0a7sj3"
   },
   "stable": {
    "version": [
@@ -100616,14 +101849,14 @@
   "repo": "joaotavora/yasnippet",
   "unstable": {
    "version": [
-    20191222,
-    2206
+    20200329,
+    1434
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "3bf9a3b1af37174a004798b7195826af0123fa6a",
-   "sha256": "0via9dzw8m5lzymg1h78xkwjssh39zr3g6ccyamlf1rjzjsyxknv"
+   "commit": "7c02bc142c3b157699ab8c4f24ff98da94401248",
+   "sha256": "1yjqlb9jdbsmmywgg49wd25psbf9637hzgnx5i1q3diaravlnji6"
   },
   "stable": {
    "version": [
@@ -100899,6 +102132,21 @@
   }
  },
  {
+  "ename": "yesterbox",
+  "commit": "21f684c47e5778c9d46c9f28dae1113197717b78",
+  "sha256": "1ah4l8zz565jgr52d9n29iv93z7qwmlz9pdjw3l51qhqf79lkf1w",
+  "fetcher": "github",
+  "repo": "sje30/yesterbox",
+  "unstable": {
+   "version": [
+    20200327,
+    52
+   ],
+   "commit": "10591342f1759e25756f5865371a53c132d8b0a0",
+   "sha256": "0cd77m4zyqs74iz56l4h0k7ccxnxhis0247j4f5mf94s51fn1x7p"
+  }
+ },
+ {
   "ename": "yoficator",
   "commit": "5156f01564978718dd99ab3a54f19b6512de5c3c",
   "sha256": "0b6lv6wk5ammhb9rws9kig02wkm84i5avm7a1vd4sb7wkgm9nj9r",
@@ -101134,30 +102382,34 @@
  },
  {
   "ename": "zephir-mode",
-  "commit": "5bd901c93ce7f64de6082e801327adbd18fd4517",
-  "sha256": "0nxm6w7z89q2vvf3bp1p6hb6f2axv9ha85jyiv4k02l46sjprf4j",
+  "commit": "fac9fb89cbe5c3eea987fadf23db20c214eab4d9",
+  "sha256": "133m47a54hdsczzmk3wg7f47q314qnw824lkh8zqx0nw68063i79",
   "fetcher": "github",
-  "repo": "sergeyklay/zephir-mode",
+  "repo": "zephir-lang/zephir-mode",
   "unstable": {
    "version": [
-    20170918,
-    425
+    20200329,
+    1235
    ],
    "deps": [
     "cl-lib",
     "pkg-info"
    ],
-   "commit": "1db4071a014a796120b5c3d0a7f91eb77359eb10",
-   "sha256": "0kqnihir4rr8ckzz3wn5sz3qwgnvpa8bqw767khn887bpf7qsmiq"
+   "commit": "3e112ba7c52b5caad0c230e014b6e842d6379ab1",
+   "sha256": "1h6lhz7fvx6c2zwgjwm5aiax5f22v65dmq3rj0s51vpasyj2k9ib"
   },
   "stable": {
    "version": [
     0,
-    3,
-    3
+    5,
+    0
    ],
-   "commit": "243f0fb7fd1dfebf0f0bdf94046b72d1bea4f66c",
-   "sha256": "0jydy2zcbksi7db7bvfhgdh08np8k4a1yd6q2wq6m3ll2y3zd0w2"
+   "deps": [
+    "cl-lib",
+    "pkg-info"
+   ],
+   "commit": "76c310faf792db93bc6750305f5b54aa6a4963bd",
+   "sha256": "1najsypq8qix6jgxqqj5kkfdp7b10l3xz25qw0y5lzz4by4pzzpa"
   }
  },
  {
@@ -101227,14 +102479,14 @@
   "repo": "efls/zetteldeft",
   "unstable": {
    "version": [
-    20200314,
-    1814
+    20200329,
+    1506
    ],
    "deps": [
     "deft"
    ],
-   "commit": "4871425426ee1d283b1147d0cf6daa7598fa8e70",
-   "sha256": "0l6s8psp98h8jch6g1pbqb25zzqjz352h4m3kpgdlxf68cq9iary"
+   "commit": "1dd8b052bb4bc8fcd18740e798057ace97cb63ac",
+   "sha256": "16bkcp6mq98bn1qli2qi6wgf5zrkxfqs912fi9fg88bcixk50k9j"
   }
  },
  {
@@ -101245,11 +102497,11 @@
   "repo": "ziglang/zig-mode",
   "unstable": {
    "version": [
-    20191023,
-    1551
+    20200322,
+    131
    ],
-   "commit": "77202ac26ee6091d69d40990fddb1ce6cfcc6dc8",
-   "sha256": "0d2f6nz99dp3yxr7m8i78lc313qzssm7k4783w6kkvcsbpknazlw"
+   "commit": "fc7fde327f45533bb73be643e7bda1eda10394b6",
+   "sha256": "1ld34xs25bysxw9ialrlm6pnp5qbzx94zbb3594ghc2ggz5ph5d5"
   }
  },
  {
@@ -101260,8 +102512,8 @@
   "repo": "WillForan/zim-wiki-mode",
   "unstable": {
    "version": [
-    20191208,
-    2241
+    20200316,
+    1223
    ],
    "deps": [
     "dokuwiki-mode",
@@ -101270,8 +102522,8 @@
     "link-hint",
     "pretty-hydra"
    ],
-   "commit": "030fb78600a6782f8746fe547b979bcc9a24f0ed",
-   "sha256": "0b3rd83mbpyf782jnfv2yfhfq2ffps3wbn31iblyydmv790lpdvx"
+   "commit": "410fa67d5947b8801b03a58fcb2bd414cb5294f7",
+   "sha256": "14dmda7ahnflv0db9yzssz7bidz3zsdnxxwnby0y48vcjv94nnl5"
   }
  },
  {
@@ -101297,14 +102549,14 @@
   "repo": "dzop/emacs-zmq",
   "unstable": {
    "version": [
-    20190812,
-    1910
+    20200305,
+    2345
    ],
    "deps": [
     "cl-lib"
    ],
-   "commit": "0544b70bf99b6eb95f46e0fcd788d98da50cb892",
-   "sha256": "0r9aq933b2pk9m70phfz3ah3dk1c5axmjixcf8cf19sjsv1hcc9x"
+   "commit": "2aed40aee51d19cbca83d1f1edc23a5f1522dd8d",
+   "sha256": "1viz4sw4vmnjhhqw68wp8a4ks1751s2dk09gx2gyl8gy5vw2fcg6"
   },
   "stable": {
    "version": [
@@ -101488,25 +102740,25 @@
  },
  {
   "ename": "zoom-window",
-  "commit": "8a55cc66cc0deb1c24023f638b8e920c9d975859",
-  "sha256": "0l9683nk2bdm49likk9c55c23qfy6f1pn04drqwd1vhpanz4l4b3",
+  "commit": "2a2670edb1155f02d1cbe2600db84a82c8f3398b",
+  "sha256": "0h4rr6h79g6sh8caa0l0fxssbd02v2llapqmikz72vpsghqg7y57",
   "fetcher": "github",
-  "repo": "syohex/emacs-zoom-window",
+  "repo": "emacsorphanage/zoom-window",
   "unstable": {
    "version": [
-    20170302,
-    827
+    20200323,
+    720
    ],
-   "commit": "cd6ecc103fc30b171bda7daf1f44a550854d0dbf",
-   "sha256": "1rfhdzwyag32s15ysmf75976nvkx995581afaa4ychj45vwnaqfm"
+   "commit": "ab14a365f3e496b07f5efc20992f9094ec166f06",
+   "sha256": "0ah0gfzp0c90vrqmsfd6crl3i6bjqgb78hnpcvvg53gk5i19i4aw"
   },
   "stable": {
    "version": [
     0,
-    5
+    6
    ],
-   "commit": "eefe36d26e04a9f89aad27671d1f06e9d4736ac6",
-   "sha256": "08splg49ncgfsap3ivpc974wmg22ikshwv33l0i6advjjv9cskhm"
+   "commit": "ab14a365f3e496b07f5efc20992f9094ec166f06",
+   "sha256": "0ah0gfzp0c90vrqmsfd6crl3i6bjqgb78hnpcvvg53gk5i19i4aw"
   }
  },
  {
diff --git a/pkgs/applications/editors/flpsed/default.nix b/pkgs/applications/editors/flpsed/default.nix
index cbff8e606f2..3d6aac7e18e 100644
--- a/pkgs/applications/editors/flpsed/default.nix
+++ b/pkgs/applications/editors/flpsed/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "WYSIWYG PostScript annotator";
-    homepage = http://flpsed.org/flpsed.html;
+    homepage = "https://flpsed.org/flpsed.html";
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/applications/editors/glow/default.nix b/pkgs/applications/editors/glow/default.nix
index 80fdcc8a09c..928291940cf 100644
--- a/pkgs/applications/editors/glow/default.nix
+++ b/pkgs/applications/editors/glow/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "glow";
@@ -13,11 +13,9 @@ buildGoModule rec {
 
   modSha256 = "0r0yq7kgz7i1wf4gxxihdrn1c8mi4wcyhadncxbln24s9c5apxsf";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = [ "-ldflags=" "-X=main.Version=${version}" ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Render markdown on the CLI";
     homepage = "https://github.com/charmbracelet/glow";
     license = licenses.mit;
diff --git a/pkgs/applications/editors/gnome-builder/default.nix b/pkgs/applications/editors/gnome-builder/default.nix
index bda0552e752..8e5af1e8145 100644
--- a/pkgs/applications/editors/gnome-builder/default.nix
+++ b/pkgs/applications/editors/gnome-builder/default.nix
@@ -5,7 +5,6 @@
 , docbook_xsl
 , docbook_xml_dtd_43
 , fetchurl
-, fetchpatch
 , flatpak
 , gnome3
 , libgit2-glib
@@ -18,6 +17,7 @@
 , jsonrpc-glib
 , libdazzle
 , libpeas
+, libportal
 , libxml2
 , meson
 , ninja
@@ -39,25 +39,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-builder";
-  version = "3.34.1";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "19018pq94cxf6fywd7fsmy98x56by5zfmh140pl530gaaw84cvhb";
+    sha256 = "G0nl6DVzb3k6cN2guFIe/XNhFNhKbaq5e8wz62VA0Qo=";
   };
 
-  patches = [
-    # Fix build with Meson 0.52
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/gnome-builder/commit/c8b862b491cfbbb4f79b24d7cd90e4fb1f37cb9f.patch";
-      sha256 = "0n8kg7nnjqmbnyag1ps6dvrlqrxc94djjncqx10d6y7ijwdxf4w8";
-    })
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/gnome-builder/commit/da26dfbf78468f5ed724e022b300a07862a95833.patch";
-      sha256 = "0psa65bzjpjj7vc5rknv2w2dz3p50jjv10s6j2fd6lpw8j2800k4";
-    })
-  ];
-
   nativeBuildInputs = [
     appstream-glib
     desktop-file-utils
@@ -65,7 +53,7 @@ stdenv.mkDerivation rec {
     docbook_xml_dtd_43
     gobject-introspection
     gtk-doc
-    (meson.override ({ inherit stdenv; }))
+    meson
     ninja
     pkgconfig
     python3
@@ -80,6 +68,7 @@ stdenv.mkDerivation rec {
     gnome3.glade
     libgit2-glib
     libpeas
+    libportal
     vte
     gspell
     gtk3
@@ -109,8 +98,6 @@ stdenv.mkDerivation rec {
     patchShebangs build-aux/meson/post_install.py
   '';
 
-  NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
-
   mesonFlags = [
     "-Dpython_libprefix=${python3.libPrefix}"
     "-Ddocs=true"
diff --git a/pkgs/applications/editors/kakoune/default.nix b/pkgs/applications/editors/kakoune/default.nix
index 8cb70af40e0..6a468bd67eb 100644
--- a/pkgs/applications/editors/kakoune/default.nix
+++ b/pkgs/applications/editors/kakoune/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://kakoune.org/;
+    homepage = "http://kakoune.org/";
     description = "A vim inspired text editor";
     license = licenses.publicDomain;
     maintainers = with maintainers; [ vrthra ];
diff --git a/pkgs/applications/editors/leo-editor/default.nix b/pkgs/applications/editors/leo-editor/default.nix
index bd433436eb0..f7c6d80dbf1 100644
--- a/pkgs/applications/editors/leo-editor/default.nix
+++ b/pkgs/applications/editors/leo-editor/default.nix
@@ -1,19 +1,19 @@
-{ stdenv, python3, fetchFromGitHub, makeWrapper, makeDesktopItem }:
+{ lib, mkDerivation, python3, fetchFromGitHub, makeWrapper, wrapQtAppsHook, makeDesktopItem }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "leo-editor";
-  version = "5.7.3";
+  version = "6.2";
 
   src = fetchFromGitHub {
     owner = "leo-editor";
     repo = "leo-editor";
     rev = version;
-    sha256 = "0ri6l6cxwva450l05af5vs1lsgrz6ciwd02njdgphs9pm1vwxbl9";
+    sha256 = "07f10qwvi3p7bskzxnx5rlhlfrh7rx8v0xdlc4vs2271438j1j2z";
   };
 
   dontBuild = true;
 
-  nativeBuildInputs = [ makeWrapper python3 ];
+  nativeBuildInputs = [ wrapQtAppsHook makeWrapper python3 ];
   propagatedBuildInputs = with python3.pkgs; [ pyqt5 docutils ];
 
   desktopItem = makeDesktopItem {
@@ -24,11 +24,11 @@ stdenv.mkDerivation rec {
     comment = meta.description;
     desktopName = "Leo";
     genericName = "Text Editor";
-    categories = stdenv.lib.concatStringsSep ";" [
-      "Application" "Development" "IDE" "QT"
+    categories = lib.concatStringsSep ";" [
+      "Application" "Development" "IDE"
     ];
     startupNotify = "false";
-    mimeType = stdenv.lib.concatStringsSep ";" [
+    mimeType = lib.concatStringsSep ";" [
       "text/plain" "text/asp" "text/x-c" "text/x-script.elisp" "text/x-fortran"
       "text/html" "application/inf" "text/x-java-source" "application/x-javascript"
       "application/javascript" "text/ecmascript" "application/x-ksh" "text/x-script.ksh"
@@ -53,10 +53,12 @@ stdenv.mkDerivation rec {
     makeWrapper ${python3.interpreter} $out/bin/leo \
       --set PYTHONPATH "$PYTHONPATH:$out/share/leo-editor" \
       --add-flags "-O $out/share/leo-editor/launchLeo.py"
+
+    wrapQtApp $out/bin/leo
   '';
 
-  meta = with stdenv.lib; {
-    homepage = http://leoeditor.com;
+  meta = with lib; {
+    homepage = "http://leoeditor.com";
     description = "A powerful folding editor";
     longDescription = "Leo is a PIM, IDE and outliner that accelerates the work flow of programmers, authors and web designers.";
     license = licenses.mit;
diff --git a/pkgs/applications/editors/nano/default.nix b/pkgs/applications/editors/nano/default.nix
index 4197792d736..e3c315275dd 100644
--- a/pkgs/applications/editors/nano/default.nix
+++ b/pkgs/applications/editors/nano/default.nix
@@ -20,11 +20,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "nano";
-  version = "4.7";
+  version = "4.9.1";
 
   src = fetchurl {
     url = "mirror://gnu/nano/${pname}-${version}.tar.xz";
-    sha256 = "1x9nqy2kgaz6087p63i71gdjsqbdc9jjpx1ymlyclfakvsby3h2q";
+    sha256 = "0v5s58j3lbg5s6gapl9kjmzph7zgwaam53qspycy2sxaxw65mkaj";
   };
 
   nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;
diff --git a/pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock b/pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock
index 6a3f581c4e8..d0827bf2a7f 100644
--- a/pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock
+++ b/pkgs/applications/editors/neovim/ruby_provider/Gemfile.lock
@@ -14,4 +14,4 @@ DEPENDENCIES
   neovim
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/applications/editors/netbeans/default.nix b/pkgs/applications/editors/netbeans/default.nix
index 0fddddbaacf..b2a13e3db7c 100644
--- a/pkgs/applications/editors/netbeans/default.nix
+++ b/pkgs/applications/editors/netbeans/default.nix
@@ -3,7 +3,7 @@
 }:
 
 let
-  version = "11.2";
+  version = "11.3";
   desktopItem = makeDesktopItem {
     name = "netbeans";
     exec = "netbeans";
@@ -19,7 +19,7 @@ stdenv.mkDerivation {
   inherit version;
   src = fetchurl {
     url = "mirror://apache/netbeans/netbeans/${version}/netbeans-${version}-bin.zip";
-    sha512 = "d589481808832c4f0391ee1ecb8e18202cebeee8bd844cb4bdbf6125113b41f9138a34c4c2ef1fdf228294ef8c24b242ffec9ba5fdc4f1d288db4a3f19ba1509";
+    sha512 = "ae828836138b5a4156d58df24dd4053be58018cb6b5beb179cb0f4cd8b5db72d2a7356a434d01157aacb78d228732950cf4e3a0b6c725da8e053b6ccd91075d6";
   };
 
   buildCommand = ''
@@ -60,7 +60,7 @@ stdenv.mkDerivation {
     description = "An integrated development environment for Java, C, C++ and PHP";
     homepage = "https://netbeans.apache.org/";
     license = stdenv.lib.licenses.asl20;
-    maintainers = with stdenv.lib.maintainers; [ sander rszibele ];
+    maintainers = with stdenv.lib.maintainers; [ sander rszibele asbachb ];
     platforms = stdenv.lib.platforms.unix;
   };
 }
diff --git a/pkgs/applications/editors/quartus-prime/default.nix b/pkgs/applications/editors/quartus-prime/default.nix
index 6a6ea80ca45..093635b10e4 100644
--- a/pkgs/applications/editors/quartus-prime/default.nix
+++ b/pkgs/applications/editors/quartus-prime/default.nix
@@ -1,25 +1,58 @@
-{ buildFHSUserEnv, makeDesktopItem, stdenv, lib, requireFile, unstick, cycloneVSupport ? true }:
+{ buildFHSUserEnv, makeDesktopItem, writeScript, stdenv, lib, requireFile, unstick,
+  supportedDevices ? [ "Arria II" "Cyclone V" "Cyclone IV" "Cyclone 10 LP" "MAX II/V" "MAX 10 FPGA" ] }:
 
 let
+  deviceIds = {
+    "Arria II" = "arria_lite";
+    "Cyclone V" = "cyclonev";
+    "Cyclone IV" = "cyclone";
+    "Cyclone 10 LP" = "cyclone10lp";
+    "MAX II/V" = "max";
+    "MAX 10 FPGA" = "max10";
+  };
+
+  supportedDeviceIds =
+    assert lib.assertMsg (lib.all (name: lib.hasAttr name deviceIds) supportedDevices)
+      "Supported devices are: ${lib.concatStringsSep ", " (lib.attrNames deviceIds)}";
+    lib.listToAttrs (map (name: {
+      inherit name;
+      value = deviceIds.${name};
+    }) supportedDevices);
+
+  unsupportedDeviceIds = lib.filterAttrs (name: value:
+    !(lib.hasAttr name supportedDeviceIds)
+  ) deviceIds;
+
   quartus = stdenv.mkDerivation rec {
     version = "19.1.0.670";
-    pname = "quartus-prime-lite";
+    pname = "quartus-prime-lite-unwrapped";
 
     src = let
       require = {name, sha256}: requireFile {
         inherit name sha256;
         url = "${meta.homepage}/${lib.versions.majorMinor version}/?edition=lite&platform=linux";
       };
+
+      hashes = {
+        "arria_lite" = "1flj9w0vb2p9f9zll136izr6qvmxn0lg72bvaqxs3sxc9vj06wm1";
+        "cyclonev" = "0bqxpvjgph0y6slk0jq75mcqzglmqkm0jsx10y9xz5llm6zxzqab";
+        "cyclone" = "0pzs8y4s3snxg4g6lrb21qi88abm48g279xzd98qv17qxb2z82rr";
+        "cyclone10lp" = "1ccxq8n20y40y47zddkijcv41w3cddvydddr3m4844q31in3nxha";
+        "max" = "1cxzbqscxvlcy74dpqmvlnxjyyxfwcx3spygpvpwi6dfj3ipgm2z";
+        "max10" = "14k83javivbk65mpb17wdwsyb8xk7x9gzj9x0wnd24mmijrvdy9s";
+      };
+
+      devicePackages = map (id: {
+        name = "${id}-${version}.qdz";
+        sha256 = lib.getAttr id hashes;
+      }) (lib.attrValues supportedDeviceIds);
     in map require ([{
       name = "QuartusLiteSetup-${version}-linux.run";
       sha256 = "15vxvqxqdk29ahlw3lkm1nzxyhzy4626wb9s5f2h6sjgq64r8m7f";
     } {
       name = "ModelSimSetup-${version}-linux.run";
       sha256 = "0j1vfr91jclv88nam2plx68arxmz4g50sqb840i60wqd5b0l3y6r";
-    }] ++ lib.optional cycloneVSupport {
-      name = "cyclonev-${version}.qdz";
-      sha256 = "0bqxpvjgph0y6slk0jq75mcqzglmqkm0jsx10y9xz5llm6zxzqab";
-    });
+    }] ++ devicePackages);
 
     nativeBuildInputs = [ unstick ];
 
@@ -37,27 +70,22 @@ let
       disabledComponents = [
         "quartus_help"
         "quartus_update"
+        # not modelsim_ase
         "modelsim_ae"
-        # Devices
-        "arria_lite"
-        "cyclone"
-        "cyclone10lp"
-        "max"
-        "max10"
-      ] ++ lib.optional (!cycloneVSupport) "cyclonev";
+      ] ++ (lib.attrValues unsupportedDeviceIds);
     in ''
-    ${lib.concatMapStringsSep "\n" copyInstaller installers}
-    ${lib.concatMapStringsSep "\n" copyComponent components}
+      ${lib.concatMapStringsSep "\n" copyInstaller installers}
+      ${lib.concatMapStringsSep "\n" copyComponent components}
 
-    unstick $TEMP/${(builtins.head installers).name} \
-      --disable-components ${lib.concatStringsSep "," disabledComponents} \
-      --mode unattended --installdir $out --accept_eula 1
+      unstick $TEMP/${(builtins.head installers).name} \
+        --disable-components ${lib.concatStringsSep "," disabledComponents} \
+        --mode unattended --installdir $out --accept_eula 1
 
-    # This patch is from https://wiki.archlinux.org/index.php/Altera_Design_Software
-    patch --force --strip 0 --directory $out < ${./vsim.patch}
+      # This patch is from https://wiki.archlinux.org/index.php/Altera_Design_Software
+      patch --force --strip 0 --directory $out < ${./vsim.patch}
 
-    rm -r $out/uninstall $out/logs
-  '';
+      rm -r $out/uninstall $out/logs
+    '';
 
     meta = {
       homepage = "https://fpgasoftware.intel.com";
@@ -69,17 +97,17 @@ let
   };
 
   desktopItem = makeDesktopItem {
-    name = quartus.name;
+    name = "quartus-prime-lite";
     exec = "quartus";
     icon = "quartus";
     desktopName = "Quartus";
-    genericName = "Quartus FPGA IDE";
+    genericName = "Quartus Prime";
     categories = "Development;";
   };
 
 # I think modelsim_ase/linux/vlm checksums itself, so use FHSUserEnv instead of `patchelf`
-in buildFHSUserEnv {
-  name = "quartus-prime-lite";
+in buildFHSUserEnv rec {
+  name = "quartus-prime-lite"; # wrapped
 
   targetPkgs = pkgs: with pkgs; [
     # quartus requirements
@@ -110,10 +138,43 @@ in buildFHSUserEnv {
     xorg.libXrender
   ];
 
-  extraInstallCommands = ''
-    mkdir -p $out/share/applications
-    cp ${desktopItem}/share/applications/* $out/share/applications
+  passthru = {
+    unwrapped = quartus;
+  };
+
+  extraInstallCommands = let
+    quartusExecutables = (map (c: "quartus/bin/quartus_${c}") [
+      "asm" "cdb" "cpf" "drc" "eda" "fit" "jbcc" "jli" "map" "pgm" "pow"
+      "sh" "si" "sim" "sta" "stp" "tan"
+    ]) ++ [ "quartus/bin/quartus" ];
+
+    qsysExecutables = map (c: "quartus/sopc_builder/bin/qsys-${c}") [
+      "generate" "edit" "script"
+    ];
+    # Should we install all executables ?
+    modelsimExecutables = map (c: "modelsim_ase/bin/${c}") [
+      "vsim" "vlog" "vlib"
+    ];
+  in ''
+    mkdir -p $out/share/applications $out/share/icons/128x128
+    ln -s ${desktopItem}/share/applications/* $out/share/applications
+    ln -s ${quartus}/licenses/images/dc_quartus_panel_logo.png $out/share/icons/128x128/quartus.png
+
+    mkdir -p $out/quartus/bin $out/quartus/sopc_builder/bin $out/modelsim_ase/bin
+    WRAPPER=$out/bin/${name}
+    EXECUTABLES="${lib.concatStringsSep " " (quartusExecutables ++ qsysExecutables ++ modelsimExecutables)}"
+    for executable in $EXECUTABLES; do
+        echo "#!${stdenv.shell}" >> $out/$executable
+        echo "$WRAPPER ${quartus}/$executable \$@" >> $out/$executable
+    done
+
+    cd $out
+    chmod +x $EXECUTABLES
+    # link into $out/bin so executables become available on $PATH
+    ln --symbolic --relative --target-directory ./bin $EXECUTABLES
   '';
 
-  runScript = "${quartus}/quartus/bin/quartus";
+  runScript = writeScript "${name}-wrapper" ''
+    exec $@
+  '';
 }
diff --git a/pkgs/applications/editors/quilter/default.nix b/pkgs/applications/editors/quilter/default.nix
index 338708e3f82..9bc8e1bc920 100644
--- a/pkgs/applications/editors/quilter/default.nix
+++ b/pkgs/applications/editors/quilter/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "quilter";
-  version = "2.1.2";
+  version = "2.2.2";
 
   src = fetchFromGitHub {
     owner = "lainsce";
     repo = pname;
     rev = version;
-    sha256 = "1nk6scn98kb43h056ajycpj71jkx7b9p5g05khgl6bwj9hvjvcbw";
+    sha256 = "1bgsbcx09ca063kdqfc7nigly99d7xgx2cbkpk1nkhr0hvkyg9l9";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/editors/qxmledit/default.nix b/pkgs/applications/editors/qxmledit/default.nix
new file mode 100644
index 00000000000..9e9766f04e8
--- /dev/null
+++ b/pkgs/applications/editors/qxmledit/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub,
+  qmake, qtbase, qtxmlpatterns, qtsvg, qtscxml, qtquick1, libGLU }:
+
+stdenv.mkDerivation rec {
+  name = "qxmledit-${version}" ;
+  version = "0.9.15" ;
+  src = fetchFromGitHub ( stdenv.lib.importJSON ./qxmledit.json ) ;
+  nativeBuildInputs = [ qmake ] ;
+  buildInputs = [ qtbase qtxmlpatterns qtsvg qtscxml qtquick1 libGLU ] ;
+  qmakeFlags = [ "CONFIG+=release" ] ;
+  outputs = [ "out" "doc" ] ;
+
+  preConfigure = ''
+    export QXMLEDIT_INST_DATA_DIR="$out/share/data"
+    export QXMLEDIT_INST_TRANSLATIONS_DIR="$out/share/i18n"
+    export QXMLEDIT_INST_INCLUDE_DIR="$out/include"
+    export QXMLEDIT_INST_DIR="$out/bin"
+    export QXMLEDIT_INST_LIB_DIR="$out/lib"
+    export QXMLEDIT_INST_DOC_DIR="$doc"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Simple XML editor based on qt libraries" ;
+    homepage = https://sourceforge.net/projects/qxmledit;
+    license = licenses.lgpl2;
+    platforms = platforms.all;
+  } ;
+}
diff --git a/pkgs/applications/editors/qxmledit/qxmledit.json b/pkgs/applications/editors/qxmledit/qxmledit.json
new file mode 100644
index 00000000000..3b50532d6a0
--- /dev/null
+++ b/pkgs/applications/editors/qxmledit/qxmledit.json
@@ -0,0 +1,6 @@
+{
+    "owner": "lbellonda",
+    "repo": "qxmledit",
+    "rev": "6136dca50ceb3b4447c91a7a18dcf84785ea11d1",
+    "sha256": "1wcnphalwf0a5gz9r44jgk8wcv1w2qipbwjkbzkra2kxanxns834"
+}
\ No newline at end of file
diff --git a/pkgs/applications/editors/standardnotes/default.nix b/pkgs/applications/editors/standardnotes/default.nix
index 5a13d91aef2..cd62c8bf65d 100644
--- a/pkgs/applications/editors/standardnotes/default.nix
+++ b/pkgs/applications/editors/standardnotes/default.nix
@@ -1,38 +1,47 @@
-{ stdenv, appimage-run, fetchurl, runtimeShell }:
+{ stdenv, appimageTools, autoPatchelfHook, desktop-file-utils
+  , fetchurl, runtimeShell }:
 
 let
-  version = "3.0.15";
+  version = "3.3.3";
+  pname = "standardnotes";
+  name = "${pname}-${version}";
 
   plat = {
-    i386-linux = "i386";
-    x86_64-linux = "x86_64";
+    i386-linux = "-i386";
+    x86_64-linux = "";
   }.${stdenv.hostPlatform.system};
 
   sha256 = {
-    i386-linux = "0v2nsis6vb1lnhmjd28vrfxqwwpycv02j0nvjlfzcgj4b3400j7a";
-    x86_64-linux = "130n586cw0836zsbwqcz3pp3h0d4ny74ngqs4k4cvfb92556r7xh";
+    i386-linux = "2ccdf23588b09d645811e562d4fd7e02ac0e367bf2b34e373d8470d48544036d";
+    x86_64-linux = "6366d0a37cbf2cf51008a666e40bada763dd1539173de01e093bcbe4146a6bd8";
   }.${stdenv.hostPlatform.system};
-in
-
-stdenv.mkDerivation {
-  pname = "standardnotes";
-  inherit version;
 
   src = fetchurl {
-    url = "https://github.com/standardnotes/desktop/releases/download/v${version}/standard-notes-${version}-${plat}.AppImage";
+    url = "https://github.com/standardnotes/desktop/releases/download/v${version}/standard-notes-${version}${plat}.AppImage";
     inherit sha256;
   };
 
-  buildInputs = [ appimage-run ];
+  appimageContents = appimageTools.extract {
+    inherit name src;
+  };
+
+  nativeBuildInputs = [ autoPatchelfHook desktop-file-utils ];
+
+in appimageTools.wrapType2 rec {
+  inherit name src;
+
+  extraInstallCommands = ''
+    # directory in /nix/store so readonly
+    cp -r  ${appimageContents}/* $out
+    cd $out
+    chmod -R +w $out
+    mv $out/bin/${name} $out/bin/${pname}
 
-  dontUnpack = true;
+    # fixup and install desktop file
+    ${desktop-file-utils}/bin/desktop-file-install --dir $out/share/applications \
+      --set-key Exec --set-value ${pname} standard-notes.desktop
 
-  installPhase = ''
-    mkdir -p $out/{bin,share}
-    cp $src $out/share/standardNotes.AppImage
-    echo "#!${runtimeShell}" > $out/bin/standardnotes
-    echo "${appimage-run}/bin/appimage-run $out/share/standardNotes.AppImage" >> $out/bin/standardnotes
-    chmod +x $out/bin/standardnotes $out/share/standardNotes.AppImage
+    rm usr/lib/* AppRun standard-notes.desktop .so*
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/editors/texworks/default.nix b/pkgs/applications/editors/texworks/default.nix
index d5549c52592..d0347bcb37c 100644
--- a/pkgs/applications/editors/texworks/default.nix
+++ b/pkgs/applications/editors/texworks/default.nix
@@ -5,13 +5,13 @@
 
 mkDerivation rec {
   pname = "texworks";
-  version = "0.6.4";
+  version = "0.6.5";
 
   src = fetchFromGitHub {
     owner = "TeXworks";
     repo = "texworks";
     rev = "release-${version}";
-    sha256 = "0d7f23c6c1wj4aii4h5w9piv01qfb69zrd79dvxwydrk99i8gnl4";
+    sha256 = "1lw1p4iyzxypvjhnav11g6rwf6gx7kyzwy2iprvv8zzpqcdkjp2z";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/applications/editors/vim/configurable.nix b/pkgs/applications/editors/vim/configurable.nix
index bb3d571e6f8..3b37c805cdd 100644
--- a/pkgs/applications/editors/vim/configurable.nix
+++ b/pkgs/applications/editors/vim/configurable.nix
@@ -14,7 +14,7 @@
 
 , features          ? "huge" # One of tiny, small, normal, big or huge
 , wrapPythonDrv     ? false
-, guiSupport        ? config.vim.gui or "gtk3"
+, guiSupport        ? config.vim.gui or (if stdenv.isDarwin then "gtk2" else "gtk3")
 , luaSupport        ? config.vim.lua or true
 , perlSupport       ? config.vim.perl or false      # Perl interpreter
 , pythonSupport     ? config.vim.python or true     # Python interpreter
diff --git a/pkgs/applications/editors/vim/vimacs.nix b/pkgs/applications/editors/vim/vimacs.nix
new file mode 100644
index 00000000000..d067b418121
--- /dev/null
+++ b/pkgs/applications/editors/vim/vimacs.nix
@@ -0,0 +1,34 @@
+{ stdenv, config, vim_configurable, macvim, vimPlugins
+, useMacvim ? stdenv.isDarwin && (config.vimacs.macvim or true)
+, vimacsExtraArgs ? "" }:
+
+stdenv.mkDerivation rec {
+  pname = "vimacs";
+  version = vimPackage.version;
+  vimPackage = if useMacvim then macvim else vim_configurable;
+
+  buildInputs = [ vimPackage vimPlugins.vimacs ];
+
+  buildCommand = ''
+    mkdir -p "$out"/bin
+    cp "${vimPlugins.vimacs}"/share/vim-plugins/vimacs/bin/vim $out/bin/vimacs
+    substituteInPlace "$out"/bin/vimacs \
+      --replace '-vim}' '-@bin@/bin/vim}' \
+      --replace '-gvim}' '-@bin@/bin/vim -g}' \
+      --replace '--cmd "let g:VM_Enabled = 1"' \
+                '--cmd "let g:VM_Enabled = 1" --cmd "set rtp^=@rtp@" ${vimacsExtraArgs}' \
+      --replace @rtp@ ${vimPlugins.vimacs.rtp} \
+      --replace @bin@ ${vimPackage}
+    for prog in vm gvm gvimacs vmdiff vimacsdiff
+    do
+      ln -s "$out"/bin/vimacs $out/bin/$prog
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Vim-Improved eMACS: Emacs emulation for Vim";
+    homepage = "http://algorithm.com.au/code/vimacs";
+    license = licenses.gpl2Plus;
+    maintainers = with stdenv.lib.maintainers; [ millerjason ];
+  };
+}
diff --git a/pkgs/applications/editors/vscode/generic.nix b/pkgs/applications/editors/vscode/generic.nix
index a573c518b5d..abd4a55c92b 100644
--- a/pkgs/applications/editors/vscode/generic.nix
+++ b/pkgs/applications/editors/vscode/generic.nix
@@ -25,7 +25,7 @@ in
       comment = "Code Editing. Redefined.";
       genericName = "Text Editor";
       exec = executableName;
-      icon = "@out@/share/pixmaps/code.png";
+      icon = "code";
       startupNotify = "true";
       categories = "Utility;TextEditor;Development;IDE;";
       mimeType = "text/plain;inode/directory;";
@@ -37,7 +37,7 @@ in
         [Desktop Action new-empty-window]
         Name=New Empty Window
         Exec=${executableName} --new-window %F
-        Icon=@out@/share/pixmaps/code.png
+        Icon=code
       '';
     };
 
@@ -47,7 +47,7 @@ in
       comment = "Code Editing. Redefined.";
       genericName = "Text Editor";
       exec = executableName + " --open-url %U";
-      icon = "@out@/share/pixmaps/code.png";
+      icon = "code";
       startupNotify = "true";
       categories = "Utility;TextEditor;Development;IDE;";
       mimeType = "x-scheme-handler/vscode;";
@@ -83,10 +83,8 @@ in
         ln -s $out/lib/vscode/bin/${executableName} $out/bin
 
         mkdir -p $out/share/applications
-        substitute $desktopItem/share/applications/${executableName}.desktop $out/share/applications/${executableName}.desktop \
-          --subst-var out
-        substitute $urlHandlerDesktopItem/share/applications/${executableName}-url-handler.desktop $out/share/applications/${executableName}-url-handler.desktop \
-          --subst-var out
+        ln -s $desktopItem/share/applications/${executableName}.desktop $out/share/applications/${executableName}.desktop
+        ln -s $urlHandlerDesktopItem/share/applications/${executableName}-url-handler.desktop $out/share/applications/${executableName}-url-handler.desktop
 
         mkdir -p $out/share/pixmaps
         cp $out/lib/vscode/resources/app/resources/linux/code.png $out/share/pixmaps/code.png
diff --git a/pkgs/applications/editors/vscode/vscode.nix b/pkgs/applications/editors/vscode/vscode.nix
index 967cd45946f..765520ea9a4 100644
--- a/pkgs/applications/editors/vscode/vscode.nix
+++ b/pkgs/applications/editors/vscode/vscode.nix
@@ -11,15 +11,17 @@ let
   archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
 
   sha256 = {
-    x86_64-linux = "0i8dmh9w7xgzfjii4m116lavydpfpcp7fxs4bcykf0a779pzwv87";
-    x86_64-darwin = "0z0r0dmmzk3k095g7jbrrk9gl1jpb3cai973xrjw17ank1lddcjf";
+    x86_64-linux = "0q1fk5a4ymndnyxzps8960y1rl657q95i2rydbqyjl37y79wmllx";
+    x86_64-darwin = "02ybgp6v1ray4a867hihp2fvc872ilqla6z52qv90dfjx69g77ib";
   }.${system};
 in
   callPackage ./generic.nix rec {
     # The update script doesn't correctly change the hash for darwin, so please:
     # nixpkgs-update: no auto update
 
-    version = "1.43.0";
+    # Please backport all compatible updates to the stable release.
+    # This is important for the extension ecosystem.
+    version = "1.44.0";
     pname = "vscode";
 
     executableName = "code" + lib.optionalString isInsiders "-insiders";
diff --git a/pkgs/applications/editors/vscode/vscodium.nix b/pkgs/applications/editors/vscode/vscodium.nix
index bffe73ec4f6..23a320ccce9 100644
--- a/pkgs/applications/editors/vscode/vscodium.nix
+++ b/pkgs/applications/editors/vscode/vscodium.nix
@@ -11,8 +11,8 @@ let
   archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
 
   sha256 = {
-    x86_64-linux = "139sqaixlcqlpcrn2vkcp9fxvcjgnhn2dwxclxq3bnb814pw7rba";
-    x86_64-darwin = "0jkd3p1jqg38z9l22k5w7b45fdnxwrhzlgyhinw7wlqz7zvflkn1";
+    x86_64-linux = "1prv4rzr5z905s6jnmkmd97zr5kz8nn4m9bil483bnx4wqr2k10g";
+    x86_64-darwin = "1p0a94i80s7fq6ars01bvr41qxiq35s0r6crfv857ma01g9ia7k3";
   }.${system};
 
   sourceRoot = {
@@ -25,7 +25,9 @@ in
     # The update script doesn't correctly change the hash for darwin, so please:
     # nixpkgs-update: no auto update
 
-    version = "1.43.0";
+    # Please backport all compatible updates to the stable release.
+    # This is important for the extension ecosystem.
+    version = "1.44.0";
     pname = "vscodium";
 
     executableName = "codium";
diff --git a/pkgs/applications/gis/qgis/unwrapped.nix b/pkgs/applications/gis/qgis/unwrapped.nix
index de436088fa7..80115ab8243 100644
--- a/pkgs/applications/gis/qgis/unwrapped.nix
+++ b/pkgs/applications/gis/qgis/unwrapped.nix
@@ -10,7 +10,7 @@ let
     [ qscintilla-qt5 gdal jinja2 numpy psycopg2
       chardet dateutil pyyaml pytz requests urllib3 pygments pyqt5 sip owslib six ];
 in mkDerivation rec {
-  version = "3.10.1";
+  version = "3.10.4";
   pname = "qgis";
   name = "${pname}-unwrapped-${version}";
 
@@ -18,7 +18,7 @@ in mkDerivation rec {
     owner = "qgis";
     repo = "QGIS";
     rev = "final-${lib.replaceStrings ["."] ["_"] version}";
-    sha256 = "0xq0nnp7zdqaihqvh5rsi1129g23vnk5ijkpxfzaggafgmhf5hgz";
+    sha256 = "0d1rsgjgnnq6jgms5bgppz8lkh4518nf90fk0qvxajdfi9j4jn12";
   };
 
   passthru = {
diff --git a/pkgs/applications/gis/saga/default.nix b/pkgs/applications/gis/saga/default.nix
index 30ae92f58ae..05f895bdee1 100644
--- a/pkgs/applications/gis/saga/default.nix
+++ b/pkgs/applications/gis/saga/default.nix
@@ -4,7 +4,7 @@
 
 stdenv.mkDerivation {
   pname = "saga";
-  version = "7.6.1";
+  version = "7.6.2";
 
   # See https://groups.google.com/forum/#!topic/nix-devel/h_vSzEJAPXs
   # for why the have additional buildInputs on darwin
@@ -18,8 +18,8 @@ stdenv.mkDerivation {
   CXXFLAGS = stdenv.lib.optionalString stdenv.cc.isClang "-std=c++11 -Wno-narrowing";
 
   src = fetchurl {
-    url = "https://sourceforge.net/projects/saga-gis/files/SAGA%20-%207/SAGA%20-%207.6.1/saga-7.6.1.tar.gz";
-    sha256 = "1i0cp1lms6cmjl7f5vgr9pl3qc02fmappn4kq21y0dn2gy7j2mkn";
+    url = "https://sourceforge.net/projects/saga-gis/files/SAGA%20-%207/SAGA%20-%207.6.2/saga-7.6.2.tar.gz";
+    sha256 = "09j5magmayq2y620kqa490mfd1kpdp3lng2ifcgbrmssc079ybm0";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/graphics/antimony/default.nix b/pkgs/applications/graphics/antimony/default.nix
index 5966d6427ed..75ba3ecd55d 100644
--- a/pkgs/applications/graphics/antimony/default.nix
+++ b/pkgs/applications/graphics/antimony/default.nix
@@ -4,19 +4,19 @@
 }:
 
 let
-  gitRev    = "6dfe6822e0279a4cc2f1c60e85b42212627285fe";
+  gitRev    = "8fb4b0929ce84cf375bfb83a9d522ccd80681eaf";
   gitBranch = "develop";
   gitTag    = "0.9.3";
 in
   stdenv.mkDerivation {
     pname = "antimony";
-    version = "2019-10-30";
+    version = "2020-03-28";
 
     src = fetchFromGitHub {
       owner  = "mkeeter";
       repo   = "antimony";
       rev    = gitRev;
-      sha256 = "07zlkwlk79czq8dy85b6n3ds3g36l8qy4ix849ady6ia3gm8981j";
+      sha256 = "1s0zmq5jmhmb1wcsyaxfmii448g6x8b41mzvb1awlljj85qj0k2s";
     };
 
     patches = [ ./paths-fix.patch ];
@@ -29,11 +29,10 @@ in
 
     buildInputs = [
       libpng python3 python3.pkgs.boost
-      libGLU libGL qtbase wrapQtAppsHook
-      ncurses
+      libGLU libGL qtbase ncurses
     ];
 
-    nativeBuildInputs = [ cmake flex lemon ];
+    nativeBuildInputs = [ cmake flex lemon wrapQtAppsHook ];
 
     cmakeFlags= [
       "-DGITREV=${gitRev}"
diff --git a/pkgs/applications/graphics/drawing/default.nix b/pkgs/applications/graphics/drawing/default.nix
index 67fa5da398b..fb68276b168 100644
--- a/pkgs/applications/graphics/drawing/default.nix
+++ b/pkgs/applications/graphics/drawing/default.nix
@@ -17,7 +17,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "drawing";
-  version = "0.4.11";
+  version = "0.4.13";
 
   format = "other";
   
@@ -25,7 +25,7 @@ python3.pkgs.buildPythonApplication rec {
     owner = "maoschanz";
     repo = pname;
     rev = version;
-    sha256 = "00c1h6jns11rmsg35gy40fb6ahvik80wpbm2133bjcqxfwwnlal6";
+    sha256 = "0mj2nmfrckv89srgkn16fnbrb35f5a655ak8bb3rd9na3hd5bq53";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/graphics/drawio/default.nix b/pkgs/applications/graphics/drawio/default.nix
index 2a7efea5271..aa1ac0f2620 100644
--- a/pkgs/applications/graphics/drawio/default.nix
+++ b/pkgs/applications/graphics/drawio/default.nix
@@ -11,11 +11,11 @@
 
 stdenv.mkDerivation rec {
   pname = "drawio";
-  version = "12.6.5";
+  version = "12.9.9";
 
   src = fetchurl {
     url = "https://github.com/jgraph/drawio-desktop/releases/download/v${version}/draw.io-x86_64-${version}.rpm";
-    sha256 = "14x4h680q3w9wsdmivy2k1bggb09vdm3a3wrpfwd79dbaagjk4lc";
+    sha256 = "07lx99fd4vkgdhagshzawrh8ncbv19hvxjpzgd3yjdj0nalvmxin";
   };
 
   nativeBuildInputs = [
@@ -86,7 +86,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A desktop application for creating diagrams";
-    homepage = https://about.draw.io/;
+    homepage = "https://about.draw.io/";
     license = licenses.asl20;
     maintainers = with maintainers; [ danieldk ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/applications/graphics/fluxus/default.nix b/pkgs/applications/graphics/fluxus/default.nix
index a8094071101..d7841fde823 100644
--- a/pkgs/applications/graphics/fluxus/default.nix
+++ b/pkgs/applications/graphics/fluxus/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     owner = "nebogeo";
     repo = "fluxus";
     rev = "ba9aee218dd4a9cfab914ad78bdb6d59e9a37400";
-    hash = "sha256:0mwghpgq4n1khwlmgscirhmcdhi6x00c08q4idi2zcqz961bbs28";
+    sha256 = "0mwghpgq4n1khwlmgscirhmcdhi6x00c08q4idi2zcqz961bbs28";
   };
 
   buildInputs = [
@@ -69,7 +69,7 @@ stdenv.mkDerivation rec {
     openssl.dev
     racket
   ];
-  nativeBuildInputs = [ scons ];
+  nativeBuildInputs = [ scons.py2 ];
 
   patches = [ ./fix-build.patch ];
   sconsFlags = [
diff --git a/pkgs/applications/graphics/gscan2pdf/default.nix b/pkgs/applications/graphics/gscan2pdf/default.nix
index 76bb0bc1317..d8f91638b91 100644
--- a/pkgs/applications/graphics/gscan2pdf/default.nix
+++ b/pkgs/applications/graphics/gscan2pdf/default.nix
@@ -10,11 +10,11 @@ with stdenv.lib;
 
 perlPackages.buildPerlPackage rec {
   pname = "gscan2pdf";
-  version = "2.6.3";
+  version = "2.6.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/gscan2pdf/${version}/${pname}-${version}.tar.xz";
-    sha256 = "1chmk51xwylnjrgc6hw23x7g7cpwzgwmjc49fcah7pkd3dk1cvvr";
+    sha256 = "0x8931i5zs4zl3iqjhlp7h8y6ssklxiqsddz5kh84nl3p0izbg0y";
   };
 
   nativeBuildInputs = [ wrapGAppsHook ];
diff --git a/pkgs/applications/graphics/gthumb/default.nix b/pkgs/applications/graphics/gthumb/default.nix
index b51db1e945f..4a6526fe9c6 100644
--- a/pkgs/applications/graphics/gthumb/default.nix
+++ b/pkgs/applications/graphics/gthumb/default.nix
@@ -59,7 +59,10 @@ stdenv.mkDerivation rec {
     gnome3.adwaita-icon-theme
     gsettings-desktop-schemas
     gst_all_1.gst-plugins-base
-    gst_all_1.gstreamer
+    (gst_all_1.gst-plugins-good.override { gtkSupport = true; })
+    gst_all_1.gst-libav
+    gst_all_1.gst-plugins-bad
+    gst_all_1.gst-plugins-ugly
     gtk3
     json-glib
     lcms2
diff --git a/pkgs/applications/graphics/image_optim/Gemfile.lock b/pkgs/applications/graphics/image_optim/Gemfile.lock
index 20c9772ce46..3ffadb5acbe 100644
--- a/pkgs/applications/graphics/image_optim/Gemfile.lock
+++ b/pkgs/applications/graphics/image_optim/Gemfile.lock
@@ -20,4 +20,4 @@ DEPENDENCIES
   image_optim
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/applications/graphics/sane/backends/airscan/default.nix b/pkgs/applications/graphics/sane/backends/airscan/default.nix
new file mode 100644
index 00000000000..11529eee210
--- /dev/null
+++ b/pkgs/applications/graphics/sane/backends/airscan/default.nix
@@ -0,0 +1,27 @@
+{ lib, stdenv, fetchFromGitHub, pkg-config, avahi, libsoup, libjpeg
+, sane-backends, meson, ninja }:
+stdenv.mkDerivation rec {
+  pname = "sane-airscan";
+  version = "0.9.17";
+
+  nativeBuildInputs = [ meson ninja pkg-config ];
+  buildInputs = [ avahi libsoup libjpeg sane-backends ];
+
+  src = fetchFromGitHub {
+    owner = "alexpevzner";
+    repo = pname;
+    rev = version;
+    sha256 = "03y0c1z5s3wbvxa9nvji62w42cmvcgm2sw72j7wm831995q3abmx";
+  };
+
+  meta = with lib; {
+    homepage = "https://github.com/alexpevzner/sane-airscan";
+    description = "Scanner Access Now Easy - Apple AirScan (eSCL) driver";
+    longDescription = ''
+      sane-airscan: Linux support of Apple AirScan (eSCL) compatible document scanners.
+    '';
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ zaninime ];
+  };
+}
diff --git a/pkgs/applications/graphics/shotwell/default.nix b/pkgs/applications/graphics/shotwell/default.nix
index 79bc743fbf0..f84986cb598 100644
--- a/pkgs/applications/graphics/shotwell/default.nix
+++ b/pkgs/applications/graphics/shotwell/default.nix
@@ -39,11 +39,11 @@
 
 stdenv.mkDerivation rec {
   pname = "shotwell";
-  version = "0.31.0";
+  version = "0.31.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1pwq953wl7h9cvw7rvlr6pcbq9w28kkr7ddb8x2si81ngp0imwyx";
+    sha256 = "0mbgrad4d4snffw2z3rkhwqq1bkxdgy52pblx99vjadvpgspb034";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/kde/default.nix b/pkgs/applications/kde/default.nix
index 6788a5df3ff..5994eaf1c71 100644
--- a/pkgs/applications/kde/default.nix
+++ b/pkgs/applications/kde/default.nix
@@ -78,6 +78,7 @@ let
       dolphin = callPackage ./dolphin.nix {};
       dolphin-plugins = callPackage ./dolphin-plugins.nix {};
       dragon = callPackage ./dragon.nix {};
+      elisa = callPackage ./elisa.nix {};
       eventviews = callPackage ./eventviews.nix {};
       ffmpegthumbs = callPackage ./ffmpegthumbs.nix { };
       filelight = callPackage ./filelight.nix {};
diff --git a/pkgs/applications/kde/elisa.nix b/pkgs/applications/kde/elisa.nix
new file mode 100644
index 00000000000..a2bfa88f812
--- /dev/null
+++ b/pkgs/applications/kde/elisa.nix
@@ -0,0 +1,46 @@
+{ mkDerivation
+, fetchFromGitHub
+, lib
+, extra-cmake-modules
+, kdoctools
+, qtmultimedia
+, qtquickcontrols2
+, qtwebsockets
+, kconfig
+, kcmutils
+, kcrash
+, kdeclarative
+, kfilemetadata
+, kinit
+, kirigami2
+, baloo
+, vlc
+}:
+
+mkDerivation rec {
+  name = "elisa";
+
+  buildInputs = [ vlc ];
+
+  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
+
+  propagatedBuildInputs = [
+    baloo
+    kcmutils
+    kconfig
+    kcrash
+    kdeclarative
+    kfilemetadata
+    kinit
+    kirigami2
+    qtmultimedia
+    qtquickcontrols2
+    qtwebsockets
+  ];
+
+  meta = with lib; {
+    description = "A simple media player for KDE";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ peterhoeg ];
+  };
+}
diff --git a/pkgs/applications/kde/fetch.sh b/pkgs/applications/kde/fetch.sh
index 424c759b56c..3f6dc9ef181 100644
--- a/pkgs/applications/kde/fetch.sh
+++ b/pkgs/applications/kde/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( http://download.kde.org/stable/release-service/19.12.1/src )
+WGET_ARGS=( http://download.kde.org/stable/release-service/19.12.3/src )
diff --git a/pkgs/applications/kde/ffmpeg-path.patch b/pkgs/applications/kde/ffmpeg-path.patch
new file mode 100644
index 00000000000..a0cef882f59
--- /dev/null
+++ b/pkgs/applications/kde/ffmpeg-path.patch
@@ -0,0 +1,25 @@
+diff --git a/src/kdenlivesettings.kcfg b/src/kdenlivesettings.kcfg
+index 5edad5ae7..d35347a40 100644
+--- a/src/kdenlivesettings.kcfg
++++ b/src/kdenlivesettings.kcfg
+@@ -403,17 +403,17 @@
+ 
+     <entry name="ffmpegpath" type="Path">
+       <label>FFmpeg / Libav binary path.</label>
+-      <default></default>
++      <default>@ffmpeg@/bin/ffmpeg</default>
+     </entry>
+ 
+     <entry name="ffplaypath" type="Path">
+       <label>FFplay / avplay binary path.</label>
+-      <default></default>
++      <default>@ffmpeg@/bin/ffplay</default>
+     </entry>
+ 
+     <entry name="ffprobepath" type="Path">
+       <label>FFprobe / avprobe binary path.</label>
+-      <default></default>
++      <default>@ffmpeg@/bin/ffprobe</default>
+     </entry>
+ 
+     <entry name="mltthreads" type="Int">
diff --git a/pkgs/applications/kde/kdenlive.nix b/pkgs/applications/kde/kdenlive.nix
index b7c691e9594..95496f90e04 100644
--- a/pkgs/applications/kde/kdenlive.nix
+++ b/pkgs/applications/kde/kdenlive.nix
@@ -70,14 +70,24 @@ mkDerivation {
     kpurpose
     kdeclarative
   ];
-  patches = [ ./mlt-path.patch ];
+  # Both MLT and FFMpeg paths must be set or Kdenlive will complain that it
+  # doesn't find them. See:
+  # https://github.com/NixOS/nixpkgs/issues/83885
+  patches = [ ./mlt-path.patch ./ffmpeg-path.patch ];
   inherit mlt;
+  ffmpeg = ffmpeg-full;
   postPatch =
     # Module Qt5::Concurrent must be included in `find_package` before it is used.
     ''
       sed -i CMakeLists.txt -e '/find_package(Qt5 REQUIRED/ s|)| Concurrent)|'
       substituteAllInPlace src/kdenlivesettings.kcfg
     '';
+  # Frei0r path needs to be set too or Kdenlive will complain. See:
+  # https://github.com/NixOS/nixpkgs/issues/83885
+  # https://github.com/NixOS/nixpkgs/issues/29614#issuecomment-488849325
+  qtWrapperArgs = [
+    "--set FREI0R_PATH ${frei0r}/lib/frei0r-1"
+  ];
   meta = {
     license = with lib.licenses; [ gpl2Plus ];
   };
diff --git a/pkgs/applications/kde/kitinerary.nix b/pkgs/applications/kde/kitinerary.nix
index ce66de251dc..303ea6162ba 100644
--- a/pkgs/applications/kde/kitinerary.nix
+++ b/pkgs/applications/kde/kitinerary.nix
@@ -2,6 +2,7 @@
   mkDerivation, lib, extra-cmake-modules
 , qtbase, qtdeclarative, ki18n, kmime, kpkpass
 , poppler, kcontacts, kcalendarcore
+, shared-mime-info
 }:
 
 mkDerivation {
@@ -10,7 +11,10 @@ mkDerivation {
     license = with lib.licenses; [ lgpl21 ];
     maintainers = [ lib.maintainers.bkchr ];
   };
-  nativeBuildInputs = [ extra-cmake-modules ];
+  nativeBuildInputs = [
+    extra-cmake-modules
+    shared-mime-info # for update-mime-database
+  ];
   buildInputs = [
     qtbase qtdeclarative ki18n kmime kpkpass poppler
     kcontacts kcalendarcore
diff --git a/pkgs/applications/kde/srcs.nix b/pkgs/applications/kde/srcs.nix
index 60cf49fa05e..dc6eb0f09e8 100644
--- a/pkgs/applications/kde/srcs.nix
+++ b/pkgs/applications/kde/srcs.nix
@@ -4,1731 +4,1731 @@
 
 {
   akonadi = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-19.12.1.tar.xz";
-      sha256 = "991680be1b57a5335690341ab2a681fc7d8e77a4951673021f0662f3005856a3";
-      name = "akonadi-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-19.12.3.tar.xz";
+      sha256 = "e41714d81ecbb629aaa0b267e0c32a4b1d83c6a45cf3f37d52232003b4c0f325";
+      name = "akonadi-19.12.3.tar.xz";
     };
   };
   akonadi-calendar = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-calendar-19.12.1.tar.xz";
-      sha256 = "4bec3252bd1a32874a22b28dcb82a2aed533b31e1955ca68803ddf076dbbd5be";
-      name = "akonadi-calendar-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-calendar-19.12.3.tar.xz";
+      sha256 = "c58d18153ef711a79962ba907e44338a0ddd62968e0a6c50486bba09a6e2a446";
+      name = "akonadi-calendar-19.12.3.tar.xz";
     };
   };
   akonadi-calendar-tools = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-calendar-tools-19.12.1.tar.xz";
-      sha256 = "0650e12b2155b08cf70cc4620f9ea3868bad66affc4668775cd050539eacbec9";
-      name = "akonadi-calendar-tools-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-calendar-tools-19.12.3.tar.xz";
+      sha256 = "ad2c23cf188228dc697d39e2120b56ce445bbea3eb46721794cd6344aa7e94ba";
+      name = "akonadi-calendar-tools-19.12.3.tar.xz";
     };
   };
   akonadiconsole = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadiconsole-19.12.1.tar.xz";
-      sha256 = "e6a755875b9ef9db4f022888b77bd011a5edf2c21667074b971d15818659dd5b";
-      name = "akonadiconsole-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadiconsole-19.12.3.tar.xz";
+      sha256 = "0dedcccfcfd7e6ad9a5af0aa61ce05f26cbb625d8bf6b6d210ac6e3c5813487f";
+      name = "akonadiconsole-19.12.3.tar.xz";
     };
   };
   akonadi-contacts = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-contacts-19.12.1.tar.xz";
-      sha256 = "0fbca91b3251d57291629e441ecf5cdd9b71a56f74f05f6c55a428402d3b4c91";
-      name = "akonadi-contacts-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-contacts-19.12.3.tar.xz";
+      sha256 = "b0baed9edb8c05b6d9b8db84239cd83a334d8f1d14d4aa8027dc1139a543eadf";
+      name = "akonadi-contacts-19.12.3.tar.xz";
     };
   };
   akonadi-import-wizard = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-import-wizard-19.12.1.tar.xz";
-      sha256 = "a58d29407eebd9ce895d38b121cb034f92c81b85afd1b8da9c70cc3d7dc29b3d";
-      name = "akonadi-import-wizard-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-import-wizard-19.12.3.tar.xz";
+      sha256 = "2c1491e4f5994ed0d317a27cc717184a86f7d92c4b44f8bd056e147e80bee8c5";
+      name = "akonadi-import-wizard-19.12.3.tar.xz";
     };
   };
   akonadi-mime = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-mime-19.12.1.tar.xz";
-      sha256 = "9ca3794a36e31a5dd759b741e91420f4910f05b0d726f6e803d365b8ab058f5b";
-      name = "akonadi-mime-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-mime-19.12.3.tar.xz";
+      sha256 = "13bdf9a233a183d5aeee1be0991617fca6d73ffd35bc14ca0d18714149f04392";
+      name = "akonadi-mime-19.12.3.tar.xz";
     };
   };
   akonadi-notes = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-notes-19.12.1.tar.xz";
-      sha256 = "cf8059cb14eca880c09fc83285576b4d03a8edf0799cebdf42d59084bb6904ca";
-      name = "akonadi-notes-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-notes-19.12.3.tar.xz";
+      sha256 = "a34c2420190925b985b0629d7d2d19be04443cfeeaf284229666338e039e56e2";
+      name = "akonadi-notes-19.12.3.tar.xz";
     };
   };
   akonadi-search = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akonadi-search-19.12.1.tar.xz";
-      sha256 = "78a0feaa41d4b474a2e90c74230bc5196349e1c4e72ad46fe341a1cb6e51a5b8";
-      name = "akonadi-search-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akonadi-search-19.12.3.tar.xz";
+      sha256 = "60072a36f6c817d009a8476bad2e80c4131b14358e03b4889a03aa42340ed041";
+      name = "akonadi-search-19.12.3.tar.xz";
     };
   };
   akregator = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/akregator-19.12.1.tar.xz";
-      sha256 = "e6f00777059e5b9fe2458a7e4248a59652f08d836518bf0395aaf2ed77ef4d52";
-      name = "akregator-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/akregator-19.12.3.tar.xz";
+      sha256 = "63db0f6c75bffe9235122201445d151f4eaa7061d2a8df4eb924bca1a4600f68";
+      name = "akregator-19.12.3.tar.xz";
     };
   };
   analitza = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/analitza-19.12.1.tar.xz";
-      sha256 = "0c6c4ee1b4546ab84eb9503220ca0aa09f80cdd7cea3b89201db1d5aac2c4ce5";
-      name = "analitza-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/analitza-19.12.3.tar.xz";
+      sha256 = "47ca3acaf2d2f52e91cd2253742ab97d9b07abc3fef0d632bfc36d253dbf161b";
+      name = "analitza-19.12.3.tar.xz";
     };
   };
   ark = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ark-19.12.1.tar.xz";
-      sha256 = "37b9dfc0b6005ebd0f2757ecce940568839e8a5d73b3bcbc1931ce4eccbb9d0c";
-      name = "ark-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ark-19.12.3.tar.xz";
+      sha256 = "78594029729c197fc90321850696f1bd189b40d8d7fbc9faf51ad6b2ab744a07";
+      name = "ark-19.12.3.tar.xz";
     };
   };
   artikulate = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/artikulate-19.12.1.tar.xz";
-      sha256 = "407f72193c7c4ec3f8ac7fa93889803f2ec6523aebb59bdf9a9210e9fac0ee7d";
-      name = "artikulate-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/artikulate-19.12.3.tar.xz";
+      sha256 = "c27a5cb98a8e2975638fe74683a73f92c160ce133b133878844062dd99ffded6";
+      name = "artikulate-19.12.3.tar.xz";
     };
   };
   audiocd-kio = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/audiocd-kio-19.12.1.tar.xz";
-      sha256 = "3b4433bbbdd56bbafcf0418eaebb655b8fd4e03a4c29489112394393f3dc3815";
-      name = "audiocd-kio-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/audiocd-kio-19.12.3.tar.xz";
+      sha256 = "b920170ae816f29a61a6f6b25df68c9125a5d4d9fec225feee45e46317d64d42";
+      name = "audiocd-kio-19.12.3.tar.xz";
     };
   };
   baloo-widgets = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/baloo-widgets-19.12.1.tar.xz";
-      sha256 = "a9fb3a136267bb0089192f7bc523903bd304e528160d9f653ccd052b4a8c110c";
-      name = "baloo-widgets-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/baloo-widgets-19.12.3.tar.xz";
+      sha256 = "236c0bb0bcb345f4ce5f07d591bded6221383bc7b190b42b96999893390cd8a5";
+      name = "baloo-widgets-19.12.3.tar.xz";
     };
   };
   blinken = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/blinken-19.12.1.tar.xz";
-      sha256 = "4a1f7c782dc236d963bc1de11b7dcbc79012d47e3e6cc5ce692ca91ecb788388";
-      name = "blinken-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/blinken-19.12.3.tar.xz";
+      sha256 = "06ef385ab73d99fa3f1925a6f2ef522f691d04cd594777f5d9fa52a5f2e45a94";
+      name = "blinken-19.12.3.tar.xz";
     };
   };
   bomber = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/bomber-19.12.1.tar.xz";
-      sha256 = "f0007dae42d6586ab6c9da5775c835fb515cbf180698a1453a90efd2ba8f2795";
-      name = "bomber-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/bomber-19.12.3.tar.xz";
+      sha256 = "ea4926fe08c62ac5da28c3bb480a6986e51f7a77e3245d1dc1603c38617da4b0";
+      name = "bomber-19.12.3.tar.xz";
     };
   };
   bovo = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/bovo-19.12.1.tar.xz";
-      sha256 = "54cee2f71e9736057187c8121313b9c73f6cadd0fa463ea2a29cf0e86969d5ae";
-      name = "bovo-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/bovo-19.12.3.tar.xz";
+      sha256 = "ac67aff75c1e8e0d1a1a8142ae94431e4f39565f411287f57c2778f8820316af";
+      name = "bovo-19.12.3.tar.xz";
     };
   };
   calendarsupport = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/calendarsupport-19.12.1.tar.xz";
-      sha256 = "6f5e3282ff385044061320b7ccb4bef80a1848fa890afcbd12e16bd2524a4189";
-      name = "calendarsupport-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/calendarsupport-19.12.3.tar.xz";
+      sha256 = "ecbd194b5aa39284d33f7f2ddca75175f8699efee1bfbd5000ea10076567bae8";
+      name = "calendarsupport-19.12.3.tar.xz";
     };
   };
   cantor = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/cantor-19.12.1.tar.xz";
-      sha256 = "509ebe0bc173124d28e29483effa07985eef24cdd989e5e4e1fc233632cdf568";
-      name = "cantor-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/cantor-19.12.3.tar.xz";
+      sha256 = "8347160f18993f53c857ec0d418dfebbc533878ad9f480047646d121e4e644cb";
+      name = "cantor-19.12.3.tar.xz";
     };
   };
   cervisia = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/cervisia-19.12.1.tar.xz";
-      sha256 = "2a7d32ac0c1460c135397cedec177db8eb99117b53ec2c9652763b0e90184188";
-      name = "cervisia-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/cervisia-19.12.3.tar.xz";
+      sha256 = "733a90f521cd79157f6d02eeb28376bc703239800473e8cf366611dd4f3342a6";
+      name = "cervisia-19.12.3.tar.xz";
     };
   };
   dolphin = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/dolphin-19.12.1.tar.xz";
-      sha256 = "492b4ca71e33373c7000aad5c7daf6e04d7ad537e1fde8a73d2c3db15858e8c8";
-      name = "dolphin-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/dolphin-19.12.3.tar.xz";
+      sha256 = "ba16f4d5be5ccc3c135a913f2e3c7dd3b7a492cfc9ec9ae518f714fcd7c2ab47";
+      name = "dolphin-19.12.3.tar.xz";
     };
   };
   dolphin-plugins = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/dolphin-plugins-19.12.1.tar.xz";
-      sha256 = "9392571a7004c08aac02dcc6453f58b6d0de4716b7cd61776f78d9b1783c60e0";
-      name = "dolphin-plugins-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/dolphin-plugins-19.12.3.tar.xz";
+      sha256 = "7dbd5c0fe4281c46df789f86f468c4ea32949285055cae4652bab3de59acdfd3";
+      name = "dolphin-plugins-19.12.3.tar.xz";
     };
   };
   dragon = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/dragon-19.12.1.tar.xz";
-      sha256 = "a804ae2089c0e96700e91d90ba2100d9a42a81a128a3fdbb037ed94c31f380cd";
-      name = "dragon-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/dragon-19.12.3.tar.xz";
+      sha256 = "c5b09b2bd37f4e86f8412d3b950331d330257ba53278b1a569f36bf3fbf560ee";
+      name = "dragon-19.12.3.tar.xz";
     };
   };
   elisa = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/elisa-19.12.1.tar.xz";
-      sha256 = "4929da2ebe68a3dc0d22a809a7b2a84493aa6f072e16515bd557ddaac51fd8fa";
-      name = "elisa-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/elisa-19.12.3.tar.xz";
+      sha256 = "28ad795c1d993969d49ab71514129589a71ee6fe8a2de785e22f17f5af7c3d32";
+      name = "elisa-19.12.3.tar.xz";
     };
   };
   eventviews = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/eventviews-19.12.1.tar.xz";
-      sha256 = "5eb73fb2c541a6b073ad231a28abe6affc0cad92f5fd4d36a4b58aba8a46193c";
-      name = "eventviews-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/eventviews-19.12.3.tar.xz";
+      sha256 = "e2ac6a77c6bdee008229a2b03262ac5602e0cabfd325a92df58be63aaa7db662";
+      name = "eventviews-19.12.3.tar.xz";
     };
   };
   ffmpegthumbs = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ffmpegthumbs-19.12.1.tar.xz";
-      sha256 = "5f7853788c07d409bc2dd2fd7c9afab4cd847f3d2dc6db4dc30cfd78e762bdbd";
-      name = "ffmpegthumbs-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ffmpegthumbs-19.12.3.tar.xz";
+      sha256 = "cc4a1c3b4768dc674d210294a9957d622448cbe9cdaf713c1cb40bff3a79260e";
+      name = "ffmpegthumbs-19.12.3.tar.xz";
     };
   };
   filelight = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/filelight-19.12.1.tar.xz";
-      sha256 = "29806a4149b3fb60f81372d56c184d0e2f861816639a0a21b85cd7af314f860b";
-      name = "filelight-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/filelight-19.12.3.tar.xz";
+      sha256 = "9ea78509f932cd2bd553d934e2af75c25d0b65d85d2b0ab4a007ac5929b2d3b5";
+      name = "filelight-19.12.3.tar.xz";
     };
   };
   granatier = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/granatier-19.12.1.tar.xz";
-      sha256 = "98051d292dd5a3ba3f873e8bc2bed6cdae291c9516b9cb21a64703b3135baa7f";
-      name = "granatier-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/granatier-19.12.3.tar.xz";
+      sha256 = "aa2e410e4eeae74f3902028069955017a31a922dff98b81850f20743f7b54c95";
+      name = "granatier-19.12.3.tar.xz";
     };
   };
   grantlee-editor = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/grantlee-editor-19.12.1.tar.xz";
-      sha256 = "63a2571369aff6cc648b064bcbc32227eede19475cad8937cfc454984423ea0c";
-      name = "grantlee-editor-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/grantlee-editor-19.12.3.tar.xz";
+      sha256 = "5df3e5ce7933290f9f6423bdbcb0ff5614a1a4b6fda250a37bd3ed57647f8a3c";
+      name = "grantlee-editor-19.12.3.tar.xz";
     };
   };
   grantleetheme = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/grantleetheme-19.12.1.tar.xz";
-      sha256 = "f23aaf86ff8c630a2f3498b3eebcd6533b01ee806dcf4130df7dd55e3b890ddd";
-      name = "grantleetheme-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/grantleetheme-19.12.3.tar.xz";
+      sha256 = "cc0ce448c9d8396dcadea2a43089feca8e1074572df42752f70dd176676f29f9";
+      name = "grantleetheme-19.12.3.tar.xz";
     };
   };
   gwenview = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/gwenview-19.12.1.tar.xz";
-      sha256 = "ed36590a0193fbe22f08c1a026e58f86a3067f516b3a894f29b72aa229967c84";
-      name = "gwenview-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/gwenview-19.12.3.tar.xz";
+      sha256 = "b453cd55b7409bf8e4446a1b714dc66e73a0376d2da65b184b82f786767164e7";
+      name = "gwenview-19.12.3.tar.xz";
     };
   };
   incidenceeditor = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/incidenceeditor-19.12.1.tar.xz";
-      sha256 = "1f1345db2e518bfe9405df5fa441ece3af1093cbc75066673d252a0760262484";
-      name = "incidenceeditor-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/incidenceeditor-19.12.3.tar.xz";
+      sha256 = "c608a95f6d09433b378f5df0243eff77be3738fb56f99ab439774f2cad5908a6";
+      name = "incidenceeditor-19.12.3.tar.xz";
     };
   };
   juk = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/juk-19.12.1.tar.xz";
-      sha256 = "de1d9f3581f791ea050700b467dce4b38d9ec2dc20884b495826e479d3245edf";
-      name = "juk-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/juk-19.12.3.tar.xz";
+      sha256 = "4bc4210d223afc23cb6edc9262eceee038ecc6243a550698e676230168943611";
+      name = "juk-19.12.3.tar.xz";
     };
   };
   k3b = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/k3b-19.12.1.tar.xz";
-      sha256 = "59def9d9c9e14de52a14d58a22c15173d98086d9a156a3a463b9607dc7be602d";
-      name = "k3b-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/k3b-19.12.3.tar.xz";
+      sha256 = "832c314d528ed21971d9d9d26c1c4d6c61323c9b3b01787d710541e3651575a5";
+      name = "k3b-19.12.3.tar.xz";
     };
   };
   kaccounts-integration = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kaccounts-integration-19.12.1.tar.xz";
-      sha256 = "0dda504f51b86207180aceb00d86d42cb16c7ebe81c60ca1ed6bf8fa20699127";
-      name = "kaccounts-integration-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kaccounts-integration-19.12.3.tar.xz";
+      sha256 = "452b95113de5fb0d19a13ef75e229ee07b0e92cc1e7a17e9a2dc7879121d9d33";
+      name = "kaccounts-integration-19.12.3.tar.xz";
     };
   };
   kaccounts-providers = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kaccounts-providers-19.12.1.tar.xz";
-      sha256 = "abcd1fa9f63248f3ce7f9c98d940b124ff5c70c1a3381a6cfad6ce7012b23c69";
-      name = "kaccounts-providers-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kaccounts-providers-19.12.3.tar.xz";
+      sha256 = "8774e9a8113e4aba593afeff655e38f6259c78e7dbaf1d95ea00235be880f3dd";
+      name = "kaccounts-providers-19.12.3.tar.xz";
     };
   };
   kaddressbook = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kaddressbook-19.12.1.tar.xz";
-      sha256 = "32e19973015151ac32fe7ae1f0a17e82e2834ce69ba052f31e8d197930f0be5c";
-      name = "kaddressbook-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kaddressbook-19.12.3.tar.xz";
+      sha256 = "1dede421e6fef2b1abc7d36dd1855cef43cc82de909a432cd38cff42d4168fba";
+      name = "kaddressbook-19.12.3.tar.xz";
     };
   };
   kajongg = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kajongg-19.12.1.tar.xz";
-      sha256 = "2f0944ea23cefb07187e0c176ae0a12cbba1b591aefeab9be9a59d5cab9e7a59";
-      name = "kajongg-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kajongg-19.12.3.tar.xz";
+      sha256 = "23e2b1be670b48bdd027e4e7a57e86a94b322afe6d37d8492c3d17689decfae5";
+      name = "kajongg-19.12.3.tar.xz";
     };
   };
   kalarm = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kalarm-19.12.1.tar.xz";
-      sha256 = "06a8d9544d1107ac3f2e8c4c2e9604055706dcb6b7f3b0267f0d4cb45f1caf35";
-      name = "kalarm-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kalarm-19.12.3.tar.xz";
+      sha256 = "526ab8884752c15622233db8b72e88d0c22a7a1bd265763d850b6e18e32de417";
+      name = "kalarm-19.12.3.tar.xz";
     };
   };
   kalarmcal = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kalarmcal-19.12.1.tar.xz";
-      sha256 = "18644d5cbc61b414675de66dd25d9a1dd30b0e93851f6223292f052d30a365e6";
-      name = "kalarmcal-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kalarmcal-19.12.3.tar.xz";
+      sha256 = "0ec5188f1164d91de702639ab2f85a713889feef48fc02dfe7385c945d06aa60";
+      name = "kalarmcal-19.12.3.tar.xz";
     };
   };
   kalgebra = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kalgebra-19.12.1.tar.xz";
-      sha256 = "49d623186800eb8f6fbb91eb43fb14dff78e112624c9cda6b331d494d610b16a";
-      name = "kalgebra-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kalgebra-19.12.3.tar.xz";
+      sha256 = "ac865dded31b61c438ddb9db721543b8facba79c9b39365750b4bebfe2645640";
+      name = "kalgebra-19.12.3.tar.xz";
     };
   };
   kalzium = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kalzium-19.12.1.tar.xz";
-      sha256 = "f50cc18d94ce9a1aaedcbee3a5dccc2cc6723ac8ec151a0ae0ff60009a7c6943";
-      name = "kalzium-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kalzium-19.12.3.tar.xz";
+      sha256 = "e44f359d1343c30cf1993a3970a3e610d0d5782f92a6b331b035cf4fef104195";
+      name = "kalzium-19.12.3.tar.xz";
     };
   };
   kamera = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kamera-19.12.1.tar.xz";
-      sha256 = "831d7b3d7ffdc73b03116b564fb1a23c651d468cae97c1c31791f6df1a8890ac";
-      name = "kamera-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kamera-19.12.3.tar.xz";
+      sha256 = "22e19527bf9748cdc298be4c3fa2cb0a3b8b337da3a3a804c9d6066d7f3e1110";
+      name = "kamera-19.12.3.tar.xz";
     };
   };
   kamoso = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kamoso-19.12.1.tar.xz";
-      sha256 = "c1776bf7f8eafd9f4c501aabc0df30035a0f1d40951e525312aa257e67cf74a7";
-      name = "kamoso-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kamoso-19.12.3.tar.xz";
+      sha256 = "9ae14c4c80cdbbf2ce2e92db5e9c814fbd685e81aa5c319aac5477649fc39fe4";
+      name = "kamoso-19.12.3.tar.xz";
     };
   };
   kanagram = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kanagram-19.12.1.tar.xz";
-      sha256 = "2127eada150ee3f023948b637890aa93d602874fd6c037c4bd031886a12a2fdc";
-      name = "kanagram-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kanagram-19.12.3.tar.xz";
+      sha256 = "441cae90d3b70dbef40bebbcf1325fa06e0df174a3f961b4b117a5fa1b40d6e3";
+      name = "kanagram-19.12.3.tar.xz";
     };
   };
   kapman = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kapman-19.12.1.tar.xz";
-      sha256 = "cd5bef40c51bc6ef635adab501acd2a40c2291c989c4ba3ef6e34a1cbebe4c49";
-      name = "kapman-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kapman-19.12.3.tar.xz";
+      sha256 = "3c81e3395ce2b2ea0937b09c0836cb58b8a941c2b7e2a27bd9741b2a9be1c1dd";
+      name = "kapman-19.12.3.tar.xz";
     };
   };
   kapptemplate = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kapptemplate-19.12.1.tar.xz";
-      sha256 = "b2fc583125aae1968c0342063a6cfcea2dbeff21e0ef505a021b689ed3a34085";
-      name = "kapptemplate-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kapptemplate-19.12.3.tar.xz";
+      sha256 = "5bef4e4fb74da3102cba6672584195962514ee3f53fb369b48d492d6ce7255ad";
+      name = "kapptemplate-19.12.3.tar.xz";
     };
   };
   kate = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kate-19.12.1.tar.xz";
-      sha256 = "9d2401907e5b163d5af0af5b4d28383896ef709bcde7f6ee2234e1a3adc28a47";
-      name = "kate-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kate-19.12.3.tar.xz";
+      sha256 = "f60b52e5a6a78920ac703a458f1eaf0ced02ffcd8b5f2d49de9a48674eeb007c";
+      name = "kate-19.12.3.tar.xz";
     };
   };
   katomic = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/katomic-19.12.1.tar.xz";
-      sha256 = "bc51424757434e905b5b611a6fa634147e533e375922c03f896a093fa61e57a3";
-      name = "katomic-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/katomic-19.12.3.tar.xz";
+      sha256 = "d7ed527e2546e94cb091e433a2e61618301152704c48e1f003e1f8e60b4f0cbd";
+      name = "katomic-19.12.3.tar.xz";
     };
   };
   kbackup = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kbackup-19.12.1.tar.xz";
-      sha256 = "1b30c142576d823043d4e78fa37592e8df79b5e13ea7a980d336b25c1093ecf8";
-      name = "kbackup-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kbackup-19.12.3.tar.xz";
+      sha256 = "1761009f9cd854d3fb4f98eb24b5ee7f3c42c4541f7cfb2ff1589786c86bdc99";
+      name = "kbackup-19.12.3.tar.xz";
     };
   };
   kblackbox = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kblackbox-19.12.1.tar.xz";
-      sha256 = "57901d6bf56228691b6c6436ca2f60e62542854e80f9c4fda7a60362a216e1ed";
-      name = "kblackbox-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kblackbox-19.12.3.tar.xz";
+      sha256 = "dffb910a5d429dfc231b7d2185119430856d26af2c027d34c551a6d664ae49c6";
+      name = "kblackbox-19.12.3.tar.xz";
     };
   };
   kblocks = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kblocks-19.12.1.tar.xz";
-      sha256 = "1077477910d1dfff60f1abad7b1cf937daf1f3e3a5e8b18407b7e2809b2fc3d9";
-      name = "kblocks-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kblocks-19.12.3.tar.xz";
+      sha256 = "5bc5cb14b91c9b230563388b4d935211975bae34ed36cb0479cbf25bc3b652fb";
+      name = "kblocks-19.12.3.tar.xz";
     };
   };
   kblog = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kblog-19.12.1.tar.xz";
-      sha256 = "6385ecfc024cf554a55e2840c3faf6b9e6ee81eb3536d5632899d32aecd54b9f";
-      name = "kblog-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kblog-19.12.3.tar.xz";
+      sha256 = "3fba584c4c217c5b5b3be52752f8f3c371fb877fe3b730a48711028fedc6b3d4";
+      name = "kblog-19.12.3.tar.xz";
     };
   };
   kbounce = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kbounce-19.12.1.tar.xz";
-      sha256 = "e9e1df6f2f57e102d95707b82b0aa582f9f1a6c3e395660b5faa33ef953e7fb3";
-      name = "kbounce-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kbounce-19.12.3.tar.xz";
+      sha256 = "d1b7ac99e54070e1e28a3449e8773691e90625c9f881cf94352ef752700197d0";
+      name = "kbounce-19.12.3.tar.xz";
     };
   };
   kbreakout = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kbreakout-19.12.1.tar.xz";
-      sha256 = "17475a5aa80f494876fb3b91d32df4c447417e79f4dd60d46f594cfab03f489f";
-      name = "kbreakout-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kbreakout-19.12.3.tar.xz";
+      sha256 = "ca662c9f2c6765f5f8b07bd4cc2e2aa0a43b69fec6428c3deda2cfad0ab675fa";
+      name = "kbreakout-19.12.3.tar.xz";
     };
   };
   kbruch = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kbruch-19.12.1.tar.xz";
-      sha256 = "94f9951c0ee3b4aea6d649f971f2d946d462b916a76e4e76ddafa809ce7e5550";
-      name = "kbruch-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kbruch-19.12.3.tar.xz";
+      sha256 = "522ddae0b2ec640e70c717a9fe0d6a95aef1ed3fe2acbca4b93a99a309abd559";
+      name = "kbruch-19.12.3.tar.xz";
     };
   };
   kcachegrind = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kcachegrind-19.12.1.tar.xz";
-      sha256 = "210e04441519c47d103871e52d98351abc41a04b9385c577a7839eec31a2f400";
-      name = "kcachegrind-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kcachegrind-19.12.3.tar.xz";
+      sha256 = "a30b70bac32f2b33c3c90b8c17754cfbf7d293c9eff0d573747eca2b45353b41";
+      name = "kcachegrind-19.12.3.tar.xz";
     };
   };
   kcalc = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kcalc-19.12.1.tar.xz";
-      sha256 = "51630cd5c6d7ebbf35fb91419acfe9b2d2719ebfcdc2fff8358dbfaa2cecda57";
-      name = "kcalc-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kcalc-19.12.3.tar.xz";
+      sha256 = "bbda4fc074e1ea748e95840aa79c51fdf0a1943ebb63ce6c7b68c197831258bd";
+      name = "kcalc-19.12.3.tar.xz";
     };
   };
   kcalutils = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kcalutils-19.12.1.tar.xz";
-      sha256 = "0298e92d84d9f4b612ea1a27abee1368bc624af2bc5bc4b5eb1053a27575ea04";
-      name = "kcalutils-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kcalutils-19.12.3.tar.xz";
+      sha256 = "00da1f331110a63c3d3c2c96394ead3d282f582d73fa925065560a50807fb7ff";
+      name = "kcalutils-19.12.3.tar.xz";
     };
   };
   kcharselect = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kcharselect-19.12.1.tar.xz";
-      sha256 = "5f23458974d6fa66c49d434937e7a7a31cc94e46616db866b35316025bb84b0c";
-      name = "kcharselect-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kcharselect-19.12.3.tar.xz";
+      sha256 = "9be6ac607148b0815bd985075fbb97d44561fdd6a955b60f0afc728f9cbd978b";
+      name = "kcharselect-19.12.3.tar.xz";
     };
   };
   kcolorchooser = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kcolorchooser-19.12.1.tar.xz";
-      sha256 = "713d1151f45382d8a889187ebb02f8e73ffbf28ac8abea0e03626888711d2c22";
-      name = "kcolorchooser-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kcolorchooser-19.12.3.tar.xz";
+      sha256 = "cb0395c1b4f953fd51129cfe5088702ec261f84cc045f889e22c13e81793744a";
+      name = "kcolorchooser-19.12.3.tar.xz";
     };
   };
   kcron = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kcron-19.12.1.tar.xz";
-      sha256 = "8c7d5fa24349b9ff7c4927579876ef84895398d8cde6122804d7104a4f4d5963";
-      name = "kcron-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kcron-19.12.3.tar.xz";
+      sha256 = "22d07834e8431d0fcc756a0e7d92d4e8993008766bf336254f8650c9455c9ab0";
+      name = "kcron-19.12.3.tar.xz";
     };
   };
   kdav = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdav-19.12.1.tar.xz";
-      sha256 = "5059a295f3ecd9046da6f5ecadab596b3e47c75c5090650a1d6cd1f86a8b7498";
-      name = "kdav-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdav-19.12.3.tar.xz";
+      sha256 = "7a0ed47378e064536b26dfdfcf7abcdb8dd2ec253a7bbcef7962b701d368872a";
+      name = "kdav-19.12.3.tar.xz";
     };
   };
   kdebugsettings = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdebugsettings-19.12.1.tar.xz";
-      sha256 = "2730430123e6198131acbabb5d02800981082f7249f0d9b9001b5313b2d45f35";
-      name = "kdebugsettings-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdebugsettings-19.12.3.tar.xz";
+      sha256 = "ad18d13dd0943a3651ec4729441899b103bd2dc743a4a373ce7bd14fb38dd3e0";
+      name = "kdebugsettings-19.12.3.tar.xz";
     };
   };
   kde-dev-scripts = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kde-dev-scripts-19.12.1.tar.xz";
-      sha256 = "c2965dee649abea0791774ae264230dbe673af07eb0bd85bf3e8c7c6a739cea5";
-      name = "kde-dev-scripts-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kde-dev-scripts-19.12.3.tar.xz";
+      sha256 = "94c0ba9de369dd6af14dcea505616025bf06599618a6c7557861aa9fb89ea628";
+      name = "kde-dev-scripts-19.12.3.tar.xz";
     };
   };
   kde-dev-utils = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kde-dev-utils-19.12.1.tar.xz";
-      sha256 = "94f983c9b49ed3bc59b20849b23e7c26b64b7b303fbd86147c4bc823f87cda7d";
-      name = "kde-dev-utils-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kde-dev-utils-19.12.3.tar.xz";
+      sha256 = "772ec425865082b8be3650cf0af10ad943f38096036227cab22405b32c4e1fae";
+      name = "kde-dev-utils-19.12.3.tar.xz";
     };
   };
   kdeedu-data = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdeedu-data-19.12.1.tar.xz";
-      sha256 = "d140f048e1ca8bd777b4a431904b3313a86446a5fd04e1f9c4e1fb4641a09b15";
-      name = "kdeedu-data-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdeedu-data-19.12.3.tar.xz";
+      sha256 = "76fd5c0efaf339bcfc5ac9f131bac8889cff1df2dd3452ea7dd507b8d9e2645b";
+      name = "kdeedu-data-19.12.3.tar.xz";
     };
   };
   kdegraphics-mobipocket = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdegraphics-mobipocket-19.12.1.tar.xz";
-      sha256 = "546d11af89e97831cc09868051142d4180e9621cc537c2941272b42a85e71c6a";
-      name = "kdegraphics-mobipocket-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdegraphics-mobipocket-19.12.3.tar.xz";
+      sha256 = "c459f9f04cf98cdc88a6763da8880f418e0c33b3cbd1d06b9a7347ebb470d835";
+      name = "kdegraphics-mobipocket-19.12.3.tar.xz";
     };
   };
   kdegraphics-thumbnailers = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdegraphics-thumbnailers-19.12.1.tar.xz";
-      sha256 = "a91335c11637a351d3ea8798f5519ac5596d655aec92266e46ed2a1bab46a299";
-      name = "kdegraphics-thumbnailers-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdegraphics-thumbnailers-19.12.3.tar.xz";
+      sha256 = "92a045ac0e9ca57ea27760df3cca0203f29ba435574e9d837d0c1069b8e88f72";
+      name = "kdegraphics-thumbnailers-19.12.3.tar.xz";
     };
   };
   kdenetwork-filesharing = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdenetwork-filesharing-19.12.1.tar.xz";
-      sha256 = "823e31424998e96084eeb909dfb7ee6a8e8e6d33b5d2a57ada7d583350967684";
-      name = "kdenetwork-filesharing-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdenetwork-filesharing-19.12.3.tar.xz";
+      sha256 = "8cc75f47ef8038cd7ee75974056cd48022816ab42c76cb6bd2c35a3619445180";
+      name = "kdenetwork-filesharing-19.12.3.tar.xz";
     };
   };
   kdenlive = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdenlive-19.12.1.tar.xz";
-      sha256 = "fccf34a4660ce8a78ceefe8a4b9dd93d104f6871976d991ceec769366627dc77";
-      name = "kdenlive-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdenlive-19.12.3.tar.xz";
+      sha256 = "cebcb8f019bc0fc719ef54d00507dc1281758e3c8c69ea2f93f99feda777bc64";
+      name = "kdenlive-19.12.3.tar.xz";
     };
   };
   kdepim-addons = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdepim-addons-19.12.1.tar.xz";
-      sha256 = "091e3fd007ad54cd1dcd4e2d51c4ac883a2d9e365ca78592aa91a37835c4dcf5";
-      name = "kdepim-addons-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdepim-addons-19.12.3.tar.xz";
+      sha256 = "f33bc70ac54ab56eea7bd8ca4c0ac98d9612acc4ddc9ce989d06b99f04f62c19";
+      name = "kdepim-addons-19.12.3.tar.xz";
     };
   };
   kdepim-apps-libs = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdepim-apps-libs-19.12.1.tar.xz";
-      sha256 = "4ff633c98cd128f2409cb78c193dd72f1078ae29eba8db3e304248a019e17e43";
-      name = "kdepim-apps-libs-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdepim-apps-libs-19.12.3.tar.xz";
+      sha256 = "e133cf76364f6b244338eafd39845a9f392eb9b55c43446541acbcb24a6f4796";
+      name = "kdepim-apps-libs-19.12.3.tar.xz";
     };
   };
   kdepim-runtime = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdepim-runtime-19.12.1.tar.xz";
-      sha256 = "31b1fe9778723079048d0fe1750028fd3f5f5b467ee10dcfa7fab37202a6ca39";
-      name = "kdepim-runtime-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdepim-runtime-19.12.3.tar.xz";
+      sha256 = "dabf7da1ad35dfaa3531639a8964b61dbd7094ec0a9b3d62f50fa24a22f5db13";
+      name = "kdepim-runtime-19.12.3.tar.xz";
     };
   };
   kdesdk-kioslaves = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdesdk-kioslaves-19.12.1.tar.xz";
-      sha256 = "e8e8f02e019bad7983cdc5cddbd435ccf676fd804ee7f960653acdda5676abb2";
-      name = "kdesdk-kioslaves-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdesdk-kioslaves-19.12.3.tar.xz";
+      sha256 = "8b075bff545883aba24fee1763d0cdc64bf9444ae865f0623a33fc1ca295d254";
+      name = "kdesdk-kioslaves-19.12.3.tar.xz";
     };
   };
   kdesdk-thumbnailers = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdesdk-thumbnailers-19.12.1.tar.xz";
-      sha256 = "77f64ddb075407f781cf2d658af760840f9427cc171e8ec15805f47105da0e56";
-      name = "kdesdk-thumbnailers-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdesdk-thumbnailers-19.12.3.tar.xz";
+      sha256 = "b304843045f93e91e0aeeeacf968018dc192ea71ed9977be3d9cfc4e149edcde";
+      name = "kdesdk-thumbnailers-19.12.3.tar.xz";
     };
   };
   kdf = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdf-19.12.1.tar.xz";
-      sha256 = "bf5c96e5a78e0465e9b91617ffff0c37f04e896dc059d70962bbdd943c6c1c04";
-      name = "kdf-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdf-19.12.3.tar.xz";
+      sha256 = "257e07e27376f45eaa1bfb1b3055c7f10759ca7ec185aa7572dc60317c8119bd";
+      name = "kdf-19.12.3.tar.xz";
     };
   };
   kdialog = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdialog-19.12.1.tar.xz";
-      sha256 = "2a13d1957089e4a0307681786b9b5467b5df777311afd4598dd1cb69b4e070f6";
-      name = "kdialog-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdialog-19.12.3.tar.xz";
+      sha256 = "e6f9a7a6b7c2f18795070bf9466dd6256568b02683d955ef3253432216594d00";
+      name = "kdialog-19.12.3.tar.xz";
     };
   };
   kdiamond = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kdiamond-19.12.1.tar.xz";
-      sha256 = "4f7770138d16bb7b91920b7f3c7024a89ef35dc330a2ac929a2fa5d4ee12b982";
-      name = "kdiamond-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kdiamond-19.12.3.tar.xz";
+      sha256 = "95dfd2fd3daa59a58d128c35b95b609117438efdb5d60110414ab7aff5fe3e7c";
+      name = "kdiamond-19.12.3.tar.xz";
     };
   };
   keditbookmarks = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/keditbookmarks-19.12.1.tar.xz";
-      sha256 = "11a950d53bc6e0b50d62a3ced2b74eaaa85c595b845ca8f2dcfa65e69d407fb0";
-      name = "keditbookmarks-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/keditbookmarks-19.12.3.tar.xz";
+      sha256 = "1c5efb63eb0a714942677eb03f91ae0bbd10731eace5471ea12ae9d3296b6b05";
+      name = "keditbookmarks-19.12.3.tar.xz";
     };
   };
   kfind = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kfind-19.12.1.tar.xz";
-      sha256 = "e9f5defa7796bbb54208b28af1fa76333a38e743d7febb8dd14739cf00d376eb";
-      name = "kfind-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kfind-19.12.3.tar.xz";
+      sha256 = "b3738d6e3f26fffbfcc204d946e165ae0727d9f460cb2065ceb221b4872019b1";
+      name = "kfind-19.12.3.tar.xz";
     };
   };
   kfloppy = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kfloppy-19.12.1.tar.xz";
-      sha256 = "77581323d16f8666fefca3372c91567dfe5233c0f92c79ead11b2253aee64e2c";
-      name = "kfloppy-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kfloppy-19.12.3.tar.xz";
+      sha256 = "7f384f9197d5066a5db978a9551665ae9a90b1f3afd1937f800ab61e376d3723";
+      name = "kfloppy-19.12.3.tar.xz";
     };
   };
   kfourinline = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kfourinline-19.12.1.tar.xz";
-      sha256 = "76e31b59f1b31ddb755def377324d5fa5b5a4835f1f537a30632a028bf671a3e";
-      name = "kfourinline-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kfourinline-19.12.3.tar.xz";
+      sha256 = "1d2f4fdbf427e2ce86a0519ee61a70df0675f039cebd658cd75bd27af4fe69f6";
+      name = "kfourinline-19.12.3.tar.xz";
     };
   };
   kgeography = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kgeography-19.12.1.tar.xz";
-      sha256 = "47f809fdb6da503c0b00f5d2052f9def3af0964ace45325e683227a1971c3a1b";
-      name = "kgeography-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kgeography-19.12.3.tar.xz";
+      sha256 = "3947ca1f50910d77f85c630b49128a085fed4230c7919e09281bc1765529a533";
+      name = "kgeography-19.12.3.tar.xz";
     };
   };
   kget = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kget-19.12.1.tar.xz";
-      sha256 = "33b043857b3d1c55d877d1c3af2bcc46feefe15019b7af40a9951c16e288658c";
-      name = "kget-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kget-19.12.3.tar.xz";
+      sha256 = "a4b1d8fb94617c80a557c27ae58a14131bda4476340c136262e5bf8f51d918d9";
+      name = "kget-19.12.3.tar.xz";
     };
   };
   kgoldrunner = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kgoldrunner-19.12.1.tar.xz";
-      sha256 = "1f2044656732ab7a72117139576201ca1701666d525c93b726473d4cd9aed29c";
-      name = "kgoldrunner-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kgoldrunner-19.12.3.tar.xz";
+      sha256 = "5808d797fb9df178526b3ea462bc902ca36b5926ef7c51233816ba3da6bc0bdd";
+      name = "kgoldrunner-19.12.3.tar.xz";
     };
   };
   kgpg = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kgpg-19.12.1.tar.xz";
-      sha256 = "e64dc85f303e45b8a7ef635525f6834c4fd2db36c5131fdb231fa11f7237fdb5";
-      name = "kgpg-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kgpg-19.12.3.tar.xz";
+      sha256 = "53e5726a1ccf34a70090ac0bbf2effb6f1f9f9b3d0164a5beead982a24c97e38";
+      name = "kgpg-19.12.3.tar.xz";
     };
   };
   khangman = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/khangman-19.12.1.tar.xz";
-      sha256 = "42fa9d9a9a72fe4b14127b12d5b662d66c00c1899eeefba6102be95136333def";
-      name = "khangman-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/khangman-19.12.3.tar.xz";
+      sha256 = "55286b318ec2c2d8b7e63f4063fc0e39a8ff81c0a9d3f06c9879f141c94762a8";
+      name = "khangman-19.12.3.tar.xz";
     };
   };
   khelpcenter = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/khelpcenter-19.12.1.tar.xz";
-      sha256 = "cd38f6b719f4f6228e3a7f94fc63f16020e86382ca402179ae767f2f0b846466";
-      name = "khelpcenter-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/khelpcenter-19.12.3.tar.xz";
+      sha256 = "526c89e46cace9e8afb4e748f9bbf0d105472a4cc4a6d8bb821e8b9b88ab0f73";
+      name = "khelpcenter-19.12.3.tar.xz";
     };
   };
   kidentitymanagement = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kidentitymanagement-19.12.1.tar.xz";
-      sha256 = "7df38592610e0ed74c55baf6670331d07b2df0c98484d5f8cf8f135b6d229702";
-      name = "kidentitymanagement-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kidentitymanagement-19.12.3.tar.xz";
+      sha256 = "254bfc3a60df7bc1960fa1e6d5b7733f6aa5ed7772c1097d9a8cfcdda2704516";
+      name = "kidentitymanagement-19.12.3.tar.xz";
     };
   };
   kig = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kig-19.12.1.tar.xz";
-      sha256 = "507d89cddc0e128ab398ce0f551af22af0ba1583a4419574296cfefb96d944ee";
-      name = "kig-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kig-19.12.3.tar.xz";
+      sha256 = "1ae2c3024cdd14e476ff15b730f4ebe9b279477b67cc4cc89606755c7d3beef3";
+      name = "kig-19.12.3.tar.xz";
     };
   };
   kigo = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kigo-19.12.1.tar.xz";
-      sha256 = "235df9bca39b02dac6648b408d71f7b0978604f8389ea7ef5aa8e0be87fbcf9d";
-      name = "kigo-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kigo-19.12.3.tar.xz";
+      sha256 = "ee18b8563c49e3e01924ea76cd8c6ec376482c2100e0fac7cdfd14b5899592d5";
+      name = "kigo-19.12.3.tar.xz";
     };
   };
   killbots = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/killbots-19.12.1.tar.xz";
-      sha256 = "3d524028e7df412e4306daf4e7b1aca803d26b65985fa429c98db10cffff010f";
-      name = "killbots-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/killbots-19.12.3.tar.xz";
+      sha256 = "3c5dc7e1f27036d2584f6ee58bf3bbffd9e56a467f30a8e2eab9e1bda1e7d4a3";
+      name = "killbots-19.12.3.tar.xz";
     };
   };
   kimagemapeditor = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kimagemapeditor-19.12.1.tar.xz";
-      sha256 = "9869f3a060dc44f2fad0646fa9c0f1c2924d68c3cc3de5147170456f27a39e77";
-      name = "kimagemapeditor-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kimagemapeditor-19.12.3.tar.xz";
+      sha256 = "1aee6521974bde5151744d92823f6b405ee4a8bd2dfe3c538324a209e18c6b35";
+      name = "kimagemapeditor-19.12.3.tar.xz";
     };
   };
   kimap = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kimap-19.12.1.tar.xz";
-      sha256 = "898e1f3b233b3631ffc74859d54bf402d36f0c5bae7f792e97d3fa5116d8bd0e";
-      name = "kimap-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kimap-19.12.3.tar.xz";
+      sha256 = "5c3b3cdf928754f9919030d865a2cdad0ad342c82c436afef660d018f85de4d2";
+      name = "kimap-19.12.3.tar.xz";
     };
   };
   kio-extras = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kio-extras-19.12.1.tar.xz";
-      sha256 = "79b3735510c3c8da9b3e019ee5a54b115f85bb8d89f1c04dbbf16dde3007e7b6";
-      name = "kio-extras-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kio-extras-19.12.3.tar.xz";
+      sha256 = "413cb21479fedf1421a6e2585b4df813c3a3fadaa77c248a9f810021f58cea4b";
+      name = "kio-extras-19.12.3.tar.xz";
     };
   };
   kipi-plugins = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kipi-plugins-19.12.1.tar.xz";
-      sha256 = "bcd27ab29b491f13116a156e403126d04ffbaa352b581eca7fb0904e13c5dabe";
-      name = "kipi-plugins-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kipi-plugins-19.12.3.tar.xz";
+      sha256 = "16997bd6fbb59c194c2997732c870e33bbacd3d7346546af9a255db3330ec5ac";
+      name = "kipi-plugins-19.12.3.tar.xz";
     };
   };
   kirigami-gallery = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kirigami-gallery-19.12.1.tar.xz";
-      sha256 = "de7f9d739feeac481223c7992179cb3cfaa2aabca1097b0d3597c5c9d737cb19";
-      name = "kirigami-gallery-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kirigami-gallery-19.12.3.tar.xz";
+      sha256 = "17febaeb77e0dfc6f591dd285fd7f538466572f2f2e3253461c41f92d6cb05fe";
+      name = "kirigami-gallery-19.12.3.tar.xz";
     };
   };
   kiriki = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kiriki-19.12.1.tar.xz";
-      sha256 = "f3079b53ed45ec46def7a95b336d441dba18151cc77c88ef8ce2d02fcf1d6375";
-      name = "kiriki-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kiriki-19.12.3.tar.xz";
+      sha256 = "abbaa49f9b47286f9afbe7c968eb6fbfeecb4be84ed4b2ce7514a3ed1e92b2d5";
+      name = "kiriki-19.12.3.tar.xz";
     };
   };
   kiten = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kiten-19.12.1.tar.xz";
-      sha256 = "abee050c05b54fae25562237b91a14156dabcb26ea142c714b5ec9e1907f54f3";
-      name = "kiten-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kiten-19.12.3.tar.xz";
+      sha256 = "663739a8b252cb95a38294c6f7d675c833daaa81f2654f5cabd8e512fd353560";
+      name = "kiten-19.12.3.tar.xz";
     };
   };
   kitinerary = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kitinerary-19.12.1.tar.xz";
-      sha256 = "6497469e9966c9c21c2810a1f21c2633b89e54dafb74d5689aa24382e3824926";
-      name = "kitinerary-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kitinerary-19.12.3.tar.xz";
+      sha256 = "4188efe8672091cbdaa4f757f5d8b94a30b1373dceafc076b01330602d5086e2";
+      name = "kitinerary-19.12.3.tar.xz";
     };
   };
   kjumpingcube = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kjumpingcube-19.12.1.tar.xz";
-      sha256 = "3e4abd57d14dccc9b39669eebdab578fc865464b8a4309c3ab8103002edc2ff0";
-      name = "kjumpingcube-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kjumpingcube-19.12.3.tar.xz";
+      sha256 = "b969111cb884efc9ad8ef585066ca33d7168bb045c93a3f18668173a11d29ea2";
+      name = "kjumpingcube-19.12.3.tar.xz";
     };
   };
   kldap = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kldap-19.12.1.tar.xz";
-      sha256 = "5595f840c2b97e96f265ffd91fb007f4beb198aaf67a0dbfd941108acbcb9aa3";
-      name = "kldap-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kldap-19.12.3.tar.xz";
+      sha256 = "49f1ad32ae10b7f997c77f3a8db0776b972b93f9e18873b77baabf0db05cd5d4";
+      name = "kldap-19.12.3.tar.xz";
     };
   };
   kleopatra = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kleopatra-19.12.1.tar.xz";
-      sha256 = "94ee94031696dd5d79d7a0ca00a2e51b4569466689e8a76c129deae645af08f4";
-      name = "kleopatra-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kleopatra-19.12.3.tar.xz";
+      sha256 = "04edf29e42088b2bccdfe36b9b7170c38acd7816657673da5393244b73773098";
+      name = "kleopatra-19.12.3.tar.xz";
     };
   };
   klettres = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/klettres-19.12.1.tar.xz";
-      sha256 = "4f103d85918d40e0a3ffc451bf3862c45b37b8bd2453e6ee7d21d4c738967c36";
-      name = "klettres-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/klettres-19.12.3.tar.xz";
+      sha256 = "f2a1bbb002954a80045780de24f494154214b8add53a5c01a8783cbeb26d26c7";
+      name = "klettres-19.12.3.tar.xz";
     };
   };
   klickety = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/klickety-19.12.1.tar.xz";
-      sha256 = "66cba17839023b6fe563a461da8f52a3c8a2bd4949195da2d63d780547f2e159";
-      name = "klickety-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/klickety-19.12.3.tar.xz";
+      sha256 = "351e421ecca5fc80955ed614453c81d8b790200185db16f56be1e0ca9325ad39";
+      name = "klickety-19.12.3.tar.xz";
     };
   };
   klines = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/klines-19.12.1.tar.xz";
-      sha256 = "111c4e607c4ba434a8ff593e45ba669c78e6c1fbf9e4d77d0fc5d611e733604e";
-      name = "klines-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/klines-19.12.3.tar.xz";
+      sha256 = "8d11894d0a02de20090e52ef697a5a3c00e902213c018a82c94ca0985e92350a";
+      name = "klines-19.12.3.tar.xz";
     };
   };
   kmag = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmag-19.12.1.tar.xz";
-      sha256 = "59e5a59407894976574acf78e7248fd0609ce6ee222c60388a99e5576ac2061f";
-      name = "kmag-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmag-19.12.3.tar.xz";
+      sha256 = "d1e8bbc8006cd2cfcb345e30aac73350562bff98b69b0333ad49726cdce81e7e";
+      name = "kmag-19.12.3.tar.xz";
     };
   };
   kmahjongg = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmahjongg-19.12.1.tar.xz";
-      sha256 = "e157f2e603c03128fb99ac4d0b4bc3ab2002a60960c780a3907e35bb8aee9bd3";
-      name = "kmahjongg-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmahjongg-19.12.3.tar.xz";
+      sha256 = "41a07f74cc4e3bf05f6a57a380d4e093b0303528cb703369981b262a0b1787c8";
+      name = "kmahjongg-19.12.3.tar.xz";
     };
   };
   kmail = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmail-19.12.1.tar.xz";
-      sha256 = "a8fa4a604f8f88b91beebf0f3f9bb0ac7c040671bd75ab4478d8087a21cde40c";
-      name = "kmail-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmail-19.12.3.tar.xz";
+      sha256 = "7f70e5270960e474b15631a36110e13fdf7238d6fd9f1b3fdb6d8c145b6529ba";
+      name = "kmail-19.12.3.tar.xz";
     };
   };
   kmail-account-wizard = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmail-account-wizard-19.12.1.tar.xz";
-      sha256 = "e7cbda3946b19d01f5c3a722d2c104b7be072ab411f80437a25b8200d73e7cfa";
-      name = "kmail-account-wizard-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmail-account-wizard-19.12.3.tar.xz";
+      sha256 = "4199e8c73456bf31b829596919ca481c3a95e59dee7c9bfb2e680311d0354ff0";
+      name = "kmail-account-wizard-19.12.3.tar.xz";
     };
   };
   kmailtransport = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmailtransport-19.12.1.tar.xz";
-      sha256 = "1a46563c441a7d09e6cc2bf98a628b724944193e0df88607d5d867f4fa65c1a4";
-      name = "kmailtransport-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmailtransport-19.12.3.tar.xz";
+      sha256 = "077b3dba7c02dde9693c003ab7039f3b2a530e3b1aecfcf187313db5226e8953";
+      name = "kmailtransport-19.12.3.tar.xz";
     };
   };
   kmbox = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmbox-19.12.1.tar.xz";
-      sha256 = "7442fd3a421a917a3f27e47259a7da7e08ff6191290a0e9e67c67005c82c606a";
-      name = "kmbox-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmbox-19.12.3.tar.xz";
+      sha256 = "de69683abb42c5c24ccb4f034e067f50c94d5a10c53f359b0e6ad4b75a70b376";
+      name = "kmbox-19.12.3.tar.xz";
     };
   };
   kmime = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmime-19.12.1.tar.xz";
-      sha256 = "4d6db5d59b239b884bf8811f3ea616520ab1f69224a809cef3f79023b2563085";
-      name = "kmime-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmime-19.12.3.tar.xz";
+      sha256 = "5ed20ad77000c60ba5723aaa22149fca3a3956f930d63e70984f0a17b9339300";
+      name = "kmime-19.12.3.tar.xz";
     };
   };
   kmines = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmines-19.12.1.tar.xz";
-      sha256 = "8f921aa4bda7397c0fa6265ba07a6ce68190174864d0ee16ee575be806b49539";
-      name = "kmines-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmines-19.12.3.tar.xz";
+      sha256 = "05d8004f2e560bf2c9e32a3ca1988b3848b99bfb9cc96307c1ac2b703c202dad";
+      name = "kmines-19.12.3.tar.xz";
     };
   };
   kmix = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmix-19.12.1.tar.xz";
-      sha256 = "97fff89e4a102351d01265a9659c5664b030b9b4f27fa021b997fe7ab8801ad6";
-      name = "kmix-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmix-19.12.3.tar.xz";
+      sha256 = "a4c637383e988ffa21b9c48c72ef6d8855fe207c852d0679011337a331ccfc5c";
+      name = "kmix-19.12.3.tar.xz";
     };
   };
   kmousetool = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmousetool-19.12.1.tar.xz";
-      sha256 = "d056fd05ffb900f65670e3a77dc8a0c08fbc02d86f4fba1b34dd8f6b5f60c3e5";
-      name = "kmousetool-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmousetool-19.12.3.tar.xz";
+      sha256 = "3741aff20c778bb704c76df7ff005da36ef6c41b07fca35f257ba440741b8413";
+      name = "kmousetool-19.12.3.tar.xz";
     };
   };
   kmouth = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmouth-19.12.1.tar.xz";
-      sha256 = "da46e472a05920225c3ae0caba21279dc817b7c8e77ae981b1ad6cf2083a49ad";
-      name = "kmouth-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmouth-19.12.3.tar.xz";
+      sha256 = "424dd4cf81cd43e47630ada0f2a9e47be8106b31ebf2e5c8c1077e55e3a8113f";
+      name = "kmouth-19.12.3.tar.xz";
     };
   };
   kmplot = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kmplot-19.12.1.tar.xz";
-      sha256 = "b82d9f9d4f3d3447e9125b42918819fe8effd5658d9a385da79e81e12f7466cf";
-      name = "kmplot-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kmplot-19.12.3.tar.xz";
+      sha256 = "2743e3a472ccf40281f5afd9c6110dde6fb9bc437e8e291beba484d405d8152e";
+      name = "kmplot-19.12.3.tar.xz";
     };
   };
   knavalbattle = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/knavalbattle-19.12.1.tar.xz";
-      sha256 = "1cc2c7fec2e2edc634cb1f83cf7e433522b0bc7d76c04cbcde66bb486a832856";
-      name = "knavalbattle-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/knavalbattle-19.12.3.tar.xz";
+      sha256 = "59875e10b0f2b06c2d3165f2f2457113f04550215947c8296ce1dcaf385ee37f";
+      name = "knavalbattle-19.12.3.tar.xz";
     };
   };
   knetwalk = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/knetwalk-19.12.1.tar.xz";
-      sha256 = "95725a45c56956a2b8e8e2db36b6baedfc0271af0d6e3541d6143342e6f41ca5";
-      name = "knetwalk-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/knetwalk-19.12.3.tar.xz";
+      sha256 = "24cb7cfa4143b2ab1bcaf38a6698cd01252201238c6561bc711e0673366642ae";
+      name = "knetwalk-19.12.3.tar.xz";
     };
   };
   knights = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/knights-19.12.1.tar.xz";
-      sha256 = "60ce0d76eb13c95ba81b0f2dfe5bd3e80ed2226319e4ef97150c3240f428d355";
-      name = "knights-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/knights-19.12.3.tar.xz";
+      sha256 = "4796654dcaff355b4f1097260748cfe04812ff926acc7ca0f037711875dd1512";
+      name = "knights-19.12.3.tar.xz";
     };
   };
   knotes = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/knotes-19.12.1.tar.xz";
-      sha256 = "e89f22ee1a918553be5241e167bd038797391502cb98c5f260c96b25017dd235";
-      name = "knotes-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/knotes-19.12.3.tar.xz";
+      sha256 = "b27846609dfac1ffcb3ac5e7165b7557231b096f6a84206da956c37233aed7b0";
+      name = "knotes-19.12.3.tar.xz";
     };
   };
   kolf = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kolf-19.12.1.tar.xz";
-      sha256 = "78c5e74d61f8c19b31d4d08781d12a87bc6101d0105081e0c15f4506e36ef6f5";
-      name = "kolf-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kolf-19.12.3.tar.xz";
+      sha256 = "2ba1f781d7d98ca0b10231e4f963b27d043c726f44da662b6c77105da4f9cffc";
+      name = "kolf-19.12.3.tar.xz";
     };
   };
   kollision = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kollision-19.12.1.tar.xz";
-      sha256 = "a48515f63c0dbcc890aa9c01e344ea5bcb123e587459879796acc39a16243c09";
-      name = "kollision-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kollision-19.12.3.tar.xz";
+      sha256 = "ce0bb077e8db8a959f965d463bb25bac02c91585b422af6c9249ad8a8f25eaab";
+      name = "kollision-19.12.3.tar.xz";
     };
   };
   kolourpaint = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kolourpaint-19.12.1.tar.xz";
-      sha256 = "a2db2312ddf79024358309da8b70cb2b9979d208372ce5f0960f662b8aab2518";
-      name = "kolourpaint-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kolourpaint-19.12.3.tar.xz";
+      sha256 = "7c134da2feb75a87bfda6b4265ef705868a9be03d70a828111a2869ca0b517b1";
+      name = "kolourpaint-19.12.3.tar.xz";
     };
   };
   kompare = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kompare-19.12.1.tar.xz";
-      sha256 = "c2eede65a85d59067caf6161606c3de4f18ec6b5e824cb1da9e6b3a8f1b7a92d";
-      name = "kompare-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kompare-19.12.3.tar.xz";
+      sha256 = "b89b266b6f648500627d2e70df29b73248c7b7d7d5e7c1bbcaddaedf072f6f1a";
+      name = "kompare-19.12.3.tar.xz";
     };
   };
   konqueror = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/konqueror-19.12.1.tar.xz";
-      sha256 = "20da57d7dd141e2c45345457ca90be26af28c2078224eb461dff9f9589889a09";
-      name = "konqueror-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/konqueror-19.12.3.tar.xz";
+      sha256 = "0f2b31a1dae1740839232bd646bf22d7cb57e34995584b9a96271ebcb0da7f0e";
+      name = "konqueror-19.12.3.tar.xz";
     };
   };
   konquest = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/konquest-19.12.1.tar.xz";
-      sha256 = "178e42f76115f8e8b47494ea7732fb76a692debe714590c06d84f7071930b65a";
-      name = "konquest-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/konquest-19.12.3.tar.xz";
+      sha256 = "e23732a7d78382c73fca0d31afb3ed85614ee4b4bfe2f07647a13582fa0811a5";
+      name = "konquest-19.12.3.tar.xz";
     };
   };
   konsole = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/konsole-19.12.1.tar.xz";
-      sha256 = "39797ed81c5ace12fd90f4a6e65c25d33db8e4385ab2baad2bd6a3b2db0ef075";
-      name = "konsole-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/konsole-19.12.3.tar.xz";
+      sha256 = "0bde8eb6365c53e96489d0ceb05baa0bb0385ee865492622033164a4c4bfccdc";
+      name = "konsole-19.12.3.tar.xz";
     };
   };
   kontact = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kontact-19.12.1.tar.xz";
-      sha256 = "e9f7911154953d58be962bd392baf7d9c310e9e665adb0c875ed5a50dcfe5e01";
-      name = "kontact-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kontact-19.12.3.tar.xz";
+      sha256 = "8dbd01f73c181f7b44df5dfffac1cf33c36b36149294fd854403bada9ef33052";
+      name = "kontact-19.12.3.tar.xz";
     };
   };
   kontactinterface = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kontactinterface-19.12.1.tar.xz";
-      sha256 = "a88b782b495d662920fd5f51c287c472c107c577af92431b4470787a78866b2c";
-      name = "kontactinterface-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kontactinterface-19.12.3.tar.xz";
+      sha256 = "1a0392cbeb6833f4834c86f202ff06e5b6069d12100bffe37de6427f0531af89";
+      name = "kontactinterface-19.12.3.tar.xz";
     };
   };
   kopete = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kopete-19.12.1.tar.xz";
-      sha256 = "eca3610cc9607c27620c7c23f9bb54bdd80d2fb295adaf6636506597fc0b848d";
-      name = "kopete-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kopete-19.12.3.tar.xz";
+      sha256 = "8d58fb0c9dd8b651bfc996e6928f7ccdad8e21cba39ffd0e54d46f7145fa7b27";
+      name = "kopete-19.12.3.tar.xz";
     };
   };
   korganizer = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/korganizer-19.12.1.tar.xz";
-      sha256 = "8bd84dfdca4f4738152c19d336b8c516f0c79fd888f0361005bc5d6359eeb117";
-      name = "korganizer-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/korganizer-19.12.3.tar.xz";
+      sha256 = "ea0a970aa510d5cdbbf80e974049fa3e7591e02c9ec2c4206137c49266df1acb";
+      name = "korganizer-19.12.3.tar.xz";
     };
   };
   kpat = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kpat-19.12.1.tar.xz";
-      sha256 = "cb72a256a2a6a34bd8ee05e09b28f0eedee6643f24f793c5f67a9465040c30c3";
-      name = "kpat-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kpat-19.12.3.tar.xz";
+      sha256 = "00b823b1b204b68e0c8671e5ddfe5f96abe8c9fcfb1efa9b7f70191cfa5384e1";
+      name = "kpat-19.12.3.tar.xz";
     };
   };
   kpimtextedit = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kpimtextedit-19.12.1.tar.xz";
-      sha256 = "253ded44f3ccb7de1a0a8879e45cc361c14dda2924619aeb04f4286c917f5475";
-      name = "kpimtextedit-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kpimtextedit-19.12.3.tar.xz";
+      sha256 = "64be03d7a8d4b9ece40c0065a23113023c2b3320dc57068fe00f6c4bc72537d5";
+      name = "kpimtextedit-19.12.3.tar.xz";
     };
   };
   kpkpass = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kpkpass-19.12.1.tar.xz";
-      sha256 = "b5a079dc1c102c52e29c1d0da3e5a1e51bf9e0a666bb82d6b783f1b55eaa7ada";
-      name = "kpkpass-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kpkpass-19.12.3.tar.xz";
+      sha256 = "45723989170e86c6739c8a377c54b3ba7456a8dc3ed6cf52eef884074c2df189";
+      name = "kpkpass-19.12.3.tar.xz";
     };
   };
   kqtquickcharts = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kqtquickcharts-19.12.1.tar.xz";
-      sha256 = "641f5c993e627dd6d0778066016d20196b7502e34ab793fcf17dd6b226d08ae8";
-      name = "kqtquickcharts-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kqtquickcharts-19.12.3.tar.xz";
+      sha256 = "94669a7add0cef9a1c0969a92ece8e60a67fbb0ff32826cc49ce87bd890c976c";
+      name = "kqtquickcharts-19.12.3.tar.xz";
     };
   };
   krdc = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/krdc-19.12.1.tar.xz";
-      sha256 = "b3d9b9c43bfe5801d807be08172ca4c773ff6fc2d846cf5b2456c3360ca21824";
-      name = "krdc-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/krdc-19.12.3.tar.xz";
+      sha256 = "12602912abbc22e061067b6b5048d37a7cbdaaf99d203829d3f52fdf7319acce";
+      name = "krdc-19.12.3.tar.xz";
     };
   };
   kreversi = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kreversi-19.12.1.tar.xz";
-      sha256 = "b81e6544ba23b0869329d734618b3bc4408b585d550985338e6d90bf2d3a17f3";
-      name = "kreversi-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kreversi-19.12.3.tar.xz";
+      sha256 = "6bfe3a2faa7c0d08fb689b75341bfd5881d66bc865445573b2f4dbb316a751e8";
+      name = "kreversi-19.12.3.tar.xz";
     };
   };
   krfb = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/krfb-19.12.1.tar.xz";
-      sha256 = "7f25790480ac3a8db8a8bd847d80937a0ab763f6c5c12fa2ce704c4b24810287";
-      name = "krfb-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/krfb-19.12.3.tar.xz";
+      sha256 = "cb88997dc7b15b992d1de5c5cabaeccb37122e20823501ac29140875259782ee";
+      name = "krfb-19.12.3.tar.xz";
     };
   };
   kross-interpreters = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kross-interpreters-19.12.1.tar.xz";
-      sha256 = "c5ec40971befd1d214d80c8c2ced3e30aaadfd2d4000ea782751f769783f8130";
-      name = "kross-interpreters-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kross-interpreters-19.12.3.tar.xz";
+      sha256 = "2b4060494901a68ca1d07e0c345cc0814e11fb84e9f48014a7231021e4377487";
+      name = "kross-interpreters-19.12.3.tar.xz";
     };
   };
   kruler = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kruler-19.12.1.tar.xz";
-      sha256 = "0ecbc70561c0d973866c4bd27333a5ddc904b748fb3a64f66b6b06040b30d34a";
-      name = "kruler-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kruler-19.12.3.tar.xz";
+      sha256 = "803a0d31bbb5bfbfa057b13a7f6bbf7630dcc1816a0d41ea13cc4592bdacaa47";
+      name = "kruler-19.12.3.tar.xz";
     };
   };
   kshisen = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kshisen-19.12.1.tar.xz";
-      sha256 = "a361dfc41595640287dd5b800921859ff17a45f7360e5e2fc6f520cc0e421afa";
-      name = "kshisen-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kshisen-19.12.3.tar.xz";
+      sha256 = "f6ce353725d71ce65269b1b7b3d118cb8555cd065db0d3b17fe4696d87c10601";
+      name = "kshisen-19.12.3.tar.xz";
     };
   };
   ksirk = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ksirk-19.12.1.tar.xz";
-      sha256 = "4f71e4ef3b4d2041edd48537f4b475cb505fc54e45b39b81a08c82d4eec7cc8e";
-      name = "ksirk-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ksirk-19.12.3.tar.xz";
+      sha256 = "6387d7a6320e644157f10b94474ca715e7ad7fd15cdf7156a8e7d94bff019dcb";
+      name = "ksirk-19.12.3.tar.xz";
     };
   };
   ksmtp = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ksmtp-19.12.1.tar.xz";
-      sha256 = "6c7d6ce91d65d7430cb31fb4a1fd44a600a5a459b3956807ee3180b5822dbac0";
-      name = "ksmtp-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ksmtp-19.12.3.tar.xz";
+      sha256 = "1fd69f494afee91c11667ddbba43bc6cc316b51acf5894fe4c3a2631f53fae27";
+      name = "ksmtp-19.12.3.tar.xz";
     };
   };
   ksnakeduel = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ksnakeduel-19.12.1.tar.xz";
-      sha256 = "73e9c55cce88a6e5d00683c73382ee82db64bfe788c14c3a4eda8decf382188f";
-      name = "ksnakeduel-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ksnakeduel-19.12.3.tar.xz";
+      sha256 = "8db1dece78571f3e6933f8edcd693c3ceb1035acff780547a72c98b9f7decb87";
+      name = "ksnakeduel-19.12.3.tar.xz";
     };
   };
   kspaceduel = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kspaceduel-19.12.1.tar.xz";
-      sha256 = "0bc1f1c12bcfc9e5c778918fb9fa644f5c7ec5c3e687c015d45a7c5c31a27834";
-      name = "kspaceduel-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kspaceduel-19.12.3.tar.xz";
+      sha256 = "a9b5dc498b3695b59ae8925cc572cfc521ccadc8532756fa95ac876a7423c444";
+      name = "kspaceduel-19.12.3.tar.xz";
     };
   };
   ksquares = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ksquares-19.12.1.tar.xz";
-      sha256 = "955225b9fadbda464bdaf1b59c95c3d12310f84484a296968737e9fb87b37b46";
-      name = "ksquares-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ksquares-19.12.3.tar.xz";
+      sha256 = "45a922e4d85835cc655de560b6fd9be87d8cabc74eadbdecda3f17ba53ac92af";
+      name = "ksquares-19.12.3.tar.xz";
     };
   };
   ksudoku = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ksudoku-19.12.1.tar.xz";
-      sha256 = "4dd72a5b0bb0c951508bbe2c60ce280efcd0414899e025a2ca4d92336576ec2a";
-      name = "ksudoku-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ksudoku-19.12.3.tar.xz";
+      sha256 = "1cf36e762f31464b0640a88c739dfbb39b10129cace7fb5b74093ec607dea06c";
+      name = "ksudoku-19.12.3.tar.xz";
     };
   };
   ksystemlog = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ksystemlog-19.12.1.tar.xz";
-      sha256 = "497496ca7451cd34f193ba11fe3100479515a89a34f0437ca2f508a48e68e895";
-      name = "ksystemlog-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ksystemlog-19.12.3.tar.xz";
+      sha256 = "8225b1308ace76ebbf9bb805a2b6fae9bf8a425d0b09518645234c1b2df522dc";
+      name = "ksystemlog-19.12.3.tar.xz";
     };
   };
   kteatime = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kteatime-19.12.1.tar.xz";
-      sha256 = "49a0531b64e93ceb29548a7f75da755e75afda001fce2e6ba906372456b5dc17";
-      name = "kteatime-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kteatime-19.12.3.tar.xz";
+      sha256 = "0ab5fb6e33583e6d627b8f9dfaba5ce59e2b363e8045dfc66a4f65236d56542f";
+      name = "kteatime-19.12.3.tar.xz";
     };
   };
   ktimer = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktimer-19.12.1.tar.xz";
-      sha256 = "0c5fac1baddfa3144b8930f3d42b78a3eb8681d642a3c3339c903ad2cb30a2ba";
-      name = "ktimer-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktimer-19.12.3.tar.xz";
+      sha256 = "921af876a176a4731a74b5e9e76d751853043ec4f4857301b39a5c680246557c";
+      name = "ktimer-19.12.3.tar.xz";
     };
   };
   ktnef = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktnef-19.12.1.tar.xz";
-      sha256 = "2fce576e517e6ae9001ade6f07a51fcfa899a6569bc4b8c3948827adfc0af20c";
-      name = "ktnef-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktnef-19.12.3.tar.xz";
+      sha256 = "3537515b432e5da00d401046e94e0098fa54c071246cb0e357e3d8f47296ed3c";
+      name = "ktnef-19.12.3.tar.xz";
     };
   };
   ktouch = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktouch-19.12.1.tar.xz";
-      sha256 = "64b8a025f82b951c69c3be7aa7d3c23f14ccef9ed5e900776eb01462cff9a99f";
-      name = "ktouch-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktouch-19.12.3.tar.xz";
+      sha256 = "522fb081da5877717d577493fdaeeecbfe3d8d773e5d7fc83ecced008744ef0e";
+      name = "ktouch-19.12.3.tar.xz";
     };
   };
   ktp-accounts-kcm = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-accounts-kcm-19.12.1.tar.xz";
-      sha256 = "1ae81e4b7bae97d9d18c1fdc9e7083cc810b39d58dff5755dc9d78bd62551577";
-      name = "ktp-accounts-kcm-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-accounts-kcm-19.12.3.tar.xz";
+      sha256 = "ae5ae5004ecbf34596711a56e069d480c952de5ea784f5e90c391750439aff51";
+      name = "ktp-accounts-kcm-19.12.3.tar.xz";
     };
   };
   ktp-approver = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-approver-19.12.1.tar.xz";
-      sha256 = "502a63f13db44fc8a28f64e37c43839b8da22086bf858dc9c492476d9ba14b50";
-      name = "ktp-approver-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-approver-19.12.3.tar.xz";
+      sha256 = "af4f6d247b6332745f6b6dfacef74eb2ea0f7bbea9398080fc7b57e5953fdfbd";
+      name = "ktp-approver-19.12.3.tar.xz";
     };
   };
   ktp-auth-handler = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-auth-handler-19.12.1.tar.xz";
-      sha256 = "109583d4800d293fe11eeaa553d72643f2a3709c0d078a6e842f2e4b228d93e0";
-      name = "ktp-auth-handler-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-auth-handler-19.12.3.tar.xz";
+      sha256 = "40822e78879d97c3cc1d16f44f7d3b581980c4e249a273d7471b291adf3b9225";
+      name = "ktp-auth-handler-19.12.3.tar.xz";
     };
   };
   ktp-call-ui = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-call-ui-19.12.1.tar.xz";
-      sha256 = "adb3025f8f878fd4a56ce125bd51c155f26b02661b9365b6321fb456153b0c55";
-      name = "ktp-call-ui-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-call-ui-19.12.3.tar.xz";
+      sha256 = "96b1dd64b0f87228d76f12b6cad3677afeb4c44d6f18645c3001555506573fb1";
+      name = "ktp-call-ui-19.12.3.tar.xz";
     };
   };
   ktp-common-internals = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-common-internals-19.12.1.tar.xz";
-      sha256 = "4a1f189c1393164fba710e63b0e8f1aae6f22a5faacea0d86544e3e4a471603a";
-      name = "ktp-common-internals-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-common-internals-19.12.3.tar.xz";
+      sha256 = "48cde7fc4f2f0d39999f70699867044e0f85e06769a0824aac49c572fb1af5a4";
+      name = "ktp-common-internals-19.12.3.tar.xz";
     };
   };
   ktp-contact-list = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-contact-list-19.12.1.tar.xz";
-      sha256 = "c293fa90899d496c4e29b9c9986a3864e06ef22dabbd4583123abbc232f4fe25";
-      name = "ktp-contact-list-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-contact-list-19.12.3.tar.xz";
+      sha256 = "093544e84ca12169966837be5f01d339ddc59e5f031d78e68ddf7be4dd890efd";
+      name = "ktp-contact-list-19.12.3.tar.xz";
     };
   };
   ktp-contact-runner = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-contact-runner-19.12.1.tar.xz";
-      sha256 = "a86d8a67f3d8f3d741c6c4548a58cbdff384e8bd5ed5cd1d82db65456240ac0f";
-      name = "ktp-contact-runner-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-contact-runner-19.12.3.tar.xz";
+      sha256 = "50646e8670449d6f6a9b107e36f18174b5ec37052a7b4f471617f4f53fecc96b";
+      name = "ktp-contact-runner-19.12.3.tar.xz";
     };
   };
   ktp-desktop-applets = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-desktop-applets-19.12.1.tar.xz";
-      sha256 = "63f1a0df6a392f41a54fda8c4896754c2687ba34968cf5bbc0ac84a37c1a1741";
-      name = "ktp-desktop-applets-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-desktop-applets-19.12.3.tar.xz";
+      sha256 = "4ab8f04537345db8e41ed9f8ff7a6a2f3135e3539382cef97d1a7e9f0eddb54e";
+      name = "ktp-desktop-applets-19.12.3.tar.xz";
     };
   };
   ktp-filetransfer-handler = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-filetransfer-handler-19.12.1.tar.xz";
-      sha256 = "208aab8c78f4b7f38e331802a63fa10d00a65c115900c72c7a710b799ea56034";
-      name = "ktp-filetransfer-handler-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-filetransfer-handler-19.12.3.tar.xz";
+      sha256 = "b2e81fec33b51628d9d88707b6bd844c69eb2c9bfb00cb0b45759a4fd9769b03";
+      name = "ktp-filetransfer-handler-19.12.3.tar.xz";
     };
   };
   ktp-kded-module = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-kded-module-19.12.1.tar.xz";
-      sha256 = "274f97c6874eeb2af14b937ed20430d2ac2e1a769890a70da8d477ac33ed6082";
-      name = "ktp-kded-module-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-kded-module-19.12.3.tar.xz";
+      sha256 = "6bb0c05683812738e254c88d39936565966096a7156111565d8a64a59c55ef0d";
+      name = "ktp-kded-module-19.12.3.tar.xz";
     };
   };
   ktp-send-file = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-send-file-19.12.1.tar.xz";
-      sha256 = "5652e40e02ac191ad6e8df276a5faf8805000760261d495f3f4424416da3b977";
-      name = "ktp-send-file-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-send-file-19.12.3.tar.xz";
+      sha256 = "566d9dccc0c2fa7c23c95051c25543d3aabe76065ddff7dff9d8a37683d2022b";
+      name = "ktp-send-file-19.12.3.tar.xz";
     };
   };
   ktp-text-ui = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktp-text-ui-19.12.1.tar.xz";
-      sha256 = "226efc09343bb9218c461858747a1bc084ad8291fbbcc9f49eb888acfe2039c6";
-      name = "ktp-text-ui-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktp-text-ui-19.12.3.tar.xz";
+      sha256 = "b8ad9a224ae300c0412874d0877fdc8e050869d3a8f60a4051a0919a8749c50f";
+      name = "ktp-text-ui-19.12.3.tar.xz";
     };
   };
   ktuberling = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/ktuberling-19.12.1.tar.xz";
-      sha256 = "4c0d594ef72bd2dda5d42daf0f8b430319cbea6d28ba5c9725895b1221cdaace";
-      name = "ktuberling-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/ktuberling-19.12.3.tar.xz";
+      sha256 = "c4d74d18173d5761f7e6f8adf6178713a726c671aaa2eda4e6c77115484e9e55";
+      name = "ktuberling-19.12.3.tar.xz";
     };
   };
   kturtle = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kturtle-19.12.1.tar.xz";
-      sha256 = "de10ea1ee142aea6fba8dee0d27d2e431aa806c6d7be4f5b5727cba8984e8d51";
-      name = "kturtle-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kturtle-19.12.3.tar.xz";
+      sha256 = "6958a88c484261919cd89cb1f0d163b0c5d5f1e28b10b3b4e3b6b9e82e379ef1";
+      name = "kturtle-19.12.3.tar.xz";
     };
   };
   kubrick = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kubrick-19.12.1.tar.xz";
-      sha256 = "485e7e4a30b01cb2661c640214bdc71a3e0a8b61a9071c64ffbbe75e2270af3c";
-      name = "kubrick-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kubrick-19.12.3.tar.xz";
+      sha256 = "8fc0a0e68d255481c6efb3f4ff894c5e376367b29958c4738bd72d3f4b1ff557";
+      name = "kubrick-19.12.3.tar.xz";
     };
   };
   kwalletmanager = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kwalletmanager-19.12.1.tar.xz";
-      sha256 = "b2370fbf559a3b8e8551daedada9c97d07041388dc74f8bd1286c64ab18b936b";
-      name = "kwalletmanager-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kwalletmanager-19.12.3.tar.xz";
+      sha256 = "247c7f80a54babd21a13e6b9386370b72ec12bdf928c08a7e8a647ccca53e393";
+      name = "kwalletmanager-19.12.3.tar.xz";
     };
   };
   kwave = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kwave-19.12.1.tar.xz";
-      sha256 = "e6c336644c00a457b37820fc87668dd9b8a448d8abf84cda267b6e5cd01e0645";
-      name = "kwave-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kwave-19.12.3.tar.xz";
+      sha256 = "3c90115d4702dbe46767e2404c952d84533137fa558b787b87ff95ed61f6930d";
+      name = "kwave-19.12.3.tar.xz";
     };
   };
   kwordquiz = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/kwordquiz-19.12.1.tar.xz";
-      sha256 = "8ee204de56fe2bf33e11d19b9c0c21d7e3dcf26bf550f9dffa79b22a3082659f";
-      name = "kwordquiz-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/kwordquiz-19.12.3.tar.xz";
+      sha256 = "6965a3b3c171c3f62aeecf4ccdddde14d23062ab914b1860822546a5770b80fc";
+      name = "kwordquiz-19.12.3.tar.xz";
     };
   };
   libgravatar = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libgravatar-19.12.1.tar.xz";
-      sha256 = "84525db5f24c04cfa2bb44376a3bd64368e9d9478a160cf862c695052f3fc254";
-      name = "libgravatar-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libgravatar-19.12.3.tar.xz";
+      sha256 = "70ea306f48aede9f8f327eaa74ea5ce5761e5dfe67f2da50d3242c0f312edc86";
+      name = "libgravatar-19.12.3.tar.xz";
     };
   };
   libkcddb = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkcddb-19.12.1.tar.xz";
-      sha256 = "50c139aaa14a5f27b3818cec7ec6ede4b764d461b6547651b61e4edd295afe6f";
-      name = "libkcddb-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkcddb-19.12.3.tar.xz";
+      sha256 = "69cbaf03adba24c0cabf957ee4149c4fa86d403eb6b8a07f7f80eb17be49e892";
+      name = "libkcddb-19.12.3.tar.xz";
     };
   };
   libkcompactdisc = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkcompactdisc-19.12.1.tar.xz";
-      sha256 = "95b14098b24a86094b01b357e36ae135fb6c85c838e8735c843d27b101cc2bd9";
-      name = "libkcompactdisc-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkcompactdisc-19.12.3.tar.xz";
+      sha256 = "74aac7dcac84c60a7962f23e7bcc6eb693048fd96ca21015441a87487baa9d1c";
+      name = "libkcompactdisc-19.12.3.tar.xz";
     };
   };
   libkdcraw = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkdcraw-19.12.1.tar.xz";
-      sha256 = "bbdd5b1b9b40780b5f2be567d9ba0ab163fe7dcc7121070b788106e0fe966c1e";
-      name = "libkdcraw-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkdcraw-19.12.3.tar.xz";
+      sha256 = "9454aed707ee311dbfb921f8d45fba11710ffc01f48d65f64585d12c2580116f";
+      name = "libkdcraw-19.12.3.tar.xz";
     };
   };
   libkdegames = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkdegames-19.12.1.tar.xz";
-      sha256 = "317513544e08d03b2381bdb4c0bcd24c844dd8af7ccc4896569dd05933061d9c";
-      name = "libkdegames-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkdegames-19.12.3.tar.xz";
+      sha256 = "39cf5039b7fe11688028df026252c9cd4424546817b5bb635af2558f71ba6b20";
+      name = "libkdegames-19.12.3.tar.xz";
     };
   };
   libkdepim = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkdepim-19.12.1.tar.xz";
-      sha256 = "1d626a959a0f9fcb24c4e01c553126d40314c789db9bc80d6b52f2bb75e233cd";
-      name = "libkdepim-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkdepim-19.12.3.tar.xz";
+      sha256 = "911e7d174240d4c056472549dbd1f3da4467a57c765f3cb34fbac32943f38dbb";
+      name = "libkdepim-19.12.3.tar.xz";
     };
   };
   libkeduvocdocument = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkeduvocdocument-19.12.1.tar.xz";
-      sha256 = "a0e3921dab9d892d5efcddfbca548f230b508fc81ab4d7735c7610a710791816";
-      name = "libkeduvocdocument-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkeduvocdocument-19.12.3.tar.xz";
+      sha256 = "31594d30e03890507b25d676981164fd64258e69c6b264b85939118377eda964";
+      name = "libkeduvocdocument-19.12.3.tar.xz";
     };
   };
   libkexiv2 = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkexiv2-19.12.1.tar.xz";
-      sha256 = "53b9a4ecda0f76df1a5b9f7b8184b85e847838cf97e4ad3036a6c5bb719993e5";
-      name = "libkexiv2-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkexiv2-19.12.3.tar.xz";
+      sha256 = "f5d0947f6b1ca0583d569990dc6f68bb01d8f7756a38bcc40b1e54f7814e4d4d";
+      name = "libkexiv2-19.12.3.tar.xz";
     };
   };
   libkgapi = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkgapi-19.12.1.tar.xz";
-      sha256 = "8bfa16ab76b0042e2a0b827cf251b1155c0e693db39ffcb2805613d3393389cf";
-      name = "libkgapi-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkgapi-19.12.3.tar.xz";
+      sha256 = "f52923c382272b47782348fbadb32902fbcd4652f4100875a745ba57033cf48a";
+      name = "libkgapi-19.12.3.tar.xz";
     };
   };
   libkgeomap = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkgeomap-19.12.1.tar.xz";
-      sha256 = "68c9c5b91e77a4b4a07ca646d58e8e890975825f8f851d850c95dacb7a1d90d2";
-      name = "libkgeomap-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkgeomap-19.12.3.tar.xz";
+      sha256 = "eb604deffe78cdcd4a8c7d888416246d0a17f2e3b7d80d6959e1412f03ab2755";
+      name = "libkgeomap-19.12.3.tar.xz";
     };
   };
   libkipi = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkipi-19.12.1.tar.xz";
-      sha256 = "79f0a994b348467353425aea60dc4f4234c9a259cffcb55ac60d8c195bd0122c";
-      name = "libkipi-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkipi-19.12.3.tar.xz";
+      sha256 = "3a57d07cd4fe8e118558d807242bf483fa2aac1bcf3dcdc29139636c2b280786";
+      name = "libkipi-19.12.3.tar.xz";
     };
   };
   libkleo = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkleo-19.12.1.tar.xz";
-      sha256 = "8e9b78fbeb861370ab81f98150ff9ea8afc960293ae8324fedd0b877302994a7";
-      name = "libkleo-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkleo-19.12.3.tar.xz";
+      sha256 = "1e715442a0c52ca561316abdce9662082f52ad9f3101ea01435a90984989a057";
+      name = "libkleo-19.12.3.tar.xz";
     };
   };
   libkmahjongg = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkmahjongg-19.12.1.tar.xz";
-      sha256 = "e6a107a32c01c654a2372fda984724b4acd59dbc2902f3f9c7a7d9e14587639c";
-      name = "libkmahjongg-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkmahjongg-19.12.3.tar.xz";
+      sha256 = "f8ea23952a576e6081052d10e9c967bebe5db017ad62775183f91236158cc19f";
+      name = "libkmahjongg-19.12.3.tar.xz";
     };
   };
   libkomparediff2 = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libkomparediff2-19.12.1.tar.xz";
-      sha256 = "319d61742f7603a60d781151cd717291c5cb976ff0f2895df9d167526cfb0b4a";
-      name = "libkomparediff2-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libkomparediff2-19.12.3.tar.xz";
+      sha256 = "aadc6e420e24bdebe203d4dfc76f5c23c8529be70ac057d89b516ab57b165094";
+      name = "libkomparediff2-19.12.3.tar.xz";
     };
   };
   libksane = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libksane-19.12.1.tar.xz";
-      sha256 = "5a5998996848e83c80589c8ed0b1a6c1fa48bb61686288d199d831ac810e1603";
-      name = "libksane-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libksane-19.12.3.tar.xz";
+      sha256 = "0aab855b8414041c37ddfbb9f0732272206af1c0844376f1370b9d2a907af71d";
+      name = "libksane-19.12.3.tar.xz";
     };
   };
   libksieve = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/libksieve-19.12.1.tar.xz";
-      sha256 = "6c3d49e2ce4d8e6b7c1b4328aa6065a01c7711223dd4f3b9db3a542f9fc0a84c";
-      name = "libksieve-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/libksieve-19.12.3.tar.xz";
+      sha256 = "990e6a15e7e88120bf6c744fe6f1ac78184d6470318005f24634a70219f45002";
+      name = "libksieve-19.12.3.tar.xz";
     };
   };
   lokalize = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/lokalize-19.12.1.tar.xz";
-      sha256 = "ee29cff9a513d68cde72e6ace0f893de77be5cb3fe56b4b6e0d1fa5b808b424c";
-      name = "lokalize-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/lokalize-19.12.3.tar.xz";
+      sha256 = "8015c994e974fd51c1c7f5903a005bbbc25f094656bdd44cd5e8675cd69cea92";
+      name = "lokalize-19.12.3.tar.xz";
     };
   };
   lskat = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/lskat-19.12.1.tar.xz";
-      sha256 = "0aa36c4cc554b708f7334b32362831537ea52db81b8480b80ffac5c27a041e8f";
-      name = "lskat-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/lskat-19.12.3.tar.xz";
+      sha256 = "5f13417ba9f6831a5f48c220a5c67a8d73787715b8b4aa433e6e356b7ac58776";
+      name = "lskat-19.12.3.tar.xz";
     };
   };
   mailcommon = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/mailcommon-19.12.1.tar.xz";
-      sha256 = "160135049bc2e4984f14022af793a9ac05bf488faa6f9eb7bd86a094de1c9bfe";
-      name = "mailcommon-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/mailcommon-19.12.3.tar.xz";
+      sha256 = "d3999d290505b20aecbb4b14bec5af4d6a7db72d1f26f7a40b4aff231588c7e5";
+      name = "mailcommon-19.12.3.tar.xz";
     };
   };
   mailimporter = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/mailimporter-19.12.1.tar.xz";
-      sha256 = "c1a042560438d6f6195a1f64355515489b74a44c1d2f5f547ced6785439215f1";
-      name = "mailimporter-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/mailimporter-19.12.3.tar.xz";
+      sha256 = "b81e8a5794aee24aa611c1a1912f93a308ce56c429ad4a72afe308e6b554c4a7";
+      name = "mailimporter-19.12.3.tar.xz";
     };
   };
   marble = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/marble-19.12.1.tar.xz";
-      sha256 = "46ec0dcab4773ccfb843ae52881ae833b038a00b7690977a2e721099264dc8dd";
-      name = "marble-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/marble-19.12.3.tar.xz";
+      sha256 = "73a2c5234f8a1728e2a97499166e7bbf8dfb2f48d10fe8cff96380631d064627";
+      name = "marble-19.12.3.tar.xz";
     };
   };
   mbox-importer = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/mbox-importer-19.12.1.tar.xz";
-      sha256 = "04dd6220192095d0f7befb368b9d96a321acac7af43b3575faf25ae89d17b5f4";
-      name = "mbox-importer-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/mbox-importer-19.12.3.tar.xz";
+      sha256 = "62fb1490517e0a49bf823946c8b747062cb970dbe00281d459adda73596f0046";
+      name = "mbox-importer-19.12.3.tar.xz";
     };
   };
   messagelib = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/messagelib-19.12.1.tar.xz";
-      sha256 = "d2514ac31f78235340353701f735a15f69d99374a55566ec7702a3a5ddd23d05";
-      name = "messagelib-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/messagelib-19.12.3.tar.xz";
+      sha256 = "5e776d5ea7b0cbb246b03cf2bfc84a65a959e7433a7f80b77a5f67cfa7c23ccb";
+      name = "messagelib-19.12.3.tar.xz";
     };
   };
   minuet = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/minuet-19.12.1.tar.xz";
-      sha256 = "735b340f9f0d6ee09c2c6aa76061282da6bd921f8b77683c53311731a77edff1";
-      name = "minuet-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/minuet-19.12.3.tar.xz";
+      sha256 = "740a3704004336f08c0fde148257c1562254b4e706704ec7eb2149fb3d7b6b9b";
+      name = "minuet-19.12.3.tar.xz";
     };
   };
   okular = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/okular-19.12.1.tar.xz";
-      sha256 = "485044127c6bbe0d4c71f1518da15050957c06b8fe36633462367d15d684d4bd";
-      name = "okular-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/okular-19.12.3.tar.xz";
+      sha256 = "c5de22cc4292e3b7adae3f6ef6566dcba33a1dd5995fb0b968ea3e705a4c04e0";
+      name = "okular-19.12.3.tar.xz";
     };
   };
   palapeli = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/palapeli-19.12.1.tar.xz";
-      sha256 = "ea4d9dd576066a610444680f3e8686f242bc8be9222020423acab52ec98a185f";
-      name = "palapeli-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/palapeli-19.12.3.tar.xz";
+      sha256 = "6989bbc94ed955f6990d40bccbc0c38768898bf2ccb8163c45119517340b723d";
+      name = "palapeli-19.12.3.tar.xz";
     };
   };
   parley = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/parley-19.12.1.tar.xz";
-      sha256 = "54b91178a9bd1ff9c1817bd0df69a3a4bb9e4f3488f052034dd45e729f1325b6";
-      name = "parley-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/parley-19.12.3.tar.xz";
+      sha256 = "ebf9fdec981abca988d83d8a77e921e7ce871eb010b6cf4ea9065ee6d45f5089";
+      name = "parley-19.12.3.tar.xz";
     };
   };
   picmi = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/picmi-19.12.1.tar.xz";
-      sha256 = "5428ef9add8dd9479f319b8c08fbfefca9ee34fbf503bee1c55b04ecf82ae9f9";
-      name = "picmi-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/picmi-19.12.3.tar.xz";
+      sha256 = "04a69125fc76b1fcd58d873452e4a4e642ee9ee672cdb7656214d8cd854fc178";
+      name = "picmi-19.12.3.tar.xz";
     };
   };
   pimcommon = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/pimcommon-19.12.1.tar.xz";
-      sha256 = "d3058407ec578a32df82eb83eb7631d2904e75d6d345ed61dac0f3744840ebf5";
-      name = "pimcommon-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/pimcommon-19.12.3.tar.xz";
+      sha256 = "443e2915eb42a4f56f1ddf47785ceeceb4ca1e0384ff48bc93fc4a7756392766";
+      name = "pimcommon-19.12.3.tar.xz";
     };
   };
   pim-data-exporter = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/pim-data-exporter-19.12.1.tar.xz";
-      sha256 = "3f650c1c221826079d7c739e4070e295a7a1b1156f75e8e3100b06f878efed12";
-      name = "pim-data-exporter-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/pim-data-exporter-19.12.3.tar.xz";
+      sha256 = "8e9961fcc4f1ed0305d589e3a417f8924657d89d798a77c53956d73f6bf19938";
+      name = "pim-data-exporter-19.12.3.tar.xz";
     };
   };
   pim-sieve-editor = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/pim-sieve-editor-19.12.1.tar.xz";
-      sha256 = "3fdca7147c581dce4a014dc2d30bd7e6616c0559654cf9fee68e9292fd6ef037";
-      name = "pim-sieve-editor-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/pim-sieve-editor-19.12.3.tar.xz";
+      sha256 = "641ea56304df079a80e098fb253c173b63266990856f8795af093c144c3883ae";
+      name = "pim-sieve-editor-19.12.3.tar.xz";
     };
   };
   poxml = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/poxml-19.12.1.tar.xz";
-      sha256 = "f02aa4d1f7de8fb38921fe73076b3e905185979d9b75ff6345efaca8aad0ebb9";
-      name = "poxml-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/poxml-19.12.3.tar.xz";
+      sha256 = "190178290ce18fe3a684c22d650843f3008a6e31ebbab8fff25491c58b21e276";
+      name = "poxml-19.12.3.tar.xz";
     };
   };
   print-manager = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/print-manager-19.12.1.tar.xz";
-      sha256 = "76336be7da80a7494e2e5d5c9ab431047672a98630c7d61f916aa4b9edc35776";
-      name = "print-manager-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/print-manager-19.12.3.tar.xz";
+      sha256 = "74c13802a65136539b4542fec10fb248149a3324e8060e947a8f305ce665269a";
+      name = "print-manager-19.12.3.tar.xz";
     };
   };
   rocs = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/rocs-19.12.1.tar.xz";
-      sha256 = "cc9ff080b05bd6c48ee438c968917d8eb6f6eccb45ca70b45c5e53dce396bb45";
-      name = "rocs-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/rocs-19.12.3.tar.xz";
+      sha256 = "f834e69e676913e364162906b79da5a75a6043f4a5c8506954d1630abda45e3c";
+      name = "rocs-19.12.3.tar.xz";
     };
   };
   signon-kwallet-extension = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/signon-kwallet-extension-19.12.1.tar.xz";
-      sha256 = "a98397cc15733b9c1010f022a8d6bcf7727c4065ba6ae662273ba97864836bbe";
-      name = "signon-kwallet-extension-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/signon-kwallet-extension-19.12.3.tar.xz";
+      sha256 = "46199be023bad630b769b14c2c0a63feff2949da944c76780b1ebd9a50ee3daa";
+      name = "signon-kwallet-extension-19.12.3.tar.xz";
     };
   };
   spectacle = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/spectacle-19.12.1.tar.xz";
-      sha256 = "140f388c531043eeefff8d639eb468d1ed33397925021c6809c0c8a799bb25c9";
-      name = "spectacle-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/spectacle-19.12.3.tar.xz";
+      sha256 = "443f114dab1fb50e7e12a046fdf06c0456bf99a3abdf09dce05605fdf7d3de81";
+      name = "spectacle-19.12.3.tar.xz";
     };
   };
   step = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/step-19.12.1.tar.xz";
-      sha256 = "f171c58b567bb29ed50109b341e53dc00116e814c90f51aa7a6e405326982907";
-      name = "step-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/step-19.12.3.tar.xz";
+      sha256 = "0eb62c87553769e009daa02406b1d95742c946bdffe0d22327776ec558e7584b";
+      name = "step-19.12.3.tar.xz";
     };
   };
   svgpart = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/svgpart-19.12.1.tar.xz";
-      sha256 = "6083457999121ead13b6c267211a78ea04c925d6f9f7447b31677c0b49f6898b";
-      name = "svgpart-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/svgpart-19.12.3.tar.xz";
+      sha256 = "942d877a516d8407ef2782d7c6869ab688274fee6cde9b23ab1061bcbddf2cc9";
+      name = "svgpart-19.12.3.tar.xz";
     };
   };
   sweeper = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/sweeper-19.12.1.tar.xz";
-      sha256 = "50b1464c08b738f4af4c78b4edc291ce93877a52831b810cd12c8ca6a4df0cf9";
-      name = "sweeper-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/sweeper-19.12.3.tar.xz";
+      sha256 = "cf89cfba61c9eeda9b4e7921c21a23e7d9a110b134ab6fbd127c37d036bd0517";
+      name = "sweeper-19.12.3.tar.xz";
     };
   };
   umbrello = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/umbrello-19.12.1.tar.xz";
-      sha256 = "077a1b5a3dfe15d37f03ee97ca5b40a1b8e7e0f2305df2f16a966861cc79e0d6";
-      name = "umbrello-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/umbrello-19.12.3.tar.xz";
+      sha256 = "b2f769c7bd1cc259170b62c68d2dca05b4a143dd1048dbb507cf2bbb3020a193";
+      name = "umbrello-19.12.3.tar.xz";
     };
   };
   yakuake = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/yakuake-19.12.1.tar.xz";
-      sha256 = "abff4f358f41f544b2e12c340a74d92482241b1b95906b14add7810384602e42";
-      name = "yakuake-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/yakuake-19.12.3.tar.xz";
+      sha256 = "0e4f16eaf155750b0c35f1f8f1a625909f386f3359b9f23bf4e7c2f9045384e3";
+      name = "yakuake-19.12.3.tar.xz";
     };
   };
   zeroconf-ioslave = {
-    version = "19.12.1";
+    version = "19.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/release-service/19.12.1/src/zeroconf-ioslave-19.12.1.tar.xz";
-      sha256 = "39641a186de9d0704a58063a8a37cfb3a405ff6bd9957c7d09efec3bec4dfc60";
-      name = "zeroconf-ioslave-19.12.1.tar.xz";
+      url = "${mirror}/stable/release-service/19.12.3/src/zeroconf-ioslave-19.12.3.tar.xz";
+      sha256 = "c9b2146030a9845b8164f5784d1c6fcc198b6cfe0e23f6a91edf78d093e4368f";
+      name = "zeroconf-ioslave-19.12.3.tar.xz";
     };
   };
 }
diff --git a/pkgs/applications/misc/alacritty/default.nix b/pkgs/applications/misc/alacritty/default.nix
index 78e7249a087..b6248b8f6f1 100644
--- a/pkgs/applications/misc/alacritty/default.nix
+++ b/pkgs/applications/misc/alacritty/default.nix
@@ -1,40 +1,38 @@
-{ stdenv,
-  lib,
-  fetchFromGitHub,
-  rustPlatform,
-
-  cmake,
-  gzip,
-  installShellFiles,
-  makeWrapper,
-  ncurses,
-  pkgconfig,
-  python3,
-
-  expat,
-  fontconfig,
-  freetype,
-  libGL,
-  libX11,
-  libXcursor,
-  libXi,
-  libXrandr,
-  libXxf86vm,
-  libxcb,
-  libxkbcommon,
-  wayland,
-  xdg_utils,
+{ stdenv
+, lib
+, fetchFromGitHub
+, rustPlatform
+
+, cmake
+, gzip
+, installShellFiles
+, makeWrapper
+, ncurses
+, pkgconfig
+, python3
+
+, expat
+, fontconfig
+, freetype
+, libGL
+, libX11
+, libXcursor
+, libXi
+, libXrandr
+, libXxf86vm
+, libxcb
+, libxkbcommon
+, wayland
+, xdg_utils
 
   # Darwin Frameworks
-  AppKit,
-  CoreGraphics,
-  CoreServices,
-  CoreText,
-  Foundation,
-  OpenGL }:
-
-with rustPlatform;
-
+, AppKit
+, CoreGraphics
+, CoreServices
+, CoreText
+, Foundation
+, OpenGL
+}:
 let
   rpathLibs = [
     expat
@@ -51,18 +49,19 @@ let
     libxkbcommon
     wayland
   ];
-in buildRustPackage rec {
+in
+rustPlatform.buildRustPackage rec {
   pname = "alacritty";
-  version = "0.4.1";
+  version = "0.4.2";
 
   src = fetchFromGitHub {
-    owner = "jwilm";
+    owner = "alacritty";
     repo = pname;
     rev = "v${version}";
-    sha256 = "05jcg33ifngpzw2hdhgb614j87ihhhlqgar0kky183rywg0dxikg";
+    sha256 = "133d8vm7ihlvgw8n1jghhh35h664h0f52h6gci54f11vl6c1spws";
   };
 
-  cargoSha256 = "182j8ah67b2gw409vjfml3p41i00zh0klx9m8bwfkm64y2ki2bip";
+  cargoSha256 = "07gq63qd11zz229b8jp9wqggz39qfpzd223z1zk1xch7rhqq0pn4";
 
   nativeBuildInputs = [
     cmake
@@ -75,9 +74,17 @@ in buildRustPackage rec {
   ];
 
   buildInputs = rpathLibs
-    ++ lib.optionals stdenv.isDarwin [ AppKit CoreGraphics CoreServices CoreText Foundation OpenGL ];
+  ++ lib.optionals stdenv.isDarwin [
+    AppKit
+    CoreGraphics
+    CoreServices
+    CoreText
+    Foundation
+    OpenGL
+  ];
 
   outputs = [ "out" "terminfo" ];
+
   postPatch = ''
     substituteInPlace alacritty/src/config/mouse.rs \
       --replace xdg-open ${xdg_utils}/bin/xdg-open
@@ -90,14 +97,16 @@ in buildRustPackage rec {
 
     install -D target/release/alacritty $out/bin/alacritty
 
-  '' + (if stdenv.isDarwin then ''
-    mkdir $out/Applications
-    cp -r target/release/osx/Alacritty.app $out/Applications/Alacritty.app
-  '' else ''
-    install -D extra/linux/alacritty.desktop -t $out/share/applications/
-    install -D extra/logo/alacritty-term.svg $out/share/icons/hicolor/scalable/apps/Alacritty.svg
-    patchelf --set-rpath "${stdenv.lib.makeLibraryPath rpathLibs}" $out/bin/alacritty
-  '') + ''
+  '' + (
+    if stdenv.isDarwin then ''
+      mkdir $out/Applications
+      cp -r target/release/osx/Alacritty.app $out/Applications/Alacritty.app
+    '' else ''
+      install -D extra/linux/Alacritty.desktop -t $out/share/applications/
+      install -D extra/logo/alacritty-term.svg $out/share/icons/hicolor/scalable/apps/Alacritty.svg
+      patchelf --set-rpath "${lib.makeLibraryPath rpathLibs}" $out/bin/alacritty
+    ''
+  ) + ''
 
     installShellCompletion --zsh extra/completions/_alacritty
     installShellCompletion --bash extra/completions/alacritty.bash
@@ -116,11 +125,11 @@ in buildRustPackage rec {
 
   dontPatchELF = true;
 
-  meta = with stdenv.lib; {
-    description = "GPU-accelerated terminal emulator";
-    homepage = "https://github.com/jwilm/alacritty";
+  meta = with lib; {
+    description = "A cross-platform, GPU-accelerated terminal emulator";
+    homepage = "https://github.com/alacritty/alacritty";
     license = licenses.asl20;
-    maintainers = with maintainers; [ filalex77 mic92 ];
+    maintainers = with maintainers; [ filalex77 mic92 cole-h ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/misc/archiver/default.nix b/pkgs/applications/misc/archiver/default.nix
index 8c79d867c83..64b592b7871 100644
--- a/pkgs/applications/misc/archiver/default.nix
+++ b/pkgs/applications/misc/archiver/default.nix
@@ -1,7 +1,6 @@
 { buildGoModule
 , fetchFromGitHub
-, stdenv
-, Security
+, lib
 }:
 
 buildGoModule rec {
@@ -17,9 +16,7 @@ buildGoModule rec {
 
   modSha256 = "1mrfqhd0zb78rlqlj2ncb0srwjfl7rzhy2p9mwa82pgysvlp08gv";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Easily create & extract archives, and compress & decompress files of various formats";
     homepage = "https://github.com/mholt/archiver";
     license = licenses.mit;
diff --git a/pkgs/applications/misc/buku/default.nix b/pkgs/applications/misc/buku/default.nix
index 98f6e2895d1..8ca6d9ae045 100644
--- a/pkgs/applications/misc/buku/default.nix
+++ b/pkgs/applications/misc/buku/default.nix
@@ -1,14 +1,14 @@
 { stdenv, python3, fetchFromGitHub }:
 
 with python3.pkgs; buildPythonApplication rec {
-  version = "4.2.2";
+  version = "4.3";
   pname = "buku";
 
   src = fetchFromGitHub {
     owner = "jarun";
     repo = "buku";
     rev = "v${version}";
-    sha256 = "1wy5i1av1s98yr56ybiq66kv0vg48zci3fp91zfgj04nh2966w1w";
+    sha256 = "1cq508ymak3g5fhi1n4bdiiqkc86s2l3k4dvzw842vv2x0441cac";
   };
 
   checkInputs = [
@@ -31,6 +31,7 @@ with python3.pkgs; buildPythonApplication rec {
     flask-api
     flask-bootstrap
     flask-paginate
+    flask-reverse-proxy-fix
     flask_wtf
     arrow
     werkzeug
diff --git a/pkgs/applications/misc/calcurse/default.nix b/pkgs/applications/misc/calcurse/default.nix
index 8f8934cb084..ce3a2c0a271 100644
--- a/pkgs/applications/misc/calcurse/default.nix
+++ b/pkgs/applications/misc/calcurse/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "calcurse";
-  version = "4.5.1";
+  version = "4.6.0";
 
   src = fetchurl {
     url = "https://calcurse.org/files/${pname}-${version}.tar.gz";
-    sha256 = "0cgkd285x5pk62lmdx9fjxl46c5lj8wj2cqbxq7d99yb4il5fdjk";
+    sha256 = "0hzhdpkkn75jlymanwzl69hrrf1pw29hrchr11wlxqjpl43h62gs";
   };
 
   buildInputs = [ ncurses gettext python3 python3Packages.wrapPython ];
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
       customized to suit user needs and a very powerful set of command line options can
       be used to filter and format appointments, making it suitable for use in scripts.
     '';
-    homepage = http://calcurse.org/;
+    homepage = "http://calcurse.org/";
     license = licenses.bsd2;
     platforms = platforms.linux;
   };
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index e29a8ebfd19..bc3f846ad6c 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -166,6 +166,7 @@ mkDerivation rec {
   disallowedReferences = [ podofo.dev ];
 
   calibreDesktopItem = makeDesktopItem {
+    fileValidation = false; # fails before substitution
     name = "calibre-gui";
     desktopName = "calibre";
     exec = "@out@/bin/calibre --detach %F";
@@ -212,6 +213,7 @@ mkDerivation rec {
   };
 
   ebookEditDesktopItem = makeDesktopItem {
+    fileValidation = false; # fails before substitution
     name = "calibre-edit-book";
     desktopName = "Edit E-book";
     genericName = "E-book Editor";
@@ -224,6 +226,7 @@ mkDerivation rec {
   };
 
   ebookViewerDesktopItem = makeDesktopItem {
+    fileValidation = false; # fails before substitution
     name = "calibre-ebook-viewer";
     desktopName = "E-book Viewer";
     genericName = "E-book Viewer";
diff --git a/pkgs/applications/misc/cheat/default.nix b/pkgs/applications/misc/cheat/default.nix
index d4d0643bfdc..b4765c0aae3 100644
--- a/pkgs/applications/misc/cheat/default.nix
+++ b/pkgs/applications/misc/cheat/default.nix
@@ -1,24 +1,31 @@
-{ stdenv, fetchFromGitHub, buildGoModule }:
+{ stdenv, fetchFromGitHub
+, buildGoModule, installShellFiles }:
 
 buildGoModule rec {
   pname = "cheat";
-  version = "3.0.7";
+  version = "3.9.0";
 
   src = fetchFromGitHub {
-    owner = "chrisallenlane";
+    owner = "cheat";
     repo = "cheat";
     rev = version;
-    sha256 = "0i5j85ciimk14kndb81qxny1ksr57sr9xdvjn7x1ibc7h6pikjn5";
+    sha256 = "0jbqflkcfdrinx1lk45klm8ml0n4cgp43nzls1376cd3hfayby1y";
   };
 
   subPackages = [ "cmd/cheat" ];
 
-  modSha256 = "1v9hvxygwvqma2j5yz7r95g34xpwb0n29hm39i89vgmvl3hy67s0";
+  nativeBuildInputs = [ installShellFiles ];
+
+  postInstall = ''
+    installShellCompletion scripts/cheat.{bash,fish,zsh}
+  '';
+
+  modSha256 = "1is19qca5wgzya332rmpk862nnivxzgxchkllv629f5fwwdvdgmg";
 
   meta = with stdenv.lib; {
     description = "Create and view interactive cheatsheets on the command-line";
     maintainers = with maintainers; [ mic92 ];
     license = with licenses; [ gpl3 mit ];
-    homepage = "https://github.com/chrisallenlane/cheat";
+    inherit (src.meta) homepage;
   };
 }
diff --git a/pkgs/applications/misc/cherrytree/default.nix b/pkgs/applications/misc/cherrytree/default.nix
index eec2b9dd24a..72279e84909 100644
--- a/pkgs/applications/misc/cherrytree/default.nix
+++ b/pkgs/applications/misc/cherrytree/default.nix
@@ -2,11 +2,11 @@
 
 pythonPackages.buildPythonApplication rec {
   pname = "cherrytree";
-  version = "0.39.0";
+  version = "0.39.1";
 
   src = fetchurl {
     url = "https://www.giuspen.com/software/${pname}-${version}.tar.xz";
-    sha256 = "07ibr891qix7xa2sk6fdxdsji8q56c1wf786mxaz77500m0xfx4m";
+    sha256 = "0qhycblnixvbybzr8psgmgcpfs6jc9m0p2h9lmd5zmiaggqlcsv7";
   };
 
   nativeBuildInputs = [ gettext ];
diff --git a/pkgs/applications/misc/clipit/default.nix b/pkgs/applications/misc/clipit/default.nix
index 129516a4498..82d6272aadc 100644
--- a/pkgs/applications/misc/clipit/default.nix
+++ b/pkgs/applications/misc/clipit/default.nix
@@ -1,20 +1,41 @@
-{ fetchurl, stdenv, intltool, pkgconfig, gtk2, xdotool }:
+{ fetchFromGitHub, fetchpatch, stdenv
+, autoreconfHook, intltool, pkgconfig
+, gtk3, xdotool, which, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "clipit";
-  version = "1.4.2";
+  version = "1.4.4";
 
-  src = fetchurl {
-    url = "https://github.com/downloads/shantzu/ClipIt/${pname}-${version}.tar.gz";
-    sha256 = "0jrwn8qfgb15rwspdp1p8hb1nc0ngmpvgr87d4k3lhlvqg2cfqva";
+  src = fetchFromGitHub {
+    owner = "shantzu";
+    repo = "ClipIt";
+    rev = "v${version}";
+    sha256 = "05xi29v2y0rvb33fmvrz7r9j4l858qj7ngwd7dp4pzpkkaybjln0";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ intltool gtk2 xdotool ];
+  patches = [
+   # gtk3 support, can be removed in the next release
+   (fetchpatch {
+     url = "https://github.com/CristianHenzel/ClipIt/commit/22e012c7d406436e1785b6dd3c4c138b25f68431.patch";
+     sha256 = "0la4gc324dzxpx6nk2lqg5fmjgjpm2pyvzwddmfz1il8hqvrqg3j";
+   })
+  ];
+
+  preConfigure = ''
+    intltoolize --copy --force --automake
+  '';
+
+  nativeBuildInputs = [ pkgconfig wrapGAppsHook autoreconfHook intltool ];
+  configureFlags = [ "--with-gtk3" ];
+  buildInputs = [ gtk3 ];
+
+  gappsWrapperArgs = [
+    "--prefix" "PATH" ":" "${stdenv.lib.makeBinPath [ xdotool which ]}"
+  ];
 
   meta = with stdenv.lib; {
     description = "Lightweight GTK Clipboard Manager";
-    homepage    = "http://clipit.rspwn.com";
+    inherit (src.meta) homepage;
     license     = licenses.gpl3;
     platforms   = platforms.linux;
   };
diff --git a/pkgs/applications/misc/clipmenu/default.nix b/pkgs/applications/misc/clipmenu/default.nix
index 7577c0a3db9..4bc56f0c452 100644
--- a/pkgs/applications/misc/clipmenu/default.nix
+++ b/pkgs/applications/misc/clipmenu/default.nix
@@ -4,13 +4,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "clipmenu";
-  version = "5.6.0";
+  version = "6.0.1";
 
   src = fetchFromGitHub {
     owner  = "cdown";
     repo   = "clipmenu";
     rev    = version;
-    sha256 = "13hyarzazh6j33d808h3s5yk320wqzivc0ni9xm8kalvn4k3a0bq";
+    sha256 = "0053j4i14lz5m2bzc5sch5id5ilr1bl196mp8fp0q8x74w3vavs9";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/misc/cura/lulzbot/curaengine-openmp-compat.patch b/pkgs/applications/misc/cura/lulzbot/curaengine-openmp-compat.patch
new file mode 100644
index 00000000000..3826e92440f
--- /dev/null
+++ b/pkgs/applications/misc/cura/lulzbot/curaengine-openmp-compat.patch
@@ -0,0 +1,47 @@
+# Notes by Charles Duffy <charles@dyfis.net> --
+#
+# - The new version of OpenMP does not allow outside variables to be referenced
+#   *at all* without an explicit declaration of how they're supposed to be
+#   handled. Thus, this was an outright build failure beforehand. The new
+#   pragmas copy the initial value from the outer scope into each parallel
+#   thread. Since these variables are all constant within the loops, this is
+#   clearly correct. (Not sure it's *optimal*, but quite sure it isn't
+#   *wrong*).
+# - Upstream has been contacted -- I'm a Lulzbot customer with an active
+#   support contract and sent them the patch. That said, they're in the middle
+#   of some major corporate churn (sold themselves out of near-bankruptcy to an
+#   out-of-state business entity formed as a holding company; moved to that
+#   state; have been slowly restaffing after), so a response may take a while.
+# - The patch is purely my own work.
+
+--- curaengine/src/support.cpp.orig	2020-03-28 10:38:01.953912363 -0500
++++ curaengine/src/support.cpp	2020-03-28 10:45:28.999791908 -0500
+@@ -854,7 +854,7 @@
+     const double tan_angle = tan(angle) - 0.01;  // the XY-component of the supportAngle
+     xy_disallowed_per_layer[0] = storage.getLayerOutlines(0, false).offset(xy_distance);
+     // for all other layers (of non support meshes) compute the overhang area and possibly use that when calculating the support disallowed area
+-    #pragma omp parallel for default(none) shared(xy_disallowed_per_layer, storage, mesh) schedule(dynamic)
++    #pragma omp parallel for default(none) firstprivate(layer_count, is_support_mesh_place_holder, use_xy_distance_overhang, z_distance_top, tan_angle, xy_distance, xy_distance_overhang) shared(xy_disallowed_per_layer, storage, mesh) schedule(dynamic)
+     for (unsigned int layer_idx = 1; layer_idx < layer_count; layer_idx++)
+     {
+         Polygons outlines = storage.getLayerOutlines(layer_idx, false);
+@@ -1054,7 +1054,7 @@
+         const int max_checking_layer_idx = std::min(static_cast<int>(storage.support.supportLayers.size())
+                                                   , static_cast<int>(layer_count - (layer_z_distance_top - 1)));
+         const size_t max_checking_idx_size_t = std::max(0, max_checking_layer_idx);
+-#pragma omp parallel for default(none) shared(support_areas, storage) schedule(dynamic)
++#pragma omp parallel for default(none) firstprivate(max_checking_idx_size_t, layer_z_distance_top) shared(support_areas, storage) schedule(dynamic)
+         for (size_t layer_idx = 0; layer_idx < max_checking_idx_size_t; layer_idx++)
+         {
+             support_areas[layer_idx] = support_areas[layer_idx].difference(storage.getLayerOutlines(layer_idx + layer_z_distance_top - 1, false));
+--- curaengine/src/layerPart.cpp.orig	2020-03-28 10:36:40.381023651 -0500
++++ curaengine/src/layerPart.cpp	2020-03-28 10:39:54.584140465 -0500
+@@ -49,7 +49,7 @@
+ {
+     const auto total_layers = slicer->layers.size();
+     assert(mesh.layers.size() == total_layers);
+-#pragma omp parallel for default(none) shared(mesh, slicer) schedule(dynamic)
++#pragma omp parallel for default(none) firstprivate(total_layers) shared(mesh, slicer) schedule(dynamic)
+     for (unsigned int layer_nr = 0; layer_nr < total_layers; layer_nr++)
+     {
+         SliceLayer& layer_storage = mesh.layers[layer_nr];
diff --git a/pkgs/applications/misc/cura/lulzbot/curaengine.nix b/pkgs/applications/misc/cura/lulzbot/curaengine.nix
index aad9b9bee89..d7a9b63bbbf 100644
--- a/pkgs/applications/misc/cura/lulzbot/curaengine.nix
+++ b/pkgs/applications/misc/cura/lulzbot/curaengine.nix
@@ -1,6 +1,6 @@
-{ stdenv, callPackage, fetchgit, fetchpatch, cmake, libarcusLulzbot, stb, protobuf }:
+{ gcc8Stdenv, callPackage, fetchgit, fetchpatch, cmake, libarcusLulzbot, stb, protobuf }:
 
-stdenv.mkDerivation rec {
+gcc8Stdenv.mkDerivation rec {
   pname = "curaengine-lulzBot";
   version = "3.6.21";
 
@@ -10,12 +10,14 @@ stdenv.mkDerivation rec {
     sha256 = "0wdkvg1hmqp1gaym804lw09x4ngf5ffasd861jhflpy7djbmkfn8";
   };
 
+  patches = [ ./curaengine-openmp-compat.patch ];
+
   nativeBuildInputs = [ cmake ];
   buildInputs = [ libarcusLulzbot stb protobuf ];
 
   cmakeFlags = [ "-DCURA_ENGINE_VERSION=${version}" ];
 
-  meta = with stdenv.lib; {
+  meta = with gcc8Stdenv.lib; {
     description = "A powerful, fast and robust engine for processing 3D models into 3D printing instruction";
     homepage = https://code.alephobjects.com/source/curaengine-lulzbot/;
     license = licenses.agpl3;
@@ -23,4 +25,3 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ chaduffy ];
   };
 }
-
diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix
index 9ff70af73dd..64c3f8ac282 100644
--- a/pkgs/applications/misc/dbeaver/default.nix
+++ b/pkgs/applications/misc/dbeaver/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   pname = "dbeaver-ce";
-  version = "7.0.0";
+  version = "7.0.2";
 
   desktopItem = makeDesktopItem {
     name = "dbeaver";
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
-    sha256 = "1fnvwndzny51z0zmdnlafdcxawsyz435g712mc4bjjj29qy0inzm";
+    sha256 = "0p75kvs9ng5i5x5cpdqxlf18y3k83pqsvrkab0i1azk3x4lfkzmd";
   };
 
   installPhase = ''
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://dbeaver.io/;
+    homepage = "https://dbeaver.io/";
     description = "Universal SQL Client for developers, DBA and analysts. Supports MySQL, PostgreSQL, MariaDB, SQLite, and more";
     longDescription = ''
       Free multi-platform database tool for developers, SQL programmers, database
diff --git a/pkgs/applications/misc/ddgr/default.nix b/pkgs/applications/misc/ddgr/default.nix
index 7d211b26a42..c4639150dd4 100644
--- a/pkgs/applications/misc/ddgr/default.nix
+++ b/pkgs/applications/misc/ddgr/default.nix
@@ -1,40 +1,38 @@
-{stdenv, fetchFromGitHub, python3}:
+{ stdenv, fetchFromGitHub, python3, installShellFiles }:
 
 stdenv.mkDerivation rec {
-  version = "1.7";
+  version = "1.8";
   pname = "ddgr";
 
   src = fetchFromGitHub {
     owner = "jarun";
     repo = "ddgr";
     rev = "v${version}";
-    sha256 = "0kcl8z9w8iwn3pxay1pfahhw6vs2l1dp60yfv3i19in4ac9va7m0";
+    sha256 = "1cyaindcg2vc3ij0p6b35inr01c6ys04izxsn1h70ixhsz46qg8z";
   };
 
+  nativeBuildInputs = [ installShellFiles ];
+
   buildInputs = [ python3 ];
 
   makeFlags = [ "PREFIX=$(out)" ];
 
-  preBuild = ''
-    # Version 1.7 was released as 1.6
-    # https://github.com/jarun/ddgr/pull/95
-    sed -i "s/_VERSION_ = '1.6'/_VERSION_ = '1.7'/" ddgr
+  # Version 1.8 was released as 1.7
+  postPatch = ''
+    substituteInPlace ddgr --replace "_VERSION_ = '1.7'" "_VERSION_ = '${version}'"
   '';
 
   postInstall = ''
-    mkdir -p "$out/share/bash-completion/completions/"
-    cp "auto-completion/bash/ddgr-completion.bash" "$out/share/bash-completion/completions/"
-    mkdir -p "$out/share/fish/vendor_completions.d/"
-    cp "auto-completion/fish/ddgr.fish" "$out/share/fish/vendor_completions.d/"
-    mkdir -p "$out/share/zsh/site-functions/"
-    cp "auto-completion/zsh/_ddgr" "$out/share/zsh/site-functions/"
+    installShellCompletion --bash --name ddgr.bash auto-completion/bash/ddgr-completion.bash
+    installShellCompletion --fish auto-completion/fish/ddgr.fish
+    installShellCompletion --zsh auto-completion/zsh/_ddgr
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/jarun/ddgr;
+    homepage = "https://github.com/jarun/ddgr";
     description = "Search DuckDuckGo from the terminal";
     license = licenses.gpl3;
     maintainers = with maintainers; [ ceedubs markus1189 ];
-    platforms = platforms.unix;
+    platforms = python3.meta.platforms;
   };
 }
diff --git a/pkgs/applications/misc/devilspie2/default.nix b/pkgs/applications/misc/devilspie2/default.nix
index 5699396a084..2961baee102 100644
--- a/pkgs/applications/misc/devilspie2/default.nix
+++ b/pkgs/applications/misc/devilspie2/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
       positioned at a specific screen position, or position a window
       on a specific workspace.
     '';
-    homepage = http://www.gusnan.se/devilspie2/;
+    homepage = "https://www.gusnan.se/devilspie2/";
     license = licenses.gpl3;
     maintainers = [ maintainers.ebzzry ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/doing/Gemfile.lock b/pkgs/applications/misc/doing/Gemfile.lock
index 4d266827415..1b969869f76 100644
--- a/pkgs/applications/misc/doing/Gemfile.lock
+++ b/pkgs/applications/misc/doing/Gemfile.lock
@@ -22,4 +22,4 @@ DEPENDENCIES
   doing (= 1.0.10pre)
 
 BUNDLED WITH
-   1.14.6
+   2.1.4
diff --git a/pkgs/applications/misc/electron-cash/default.nix b/pkgs/applications/misc/electron-cash/default.nix
index 5b1cafaea32..f8405f446ad 100644
--- a/pkgs/applications/misc/electron-cash/default.nix
+++ b/pkgs/applications/misc/electron-cash/default.nix
@@ -1,14 +1,14 @@
-{ lib, fetchFromGitHub, python3Packages, qtbase, wrapQtAppsHook }:
+{ lib, fetchFromGitHub, python3Packages, qtbase, wrapQtAppsHook, secp256k1 }:
 
 python3Packages.buildPythonApplication rec {
   pname = "electron-cash";
-  version = "4.0.11";
+  version = "4.0.14";
 
   src = fetchFromGitHub {
     owner = "Electron-Cash";
     repo = "Electron-Cash";
     rev = version;
-    sha256 = "1k4zbaj0g8bgk1l5vrb835a8bqfay2707bcb4ql2vx4igcwpb680";
+    sha256 = "1dp7cj1185h6xfz6jzh0iq58zvg3wq9hl96bkgxkf5h4ygni2vm6";
   };
 
   propagatedBuildInputs = with python3Packages; [
@@ -25,6 +25,7 @@ python3Packages.buildPythonApplication rec {
     requests
     tlslite-ng
     qdarkstyle
+    stem
 
     # plugins
     keepkey
@@ -56,8 +57,14 @@ python3Packages.buildPythonApplication rec {
       --replace "Exec=electron-cash" "Exec=$out/bin/electron-cash"
   '';
 
+  # If secp256k1 wasn't added to the library path, the following warning is given:
+  #
+  #   Electron Cash was unable to find the secp256k1 library on this system.
+  #   Elliptic curve cryptography operations will be performed in slow
+  #   Python-only mode.
   postFixup = ''
-    wrapQtApp $out/bin/electron-cash
+    wrapQtApp $out/bin/electron-cash \
+      --prefix LD_LIBRARY_PATH : ${secp256k1}/lib
   '';
 
   doInstallCheck = true;
diff --git a/pkgs/applications/misc/exercism/default.nix b/pkgs/applications/misc/exercism/default.nix
index 81c2d978299..a071761599a 100644
--- a/pkgs/applications/misc/exercism/default.nix
+++ b/pkgs/applications/misc/exercism/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "exercism";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "0pg0hxrr6jjd03wbjn5y65x02md3h352mnm1gr6vyiv7hn4ws14m";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   subPackages = [ "./exercism" ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/fetchmail/default.nix b/pkgs/applications/misc/fetchmail/default.nix
index 07691b26b75..9e379009027 100644
--- a/pkgs/applications/misc/fetchmail/default.nix
+++ b/pkgs/applications/misc/fetchmail/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, openssl }:
 
 let
-  version = "6.4.2";
+  version = "6.4.3";
 in
 stdenv.mkDerivation {
   pname = "fetchmail";
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://sourceforge/fetchmail/fetchmail-${version}.tar.xz";
-    sha256 = "0c563if3kribnj771l14aj06irmrlhm61dc68w6dp7zj4qrnn7z2";
+    sha256 = "1r6k14m40ni9114i3j1lr6zwpxky6k89mycgxxg0cpdap4a0wdmh";
   };
 
   buildInputs = [ openssl ];
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
   configureFlags = [ "--with-ssl=${openssl.dev}" ];
 
   meta = {
-    homepage = https://www.fetchmail.info/;
+    homepage = "https://www.fetchmail.info/";
     description = "A full-featured remote-mail retrieval and forwarding utility";
     longDescription = ''
       A full-featured, robust, well-documented remote-mail retrieval and
diff --git a/pkgs/applications/misc/fusee-interfacee-tk/default.nix b/pkgs/applications/misc/fusee-interfacee-tk/default.nix
index d74b6565ba3..91a7b0ed37f 100644
--- a/pkgs/applications/misc/fusee-interfacee-tk/default.nix
+++ b/pkgs/applications/misc/fusee-interfacee-tk/default.nix
@@ -3,13 +3,13 @@
 let pythonEnv = python3.withPackages(ps: [ ps.tkinter ps.pyusb ]); 
 in stdenv.mkDerivation rec { 
   pname = "fusee-interfacee-tk";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchFromGitHub { 
     owner = "nh-server";
     repo = pname;
     rev = "V${version}"; 
-    sha256 = "0ycsxv71b5yvkcawxmcnmywxfvn8fdg1lyq71xdw7qrskxv5fgq7";
+    sha256 = "0ngwbwsj999flprv14xvhk7lp51nprrvcnlbnbk6y4qx5casm5md";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/misc/gallery-dl/default.nix b/pkgs/applications/misc/gallery-dl/default.nix
index d0cf9673180..791db13e423 100644
--- a/pkgs/applications/misc/gallery-dl/default.nix
+++ b/pkgs/applications/misc/gallery-dl/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "gallery_dl";
-  version = "1.13.1";
+  version = "1.13.3";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "0a5k7gcs3vn6x1f2qg3ajpqsl39pmw2hsj2srd5y2l1xw7mkkqj6";
+    sha256 = "0nhbhli45i2xhkmyj9mpg8fn1l58y2zmr6nnnnms557wpdpg112x";
   };
 
   doCheck = false;
diff --git a/pkgs/applications/misc/geoipupdate/default.nix b/pkgs/applications/misc/geoipupdate/default.nix
index 71ea8a3d43f..b7b90448e4b 100644
--- a/pkgs/applications/misc/geoipupdate/default.nix
+++ b/pkgs/applications/misc/geoipupdate/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "geoipupdate";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "1bypanvrkcqp8rk84cv2569671irgaf3cy27lcrknyina4pdvir5";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "Automatic GeoIP database updater";
     homepage = "https://github.com/maxmind/geoipupdate";
diff --git a/pkgs/applications/misc/gollum/Gemfile.lock b/pkgs/applications/misc/gollum/Gemfile.lock
index 6a705b6a9d8..4759cdcf573 100644
--- a/pkgs/applications/misc/gollum/Gemfile.lock
+++ b/pkgs/applications/misc/gollum/Gemfile.lock
@@ -1,59 +1,106 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    charlock_holmes (0.7.7)
-    diff-lcs (1.3)
-    gemojione (3.3.0)
+    backports (3.17.0)
+    concurrent-ruby (1.1.6)
+    crass (1.0.6)
+    execjs (2.7.0)
+    ffi (1.12.2)
+    gemojione (4.3.2)
       json
-    github-markup (1.7.0)
-    gitlab-grit (2.8.3)
-      charlock_holmes (~> 0.7)
-      diff-lcs (~> 1.1)
-      mime-types (>= 1.16, < 3)
-      posix-spawn (~> 0.3)
-    gollum (4.1.4)
-      gemojione (~> 3.2)
-      gollum-lib (~> 4.2, >= 4.2.10)
-      kramdown (~> 1.9.0)
+    github-markup (3.0.4)
+    gollum (5.0.1)
+      gemojione (~> 4.1)
+      gollum-lib (~> 5.0)
+      kramdown (~> 2.1.0)
+      kramdown-parser-gfm (~> 1.0.0)
       mustache (>= 0.99.5, < 1.0.0)
-      sinatra (~> 1.4, >= 1.4.4)
+      octicons (~> 8.5)
+      rss (~> 0.2.9)
+      sass (~> 3.5)
+      sinatra (~> 2.0)
+      sinatra-contrib (~> 2.0)
+      sprockets (~> 3.7)
+      sprockets-helpers (~> 1.2)
+      therubyrhino (~> 2.1.0)
+      uglifier (~> 3.2)
       useragent (~> 0.16.2)
-    gollum-grit_adapter (1.0.1)
-      gitlab-grit (~> 2.7, >= 2.7.1)
-    gollum-lib (4.2.10)
-      gemojione (~> 3.2)
-      github-markup (~> 1.6)
-      gollum-grit_adapter (~> 1.0)
-      nokogiri (>= 1.6.1, < 2.0)
-      rouge (~> 2.1)
-      sanitize (~> 2.1.1, >= 2.1.1)
-      stringex (~> 2.6)
+    gollum-lib (5.0.3)
+      gemojione (~> 4.1)
+      github-markup (~> 3.0)
+      gollum-rugged_adapter (~> 0.99.4, >= 0.99.4)
+      loofah (~> 2.3)
+      nokogiri (~> 1.8)
+      octicons (~> 8.5)
+      rouge (~> 3.1)
       twitter-text (= 1.14.7)
+    gollum-rugged_adapter (0.99.4)
+      mime-types (>= 1.15)
+      rugged (~> 0.99)
     json (2.3.0)
-    kramdown (1.9.0)
-    mime-types (2.99.3)
+    kramdown (2.1.0)
+    kramdown-parser-gfm (1.0.1)
+      kramdown (~> 2.0)
+    loofah (2.5.0)
+      crass (~> 1.0.2)
+      nokogiri (>= 1.5.9)
+    mime-types (3.3.1)
+      mime-types-data (~> 3.2015)
+    mime-types-data (3.2019.1009)
     mini_portile2 (2.4.0)
+    multi_json (1.14.1)
     mustache (0.99.8)
-    nokogiri (1.10.8)
+    mustermann (1.1.1)
+      ruby2_keywords (~> 0.0.1)
+    nokogiri (1.10.9)
       mini_portile2 (~> 2.4.0)
-    posix-spawn (0.3.13)
-    rack (1.6.13)
-    rack-protection (1.5.5)
+    octicons (8.5.0)
+      nokogiri (>= 1.6.3.1)
+    rack (2.2.2)
+    rack-protection (2.0.8.1)
       rack
-    rouge (2.2.1)
-    sanitize (2.1.1)
-      nokogiri (>= 1.4.4)
-    sinatra (1.4.8)
-      rack (~> 1.5)
-      rack-protection (~> 1.4)
-      tilt (>= 1.3, < 3)
-    stringex (2.8.5)
+    rb-fsevent (0.10.3)
+    rb-inotify (0.10.1)
+      ffi (~> 1.0)
+    rexml (3.2.4)
+    rouge (3.17.0)
+    rss (0.2.9)
+      rexml
+    ruby2_keywords (0.0.2)
+    rugged (0.99.0)
+    sass (3.7.4)
+      sass-listen (~> 4.0.0)
+    sass-listen (4.0.0)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
+    sinatra (2.0.8.1)
+      mustermann (~> 1.0)
+      rack (~> 2.0)
+      rack-protection (= 2.0.8.1)
+      tilt (~> 2.0)
+    sinatra-contrib (2.0.8.1)
+      backports (>= 2.8.2)
+      multi_json
+      mustermann (~> 1.0)
+      rack-protection (= 2.0.8.1)
+      sinatra (= 2.0.8.1)
+      tilt (~> 2.0)
+    sprockets (3.7.2)
+      concurrent-ruby (~> 1.0)
+      rack (> 1, < 3)
+    sprockets-helpers (1.2.3)
+      sprockets (>= 2.2)
+    therubyrhino (2.1.2)
+      therubyrhino_jar (>= 1.7.4, < 1.7.9)
+    therubyrhino_jar (1.7.8)
     tilt (2.0.10)
     twitter-text (1.14.7)
       unf (~> 0.1.0)
+    uglifier (3.2.0)
+      execjs (>= 0.3.0, < 3)
     unf (0.1.4)
       unf_ext
-    unf_ext (0.0.7.6)
+    unf_ext (0.0.7.7)
     useragent (0.16.10)
 
 PLATFORMS
@@ -63,4 +110,4 @@ DEPENDENCIES
   gollum
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/applications/misc/gollum/default.nix b/pkgs/applications/misc/gollum/default.nix
index 251e84f04c3..9005f38f563 100644
--- a/pkgs/applications/misc/gollum/default.nix
+++ b/pkgs/applications/misc/gollum/default.nix
@@ -3,7 +3,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gollum";
-  # nix-shell -p bundix icu zlib
+  # nix-shell -p bundix icu zlib cmake pkg-config openssl
   version = (import ./gemset.nix).gollum.version;
 
   nativeBuildInputs = [ makeWrapper ];
@@ -20,13 +20,16 @@ stdenv.mkDerivation rec {
     mkdir -p $out/bin
     makeWrapper ${env}/bin/gollum $out/bin/gollum \
       --prefix PATH ":" ${stdenv.lib.makeBinPath [ git ]}
+    makeWrapper ${env}/bin/gollum-migrate-tags $out/bin/gollum-migrate-tags \
+      --prefix PATH ":" ${stdenv.lib.makeBinPath [ git ]}
   '';
 
   passthru.updateScript = bundlerUpdateScript "gollum";
 
   meta = with stdenv.lib; {
-    description = "A simple, Git-powered wiki";
-    homepage = https://github.com/gollum/gollum;
+    description = "A simple, Git-powered wiki with a sweet API and local frontend";
+    homepage = "https://github.com/gollum/gollum";
+    changelog = "https://github.com/gollum/gollum/blob/v${version}/HISTORY.md";
     license = licenses.mit;
     maintainers = with maintainers; [ jgillich primeos nicknovitski ];
     platforms = platforms.unix;
diff --git a/pkgs/applications/misc/gollum/gemset.nix b/pkgs/applications/misc/gollum/gemset.nix
index 7ce1d853f36..3febcea2f9a 100644
--- a/pkgs/applications/misc/gollum/gemset.nix
+++ b/pkgs/applications/misc/gollum/gemset.nix
@@ -1,88 +1,107 @@
 {
-  charlock_holmes = {
+  backports = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hybw8jw9ryvz5zrki3gc9r88jqy373m6v46ynxsdzv1ysiyr40p";
+      sha256 = "13ywgyyxzlgks7nb17gwqjmdqjjmhc8si3iliv8jhf51lb3s865v";
       type = "gem";
     };
-    version = "0.7.7";
+    version = "3.17.0";
   };
-  diff-lcs = {
+  concurrent-ruby = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza";
+      sha256 = "094387x4yasb797mv07cs3g6f08y56virc2rjcpb1k79rzaj3nhl";
       type = "gem";
     };
-    version = "1.3";
+    version = "1.1.6";
   };
-  gemojione = {
-    dependencies = ["json"];
+  crass = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ayk8r147k1s38nj18pwk76npx1p7jhi86silk800nj913pjvrhj";
+      sha256 = "0pfl5c0pyqaparxaqxi6s4gfl21bdldwiawrc0aknyvflli60lfw";
       type = "gem";
     };
-    version = "3.3.0";
+    version = "1.0.6";
   };
-  github-markup = {
+  execjs = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17g6g18gdjg63k75sfwiskjzl9i0hfcnrkcpb4fwrnb20v3jgswp";
+      sha256 = "1yz55sf2nd3l666ms6xr18sm2aggcvmb8qr3v53lr4rir32y1yp1";
       type = "gem";
     };
-    version = "1.7.0";
+    version = "2.7.0";
   };
-  gitlab-grit = {
-    dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
+  ffi = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xvcizc4856xlvara1zzwl6j61vxxshzcrdagp58xzfl68vbi63p";
+      sha256 = "10lfhahnnc91v63xpvk65apn61pib086zha3z5sp1xk9acfx12h4";
       type = "gem";
     };
-    version = "2.8.3";
+    version = "1.12.2";
   };
-  gollum = {
-    dependencies = ["gemojione" "gollum-lib" "kramdown" "mustache" "sinatra" "useragent"];
+  gemojione = {
+    dependencies = ["json"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ik1b0f73lcxfwfml1h84dp6br79g0z9v6x54wvl46n9d1ndrhl7";
+      sha256 = "097mrsahv1h67kjrk1cpiqc1cbrfgvlp2rqwmzdzxrq0kx50461w";
       type = "gem";
     };
-    version = "4.1.4";
+    version = "4.3.2";
   };
-  gollum-grit_adapter = {
-    dependencies = ["gitlab-grit"];
+  github-markup = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0fcibm63v1afc0fj5rki0mm51m7nndil4cjcjjvkh3yigfn4nr4b";
+      sha256 = "14991x92v8s60hfqv7162jfmdqa20fifn2bz0km3k5cgi01pf9rs";
       type = "gem";
     };
-    version = "1.0.1";
+    version = "3.0.4";
+  };
+  gollum = {
+    dependencies = ["gemojione" "gollum-lib" "kramdown" "kramdown-parser-gfm" "mustache" "octicons" "rss" "sass" "sinatra" "sinatra-contrib" "sprockets" "sprockets-helpers" "therubyrhino" "uglifier" "useragent"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1f9p1230xmrvcb7ii2gkcvhpgcaqvvd47gy3c58nn730jkv471dr";
+      type = "gem";
+    };
+    version = "5.0.1";
   };
   gollum-lib = {
-    dependencies = ["gemojione" "github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex" "twitter-text"];
+    dependencies = ["gemojione" "github-markup" "gollum-rugged_adapter" "loofah" "nokogiri" "octicons" "rouge" "twitter-text"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1699wiir6f2a8yawk3qg0xn3zdc10mz783v53ri1ivfnzdrm3dvf";
+      sha256 = "0r59fyf7i4rlp6wj9ilnqd9pmgpkafv0yl4jmrxa6hr2p4cmnf1g";
       type = "gem";
     };
-    version = "4.2.10";
+    version = "5.0.3";
+  };
+  gollum-rugged_adapter = {
+    dependencies = ["mime-types" "rugged"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0016yfac3b3sy34k9wrqg422mjm8cpd1jd1m4gdn4x2d4jxhxkzq";
+      type = "gem";
+    };
+    version = "0.99.4";
   };
   json = {
     groups = ["default"];
@@ -99,20 +118,53 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12sral2xli39mnr4b9m2sxdlgam4ni0a1mkxawc5311z107zj3p0";
+      sha256 = "1dl840bvx8d9nq6lg3mxqyvbiqnr6lk3jfsm6r8zhz7p5srmd688";
+      type = "gem";
+    };
+    version = "2.1.0";
+  };
+  kramdown-parser-gfm = {
+    dependencies = ["kramdown"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ykna2apphld9llmjnz0210fipp4fkmj2ja18l7iz9xikg0h0ihi";
       type = "gem";
     };
-    version = "1.9.0";
+    version = "1.0.1";
+  };
+  loofah = {
+    dependencies = ["crass" "nokogiri"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jk9fgn5ayzbqvzqm11gbkqvas77zdbpkvynlylyiwynclgrn040";
+      type = "gem";
+    };
+    version = "2.5.0";
   };
   mime-types = {
+    dependencies = ["mime-types-data"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "03j98xr0qw2p2jkclpmk7pm29yvmmh0073d8d43ajmr0h3w7i5l9";
+      sha256 = "1zj12l9qk62anvk9bjvandpa6vy4xslil15wl6wlivyf51z773vh";
       type = "gem";
     };
-    version = "2.99.3";
+    version = "3.3.1";
+  };
+  mime-types-data = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18x61fc36951vw7f74gq8cyybdpxvyg5d0azvqhrs82ddw3v16xh";
+      type = "gem";
+    };
+    version = "3.2019.1009";
   };
   mini_portile2 = {
     groups = ["default"];
@@ -124,6 +176,16 @@
     };
     version = "2.4.0";
   };
+  multi_json = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xy54mjf7xg41l8qrg1bqri75agdqmxap9z466fjismc1rn2jwfr";
+      type = "gem";
+    };
+    version = "1.14.1";
+  };
   mustache = {
     groups = ["default"];
     platforms = [];
@@ -134,36 +196,48 @@
     };
     version = "0.99.8";
   };
+  mustermann = {
+    dependencies = ["ruby2_keywords"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0ccm54qgshr1lq3pr1dfh7gphkilc19dp63rw6fcx7460pjwy88a";
+      type = "gem";
+    };
+    version = "1.1.1";
+  };
   nokogiri = {
     dependencies = ["mini_portile2"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1yi8j8hwrlc3rg5v3w52gxndmwifyk7m732q9yfbal0qajqbh1h8";
+      sha256 = "12j76d0bp608932xkzmfi638c7aqah57l437q8494znzbj610qnm";
       type = "gem";
     };
-    version = "1.10.8";
+    version = "1.10.9";
   };
-  posix-spawn = {
+  octicons = {
+    dependencies = ["nokogiri"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pmxmpins57qrbr31bs3bm7gidhaacmrp4md6i962gvpq4gyfcjw";
+      sha256 = "0fy6shpfmla58dxx3kb2zi1hs7vmdw6pqrksaa8yrva05s4l3y75";
       type = "gem";
     };
-    version = "0.3.13";
+    version = "8.5.0";
   };
   rack = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0wr1f3g9rc9i8svfxa9cijajl1661d817s56b2w7rd572zwn0zi0";
+      sha256 = "10mp9s48ssnw004aksq90gvhdvwczh8j6q82q2kqiqq92jd1zxbp";
       type = "gem";
     };
-    version = "1.6.13";
+    version = "2.2.2";
   };
   rack-protection = {
     dependencies = ["rack"];
@@ -171,52 +245,169 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0my0wlw4a5l3hs79jkx2xzv7djhajgf8d28k8ai1ddlnxxb0v7ss";
+      sha256 = "1zyj97bfr1shfgwk4ddmdbw0mdkm4qdyh9s1hl0k7accf3kxx1yi";
+      type = "gem";
+    };
+    version = "2.0.8.1";
+  };
+  rb-fsevent = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1lm1k7wpz69jx7jrc92w3ggczkjyjbfziq5mg62vjnxmzs383xx8";
       type = "gem";
     };
-    version = "1.5.5";
+    version = "0.10.3";
+  };
+  rb-inotify = {
+    dependencies = ["ffi"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1jm76h8f8hji38z3ggf4bzi8vps6p7sagxn3ab57qc0xyga64005";
+      type = "gem";
+    };
+    version = "0.10.1";
+  };
+  rexml = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mkvkcw9fhpaizrhca0pdgjcrbns48rlz4g6lavl5gjjq3rk2sq3";
+      type = "gem";
+    };
+    version = "3.2.4";
   };
   rouge = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "02kpahk5nkc33yxnn75649kzxaz073wvazr2zyg491nndykgnvcs";
+      sha256 = "0xl7k5paf66p57sphm4nfa4k86yf93lhdzzr0cv0l4divq12g2pr";
       type = "gem";
     };
-    version = "2.2.1";
+    version = "3.17.0";
   };
-  sanitize = {
-    dependencies = ["nokogiri"];
+  rss = {
+    dependencies = ["rexml"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1b1zx07kr64kkpm4lssd4r1a1qyr829ppmfl85i4adcvx9mqfid0";
+      type = "gem";
+    };
+    version = "0.2.9";
+  };
+  ruby2_keywords = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17pcc0wgvh3ikrkr7bm3nx0qhyiqwidd13ij0fa50k7gsbnr2p0l";
+      type = "gem";
+    };
+    version = "0.0.2";
+  };
+  rugged = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04rkxwzaa6897da3mnm70g720gpxwyh71krfn6ag1dkk80x8a8yz";
+      type = "gem";
+    };
+    version = "0.99.0";
+  };
+  sass = {
+    dependencies = ["sass-listen"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0p95lhs0jza5l7hqci1isflxakz83xkj97lkvxl919is0lwhv2w0";
+      type = "gem";
+    };
+    version = "3.7.4";
+  };
+  sass-listen = {
+    dependencies = ["rb-fsevent" "rb-inotify"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12ip1d80r0dgc621qn7c32bk12xxgkkg3w6q21s1ckxivcd7r898";
+      sha256 = "0xw3q46cmahkgyldid5hwyiwacp590zj2vmswlll68ryvmvcp7df";
       type = "gem";
     };
-    version = "2.1.1";
+    version = "4.0.0";
   };
   sinatra = {
-    dependencies = ["rack" "rack-protection" "tilt"];
+    dependencies = ["mustermann" "rack" "rack-protection" "tilt"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0riy3hwjab1mr73jcqx3brmbmwspnw3d193j06a5f0fy1w35z15q";
+      type = "gem";
+    };
+    version = "2.0.8.1";
+  };
+  sinatra-contrib = {
+    dependencies = ["backports" "multi_json" "mustermann" "rack-protection" "sinatra" "tilt"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mmrfm4pqh98f3irjpkvfpazhcx6q42bnx6bbms9dqvmck3mid28";
+      type = "gem";
+    };
+    version = "2.0.8.1";
+  };
+  sprockets = {
+    dependencies = ["concurrent-ruby" "rack"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "182jw5a0fbqah5w9jancvfmjbk88h8bxdbwnl4d3q809rpxdg8ay";
+      type = "gem";
+    };
+    version = "3.7.2";
+  };
+  sprockets-helpers = {
+    dependencies = ["sprockets"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hy67dwz76n5db00d9n3qy59ici96c2g25c9xpmp2nh8ilvha338";
+      type = "gem";
+    };
+    version = "1.2.3";
+  };
+  therubyrhino = {
+    dependencies = ["therubyrhino_jar"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0byxzl7rx3ki0xd7aiv1x8mbah7hzd8f81l65nq8857kmgzj1jqq";
+      sha256 = "034mzpkxm3zjsi4rwa45dhhgq2b9vkabs5bnzbl1d3ka7210b3fc";
       type = "gem";
     };
-    version = "1.4.8";
+    version = "2.1.2";
   };
-  stringex = {
+  therubyrhino_jar = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "15ns7j5smw04w6w7bqd5mm2qcl7w9lhwykyb974i4isgg9yc23ys";
+      sha256 = "149a5lsvn2n7k7vcfs77n836q1alv8yjh0503sf9cs65p974ah25";
       type = "gem";
     };
-    version = "2.8.5";
+    version = "1.7.8";
   };
   tilt = {
     groups = ["default"];
@@ -239,6 +430,17 @@
     };
     version = "1.14.7";
   };
+  uglifier = {
+    dependencies = ["execjs"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wmqvn4xncw6h3d5gp2a44170zwxfyj3iq4rsjp16zarvzbdmgnz";
+      type = "gem";
+    };
+    version = "3.2.0";
+  };
   unf = {
     dependencies = ["unf_ext"];
     groups = ["default"];
@@ -255,10 +457,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ll6w64ibh81qwvjx19h8nj7mngxgffg7aigjx11klvf5k2g4nxf";
+      sha256 = "0wc47r23h063l8ysws8sy24gzh74mks81cak3lkzlrw4qkqb3sg4";
       type = "gem";
     };
-    version = "0.0.7.6";
+    version = "0.0.7.7";
   };
   useragent = {
     groups = ["default"];
diff --git a/pkgs/applications/misc/gpsprune/default.nix b/pkgs/applications/misc/gpsprune/default.nix
index 9c0dc48d42e..63ca213c2c4 100644
--- a/pkgs/applications/misc/gpsprune/default.nix
+++ b/pkgs/applications/misc/gpsprune/default.nix
@@ -1,16 +1,16 @@
-{ fetchurl, stdenv, makeDesktopItem, makeWrapper, unzip, jre8 }:
+{ fetchurl, stdenv, makeDesktopItem, makeWrapper, unzip, jdk11 }:
 
 stdenv.mkDerivation rec {
   pname = "gpsprune";
-  version = "19.2";
+  version = "20";
 
   src = fetchurl {
     url = "https://activityworkshop.net/software/gpsprune/gpsprune_${version}.jar";
-    sha256 = "1q2kpkkh75b9l1x7fkmv88s8k84gzcdnrg5sgf8ih0zrp49lawg9";
+    sha256 = "1i9p6h98azgradrrkcwx18zwz4c6zkxp4bfykpa2imi1z3ry5q2b";
   };
 
   nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ jre8 ];
+  buildInputs = [ jdk11 ];
 
   desktopItem = makeDesktopItem {
     name = "gpsprune";
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   buildCommand = ''
     mkdir -p $out/bin $out/share/java
     cp -v $src $out/share/java/gpsprune.jar
-    makeWrapper ${jre8}/bin/java $out/bin/gpsprune \
+    makeWrapper ${jdk11}/bin/java $out/bin/gpsprune \
       --add-flags "-jar $out/share/java/gpsprune.jar"
     mkdir -p $out/share/applications
     cp $desktopItem/share/applications"/"* $out/share/applications
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Application for viewing, editing and converting GPS coordinate data";
-    homepage = https://activityworkshop.net/software/gpsprune/;
+    homepage = "https://activityworkshop.net/software/gpsprune/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.rycee ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/gpxsee/default.nix b/pkgs/applications/misc/gpxsee/default.nix
index 907a198ee3d..eeb76091aa8 100644
--- a/pkgs/applications/misc/gpxsee/default.nix
+++ b/pkgs/applications/misc/gpxsee/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "gpxsee";
-  version = "7.25";
+  version = "7.27";
 
   src = fetchFromGitHub {
     owner = "tumic0";
     repo = "GPXSee";
     rev = version;
-    sha256 = "0lml3hz2zxljl9j5wnh7bn9bj8k9v3wf6bk3g77x9nnarsmw0fcx";
+    sha256 = "1yillax9npmz912c6qa6yijrqrbm1gaz2h69v2ab9fb127qv4anj";
   };
 
   nativeBuildInputs = [ qmake qttools ];
diff --git a/pkgs/applications/misc/hugo/default.nix b/pkgs/applications/misc/hugo/default.nix
index 9509e895109..46abf369616 100644
--- a/pkgs/applications/misc/hugo/default.nix
+++ b/pkgs/applications/misc/hugo/default.nix
@@ -1,20 +1,20 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "hugo";
-  version = "0.68.1";
+  version = "0.68.3";
+
+  goPackagePath = "github.com/gohugoio/hugo";
 
   src = fetchFromGitHub {
     owner = "gohugoio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1h7zymvxk71jq51az4qnldk54jl9sd4zwkn5r5323xzjffwzny82";
+    sha256 = "138sv4q6f1szpkrrxnzhvxr6rrznhq1d7in0zba1pifsw3yimqq4";
   };
 
   modSha256 = "04vzm65kbj9905z4cf5yh6yc6g3b0pd5vc00lrxw84pwgqgc0ykb";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlags = [ "-tags" "extended" ];
 
   subPackages = [ "." ];
diff --git a/pkgs/applications/misc/img2pdf/default.nix b/pkgs/applications/misc/img2pdf/default.nix
index 902e9268f72..972e3b7e7b6 100644
--- a/pkgs/applications/misc/img2pdf/default.nix
+++ b/pkgs/applications/misc/img2pdf/default.nix
@@ -4,11 +4,11 @@ with python3Packages;
 
 buildPythonApplication rec {
   pname = "img2pdf";
-  version = "0.3.3";
+  version = "0.3.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1ksn33j9d9df04n4jx7dli70d700rafbm37gjaz6lwsswrzc2xwx";
+    sha256 = "0jgfk191vvxn2r6bbdknvw5v510mx9g0xrgnmcghaxkv65zjnj0b";
   };
 
   doCheck = false; # needs pdfrw
@@ -19,7 +19,7 @@ buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Convert images to PDF via direct JPEG inclusion";
-    homepage = https://gitlab.mister-muffin.de/josch/img2pdf;
+    homepage = "https://gitlab.mister-muffin.de/josch/img2pdf";
     license = licenses.lgpl2;
     platforms = platforms.unix;
     maintainers = [ maintainers.veprbl ];
diff --git a/pkgs/applications/misc/jekyll/basic/Gemfile.lock b/pkgs/applications/misc/jekyll/basic/Gemfile.lock
index 332f1bbf197..b421ea71795 100644
--- a/pkgs/applications/misc/jekyll/basic/Gemfile.lock
+++ b/pkgs/applications/misc/jekyll/basic/Gemfile.lock
@@ -98,4 +98,4 @@ DEPENDENCIES
   jemoji
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/applications/misc/jekyll/full/Gemfile.lock b/pkgs/applications/misc/jekyll/full/Gemfile.lock
index ebde3c93e21..51a835e4b9f 100644
--- a/pkgs/applications/misc/jekyll/full/Gemfile.lock
+++ b/pkgs/applications/misc/jekyll/full/Gemfile.lock
@@ -149,4 +149,4 @@ DEPENDENCIES
   yajl-ruby (~> 1.4)
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix
index 4a47437b249..eec7a066a88 100644
--- a/pkgs/applications/misc/josm/default.nix
+++ b/pkgs/applications/misc/josm/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "josm";
-  version = "15937";
+  version = "16239";
 
   src = fetchurl {
     url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar";
-    sha256 = "1mwrmhs5k3b3pvl3cmq78h8gh8zna06l4sym1a4vvlcx6j26a01f";
+    sha256 = "041n81mnd587043f8wwjv8ckbx0hlsqf3pc7hzbns1y89xdghms1";
   };
 
   buildInputs = [ jdk11 makeWrapper ];
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An extensible editor for OpenStreetMap";
-    homepage = https://josm.openstreetmap.de/;
+    homepage = "https://josm.openstreetmap.de/";
     license = licenses.gpl2Plus;
     maintainers = [ maintainers.rycee ];
     platforms = platforms.all;
diff --git a/pkgs/applications/misc/khard/default.nix b/pkgs/applications/misc/khard/default.nix
index 1c6708c51c9..0d3c9d0cbd0 100644
--- a/pkgs/applications/misc/khard/default.nix
+++ b/pkgs/applications/misc/khard/default.nix
@@ -1,12 +1,12 @@
 { stdenv, glibcLocales, python3 }:
 
 python3.pkgs.buildPythonApplication rec {
-  version = "0.15.1";
+  version = "0.16.0";
   pname = "khard";
 
   src = python3.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "18ba2xgfq8sw0bg6xmlfjpizid1hkzgswcfcc54gl21y2dwfda2w";
+    sha256 = "0a1zpkq0pplmn9flxczq2wafs6zc07r9xx9qi6dqmyv9mhy9d87f";
   };
 
   propagatedBuildInputs = with python3.pkgs; [
@@ -23,7 +23,7 @@ python3.pkgs.buildPythonApplication rec {
   '';
 
   meta = {
-    homepage = https://github.com/scheibler/khard;
+    homepage = "https://github.com/scheibler/khard";
     description = "Console carddav client";
     license = stdenv.lib.licenses.gpl3;
     maintainers = with stdenv.lib.maintainers; [ matthiasbeyer ];
diff --git a/pkgs/applications/misc/kitty/default.nix b/pkgs/applications/misc/kitty/default.nix
index f5553cac6b5..9269add3173 100644
--- a/pkgs/applications/misc/kitty/default.nix
+++ b/pkgs/applications/misc/kitty/default.nix
@@ -20,14 +20,14 @@
 with python3Packages;
 buildPythonApplication rec {
   pname = "kitty";
-  version = "0.16.0";
+  version = "0.17.2";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "kovidgoyal";
     repo = "kitty";
     rev = "v${version}";
-    sha256 = "1bszyddar0g1gdz67h8rd3gbrdhi6ahjg7j14cjiqxm1938z9ajf";
+    sha256 = "0xiwz89ynhh8aj0c9jbqfsxf129hnzs0gz4bzcparnjisq2sh3cq";
   };
 
   buildInputs = [
@@ -72,7 +72,6 @@ buildPythonApplication rec {
     })
   ] ++ stdenv.lib.optionals stdenv.isDarwin [
     ./no-lto.patch
-    ./png2icns.patch
   ];
 
   # Causes build failure due to warning
@@ -106,6 +105,7 @@ buildPythonApplication rec {
     mkdir -p "$out/share/"{bash-completion/completions,fish/vendor_completions.d,zsh/site-functions}
     "$out/bin/kitty" + complete setup fish > "$out/share/fish/vendor_completions.d/kitty.fish"
     "$out/bin/kitty" + complete setup bash > "$out/share/bash-completion/completions/kitty.bash"
+    "$out/bin/kitty" + complete setup zsh > "$out/share/zsh/site-functions/_kitty"
   '';
 
   postInstall = ''
diff --git a/pkgs/applications/misc/kitty/no-lto.patch b/pkgs/applications/misc/kitty/no-lto.patch
index 44d231cb07f..8073c11fbd2 100644
--- a/pkgs/applications/misc/kitty/no-lto.patch
+++ b/pkgs/applications/misc/kitty/no-lto.patch
@@ -1,12 +1,13 @@
 --- a/setup.py
 +++ b/setup.py
-@@ -233,9 +233,6 @@ def init_env(
+@@ -277,10 +277,6 @@ def init_env(
      cppflags += shlex.split(os.environ.get('CPPFLAGS', ''))
      cflags += shlex.split(os.environ.get('CFLAGS', ''))
      ldflags += shlex.split(os.environ.get('LDFLAGS', ''))
 -    if not debug and not sanitize:
 -        # See https://github.com/google/sanitizers/issues/647
--        cflags.append('-flto'), ldflags.append('-flto')
+-        cflags.append('-flto')
+-        ldflags.append('-flto')
 
      if profile:
          cppflags.append('-DWITH_PROFILER')
diff --git a/pkgs/applications/misc/kitty/png2icns.patch b/pkgs/applications/misc/kitty/png2icns.patch
deleted file mode 100644
index 68566e2a899..00000000000
--- a/pkgs/applications/misc/kitty/png2icns.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -aru a/setup.py b/setup.py
---- a/setup.py	2019-07-29 11:09:32.000000000 -0400
-+++ b/setup.py	2019-07-29 11:11:37.000000000 -0400
-@@ -784,9 +784,15 @@
- def create_macos_app_icon(where='Resources'):
-     logo_dir = os.path.abspath(os.path.join('logo', appname + '.iconset'))
-     subprocess.check_call([
--        'iconutil', '-c', 'icns', logo_dir, '-o',
-+        'png2icns',
-         os.path.join(where, os.path.basename(logo_dir).partition('.')[0] + '.icns')
--    ])
-+    ] + [os.path.join(logo_dir, logo) for logo in [
-+        'icon_128x128.png',
-+        'icon_16x16.png',
-+        'icon_256x256.png',
-+        'icon_32x32.png',
-+        'icon_512x512.png',
-+    ]])
- 
- 
- def create_minimal_macos_bundle(args, where):
diff --git a/pkgs/applications/misc/klayout/default.nix b/pkgs/applications/misc/klayout/default.nix
new file mode 100644
index 00000000000..78b32f7fca1
--- /dev/null
+++ b/pkgs/applications/misc/klayout/default.nix
@@ -0,0 +1,63 @@
+{ lib, mkDerivation, fetchFromGitHub, fetchpatch
+, python, ruby, qtbase, qtmultimedia, qttools, qtxmlpatterns
+, which, perl, makeWrapper, fixDarwinDylibNames
+}:
+
+mkDerivation rec {
+  pname = "klayout";
+  version = "0.26.2";
+
+  src = fetchFromGitHub {
+    owner = "KLayout";
+    repo = "klayout";
+    rev = "v${version}";
+    sha256 = "0svyqayvr45snqw0dhx6jpnjhg4qb097pz28s8k1crx5i31nnd94";
+  };
+
+  postPatch = ''
+    substituteInPlace src/klayout.pri --replace "-Wno-reserved-user-defined-literal" ""
+    patchShebangs .
+  '';
+
+  nativeBuildInputs = [
+    which
+  ];
+
+  buildInputs = [
+    python
+    ruby
+    qtbase
+    qtmultimedia
+    qttools
+    qtxmlpatterns
+  ];
+
+  buildPhase = ''
+    runHook preBuild
+    mkdir -p $out/lib
+    ./build.sh -qt5 -prefix $out/lib -j$NIX_BUILD_CORES
+    runHook postBuild
+  '';
+
+  postBuild = ''
+    mkdir $out/bin
+    mv $out/lib/klayout $out/bin/
+  '';
+
+  NIX_CFLAGS_COMPILE = [ "-Wno-parentheses" ];
+
+  dontInstall = true; # Installation already happens as part of "build.sh"
+
+  # Fix: "gsiDeclQMessageLogger.cc:126:42: error: format not a string literal
+  # and no format arguments [-Werror=format-security]"
+  hardeningDisable = [ "format" ];
+
+  meta = with lib; {
+    description = "High performance layout viewer and editor with support for GDS and OASIS";
+    license = with licenses; [ gpl3 ];
+    homepage = "https://www.klayout.de/";
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ knedlsepp ];
+  };
+}
+
diff --git a/pkgs/applications/misc/kondo/default.nix b/pkgs/applications/misc/kondo/default.nix
new file mode 100644
index 00000000000..9df4c59717c
--- /dev/null
+++ b/pkgs/applications/misc/kondo/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, rustPlatform, fetchFromGitHub }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "kondo";
+  version = "0.3";
+
+  src = fetchFromGitHub {
+    owner = "tbillington";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1rrg0xfm3vn5jh861r4ismrga673g7v6qnzl2v1haflgjhvdazwd";
+  };
+
+  cargoSha256 = "1y7g8gw9hsm997d6i99c3dj2gb8y8cgws5001n85f9bpnlvvmf9y";
+
+  meta = with stdenv.lib; {
+    description = "Save disk space by cleaning unneeded files from software projects";
+    homepage = "https://github.com/tbillington/kondo";
+    license = licenses.mit;
+    maintainers = with maintainers; [ filalex77 ];
+  };
+}
diff --git a/pkgs/applications/misc/latte-dock/default.nix b/pkgs/applications/misc/latte-dock/default.nix
index ad824b238f8..3fc5099acc2 100644
--- a/pkgs/applications/misc/latte-dock/default.nix
+++ b/pkgs/applications/misc/latte-dock/default.nix
@@ -3,11 +3,11 @@
 
 mkDerivation rec {
   pname = "latte-dock";
-  version = "0.9.9";
+  version = "0.9.10";
 
   src = fetchurl {
     url = "https://download.kde.org/stable/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "01b2zr2x5hnadkvj687lwi3l6dwq3kdn5y9k4qf1bv0sa4vw6hn9";
+    sha256 = "11s9fslr33h3ic14ifr43jphf68jpny8jmhvmrrwcz6w0p3falzw";
     name = "${pname}-${version}.tar.xz";
   };
 
diff --git a/pkgs/applications/misc/lilyterm/default.nix b/pkgs/applications/misc/lilyterm/default.nix
index e9dba4bcf46..e4f797766e0 100644
--- a/pkgs/applications/misc/lilyterm/default.nix
+++ b/pkgs/applications/misc/lilyterm/default.nix
@@ -2,40 +2,41 @@
 , pkgconfig
 , autoconf, automake, intltool, gettext
 , gtk, vte
-
 , flavour ? "stable"
 }:
 
 assert lib.assertOneOf "flavour" flavour [ "stable"  "git" ];
 
 let
+  pname = "lilyterm";
   stuff =
     if flavour == "stable"
     then rec {
         version = "0.9.9.4";
         src = fetchurl {
-          url = "https://lilyterm.luna.com.tw/file/lilyterm-${version}.tar.gz";
+          url = "https://lilyterm.luna.com.tw/file/${pname}-${version}.tar.gz";
           sha256 = "0x2x59qsxq6d6xg5sd5lxbsbwsdvkwqlk17iw3h4amjg3m1jc9mp";
         };
       }
     else {
-        version = "2017-01-06";
+        version = "2019-07-25";
         src = fetchFromGitHub {
           owner = "Tetralet";
-          repo = "lilyterm";
-          rev = "20cce75d34fd24901c9828469d4881968183c389";
-          sha256 = "0am0y65674rfqy69q4qz8izb8cq0isylr4w5ychi40jxyp68rkv2";
+          repo = pname;
+          rev = "faf1254f46049edfb1fd6e9191e78b1b23b9c51d";
+          sha256 = "054450gk237c62b677365bcwrijr63gd9xm8pv68br371wdzylz7";
         };
       };
 
 in
-stdenv.mkDerivation {
-  pname = "lilyterm";
+with stdenv.lib;
+stdenv.mkDerivation rec {
+  inherit pname;
 
   inherit (stuff) src version;
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ autoconf automake intltool gettext gtk vte ];
+  nativeBuildInputs = [ pkgconfig autoconf automake intltool gettext ];
+  buildInputs = [ gtk vte ];
 
   preConfigure = "sh autogen.sh";
 
diff --git a/pkgs/applications/misc/lutris/chrootenv.nix b/pkgs/applications/misc/lutris/chrootenv.nix
index a3a5d0ce751..6f8d690779b 100644
--- a/pkgs/applications/misc/lutris/chrootenv.nix
+++ b/pkgs/applications/misc/lutris/chrootenv.nix
@@ -103,7 +103,7 @@ in buildFHSUserEnv {
 
     # WINE
     cups lcms2 mpg123 cairo unixODBC samba4 sane-backends openldap
-    ocl-icd utillinux
+    ocl-icd utillinux libkrb5
 
     # Winetricks
     fribidi
diff --git a/pkgs/applications/misc/lutris/default.nix b/pkgs/applications/misc/lutris/default.nix
index 6cd5c6d204e..297596b8e39 100644
--- a/pkgs/applications/misc/lutris/default.nix
+++ b/pkgs/applications/misc/lutris/default.nix
@@ -1,7 +1,7 @@
 { buildPythonApplication, lib, fetchFromGitHub, fetchpatch
 , wrapGAppsHook, gobject-introspection, gnome-desktop, libnotify, libgnome-keyring, pango
 , gdk-pixbuf, atk, webkitgtk, gst_all_1
-, evdev, pyyaml, pygobject3, requests, pillow
+, dbus-python, evdev, pyyaml, pygobject3, requests, pillow
 , xrandr, pciutils, psmisc, glxinfo, vulkan-tools, xboxdrv, pulseaudio, p7zip, xgamma
 , libstrangle, wine, fluidsynth, xorgserver
 }:
@@ -31,22 +31,15 @@ let
 
 in buildPythonApplication rec {
   pname = "lutris-original";
-  version = "0.5.4";
+  version = "0.5.5";
 
   src = fetchFromGitHub {
     owner = "lutris";
     repo = "lutris";
     rev = "v${version}";
-    sha256 = "0i4i6g3pys1vf2q1pbs1fkywgapj4qfxrjrvim98hzw9al4l06y9";
+    sha256 = "1g093g0difnkjmnm91p20issdsxn9ri4c56zzddj5wfrbmhwdfag";
   };
 
-  patches = [(
-    fetchpatch {
-      url = "https://github.com/lutris/lutris/pull/2558.patch";
-      sha256 = "1wbsplri5ii06gzv6mzhiic61zkgsp9bkjkaknkd83203p0i9b2d";
-    }
-  )];
-
   buildInputs = [
     wrapGAppsHook gobject-introspection gnome-desktop libnotify libgnome-keyring pango
     gdk-pixbuf atk webkitgtk
@@ -57,7 +50,7 @@ in buildPythonApplication rec {
   ];
 
   propagatedBuildInputs = [
-    evdev pyyaml pygobject3 requests pillow
+    evdev pyyaml pygobject3 requests pillow dbus-python
   ];
 
   preCheck = "export HOME=$PWD";
diff --git a/pkgs/applications/misc/mediainfo/default.nix b/pkgs/applications/misc/mediainfo/default.nix
index f084d17e389..1ed1ef4afb5 100644
--- a/pkgs/applications/misc/mediainfo/default.nix
+++ b/pkgs/applications/misc/mediainfo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, libmediainfo, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "19.09";
+  version = "20.03";
   pname = "mediainfo";
   src = fetchurl {
     url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
-    sha256 = "1a2ssklg12sjsw09y8my9kf35mizi3zj7w002nspcmw28apb1x82";
+    sha256 = "1f1shnycf0f1fwka9k9s250l228xjkg0k4k73h8bpld8msighgnw";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
       MediaInfo is a convenient unified display of the most relevant technical
       and tag data for video and audio files.
     '';
-    homepage = https://mediaarea.net/;
+    homepage = "https://mediaarea.net/";
     license = licenses.bsd2;
     platforms = platforms.unix;
     maintainers = [ maintainers.devhell ];
diff --git a/pkgs/applications/misc/minder/default.nix b/pkgs/applications/misc/minder/default.nix
index 7b6be997ffa..fd1aa050fe7 100644
--- a/pkgs/applications/misc/minder/default.nix
+++ b/pkgs/applications/misc/minder/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "minder";
-  version = "1.6.0";
+  version = "1.7.2";
 
   src = fetchFromGitHub {
     owner = "phase1geo";
     repo = pname;
     rev = version;
-    sha256 = "0zma6hjx0068ih7fagb1gg5cgci0ccc764sd8qw6iglg61aihpx7";
+    sha256 = "0pfp0dglj2ig2p1h000137dxw777mjvzzqj3gcnbxjxqz3m6fzc0";
   };
 
   nativeBuildInputs = [ pkgconfig meson ninja python3 wrapGAppsHook vala shared-mime-info ];
diff --git a/pkgs/applications/misc/moolticute/default.nix b/pkgs/applications/misc/moolticute/default.nix
index e3154b7cd1c..0a54bc98bb9 100644
--- a/pkgs/applications/misc/moolticute/default.nix
+++ b/pkgs/applications/misc/moolticute/default.nix
@@ -9,13 +9,13 @@
 
 mkDerivation rec {
   pname = "moolticute";
-  version = "0.42.32-testing";
+  version = "0.43.3";
 
   src = fetchFromGitHub {
     owner = "mooltipass";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1kx1p2h65dilj1pbzf36d1mxwym19kvln1sqg8fb7na8q7lk4b05";
+    sha256 = "0kl7wksiqmy0hqbg6xwmzqfn3l17if2hiw7xc9x067x9rviyxrl3";
   };
 
   outputs = [ "out" "udev" ];
diff --git a/pkgs/applications/misc/mwic/default.nix b/pkgs/applications/misc/mwic/default.nix
index 249d9ff1d40..688ec16b155 100644
--- a/pkgs/applications/misc/mwic/default.nix
+++ b/pkgs/applications/misc/mwic/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, pythonPackages }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.7";
+  version = "0.7.8";
   pname = "mwic";
 
   src = fetchurl {
     url = "https://github.com/jwilk/mwic/releases/download/${version}/${pname}-${version}.tar.gz";
-    sha256 = "0l4anwiiqclymx0awwn4hzaj8n26ycg8nz76wjphsyscn7z2awad";
+    sha256 = "0nnhziz9v523hpciylnxfajmxabh2ig5iawzwrfpf7aww70v330x";
   };
 
   makeFlags=["PREFIX=\${out}"];
diff --git a/pkgs/applications/misc/obinskit/default.nix b/pkgs/applications/misc/obinskit/default.nix
index ff09500c43a..aa11c069a7a 100644
--- a/pkgs/applications/misc/obinskit/default.nix
+++ b/pkgs/applications/misc/obinskit/default.nix
@@ -29,11 +29,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "obinskit";
-  version = "1.1.1";
+  version = "1.1.4";
 
   src = fetchurl {
     url = "http://releases.obins.net/occ/linux/tar/ObinsKit_${version}_x64.tar.gz";
-    sha256 = "0052m4msslc4k9g3i5vl933cz5q2n1affxhnm433w4apajr8h28h";
+    sha256 = "0q422rmfn4k4ww1qlgrwdmxz4l10dxkd6piynbcw5cr4i5icnh2l";
   };
 
   unpackPhase = "tar -xzf $src";
diff --git a/pkgs/applications/misc/opentx/default.nix b/pkgs/applications/misc/opentx/default.nix
index 370f88d7b47..f20d5ccdc4a 100644
--- a/pkgs/applications/misc/opentx/default.nix
+++ b/pkgs/applications/misc/opentx/default.nix
@@ -1,50 +1,38 @@
-{ stdenv, fetchFromGitHub
-, cmake, gcc-arm-embedded, binutils-arm-embedded, python
-, qt5, SDL, gtest
+{ stdenv, mkDerivation, fetchFromGitHub
+, cmake, gcc-arm-embedded, python3Packages
+, qtbase, qtmultimedia, qttranslations, SDL, gtest
 , dfu-util, avrdude
 }:
 
-let
-
-  version = "2.2.1";
-
-in stdenv.mkDerivation {
-
+mkDerivation rec {
   pname = "opentx";
-  inherit version;
+  version = "2.3.7";
 
   src = fetchFromGitHub {
     owner = "opentx";
     repo = "opentx";
-    rev = version;
-    sha256 = "01lnnkrxach21aivnx1k1iqhih02nixh8c4nk6rpw408p13him9g";
+    rev = "release/${version}";
+    sha256 = "1wl3bk7s8h20dfys1hblzxc0br9zlwhcqlghgsbn81ki0xb6jmkf";
   };
 
   enableParallelBuilding = true;
 
-  nativeBuildInputs = [
-    cmake
-    gcc-arm-embedded binutils-arm-embedded
-  ];
+  nativeBuildInputs = [ cmake gcc-arm-embedded python3Packages.pillow ];
 
-  buildInputs = with qt5; [
-    python python.pkgs.pyqt4
-    qtbase qtmultimedia qttranslations
-    SDL
-  ];
+  buildInputs = [ qtbase qtmultimedia qttranslations SDL ];
 
   postPatch = ''
-    sed -i companion/src/burnconfigdialog.cpp -e 's|/usr/.*bin/dfu-util|${dfu-util}/bin/dfu-util|'
-    sed -i companion/src/burnconfigdialog.cpp -e 's|/usr/.*bin/avrdude|${avrdude}/bin/avrdude|'
+    sed -i companion/src/burnconfigdialog.cpp \
+      -e 's|/usr/.*bin/dfu-util|${dfu-util}/bin/dfu-util|' \
+      -e 's|/usr/.*bin/avrdude|${avrdude}/bin/avrdude|'
   '';
 
   cmakeFlags = [
     "-DGTEST_ROOT=${gtest.src}/googletest"
-    "-DQT_TRANSLATIONS_DIR=${qt5.qttranslations}/translations"
+    "-DQT_TRANSLATIONS_DIR=${qttranslations}/translations"
     # XXX I would prefer to include these here, though we will need to file a bug upstream to get that changed.
     #"-DDFU_UTIL_PATH=${dfu-util}/bin/dfu-util"
     #"-DAVRDUDE_PATH=${avrdude}/bin/avrdude"
-    "-DNANO=NO"
   ];
 
   meta = with stdenv.lib; {
@@ -54,11 +42,10 @@ in stdenv.mkDerivation {
       firmware to the radio, backing up model settings, editing settings and
       running radio simulators.
     '';
-    homepage = https://open-tx.org/;
-    license = stdenv.lib.licenses.gpl2;
-    platforms = [ "i686-linux" "x86_64-linux" ];
-    maintainers = with maintainers; [ elitak ];
-    broken = true;
+    homepage = "https://www.open-tx.org/";
+    license = licenses.gpl2;
+    platforms = [ "i686-linux" "x86_64-linux" "aarch64-linux" ];
+    maintainers = with maintainers; [ elitak lopsided98 ];
   };
 
 }
diff --git a/pkgs/applications/misc/orca/default.nix b/pkgs/applications/misc/orca/default.nix
index 998d5d528e9..c19e71e10dd 100644
--- a/pkgs/applications/misc/orca/default.nix
+++ b/pkgs/applications/misc/orca/default.nix
@@ -35,13 +35,13 @@
 
 buildPythonApplication rec {
   pname = "orca";
-  version = "3.34.2";
+  version = "3.36.1";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0aaagz8mxvfigrsdbmg22q44vf5yhkbw4rh4cnizysbfvijk4dan";
+    sha256 = "07w3k0f791zd1pj9j6d27k7gk7c6hx112ngrdz18h573df5n9b61";
   };
 
   patches = [
diff --git a/pkgs/applications/misc/pdfsam-basic/default.nix b/pkgs/applications/misc/pdfsam-basic/default.nix
index d82f8e1664b..abf49f93684 100644
--- a/pkgs/applications/misc/pdfsam-basic/default.nix
+++ b/pkgs/applications/misc/pdfsam-basic/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "pdfsam-basic";
-  version = "4.1.1";
+  version = "4.1.2";
 
   src = fetchurl {
     url = "https://github.com/torakiki/pdfsam/releases/download/v${version}/pdfsam_${version}-1_amd64.deb";
-    sha256 = "17qb3l7xibhb3fbskddvparrj2cxj4kz9qbril094kxrgbvyc9gs";
+    sha256 = "1k1azxz92vkb4hylk4ki0szfn47ids0lwg01zfs54yc89j0c6142";
   };
 
   unpackPhase = ''
diff --git a/pkgs/applications/misc/prusa-slicer/default.nix b/pkgs/applications/misc/prusa-slicer/default.nix
index caf4f270a15..75183e20267 100644
--- a/pkgs/applications/misc/prusa-slicer/default.nix
+++ b/pkgs/applications/misc/prusa-slicer/default.nix
@@ -1,32 +1,34 @@
-{ stdenv, lib, fetchFromGitHub, makeWrapper, cmake, pkgconfig
+{ stdenv, lib, fetchFromGitHub, cmake, pkgconfig
 , boost, cereal, curl, eigen, expat, glew, libpng, tbb, wxGTK31
 , gtest, nlopt, xorg, makeDesktopItem
+, cgal_5, gmp, ilmbase, mpfr, qhull, openvdb, systemd
 }:
-let
-  nloptVersion = if lib.hasAttr "version" nlopt
-                 then lib.getAttr "version" nlopt
-                 else "2.4";
-in
 stdenv.mkDerivation rec {
   pname = "prusa-slicer";
-  version = "2.1.1";
+  version = "2.2.0";
 
   enableParallelBuilding = true;
 
   nativeBuildInputs = [
     cmake
-    makeWrapper
     pkgconfig
   ];
 
   buildInputs = [
     boost
     cereal
+    cgal_5
     curl
     eigen
     expat
     glew
+    gmp
+    ilmbase
     libpng
+    mpfr
+    nlopt
+    openvdb
+    systemd
     tbb
     wxGTK31
     xorg.libX11
@@ -35,31 +37,34 @@ stdenv.mkDerivation rec {
   checkInputs = [ gtest ];
 
   # The build system uses custom logic - defined in
-  # xs/src/libnest2d/cmake_modules/FindNLopt.cmake in the package source -
-  # for finding the nlopt library, which doesn't pick up the package in the nix store.
-  # We need to set the path via the NLOPT environment variable instead.
+  # cmake/modules/FindNLopt.cmake in the package source - for finding the nlopt
+  # library, which doesn't pick up the package in the nix store.  We
+  # additionally need to set the path via the NLOPT environment variable.
   NLOPT = nlopt;
 
-  # Disable compiler warnings that clutter the build log
+  # Disable compiler warnings that clutter the build log.
   # It seems to be a known issue for Eigen:
   # http://eigen.tuxfamily.org/bz/show_bug.cgi?id=1221
   NIX_CFLAGS_COMPILE = "-Wno-ignored-attributes";
 
+  # prusa-slicer uses dlopen on `libudev.so` at runtime
+  NIX_LDFLAGS = "-ludev";
+
   prePatch = ''
     # In nix ioctls.h isn't available from the standard kernel-headers package
     # like in other distributions. The copy in glibc seems to be identical to the
     # one in the kernel though, so we use that one instead.
     sed -i 's|"/usr/include/asm-generic/ioctls.h"|<asm-generic/ioctls.h>|g' src/libslic3r/GCodeSender.cpp
-  '' + lib.optionalString (lib.versionOlder "2.5" nloptVersion) ''
+
     # Since version 2.5.0 of nlopt we need to link to libnlopt, as libnlopt_cxx
     # now seems to be integrated into the main lib.
-    sed -i 's|nlopt_cxx|nlopt|g' src/libnest2d/cmake_modules/FindNLopt.cmake
+    sed -i 's|nlopt_cxx|nlopt|g' cmake/modules/FindNLopt.cmake
   '';
 
   src = fetchFromGitHub {
     owner = "prusa3d";
     repo = "PrusaSlicer";
-    sha256 = "0i393nbc2salb4j5l2hvy03ng7hmf90d2xj653pw9bsikhj0r3jd";
+    sha256 = "0954k9sm09y8qnz1jyswyysg10k54ywz8mswnwa4n2hnpq9qx73m";
     rev = "version_${version}";
   };
 
@@ -88,6 +93,6 @@ stdenv.mkDerivation rec {
     description = "G-code generator for 3D printer";
     homepage = https://github.com/prusa3d/PrusaSlicer;
     license = licenses.agpl3;
-    maintainers = with maintainers; [ tweber ];
+    maintainers = with maintainers; [ moredread tweber ];
   };
 }
diff --git a/pkgs/applications/misc/pt/Gemfile.lock b/pkgs/applications/misc/pt/Gemfile.lock
index 501fae0ef0a..dfaa018d372 100644
--- a/pkgs/applications/misc/pt/Gemfile.lock
+++ b/pkgs/applications/misc/pt/Gemfile.lock
@@ -66,4 +66,4 @@ DEPENDENCIES
   pt
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/applications/misc/pueue/default.nix b/pkgs/applications/misc/pueue/default.nix
index aac371164fa..e90a86f225b 100644
--- a/pkgs/applications/misc/pueue/default.nix
+++ b/pkgs/applications/misc/pueue/default.nix
@@ -1,23 +1,19 @@
-{ lib, rustPlatform, fetchFromGitHub, installShellFiles }:
+{ lib, rustPlatform, fetchFromGitHub }:
 
 rustPlatform.buildRustPackage rec {
   pname = "pueue";
-  version = "0.1.6";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "Nukesor";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1qp9h1xlfxwswcqi1qn2hfybxl547z13xjbvfgsx1nc8yj51bi3c";
+    sha256 = "11x4y3ah9f7mv9jssws95sw7rd20fxwdh11mrhcb4vwk59cmqsjz";
   };
 
-  nativeBuildInputs = [ installShellFiles ];
+  cargoSha256 = "06zv3li14sg4a8bgj38zzx576ggm32ss0djmys1g0h5a0nxaaqfx";
 
-  cargoSha256 = "00va292bjdp42bkqdkjqajmzc2nshhqa1fj0yfwdf3rrx4nhssjd";
-
-  postInstall = ''
-    installShellCompletion utils/completions/pueue.{bash,fish} --zsh utils/completions/_pueue
-  '';
+  checkPhase = "cargo test -- --skip test_single_huge_payload";
 
   meta = with lib; {
     description = "A daemon for managing long running shell commands";
diff --git a/pkgs/applications/misc/pydf/default.nix b/pkgs/applications/misc/pydf/default.nix
index bfbee1bea24..ae29993a79a 100644
--- a/pkgs/applications/misc/pydf/default.nix
+++ b/pkgs/applications/misc/pydf/default.nix
@@ -9,6 +9,12 @@ python3Packages.buildPythonPackage rec {
     sha256 = "7f47a7c3abfceb1ac04fc009ded538df1ae449c31203962a1471a4eb3bf21439";
   };
 
+  postInstall = ''
+    mkdir -p $out/share/man/man1 $out/share/pydf
+    install -t $out/share/pydf -m 444 pydfrc
+    install -t $out/share/man/man1 -m 444 pydf.1
+  '';
+
   meta = with stdenv.lib; {
     description = "colourised df(1)-clone";
     homepage = http://kassiopeia.juls.savba.sk/~garabik/software/pydf/;
diff --git a/pkgs/applications/misc/qcad/application-dir.patch b/pkgs/applications/misc/qcad/application-dir.patch
new file mode 100644
index 00000000000..84782e1e717
--- /dev/null
+++ b/pkgs/applications/misc/qcad/application-dir.patch
@@ -0,0 +1,35 @@
+diff --git a/src/core/RS.cpp b/src/core/RS.cpp
+index d8a135d6f..659795dbb 100644
+--- a/src/core/RS.cpp
++++ b/src/core/RS.cpp
+@@ -151,7 +151,7 @@ QStringList RS::getDirectoryList(const QString& subDirectory) {
+     dirList.append(appDir + "/../../../" + subDirectory);
+     dirList.append(QDir::currentPath() + "/" + subDirectory);
+ #else
+-    dirList.append(appDir + "/" + subDirectory);
++    dirList.append(appDir + "/../lib/" + subDirectory);
+ #endif
+ 
+     /*
+diff --git a/src/core/RSettings.cpp b/src/core/RSettings.cpp
+index c6c31cbf5..c51b59ce6 100644
+--- a/src/core/RSettings.cpp
++++ b/src/core/RSettings.cpp
+@@ -367,6 +367,8 @@ QString RSettings::getApplicationPath() {
+         ret.cdUp();
+     }
+ 
++    ret.cd("../lib");
++
+     return ret.path();
+ }
+ 
+@@ -1268,7 +1270,7 @@ QString RSettings::getRevisionString() {
+ }
+ 
+ QString RSettings::getReleaseDate() {
+-    return __DATE__;
++    return "";
+ }
+ 
+ int RSettings::getSnapRange() {
diff --git a/pkgs/applications/misc/qcad/default.nix b/pkgs/applications/misc/qcad/default.nix
new file mode 100644
index 00000000000..4f046e34b18
--- /dev/null
+++ b/pkgs/applications/misc/qcad/default.nix
@@ -0,0 +1,92 @@
+{ boost
+, fetchFromGitHub
+, mkDerivationWith
+, muparser
+, pkgconfig
+, qmake
+, qt5
+, stdenv
+, libGLU
+}:
+
+mkDerivationWith stdenv.mkDerivation rec {
+  pname = "qcad";
+  version = "3.24.2.1";
+
+  src = fetchFromGitHub {
+    owner = "qcad";
+    repo = "qcad";
+    rev = "v${version}";
+    sha256 = "1g295gljq051x09f4d8k586bkg3vs8z22dn3rxj6xrm6803z8zw2";
+  };
+
+  patches = [
+    ./application-dir.patch
+  ];
+
+  postPatch = ''
+    mkdir src/3rdparty/qt-labs-qtscriptgenerator-${qt5.qtbase.version}
+    cp \
+      src/3rdparty/qt-labs-qtscriptgenerator-5.12.3/qt-labs-qtscriptgenerator-5.12.3.pro \
+      src/3rdparty/qt-labs-qtscriptgenerator-${qt5.qtbase.version}/qt-labs-qtscriptgenerator-${qt5.qtbase.version}.pro
+  '';
+
+  qmakeFlags = [
+    "MUPARSER_DIR=${muparser}"
+    "INSTALLROOT=$(out)"
+    "BOOST_DIR=${boost.dev}"
+  ];
+
+  installPhase = ''
+    runHook preInstall
+
+    install -Dm555 -t $out/bin release/qcad-bin
+    install -Dm555 -t $out/lib release/libspatialindexnavel.so
+    install -Dm555 -t $out/lib release/libqcadcore.so
+    install -Dm555 -t $out/lib release/libqcadentity.so
+    install -Dm555 -t $out/lib release/libqcadgrid.so
+    install -Dm555 -t $out/lib release/libqcadsnap.so
+    install -Dm555 -t $out/lib release/libqcadoperations.so
+    install -Dm555 -t $out/lib release/libqcadstemmer.so
+    install -Dm555 -t $out/lib release/libqcadspatialindex.so
+    install -Dm555 -t $out/lib release/libqcadgui.so
+    install -Dm555 -t $out/lib release/libqcadecmaapi.so
+
+    install -Dm444 -t $out/share/applications qcad.desktop
+    install -Dm644 -t $out/share/pixmaps      scripts/qcad_icon.png
+
+    cp -r scripts $out/lib
+    cp -r plugins $out/lib/plugins
+    cp -r patterns $out/lib/patterns
+
+    install -Dm644 scripts/qcad_icon.svg $out/share/icons/hicolor/scalable/apps/qcad.svg
+
+    runHook postInstall
+    '';
+
+  buildInputs = [
+    boost
+    muparser
+    libGLU
+    qt5.qtbase
+    qt5.qtscript
+    qt5.qtsvg
+    qt5.qtxmlpatterns
+  ];
+
+  nativeBuildInputs = [
+    pkgconfig
+    qt5.qmake
+    qt5.qttools
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "2D CAD package based on Qt";
+    homepage = "https://qcad.org";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ yvesf ];
+    platforms = qt5.qtbase.meta.platforms;
+  };
+}
diff --git a/pkgs/applications/misc/qmapshack/default.nix b/pkgs/applications/misc/qmapshack/default.nix
index 21fbbf3253f..a3238f7cba4 100644
--- a/pkgs/applications/misc/qmapshack/default.nix
+++ b/pkgs/applications/misc/qmapshack/default.nix
@@ -3,13 +3,13 @@
 
 mkDerivation rec {
   pname = "qmapshack";
-  version = "1.14.0";
+  version = "1.14.1";
 
   src = fetchFromGitHub {
     owner = "Maproom";
     repo = pname;
     rev = "V_${version}";
-    sha256 = "07c2hrq9sn456w7l3gdr599rmjfv2k6mh159zza7p1py8r7ywksa";
+    sha256 = "0hghynb4ac98fg1pwc645zriqkghxwp8mr3jhr87pa6fh0y848py";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -30,7 +30,7 @@ mkDerivation rec {
   ];
 
   meta = with lib; {
-    homepage = https://github.com/Maproom/qmapshack;
+    homepage = "https://github.com/Maproom/qmapshack";
     description = "Consumer grade GIS software";
     license = licenses.gpl3;
     maintainers = with maintainers; [ dotlambda sikmir ];
diff --git a/pkgs/applications/misc/rofi-emoji/0001-Patch-plugindir-to-output.patch b/pkgs/applications/misc/rofi-emoji/0001-Patch-plugindir-to-output.patch
new file mode 100644
index 00000000000..9b9479b1b49
--- /dev/null
+++ b/pkgs/applications/misc/rofi-emoji/0001-Patch-plugindir-to-output.patch
@@ -0,0 +1,25 @@
+From 695e7a441fc28b874e65917fe2c0059b5b8ca749 Mon Sep 17 00:00:00 2001
+From: Cole Helbling <cole.e.helbling@outlook.com>
+Date: Sat, 28 Mar 2020 23:46:03 -0700
+Subject: [PATCH] Patch plugindir to output
+
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 75e476f..cb1ddf7 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -55,7 +55,7 @@ PKG_CHECK_MODULES([glib],     [glib-2.0 >= 2.40 gio-unix-2.0 gmodule-2.0 ])
+ PKG_CHECK_MODULES([cairo],    [cairo])
+ PKG_CHECK_MODULES([rofi],     [rofi])
+ 
+-[rofi_PLUGIN_INSTALL_DIR]="`$PKG_CONFIG --variable=pluginsdir rofi`"
++[rofi_PLUGIN_INSTALL_DIR]="`echo $out/lib/rofi`"
+ AC_SUBST([rofi_PLUGIN_INSTALL_DIR])
+ 
+ LT_INIT([disable-static])
+-- 
+2.25.1
+
diff --git a/pkgs/applications/misc/rofi-emoji/default.nix b/pkgs/applications/misc/rofi-emoji/default.nix
new file mode 100644
index 00000000000..14742da35da
--- /dev/null
+++ b/pkgs/applications/misc/rofi-emoji/default.nix
@@ -0,0 +1,69 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, fetchpatch
+, substituteAll
+, makeWrapper
+
+, autoreconfHook
+, pkgconfig
+
+, cairo
+, glib
+, libnotify
+, rofi-unwrapped
+, wl-clipboard
+, xclip
+, xsel
+}:
+
+stdenv.mkDerivation rec {
+  pname = "rofi-emoji";
+  version = "2.1.2";
+
+  src = fetchFromGitHub {
+    owner = "Mange";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0knsvsdff2c7ww94120bq92735qrfriyd28mi0n72ccb2iikyi8b";
+  };
+
+  patches = [
+    # Look for plugin-related files in $out/lib/rofi
+    ./0001-Patch-plugindir-to-output.patch
+  ];
+
+  postPatch = ''
+    patchShebangs clipboard-adapter.sh
+  '';
+
+  postFixup = ''
+    chmod +x $out/share/rofi-emoji/clipboard-adapter.sh
+    wrapProgram $out/share/rofi-emoji/clipboard-adapter.sh \
+      --prefix PATH ":" ${lib.makeBinPath [ libnotify wl-clipboard xclip xsel ]}
+  '';
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkgconfig
+  ];
+
+  buildInputs = [
+    cairo
+    glib
+    libnotify
+    makeWrapper
+    rofi-unwrapped
+    wl-clipboard
+    xclip
+    xsel
+  ];
+
+  meta = with lib; {
+    description = "An emoji selector plugin for Rofi";
+    homepage = "https://github.com/Mange/rofi-emoji";
+    license = licenses.mit;
+    maintainers = with maintainers; [ cole-h ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/misc/rofi/wrapper.nix b/pkgs/applications/misc/rofi/wrapper.nix
index 1c7284a2db2..4e69f9cce14 100644
--- a/pkgs/applications/misc/rofi/wrapper.nix
+++ b/pkgs/applications/misc/rofi/wrapper.nix
@@ -1,23 +1,26 @@
-{ stdenv, rofi-unwrapped, makeWrapper, hicolor-icon-theme, theme ? null }:
+{ symlinkJoin, lib, rofi-unwrapped, makeWrapper, hicolor-icon-theme, theme ? null, plugins ? [] }:
 
-stdenv.mkDerivation {
-  pname = "rofi";
-  version = rofi-unwrapped.version;
+symlinkJoin {
+  name = "rofi-${rofi-unwrapped.version}";
+
+  paths = [
+    rofi-unwrapped.out
+  ] ++ (lib.forEach plugins (p: p.out));
 
   buildInputs = [ makeWrapper ];
   preferLocalBuild = true;
   passthru.unwrapped = rofi-unwrapped;
-  buildCommand = ''
-    mkdir $out
-    ln -s ${rofi-unwrapped}/* $out
-    rm $out/bin
+  postBuild = ''
+    rm -rf $out/bin
     mkdir $out/bin
     ln -s ${rofi-unwrapped}/bin/* $out/bin
 
     rm $out/bin/rofi
     makeWrapper ${rofi-unwrapped}/bin/rofi $out/bin/rofi \
       --prefix XDG_DATA_DIRS : ${hicolor-icon-theme}/share \
-      ${if theme != null then ''--add-flags "-theme ${theme}"'' else ""}
+      ${lib.optionalString (plugins != []) ''--prefix XDG_DATA_DIRS : ${lib.concatStringsSep ":" (lib.forEach plugins (p: "${p.out}/share"))}''} \
+      ${lib.optionalString (theme != null) ''--add-flags "-theme ${theme}"''} \
+      ${lib.optionalString (plugins != []) ''--add-flags "-plugin-path $out/lib/rofi"''}
 
     rm $out/bin/rofi-theme-selector
     makeWrapper ${rofi-unwrapped}/bin/rofi-theme-selector $out/bin/rofi-theme-selector \
diff --git a/pkgs/applications/misc/sequeler/default.nix b/pkgs/applications/misc/sequeler/default.nix
index 4199e198c53..da7e501b271 100644
--- a/pkgs/applications/misc/sequeler/default.nix
+++ b/pkgs/applications/misc/sequeler/default.nix
@@ -11,13 +11,13 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "sequeler";
-  version = "0.7.3";
+  version = "0.7.4";
 
   src = fetchFromGitHub {
     owner = "Alecaddd";
     repo = pname;
     rev = "v${version}";
-    sha256 = "16vc3v9qls9fxg9h8fsi67z68s4acl5hj14gbcrnqm7mf3kmk3aw";
+    sha256 = "0ki8dganj6hmvg5qwdlc3y0a4pdmx7454np790yf5wnqb6ixb6gv";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig vala gettext wrapGAppsHook python3 desktop-file-utils ];
@@ -43,7 +43,7 @@ in stdenv.mkDerivation rec {
       editor with language recognition, and visualize SELECT results in a
       Gtk.Grid Widget.
     '';
-    homepage = https://github.com/Alecaddd/sequeler;
+    homepage = "https://github.com/Alecaddd/sequeler";
     license = licenses.gpl3;
     maintainers = [ maintainers.etu ] ++ pantheon.maintainers;
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/simplenote/default.nix b/pkgs/applications/misc/simplenote/default.nix
index 7ec72eae6fa..195437250a1 100644
--- a/pkgs/applications/misc/simplenote/default.nix
+++ b/pkgs/applications/misc/simplenote/default.nix
@@ -16,10 +16,10 @@ let
 
   pname = "simplenote";
 
-  version = "1.15.0";
+  version = "1.15.1";
 
   sha256 = {
-    x86_64-linux = "08h3g2rw75k63ssd62c6jrb2dy9sz85y5jpfj5np64dvw70a1811";
+    x86_64-linux = "1q1y5favj2ny0l2iq53vq39ns68zfr2z1plskxdg2d93jarvcr8x";
   }.${system} or throwSystem;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/stretchly/default.nix b/pkgs/applications/misc/stretchly/default.nix
index 75f3be85dad..9769045b9ce 100644
--- a/pkgs/applications/misc/stretchly/default.nix
+++ b/pkgs/applications/misc/stretchly/default.nix
@@ -1,177 +1,38 @@
-{ GConf
-, alsaLib
-, at-spi2-atk
-, at-spi2-core
-, atk
-, buildFHSUserEnv
-, cairo
+{ stdenv, lib, fetchurl, makeWrapper, wrapGAppsHook, electron
 , common-updater-scripts
-, coreutils
-, cups
-, dbus
-, expat
-, fetchurl
-, fontconfig
-, gdk-pixbuf
-, glib
-, gtk2
-, gtk3
-, lib
-, libX11
-, libXScrnSaver
-, libXcomposite
-, libXcursor
-, libXdamage
-, libXext
-, libXfixes
-, libXi
-, libXrandr
-, libXrender
-, libXtst
-, libappindicator
-, libdrm
-, libnotify
-, libpciaccess
-, libpng12
-, libuuid
-, libxcb
-, nspr
-, nss
-, pango
-, pciutils
-, pulseaudio
-, runtimeShell
-, stdenv
-, udev
-, wrapGAppsHook
-, writeScript
-, file
+, writeShellScript
 }:
 
-let
-  libs = [
-    GConf
-    alsaLib
-    at-spi2-atk
-    at-spi2-core
-    atk
-    cairo
-    cups
-    dbus
-    expat
-    fontconfig
-    gdk-pixbuf
-    glib
-    gtk2
-    gtk3
-    libX11
-    libXScrnSaver
-    libXcomposite
-    libXcursor
-    libXdamage
-    libXext
-    libXfixes
-    libXi
-    libXrandr
-    libXrender
-    libXtst
-    libappindicator
-    libdrm
-    libnotify
-    libpciaccess
-    libpng12
-    libuuid
-    libxcb
-    nspr
-    nss
-    pango
-    pciutils
-    pulseaudio
-    stdenv.cc.cc.lib
-    udev
-  ];
-
-  libPath = lib.makeLibraryPath libs;
-
-  stretchly =
-    stdenv.mkDerivation rec {
-      pname = "stretchly";
-      version = "0.21.0";
-
-      src = fetchurl {
-        url = "https://github.com/hovancik/stretchly/releases/download/v${version}/stretchly-${version}.tar.xz";
-        sha256 = "1gyyr22xq8s4miiacs8wqhp7lxnwvkvlwhngnq8671l62s6iyjzl";
-      };
-
-      nativeBuildInputs = [
-        wrapGAppsHook
-        coreutils
-      ];
-
-      buildInputs = libs;
-
-      dontPatchELF = true;
-      dontBuild = true;
-      dontConfigure = true;
-
-      installPhase = ''
-        mkdir -p $out/bin $out/lib/stretchly
-        cp -r ./* $out/lib/stretchly/
-        ln -s $out/lib/stretchly/stretchly $out/bin/
-      '';
+stdenv.mkDerivation rec {
+  pname = "stretchly";
+  version = "0.21.1";
 
-      preFixup = ''
-        patchelf --set-rpath "${libPath}" $out/lib/stretchly/libffmpeg.so
-        patchelf --set-rpath "${libPath}" $out/lib/stretchly/libEGL.so
-        patchelf --set-rpath "${libPath}" $out/lib/stretchly/libGLESv2.so
-        patchelf --set-rpath "${libPath}" $out/lib/stretchly/swiftshader/libEGL.so
-        patchelf --set-rpath "${libPath}" $out/lib/stretchly/swiftshader/libGLESv2.so
-
-        patchelf \
-          --set-rpath "$out/lib/stretchly:${libPath}" \
-          --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-          $out/lib/stretchly/stretchly
-
-        patchelf \
-          --set-rpath "$out/lib/stretchly:${libPath}" \
-          --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-          $out/lib/stretchly/chrome-sandbox
-      '';
+  src = fetchurl {
+    url = "https://github.com/hovancik/stretchly/releases/download/v${version}/stretchly-${version}.tar.xz";
+    sha256 = "0776pywyqylwd33m85l4wdr89x0q9xkrjgliag10fp1bswz844lf";
+  };
 
-      meta = with stdenv.lib; {
-        description = "A break time reminder app";
-        longDescription = ''
-          stretchly is a cross-platform electron app that reminds you to take
-          breaks when working on your computer. By default, it runs in your tray
-          and displays a reminder window containing an idea for a microbreak for 20
-          seconds every 10 minutes. Every 30 minutes, it displays a window
-          containing an idea for a longer 5 minute break.
-        '';
-        homepage = https://hovancik.net/stretchly;
-        downloadPage = https://hovancik.net/stretchly/downloads/;
-        license = licenses.bsd2;
-        maintainers = with maintainers; [ cdepillabout ];
-        platforms = platforms.linux;
-      };
-    };
+  nativeBuildInputs = [
+    wrapGAppsHook
+  ];
 
-in
+  installPhase = ''
+    runHook preInstall
 
-buildFHSUserEnv {
-  inherit (stretchly) meta;
+    mkdir -p $out/bin $out/share/${pname}/
+    mv resources/app.asar $out/share/${pname}/
 
-  name = "stretchly";
+    makeWrapper ${electron}/bin/electron $out/bin/${pname} \
+      --add-flags $out/share/${pname}/app.asar \
+      "''${gappsWrapperArgs[@]}" \
+      --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ stdenv.cc.cc.lib ]}"
 
-  targetPkgs = pkgs: [
-     stretchly
-  ];
+    runHook postInstall
+  '';
 
-  runScript = "stretchly";
 
   passthru = {
-    updateScript = writeScript "update-stretchly" ''
-      #!${runtimeShell}
-
+    updateScript = writeShellScript "update-stretchly" ''
       set -eu -o pipefail
 
       # get the latest release version
@@ -179,9 +40,23 @@ buildFHSUserEnv {
 
       echo "updating to $latest_version..."
 
-      ${common-updater-scripts}/bin/update-source-version stretchly.passthru.stretchlyWrapped "$latest_version"
+      ${common-updater-scripts}/bin/update-source-version stretchly "$latest_version"
     '';
+  };
 
-    stretchlyWrapped = stretchly;
+  meta = with stdenv.lib; {
+    description = "A break time reminder app";
+    longDescription = ''
+      stretchly is a cross-platform electron app that reminds you to take
+      breaks when working on your computer. By default, it runs in your tray
+      and displays a reminder window containing an idea for a microbreak for 20
+      seconds every 10 minutes. Every 30 minutes, it displays a window
+      containing an idea for a longer 5 minute break.
+    '';
+    homepage = https://hovancik.net/stretchly;
+    downloadPage = https://hovancik.net/stretchly/downloads/;
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ cdepillabout ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/misc/syncthingtray/default.nix b/pkgs/applications/misc/syncthingtray/default.nix
index 610409af7a7..16bfdfb9a03 100644
--- a/pkgs/applications/misc/syncthingtray/default.nix
+++ b/pkgs/applications/misc/syncthingtray/default.nix
@@ -20,14 +20,14 @@
 }:
 
 mkDerivation rec {
-  version = "0.10.6";
+  version = "0.10.8";
   pname = "syncthingtray";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = "syncthingtray";
     rev = "v${version}";
-    sha256 = "1lh1qsdy5081jrs27ba0mfh90ya1fj9h6j5k0cdsfap9mcxyjd9g";
+    sha256 = "1g27v109m0ar090b340x6lsrzfp85hskcr3kapc2rgdhaa0mygpd";
   };
 
   buildInputs = [ qtbase cpp-utilities qtutilities ]
diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix
index 645ed7433b3..90645c41d25 100644
--- a/pkgs/applications/misc/synergy/default.nix
+++ b/pkgs/applications/misc/synergy/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, lib, fetchFromGitHub, cmake, openssl
+{ stdenv, lib, fetchFromGitHub, cmake, openssl, qttools
 , ApplicationServices, Carbon, Cocoa, CoreServices, ScreenSaver
 , xlibsWrapper, libX11, libXi, libXtst, libXrandr, xinput, avahi-compat
 , withGUI ? true, wrapQtAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "synergy";
-  version = "1.11.0";
+  version = "1.11.1";
 
   src = fetchFromGitHub {
     owner = "symless";
@@ -43,6 +43,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     openssl
+  ] ++ lib.optionals withGUI [
+    qttools
   ] ++ lib.optionals stdenv.isDarwin [
     ApplicationServices Carbon Cocoa CoreServices ScreenSaver
   ] ++ lib.optionals stdenv.isLinux [
diff --git a/pkgs/applications/misc/taskjuggler/3.x/Gemfile.lock b/pkgs/applications/misc/taskjuggler/3.x/Gemfile.lock
index d1642e76fa6..8831993117d 100644
--- a/pkgs/applications/misc/taskjuggler/3.x/Gemfile.lock
+++ b/pkgs/applications/misc/taskjuggler/3.x/Gemfile.lock
@@ -18,4 +18,4 @@ DEPENDENCIES
   taskjuggler
 
 BUNDLED WITH
-   1.10.5
+   2.1.4
diff --git a/pkgs/applications/misc/taskjuggler/Gemfile.lock b/pkgs/applications/misc/taskjuggler/Gemfile.lock
index dcc46e370e7..0f05c496173 100644
--- a/pkgs/applications/misc/taskjuggler/Gemfile.lock
+++ b/pkgs/applications/misc/taskjuggler/Gemfile.lock
@@ -18,4 +18,4 @@ DEPENDENCIES
   taskjuggler
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/applications/misc/tilda/default.nix b/pkgs/applications/misc/tilda/default.nix
index 39f54156fef..f8ae5587ff9 100644
--- a/pkgs/applications/misc/tilda/default.nix
+++ b/pkgs/applications/misc/tilda/default.nix
@@ -1,20 +1,23 @@
-{ stdenv, fetchzip, pkgconfig
-, autoreconfHook, gettext, expat
+{ stdenv, fetchFromGitHub, pkgconfig
+, autoreconfHook, gettext, expat, pcre2
 , libconfuse, vte, gtk
 , makeWrapper }:
 
+with stdenv.lib;
 stdenv.mkDerivation rec {
 
   pname = "tilda";
-  version = "1.4.1";
+  version = "1.5.0";
 
-  src = fetchzip {
-    url = "https://github.com/lanoxx/tilda/archive/${pname}-${version}.tar.gz";
-    sha256 = "154rsldqjv2m1bddisb930qicb0y35kx7bxq392n2hn68jr2pxkj";
+  src = fetchFromGitHub {
+    owner = "lanoxx";
+    repo = "tilda";
+    rev = "${pname}-${version}";
+    sha256 = "13djibj3s7ig13c57ywy38pxy3qfmqihii2c0g15fy2h9q8xp1gx";
   };
 
   nativeBuildInputs = [ autoreconfHook makeWrapper pkgconfig ];
-  buildInputs = [ gettext libconfuse vte gtk ];
+  buildInputs = [ gettext pcre2 libconfuse vte gtk ];
 
   LD_LIBRARY_PATH = "${expat.out}/lib"; # ugly hack for xgettext to work during build
 
@@ -27,9 +30,9 @@ stdenv.mkDerivation rec {
         --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
   '';
 
-  meta = with stdenv.lib; {
+  meta = {
     description = "A Gtk based drop down terminal for Linux and Unix";
-    homepage = https://github.com/lanoxx/tilda/;
+    homepage = "https://github.com/lanoxx/tilda/";
     license = licenses.gpl3;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/misc/todoist-electron/default.nix b/pkgs/applications/misc/todoist-electron/default.nix
index cb0ee20f555..798f1708ae7 100644
--- a/pkgs/applications/misc/todoist-electron/default.nix
+++ b/pkgs/applications/misc/todoist-electron/default.nix
@@ -4,18 +4,18 @@
 
 stdenv.mkDerivation rec {
   pname = "todoist-electron";
-  version = "1.19";
+  version = "1.20";
 
   src = fetchurl {
     url = "https://github.com/KryDos/todoist-linux/releases/download/${version}/Todoist_${version}.0_amd64.deb";
-    sha256 = "1w0l7k7wmbhwzv71cffsir0q7zg9m0617fmyvd4a01b6flpxrpfx";
+    sha256 = "0w885xqy1304cp6b0jll5lvm6b1zd1ciqjl97d2hkdi8c9gv3bqx";
   };
 
   desktopItem = makeDesktopItem {
     name = "Todoist";
     exec = "todoist";
     desktopName = "Todoist";
-    categories = "Utility;Productivity";
+    categories = "Utility";
   };
 
   nativeBuildInputs = [ makeWrapper dpkg ];
diff --git a/pkgs/applications/misc/todoist/default.nix b/pkgs/applications/misc/todoist/default.nix
index a625c834055..74b2b770215 100644
--- a/pkgs/applications/misc/todoist/default.nix
+++ b/pkgs/applications/misc/todoist/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "todoist";
@@ -13,12 +13,10 @@ buildGoModule rec {
 
   modSha256 = "1nnp5ijz4n34gc97rar4wlvlbx21ndpjyb2mc6gxdk1wzx3mgswp";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = {
     homepage = https://github.com/sachaos/todoist;
     description = "Todoist CLI Client";
-    license = licenses.mit;
-    platforms = platforms.unix;
+    license = lib.licenses.mit;
+    platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/applications/misc/tut/default.nix b/pkgs/applications/misc/tut/default.nix
new file mode 100644
index 00000000000..586766e5456
--- /dev/null
+++ b/pkgs/applications/misc/tut/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  pname = "tut";
+  version = "0.0.2";
+
+  goPackagePath = "github.com/RasmusLindroth/tut";
+  goDeps = ./deps.nix;
+
+  src = fetchFromGitHub {
+    owner = "RasmusLindroth";
+    repo = pname;
+    rev = version;
+    sha256 = "0c44mgkmjnfpf06cj63i6mscxcsm5cipm0l4n6pjxhc7k3qhgsfw";
+  };
+
+  meta = with stdenv.lib; {
+    description = "A TUI for Mastodon with vim inspired keys";
+    homepage = "https://github.com/RasmusLindroth/tut";
+    license = licenses.mit;
+    maintainers = with maintainers; [ equirosa ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/misc/tut/deps.nix b/pkgs/applications/misc/tut/deps.nix
new file mode 100644
index 00000000000..89453f121a9
--- /dev/null
+++ b/pkgs/applications/misc/tut/deps.nix
@@ -0,0 +1,273 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "v0.3.1";
+      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
+    };
+  }
+  {
+    goPackagePath = "github.com/DATA-DOG/go-sqlmock";
+    fetch = {
+      type = "git";
+      url = "https://github.com/DATA-DOG/go-sqlmock";
+      rev = "v1.3.3";
+      sha256 = "1xrly2vmy1mgj9dbkmivhh8gvq6v9f9xy2yp2dw54i1895zzs928";
+    };
+  }
+  {
+    goPackagePath = "github.com/PuerkitoBio/goquery";
+    fetch = {
+      type = "git";
+      url = "https://github.com/PuerkitoBio/goquery";
+      rev = "v1.5.0";
+      sha256 = "1fqf4rs66wy02nxz6w4mvs2qawf2j8srz17i294v64y8gvxisp56";
+    };
+  }
+  {
+    goPackagePath = "github.com/andybalholm/cascadia";
+    fetch = {
+      type = "git";
+      url = "https://github.com/andybalholm/cascadia";
+      rev = "v1.0.0";
+      sha256 = "09j8cavbhqqdxjqrkwbc40g8p0i49zf3184rpjm5p2rjbprcghcc";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath = "github.com/fatih/color";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/color";
+      rev = "v1.9.0";
+      sha256 = "086z8ssmr1fn9ba4mqnw7pnccfpys6l5yfhvycv1gdrsk7n27mvs";
+    };
+  }
+  {
+    goPackagePath = "github.com/gdamore/encoding";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gdamore/encoding";
+      rev = "v1.0.0";
+      sha256 = "1vmm5zll92i2fm4ajqx0gyx0p9j36496x5nabi3y0x7h0inv0pk9";
+    };
+  }
+  {
+    goPackagePath = "github.com/gdamore/tcell";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gdamore/tcell";
+      rev = "v1.3.0";
+      sha256 = "1csg9qkmbg4ksj5247kgqcy7bxvqgz6b98r0rv2s4c1mkc99gx2r";
+    };
+  }
+  {
+    goPackagePath = "github.com/gorilla/websocket";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gorilla/websocket";
+      rev = "v1.4.1";
+      sha256 = "03n1n0nwz3k9qshmriycqznnnvd3dkzsfwpnfjzzvafjxk9kyapv";
+    };
+  }
+  {
+    goPackagePath = "github.com/kyoh86/xdg";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kyoh86/xdg";
+      rev = "v1.2.0";
+      sha256 = "0a5nz53fdz1c2qvwlf2dpjdd72nxri95i6q4b07c37kiipgaxncn";
+    };
+  }
+  {
+    goPackagePath = "github.com/lucasb-eyer/go-colorful";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lucasb-eyer/go-colorful";
+      rev = "v1.0.3";
+      sha256 = "12bgz6dxbb2ki1g3x7fg9ipsjgfkd58fp7cdpv63h4kvlj2n7j69";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "v0.1.4";
+      sha256 = "1yxcz08kminqr1221zxpibnbzfcgs3fafin0z9zqb3gqvf74jywz";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "v0.0.11";
+      sha256 = "0h671sv7hfprja495kavazkalkx7xzaqksjh13brcnwq67ijrali";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-mastodon";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-mastodon";
+      rev = "3e91c76504df";
+      sha256 = "1wh2hqrzx80gfs1y34f4h68mnz83asx88v0bsw372ch5j1shswlr";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-runewidth";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-runewidth";
+      rev = "v0.0.8";
+      sha256 = "14ilkbhnhl8yj443dd1ga4biapswv4g0b4vm2mix78a8srdww39j";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-tty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-tty";
+      rev = "v0.0.3";
+      sha256 = "0d1d63q02pc5k5ga8bw4yjbkrli2769vg237psajsskjirjy53vf";
+    };
+  }
+  {
+    goPackagePath = "github.com/microcosm-cc/bluemonday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/microcosm-cc/bluemonday";
+      rev = "v1.0.2";
+      sha256 = "0j0aylsxqjcj49w7ph8cmpaqjlpvg7mb5mrcrd9bg71dlb9z9ir2";
+    };
+  }
+  {
+    goPackagePath = "github.com/pelletier/go-toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pelletier/go-toml";
+      rev = "v1.6.0";
+      sha256 = "0l2830pi64fg0bdsyd5afkbw0p7879pppzdqqk3c7vjrjfmi5xbq";
+    };
+  }
+  {
+    goPackagePath = "github.com/rivo/tview";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rivo/tview";
+      rev = "cd38d7432498";
+      sha256 = "1rs048gf1jip0p20qir99vy5k0f3m54h7bh56l1sh8lxij5qj406";
+    };
+  }
+  {
+    goPackagePath = "github.com/rivo/uniseg";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rivo/uniseg";
+      rev = "v0.1.0";
+      sha256 = "0flpc1px1l6b1lxzhdxi0mvpkkjchppvgxshxxnlmm40s76i9ww5";
+    };
+  }
+  {
+    goPackagePath = "github.com/tomnomnom/linkheader";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tomnomnom/linkheader";
+      rev = "02ca5825eb80";
+      sha256 = "1ghrv28vrvvrpyr4d4q817yby8g1j04mid8ql00sds1pvfv67d32";
+    };
+  }
+  {
+    goPackagePath = "github.com/urfave/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/urfave/cli";
+      rev = "v1.20.0";
+      sha256 = "0y6f4sbzkiiwrxbl15biivj8c7qwxnvm3zl2dd3mw4wzg4x10ygj";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "c2843e01d9a2";
+      sha256 = "01xgxbj5r79nmisdvpq48zfy8pzaaj90bn6ngd4nf33j9ar1dp8r";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "118fecf932d8";
+      sha256 = "1rwrqfwh2yhnnhy7x0mbmlmk0rg1mi2jjad476y45i259a0c2ym6";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "cd5d95a43a6e";
+      sha256 = "1nqkyz2y1qvqcma52ijh02s8aiqmkfb95j08f6zcjhbga3ds6hds";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "12a6c2dcc1e4";
+      sha256 = "0z1g49d36kh459dz0xhnss2f88vw7n5b3l3637v46f7daddvln67";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.2";
+      sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "90fa682c2a6e";
+      sha256 = "03ic2xsy51jw9749wl7gszdbz99iijbd2bckgygl6cm9w5m364ak";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "20d25e280405";
+      sha256 = "0k1m83ji9l1a7ng8a7v40psbymxasmssbrrhpdv2wl4rhs0nc3np";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "v2.2.4";
+      sha256 = "11bwj757wi8kdrcnlgfqb8vv2d2xdhlghmyagd19i62khrkchsg2";
+    };
+  }
+]
diff --git a/pkgs/applications/misc/ulauncher/0001-Adjust-get_data_path-for-NixOS.patch b/pkgs/applications/misc/ulauncher/0001-Adjust-get_data_path-for-NixOS.patch
new file mode 100644
index 00000000000..f14d7f71802
--- /dev/null
+++ b/pkgs/applications/misc/ulauncher/0001-Adjust-get_data_path-for-NixOS.patch
@@ -0,0 +1,55 @@
+From 86cc27022015697a61d1ec1b13e52f9dbe7f6c57 Mon Sep 17 00:00:00 2001
+From: worldofpeace <worldofpeace@protonmail.ch>
+Date: Mon, 23 Mar 2020 18:34:00 -0400
+Subject: [PATCH] Adjust get_data_path for NixOS
+
+We construct the ulauncher data path from xdg_data_dirs
+and prevent it from being a nix store path or being xdg_data_home.
+We do this to prevent /nix/store paths being hardcoded to shortcuts.json.
+On NixOS this path will either be /run/current-system/sw/share/ulauncher
+or $HOME/.nix-profile/share/ulauncher if the user used nix-env.
+---
+ ulauncher/config.py | 27 ++++++++++++++++++---------
+ 1 file changed, 18 insertions(+), 9 deletions(-)
+
+diff --git a/ulauncher/config.py b/ulauncher/config.py
+index f21014e..cc636e1 100644
+--- a/ulauncher/config.py
++++ b/ulauncher/config.py
+@@ -50,15 +50,24 @@ def get_data_path():
+     is specified at installation time.
+     """
+ 
+-    # Get pathname absolute or relative.
+-    path = os.path.join(
+-        os.path.dirname(__file__), __ulauncher_data_directory__)
+-
+-    abs_data_path = os.path.abspath(path)
+-    if not os.path.exists(abs_data_path):
+-        raise ProjectPathNotFoundError(abs_data_path)
+-
+-    return abs_data_path
++    paths = list(
++        filter(
++            os.path.exists,
++            [
++                os.path.join(dir, "ulauncher")
++                for dir in xdg_data_dirs
++                # Get path that isn't in the /nix/store so they don't get hardcoded into configs
++                if not dir.startswith("/nix/store/")
++                # Exclude .local/share/ulauncher which isn't what we want
++                if not dir.startswith(xdg_data_home)
++            ],
++        )
++    )
++
++    try:
++        return paths[0]
++    except:
++        raise ProjectPathNotFoundError()
+ 
+ 
+ def is_wayland():
+-- 
+2.25.1
+
diff --git a/pkgs/applications/misc/ulauncher/default.nix b/pkgs/applications/misc/ulauncher/default.nix
index 9fa284aba43..5b77e13d724 100644
--- a/pkgs/applications/misc/ulauncher/default.nix
+++ b/pkgs/applications/misc/ulauncher/default.nix
@@ -1,8 +1,11 @@
 { stdenv
 , fetchurl
-, python27Packages
+, python3Packages
+, gdk-pixbuf
+, glib
 , gnome3
 , gobject-introspection
+, gtk3
 , wrapGAppsHook
 , webkitgtk
 , libnotify
@@ -11,49 +14,54 @@
 , intltool
 , wmctrl
 , xvfb_run
+, librsvg
 }:
 
-python27Packages.buildPythonApplication rec  {
+python3Packages.buildPythonApplication rec  {
   pname = "ulauncher";
-  version = "4.4.0.r1";
+  version = "5.6.1";
 
-  # Python 3 support is currently in development
-  # on the dev branch and 5.x.x releases
-  disabled = ! python27Packages.isPy27;
+  disabled = python3Packages.isPy27;
 
   src = fetchurl {
     url = "https://github.com/Ulauncher/Ulauncher/releases/download/${version}/ulauncher_${version}.tar.gz";
-    sha256 = "12v7qpjhf0842ivsfflsl2zlvhiaw25f9ffv7vhnkvrhrmksim9f";
+    sha256 = "14k68lp58wldldhaq4cf0ffkhi81czv4ps9xa86iw1j5b1gd2vbl";
   };
 
-  nativeBuildInputs = with python27Packages;  [
+  nativeBuildInputs = with python3Packages;  [
     distutils_extra
     intltool
     wrapGAppsHook
   ];
 
   buildInputs = [
+    gdk-pixbuf
+    glib
     gnome3.adwaita-icon-theme
     gobject-introspection
+    gtk3
     keybinder3
     libappindicator
     libnotify
+    librsvg
     webkitgtk
     wmctrl
   ];
 
-  propagatedBuildInputs = with python27Packages; [
+  propagatedBuildInputs = with python3Packages; [
+    mock
+    mypy
+    mypy-extensions
     dbus-python
-    notify
     pygobject3
     pyinotify
-    pysqlite
     python-Levenshtein
     pyxdg
+    requests
     websocket_client
   ];
 
-  checkInputs = with python27Packages; [
+  checkInputs = with python3Packages; [
     mock
     pytest
     pytest-mock
@@ -63,6 +71,9 @@ python27Packages.buildPythonApplication rec  {
 
   patches = [
     ./fix-path.patch
+    ./fix-permissions.patch # ulauncher PR #523
+    ./0001-Adjust-get_data_path-for-NixOS.patch
+    ./fix-extensions.patch
   ];
 
   postPatch = ''
@@ -73,7 +84,7 @@ python27Packages.buildPythonApplication rec  {
   doCheck = false;
 
   preCheck = ''
-    export PYTHONPATH=$PYTHONPATH:$out/${python27Packages.python.sitePackages}
+    export PYTHONPATH=$PYTHONPATH:$out/${python3Packages.python.sitePackages}
   '';
 
   # Simple translation of
diff --git a/pkgs/applications/misc/ulauncher/fix-extensions.patch b/pkgs/applications/misc/ulauncher/fix-extensions.patch
new file mode 100644
index 00000000000..f6d00f9fafd
--- /dev/null
+++ b/pkgs/applications/misc/ulauncher/fix-extensions.patch
@@ -0,0 +1,13 @@
+diff --git a/ulauncher/api/server/ExtensionRunner.py b/ulauncher/api/server/ExtensionRunner.py
+index 22042bf..f7b31c8 100644
+--- a/ulauncher/api/server/ExtensionRunner.py
++++ b/ulauncher/api/server/ExtensionRunner.py
+@@ -79,7 +79,7 @@ class ExtensionRunner:
+         cmd = [sys.executable, os.path.join(self.extensions_dir, extension_id, 'main.py')]
+         env = os.environ.copy()
+         env['ULAUNCHER_WS_API'] = self.extension_server.generate_ws_url(extension_id)
+-        env['PYTHONPATH'] = ':'.join(filter(bool, [ULAUNCHER_APP_DIR, os.getenv('PYTHONPATH')]))
++        env['PYTHONPATH'] = ':'.join([ULAUNCHER_APP_DIR] + sys.path)
+ 
+         if self.verbose:
+             env['VERBOSE'] = '1'
diff --git a/pkgs/applications/misc/ulauncher/fix-permissions.patch b/pkgs/applications/misc/ulauncher/fix-permissions.patch
new file mode 100644
index 00000000000..9d743c950f9
--- /dev/null
+++ b/pkgs/applications/misc/ulauncher/fix-permissions.patch
@@ -0,0 +1,12 @@
+diff --git a/ulauncher/utils/Theme.py b/ulauncher/utils/Theme.py
+index 9cde624..4e36c4f 100644
+--- a/ulauncher/utils/Theme.py
++++ b/ulauncher/utils/Theme.py
+@@ -138,6 +138,9 @@ class Theme:
+         rmtree(new_theme_dir)
+         copytree(self.path, new_theme_dir)
+ 
++        # change file permissions (because Nix store is read-only)
++        os.chmod(new_theme_dir, 0o755)
++
+         return os.path.join(new_theme_dir, 'generated.css')
diff --git a/pkgs/applications/misc/visidata/default.nix b/pkgs/applications/misc/visidata/default.nix
index 64645e00bd8..cc88cb1751e 100644
--- a/pkgs/applications/misc/visidata/default.nix
+++ b/pkgs/applications/misc/visidata/default.nix
@@ -1,5 +1,16 @@
-{ buildPythonApplication, lib, fetchFromGitHub
-, dateutil, pyyaml, openpyxl, xlrd, h5py, fonttools, lxml, pandas, pyshp
+{ buildPythonApplication
+, lib
+, fetchFromGitHub
+, dateutil
+, pyyaml
+, openpyxl
+, xlrd
+, h5py
+, fonttools
+, lxml
+, pandas
+, pyshp
+, setuptools
 }:
 buildPythonApplication rec {
   pname = "visidata";
@@ -12,16 +23,26 @@ buildPythonApplication rec {
     sha256 = "19gs8i6chrrwibz706gib5sixx1cjgfzh7v011kp3izcrn524mc0";
   };
 
-  propagatedBuildInputs = [dateutil pyyaml openpyxl xlrd h5py fonttools
-    lxml pandas pyshp ];
+  propagatedBuildInputs = [
+    dateutil
+    pyyaml
+    openpyxl
+    xlrd
+    h5py
+    fonttools
+    lxml
+    pandas
+    pyshp
+    setuptools
+  ];
 
   doCheck = false;
 
   meta = {
     inherit version;
     description = "Interactive terminal multitool for tabular data";
-    license = lib.licenses.gpl3 ;
-    maintainers = [lib.maintainers.raskin];
+    license = lib.licenses.gpl3;
+    maintainers = [ lib.maintainers.raskin ];
     platforms = lib.platforms.linux;
     homepage = "http://visidata.org/";
   };
diff --git a/pkgs/applications/misc/wofi/default.nix b/pkgs/applications/misc/wofi/default.nix
index 659b7099943..37b991e6d47 100644
--- a/pkgs/applications/misc/wofi/default.nix
+++ b/pkgs/applications/misc/wofi/default.nix
@@ -1,23 +1,33 @@
-{ stdenv, lib, fetchhg, pkg-config, meson, ninja, wayland, gtk3 }:
+{ stdenv, lib, fetchhg, fetchpatch, pkg-config, meson, ninja, wayland, gtk3, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "wofi";
-  version = "1.1";
+  version = "1.1.2";
 
   src = fetchhg {
     url = "https://hg.sr.ht/~scoopta/wofi";
     rev = "v${version}";
-    sha256 = "0rq6c8fv0h7xj3jw1i01r39dz0f31k7jgf7hpgl6mlsyn0ddc80z";
+    sha256 = "086j5wshawjbwdmmmldivfagc2rr7g5a2gk11l0snqqslm294xsn";
   };
 
-  nativeBuildInputs = [ pkg-config meson ninja ];
+  nativeBuildInputs = [ pkg-config meson ninja wrapGAppsHook ];
   buildInputs = [ wayland gtk3 ];
 
+  # Fixes icon bug on NixOS.
+  # Will need to be removed on next release
+  # see https://todo.sr.ht/~scoopta/wofi/54
+  patches = [
+    (fetchpatch {
+      url = "https://paste.sr.ht/blob/1cbddafac3806afb203940c029e78ce8390d8f49";
+      sha256 = "1n4jpmh66p7asjhj0z2s94ny91lmaq4hhh2356nj406vlqr15vbb";
+    })
+  ];
+
   meta = with lib; {
     description = "A launcher/menu program for wlroots based wayland compositors such as sway";
     homepage = "https://hg.sr.ht/~scoopta/wofi";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ erictapen ];
+    maintainers = with maintainers; [ elyhaka ];
     platforms = with platforms; linux;
   };
 }
diff --git a/pkgs/applications/misc/wtf/default.nix b/pkgs/applications/misc/wtf/default.nix
index 8c34baba582..12780ca73a1 100644
--- a/pkgs/applications/misc/wtf/default.nix
+++ b/pkgs/applications/misc/wtf/default.nix
@@ -1,23 +1,22 @@
 { buildGoModule
 , fetchFromGitHub
-, stdenv
+, lib
 , makeWrapper
 , ncurses
-, Security
 }:
 
 buildGoModule rec {
   pname = "wtf";
-  version = "0.27.0";
+  version = "0.28.0";
 
   src = fetchFromGitHub {
     owner = "wtfutil";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0j184s82bnnhrpm7vdsqg7i3xfm2wqz8jmwqxjkfw87ifgvaha5d";
+    sha256 = "0pybj2h844x9vncwdcaymihyd1mwdnxxpnzpq0p29ra0cwmsxcgr";
    };
 
-  modSha256 = "14qbjv8rnidfqxzqhli7jyj4573s0swwypdj11mpykcrzk9by8xk";
+  modSha256 = "00xvhajag25kfkizi2spv4ady3h06as43rnbjzfbv7z1mln844y4";
 
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
@@ -25,14 +24,12 @@ buildGoModule rec {
 
   nativeBuildInputs = [ makeWrapper ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   postInstall = ''
     mv "$out/bin/wtf" "$out/bin/wtfutil"
     wrapProgram "$out/bin/wtfutil" --prefix PATH : "${ncurses.dev}/bin"
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "The personal information dashboard for your terminal";
     homepage = "https://wtfutil.com/";
     license = licenses.mpl20;
diff --git a/pkgs/applications/misc/xmrig/default.nix b/pkgs/applications/misc/xmrig/default.nix
index 252d9dd87c6..a205b402bc8 100644
--- a/pkgs/applications/misc/xmrig/default.nix
+++ b/pkgs/applications/misc/xmrig/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "xmrig";
-  version = "5.7.0";
+  version = "5.10.0";
 
   src = fetchFromGitHub {
     owner = "xmrig";
     repo = "xmrig";
     rev = "v${version}";
-    sha256 = "14mqfjwff7mj3xckz4wkxlmqm6a0ci1bz0zj1h045ac8hfvw5k4k";
+    sha256 = "06nxhrb5vnlq3sxybiyzdpbv6ah1zam7r07s1c31sv37znlb77d5";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/zathura/cb/default.nix b/pkgs/applications/misc/zathura/cb/default.nix
index 7c2c8fb31ca..4e2d16819ba 100644
--- a/pkgs/applications/misc/zathura/cb/default.nix
+++ b/pkgs/applications/misc/zathura/cb/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
   version = "0.1.8";
 
   src = fetchurl {
-    url = "https://pwmt.org/projects/zathura/plugins/download/${pname}-${version}.tar.xz";
+    url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
     sha256 = "1i6cf0vks501cggwvfsl6qb7mdaf3sszdymphimfvnspw810faj5";
   };
 
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
 
   meta = with lib; {
-    homepage = https://pwmt.org/projects/zathura-cb/;
+    homepage = "https://pwmt.org/projects/zathura-cb/";
     description = "A zathura CB plugin";
     longDescription = ''
       The zathura-cb plugin adds comic book support to zathura.
diff --git a/pkgs/applications/misc/zathura/core/default.nix b/pkgs/applications/misc/zathura/core/default.nix
index 99729125b63..44f200174d9 100644
--- a/pkgs/applications/misc/zathura/core/default.nix
+++ b/pkgs/applications/misc/zathura/core/default.nix
@@ -9,12 +9,12 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  pname = "zathura-core";
-  version = "0.4.4";
+  pname = "zathura";
+  version = "0.4.5";
 
   src = fetchurl {
-    url = "https://git.pwmt.org/pwmt/zathura/-/archive/${version}/zathura-${version}.tar.gz";
-    sha256 = "0v5klgr009rsxi41h73k0398jbgmgh37asvwz2w15i4fzmw89jgb";
+    url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
+    sha256 = "0b3nrcvykkpv2vm99kijnic2gpfzva520bsjlihaxandzfm9ff8c";
   };
 
   outputs = [ "bin" "man" "dev" "out" ];
@@ -28,6 +28,8 @@ stdenv.mkDerivation rec {
     "-Dmanpages=enabled"
     "-Dconvert-icon=enabled"
     "-Dsynctex=enabled"
+    # Make sure tests are enabled for doCheck
+    "-Dtests=enabled"
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/misc/zathura/djvu/default.nix b/pkgs/applications/misc/zathura/djvu/default.nix
index 54f68969d4f..954df5301e3 100644
--- a/pkgs/applications/misc/zathura/djvu/default.nix
+++ b/pkgs/applications/misc/zathura/djvu/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchurl, meson, ninja, pkgconfig, gtk, zathura_core, girara, djvulibre, gettext }:
 
 stdenv.mkDerivation rec {
-  name = "zathura-djvu-0.2.8";
+  pname = "zathura-djvu";
+  version = "0.2.9";
 
   src = fetchurl {
-    url = "https://pwmt.org/projects/zathura/plugins/download/${name}.tar.xz";
-    sha256 = "0axkv1crdxn0z44whaqp2ibkdqcykhjnxk7qzms0dp1b67an9rnh";
+    url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
+    sha256 = "0062n236414db7q7pnn3ccg5111ghxj3407pn9ri08skxskgirln";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig ];
@@ -14,7 +15,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
 
   meta = with stdenv.lib; {
-    homepage = https://pwmt.org/projects/zathura-djvu/;
+    homepage = "https://pwmt.org/projects/zathura-djvu/";
     description = "A zathura DJVU plugin";
     longDescription = ''
       The zathura-djvu plugin adds DjVu support to zathura by using the
diff --git a/pkgs/applications/misc/zathura/pdf-mupdf/default.nix b/pkgs/applications/misc/zathura/pdf-mupdf/default.nix
index d8c1364d395..82c94d48068 100644
--- a/pkgs/applications/misc/zathura/pdf-mupdf/default.nix
+++ b/pkgs/applications/misc/zathura/pdf-mupdf/default.nix
@@ -1,20 +1,13 @@
-{ stdenv, lib, meson, ninja, fetchFromGitHub
+{ stdenv, lib, meson, ninja, fetchurl
 , pkgconfig, zathura_core, cairo , gtk-mac-integration, girara, mupdf }:
 
 stdenv.mkDerivation rec {
   version = "0.3.5";
   pname = "zathura-pdf-mupdf";
 
-  # pwmt.org server was down at the time of last update
-  # src = fetchurl {
-  #   url = "https://pwmt.org/projects/zathura-pdf-mupdf/download/${name}.tar.xz";
-  #   sha256 = "1zbaqimav4wfgimpy3nfzl10qj7vyv23rdy2z5z7z93jwbp2rc2j";
-  # };
-  src = fetchFromGitHub {
-    owner = "pwmt";
-    repo = "zathura-pdf-mupdf";
-    rev = version;
-    sha256 = "0wb46hllykbi30ir69s8s23mihivqn13mgfdzawbsn2a21p8y4zl";
+  src = fetchurl {
+    url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
+    sha256 = "1pjwsb7zwclxsvz229fl7y2saf1pv3ifwv3ay8viqxgrp9x3z9hq";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig ];
@@ -26,7 +19,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_ZATHURA_PLUGINDIR= "lib/zathura";
 
   meta = with lib; {
-    homepage = https://pwmt.org/projects/zathura-pdf-mupdf/;
+    homepage = "https://pwmt.org/projects/zathura-pdf-mupdf/";
     description = "A zathura PDF plugin (mupdf)";
     longDescription = ''
       The zathura-pdf-mupdf plugin adds PDF support to zathura by
diff --git a/pkgs/applications/misc/zathura/pdf-poppler/default.nix b/pkgs/applications/misc/zathura/pdf-poppler/default.nix
index 5b38555eda1..bafa293ad9c 100644
--- a/pkgs/applications/misc/zathura/pdf-poppler/default.nix
+++ b/pkgs/applications/misc/zathura/pdf-poppler/default.nix
@@ -1,12 +1,12 @@
 { stdenv, lib, fetchurl, meson, ninja, pkgconfig, zathura_core, girara, poppler }:
 
 stdenv.mkDerivation rec {
-  version = "0.2.9";
   pname = "zathura-pdf-poppler";
+  version = "0.3.0";
 
   src = fetchurl {
-    url = "https://git.pwmt.org/pwmt/zathura-pdf-poppler/-/archive/${version}/${pname}-${version}.tar.gz";
-    sha256 = "0c15rnwh42m3ybrhax01bl36w0iynaq8xg6l08riml3cyljypi9l";
+    url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
+    sha256 = "1vfl4vkyy3rf39r1sqaa7y8113bgkh2bkfq3nn2inis9mrykmk6m";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig zathura_core ];
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
 
   meta = with lib; {
-    homepage = https://pwmt.org/projects/zathura-pdf-poppler/;
+    homepage = "https://pwmt.org/projects/zathura-pdf-poppler/";
     description = "A zathura PDF plugin (poppler)";
     longDescription = ''
       The zathura-pdf-poppler plugin adds PDF support to zathura by
diff --git a/pkgs/applications/misc/zathura/ps/default.nix b/pkgs/applications/misc/zathura/ps/default.nix
index 48d42b5e939..05cc570eb8f 100644
--- a/pkgs/applications/misc/zathura/ps/default.nix
+++ b/pkgs/applications/misc/zathura/ps/default.nix
@@ -1,10 +1,11 @@
 { stdenv, lib, fetchurl, meson, ninja, pkgconfig, zathura_core, girara, libspectre, gettext }:
 
 stdenv.mkDerivation rec {
-  name = "zathura-ps-0.2.6";
+  pname = "zathura-ps";
+  version = "0.2.6";
 
   src = fetchurl {
-    url = "https://pwmt.org/projects/zathura/plugins/download/${name}.tar.xz";
+    url = "https://pwmt.org/projects/${pname}/download/${pname}-${version}.tar.xz";
     sha256 = "0wygq89nyjrjnsq7vbpidqdsirjm6iq4w2rijzwpk2f83ys8bc3y";
   };
 
@@ -14,7 +15,7 @@ stdenv.mkDerivation rec {
   PKG_CONFIG_ZATHURA_PLUGINDIR = "lib/zathura";
 
   meta = with lib; {
-    homepage = https://pwmt.org/projects/zathura-ps/;
+    homepage = "https://pwmt.org/projects/zathura-ps/";
     description = "A zathura PS plugin";
     longDescription = ''
       The zathura-ps plugin adds PS support to zathura by using the
diff --git a/pkgs/applications/misc/zathura/wrapper.nix b/pkgs/applications/misc/zathura/wrapper.nix
index 6c8ad97d355..4a6ef041b54 100644
--- a/pkgs/applications/misc/zathura/wrapper.nix
+++ b/pkgs/applications/misc/zathura/wrapper.nix
@@ -8,6 +8,8 @@ in symlinkJoin {
 
   paths = with zathura_core; [ man dev out ];
 
+  inherit plugins;
+
   buildInputs = [ makeWrapper ];
 
   postBuild = ''
diff --git a/pkgs/applications/networking/browsers/brave/default.nix b/pkgs/applications/networking/browsers/brave/default.nix
index 2adc2ec7c79..bab24d01456 100644
--- a/pkgs/applications/networking/browsers/brave/default.nix
+++ b/pkgs/applications/networking/browsers/brave/default.nix
@@ -82,11 +82,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "brave";
-  version = "1.5.112";
+  version = "1.5.123";
 
   src = fetchurl {
     url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
-    sha256 = "0am7qr09pvy6v720rngfxilh4yalxzp7vcq2yndcz6726wnhw9zx";
+    sha256 = "1yv6hfjqzcd60b0bjpfbj8d4s2yf10swanxhbmnslcqp6ajb2nqr";
   };
 
   dontConfigure = true;
diff --git a/pkgs/applications/networking/browsers/browsh/default.nix b/pkgs/applications/networking/browsers/browsh/default.nix
index 2b910fe0c5c..94e939b9ab4 100644
--- a/pkgs/applications/networking/browsers/browsh/default.nix
+++ b/pkgs/applications/networking/browsers/browsh/default.nix
@@ -26,7 +26,7 @@ in buildGoPackage rec {
     sha256 = "0gvf5k1gm81xxg7ha309kgfkgl5357dli0fbc4z01rmfgbl0rfa0";
   };
 
-  buildInputs = [ go-bindata ];
+  nativeBuildInputs = [ go-bindata ];
 
   # embed the web extension in a go file and place it where it's supposed to
   # be. See
diff --git a/pkgs/applications/networking/browsers/chromium/browser.nix b/pkgs/applications/networking/browsers/chromium/browser.nix
index ec69f3d233f..edbf97e8963 100644
--- a/pkgs/applications/networking/browsers/chromium/browser.nix
+++ b/pkgs/applications/networking/browsers/chromium/browser.nix
@@ -18,6 +18,16 @@ mkChromiumDerivation (base: rec {
     cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"
     cp -v "$buildPath/chrome" "$libExecPath/$packageName"
 
+    # Swiftshader
+    # See https://stackoverflow.com/a/4264351/263061 for the find invocation.
+    if [ -n "$(find "$buildPath/swiftshader/" -maxdepth 1 -name '*.so' -print -quit)" ]; then
+      echo "Swiftshader files found; installing"
+      mkdir -p "$libExecPath/swiftshader"
+      cp -v "$buildPath/swiftshader/"*.so "$libExecPath/swiftshader/"
+    else
+      echo "Swiftshader files not found"
+    fi
+
     mkdir -p "$sandbox/bin"
     cp -v "$buildPath/chrome_sandbox" "$sandbox/bin/${sandboxExecutableName}"
 
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index 255b399ef3d..9f7583b1ef5 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -1,4 +1,4 @@
-{ stdenv, llvmPackages, gn, ninja, which, nodejs, fetchpatch, gnutar
+{ stdenv, llvmPackages, gnChromium, ninja, which, nodejs, fetchpatch, gnutar
 
 # default dependencies
 , bzip2, flac, speex, libopus
@@ -7,7 +7,7 @@
 , xdg_utils, yasm, minizip, libwebp
 , libusb1, pciutils, nss, re2, zlib
 
-, python2Packages, perl, pkgconfig, clang-tools
+, python2Packages, perl, pkgconfig
 , nspr, systemd, kerberos
 , utillinux, alsaLib
 , bison, gperf
@@ -21,9 +21,11 @@
 # optional dependencies
 , libgcrypt ? null # gnomeSupport || cupsSupport
 , libva ? null # useVaapi
+, libdrm ? null, wayland ? null, mesa_drivers ? null, libxkbcommon ? null # useOzone
 
 # package customization
 , useVaapi ? false
+, useOzone ? false
 , gnomeSupport ? false, gnome ? null
 , gnomeKeyringSupport ? false, libgnome-keyring3 ? null
 , proprietaryCodecs ? true
@@ -104,8 +106,6 @@ let
             result
        else result;
 
-  llvm-clang-tools = clang-tools.override { inherit llvmPackages; };
-
   base = rec {
     name = "${packageName}-unwrapped-${version}";
     inherit (upstream-info) channel version;
@@ -117,7 +117,7 @@ let
       ninja which python2Packages.python perl pkgconfig
       python2Packages.ply python2Packages.jinja2 nodejs
       gnutar
-    ];
+    ] ++ optional (versionAtLeast version "83") python2Packages.setuptools;
 
     buildInputs = defaultDependencies ++ [
       nspr nss systemd
@@ -131,7 +131,8 @@ let
       ++ optionals gnomeSupport [ gnome.GConf libgcrypt ]
       ++ optionals cupsSupport [ libgcrypt cups ]
       ++ optional useVaapi libva
-      ++ optional pulseSupport libpulseaudio;
+      ++ optional pulseSupport libpulseaudio
+      ++ optionals useOzone [ libdrm wayland mesa_drivers libxkbcommon ];
 
     patches = [
       ./patches/nix_plugin_paths_68.patch
@@ -216,8 +217,6 @@ let
       ln -s ${stdenv.cc}/bin/clang              third_party/llvm-build/Release+Asserts/bin/clang
       ln -s ${stdenv.cc}/bin/clang++            third_party/llvm-build/Release+Asserts/bin/clang++
       ln -s ${llvmPackages.llvm}/bin/llvm-ar    third_party/llvm-build/Release+Asserts/bin/llvm-ar
-    '' + optionalString (stdenv.lib.versionAtLeast version "82") ''
-      ln -s ${llvm-clang-tools}/bin/clang-format buildtools/linux64/clang-format
     '';
 
     gnFlags = mkGnFlags ({
@@ -244,7 +243,6 @@ let
       is_clang = stdenv.cc.isClang;
       clang_use_chrome_plugins = false;
       blink_symbol_level = 0;
-      enable_swiftshader = false;
       fieldtrial_testing_like_official_build = true;
 
       # Google API keys, see:
@@ -264,6 +262,16 @@ let
     } // optionalAttrs pulseSupport {
       use_pulseaudio = true;
       link_pulseaudio = true;
+    } // optionalAttrs useOzone {
+      use_ozone = true;
+      ozone_platform_gbm = false;
+      use_xkbcommon = true;
+      use_glib = true;
+      use_gtk = true;
+      use_system_libwayland = true;
+      use_system_minigbm = true;
+      use_system_libdrm = true;
+      system_wayland_scanner_path = "${wayland}/bin/wayland-scanner";
     } // (extraAttrs.gnFlags or {}));
 
     configurePhase = ''
@@ -273,7 +281,7 @@ let
       libExecPath="${libExecPath}"
       python build/linux/unbundle/replace_gn_files.py \
         --system-libraries ${toString gnSystemLibraries}
-      ${gn}/bin/gn gen --args=${escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
+      ${gnChromium}/bin/gn gen --args=${escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
 
       # Fail if `gn gen` contains a WARNING.
       grep -o WARNING gn-gen-outputs.txt && echo "Found gn WARNING, exiting nix build" && exit 1
@@ -281,6 +289,11 @@ let
       runHook postConfigure
     '';
 
+    # Don't spam warnings about unknown warning options. This is useful because
+    # our Clang is always older than Chromium's and the build logs have a size
+    # of approx. 25 MB without this option (and this saves e.g. 66 %).
+    NIX_CFLAGS_COMPILE = "-Wno-unknown-warning-option";
+
     buildPhase = let
       # Build paralelism: on Hydra the build was frequently running into memory
       # exhaustion, and even other users might be running into similar issues.
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 8968a10bed0..564e50b8670 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -1,6 +1,6 @@
 { newScope, config, stdenv, llvmPackages_9, llvmPackages_10
 , makeWrapper, ed
-, glib, gtk3, gnome3, gsettings-desktop-schemas
+, glib, gtk3, gnome3, gsettings-desktop-schemas, gn, fetchgit
 , libva ? null
 , gcc, nspr, nss, patchelfUnstable, runCommand
 , lib
@@ -13,6 +13,7 @@
 , enablePepperFlash ? false
 , enableWideVine ? false
 , useVaapi ? false # test video on radeon, before enabling this
+, useOzone ? false
 , cupsSupport ? true
 , pulseSupport ? config.pulseaudio or stdenv.isLinux
 , commandLineArgs ? ""
@@ -31,9 +32,20 @@ let
 
     upstream-info = (callPackage ./update.nix {}).getChannel channel;
 
-    mkChromiumDerivation = callPackage ./common.nix {
-      inherit gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs cupsSupport pulseSupport useVaapi;
-    };
+    mkChromiumDerivation = callPackage ./common.nix ({
+      inherit gnome gnomeSupport gnomeKeyringSupport proprietaryCodecs cupsSupport pulseSupport useVaapi useOzone;
+      gnChromium = gn;
+    } // lib.optionalAttrs (channel == "dev") {
+      # TODO: Remove after we can update gn for the stable channel (backward incompatible changes):
+      gnChromium = gn.overrideAttrs (oldAttrs: {
+        version = "2020-03-23";
+        src = fetchgit {
+          url = "https://gn.googlesource.com/gn";
+          rev = "5ed3c9cc67b090d5e311e4bd2aba072173e82db9";
+          sha256 = "00y2d35wvqmx9glaqhfb62wdgbfpwr77v0934nnvh9ks71vnsjqy";
+        };
+      });
+    });
 
     browser = callPackage ./browser.nix { inherit channel enableWideVine; };
 
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
index 0e939f2fd21..c5f9d60122d 100644
--- a/pkgs/applications/networking/browsers/chromium/upstream-info.nix
+++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
@@ -1,18 +1,18 @@
 # This file is autogenerated from update.sh in the same directory.
 {
   beta = {
-    sha256 = "177hv5jkgpcbi6khk7j883rf3rzzkjmi8cqqpzckaiw7pcwsvyvd";
-    sha256bin64 = "0sicz51d2l3gj70mfpyh5idwarjl19pba5lc6ahznxxqsrjfp80r";
-    version = "81.0.4044.69";
+    sha256 = "0i0szd749ihb08rxnsmsbxq75b6x952wpk94jwc0ncv6gb83zkx2";
+    sha256bin64 = "1y70kmfz9nv507b0zdda7zfk2ac9qh9m2gq00aphdmzd0al7skj8";
+    version = "81.0.4044.92";
   };
   dev = {
-    sha256 = "0s0072rmg287iijh6wwm9i5a5fsh96qm6nhd13xwbxrvj6pldb7n";
-    sha256bin64 = "0l5ljjz0s5x9727syq4gs5xshl9vs8apvw6xw8il0xy5qax32g85";
-    version = "82.0.4083.0";
+    sha256 = "1rydvjmv62zj95sf0fgsyipqz2hphbxm60y8q0813wq9ym35d4yy";
+    sha256bin64 = "1m6740lw7xjjp1lplwp9ii4d3l7dfa9jrv5bysm4ar5pb9kywrai";
+    version = "83.0.4100.3";
   };
   stable = {
-    sha256 = "07icl3hgg1wjkmz88lbpjf6ll4xyi64spki1nmsy6899jgkxvgjh";
-    sha256bin64 = "0qgp6hv4qj04v6pzfx9ggjvcl1vi6ljjc3cpi4hfr67p4jab40ji";
-    version = "80.0.3987.149";
+    sha256 = "0i0szd749ihb08rxnsmsbxq75b6x952wpk94jwc0ncv6gb83zkx2";
+    sha256bin64 = "1ig899cpahw1xfhdff5xj6w4k8jja5smxvrcbw6b0jcjmawdrf72";
+    version = "81.0.4044.92";
   };
 }
diff --git a/pkgs/applications/networking/browsers/ephemeral/default.nix b/pkgs/applications/networking/browsers/ephemeral/default.nix
index ea840694bd3..dd0365760f9 100644
--- a/pkgs/applications/networking/browsers/ephemeral/default.nix
+++ b/pkgs/applications/networking/browsers/ephemeral/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ephemeral";
-  version = "6.3.0";
+  version = "6.3.1";
 
   src = fetchFromGitHub {
     owner = "cassidyjames";
     repo = "ephemeral";
     rev = version;
-    sha256 = "0h159szljvphs2hvagxwv6nncx46q0mvr4ylhl2nimap9jvss91n";
+    sha256 = "13rl26lv5xgagiv21yp5pz69bkwh4nnz1lx9wryhsplki45xm1sq";
   };
 
   nativeBuildInputs = [
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "The always-incognito web browser";
-    homepage = https://github.com/cassidyjames/ephemeral;
+    homepage = "https://github.com/cassidyjames/ephemeral";
     maintainers = with maintainers; [ kjuvi ] ++ pantheon.maintainers;
     platforms = platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
index f9356fc802e..20e08a8c3ab 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
@@ -1,965 +1,965 @@
 {
-  version = "75.0b2";
+  version = "76.0b1";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ach/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ach/firefox-76.0b1.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "159fc50feb7ea1d8f567b94756476b8325de2a2255aceaadb7975cebd763ff44cc74c621532b840f5aef7156024f605ffefc3fb1b3609a44925d7a280b63f183";
+      sha512 = "c008d921c75cac20b6840f677739c79bceeed87a3808b60b019c0c59b713a46896a5220d9939126df7f10382ee0a7dc3d05aa35a0a6e64980617e135b15f9ed1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/af/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/af/firefox-76.0b1.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "224a98e4028513e30897fe73de8dee67a90844990eb13564e7fc32c4aa9426730da7d4b528666ecd5a76a6ce68c0eb3d0564b09823e12721424c471fa7cfe191";
+      sha512 = "e68675ca9acc285eb8a466e01369e3c39ff727557ce3a69f4133eb085f8ac0b95060317c9747d3ba8c3a04bc2f2bf0517157065d6f0d01099ad610f181e30d0d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/an/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/an/firefox-76.0b1.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "7973ab3c94616e0eb1b2b36209836c3ed81c55927f26da9bfc672eeb5f6f36d8447bf9dac705219b38edd1d217c6b7d701ce11285f37d37219ddbc0340fbaf61";
+      sha512 = "27be07732ae15f9c9ea0dd080539a82440b48d766f2aadc8cefaaf0ddfe2a1cf39c907a5bd4e57f505a9919b25a1582b3147941704fb31e70ad24cf4dc771844";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ar/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ar/firefox-76.0b1.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "11dfb7553ca61b7abe857ab7dc75db73e3a3002b9d4dce98f005d0c298ff119d29b64309fb8e5c62fafa08f9ff426c14f45956e5f6cfb7cb9af7dde41190bf43";
+      sha512 = "fcfb58f2bf79f3fbe35d9c229b22132f43800baa8337408e4d13b6500ebcfed9bbf594b9c3560af992d9bc1243cee21bca1a590d3b2526fe1c999938bd7f8dfc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ast/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ast/firefox-76.0b1.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "23f00418b48d660c64c4480cd6c983da80fd8990f3ae055a0e4792f01b881b69251f4ec123ef3d961623b94dd7a968a82f27d29aa87731ca77e4ac4b1ec32464";
+      sha512 = "1d86aab0f0288f4de8ca7c87c1314797e648244486fcbd26a3b95785d1f4f9357f0573cc53fa72301d7cff60a42047a249c5cfe0ff2544d1a443d550cfa98199";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/az/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/az/firefox-76.0b1.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "85e1c4ef9870c9aaf670d107b5810782b7e148f6edf61123c4326be0809b1103f9bc5a05e87d06771fb8faf405d9f648df364d99cae9be32ae2242d1c488b5c9";
+      sha512 = "f61b53831dc9b83b007d1557582f6e36c0d169e7f4868c5959fe96e1840f7fb9e131df663c70de21b6657c67526d5650ab3795b28c46e4002335403f9f08988d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/be/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/be/firefox-76.0b1.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "34bb18b6f6ecd032ce0984513e590e422d01ed5b92b8960a7a4e64b2a5f5b2f19aeeaa6b7227a96cf6b6e97168674a34cc3332d019dc5d3257504c7188ab8418";
+      sha512 = "80d9d24897ff9d20011e458306b7a3b76714f84a06ed595b70f1e6713377faeac0054b6d6d7d7571a9eea8a455af33174ebd27379f092d578f0a0326f37b043f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/bg/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/bg/firefox-76.0b1.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "2481e01d1656a26458cca5f1f9eb7d7f101dc98e7aa7ee620889b630393a70a82132758323d4ec37c5ee640874419cdd2d5464d64e820876cb924679f03eba64";
+      sha512 = "cdaf01b156285869a94952f9a330029c5c99d4ab098280104f1957d71cc5312dc1028a0aaa39ce1e93db76bf5510ac6c04d8c3ce759ead3f47806f8e25bdafdf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/bn/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/bn/firefox-76.0b1.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha512 = "6dc0d391e179cc13465f60c98f9a6425f6fc4f28f2340928a35bc3abfb623c28decbd179012d162cff661dc807974f5df34427879d4838ab481ffa75c0957e77";
+      sha512 = "6eb21882bae779ed7ada1f24a63cff5281d21034972926234a1186a6a20b144f19e157813cc041b81a4aaabdc36a8b32b30b4646fabf9817e1fc903b7c13f538";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/br/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/br/firefox-76.0b1.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "6fce902e7e23277c8446df902349e626ae5dce2435ce56e57824c7a0b5729ae95b10878525f9b5251e9c91e1cbd97cc1ea7792136b271cf88626fc97cee5f4be";
+      sha512 = "9bb5eb2fc197a33ddbbaef9485c16c940dab78788a52e0ebe59a43f9e8dd6c9b73ca2b9c957f0ae27451dd23e34fa394c138d5cf7669722a4f4b3cd4c27a79a5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/bs/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/bs/firefox-76.0b1.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "cd46d5f1e8d68a7390b2bdd4338829db0e25e5dcf0a52d538db311b957809c33f7fc9cfef92a73357743ddb9b3ed0ce593c9c0cc8428f7f891edc3292c00d37d";
+      sha512 = "041640d96d7e3ceed3353faed37ba4f8ae243f48f845dec3a5e97362f0c0cbf4d7c50ee39cc96986596461eb3e2a0ce6a8f5c5bab37c0edf6d76e97c61882bfc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ca-valencia/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ca-valencia/firefox-76.0b1.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha512 = "e79af87bd369b75319565bc6301cf312022b85562ccf6cd2abd6fd59a26b1081a62f166c7efb4fbb6ad1ccb7befa8a8eec557addd9c4115f7da1594a633d243c";
+      sha512 = "fce818eede4f8850497cc8fdf030a16b5786b05c87e28d3d184c99872d56bef47160e0bfaf70e653c97a2e89890269a8df03b9c7a903f53afd952cfb77153ab7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ca/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ca/firefox-76.0b1.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "4241eae0654e5466a1c04aff0de003a676c775470329a973204a2413590fc4558aec96ac33e9e14cf1ab7eb52054ec34e7ebbb149648dd4e8d33cefe2b3c18c7";
+      sha512 = "13980c330ca6c2229d0a350fb525a88628a5ec220606ec9f0a84f8592ed95f8a37a211fdd37e219848058fd106fe407a69400e8c994550d783d9af0720dc09d5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/cak/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/cak/firefox-76.0b1.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "5bb2b8a2eeffdb7a06c16244458ad8f305725741f05c0fa367534da99d0bf0c4399e05453b64c505f441c4036f3e5e7a4e5729852a848b8ff4210d674ce7f065";
+      sha512 = "5eada744dbd15a7c32b27ae897d185497caa51838cdb818cf45c052e38824909e6d90e58270194c091cc72805ba74b1062027b770290ae3f01566273a47c76ae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/cs/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/cs/firefox-76.0b1.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "50c6ba425d3be7e12667d80bd6e57907082bd3c155b8d3b6bedae64054046d3bb02d8894445cd5d27e3251507730c06bd3eddc96a11c36c4e9c7a3b9cdf796ff";
+      sha512 = "f47feb99877e60ee021d0398b935c5f83a4b91db4677f3b26349f931ee66f7b04a430449e8c5b92f833c5a6e3d3f407407ab01a30db248984244fbf5f42bfe22";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/cy/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/cy/firefox-76.0b1.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "0dee8828858c2e0013788b680b8f907e6464e219fc6745af8d0e7d08575291e926f2be56ea7becb1b231f1fa0feb1827b5779b7f720606729a37847f7d8322db";
+      sha512 = "a2f6acd4a15312281dfbe7866c73faa45ef2d07743b9f0566fb3b59e7af57f4cc8cbbac6a2371de56d2c7eb0be31fb1669128c80e942dc15b32fd435586d92cf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/da/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/da/firefox-76.0b1.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "d69320ec8c0ffbead25906f9957d73ee9bee8c7ff922e7d2d2e3cca3487ded5e836d41b8faca42627f722c1f2d43fd918e6db6e9d93268155865f1ebfaf6a5e5";
+      sha512 = "dfc7cc47aa160d755dcdd790c89742cdcc2515c4c2c81f5d52dc6cd508ed90798fb94605514961765f4f14302765707979c01994b6d123836b4d59d7eaf2914c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/de/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/de/firefox-76.0b1.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "a64fe63ef81c8ceca0c1baa0bf55f0aa34b662fd9d0417a262e7d539164ac2f0b32eae89bcc74cec4113356fdb1ecce890509877bbef9af2eb6f7e91c2c2ca33";
+      sha512 = "e21c3b489c50b40756523da080fca8b16fb77bb34ab452b58225a966840b6a387e738c576c2523fd923a6a7ce9f2bfe6ee90d55a008d27caa36aa2abbaabfbab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/dsb/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/dsb/firefox-76.0b1.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "776c66f6421f250f22063cb77c5313df75b20b7b06a396c8124f7836b56e7a18fbf9ea996d9ebffb58a00ca0a27957199e4a53b777f5ed04281317926a95a84a";
+      sha512 = "5114f6bc86fa3c0c395af4bfe83c974272372371eace78e5d12418785981085bb4fa4b7ac37a27b6f5b9733d393d00aa88c8b7741aa7bedb58db26e59cfa39b7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/el/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/el/firefox-76.0b1.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "5daaea449ade4d15deb93864b0313f3b8f780b6f51e1ff63098a37fe83b39151bff5526d8685171fdcc2ff7ee874f697e689e47a60e37d01ffdf2a9d3efbc38f";
+      sha512 = "068d55f47619a1c1e281b480444c042a7346620b5291d2f0092138e7bb5864288a73afbd6d17735aaef2668bfa3d849239c3d8dd20b129f86e3776d89733ae95";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/en-CA/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/en-CA/firefox-76.0b1.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "2d3f4aaafd042888a2b192419fc5fd5e841a922a1b24ff8cc95d52343750e64ae8a0deda694faf3a1ec11e447f25d8303f5905b1f98349ba5f0e705eae4fd615";
+      sha512 = "f0dd5496fe3550c8cc13159bbc10173e7f9872110cc788cdaee0bc03db228146742e05c602f62b19dfc4d6fddd8d6c906fc5b797f178801aff1e6c933175ea91";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/en-GB/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/en-GB/firefox-76.0b1.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "e977d28c7f2a54793098e6557dbdba56a8a6b0069912188c59f246a004147d17454a338df4f4335144e9d4e5a52a510bc94076d3f38c8fb28797a08c59a903fa";
+      sha512 = "2ad9c48ff43c64e0ed013479f489e7341ef2d1dfb58838f8a70d0c639cbadfa32adca1290853c59f87c3b05447c0f1b89ce9f749d62a3776ab4370decd2f2803";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/en-US/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/en-US/firefox-76.0b1.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "e30d89b9ea552e7758f550632b41c19a34dcd75291a71def8aeccb4a51ddc0a3da16e181a8c9d441da0d671a89d0f7a481e19599f4815beb96aaf7a95e10e078";
+      sha512 = "04675d0809a12a749ab9d4733281ff91777e9701fd205d417268a37e9b022aa1e6a8a4e7df41e115fb7beeeb953122bd5c60f6af81fb1bba1e83aab723eab373";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/eo/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/eo/firefox-76.0b1.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "5d086d6725cf99aa3894974d78cf0e337de0244163e3fe8507aeea9386233d14ae7a1f1550c563a5fb59f0cae51d579c4f0e578c9fb56ee48d39be6d644451d9";
+      sha512 = "b755b912eb0c4fb3a7b5af88c1340e105c1279cc8dd044011b160c24d028c651ffa37259858c52199aff69ee6e748f284cce29c977326fa9770255d346f4f75e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/es-AR/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/es-AR/firefox-76.0b1.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "ff818af501719ec198d21b5a53d54603fd591d266a2028827283ddbf5bccfceb4382e7ee9ad1119936a2301b067882f91fb04a354426d4587134e065033b4028";
+      sha512 = "0ac533f801714d9a594b0a15061bb01681c0343a0fbd593eba54466a3ef29d9ec796a32a88363c7d079df52756c0060ed194eb1f107c2d4c696f4d0d8650b66f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/es-CL/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/es-CL/firefox-76.0b1.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "2bb98c8dbcdb4d2ff0eb660517e1adb99d7917e9cfc6429e870ed3ce168f4c2292feef353e870293bf76f7d9cea4095c6d22c59fb9ccaa9f336c93e9009f8d50";
+      sha512 = "e17066e0b3a6891c92dcfd935dd9e5326d56f1925533c5373ad0fac50c82fb3d9e06dc43048c519b0732a082d88c93a66d64962b632541411d7addfa337e63f1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/es-ES/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/es-ES/firefox-76.0b1.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "4992db4b3e0d5273e73fd7f88e7284809a5922c2b700b695830da7ccc11c40a23954a03a602bf319678a432da218be8de825b15e2eb62b6eb62a0f34787ba0f3";
+      sha512 = "1a388f4115f854ed8b733b4b358c5dabdd9a45104cc7e7e7d2d19607c05ff7f63d40fb185231beb4a367fc9f731c0b4c194fd1678372210011f95844515ecf04";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/es-MX/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/es-MX/firefox-76.0b1.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "df8fd54ca32af5e0d579a2fdff569688248f4abfd30ed677d56a0ad850fd603ac14aef086fe8ac167d1819d0e7b354de77c948613a9ccc3e9c9adefbab99d077";
+      sha512 = "227778965653952dd94d88f7995422debd7ab489d8280ab26e8ea2f1d1658fc3eb3232e030778ce3d200bcc80d71654607c163d7607947faac72635b5abb2b47";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/et/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/et/firefox-76.0b1.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "ac96ffaac54039cab3b59063614ba8eb5e731ad0912e83f4b61f812c927f0f075d9d9a6123a3e1211bf96c886a925273f16fbd31d75709a195379b763e936fed";
+      sha512 = "12ae12712cfbf97d5d163630eed0031fef0ff9e4dffd02a0568dc9edc5d5986d8398368d02b85a795371070af0df6d9617a93eb0fb8007bc2570c7350a5b4221";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/eu/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/eu/firefox-76.0b1.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "4ced029f5d52fdd172d9f25e8dd062278758b6987fae56554e657dc32c2323caa52ef89021564d9fcd4663e75e0a8163e925c32048d77acfc92a0db9ac171248";
+      sha512 = "c7a94d0d45391522eca37bd70f2f695fb63d9f1c0d8f02e368333dddebc2e9a81843a7e0562186bf39bd3c1ffbe6f8d549132cde6273b938ff903e4bdee42e24";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/fa/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/fa/firefox-76.0b1.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "c4f131631f72b98b9fc919596bfbfea8b605f2108b5094e9e265df84317a825de9a06cfc4ae52f7901138b429f9c7ffaa4b719b18e1485007c6ffe96d689f690";
+      sha512 = "db47c3b5f7e270ad93b98db65b433956a6f2f4137f95b66e4a83f6f2b8d3ff6d58f845d2e19af609a3069f1e4f724767c58228c1d003e5004be08a61dd4c7a6b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ff/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ff/firefox-76.0b1.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "c0f61fe82231d8a22f550d8399e05e7ece426fb2f1d15d36b6c43ba3c3872f07f76102a69759fab6533bf08a8248ca7dac3c59d723b3f54161e959d85c24348a";
+      sha512 = "dfa42eba7f9300771ea1dce4f6820263a7e819832781213adebe964c14fd46cb3ebe9659049cf5bbe72b641588297822485c091627e36636dae697b568bb46bd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/fi/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/fi/firefox-76.0b1.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "39bab8b71d79b58157278d3f480353d637c54cd5f13e75323d9eb2ec95980bc004e828c612f080414f85838460e82f90a490dba51d312a5147788fa7fc5c5fd0";
+      sha512 = "c27dacd68b99f1102047a9b72ebfbf6e0ff888f665c1727388614805df83135c134a4c8d819502818a0361a81598ddba5e06d2752b6404ec8c75664dba6f80c3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/fr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/fr/firefox-76.0b1.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "93a42248cddfd6d3c4151c6f53d2ab00f9200537056005998c7d9e5a3e8444a0f47c621d850829bc0e0f0b21cab9611c1ad5487f0bd8b2a3d41da7d1256119a3";
+      sha512 = "6bdb52fabd84fe04fb1bdc2ef8bc27b8e133f043266aa5e204245e7a1a55150283e9960703cf171729f800ddd72c5343ae7b3f73bbecc1832a166d8b49b7f007";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/fy-NL/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/fy-NL/firefox-76.0b1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "23acca680d2d1a585103a26eb9aa1d8e84d35865fc3854d3a2055ec8337d42aac3d2bb0eac21930816577b60eb4bd6d47580fbce5f7a5e47791dbf798c50487f";
+      sha512 = "547050b68cb5cd8b108e37add411aadb2150b81de18bb969a7e3606f46f2e4a1c5b13107c3e380332f4fb618283bce06e320201012bcf3857e4ffe7c406dcf04";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ga-IE/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ga-IE/firefox-76.0b1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "05cfd56f53d033a70c1e1ec08e1355e281ef525f6389ce849c87b92bc6edbb4c953e054326eb094c5862dd74db64839e36ec31cf8ad3fc2248ce2ea309a40bac";
+      sha512 = "2476df820a78769df6bfa0270b096e4671a0aa6b80600ea792742b8c2117a7f10028a46aa5343895be9d4788e3cd857b2030cebbc80600c57ce8ccbecacf65b8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/gd/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/gd/firefox-76.0b1.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "aab0c4ce13a418c9de0fc5655bb5d5269dcd07ac67e75bec66c419f06348043c2c69816704b770398e95ea0a65cea531600bf9322545bb40394b3c599b71cf58";
+      sha512 = "81930ac202d18c6b3d5ec52edca4e5cec3beacb53af6e98a2fa55e4d82b60d1375e61f0ea27aceb9a393c38042c12642ea46ec4f58ff0fddd14ff99a4111313e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/gl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/gl/firefox-76.0b1.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "61f4b6e54d98939b361fdce716be0701a51fe789085db0df4dbeac5a64258fb3ef3dc30ee6cdc1539d9facce481cdff5076dc19bfffce31f459e6377f7fa6872";
+      sha512 = "0b34df2212eb393bb803407b7f79fb99c22d2b3217dc243822773be76fc9b434ebfc88485ad2e67a56364501f64936860c5f476d09a05b2799f6dcd6aa2c8c24";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/gn/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/gn/firefox-76.0b1.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "fc77cb70f71f832ca7f9c6b6ac9e7e6e75737c669b229e3dd68c9061a0b5b239cd3e5d4c501a45b8b964c862230736c21a1431dffbee82dabcb4b9f7b95ed09f";
+      sha512 = "5135158c12b398bd0fa9caf3065135e4b84118b83e4873cf98721a8f2a93198487b1aba3935f778aa6fc0fd5ca781de175adb4cd322b501f8ef42b92e19cc459";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/gu-IN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/gu-IN/firefox-76.0b1.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "c5e4d9e031b97c61b1026073fa3f772158b803c688c8bcf35fb6725b86daf9a3fa970788b8468f4e95303adf73c400ba7b72c52e008d0b6a835867c73a583164";
+      sha512 = "b469c343d792fd9fce3bacedb04d7c309b21bd8b01c5cadfb418d4207be48fed80624c3893d36240e45c9409996d9f86b96992313494525c6e4af5e366982c48";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/he/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/he/firefox-76.0b1.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "49ab14bae6d4e7211904a8da54558e70276897fbde5252760bab17aabd845f6d961e79b79c775e338564b94534a4610742968fa8abf09a4bbd49cf7241b86f8f";
+      sha512 = "99f2abc9f02aabd89e03e414b317d797ad0e9c7d9debb7d7029c3381d0764504aa4e65ffe45e08c0e9c2f48f5d97986284ad1372bd7b9dc68b157e1e9a058e1d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/hi-IN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/hi-IN/firefox-76.0b1.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "f7b89b02f01de7f9157160523c30388064cfd1c9bb2f24788e41d3f6eff706a76d50c562c7f270d3b1287d8d886988f42d0480f39694aa6d1be141bcd926c6a0";
+      sha512 = "ff7fe6d665b6efa694e91a6560c83fe4210d9ddd110c9436a20742e5b657c0f46345c25c53fc0c30a82582efdb1fa1fd53d328e9f2c85c9b800be04ad796a7e0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/hr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/hr/firefox-76.0b1.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "d8319df0d4ca8c3bb403fca56565fcd16916e1057470046173853fc9d299a04226eb2e00a1cd14206d9e576b73f64722ad65e7c0dc6c99de498bde7ea5b35f11";
+      sha512 = "6168039b77edacad882f06e68a3591e5de7f2980619d17b7cc01b0ed41ae5d57b60f2aacc29cd7ad4a92317a87c3f5de97942cb8f78642a2a29c130c04535bf3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/hsb/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/hsb/firefox-76.0b1.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "bcff9cb8396e05dfe124fb3bcff48cd526322920ff38800988a1c82dc9adb6927b8df41ad52b9bd3cee18a72e6f065c8dee0239137b84581d555cb9a69e3ee78";
+      sha512 = "155d355bddd648bb63bb51112b1d443a212297288f8035b1a0c7dbea3209ade492c88bcff371d369fe2cf1910d1ea0027d162fd148dc648b464569e8d51545cc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/hu/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/hu/firefox-76.0b1.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "a570bfc699c1e3e5e9bb733eb1b92a8d8d31313aed84d57039a20cf3c821b51de36523c17d03dc4e1f05d57e53b07ca1457317452170cba84bb5a98ebcd59c41";
+      sha512 = "231bb489d45f47c827d7bd7a1675ed422c1e2af10da0817d599a8ef0cf27b51c06dab0f79957def6625baaa61994097020f539de2ac7263bf09efdb12c6a5ed9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/hy-AM/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/hy-AM/firefox-76.0b1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "72758745bc2fd3ff651d5df2ec3a7af7697f299f488da5096fe2b740dc2a3340ef29cc4ed107318533c4b1e7438688169f5bf2d103b307c615bbb9400a334091";
+      sha512 = "4bf95879356abc7f0e7b7373da4fa3a9c12ac3dc544b05549303a8d445730987f4d4b1a6f4df11b83f2585e97e160caba5bfe8a76fab041a5c21ed89ff8ee24b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ia/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ia/firefox-76.0b1.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "9fb6659aad83d753c244e4efacf55e5918692964c84d6428f069e90710693da7b82a47ceedccbfda32eba6f3a8948e01ec32695c9261bc254c4b7e1b8f84eeb3";
+      sha512 = "3404f0434c4794a3cee7874649ba74e6a182164369386812a447dc088bf3733eaf1d370b90cc393d534c38d705effe558914d43725c0d7678c3240ff89e171e5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/id/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/id/firefox-76.0b1.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "c54aba052fe2f4d4e9eb08a69b0bcddcd4e3dc84ec6be643d34eeaa638e50d17658f530100577d5d6acc97dc7a5b4baa640bfd0329648390cbdb22713ef70911";
+      sha512 = "33903d23a2d3d2cf0a674f5a2e396af98b5323172a17b2c2f8f57e8666d61a31fd5615fcb1b6aa7b82614a0decc2e7de1db61451809f91d1fca5196f2dd2e998";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/is/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/is/firefox-76.0b1.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "01f552f0224e2ad316e84d3ac55051f1403cf2338d5c07767db463db05bc19728b7f096a3d30bc03cdf86bf81bc799a310241d33b8a4e7e5dbf3db61bfbde263";
+      sha512 = "ab6dc63a4d99ef251210e267ed5c14e8a81b10b2e3aeffe030600e2cd8206d55cc89c3950900dff127270ad51a0cbf54f2569c8c5b65beb805fcaaac9e904a7b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/it/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/it/firefox-76.0b1.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "bbe8a2f64dfb54a3a4b13d7bb14a0746a28bd16be46608744696bb12aee1b6acd0ad4991e2ff7867e9679a3bc51c8d47690e08705b6c860cac1e27530aab24de";
+      sha512 = "47dee92970f981b18b6a2bfdcb653001b44dffc165c535e5ea79a5e2b7cf2629675044d090f4e741a7a022d175c36a33f5afa225951cac0d70d999a3c63e311d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ja/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ja/firefox-76.0b1.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "437e74242ac37576dc01be92bf4fa57900d282b0919e4fac8a073bcfaf681ac2dfe58c2461ea18e912fcee85b97ff40df3f8f1c649ea442a557388544887f7b8";
+      sha512 = "7ae184daeecd38289e6c3f4060162bec02a0324319b84b68da1588614c6afe6f28744b482b05b70b33031ff2928ee5e66fe9fdef0d3772f112b0504a3a4e0bb0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ka/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ka/firefox-76.0b1.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "d7d4374c1f2ea6e2c2c40e3d425093065dcf624b50532116e576f60fad51b85251ed7284a63b4cc2cc368d1bd80eadce8d82a581789e02ca5249a2811fcccdb4";
+      sha512 = "1cfff13b6f904cf59c6a3dc1c6677e5422beb636abf399d6cf5a6c56cf052875c34ebd6582cecc881a9351207ccf6b230389f9e860ed5ad98850dc0deaf5ee44";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/kab/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/kab/firefox-76.0b1.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "235f9ad96c86ac81ee8b7fe9ade89559751969ef48eab577276e0289cededc708bc05eaa413febae13ca4eede96772915ab4b6726dd8bd5bc6b7ee545971c791";
+      sha512 = "846c208fc457b855cb3c41a62d71fbdeeee5e4414e2eeef078681653f7ee6cec3a8e1c1f83005890032d71cf417fc5589baf5007f2d262155fd0df2145964be7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/kk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/kk/firefox-76.0b1.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "d443ac7f6ef50da01038c7bba9bf4a2eb12b53410a5201f64162eb2a287f5f4f16d3408715ddfa58471d53e0e58edf46778141118a9b67dea410af683540f82d";
+      sha512 = "025cca3bc228afa9fea18f84dfd111fa9b8c1d8f529107662f963f63c7311166e812ac5e5c892d4e5a1565ddc718c915eb5981de700096e2e8ef5c699bd2d54c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/km/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/km/firefox-76.0b1.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "b3d35fb421b9dbef950fbea28e80b530c9433a9d51760d1d43043637a6b497a3e2a890de8b2eee9b911e60a95308669035298fb429648a21151e3f08dc6a32ec";
+      sha512 = "dece035ffd0267c56242cd1ac3ef0bd001429ce3a32395e8ee27786384cec80db928148b3253fcea976858ee7c943eca5275d1b2b92ae46b7e8519c43cc7616a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/kn/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/kn/firefox-76.0b1.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "65d0bd986874b9619caa455f9585d309a30a87b482d0375de27e46a70dc84b5ffc4d066202b7b597d1ac7b28e7be91550bccebb419c4a24a847180c62b7c46de";
+      sha512 = "d05be55571ff99f86784089bb9b3b0f8e4435526bb7602146e29e18c8ede2d9291c64019b7d8e415d26f5badabcd549e361a817fb7769c38614b7107df521cf3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ko/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ko/firefox-76.0b1.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "bf43ec6311e6ba2259e802b1ba569516d5117207738ff4259b2346b97ff85b8048e5c1a6d2b4b3c27a91ebc40ad6a85eaba84250be79e41f4570294448a1dcde";
+      sha512 = "107681f2426316fbb2e61a4b9d79e8c3f79508606ba2f34c51700fcc95ff8f48f1b1d5ee6b78174ff2758cfc63aae62555176e79c299100e3814e7e215424a28";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/lij/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/lij/firefox-76.0b1.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "1af356fa06b39b9d638b13822e82f4961a237e3587f8b671baf5862a87898f440f564f9836284af6e2e3e8b1f3ec462af1e9c9621ae51289fd0b1bf827a2bf1e";
+      sha512 = "fd590767f7e05a662a516515a25e294c3526c5676b7f6c0732dd6d00be596ad32dcf587d4218d27d059b9bd0e7caf05bb96c0605c19b78c48b227c3a9088c32a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/lt/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/lt/firefox-76.0b1.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "a4ea24a874261b51032a1021878ed2c0102bbcddedbe887c8f5893f428c1d3fe6cd906b3dc53b5b51654c35e03245244aba8a2811deb7c3cd9f6d0e2dae3bdcb";
+      sha512 = "c84b879875b2e4792b67ac2e3dada7a1a6a11d79fbbf4f1f05bd924d8498072fde4021a542a9e80beb2c2d1f527a066cabe1dda8e5d91db27b88c9eeeddf9b1c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/lv/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/lv/firefox-76.0b1.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "a8f385bb407d498ca291d088101adf0a4f93b8fcfb9abd3fc36311fd8e4e36424f888f5abcbc1662ec4f7dabba891ef765b10c4a9dd8364898e803fafb82f7a5";
+      sha512 = "791fa6b41e1bf7641980251acb61dd944477b280f3a3bb9cdaaebac2fd5ab7b4d0e4ef03963627e84be0477a45a42988946c6cf151b42d23d05c93c12716171e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/mk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/mk/firefox-76.0b1.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "453a3e2726115ff8aa057445bf05fbd9bf5c796fe8efad9590aa09ee8ef3d70cd6de3008503c336770ea3cd259d226962c1a6e198bf2519742e14cf3846b1975";
+      sha512 = "29acfa93dd502f9ac97cee86c498f1b6a880c423d47c69f7d1a30350373da95a898fb748b8c16bcdea019865c603a7c9f275d7dfa0a3836942aeb3bf861ae06b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/mr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/mr/firefox-76.0b1.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "91bde3db18f77850affe7c3b981b8d233febe8e95d8528443a80c0b569b587d2e605ae6109206463ab273c9a28ca8db51cd6920ac30664cbbde9148fcab6cd36";
+      sha512 = "d28f900f5216e971577ea47ea995cdbb55dec219bc01e27a0e49ff5d87c3afbf5a95f6d6653d5f1baf881111f63085ef23ba9bee936911efbe6a7ca3259e9873";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ms/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ms/firefox-76.0b1.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "8e758ecfbd281cf443dfff4950b1065337fa92b1c47c4a73f9e78f5ff1c19ef46e3d1ea1e9458646a9beb6367dde72062144a2d1d2a94a0e0ac1b40a2991fe3f";
+      sha512 = "05b0e1bd2fcdfdbc4f6429990dd9d7073522f9e3eec4a4fba371a9dac05292b144dc941f07aa7fe6bb17dafbba8ffb04656b2d857fe4aa71db9e5318748597e4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/my/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/my/firefox-76.0b1.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "1129e76bbd5ba3c96e8110b3b00eab0975fe38749da46846ddd37299f73840b987826ad80a3d3f2dfc4ad0ff38305fe45f736fa90c671162a3a9563eb1a1e755";
+      sha512 = "a7a43621aef2342b4ffc5e94eae8c01ae7d4bc4d88db345ae27c3a6e585a452d90b636875505910a3a84442a2a0dd1759689c037fd1ae4da9e2d16724b1b15df";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/nb-NO/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/nb-NO/firefox-76.0b1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "3aa4e29466e7d6e3e3d34a570d967d4c14b3fc3977912161d30a6845d75abe6ec745ed77d08716a11ad8a6d6e6656f1c5861453af27c10184795ec29bb22a386";
+      sha512 = "4eaed0fdf2de75af7bb44a6102a4a547ac6dcde61b4311c83730f8bd15f97f37ff8857d53666a80ef987fed4b865139ebaac1818f964d2b3a6f0370ffe0d6766";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ne-NP/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ne-NP/firefox-76.0b1.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "4f9e880dc686e04249553c5be99fc9628105aeee67af7db88cd0662bc4a9fd37e8b9b18921b608e275d7e0b5f2c03923552705094e6749e0a3d0421e82a2bfa8";
+      sha512 = "7a547372f165073f50347ccf6c8690cd8f1939552102bb345ea79f86972ab2e0a9672d6d3a9f402c27cde428b84010f9e7d93cafcf3837f2f198048a75d86171";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/nl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/nl/firefox-76.0b1.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "e271a6208e6b7fe662284f76f22482d854be8e700923c96b2426036588f02a52c9698ef05bbe8422dcbc4a899eac3bfe247f28146e2f64ebe0699669219051ce";
+      sha512 = "0bfea49494b20ab7307802fd63329d09514458b9f15fc2ea7dcd45a1655c4c4adda5f94be7d6a9b59158f93c3f2febe9787bb168212144b55e4c0e10586243f7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/nn-NO/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/nn-NO/firefox-76.0b1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "e7a2b1e038cae097babc40eca692da1a4066f01a18ad958378533ea03cdc49e917e13c18aae0fc40dfc99723e3f86b25b1ae35f2d400f83add63c4151a4807a3";
+      sha512 = "1f6313d7b493bec8eb0319f135f6846df800473f192ae173659b2bcf963275d8dbca21992e86e17a0365cc4702f5f36e71962b044b76f572f1afdf1a02564913";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/oc/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/oc/firefox-76.0b1.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "d9c3701024ac70fb83ccff3e2b843d224115608b7fad1d6db672af3716e9fe7a80efb8d92a366d085376dea51daf099299acca629113779622b39eb19750dfca";
+      sha512 = "330e031d4cbd7d426afbbb70b0a10ca5d916611e7a10a1a1826d4ceaf76441e0edd4c8854197ea1b529890c9962fc9f6fa5787f5b6d4468c75be43c4045f16da";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/pa-IN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/pa-IN/firefox-76.0b1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "68d13fab28380f7ea29898dc2ff91d6a2d591a2bccf0498023494466827b4b4eb7ca7769b93e042dc855994d590d770b80b9c5d1b636f6923534a595cf6d356d";
+      sha512 = "c5c738969b18a922282ee53214d89d36a67c103165d4c2c1593d253cedbcc9a3d074b81594d8ccd85127ebcac60673a6766fe82bb4da1f6f78cd79c41ed7ff0d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/pl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/pl/firefox-76.0b1.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "69b5807c0cf3053f87e5a8b2fe51dfa40146685afbab623a7824f6fe6fbe786dbd17c683d697f6b61adf78f800b84c0c5a16e7caef54a6b3dc02d0ffd5ca89ac";
+      sha512 = "e6e5dae278c07b57eae31b21eb25a11a9d3cbd68972f36e4e7dd6b1a6382a2c1553eccc9c214ad4c8b7f078e34a6eb97c46dc2af0084705ca34fea75e8655f54";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/pt-BR/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/pt-BR/firefox-76.0b1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "f9ae02b7c9c72a97b8d28ef1e1196dfbbd5ae30acd82939c8b7fe37a1de0c73492ad286e4ff05c0b5f8c2784e0a1b2b68445b94bf765b501c062f33ad1ea8e61";
+      sha512 = "afbbc4ffd7052bc1cdd4a46e0f8b6c9b86961651d99cc50363f12eecdfd8f8f28a1f6777ef448d10397e8b032e252af1fbb9ba67fe73c5aa31109988ad7818d3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/pt-PT/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/pt-PT/firefox-76.0b1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "e89bada391d72440f6fb60933f33e78642a595dafb277d4d20768fd418c6049f6969cad8d1b95c76670cf7a033acdf438348e0a6efce9c699a7a2276d2b03f56";
+      sha512 = "87f98e8d9861ecf9553de23cf309ab48d31ae710bd415ba18dc9aaf240206987116336c165f7d7f7c77bef0529702d6524efd5fc8d4b0778e989e695e4c3e05c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/rm/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/rm/firefox-76.0b1.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "281ff5d841f3dcf7e2ef42a159a5a43426fca475bda02f70a34b7fce50a0e313f61cb11d25f0876314aca3f3c285504098c60f0e79385653f8b877994e5e5275";
+      sha512 = "e8665a8d5c1f329bc141087f3e0cc6cdfe14e23fdbbd0d3802bc09be299c618b19cfd7de273b57153757c57a6fbdb971c21feaf0c6dda1f9fe9c99af962a4d28";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ro/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ro/firefox-76.0b1.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "62bd91413af9017d6d4b70145f4c763fa7b35d78719ed14ca808ab3a38a4a3717eff3584a29b4c38de05c78365351cdc5a07bb3a56d46c65ee5447a3a0226276";
+      sha512 = "d734b6b9881259fafd0e075d8e494c59bc4c8ec84a405da9fc17113cee4cfeef96c992400c6c19a582ed90c3f93eb7a38cd401bd826c380f163ce8390b4558a9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ru/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ru/firefox-76.0b1.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "40e917d1a07ebe8a1cc6af2b399187f4f918ac3d509eeb8c6125147313b469847e34f8b9e705b400123d4327ad1b13f2b4de24f70e33236f7bd4260b4b13ca94";
+      sha512 = "50ddf9bf9d63d632e38213c3e2d1e6288dda1816f87540f3efa7dc2c78de0cae8be85f477276c104e8cab012a4a6fbe8c1217cdc232386c0afd797af799266a2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/si/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/si/firefox-76.0b1.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "58874b4198c1a7b374ed0d72cc223733889a3bad6f717151dbfe7e584df3059527d6a4ba055575d1c2dea74393f3d70705185e0c2cc589306c5f1e62a31aecfb";
+      sha512 = "a1e984f674a53074a37e98771cd2bacd6e6a923dfbd6be59bf439af965fb408187b7c56fd202796e51224cd57e17a926618f743175f255b6ce2be3006c602982";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/sk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/sk/firefox-76.0b1.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "6cc148e5f962006d2f5a5651c99e170b706c0e51ed82736aa51a3a15e8b254a67f6df6d7067e261d0a269e71995e1555de7fed81b02776885dab67881cd17cfd";
+      sha512 = "83ab99539bca4d2028551e6538c2e3325bd803f8b5068ef7b1a4f65decbc91e0c7f5f7d78c351579d3b47c2a91e886ecfdf7ee2075567416184098b117074cc8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/sl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/sl/firefox-76.0b1.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "1abfd77e7ef638d1d1fe1e1d8b31631f0a93e982c22c6affc9fc9af77dacc81d53afa95f63fee1a1b444ea7db88826a4f6a851c87b6518f2c6a77329c4aa2c8d";
+      sha512 = "aec8bdee4a190cc623eac9ef82f7e93c185920f3cfe35e8b9d97bb39b5f2c99e17dc71cc800f60e28f604f809613f82d41c7b5cd8e8b867bdb3c11a73bb6c5fb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/son/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/son/firefox-76.0b1.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "80e7fd5e34fbf115b4462913449d58e8bdd725f45120d068b8ea6624293cc944ddc218e3854b7e6935675ee1640446f063858515c70bc1a7990a3c10ac812529";
+      sha512 = "258602af8e2283cdc14f73d51ea1af1ae5cecea273534be6521831619e76d59ad635bd6b86624b72afd53a0c71e622ad0d6eb55f8593d42e97144e3e7b521d47";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/sq/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/sq/firefox-76.0b1.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "9e5088a05c22a448bb1212d2296d0b8690189d6bba8053661445e891b6e8c2716ef76a82e6659eda9c434f92a7f063e13845ce20944df571ff318eef764c2ef2";
+      sha512 = "e6220df0ebcef2312376d1a12f6a121e6c52871dd48dee4acb8de92d92921d348c4006a14a2cfb27db341a283ceaf100088c107b3c70d0437fcc1fc6a57875d1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/sr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/sr/firefox-76.0b1.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "18bfaaf378edb31b99bee33a60ffb06138dc6c7ff34c166de30255ffdfbcd7c2cda214678bfd0e11d4f5afc4a666d6c3ab7d1ffc92137abbd08c9e704f4d1d7a";
+      sha512 = "b6bd9028d35a06a2f50b2ae383b166e443bb1213f05585a2edbcfc92fd22e7c206aeb894bb7cb82f359c0bcb1fdf5250fa91244a9732348541ffd581d35fb7a7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/sv-SE/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/sv-SE/firefox-76.0b1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "f27fed18480927afae490b8f0c2c4c925045e56bb355404ef499289909e256fafc694cf51f030fd69ea395ad5b5e593f991ac428274af745bf39336d247e868d";
+      sha512 = "546fddaa1d9f07578a1002711aaa10ad683e015d6a4494f571d8a1fed3c9c0f4fef1ccfe5e20076abb47b5de6c793464191b1eaa8735bd95a3a81134f7f49698";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ta/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ta/firefox-76.0b1.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "200b41c6db82f1282155cdb348b8496bc61c9e248e6049e7dbaaec3732b4711f32b38b3ea349b47f1228bd8c712b15db3b9296babc177169795fe1819144ca93";
+      sha512 = "7b77aa5ce741767f2078dddb5e8c108b1e3db2da99b06be13537e2eab2be57045c7c0979aee16bd48bed152003aa87e93ab2bc47b1304311f0152a0636b14ae0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/te/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/te/firefox-76.0b1.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "193a3b9cf98de69ab236f9efd59e23deee25eec41e409a93c9949789d242957f2b58bf724fe3effa28111595c9d1e49a657a5d7f6c1b77a285386b712bee67aa";
+      sha512 = "e9e41551d2221aca5fc045269e435ed69377e1d110f0b80e4d36e8a3c3703adc1264e9f3963e9838de845624a454431671771a5839588e08eaae213cb44f6544";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/th/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/th/firefox-76.0b1.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "3ab9a77fb25870271c9cc415c31f1ec0258a66b3f1855c761dac367cfb509b6c73630c88f022cae271cc553adce8ffe63fb1bbd489067b92772286fbcd765c16";
+      sha512 = "917d50125d280c839f6ac60598197102d3a40a97509e25ddddccea43cf9f78d2ced2ad1e3f47a3b043637be3df131a8d5a9f7035daaed81b91962e9f474c89f6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/tl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/tl/firefox-76.0b1.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha512 = "f386b2d32e2656ef8e9a0afe0050eb7c8d8a1a00b92badeb6b5c2c6d8e046a2ca7b038677af56e725d15ca4c6111a04e1c929cad0575a034745e2476497c2cdf";
+      sha512 = "74c19eaf5ceecc4ea4d40b921520b9f7d313a445a629529624bb4c382edc59c8361f37e32657479b5a760d27dbbe5ff10f93c83a310b7e8fd5f520f299736e71";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/tr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/tr/firefox-76.0b1.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "802c72564706b4e447f0cc2835046b44395519d0c2d7fcf6c8f8478540649362a49144dba942e1c1e33e69ff69708437a985665389ea2b1307f8c386690f9664";
+      sha512 = "4352f9872ccfef5f9bd39d61ef583ff270185ffca63db795580337db227a6e1c5c9450da95b28662f6c98d95433e96c78ad0db9e72470096793fe04a91f3b26e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/trs/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/trs/firefox-76.0b1.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha512 = "60f8f09625d8d2633ca7b08fa3f66573ce0d23035f16773a338fc96944c66e6bc77af36b128589634fc99f86009bb1016ee2d1ed503407c2ff085d20c5e2fb12";
+      sha512 = "807f2857b8f165749fbdc7a1af0292efbd9ce834feef9dd1ca43a83022fe1e5afd259eb1771096d9b9507bf3a1a6ef53a4fa30dc30be9e978d760efbf2099bdb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/uk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/uk/firefox-76.0b1.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "d3b63163cacd6ba99e3f7dc9d5ac81e98155e77c0315ce9adc2e23cfce614f67b519ebc5ee8aa4f1aaf932c7f619f828487f41c6a712557c3f8289f9b3205f2e";
+      sha512 = "1d6780ee40ba9cb55f9ed2f6a431c0077747630bec036f7b1994b6d60d273dba7ed5a764d8072dd2ad040d91c7c05c02f9bd471a84271c232dd4a3997412bde5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/ur/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/ur/firefox-76.0b1.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "ae76e9dfd1b22a7cdd15c4b4b8b2a508168359cbc6b15ec9b52e489f2670799e1056eb6d7fd6fd28680b721a4912bba982ab259a02b050834e31030960b2a8d8";
+      sha512 = "433a03b7c9f78733615331ef49595bee7ec21b7b3e8c5af77672ec2390b2be83bc7d943adf98d871617009bede234d56689c22fb51fa8ae3c97723b500796716";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/uz/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/uz/firefox-76.0b1.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "6216b85a6b4329f378d057d72418a283c4e9e1454f918636c7dd0845e63a00827259397e82c7875d1157bf05dba32d706cef94239cd9ef6ffe03fb02255659f7";
+      sha512 = "5d3ceb49f6ef3c4f0e307981815f2201f07eb34eee3374c9b2d7d1d9a012364f392c1d39a6b700bfe181577da5e1a150337e01b562aa24c083b75622bce99393";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/vi/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/vi/firefox-76.0b1.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "ba8fff9fdeb195f42409a10d0fdcb6e8889a6cc49fd3c787013109b32692e19109b9029d69a8458b05b51d8df1dcf085c818a0c1ff5a48d32f68d251e41e9681";
+      sha512 = "a5583c925e1daa20f9ad6f35f28544930932cd7d04f95635f2931ce71cd08655da97dacf5acde5d90e195fa05a5cb2df998183ac6322130916931117a2c4700f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/xh/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/xh/firefox-76.0b1.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "0493e6e0d685809ac5f757a829cc0ca0564d8d778dadec422698c369f9aecdccf94be594919273b9bdcd23677f0e8a760e01dd40439262c98c9ae5f17b7888cb";
+      sha512 = "792fbf676be79e8eaf8fcac9dbd060ff62e0c187b911e1af7980b2274f244d22278fa8e5c541acce6ac7cc512b62b5d2cdb50fa63cc228c77663817035eb3e76";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/zh-CN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/zh-CN/firefox-76.0b1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "efe3823502fd81587460486dd7df33fbb878e8dc657c3d65d8e3f112374d3452abdfb797eb95ea7d4e3fd7003a2b906e78643ff1f344088e9a8a577f554affb2";
+      sha512 = "1ce1c7ff55e905549ef7d26cfa52eaf3d95c5d1428f71a91265aba5815a3769c7ffaf3cb19b7809420a081e9e1f0792d9282cd40de7a5966ba1bef7bae6a182e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-x86_64/zh-TW/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-x86_64/zh-TW/firefox-76.0b1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "d3561f2f043480c2c6bb2e0d455a752c2a00f800fd049a21c80cddd03ddf04d184f3bf352446dd3a858bcab5a42543992ebcc86246815205a455095b5884df75";
+      sha512 = "fa2d3d638f5f9bae6948e4db8e6f22b66414f55de904831fcb578e191b25064cdd785fdc64718e7b2f52fc35ac896d7a53d4ca07373734fb033c8d633998a393";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ach/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ach/firefox-76.0b1.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "7b9cf2172a3e4a7e7bfea4ecec10adba14944dad36db06d3ed60c36a5d893c67a0c6eb9e65f612040e7c3e2b7a9e966c53be7c2d5faca60e37fad2c497194d44";
+      sha512 = "7d18df1fe3443f85408c6f850a2ad4cb8ea63ce3bb74e7ea07d395f647b7106eaf976855d0629308eba20e12105d61f80622084a5d295fd950d5e8d9c2ff8b4b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/af/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/af/firefox-76.0b1.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "3dd2f4ac297e6e358657f90beaac9093816d339f84c21dbe3f87283c6712b1ab70c6fd9e70d05bc79a8997ba314711c37ace35c7c7e8a4140b9da99d953968f0";
+      sha512 = "5ce286cd2565c855a8234799517c30c665030481c2f0d65ef6739d7a2ffd80f58b67d1589b7952ae007427c2d2c519995f8b48003d033f2f6e5f23c7d646c349";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/an/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/an/firefox-76.0b1.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "e04e6875c8873fdeceae22c486b0a5f718085f35a5e46b4f3340ce4654709e4421060be73bccb315db4ac4a93991b5e844653b19518fc122150dd6c6ad84e89f";
+      sha512 = "0761d2be3847985354938b5f14e9c767a7ad6fa5a2d81d04635f56342f2b43f43b34ea36d89b063e7aed36e4c967730447c187d43402a8dde749e918cd60fbab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ar/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ar/firefox-76.0b1.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "0c1728f66fc037ffef1ab0f68d5a7e5ca3207467ad03981c0681981c562b6f51df0026b8b323dc4f0e15ccfcca470c1705776353c0b2d4802aeb8879fe306548";
+      sha512 = "7742c7828d7cad40f1c18efbac94c203dacfa45205789b5aac06568693228ad21c6dcdd1166c4cdb1042397744f0c0a82d278ceef236eb3c5279948969ff4f4d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ast/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ast/firefox-76.0b1.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "1b8fb16468b2db02e8e16d6f11d4924960f48dec2996ff087d94106d4b80c2250acc6e07f510ae4f7db65f590944df8a44eacede55deb915259fa719ad30514e";
+      sha512 = "4dd9380b8c327f653c4228ee354344a11c0bf8cd0c9340f11d94d1bcd0e8795df7fc9bd05ffd78d8a51494798cabdddac4f659425be1c072e776417df2ac327b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/az/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/az/firefox-76.0b1.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "500ea5cea770c8d8e5e89d367e9239fe4ad065f43ceb2c1ecb2ca997dc27989a489586b6f387149d6d97d204a2cedfef7ee3eb745bc91d140ee8ff162d6327be";
+      sha512 = "c69aa89cf0ef6270fe0c1c79b00cb0c6e599bf668991b130412a64b86703dd8580d9e270d89bc13131528a406d74a3b55caa74418b6a3c88a22386251c0873f4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/be/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/be/firefox-76.0b1.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "5c258e46db0b6a22b6a658dbbb4a321226b54ca66fcbf8e41d345ace9c1fb36fcfb415d06dcbe0da14cb9ef9d952146f232ebe962b975d5a45df70b30e0b0b50";
+      sha512 = "3d6a9126c3134a7ccbe58e0d7e5dd417a082bcea3d30c38fb9c208029a6abc39397a921f61978c6748d0ee5504c189f403615c36f0f3ede89bab32569bed3fb3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/bg/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/bg/firefox-76.0b1.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "a970851cfb8c1231399d2fadd15390f7a7a9a317169b85543d262b7c1003c84e11140fa364312938271c0288e4a10804628f6ee286dd68d1bccf1cabf4c015d8";
+      sha512 = "7b935192feccbc34159ebd7fd1fb08851a2004a1be71d49877e0878717574a413ce5e309cb6c000557ce638ac4d9e19f5a6c214036e06a36f395db9ca8dcfe7f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/bn/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/bn/firefox-76.0b1.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha512 = "a8442613f7aefa8bb4ab963e2271612cddb102bb8274e09cc80436e85ad606fa3d4938188c85c0a10aa01479976dadc4c4d6c2a17835980191e9dfc4608a9482";
+      sha512 = "fe300975621e290995533ace66387a8dd2d3619cfc45da185104f1e932143459458325b08316649c95b5ca265f1d3619218c90e834385f86d495b068df1808db";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/br/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/br/firefox-76.0b1.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "a3d32c2ee9fc1abb86162f04ebc7d13d3bf03d1596874c2198e031e2f993d0140fdbdc47f22bb7c821ade80f2cf12471f9d8191c5b7f7c87849a5577e4638531";
+      sha512 = "93d2c5ed98cc55b7dfcc8eeb1d6091817b5f257aa3b2b366cc0472662be2dad7e1e426a3f5fae56934f4ff8f99d7e2a0fcd50b0d51e941f3141867a162ade19a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/bs/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/bs/firefox-76.0b1.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "a5d54761563e2a62d0aae4b946b39f2d04d57f2a1245266c11bb4bd872d73cf7738c3a9d7c2ad47ee4c13175bf4f142e45a3a7f62582bef03a946ae98b7c038f";
+      sha512 = "18126891bb8471e8e1116e6eb1ec3276c02cdb10f7ec6f9f23ced45dd0eeb2101705b2a5e0c281e6284f3c0dcb956abb16d98310a8a2ded5adceb9308aa14f8a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ca-valencia/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ca-valencia/firefox-76.0b1.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha512 = "0b6d18b4f6cc77704997a7fa9d81dc58e70c1f4c08403164b93ab915683c7005410f5f90204a8e609a54dfba5cdaafdb268450d075182efdbc73701f07adc1ef";
+      sha512 = "e69a617d2f4fc149a6c12efa04d2de876cef18b2a75b945599add772b030721e1af78ec3b89d1ffeac4272b3e8356a6ac9814ee3aa4681ebb6126b5071e17cdc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ca/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ca/firefox-76.0b1.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "c65b0437b82cb4ea3b1eff84fc75ebcbf65cbaae22631471fbc8ccf4e2a6ff846adb88e4d93566fcfd394fd4ef4c4d15e63e41c11ded3678fe69032765dbd3d9";
+      sha512 = "838c86688387a6e19388b1ce02b22df61bff1bfcca2fa3720445e2edd57bc0bd54bbc7df8ca6eef17c95ad476d4619869068849e2ca4ce03c6fd01e0f93d979f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/cak/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/cak/firefox-76.0b1.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "2eb289a7c474279422dbd4fd6396f08946790e3ec98a6c5c40e217efc47a9099d16f01205027c995c0441e5787f48d95d6c40216ced393219eca3d55159a5459";
+      sha512 = "4a2e76d270c85969903c12fe0fbb512cbc4b6c9a130ffcd75c03261ef7eb29992eff4bb60b01b9fe54b17af07b9435beafca37a4e5e9160b311b88f48e099332";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/cs/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/cs/firefox-76.0b1.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "bf15d558e81ae3a766801b532b9cc2ac5511b2ca6eafaef012a4f9dc8fba06c6ae0e906541db01b59d566453b916bcad79749e1b036573c4a01a04a95a0dd60c";
+      sha512 = "105312908744f72eb5b87e7f403dcba3da3bde62347f4f3dfb9051689b9328e374fef546bef3e8921cf211c00d09a916868c20c91b340fb01ded65f7048ca014";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/cy/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/cy/firefox-76.0b1.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "66883ec6b398b6071b13c55027a3e3343e3e71b6de5ce7ea72c052c9991636a09737509d8127d2a27fb6550e0937ea21954c85d6daa8492c87c2287d542d73ad";
+      sha512 = "c515feead11875bdc67ba65a7dc55f5582163bc5036a743ef5737b09f23a57bb082cf3188289b54b11086cde20505c32f6c4730197ff387fd16d2bb2feca0149";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/da/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/da/firefox-76.0b1.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "d496d35be0076336a5ce37097026959ff8ce391c07b7ecdaa543d45740af18e3d466470478c9639c4f3b8a5d6ea76dade7196f65e411bd90e5dad9ec1c10a258";
+      sha512 = "306cc5ddfbc0ce0ffcfe2668b8861327086b72a9fbca05142d6e7464ffc09e1eb19e41c35a6b3267a44b65d5700b9a0bdb66d269ca6c105f9538edd846b3a253";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/de/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/de/firefox-76.0b1.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "7df38aa573d796c23e00715ca333c7a1f90d560513c17ae35afa80ddf2783ed4f091cf2e0d8b25174186008ef818e5aabe993e2f013af7d9b61fb0ad0c954886";
+      sha512 = "794cc8287686c527a8e7c62d57b3f23d0b625d88b76792c508d0ca4d2965da40d183b12c81282b8af71a33d0813ad484d3425446731745f8ad4141857a44ca87";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/dsb/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/dsb/firefox-76.0b1.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "d72d5940904da04577dd0ec0f90128bf4c89b8261f54ade9a265547957fa9ebb7687ade1503a0b8bfbffac094953cd0d1fcc836e26203545ad497221152a2847";
+      sha512 = "d9a043754c21673cd1e65e141e2e73c8fe89325053239c8ff45b809640a7d759212a12a1f67a77acc5da83e182cc4d0cf2b10ee4fc68461904e3c479df9d5f4d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/el/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/el/firefox-76.0b1.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "d05716e457a5eb13a51b0bbfda6eba4f9ce775f567e4750831a1a3fe2d5d2beb8668d80dd7375e7b4db2603d589a6209634d6704ef34a851f1a8a750d1ec40db";
+      sha512 = "39f7818fdf6574035d89d7b0eae16cefa0ac511fc8dbebe60cdd0032c7e227986d6df888b88fac0c9dbc4a7123adcd73536d59daa0128509e26f04669e47abcf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/en-CA/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/en-CA/firefox-76.0b1.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "0821949d86082a2556ed163fa2c977e79293f45b6dfbf2517c3a01cb4ad5d50491e6db900106c4141a93461cb456d613c5be3aeb9afc8d4f502df0fae15c1b58";
+      sha512 = "8d047f18bb5136b31b51d3799a59215f923d5de921d33bd92e84a6f4fc93b8bc6da498782c606970f986b879c34fe136f50e6324522695dfd97307bcf7bfbbe6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/en-GB/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/en-GB/firefox-76.0b1.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "df4bba4600e6100772a373c6bad0064c0ba3d04c7db50a2a8780bece46666e254402d3cfae20114b29a1cadf19d978d47127c0e39619d40876b0fa3df4b2a84b";
+      sha512 = "75291465efeec916442cf1e495a5b4e56d0e66e32e0563b555cdf10c613922bf3b6392fd38ffa2f0dd02157800ebe5831d2ab4a5feda30f9fd8ccbc2a0061800";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/en-US/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/en-US/firefox-76.0b1.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "56f6fa58f059e2c757e564a3cc25121d816c2afc347bb47fcf2c5de23b384cdaadf291f02636aa179eab0e6ef185b3b79653f5bdccf6a92d825c3a7c2c9a11a7";
+      sha512 = "f8b18128878564683986150825a9e4ed3dee081a698be8cc987a166edf3d04cee0a5289392f0acbe085f055ed483c8316214679c75792e98de2725b917cc2586";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/eo/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/eo/firefox-76.0b1.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "9ff03e25d258168238f0d6c2654ae4896fad897e0c9b797911716e7496846b853601e0dba92db5b1c86ae94476752d9dd5714242dce620cabb5ebddaeae062c4";
+      sha512 = "36138fd43941b8dc0a418e24aa9af4186f9294fd8e3f685a81e6afe6a6a55762068c3b8366c0003a03ad5699052ddd62ce137ee7ad67e16b4bcd6104fa17415d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/es-AR/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/es-AR/firefox-76.0b1.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "05be15de79e1c2807427a927ca3d580d3bbdb5d4df0e4be06e23462a843d125df22471d5793be410a24b262b1796fbbaabcd27cdfa12cd0769b68967ebc9f5f1";
+      sha512 = "eb8418c1dbecebf6c609569f8b9914ce5f8109eebb80423c386870f42b8210f43b985c66cee2a0aae3c62debb6b481c26675b4fcf206b7a44fef4bb048732c2f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/es-CL/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/es-CL/firefox-76.0b1.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "22e4bb6047ed7ad134ed1c33880e44dc7067a2e1510452483004075763b30f91dd1221cf3ac0069e2f31cf0a360305bbcbd116e62133b56ad509ac3c4035bce6";
+      sha512 = "ec3156b0e057b59e1220d4289484810972a473327dd6d231094108ecc2f0df217ed70237242cb4536aa9bd10a8b6f86447528fed4d3224c5024cc40ddeb36f54";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/es-ES/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/es-ES/firefox-76.0b1.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "0930851d3c29384c619347fe6098764119b1a994640c744ab57f2b727164f6596b7c2c160459e483a9947fbecc55d6a1781ebfe52e8b6ed28403f3464f56c98e";
+      sha512 = "d90ddb9b173076a1a145eeb52ff25c25cec45c72c195b3e7ca11593adc9babf0e12994d437cc04c518814caa3207049a4488c35ce373cea3adda7fed68426ad8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/es-MX/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/es-MX/firefox-76.0b1.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "ce7b0b898fdf70b6751ee95ca098e5b1bd6a8798313cb1cce0201d8457bb90b10faa2ed2bcba04113e10a76f92f3b3b0b8beab7771fefb9cf2cdcac3a4385041";
+      sha512 = "140741d62afaf15b676313923cebab714d9d09617f62302c861fca82b7b06551dda0d60ebf0de09bbb28139b836149ff65c964340ff5d7e7d7423f5c6481e136";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/et/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/et/firefox-76.0b1.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "0d8961cde7ca4bcdb16bcf579158ceebbff44f07565267765178ddbb9a5318e58d60b2f70bc1fe0a939d06d1705f986770b9fb17a8d22149feb1d66c44e89d38";
+      sha512 = "2af762edd98cea3205339ccb25e4247b90fbae83eb4ecc172ee069af7c14a7accd0aa03e0b28489804e741ab6841ded0e97c170d388da30d68bfc5c43950763c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/eu/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/eu/firefox-76.0b1.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "f77101548344ab87593ea80be86fcf6f27ef6db48f394db549815c1faed4fd439a28ba87321befcbf79f0c9dda93169abd1cf68649f626da694032fb291a0434";
+      sha512 = "6690a291b2af54fc50fa8d405087833716cb0f330b9e5dd0b24d0b8efd15f5e8c8892f95afa5ffdbad3c39af4db9b823ba0257b2be7147989ac44c75a4552a0c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/fa/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/fa/firefox-76.0b1.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "c65ad5b2726dc17ae327ee02704ef1eddf29bdea9b27096ca571dfc4f12449a4f1a6cb8550e401d6ecb106a2ac0ffdbd536a12f41d6fb4944012f106adb0b72b";
+      sha512 = "195e89b37a016d22a8a53e4c01dd2370fa4e13554811e0eefa66f4caa47652e16e44e7b314db383113048056b2837696beee093957b8bfc643290784d05019cd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ff/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ff/firefox-76.0b1.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "09baa6e459175ca1042b489b63c0f6e8248e4039d6addb2d873dee777cc94b5e3e4b0c77f78f8462239f6886e74deeaff528c271a03433589caf4db6c2202c4a";
+      sha512 = "961b76ef1121a44a194a06c2e98b583718fcfb25c81ee1cadfe67875e34f4275adb8215b4065d71d3bf4f195801aa7f61a8571c378dc12d271f633ea8c437cc1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/fi/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/fi/firefox-76.0b1.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "52d3945bb5f16874c28a37230c0b2a593d368842dea2aaca9cae6c017f182eaf165fb3658a6a1a0881d54c88fa5dd7ff42806f8eb95653095364f66f0598b26a";
+      sha512 = "b81e0cefd5e1de67e5af360b888ff5cc9857b09fc34f797ef799689ef33e96ec09613051501e0dfbdfb66c87e2bbe0fdf971f0b7c477fd405e7f99ba54632ad5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/fr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/fr/firefox-76.0b1.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "8bd4b0d20ca32693f34c8aba6f01fe1a2b0a3a7730ef1948de81dbe8944dba09ca6d24f87a131831d7276f9ecc44234778cedf4d1f814784e65607d13829990c";
+      sha512 = "7531aa720608c34525063742ac1bf005f03298ba6a7b1b26ef5614d6fbb958b2b15d92d42e17276e99c0f46c46b8df9f177a370e488c18e46aa03be19d7cb187";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/fy-NL/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/fy-NL/firefox-76.0b1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "851cb969a20e1927f06a6d33a0851f6e63ed14defea566de90ed2c98e592a00cfd1bf34de55c125449c2355002870b7cf5e3548d37055a5cc16a36192f9c92d2";
+      sha512 = "f0338536c0a015d9e462508f5fed459a2477f7ae5bed9155b0eec5372cedfa37bb2c45328d063ce78cc3e52875b05a933f4e364ff148c282ffe1ee7156ffa75d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ga-IE/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ga-IE/firefox-76.0b1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "79ab060d152b810917803cffab7aef198670a98d8d72d9ebde1c3d3dfb6882ba19cc27e6454654d7a164dd712280d257b33e954f628ed7d59c8d3915031c2767";
+      sha512 = "7166350fc9c9f1d8b76a6218d06ed2eee380a7e4197451af71d7561c0853896b935a4b5165a0ccec9c25f2022bdd9f5479509e614fb5c48a81706517bf855370";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/gd/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/gd/firefox-76.0b1.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "4800e3ec3a0a53ef9a2cd605ec93d4609f862afe1f3c2e7bc7d64ebc5b5ca17ead6aa2027a5da7b28648d7e4db2059987872d74225ad765f68a4cc5c45f14a1f";
+      sha512 = "2cca60d8c714ca63b3f1275cbf42cd97b58e2b9199f2bfe7f29feddc0cc05258d69c7a6859b95c5932ae7d243dc080b022ebef1259fdecca1eb83610cd54f526";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/gl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/gl/firefox-76.0b1.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "8fa1cd71b985fbac1f0e4d817a1c3c7c7ccef1a1e8c59fe14593f4ac09a6f6f55919c060adf25f3fee9aec706e5ae07a14ea3d7c945d6820129a712ea237b232";
+      sha512 = "4b685b477cdfcc0f15299c5ce98460f1538544451d3c50405bd220255fe1d4ae5ee72770bba6cb4163a64b70d1fce1e52dc273b6454ec57af4190874a84bd800";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/gn/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/gn/firefox-76.0b1.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "8eb3a9b75d70ef358559414b39853177fc65bc7d7756f446ce65a5c9c94ece92d59f76d74c17dbdf877ffd977aa41cc2e52b3ab10122908e422566f12a016c6c";
+      sha512 = "0e45f091b4865aa1a13d7639590b17dbf6c9388de3be92c1cb798d4ace06d03c3313f715d0d0710087506ca15590057550ea81a38818a3fd1d754a94c78f6da2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/gu-IN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/gu-IN/firefox-76.0b1.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "741004043f30eaf344a1bd6ad36f7de64d935f7b056dd9daa516df64dff3632dae02d300afc27ff1c0cdcc5208e64dadec64b1df8139098efdc05f7d95a066d2";
+      sha512 = "0b5b6e108c80ccf9bc14840feb1f48c3af91e251d82600ba518b7305422b33dedece2e6f0a95be243f50652604d8634018e3270d53378475604f2f8a2be1383d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/he/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/he/firefox-76.0b1.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "b6afd8db87c18cc0b5cb7ba45386555ca45b27baa469272dba66ad4b3fe11db7e5c6c48742691febcbe7963729bf34c778dbb6248c01c1db3a685f38a17d6bfe";
+      sha512 = "6e45fa51974f60aa8bf2717ddbcc46fa7fd82015cd4461a75dd6cd43b7cc6910876f0a522ae7ee324ae6e9c83411eeda8da90c7436e62aa003666140ea4a59e6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/hi-IN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/hi-IN/firefox-76.0b1.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "b73988b29f52012ed911bdc97e1978ad8e56e640666879358a1cb79f88c56676e25f578a64b449372522a27abcfd37c44071955e273f4291ccf15fccceedb645";
+      sha512 = "a1a945e459ccf761cd68f4219262f143b0140b184842133bb04a4a981660457c799a5b247c6b2bb35982e9574bdee9a0bca8c9a8aa93c940fb2de368790bc766";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/hr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/hr/firefox-76.0b1.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "603ac12312015dc9f9f24d0ae48b50b55d8f109e31566823f387ffc17a1b99fa958d14f6214d7aa8efc4cb71e090901fdca2068e491218cb17acf914e3f8570c";
+      sha512 = "37d23b0579f24e2b09b7acf29b1ec7254a62f50595ee6581f253aab58d237147040b007096eddfffe38a3360a14c38a7dbbd946bea57cc0016dce9e0ea309424";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/hsb/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/hsb/firefox-76.0b1.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "a15a1c2a67ab12f2dc506e9138bcfde2740de9dddbcbe825300555b7c72be7b78ef15433eba60a132f8c8537cd1b42f05272eee399dc3f69e8defbe5ac696fa6";
+      sha512 = "eac9d8effde7d36e22812fd2ca208e5e4448cb063048fd33411847577705dd5947ea170fbe217cb037fe32444152638b07a9052e769a8cb8136836e0670c5491";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/hu/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/hu/firefox-76.0b1.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "829f16afa6bd4d1909633e3f4cd0134a4d397b32c1b85b1203f54217f23577da0eda8bb207b07a46a7c9c09bccd392f4dd89ade408d2460720ba5667842b9a4d";
+      sha512 = "0a59efbece0b22c362e77af37ac4568723c7c88866ee6537f444474915271722c0f9bb46cabd1af468195ef651fb2431659e5fad2a1e7849a1398ecb7e51fa16";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/hy-AM/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/hy-AM/firefox-76.0b1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "acca12ef2379c4c833b3cae7510fbc01f71edc3d6a9b6ca39dc560fd892b8ade2aa05eab318a79db5bac0e1d98af6c31599bac029ee7f58195c062d3bbdf3a23";
+      sha512 = "a997ed67b1f2d298bfda6913f93e063e9924bd09fd16cab2e7c07ea2d1b1a5d1f4da2e7bb6b48691750402184cfc92f8642bf482e887926babf3f9dd109c65dc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ia/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ia/firefox-76.0b1.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "c33bf450f946110bf8c72023c1c6079287c944af445f63e4d8154de3fa5be8f6905c9b479d79aa82883aed95741f6d53776b87245e7d0d71af3988f54591f344";
+      sha512 = "80b4d48746a4f4edac6eeca9f3ac9aaa961a6fc7a54a30d452575eaaddb5411b0fb798c47a29aa2f7bc0f990e694047623fe02e0049a0f906995605f06ea0c80";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/id/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/id/firefox-76.0b1.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "f3c9aa62d4a35b43aa60d6d577ac6136d1646e5d577a0a1b7e02781dd33f7579fc5dca0c82c1ed0be226c0b3fb8fd1cbf1eac4d17a8cbde2fefef026e9e4518c";
+      sha512 = "1a239030834a5ce36b00cb0253fae6febdc8a1df2d6dc8c6e8e8ebd5fcdd8299731d7414592003ca7f9b714bf1607bbd679622daac45fdd8c769cb50184259cd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/is/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/is/firefox-76.0b1.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "e3fdd7ab88f947359973827320c4b27150c83ddf9c650d4358198d8466c7da92df2e50252a8988ea346c72ae491a6013558795b968ec947ab9215ae285416a40";
+      sha512 = "cfa78bbeccde1122e93bb24b5238f85c8839882f4795a9b4fa7ee15e1d7ac457c9ae3595711d883bb10b218e27c620b7cc2fc1e96f599e3698911159bf2887d4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/it/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/it/firefox-76.0b1.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "1d02f91f1612e3e94e9c39307fcca3ec90148a46c6289ab4b6509fa6dd5249e1fb3677980adfbd43166c104f265f5059ca732f56a37ca19bbe9937dbc0971113";
+      sha512 = "3410512d2c83f076d208e743a1afd6bfaef6e0ef6b670e22f3f0b955b1b38cae5e14a936f47dbd8d5e3f94de9698b784f7265f06d90aa0601f307f4e0ad262b5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ja/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ja/firefox-76.0b1.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "cdc66861781be3233ba9461aaac720ed2e0f1517b97dd76d002cba7ae5c9ca4f3fa11b69e0f87a284e52c96ca6274ec6386d8392ce47e433c65eecb20a5e9cd6";
+      sha512 = "eb86195d5bc686e26c159d5288c161e0510394056f3e4481a50480dce29be43116abbf837e70a1b121d481c9f40a4d235d8f10170cc9b69b40dd6443b2144736";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ka/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ka/firefox-76.0b1.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "95e2d1276083f356d8c176ef2deee23b933f8dea4056d68e6befa45ed4848d985eecc2cb6024bb51fa9768ef9463b84cb66180fe1ca7da752a5828bd721a7344";
+      sha512 = "5e455f82def0b804f368a7215642caa270b35eb9fc478eae4b00601e5d644abcfa5be3fde1aa17199fa8d7e694dd5d4178f26920353a430aa8362c8ceae7494c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/kab/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/kab/firefox-76.0b1.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "d9d7eca0eac6554d1917c750c9f6b3fd1a0f838e3dece2f1e6e7f3e943051978ddc430fda3b73bed8b21fe3b07a7c509f2fdc61e061e8ab227beb277b7e3388f";
+      sha512 = "81d935f8bf20b68324972f45892d0ba913efc23988b1c09b61454f22059bffcff2856795b95328354e783124c98f1f2e03b9cbf03abb90b90302403cbfddeda0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/kk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/kk/firefox-76.0b1.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "a3b7c99fec93983aa18541b3b0ef11e57366f38da522ebb283bffeabc504e21672f4eee2b93e2f364dc6c2656b39fbdd4beb74880b86b6bfd88a09f6764b2c8e";
+      sha512 = "02e89c01d0fe2b610a51b1a209f97bb556fa2e0ae218d4d1f9966e6e6135b7a59ab7fac5c67b3f01bf9800980e8870b1dfd6a107c6d5026a160f6aa28cbc9183";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/km/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/km/firefox-76.0b1.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "f5c35db5f9b64656b4cec5361587371374bf7577e7d5aabe329d34e9f02d4b4c27508ef8fe7743c8453c61e3534cd5b85178460778174eb7e19ad15260f9d682";
+      sha512 = "75068ad7278d51b4a44f8977495cc441945c284ec3a96055deaec0951eb0bc38dd65eb11759c338d5bc37f154a8bda4abc7c47a6f9da68398e51db42ecf90cb9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/kn/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/kn/firefox-76.0b1.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "c94cae5a2bd8797bba6cdb689d885f106a94b34c06ceaec11798a1a3bbc36a64ebac4d2bfe978e92ddf5cd4c9aa23a4924def8e6b54c457ad54b25d4768b3b3a";
+      sha512 = "d7739796d00440929a3923535d53cb3dab05208fb4645dfb0de5d96991400a9f7de226e2f81a7ff2e67a5c0ae52ba21f67127da4d11f554ec7032c94f227b3a6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ko/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ko/firefox-76.0b1.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "2ca35e7e02b4ac0188be48666636bc9adda6a3e98f0725c65ee8e5ac941837f056479697fbcbbd1f9f8f87d7f48f52fd8aefbfe3db5ba472cb38f9e33162c96c";
+      sha512 = "67751bba7a96a7974dbcd1e7946d9851c1d0b8de15a85e4e14f7a497ee67c3ee9752bc44f8dccb362b61f2966076c0bd6ac1238921552b4bc8e6f859e3917f09";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/lij/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/lij/firefox-76.0b1.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "6d1584249c1ba837d6be87f2bf57a52c4cc0dcacc3de82b26e57a55171db872de809773ee42a74017552b38718e5cd2fd9a57332730b303c379ea62b4047486c";
+      sha512 = "4bfdf475896095169d9c7fcfb4e353ff5e4df36d4c99e7acddcd78114335ee04f07026e81f5ecef2983caad0bcab960954543dcf826c0285eb0e2f03a52c0b8c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/lt/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/lt/firefox-76.0b1.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "ceca1e4224cec7c4bb9eedcf5c5e563ec7592add530aef1d701d06023359ce519a3e4c885cf3e691aec7fb732705f8a8f9ef919495a6a55a4eb1324956a6dd7c";
+      sha512 = "3d519425c081124d38f42bbc127a9331fb12d3d9a984120e39d07384f10be83eb1431dc44da6fd83b992e746b1000e031e843735c8c488b7596ca5fde0c409e7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/lv/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/lv/firefox-76.0b1.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "005ef32f152e7eb8021ee3872105c9915a647440a5302a951abb7a1967210719b38923c3355150c7dc76f2ce52dc508ac6defcf1d6f7ee834ed59b8ffa166122";
+      sha512 = "ec59ced3bc195f4047531715aaddfeb21a63a4c65d803066b3719613600f52a2f3ca2b98d7f7b4f80b9c2321f251a02e8a7cf4d513040109498a0b67b4d7024a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/mk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/mk/firefox-76.0b1.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "98c87f7d897b9857955ca24f3bae177e9329010fd22445da16f71897e88f74cf641410c0cb77573bb74a51dc54943fe06082f6963b0594e1c1caf727a573961a";
+      sha512 = "608be1efb1adb91760031780ada28678332c21e08486241704c0f20cf83486692665f616803d4a2ebf67816d9c0006e05f30100dfb41ffcae0375f278a854304";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/mr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/mr/firefox-76.0b1.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "fdb22c0feec80297fe3339a9f08756e419b3439df2ed23c91d26eb6d870f55501785a11fb3eb98113df031aeb3d4f0462a790f16740862054fe90fc35878a8ab";
+      sha512 = "300250e0234c3151b3f11c568e48e480573908904e7f661fb12a0e9c625006c2f51b1f6c3963214a1c7a54c0739590d288b9ee6d6255661c9743f25b6148f930";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ms/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ms/firefox-76.0b1.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "e6c5ada949b9950b218d189904ba050e476f6f9705b1b125ac5df974c25031d804e1fb1852d3d2bec1e87900b4757e5a62a793d97fc597fa3ff136939f9e733d";
+      sha512 = "bb7e67264b804f9fbb2f3ef18234b93ef47f3f79cc3dad6a871a82bcf339edba9ffb380e6d440e71eb04b8402a4f4765ea3aeaf88f3140d37a1d8c58793beb64";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/my/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/my/firefox-76.0b1.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "0666911bab682f27bc89b33ce186cb229ededa1637d7ffa9007c4de2fe74412a89b9774ceb04007052b85093b9752df3844403ce22f07481ad502145a2f34742";
+      sha512 = "4b5cb93a7c495f0ef4b4146f2127e0cc0c34e193b63d65b577213e9dbfc493d7bb9be50c16faf35734011fe9a8344483591e706266e72f7541d92e576695896c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/nb-NO/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/nb-NO/firefox-76.0b1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "46d4851f65d91e4585c24f7d89f271a18e92611431e2c4a6a5f369c066e7b4dbe07b7816e586668faa2b6d8d8f0eda04616fc48664287d08f7b17e84de26a96b";
+      sha512 = "c1b702956d2264dcb76e218ae45f1b23731ecff9dd8f1ab5e6e66787f45f4ce4c22f38c2c75098f47bad5345c2f7312d20e16d4fd963b34de144cc14bfe604ac";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ne-NP/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ne-NP/firefox-76.0b1.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "d2bb3f29f6939e36c66bd9a7e92a9c81784458ff75bcf570c6efbedba3e526a75ee797d9fb836e0d20e78d7bed5a64ed9d640ae71900f64a98c0a928809c40c7";
+      sha512 = "69710144c5fbb7cb3b631de69bdd5fd3571a4db24cedc8aec6081590645af73e216ffe23e76fb9defae1942d1b579cc3a8e340c8e8d4bd9ed87c661f3e0fa57e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/nl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/nl/firefox-76.0b1.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "bc8acde71daf8794956c5014e35eae1fdf557b1b9de7bb955b8f8a457e81d043880b9978e3b14fda504a53efb2768c5745ffef32c89e1bbbde77469429d7f686";
+      sha512 = "9e7e854f6a36908355d3b994681641df5ac522e82c154db29daa48e1be728a3c57338cefa6f88a17164275cc16c586a58fd842e9a55f2228fdc2d50e8e78e4e7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/nn-NO/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/nn-NO/firefox-76.0b1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "a5911405c58a400c332b697ade2c7756e416575dceb9b3a6f8ddde8759aa79e54454f53449688d080b7c6859f6595c7cd79b71ee88062158b95a4525b23e1076";
+      sha512 = "1fd0d26a513744563506f7ffd2ad180d2ecae603c4de4f6f1ffa7c4140cc9b943149eceec85da8436aef05d6ba984b9b9a8960fa2a013f338f742d78c9c2d18c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/oc/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/oc/firefox-76.0b1.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "7b0323fbf64f9a6c693f85972b3c6999314bbf72a3291330e1fa7c9905d1d2a3c5783cd0ed0535363c197cd4a78a2ec7dd0a6c6bd48497a254f53eece2b35633";
+      sha512 = "d2459d39ee8fdb524b427e373a86dab5d4470b18acebf0f0fa8624342e5cb57d44de7c654532c034bcab33afb16dcd4a4bb629e4977f8b12fb04a80c183d82a5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/pa-IN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/pa-IN/firefox-76.0b1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "20830ece0ef0129dc5ce188f55aa1c699052f12819e40cb4a0d9dd300f9c15a464f0957d060d61fd0db56aaf0081b6c8e587990e7b91989e880feccc8d22eed9";
+      sha512 = "b857b144ca6d1a4070d124b8cd409c3bb7d3ff15f8eb9f853e862546b42e2de29189c2861fe87ce532e63cff820113fb7d1ebdf90e4e72bfcbb696dfc84d5ffe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/pl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/pl/firefox-76.0b1.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "3dc0c22bb4fba597fb225b98a1ed112759d9f3f83d5620a05fd7aa20cf2d0cf79802dc1455a346206376bb11ec325da4a043bde87f61226c043a935a7d975d23";
+      sha512 = "9ed9c53c0e553ac31c79a7d16aca513f81943bb50a32c99133daf20faed47fac644a2257ed52ba3366379df5fd1e3f952568e9f5c0b6cdeaf7636efb7971c9f0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/pt-BR/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/pt-BR/firefox-76.0b1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "b97e061bcbb1eb7593676d1b96f4601c130a64cfc1836e0f49fa058d18a6e9d935e02b58f4a65cd227cc3364e79add782d379cf729ae41e7a6544cfcf280a26a";
+      sha512 = "08a7111a48ab4d9a8667c9aeaa36bad9fb192258e23ed37d146791e82343a9c9756e7b1d2e678b121e33d7d408558f64031ae6c440a32e0547073dd7983a2de8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/pt-PT/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/pt-PT/firefox-76.0b1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "21f6d41bbef5b12aeab46aba2cc05797d4852dd7effcc00d5346604424dfbb5efcb673567b1933b4d723be80f9fdbcca98eb69cad8059d8e6f716675e2255ede";
+      sha512 = "a36f3bbd877059cf10a05bafaafb24304f17b2e4b5f912110415a045347b8ccd409f2fc323cd26c0b9cc2d1bb530b5f5587d1ce45ae3ce87ca033ce93ef129de";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/rm/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/rm/firefox-76.0b1.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "fb13e69e606e4508a02221a1778a72e24524ba61f1683f5e076b4105e84fba03d8b27f29e2eb6ff3941da688b2ff5288a72af081db875ada83c6ae82149ab91b";
+      sha512 = "f80bf3304c183ebdc711b4838af6c7ce854a06795c272c4fefca0cfab80fc91450715e2315801508c05395877f0cb50cf380fda66c4b55ff5f4c5ec9250814ed";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ro/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ro/firefox-76.0b1.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "0d1f1df7d7516f10bc7c3f6144656936feeb7068839db29f97495697235ea9ab50a1587146bb069cc1e025b6a7345ccbba041043ec5b467bc9ce878403d8e7dd";
+      sha512 = "d711246248303ba0754b32baaced6d6f789d42c2318a86c1ad62e78a44c20d18bd8371ef256c4b3f554bf19c26fe8ec07e2a05bf62fc9d98622a6ad88f03a179";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ru/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ru/firefox-76.0b1.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "be89a374b149f4ae21b544b75146bcdd71a90c0a3be44e4abde75d3b0eae11afb9b7cc6447e33019aad216f0ff1ae46e80b612aaa0b8f27590d75ef9454098df";
+      sha512 = "54920b27983222bb44242abca0e06c0f9d7533e3503bbab80d5dc98de10f2f37e3f5136bffa26281f8aa8bdd02724cf07d23997c224cd42d53109333fee141ed";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/si/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/si/firefox-76.0b1.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "12693ba3b6fea7b54d8f128e37b0529f22b45e975c6a0b890a7fcad37db7679a85b0a79adeeb3a15737b6f5135d98e87506b51751a77e054553f67285a2ddcfe";
+      sha512 = "68ae5f192ce6fc53a94ec39ae52b51ac021c55f09b04f59b46f37069cbe258d9527920d2bfff59ee8973fb3af96549d78e6c4abd4bece7f8038588eeb2317c63";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/sk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/sk/firefox-76.0b1.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "94294db92a4053c209b7350d5979c3310e683da4292d4bbcf2eaf0e1729a15cc12773dfed0dd9a3e097807a3c889388fc95f28781ffa924e9128625a7fb888dc";
+      sha512 = "b2ee9384089d2b7072a3d5b213e22881d5726e06b3623d8ed3503b43c42581f091ccdceeb3dd8d9ea00839c0e44de8f652571251dcf10a21fc0530a1a811ab7e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/sl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/sl/firefox-76.0b1.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "70d556713742972870b6cbe5805a5a9b55360ee501ce8162164abd809be3ddd0f4220b7f151aa5bfa5d67cb2307ddd3ec0d353c1a40d94692381ca5023b5a8e3";
+      sha512 = "a3c781959dae6e3b3c2508e60cc1a807bc5de02529a20448acfe95ea8033130b570e61f88183d61fb55ec04d3d217d0974c078df57beb372fd036c9589fe4796";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/son/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/son/firefox-76.0b1.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "886b2fdd7cd5ea376cf17ffd07f5ba3521fce40265a6e45fe9b586c6e57519648cd8cab57e0004288318de706a075ec5bd89b13bae3e34eaa3fc6861c9620a70";
+      sha512 = "8fa2d12f1d033e2e6d3364e6eb4953ce6353ced7db621c8b5474dbfd192dd797e1497b5c98e407c2b3c5cc13fa823fde949390547fa613556f74c240d8dbb94d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/sq/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/sq/firefox-76.0b1.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "6a4f4b87286df05d4c5ee9f2810e7aa5d77fead041061223a21d51dd4705cef15bdc2060ed85ee1e2a4c54555698df6ab8880554b1a476d5d27947d95a13a31c";
+      sha512 = "9a1b4984436e97d5f86ab2f391cf50efa465de58fadbf5d5cbd15a3cb6ed9c020d909e3d6ce7dfd4307286b88d68edb9a9184395b50fa67c06d9c0a7502c9cae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/sr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/sr/firefox-76.0b1.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "ba5bdc0c0de9a1f773497fdd50a84eb4314ab6caeed3514e7ce63acea8ca1ffd7d9544ff4d3a12142dcedd19d0ec933ecf5ec522a3bd2943064fa39e0f84da34";
+      sha512 = "4924e0c95884aa8fb1cdca9741a20cd9680db1599e34555c83904920c796c3e0d5beebe98d9a90185b287ddd5b3e46cf0c2d6d001d33b8a0adcc3edaa0e1da14";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/sv-SE/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/sv-SE/firefox-76.0b1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "30e581b784a7290f4a4238839afcf76948987cc1fe8f073a264d65c3adca97b243e1ae335e0104044f0e768ffaf0d9c3553f95ef4b7d53c5d06b656e23e5fae5";
+      sha512 = "b59829037189d0521dbd9027c6095a185007d56296ebf078ca979a26ec630e3ddfa899b2f42c62f7fc6f03ffc5324d7dad4e911d692bd3220dbcfda54930acce";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ta/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ta/firefox-76.0b1.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "31c2f580cd9ad62413161b437fefd13ab793d94ed2532537c1ceac939ec57d84c82cff07d300a743dd6c7be08db7010320b78a9a70f96c0363add4a059f9a053";
+      sha512 = "bed1f93d7d06514543582c8a153f9264f5463c506f3bec71a417124b2de11ebedaddb97a67ec32e25689dd7c408f4be97b7670bfafddbeedfe8eb54cde5a4e35";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/te/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/te/firefox-76.0b1.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "52bd53f013d149df4ddf4026419293c7cf16f72eeebbe7db2167688e149ae8e4bba724ace2a56c93a6177908581bac163eb4db6d5f9a2ffa48f2665e2a80e35c";
+      sha512 = "cc46a8a8a9829c5d745a5a6e48649c9a0f9febc179b7e162f13182d991087b7a1b5ecb181f15722fee242adaef4b6c0b6404026138004832981170262a9fb04f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/th/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/th/firefox-76.0b1.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "f81c421dcedf9755836e8554bddac1394b94185f22b83b3628622023b325e7dcbbc8e008d082d6478546dc1a1f6bf7181fbd41f1d746986dbf8b273639e95fc1";
+      sha512 = "d7f2257d83fec3d8c6034001131bec8810b495270fbf7bd583d4b542743d4e573195cd7a7c20beeda17707bb2bd419c040e451e2437e57ade3c356a2c353b993";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/tl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/tl/firefox-76.0b1.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha512 = "6a29bbb380253caec23fc7493ef52bcac4688979292803c4063d6d318870346eb917d8f57b17279ab45171cf1554d7314e5f4f84bd94ff466b504db9e1461be4";
+      sha512 = "674c4f2b8d4e3c48523fa915f4bff80f751c9a282b4e6068f4687ffedeb1c44216336d826725d2d613d9653c3162fe70c51c66b7ba11872173e49640712b2ee6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/tr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/tr/firefox-76.0b1.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "346c02d8dd9e6330e83c9984d757d23ec8648172803f808cc096af6e8e7ca768b1bba36a8c35689644bcbc02e63b118d738471270180101eec8e00d7cbfced49";
+      sha512 = "f906d0d197dfd368d25a27917e246b9bce1d2cba3bb0843ac5960df3a2af0b8132aa7896fc6be5b2278d8079447a2eff1811232c5cf14a9a07a7d533873f9759";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/trs/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/trs/firefox-76.0b1.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha512 = "c3201998646d7bf8b1449571597cd0fe2911a4bd74c265afb21b706161a5667bb5556d8e1be4dbfefa29e753bc6544adc26e966dfcb79acc38485e6c618bf282";
+      sha512 = "e5407ddfab522d96a5c77de896d2f0b5370fe495e4d3de9f0c120f6fbd9adf0a93e93ebd298ea721ab958bfb94aa3686f17a831a753da80f4648ed002d316ef4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/uk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/uk/firefox-76.0b1.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "24b01dbd82c4cef9ffd8b88db4415eaf1bb9d83c7bd307663636bb372a1525789354ab15021b591e7aa697db511c71d078cf3fccf89024f13b19099925e9ed54";
+      sha512 = "4770960c79341cfa6438615f8706bfecc1edd4352eee42df7b359cb00af223a99914a1efca56503e15adbcc8df829673c7d356f01e7dd36d123e0468f51e4c6d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/ur/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/ur/firefox-76.0b1.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "720d058c4e4d2cf4a08460ac4ed4616bf492704c8db10d28faa3117d6d3662a3325155f99414a7d61421eeee96be4d36ab11304e029751eed423fae3487cd2b7";
+      sha512 = "43d54d50f3140e01325ab99f7ea8caa2715e7b91ef1168418ce17ce4b6d81b628f0b42ec1a2c403eccdc1b0828be61561592c28aca874db3f16fd86e70aaf31c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/uz/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/uz/firefox-76.0b1.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "59554a7a87b11e679487ecf9bd0ff6001f86bf14a0f73768b1984ca36cc2ee4774e99dacecc238d633556bb04816451ad82cb5ed2d26b2b811bddecee01e53eb";
+      sha512 = "9b24cef39ee28abacd4b8b26296221ec4a42998be4a4f378879f3dbce51f974c7d1cc855d51382381830e8db6dc173dd60711716a63e8ac28ec6a9a5ec95ce86";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/vi/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/vi/firefox-76.0b1.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "030c10b2314545644b402d6b5b011c7b782c06be1f7460782f02e2071230cd9adb018558db7f98f8c2c64e7e7a6d835b38a14bb7080f1dbd160cbd113348b1f7";
+      sha512 = "31bc2ed67edc0b64f31bfad87a5c007648a55570ab602b726872ed534f58629d1ddf71a9dbcb4b7e49612f96bce34295dba7593630739c0d795ea2d3ae179296";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/xh/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/xh/firefox-76.0b1.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "25bfbc493a66ecedbf1a625d96e3c98dd6c1d835823c2f2afede41329a1dadd146459e6b44d49a4f966d9eccec1e2e1d8046f00573ffa4ba8cb43c8a0802e18a";
+      sha512 = "d15afc1e2d159b4941f6ecdb4ac9c729191b06389480ad0aa29bcebaabf5d62ba06b05c4e5010d771375f74b38822863f3e27b0eb2194495f2c7457e3a3f84c6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/zh-CN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/zh-CN/firefox-76.0b1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "dea1bde6eaa34ce31d7775c3f86bdedf442bb67623a890549a470386e93e93bdcf7f50a7006a1230ea3880b0031a2ea7590b94862f1a098cebfb7664f9aa6380";
+      sha512 = "47d4539a71b131e4c4898a6538cad895a475f91e51a82426ed04355fe6f5c380660b23f1a0db13ebce146a333b775105307bfb0a1e54787d61503293d2d409d0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0b2/linux-i686/zh-TW/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/76.0b1/linux-i686/zh-TW/firefox-76.0b1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "22224a9a06c8b528d0847e10a95003d19fbc7cdadddc605e1188da7de845d38f511319e73de6201b7daf9b2b3b59a2eb12a6ced03cafcc1bbcd86e51422a2497";
+      sha512 = "0d5f2ef5f4315f3d1b4d1f67c10f97cdb5551c09a14e93ebd1dcdf834cfc70ae147cfe0f3bbe57e5f7f92b7cd62a6246d8c8509c0429563e90f9006aa9b762a3";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
index e84a48660c6..5adac4bbb9a 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
@@ -1,965 +1,965 @@
 {
-  version = "75.0b2";
+  version = "76.0b1";
   sources = [
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ach/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ach/firefox-76.0b1.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "73f8521550149a0c62c841b23289371f945a94aafdab6752b6b4838594147c68dee1352608fdca2682251db3fed691ddf606e0a7874e2a35c905c30a2dedf4a3";
+      sha512 = "18894233ff9bb8623a9b8c0fe143759958dd2c054f9ecbc78a43e10692a90f26e43f5692443847a689c925756ef21d23685c72a7ca99bef3ea22e654cafc9deb";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/af/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/af/firefox-76.0b1.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "e6933f3de32fa91f4835553bb8aa48ad20ea45288087bda59920d6edb616809d12cbf9966c722040d0473a35f5a4aa0a7c17fe38d8a0c2eef5fbc5d7451ec709";
+      sha512 = "ede9f3fcf92dfe7ffac6a80d27f25b6792f1817aa91fe82ab8fd5f0ab0cce8d8817460230a680d32ffb740f2f2fd93a1b0acea376263b80b52a6ea584c48a674";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/an/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/an/firefox-76.0b1.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "186edc252065ea668412630d7ae37a6cc465d41104578886c6f01bd90d8a605afe6e023cb9d566d53b43d9fe411fc56a4322e2140983279521e1f73fdd2c251e";
+      sha512 = "b048747cbd4275d9133b55de1a90f8182f3847fc3a536fb4f24ea8e1c5af8f79af8c02762c9d85649131ccf65916aa5b76f5b65dba296cbe9c5fdc82da15655c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ar/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ar/firefox-76.0b1.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "cc5c4cad6ffd695590264ef222fae56004c3b626c8e36cdb3b118daf62e84c912f112df7bc8471cb9c549f385cc878c12ed06b1ecbca164f12f26cda3213e7d7";
+      sha512 = "4156da408ba6fbeda08fba6ee066aac9f4ef62d24e409c05e805c8c10e1d513462f6640f04fc6a0aa5219d5754b23aa1f01935e8859f00e9e7bf4a1f3172330a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ast/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ast/firefox-76.0b1.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "62ef8d3ff486543b45751f4aa43a3b009ebc9c909d1e0904622c212fd534bba14014ec8389ef5d21815fc3d5909757c7289a814f3a836d94188819b94ebe2640";
+      sha512 = "15679e79a1bd9c3d5f8d430ea439586c4c176f63c809f2f77f9eeedb91dd64313170d828734d6ab34de2ca2265e79236c44483ee954b4e26b8fd035e534eb74a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/az/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/az/firefox-76.0b1.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "c2161b2f4a3decc15ac5e780126b94a805d521bf8999379643f4ff8f9c1630fb07094528e37f2aea8c8789925acee7c77d0c6a179d4428b984ab329a973a5a0f";
+      sha512 = "2600940b1d499c2298f1b5cc2e129dbbc076c2904cbec45c0d9153a26d288aff2065f9e59e4e31ffcb78443df257e0426feb2480a27168d5337818d1ed287358";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/be/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/be/firefox-76.0b1.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "9e49307c8bb04dbc83532414a5f09ce8cb202fcd68e145d2ef132a20ee47988d459ef1851ea610ddd527f335bb68a7f1fa04041914097fd65f6fd03ea6499ebb";
+      sha512 = "5681d42533a313403c44f167b49ec30b4b260f8e1f8773cdb7d3bc92e46276e6a732d8c7358a9ae87dcd2b27e1aae17725360f5d0fd3e779fffd325521e73b2e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/bg/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/bg/firefox-76.0b1.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "ee5fe8387cffa96d449d4dd5a2671558a6f36645b15cdd017ebdbe7316d3e0740f05efb6ca5175ca917a937f4483175c9a20cad2fd956bff5110cd7d641a12c0";
+      sha512 = "cf1f5ddf935f2bded1fc04c561ee46e8b19ef673870977843ddec52970d09daf4b4e41c9e3433eeb0bf32fa611cc1037d9e6f1b9fa9d8f81985d05735fe3480b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/bn/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/bn/firefox-76.0b1.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha512 = "4409a8d09e837a95fbfaaa5c8476fe25d50926c11be2927c0415b8a7e71f18ddc392a90ffcd5c142ce4c5847ad493f3a51680e802eb2f709aa8148375c9ccd30";
+      sha512 = "fb7ca5932a9471eb6636bc93d72749101a8e3d1ec7d59bed0b3e48c01af7fc5465217ef9fe1228b114bc3e4eea05b2479c847b823094345e62791b2e6d913eb4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/br/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/br/firefox-76.0b1.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "cf71b0554eb8058e3f2457518d473b7170f9fa654c2f5033db830f633e7cb8ee16f08f651c245f4146f85b537b30f3adf235786d66c625cca61438ed502d7ccd";
+      sha512 = "55e44c44a5a0301f7105f591d0b88eacf0b9821c1f33ef234e934cfb6fb409d540f7ba5305742b6db6426e8e0b7e71216a0c2cfc7b34f9f993828bf6ceea5916";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/bs/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/bs/firefox-76.0b1.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "743b0b485eaab640a54c6777c8849356b847d7fb4ccb56318007dbb01480410fbc119e7721393afbe2886af59d51b9aeefeaf495e670562dd16a350e803fec74";
+      sha512 = "f62f178fa07f5bc24f71a9b862f5cb0b074edc7b7f56bd57aeedcdb58d30a816a889a3f889efa53ffac6344345eabd78dea268390240d87366e8cec4396aceb3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ca-valencia/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ca-valencia/firefox-76.0b1.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha512 = "547c80bf05a23023ede2d7268e0c023756e196c3a18f81ef084cac330ee0c7bb69021f33ff926162a2ca7afd2c0b4ff08107a4e18560382810b5d7110cef02ee";
+      sha512 = "ea6c077f21afa270b1da0608eef075fea5cec7f040d7785c862be60738db42c32347a053549c1c22dbe224cd9750a606ada15e5d89d06effae40055b4179edcd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ca/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ca/firefox-76.0b1.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "86648dfaa650d18bd934efd57c5de495c963728f45e375b6e6f4c71caa163fadbec2b5064ce370e981bd668445314fff64374e15a17d2c8c337cb1f088edc486";
+      sha512 = "8cce2b63308a0f7c2e90dacbbc3b7bd7cba78ec50e39c8515572e40a090c63bebd26acdcd3eec9bebc687edfd4b56d42dbb3d6f043e27931e230200b76fce9c1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/cak/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/cak/firefox-76.0b1.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "023afccafe29bb6f70657cb0c1b9e285a661127599f0b4e350f814370b4afd17a82157e836ccc394e8bb6b535a7e7341981f006363c03a46a723e4cb480c180a";
+      sha512 = "051a36aae99038b7ee456872e935cc68857587408960defcc77d4638432b5c7f62407f7a626fff11d419ec9e2f68e8372e10944a466b07f9634ad5a14c9297ef";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/cs/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/cs/firefox-76.0b1.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "7d14b78faf8151ee01e8899a85fa8f9851c6958f4c3d7a99f7cd934fed8b704c40d2dfe53e24ac5b7a44bf67da2131eb7cd8161c315d4e0cf9bd7cdb1bc75446";
+      sha512 = "ecb599f6b25f01701aa2ba20a955a174fa34dc666f82bea32061c34007b042a620fd892b4171dff06259eb69e6c27f96bcad4c8435f7894d0a3e67167c219ec0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/cy/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/cy/firefox-76.0b1.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "5fec2412e904bc231c4203aeb40f3f7a6386c56476f83e80e94c2395c20f09436b6d2195c42861130606d101639eeb2fa2f710d5f5e23422cf39befcf46c840e";
+      sha512 = "7d35edcc268eeebbc8fbdc1525ff7b918656a88fa04f748b2932c0c99cd867d85a782aadf89314e584eccc7b3bcaba8ed63881fd4f06fffc053167271ebf0d7d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/da/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/da/firefox-76.0b1.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "b78ba1e8748775d3655305b3cb925e13423cc11e4429c806902b029a195105cc1ec83c57245c97ee046149f94488c8b09bcc043a0220cba87809a98f20d34e42";
+      sha512 = "f6cf8c1504148c59d50203b807afb1445d40b53739c4574be7229e9c8c219907a8742e01764b2ab4340fd7720bffed3f160e367178ea16f8a24c603cb3f304dd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/de/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/de/firefox-76.0b1.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "e5afe83d665cae93e9c25827a9079953a55dc1523027bfa8e2e8ecd0b347465f48e190233e3c7e08dcd647211a5063172bf05d55efb567a4f29c5123485bc2c1";
+      sha512 = "afd40e7e26375fd4ae4a51652db5e5862c8ec2aaa319065bd057804cf50dcbc322389fe2b3a318fb02cac42f14d7b867d3f68cc6883a325fb721fcb0fe86036e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/dsb/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/dsb/firefox-76.0b1.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "f9455b9cfc3b65b18960d870db977fa57ae03801fd42c6313aa114851897a14f1a64c02351a95f5a841476c41b55a39f6fc47bb5173e21b2a7da0f6536d73582";
+      sha512 = "988df89ffc2f53635df25bc6c10771a470bb01c45f67929bac995d961ce5646c501c002a19ff32d4895fba9f00206d87226774e480f86ac05cb9dc631cf5734e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/el/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/el/firefox-76.0b1.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "d697998bcc27f468bce353b6f8a4bb0c01f0cbdbeda5a0ffa92054b590eb8f2255654740db2e31fc95513c7a6a4de703772ed35122e7c4e3e9b21ab3cd9e7626";
+      sha512 = "8d91949902f3c51c213d7a89382049e2f1d9df55865ee3235676ca4224f486f50752f8f667d424efcb86d8b95449be45f2fa18932a2904a9f58a819556c98243";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/en-CA/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/en-CA/firefox-76.0b1.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "362ce03dfe65b802b153360be1540cd1c760e81bea0d35e2a59af701fec1a489abf30d52b1b1b0f66acafbc91c2bba3bc60bbd1f2a05844b7f53b25696712066";
+      sha512 = "05aa730044331e13cac0d35e62383f4e46aab2d35f781f427460bab0320c12ba7c918d0f2f6d17f37d2be11a48b22653aca1bbe2a6387a5d21af0cbc97baa574";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/en-GB/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/en-GB/firefox-76.0b1.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "d674575f46fe24fc85af4dea8d0c18b2c1c8a0e92eaac76447a476c5532891d87247f6497663fcce546a85e92076f23fdf3890c8c8e3a902e3cd6a4eab6b84fc";
+      sha512 = "663fa89ee1b0ea10c1abfb8b41da519c305152d37cdef631475287439d9f28c83e41471b63e1643b6e1e79bb1ecbe48795ed5de4127e3e9d55d2fbe566b487f7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/en-US/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/en-US/firefox-76.0b1.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "092e13a53b18c2c09a4c79b2fe15d49468b60509bd6668bf5710f425a0cc0d4f89216e3bc1e252b7781186bd553cf015c53c5bced5aefe2cbe43666fd5337f3e";
+      sha512 = "d6d21efdac9d15b4274462280af5bcac357df959486801e2035e7ad3658cddd9794b88b231078e3cd705f5725a20a71b0ec686887a9c1ee0cd044c4bac5caaf7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/eo/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/eo/firefox-76.0b1.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "199ac2eb0253659dc0c862869a72879d1d90d5b2d7d01a68dcc674e0b0b815f04823edea1d9794626e86489120da08585ef10c0852a636f1897df23e363579f6";
+      sha512 = "974d3621d2d860b9d7a41073fea92f2052bdb49384cd845ba0fdc76ed4228c836f6ea5b9a4d79bdb7ae71f3735d3f57c0028285b273ce6b1f8db800bbc88f13e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/es-AR/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/es-AR/firefox-76.0b1.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "0faeb4ef0fc8033156f922bf25367351e389596ccad6b2b435678bafd563ac0624bae5f5a49183e442ea93f1d76e8ac8e53121c6d8dfbea1f254c84d7d323f46";
+      sha512 = "6e37dd0b5c4c8409911d406e966dd5f87397c3d8f17cb4868e368c4d1fa1bc1eb865729d27f75f859bb8e2147aba1a9ad6fe385efbac10da44a5c8c1eec34064";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/es-CL/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/es-CL/firefox-76.0b1.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "f0bb330857416097308928d8cafd09c3d1fec559f78ac94e2fd3624381074d511eb8d5e2764feb1f33494f09be6b9fd3cd63e182296a8ddca06b84c673e2b0bb";
+      sha512 = "f8fcab0ae6d36f6d2c88ce3dfdbbad100265b1e6706a6b902b040a9a0406fea6b45f0bc1a2b5cd10e1c2c0d04123b3b9c928d0b3f7ea6e0fe4f9fff86b5753c2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/es-ES/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/es-ES/firefox-76.0b1.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "37b149761f68bc8b2326e0c4ec9eed789ee2d04edc0e42219b9faba420835c7b4a7f2cde76a02fc4f7bd452059572fd2b4551fe9d879fa74c34f066689ba2934";
+      sha512 = "0cc702dacd2355b5ada0caa24daf2607b30bd7fd6c0d82adb833df67248f8962ceb6ac585ba9339b52683f2bf2575dd5f5b03a4217ede120771514d1a5028184";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/es-MX/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/es-MX/firefox-76.0b1.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "80ffc2ab7314fc8a435aef01926f159166f4bd7d88fe1b44061abb80feb606115ba976cd321a2ba1384f2152499a59481e9ac622f1ab57d096eaa05b73f92869";
+      sha512 = "2dde4ca37ffbd306ece615960289a78b4c68f15115e88420efa22822707dd3f0f9600a1e0044b1547fc6df6140895bdbd7d208e3b4de73be38d602c561aadcd1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/et/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/et/firefox-76.0b1.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "87f00de95bf58fd3bcf54569843973eaa8a435d7a4d861346f7bd08ffa475bac7c43a2ab178b1907b9614cc6fbbf7af611163fb5c13e685f7c748e3451d01110";
+      sha512 = "85be77e74b2e796a3fcfc378ded52358d4348e646c114f6bffcccf15a5b59600ca2c024ac90901d384fd57a26355be4e82ac8cb42c2d7f15b7fb5f23dd94cbcc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/eu/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/eu/firefox-76.0b1.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "551e2df324eaa2741619c3f2fa3a6b3d90e3f85d1b410ceeb372541bddf2b049aaeb165cd33f4b20a7164cd7fa5e8d201860f429e35adb071eac22e9ff87f4e7";
+      sha512 = "12bf6c4877667c65e1d7f23e7e6fc4f03f09ed51c51ea4fa78b0ce40e7b8d62053dcfbbfb2bf08a8486e9f36b4aa56119083fc2ba62f90ee6310357ac3d4428c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/fa/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/fa/firefox-76.0b1.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "15f7a4b78ed89634d7ce99c0ea68c8bd1251c8c88f6d789f8bbd0f3b37c5d5f651b973478679c05d29c1b04ec0c6b6f230363f444406f451d9422fbda7770df0";
+      sha512 = "becabc14537ddf9e71614bdcad2215109d38401ec66c0827b16216cf114fddf53112fc961dc525cbaecf570d19b1c815057929e51506769f71b75454ec2870de";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ff/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ff/firefox-76.0b1.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "4c01c5163f14c531e9eb864b7deda329ea9914ea023cb7efb64cf4f56d48fd13d08dd4057207c4543a6b60bc23037d9c343ac36901d6819c422cfc14ea75b38a";
+      sha512 = "123a43f2700be827686cf88a792ad3c849199c56313f1e87c46c7a39dda9d9c5c730adf758eb39a244da42f136e7b06bdff513742aab9f6593b6bbc5995cc8ed";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/fi/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/fi/firefox-76.0b1.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "a5c1063a00ae0f9dde7e51556aa42846230a5c802c94c84c06d4bd91cbe767363c40962b8e9d940f1e99141e73267fdaf8b35c85122b3fceecaf57a939507273";
+      sha512 = "e658d443013837d2b33e8833d699113a43533b4e45409a53cf91629e12156335c5fcd2aee926f8fe03b94b4ed0767693272492531c4b348f5b9d08c3924b9a4f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/fr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/fr/firefox-76.0b1.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "42015fa91befd39501ede0fc44ba98835703bf939e7dc4de9ca6c26390350c0e1196ace4eebd4f8d9e162c8f515249eb61a56ed370cf7279831a75c6abca570a";
+      sha512 = "8d57fde37423bb469b7075725aa4f8481d212318340234856a2168ccb7f49b20cf236193caf760046a50d418da2be69a4fbc859a9b726f8b732007f8bce6998f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/fy-NL/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/fy-NL/firefox-76.0b1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "c775dbaf216863c0dfc91bb1d26cd9ba9908684d981b7c9ac416fb0fe5f1dde7c64ebf13b8864bdb4c56e7051c3e33e677e757c225876a6e1f88955ebe01cc05";
+      sha512 = "32a4e7afadaec3b210dee498b0b7189c02c9307de5c52eb2deb09787cdaae1c95dc83f6aed8bc0ff843cf670bea5924513748ff24bc44313d4b32f749281b363";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ga-IE/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ga-IE/firefox-76.0b1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "958277939ca65eaae828ed5e9a0f76b612be6f803176ddf0cceb13d1e60baa35a051ff95ecf344c1ca2d5cb6474dcc446c272053141d49b8f4604dbd70df8793";
+      sha512 = "e1477bd3ed20431c036c3e9d65eea4660be028d3deb0d3f6ea7fecae0e8987daf8b9403260382bcfeb7fc2eb0928387bf8fffd3fa5aeb86da946369895c70c8f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/gd/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/gd/firefox-76.0b1.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "db79dc9ab736973d08e6e180a4b7b10e903c7627eb0e0222c044d4b3f4d4d3edbb9f2f73d0e6f19d304e4fa75208db6395c0fad28d1e3875386036bb30086c41";
+      sha512 = "7fe8f5e41679c1c21ede2d9cbc6274c068e76a5586dd0723b957801626f58a7a3279d8f8c750645f1028b15f880660e90a9e453ffcd531582d1a8372e3195662";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/gl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/gl/firefox-76.0b1.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "212a697f1289dcf582201a2f0be56b739a71d2ddc0157c65b567c7dbcf6f51922ab2d0743dd979134b1127661addde43612d18f6a4b88b530578fdfccaee4063";
+      sha512 = "01aa3a369fee3b3d5d1eef380c7de07546649ddd08343e2c23d16d1feb071d42c7dd38a3bc7e5d9ad7091d46165ae537ed48c66d0fc59554653638bbca975177";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/gn/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/gn/firefox-76.0b1.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "713022f28bac680227d1bd5e2bedd36aff2950c0c2e498ef1205a02d6b3ec0bb7dfd754d18a43e7b141b535ddfb71b1ca711b1b4dd955c66ff469f43db71a8ff";
+      sha512 = "871315ffdf8418bf065f51aa0ffea0eee3a246344f33cfa93069233470707824d3ec66b31d50cc251cf82dc149f9e2caa3b84a1fb3f6298ec98e8f9e8ed39c60";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/gu-IN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/gu-IN/firefox-76.0b1.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "f0c80568e5050cb4758f8269b951f622441799e0d8ae70d1e3cc1c3a7af0972f6323ade7844f3b3002f8a701a2a1b29af320ee95e72a349ba9d9903cc4aee012";
+      sha512 = "663cce89b88ed0c35836aec4b591d0e945a865c2ff3d40b28297fae550f762e25e69df74ff3906475d708a7301f428b183c964e0fbe602126f4391f22e5c1824";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/he/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/he/firefox-76.0b1.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "5a5746afb795c4708559218d3de66042f220f6357d634e20c001d45a3b86df99fc6b277875837ad13138bf86f2d9577c27fc5573817c31e434de41d5f13a6dbc";
+      sha512 = "007b4163cddcbf8e4379961ea7ffd52ded3a942acf2e2d8803086b24785f0c5f750f3f743f2f9f93efc505f95e378350369f2302f62352f1b2db90b8b0f5f83e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/hi-IN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/hi-IN/firefox-76.0b1.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "b03942c6d93f3baaf0944ebeb27aea39fa331806375135f91e9c8e45ad1ef62c9468d05d4c776f2c4766c0db31183fd23fa16a18f860ebd75dc0b79ff2abdf0d";
+      sha512 = "85d5d996203cfb6e4b32de456fe8865181dca287898934e1a8c7d23f2f0ec0707eaba364c32762a2ccc80592e4096dd5cb99d1ed2be4a17b4aa6ca16f0be0c6f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/hr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/hr/firefox-76.0b1.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "c090bb4ed245ed043218fb202f00e227bdf8a5425f78a9a311b1684df0d1987c1f54904f89a46a8408c28726e06798da5755ca83c0b7383561f9035ed4b8c105";
+      sha512 = "974911c30b0103c206b3dc0e42b90c9c3946508d89014126e0ae729098bce54a79461386390f2d487b2d1d2d3c523754c60a517249c1cb12c874d792a6deec44";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/hsb/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/hsb/firefox-76.0b1.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "71155f0231fcaa744be1828967a1194b5ecfcd30b2ead3fa0294be46ee7ed3476636304862c3fd222359ac8fadfb5279882bd2f7965eadf39641cb611c12d6cc";
+      sha512 = "48568494ee7ce4662ddba6ba6f0ef03e802ef71de7b7082537ab74558fa96974c05c4f7c0eb0bb9d98702b68a8e14e0ca2441c1b508180d69404a799457c3b32";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/hu/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/hu/firefox-76.0b1.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "f35a883d82dca691e4537fd9860d72c8f68127f4b91a7dc1641342eeb2207700fe31965750e6916e1633728ee022bb9c940fef37d3d973bb4b1f1689779a74cb";
+      sha512 = "ce29de70a7d9db3fc1a4e750456b7cb139f13c5828a08b8a9ed0fbe523e11844b95675c355e9690a470fb4140741ca001512cac76df4afa69de0a31852058195";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/hy-AM/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/hy-AM/firefox-76.0b1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "b0c61c67db761c1c6833aebce55c02e17aaa7200150379ef9ba59d94d8a40ba61054863f80d0c6740a1fdab4abcf221b98407c4600507b0a1f363d4356fb1503";
+      sha512 = "b9dbd3dd5ec4f9550d8074d19e9ec537547d4b18ff51d344509a495accaab0653339108dd583c6b19092284d39a23b2a3604e08f1e617ab254d61aafe82f0adf";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ia/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ia/firefox-76.0b1.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "711ab43445da8d8f72411148fefcaddb346e253b191558ebe9fd363154bf6eb320a7bf5715e9c47bfa154623c2a4a96461aeecd69234155b130672bda1a991ce";
+      sha512 = "52cf31376b91998d87216848e0074b08e8fbc8fc56598e4f7d2071a40a334260e2d426836e630da2d7980b63f11cc9fc45263aa882573bb896fcf00903da002c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/id/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/id/firefox-76.0b1.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "a622c5f7a0e06eccd3f3a8da31b23837dc78ca1bfd3714c002ad551c6e12de8331e1ae12665395ddd174aaecf3b793f5190b51e34c33934f68636c5e49996a00";
+      sha512 = "89d64188803178ec31c7675c874e76e14d56b1c9e929630a8bcfd41915efe1328df765cf9e80f8414b4567a0c581919b89f303dd81ca85ea2c66afe5978d3b68";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/is/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/is/firefox-76.0b1.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "2ed96a3de14709ce8c03e86b12ae1b77b707bc17bbccb05b0462680f19c0579e458be29c48aa293d6eb841aeece5ae8acd7b38209716c8d3c769297741e283e6";
+      sha512 = "78e2bd7cc2b5fd1e2dc93a5df1324c1c255f32bf8c13c59abfbf2e21082061b4dbe611db10f2ee465415b2c43a8ff85597fbe8b25bff3fe48d04ca744e4967bb";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/it/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/it/firefox-76.0b1.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "302a12bedc6d20a568552da06c5a03cfae9f85d34cf8c6c5be1385025f3214affc23d1392fb237bd6f215ad12fcb0600230e87202ade6b9cc3ae5c13e0878f5d";
+      sha512 = "c6035edbfc0338d5a5e21f4c0db1de13b13b1d4d9c66de0c23bca0af0b92788a61da931ca12db4a50ef0b3c0e6ce3ca062e09f2ab2f101cc58c9e617dd1cbc8d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ja/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ja/firefox-76.0b1.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "76217b47ae6936673906c0d60e15a516a855aed316df646f50a05228c52e63c19da8463c779ad95008ad190139152efd9c94603c2e71d3eaf28128832a70965d";
+      sha512 = "66836d65141094adaaeaf08fb2e720f77e65f65d32f1f8f05800d6830198470e205f809997375c02a27d3fa5f8c38d1659b6cd512c3d38922a4e672706860d0f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ka/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ka/firefox-76.0b1.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "f61d5547e24b91b03c876aeb63764b9d382061aabfc43373cd0bd72be1173296ac0470b78861bec755ed83b0336debee3b63c93fb7b8f2b58cbdb4098b43004b";
+      sha512 = "955fc6cbba271ddbbb082da0979843d4ef0397209b7951e1279032bf4ce2f8d56f0f5bf1e8d696b87e36d46630a734a517ca866035d237f0bd0c3a012dc84d81";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/kab/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/kab/firefox-76.0b1.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "79368f5f6a68586927cc8831a1b0ec5af4141e17326f919cda3f526c86fe210dcb80fb598a04441d23559016c99d2e090aebec2ce4fb34e45fdbb686db5a5466";
+      sha512 = "0e3897a47143664fee6857314bb5d6540454b4b6eaff6d1a568d3e7bc91e5f8741d5c953737670998268357fc137cbf7365eef713076701bb40903764dbae4f6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/kk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/kk/firefox-76.0b1.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "dc8ccef23f39f21b1d669968f72bbdb63ddad45b869b3ec0ac1a81c0f6b00bf5eb272426e4a44d002b51391bc86ca91b7271d48877824d094455ad059cb9b624";
+      sha512 = "d883fd471ae047b9ad71d44d5e2a00095813c3e1a91a57bbf38f2ec39b7a4d04b67fbc9855fece909410b3d7ef0267c10bfa6d66baa12d0ae882c6910b1d4018";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/km/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/km/firefox-76.0b1.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "79ee964f99857f95d86a9d7ed45e52cbb19711a94aba236ab594a0bd98585f82957e113c02dcc0e094a23e5857107df2c8d3a88dbdda8fb9a04095b350155361";
+      sha512 = "397634869d2ae50061ea5712f25523a73dd5aa3d3eaa9d2d83d6aeee0596539c7bf180590e75258ed846946c4422fa8c6dd5ca0f0dc359bdaf6a50f70f6a5bac";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/kn/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/kn/firefox-76.0b1.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "47648e65c7ca94b8208d6465544ecaff521e03b7abe333954edcf62ae24d1f0e886cbf63c637eb8aa6c97d3af1fcda88e8b4dedc037469a7e25eee7ef55fb276";
+      sha512 = "dc702753aa322eb98e3fdbd6924359b35231e12fa3b604272bbebb0660b482d614e8d0b17f055276e00b2629e0bcfabaf08965f242948ea09b65d683cb47218d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ko/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ko/firefox-76.0b1.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "dff738fabdaadfd325701b5e070e755f8e30c69e954b3a51706d6cf10e8888e55641ed9ac1f1d3434bcbf453bc86b9e4755cb596fba2c6928aa1e10dcdbecea9";
+      sha512 = "29f5c060f78835852b10ed9db226f64e3de94bc22e0e2e9b129a17a59a58ac8c26ead1ce7115d18eeefbb8a6863eb5fe094ac1f90760fb9a86612d6ef854f308";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/lij/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/lij/firefox-76.0b1.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "64a5d2546d0c10e9007c947b7ebada5f779ea5447c371014cd06edc4d6ee4e2511b8d3b5b39c8498f879734e7dc65f375bf32cde445a0331cf81465d61c90df8";
+      sha512 = "618125e5072faa00efbb57de0a76d8cfef08260958e7a27e036b83d19730779f54a3dce6da1b5f8706dcf7925ecfd76dfffb31b20600ffa3608e9bf596fbbf51";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/lt/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/lt/firefox-76.0b1.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "0ecc945a159d80dd86a8b66061b9278a92a4b8f6f41dcd6f260202f1b57a8c0f582e7f92fbca675de8227893ed5f86a29a7dd79bbf95264dfbb2592fb499ca9a";
+      sha512 = "7367024abe5c48f370b2be00786f366d2c3121d6000adb938967a5e2643799604938a494dca1fb22bf5ba43ccb2bc1f3dd73b1ac0d9d43bc89c617aecfa2df16";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/lv/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/lv/firefox-76.0b1.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "d0bcb0a69c29be9ebbc103830c0c3aaf264e07c6de0716fbdf38eadaec70d7d2928f64256e66a7e5bf916e6306e3dbc1105be12129e26254f2e5c969d348345d";
+      sha512 = "319c3bd17930ba550d54aa5390c0c3a022da2307bbbe6c33477805024a77757bb12efe73dda16145afa6b569f8a9d0cfbbab92d04aba42519f4eb22bda92463c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/mk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/mk/firefox-76.0b1.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "86924cb5f2215b84aa92e20db474ebcbaf9428692f1dadf92af5a84f6eabfdb8ba86f304671f5190b0241ad564b639fb6a3311145f989c9815caac588a5b652a";
+      sha512 = "cdcf68e9fe5b39139febc7866c11f17ec40aa85e18759eec5c8d04d3d0ba77446b00900308c913238b50f405d636bad3c8e56469c43e3289e7481c59954a994d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/mr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/mr/firefox-76.0b1.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "c3eda294490d43f5d3565d17da214c8743f21016758c3892958abeded0acfafa01239c3b9921a8ace6d973252952ecd48c968f915ebb58632accd6ff378ccaf9";
+      sha512 = "abf95285a27aad3a40cf16a38b2e664f0855da60f1de92b7b2aa33cf5d42ec8b1c902a301be7e8fb1fda489553f58575bd6839f5a5d5573232be452c80b6ec1d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ms/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ms/firefox-76.0b1.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "a05273b907ef572864b90af5a1118feb52d47379c9e642c23be5767c6505b180f7a45575d9853e754d8ca7d0e73cc955980d29cf628b9a5cdf553a385822e9f9";
+      sha512 = "489f8d45cd3c1b9c5c890e26e64d954a663e1394ec886a17b81377ed4cf9e951a6d4c6c8b47be01ead23bca261cead473d597f752961cc7c38bbae1daf185f2a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/my/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/my/firefox-76.0b1.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "2b566d3ec5ea31599f1ef580cb18c5e1b85a73f6ec186c00e64f11e668da3b7c8eed1f8fafbe4fc8e33ad51859b4b02ef1596af591e9c519bfdc798320d0e013";
+      sha512 = "d39ea6cc64b0967b2b52af5f710b1561331b4d1512e380b83ecdabc23fe6d77aaaa16812bd420f2faa0a0700d7eeb61af6e7252d377e1d37f8af529bf3e3be1a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/nb-NO/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/nb-NO/firefox-76.0b1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "7608a9470683703efdda2fcc4168bcb4b77ee006fc1a94329de91676b9922d1540770a760dff84ca10b2c5a91e6f8b1adf96d9cf8d9b333427be373d5f4def3b";
+      sha512 = "8ff8fddbce1cc246d69588742b5777582323e452babe8c6cefd20e97faf5b5a0522ed0bb1ccb6ae3645b298bcc1a5d59351a517838b38bcb69123d931de69873";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ne-NP/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ne-NP/firefox-76.0b1.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "17d488b5a8db722470fa0665f3985f9756a1e5f76a92f3770c4688b96148503697bef4ebee523071b7769ed859bb6cc70b5a4997f7126bf428da5433decd3d17";
+      sha512 = "0e206398cdcd0b5aab5379874be3efd25887ed9050ed1e273e0e8a36bbb5168b4d3cdd49e60522f4c414904f6cb63f45d3f77300ae69755d50a48608ee519434";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/nl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/nl/firefox-76.0b1.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "e773852f0f9a9dc60fb2de5b85d33f281aefc6b32d0b6e4036af6d46dce0aabad88f0d772180a14f876c42112c65339a87177d53477f672f83f438ad933b3df7";
+      sha512 = "4632a9742bc4090597418aa18ff75e71256f54b9e99a2f0257993b766246b57f6c0d6c7a566796874b7a288ef95726f75e138401485aa9ddc1ace7aba34895c3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/nn-NO/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/nn-NO/firefox-76.0b1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "e0dc703dbd18b1e08fe7e6b6d1d359389497aa4339bedb5bb3916de0c1bac40acbc0ef8bde51cfcd05167c98dd81c9b06e53bde773f4c2a0d51bcc9afd8317e5";
+      sha512 = "216237c9fa65d70c1f462d8564180437abf51d562260dd900d7579f4ef3a5d4ddd5237988dedc3339fbe121404d95fcdad4f91788cdd5751c66b117ca175f69a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/oc/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/oc/firefox-76.0b1.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "067eea40605f84011c9cb7cae951c5a4d3ba2952971a613148946f5f83a4dfe19576f6b9acde65dd2d266bf2bf5ab83ef94e4a169ec54a70091e89b6ce7ba8a7";
+      sha512 = "18781d9b395bc576108c0be93b74ffe8bdd4d73a4a4c4eca9a34b3024c606b7894ec42862758a9fc9294532fa7307d07b6ee9e86cd406964b12cc98b7cdc3ad4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/pa-IN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/pa-IN/firefox-76.0b1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "edbd11856f14a1c2e4dc430752a9dc78b3f5f6d6587208e936b436aff6e2384c8604e9dfb90f292690f7ab7952b2b6598b04635972640336a17b01a03b7d7c62";
+      sha512 = "27be4cca7ef0e8697b6d8866fced16322a34b0e9fcec26d55e552cfe610c5512f5780c50a1c271faa18032474c9e010992b89767074921c6920f3148453add04";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/pl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/pl/firefox-76.0b1.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "78b9c89b93edec1e3a53697f3212c7084c714147e44437620b966f2a90b8b2c917bc219c3b8cba27b08bc327515e0993a7380b3316d2efb385be7af120e72de1";
+      sha512 = "ab40cabd3ccd948888ac0c82151b7f190f222e70c24538dc1f50ed7001a6b1131e83ad75d26ed4226c2410d4bd0ca030b02eab3c7215e91b0cba00b48931ab82";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/pt-BR/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/pt-BR/firefox-76.0b1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "3ad8e83f2169ab552cb6e03f60d343762571824cef104f7884352583a5d77caa2a1e8c85c29793e43555dafd8761df684c8d6d11b733ff899d5da2b7d42822b6";
+      sha512 = "db44f94197deeb65a7b4ae6d721e37f86100ade8e9528cca84c89e8aa57aa8f2359574aedf8c0b19c72bb72e465bd324f533cefe818ebb54e104018828656ad1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/pt-PT/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/pt-PT/firefox-76.0b1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "83f4200e1de395c37fdc626aa6dfd3ee35597743d5f4d32832c143e917983426a725b0ae3f73090a35abdb96fb2c7aa55fc4595668641ad868e9b596679ed2e4";
+      sha512 = "d1fd0eb8a37e78cbd8daaeeb731502f0e75542be2dfa7d6abd77d52105687c77e03c20a6adfb969b0716b80cf0c86ec956ceee352e4140adbacaa8ef89dc8370";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/rm/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/rm/firefox-76.0b1.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "5c25da1ff0d73ecb7b77901341350c7f8caea4c8ee2d40740ad6f5ea70a7a83127df8efefeca2ef3b1f3240013540fc4f70208955c62c25e0ad9bc7c56763f92";
+      sha512 = "c16d76d1c38ac12c2cb54676fb0873744e97da17e458a8b0e994d8fb15c1f6c0e7057e495b697e62cdc691a60fbf23a1923c4a823177e7002d60875d06a23fac";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ro/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ro/firefox-76.0b1.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "fd60dbebfec4b2514ca7151fffc9516c94cddf4bfb75e337735e0025746d1d19ca90762c84b97ca15893e81e29a1f62fafb4c970fcf1ea8e191fe74238078537";
+      sha512 = "2f92b6658c98f02142ab9839c92daff612e9580e05b00953bf47b757d2da6608a8be57d0c0478ebceb9cf12a4e7f65cad06935b85e8e0948685c06c37bc07b5a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ru/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ru/firefox-76.0b1.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "db1015936799ed1ba14a4ae81adc5046e9b51b99fdf01d3e88e9925bdacd8367d97662278e2512cb15eadc4fe9fb40a6c4f66bdb6c7492dc6f411afa6e31b430";
+      sha512 = "f81ec39c7a53f0e560af42ea7d5e8fdbe1158f7f62269c900b65fa41774f2875d34b19aea3e3348bebf09e95c6300c90a042118003b6eed9f638df3dc72da5cf";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/si/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/si/firefox-76.0b1.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "16b685a3d27a94ea3bf1c35054d2b5c6b718e528598f0a749382470986adceeaa96e194090a4d0a0d3ddd3ae8b70b57f4a31307e81c1dc15dd7e30d4db8ea359";
+      sha512 = "d08287a77c9b4f72c44a0821ca11051b82901e9bcda66cca068b2803d886065abef680621c00a7b310388272460ba4d50ecd146f84419251a6b1d5569c988d83";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/sk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/sk/firefox-76.0b1.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "60b18d7786cdee2789cab02ad9fb28754ea9cc5325fe780b46f3e0766ef37cf0a7ffeff4ec1c207db3b0e14bfedf2a1598fcd0adb4ba28c63ba6411d2c95c79c";
+      sha512 = "234f882c59f434f491a300cb6675c8897f0d97ae9ce1da9d150eeb0a53469658b34404f15fbfcc6968a79179ee41693634f1bfd2618fe2a1142e39f682ebd992";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/sl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/sl/firefox-76.0b1.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "55fa56427b0f6e6667ccc12f6b326111e7b19b88b231d084925d57a7d8c1528b81efb0be1dab5c0a857efdc112189d6d72f86736793264a866dae120ac28acbd";
+      sha512 = "2556c3df0f6eea3771c34ecd6bff73a1f155c58ae60a2b3ffb84646716c391d8559769ebd6b450785286a00f49b25ee108207b38c21bea90ac6ad7190f1b9401";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/son/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/son/firefox-76.0b1.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "7a6aa2228a562910e1e1b0f358669d4da66112977373c7bb88e3138bcdcec8cce0c8c7530700b28872f5f38e6ac06a338c6740959b4ff7d75091f2c378c4a905";
+      sha512 = "9b77a1cbeb304a1ec08e1d73ebd7f36caa50dc4a9929c922c55cf1246d735a58004171f835ed02771324e318a09f1375ec278b889beba410d94a913b124b051f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/sq/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/sq/firefox-76.0b1.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "4a2eaec9124333ee83d461762ba1d8fd12c9c108b1bcb7203e4a6d437e510b26eeec2706f8338f85ce161292758e719798cc20c6b79a0466be22dbdfa0939f88";
+      sha512 = "6633eef932635eb91b11ff719d0c8df8ecd04900d2e93b62f1d76b3a488f1e77f78e87dd7e9ad08c5e5d5281bb37b0c3983f5cea7db2bb8171dd49c53afbdeca";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/sr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/sr/firefox-76.0b1.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "a6fe13a64012c7383313304da2c8b4dac691416ba50d364fd6a40679353449700e2e320103fb542d8a979509730de2c84728fefd4b1fb2ebb203f7c7fc52b808";
+      sha512 = "ebf3221be0d4447ea3989fb69e54ce266f803c102a68a28339c6ccdf46ea6818f5f8df280fbed1bb075ad984f8356a565afe6b00d5f92005d3d42e7162714d63";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/sv-SE/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/sv-SE/firefox-76.0b1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "54568bca3be19e5d9777a2d0cccccd936b2b3b559b238635c89dd392a1c7f72504aa2198413d6954cae18000ded74593147a11abd9000ef10f61071d531b0e28";
+      sha512 = "1e535b03dfaa4e7c48e0765b948ac04dba5eed4d697e00ac5d01b41becf16318ceb7b6be9e1fa8f6d882033e33ff3eeaa90a324fcbdabdf8a8f130d185633366";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ta/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ta/firefox-76.0b1.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "a6b68224395e3ddba38740d283e1841ce43a28a1f4cbe6810ea71d6b7cd40001dfafe2fb053d212faa5133e2805366575566de2bea3bc8d3acaf7b782c3cdbaf";
+      sha512 = "d990de0d6de65e19d6b71bcbf085ead5f5e3eb606cac0ed9b08147dd5c70dc13b5386e93f64efb416172856d903f7aec383c752000fec0e04ef03724e97b7d15";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/te/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/te/firefox-76.0b1.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "e20d28c7cd95bbbe5b1680301d94894bf0b8c60aad997515d73f792c7fdf17c3efa4314c210082886bc8957b00a7f919959815e15b994bb616bd7c0ed0d40100";
+      sha512 = "f27627f185ba3a37345fd7fa7afc1182afbdff6d90d8315371edcd9e1a7ffa1ab8d565b81035bf5645d72973a91d4b181f3847410939ffdd71a9119337f544de";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/th/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/th/firefox-76.0b1.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "11564e0ba2770f87549c272faecb746323e19f46d9c6e116ef44a977d571c4ab917d89d1c0cab702074242d36f544fa4a6810bedd2b1088af6d3e23cdd78a924";
+      sha512 = "0e082029c8e631a46be009d2adaa64fc01c0eb56a8148b5ac25b8c0f35f3036ce003cc2b4e07869b148200cba1aec225927b7edd933cad8c7fbe6dc0365e3818";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/tl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/tl/firefox-76.0b1.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha512 = "072602e5f2973d7412dc8d3e4d0aa4a76aeecd493e2a1444d9348e66ee9dbcff1d8c09f35ba676dbf2f056aa0e843e87c2da6d73c6f3efd38281fea7f60c5d12";
+      sha512 = "5d1826b2f5312eb604722d7632d9cef63ac5bb6afa46f58fd4c9d182cb30aeefdfe866c7c70c182ddd28dd7e906cff717737981ec13078b04cb5ecd4096db6ca";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/tr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/tr/firefox-76.0b1.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "2b5ca4ee7ff322fbb986cf4946fcb65617606f8f317cdf357a81c2a9beb6492b3167286cce7a18083df5bc99a5782f98953ec79f6ed314d84b734f41c5b76254";
+      sha512 = "6a8e3277cf09f00faeccdd252a4778fb28472b3473a3364ef17ac7abb89b5c0889ac9c5a5bbbe08190c0f0f03534a053f6af194bff238fb3ca8809216997c87f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/trs/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/trs/firefox-76.0b1.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha512 = "10ed6b3cdef78a903ac32bf02dd767a016a33e7d59de0dbc9586d8afaf16ddf8bbceb557909753ca52e1c0fe1b24da5b72c3749bdb7a56986bfe30f49e2f6d9e";
+      sha512 = "ea711c8d1cf7f53d3495c8100421aa1dc02d16631c32a5f66772bb38e8169fcbace34a9cefbf4b6af0993cc321bc0facf2803563100d1c28a49dda436873e423";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/uk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/uk/firefox-76.0b1.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "2e640904dc0e6735510ec50a2f735f3647fde090f2c4a48b34ae2d123e39ad2b71923e58101a646da86d54865dac69b2c5ec7d4d54d30cf9521008e9ad6c0f04";
+      sha512 = "e0f0f30a2704a5b1f2519a165b26d1eedd234d6ffcba955156424f19451632ffa9b545781bb838fc4393b09e7b6753336ca1cf4e4dc476dc47f35b0040340482";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/ur/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/ur/firefox-76.0b1.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "6aa743480ea70566a12f4486ed8bba83482c34387773f6ac7735ac4ed6a14a9e7e53fca77d5fd295c6cfeeb395fb309efa41af0bd00d77355e4b2a2da2575e2f";
+      sha512 = "3f4c811b29d26b92f542e27e5d50d9f0af4487f826aabf83550984f23e18ea9c83f7dd5204ecc2aefd53debf3fe96f2e5dee8b1abdc5554a4537c207769da0b4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/uz/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/uz/firefox-76.0b1.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "3292332ce5efa59d889c0f32daab5279a37b342c98e6f4aa05e90a3db8c91f8517c26fe83a5cd59b17400e7bea0e256ae8a44b58f9b620e58497bf3fc0a52b96";
+      sha512 = "ceebf54d40ba52e73b70751969cd48493ddb4c6ef4179d688a018ba00b5e66ed613c6a933cb3b94c7c11aac66480cf5dcc8c7c153022689494f2e6b1ab8b5a3c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/vi/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/vi/firefox-76.0b1.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "8969ebe5a3148b85daf23f7a4299e755461c722b4696a700e2b6c66164ce14c60d2891691afb4093cc394021718c670ca6bd113bc8dbb7f6ae705299fc51f9f5";
+      sha512 = "6c02eb47c9d89e255584275cb1a5ae161dff4f57b77f1371b4a7647ccb5da58767add89b19b02bc10f27da71aecb2e316e0a9ee1115492de952364f5800c2371";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/xh/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/xh/firefox-76.0b1.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "570a250b522b5061ee9b3fbfddecd9018c93baed7e813847ab9fd9426855ecc6bd940e15dd08b5bb0d3b34991245104ee95a5da4f74c7aca895fe086e0b66973";
+      sha512 = "d02075f57fbefff722897bdecd01e4b2a50af6d7f54d8a69dffba698d1ddf240f48a8fbcb1f95b434365f273d291e887b0970cc976329dddccdc5ad4ff9b4a79";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/zh-CN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/zh-CN/firefox-76.0b1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "b86320fe1ddbed83cf9ceba5d60c0d40e0e137f509a13b70be7b2024052bc5589fb3bc84ded1b3987bff6416dfca11a094f7e6fe881f04b35899fcce2854ce0e";
+      sha512 = "c622c0f8f2372abb5dbe3b1a1216f31f079c7a43f43a0c4bd6058896cf8c1a2b65249659e725b761b593e22a9b730159b02e42d6debc328e67c62f66edbc71b6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-x86_64/zh-TW/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-x86_64/zh-TW/firefox-76.0b1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "0d5cc478d801dc2a70bac8a38bde654311d32ba5059f0047d07e8fd321fa593ae56baf3b8c8f6e93dfc9c3ea4a9c5298079271220da0b92010e65eab2b7dd707";
+      sha512 = "deb55b3b4ec106ed211a8eb32eab1cfdb47d4e30f43ce3a35f8abb3d4b2d8353da39b065b482dde513fe317b61ed9ceeb74abd184c7e327712336c5b1b1188a3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ach/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ach/firefox-76.0b1.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "f95b9ba5463a59a45fd34abceb5026c1f3834064cc318f91cf76aa118be5a796482b5fea14803f36b973c7a9f9f07af83561248feb7f92c82c1ec793471715c4";
+      sha512 = "3586e46703034f223547dcae3d4633bf74026d10eb7abbd5829ff2ed3343a620dc133ad1a8d19803fe9669464df2b9a4abd3b3e3b401da8421945e5ea4c2b478";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/af/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/af/firefox-76.0b1.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "4f68f211b7f2bd2e6c3f42f9698eba479b2c9dc60f8970cee1f0dad2f9a231ab8a1f093da4d1fca0589842e94bbda148ec79fc09290e1a85e7c505cb4f006020";
+      sha512 = "af4e45671351ca690f3e5ad51f35d2f0094724016a75eb4791aaca799c16915fd1e95450f1a89b06722b078524f00b9b30d5138c80ab8789df71aeda731677d2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/an/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/an/firefox-76.0b1.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "744962dde4cacbe6d9ba67fe7dc01a4267fa16578127a48d7ef59a2ef6768dc70f681bfc73405e827a1cf1b0b7d217133663ac47601fd35ece900d851c7ff78e";
+      sha512 = "4c68399112672ae59a1e6b21184414891bae79997ab0e52c8aee394482831e7c8eb18f7d11de5ce7359f83fb946e667111f485ca16f75fff214d86291eb3327b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ar/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ar/firefox-76.0b1.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "f71b142c885ed61f78921fa058ff107cf4079c1a7f0c5fb67ed07a30188d878086cf4cc3b07c3ec2d6a7febf4f2126c739b3dd14f2462d2a8cca418ef4b26b2c";
+      sha512 = "b70c5b8e1c90e2a69bd87194e652d73cb6b3b029f2cc225c5eaf57687643c45df9b018cca44b40809436c543b8188a9f9b94847ffe904f11a4f244cbd4aa187f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ast/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ast/firefox-76.0b1.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "3b30a05ccc6d10af86f7342d8b184f78e789275031ef317548acb051ca7f5e3b6e668f67087818a750999265674573cb55f2860690bb69a155d4e762bae59f52";
+      sha512 = "9cdbb8459d2baf3924dd1f16c711433a614b80eed980e22206c1d429ee43fdd5598cf761b8f9bbe7e2f36e16036b7c4ad7088ff4bde334a24f67b6f206048c2e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/az/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/az/firefox-76.0b1.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "a054387e9bbafa9c99013066627f028bca1bb59fe01168113957eb7b28aea6b367050bbaf73271ea332beb7d634f2374de0f7b29b5e72b37ccc65065efae0bd8";
+      sha512 = "3b25dda7eb048a902053467c3ce10f39e782acc7ea2412bafb0ef15cbdca915d622619657183ba8e404662e096728a16c388c0739cd9e87489e0eeb7e33fd832";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/be/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/be/firefox-76.0b1.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "e865a0721f0ac9d6ef36b511b241d869cb2b9d6b76897c7a3b6f96c66c38b00da032ba8ad94fed9cd65a9c56736742f56fc0073768e594374ef39abdfe36c8d9";
+      sha512 = "39714d86de5e3ec9b4acf55af572a6903a26270bea83bde0d4e4d7424b55eed95e545a101fb4ba63d01dfe6b8088cbe4f73179e10324e583a1a55cd484d828fc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/bg/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/bg/firefox-76.0b1.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "0da867e56f18f268abb91da626a4519546d6ac73fc8eba66c52cab33de81456117791126094f4ee95169d64cf046c6800006ca8b85250fd0e240f0280376b62e";
+      sha512 = "2bd37c06d8d7bf5199c2ff75f7ac4daf5a9ad59b99877ab5ba3235c53e8b82f0d87e2702e5ed4713ae904c70517e60b21f22d75160d312499a4c713d2036acf6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/bn/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/bn/firefox-76.0b1.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha512 = "2ecffd8e81e3c8d570b2931a0579cf30a111710703eef07c24358506f9ed9a2b09952bc481bda2632417af9993560ac0dbe1784b98ba34b21784c626429339ef";
+      sha512 = "e0fda1204b53d0c465150a9e6e8ed9ab812619edb01efbf7ba08c616ed0b9af972ca4f71dd4876bbb13c2f6e454b7b4860a2032fe198e9e2d8ed5e4732f0b66d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/br/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/br/firefox-76.0b1.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "6ae78396927fc66c2a3a4097c6fa6f7f5e4c60757242e06e621ec0dc97b482425514a31a989de7aa2ce32c5e1caa99e77b9f8849d708f8f2af45a1004f919137";
+      sha512 = "d19b29d8b2430d3f7e6cfd56a83fe4fdeaaea812437e9d552b3842ca726326aa294369730da81f38debb148e4ed0330b9880ef82b458e7db461e1e6daf82dc5b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/bs/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/bs/firefox-76.0b1.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "e40f191a49741e48b4dec8871f290ca2ef72b11a37f57956bfa57b24bc1c3983e949e13cf22fe11a878744f401e9bc6fb699a5d78edbf55620c6b7b4efda42fc";
+      sha512 = "60e0aa12b6b775dc9e4b950f6c1ec3d77f1c0bfa47279b603ac00378738ef92e00bc41e79548b59aa1a2ea7ec456225a43e0fec7b86d80c4696f08420e56c5ee";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ca-valencia/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ca-valencia/firefox-76.0b1.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha512 = "bf57f081cc6bdf3d0305ebbb01e98311b5ba40bd23773d93dd568bdf214ff867e495da4ddc6201d8b398f53976270ce81658017f10fc2f225419c373e68813a6";
+      sha512 = "87267964fd97fcf6a7bb3d0c3ef29c21529cd6f76eafc5e2eb4c8fa1f2e907f4cd0c4dc251298e398be748af14b68740faf477d950a2e425e7f7eee0cee01be0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ca/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ca/firefox-76.0b1.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "14ff3f4e17101054c64f408458d778771584581429a757f6d5d7bcaa31a51df1f2c0712b88a216b9792496ac92f6d3e56439660b56e2c1eb062094c74eb393ed";
+      sha512 = "ab5f1e61fd3842a98e47a4f7def57e0af95ba73ea0a36f3d1634b731607362737fb3120cd2875af0ca9c4a18a2fb0593afb3360851ad8abf5f0e31b7932e3df3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/cak/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/cak/firefox-76.0b1.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "a600dc50aa7eb2c2fc5f3cc2f5ff31cf19f3aaaa680319599f77cbb615b6545c1fefbc1f75a3dfd455bfc0e7881d9793ae05b193842ce56bda5eb4c42da37c5d";
+      sha512 = "f5598470f5e50f16a2763b35503820255918e7475491e7991e2c161254da1f3ef8204cbe4561bdfa4701f44bb75115e88c71f729e49470f6814e43521d4c1096";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/cs/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/cs/firefox-76.0b1.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "117f94c4f3b892070b071e16660e7b6dc62df90f62783fc456a220a3840917b5344379f88164a2b796cf7b9565025a5752498575ea7b68afc24a55dd2f975ed9";
+      sha512 = "8072ae93b5b963306a36dfa8ed728f5047ea1c69a7b1fb73e1640e80980c54fc7087a3f9bbf4f95e010a1546114949b2d745cc665917add083e7d515c7b759ec";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/cy/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/cy/firefox-76.0b1.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "87ac39c6ce202d6eca6823a7d249ac122f36487c40b6386a179fb86657fb855baf149db5e73d4f9aa437de43bcb24f32b16772da29057e4a2e02044890dc314b";
+      sha512 = "bd70c6e05a346576ac3c6b821dfc3635436d2f7f88b6ee9a9d6ab98c9671511383ab512dbb81aa9014720c285f45f0a7cf7d620e99dd285621c0c8238ed01016";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/da/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/da/firefox-76.0b1.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "9d89aaebbe4e8110d12bc1ccb9c84b03b4f39eda2f542c15eb77befa6cb28fd8bc6f6bd1e91a115ab4c5ff2c12df48ae97c8dbc06860911995ab6687f7a36ee7";
+      sha512 = "fc8a6b48c04f0da4d09ec634f7136c3a3ca1602a7e05af480044a8a86c6929cb8c84365fd46e45ec1334d940c219d0d53a191b85640b6c6f7f884b2844be1ccf";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/de/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/de/firefox-76.0b1.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "e1e6df8039fbdf1071606cb6146b5b7e8c7cc793e4495c845ee68d6245820bb8f4e41c42e4c7dc4135bb21a0489bf2366cdea47c99fc56e89a89f77215167c50";
+      sha512 = "504834dc1d878cbf0884c303f9dd5465411c7fdeaae8bd963175e611c4e8c65c31e1b7070bf9b82d4d15d789f3a20d1a53059f8981449f94c5adba8d4c0c57fc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/dsb/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/dsb/firefox-76.0b1.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "b3630e5ca8a4ff299717e8458d9d3f8cf6d06c470e634e557c675c89f4c861f6cdcb3ed6ae4c8af4e17bdc0c3e6ceb10584fa08e600ae1355dae8ebc1d20acd8";
+      sha512 = "1b1e5dd6d1016390ee291260abef2b378bb1cc9133c3e4178344744f82d1abbf2e7b9d7f78163116778f7b04db686cb16056b4b36b221ad4b5c3ecc198ba8294";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/el/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/el/firefox-76.0b1.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "9d6a637eedec5d5d4a794384201309b1bc57848760ed1af3c0afd1fb2bd70cba465710cd618bdb610cbc171253f4b8b3270b004af10a5604e0bd373dd0eae420";
+      sha512 = "982847aa23173d58889f80fd7160bd34e601361a0e5f112e94a1912fedee116b36e327943e7de9399165de5a9122e904cc9b11d38beb67826143d17f16f2b64c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/en-CA/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/en-CA/firefox-76.0b1.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "1658adcd506c209366efacbd730a0576c77591ba672a9d0714b6296b9ea24cd5f291a6a8003da6cb5d8667efb5c8db41dcbd0dbe83140ee45d8977f51882f4da";
+      sha512 = "f96e641a835bf0db594caaeec89818e4ad4f6bd0e66dec03c7a9dd6bdf00e76615cef60cc4ca654d23f76c8469e11df7545f0b7267dc932b8fa9ed34e34b9b43";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/en-GB/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/en-GB/firefox-76.0b1.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "61720522cce0fafc76173331fae77d293b952bb05c5b6fede29f1b3ab3ecaa2a546c9a16a16ef4f62ebd19c04f0925db232d4de5b3da172b5468f9657b0d59f7";
+      sha512 = "9f3ffb2b46bd124bd04243c40af164fdbca0086dff34b58a54edbd168d5599fb70001e2b60170f783946e17590d947a33998514b64eb3addb6f73c7e012ea2b7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/en-US/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/en-US/firefox-76.0b1.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "a45899b9efdf8de1ecae76d19c5c8a081ddc81ac2b04991c5000a3d7379d13ceaf192419bbcc87fbbfb9dea50fc6b99ffd7845f11ba47e280dee51fd5d832edb";
+      sha512 = "550fc9127fda2768121e93736b2f590b43f2d98ac71015a2c8a8360c205fbb6b6e8000ae46169cf8606940aca81b0fe44084e0945bf83befcd05b8e4be66f4d1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/eo/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/eo/firefox-76.0b1.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "97409a0943ac848f96c54dc6e7ca8c955b6ed2aeed078833f8a69e187e550bc588c3b5ec82d4f56061cbcb689e5548a8a9b7f9171e637d04a096b91b4d4421d9";
+      sha512 = "8bf90e8341936facce20e56125c7fe704763545e5b6bdd15f67bf8905d3e224ca3d57d12ead600ce47f12d7e16597f14584cf1f01a782bf19a2e36866e057a37";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/es-AR/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/es-AR/firefox-76.0b1.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "75c37f77ab57a1503de3ea27b55d4d77393d426b490413c4c35ff1072534da38bd31a2e78c5655bdc9b5d5f32ccc9517e83bca1be1a10fda7cbb3ba289e0ba3d";
+      sha512 = "b37511d116f7f3c6c16e09af2d5435ec18b42c3bce20a038e62c6f6ba68cf909a7ebc28c562d78d7aa323ada352d550667b7dec6d4310249284592faf44a4f3a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/es-CL/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/es-CL/firefox-76.0b1.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "d9c58844f4b241d749dc0cbd1d04a8e490a6296d0c3cd26da062b043060488794923728e29adfe171834b331ce9461465f14b71f6064e49a39d458256a99ac08";
+      sha512 = "86864f44df0fe0014723cc6996f0e391f7c620e7e680e8ecfe4d7f39084a1620bc06bddc0a07a141fd836126ce2b4f4c773e073359223d708704556a11fa672b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/es-ES/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/es-ES/firefox-76.0b1.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "9f4e74d5f01ce99e5bb9ee47f262b0442bc4ecfdf25a45e204bbc207a0bc49698b2e82bbb8ea8a80b5b912d6dbd4a3e0e42de75d3becb0a2fc2ebfb3c2bdabe9";
+      sha512 = "ff013d15ce72c65c75f6bc3b76d712d86716290752cdff95de99ddbc9846dcf9bad851499476504a832a7bf96e9434b5df99299eca5c04a91dbf6e5ed5d91b39";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/es-MX/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/es-MX/firefox-76.0b1.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "612a5d746e31afd8d4f3be3b56c0bf28166474e68a16b237d6c65c974a6f5e1589c3c29165e52936117969c856ea1b5488649d22bdd08a4db05dee8a80142207";
+      sha512 = "42a587b6dbb5afb24141a60d5c4d4aa5c2ed68fec09eb42e483629712b193b5fd69f406e2d348ce620abf607b2d66d17ebc82b2e0ad8ef7cfe709ffb65321667";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/et/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/et/firefox-76.0b1.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "cd59ba16ededf91c6abbe45d059822fdb1e7f450fcc4a7c90816ebcf4aa7d9bca86ca23c105b1fde01944b06e188b240f8622b7664207fd680d73063164df81b";
+      sha512 = "7e3c26c4f1be1e50f634915c9eab15ad6430f9262dd925761cdedf75f91961ea7f63a08a19cbab9b92829d08b3db3fba5dbc016ea2e86e42bb054b16b56d3e91";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/eu/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/eu/firefox-76.0b1.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "4a6d6c84ee790000a0e50b296d41956d9fb1708a20d55ab0d093147d823fb3b1d3b209cf83bea40c4a17ccd5f2fdfb898425ddc105bd11f7375fafdbe138d12f";
+      sha512 = "799c2ac07feb46a3382e47a2e23443dca3d177d037662e40203bf0fea6a408c4931de445b358229a28686ecf2ddeee835b41a1069ea177aae71cd5888755023b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/fa/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/fa/firefox-76.0b1.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "12f2a70b386a6dcb7184c0afcb28b6f01daa0e2a5df0cb83cd9407659086036a379cf3e87a4c00466b1e6d730811f1394d2fe870a33149915a9551571054bd38";
+      sha512 = "2a546aaca0bf12e9bb7e1fc0639bb5ddb55a28729f97816fd43d7850a4e8518d3e0a2b96cdd9b149748404eab7e90e31b4ef3572976fd29662f1356a1e6039b1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ff/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ff/firefox-76.0b1.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "de6af7697f9450035c4bd14daa319c020f53943521e9867e3784c6c68183192d5a4076e1f416bf062d76d16cb2ce113c3aa2a462a879b360c8641cfe49e7cae0";
+      sha512 = "290cddb3b333aa8c4fd4d978c18245751aaa773f4e7271dc62c7af770210d26e8b3b7b11b915237490eae3ebf3b641274cb18a1d7b14b33d44dfe8358e7b25b2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/fi/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/fi/firefox-76.0b1.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "3b5a6b5ff92c79978dde410bade97b835bbc8159db7659557c6ce22675e33bb96c49478596ee3b3a8acfc67d8f4a24e02ddac18ee481a95250b975c174c4dab9";
+      sha512 = "6d670f4091db4f0eabd17263fd78b847f2abbca9f735dd0592758b6b54ed5a223d2449131817e1d3208129b5a5f05205740d17ecb052257628735c1448b629fe";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/fr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/fr/firefox-76.0b1.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "1038cf04afdeb236ef0b12ad096d0431c8576105e861c09bcaecd1b27a2ee02f56834eb874b8007f50534bd43a92859c51dd0aa0150cd258cb22368337da1d71";
+      sha512 = "6aeb79a1c98b5f4b7d430aaf7d4d424a1627f9b46c66e32060b6663a4af785e6f1a25b04b0161eeaf0c0e5592b8b73a6a69e37109b817178e4bcc214681de1c4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/fy-NL/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/fy-NL/firefox-76.0b1.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "c5139756c49eb6977f053003238df9b771fd61645d540482875775ab76157eac29be84869390d62261ddafc1b6005ce1df58bbfb7cbaf8d22ae4e98daf6d5d9a";
+      sha512 = "24aa2f3b19662e7d0bea15cd9af03212f34cb99945a62d42a69b8e35bc33d875aefdeed34467479b3c37ad67924d8cb79c890a98249b076f601e940568e92888";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ga-IE/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ga-IE/firefox-76.0b1.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "d9a5baf26001f438f20cb7799a6da9086039743e184814914199c57a64cf7cc993bdfb477ea61bcee43e2f7db05ccc02edff99a093a1e2a1f41de0ba72cca2f2";
+      sha512 = "27e38f6444efac8d4c58028dde126e2e7d4f8e75c0e14bfcfe0796aa1e80f3bbc4252212b676d955d374d6050d60f3fc7e2838bf5c71f82b99b1af30cc225b1e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/gd/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/gd/firefox-76.0b1.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "d9c4f1ac7d5abb7c90b7cdb6aef437c5f3ba2f524db43a34cf65df3822b811293a5d4bc56707fe254cbb57f7a00cb0773a1619113f3b455ceac50c388fc8a2d7";
+      sha512 = "ddd8cc3c83d701b70fa4980655407a7c85b94548638d140c43e4a4a588365c149d64f441b58c98c22299791e3600bd717cd02014b3b7a64a0278230b8f24c5c6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/gl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/gl/firefox-76.0b1.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "32b7e11e9f5c76b12c3012fcd90d5b0bc2ceed289780db6fe32e53ecb3dbe9fc31a83c5a684496aa35d3c51693c14265a24725131b9e0b6653c811dd2b60d933";
+      sha512 = "9a545c74db03f5cff96a9d0a386466171692f3f8a6eb0fe8a1a4b44ddee6e11599e5615fbf98ceea121f927f66dbf03c481e5e53b2d9e5063a0e575771fff4ce";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/gn/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/gn/firefox-76.0b1.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "89c763e8ddb051304e8b192a8071fde4c4dc4c0d1b233cde51faad5b2d8899609ba5c06399569203780959a70207041b59a0b8ebd0c1f08891afaa37a3e44a9f";
+      sha512 = "59d09ab4aae409aa65bd8701481c3a972b8b315b730a3f1b514d807045923f243018d4df37e484eb9e4367475beeeb6c90cf0bbc3e90a0b5d665623f06079a54";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/gu-IN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/gu-IN/firefox-76.0b1.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "4ed360cf1f16896f2bc7d9f90f66943ca4f8bf27336a4cce928760b820572b50bb4403137fbe9344c117e7a289cfaf70006d702e1aa6bc4eb15150fbb743119c";
+      sha512 = "88f60019bee5d350339eb82e690ec0a2cb18b01741520e2917fa756514cb1234d23ade76a79d482096e81212a87b938979dcdd128913b580a64ced14766b7464";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/he/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/he/firefox-76.0b1.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "f1aa69b9ecb760d4797dc15a15dc7237704e51575cb02ed7019652e81c0f862db3494b6aa5059a1e7c6b7159cd712666e7f279ec95466ef57af85e1ebe4dde85";
+      sha512 = "0b6ff2b2c9a79f23806ae158fb98557a64cbc6af59a2d82bc91220c4e0f3ca19915879540a661deaa0e6fa2865e0f89a7f057ee2cd2c95bdac5a8ec01295ac86";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/hi-IN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/hi-IN/firefox-76.0b1.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "fdc7f76be1affb5e93cb316844724ee8929e84d6fd629797d3c0e150144595b0d6d2b06763d7f6a63210622b3da9a4181e5f704d2ea2383664857561806c2cd6";
+      sha512 = "e2e767f29cc7bc0cc3e55c6070e2c1685253f1ea12f3847c7fbd725e05e940b099ba184df551dea0e333ff96f6ebf5850d7fc030312407d1ed3b63fed81abc19";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/hr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/hr/firefox-76.0b1.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "dae36784f556cb0e4d371620b333b167b16e810eab97d4f4857320a9d61f14ae392a4b2a472fd43565a807ba2d75d4dd4848a25effe1e2e7747dbbc30d893cd6";
+      sha512 = "bbc6bbacb2bbf311f89e8e13edc2d99045a592094e1c327dcc5091191338df22c67b78c9fcc66e196d4254f4d0f91808d642aeb5cc82dc68c222f24c56bd0357";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/hsb/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/hsb/firefox-76.0b1.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "04c175a3ca68db0d848a6ed2eead84cedbd7078d741b43e725fb51f5a4124487c3e30f18c940eebb7702154061e67b9e63a53d7d219b8ba25121cc47de3a8049";
+      sha512 = "0d1578bb97d59429dcebc05444ba1fd8b123ea62c9dd92e0fca2cae6ff73a5503b8dba5dc907f9ffd62fbde677f55a091ef96d1444a40c4a877962411804c591";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/hu/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/hu/firefox-76.0b1.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "d6503a482ff7c43cc136e23126524c22e5636a7c5c8210052f353cbafc5d4a040c31572fd3271972dfe116ce3ac0d924ab509f677f4d8217bde282f76820180d";
+      sha512 = "c71bca7733e29d4290dde7a6b9bf053854f919fc8e67c1f5eee22c13fa779677df548936f83964183bb6a10154b104d4d66403ec9b28d9f390a9517edb90a63e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/hy-AM/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/hy-AM/firefox-76.0b1.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "4082fc2ef233e02b384cd576ec79bb2697bbbb8a04f469a1574f89fd9854ccf4138aed2569c2381697db2e073a471fe1e5a1b25b58b14a492d26d54229a1c6df";
+      sha512 = "4797fa72c5fa9d9c503120bb46d48d3ada964e44f528915653b3e12651e9780e0e19f3fb2b9a66e13dccb8e192bd68e02028891d14301e5dea9e4640e8ca5074";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ia/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ia/firefox-76.0b1.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "f3e24a2778346cfe24a00f6cd966a2ba7b59906a0cf28e240313c72305ff9ad1a307b4db6846a6ff02b89deb72b3c9c4233f0f7c00e9e6f5f5dd949e04b12789";
+      sha512 = "ec68bd7aecd1e335d0eec008a03c3ae7f88674d196be8d1e18ceeaf98286cc3ff94f89481e57f262e09db1befa51fb2a752402acf26bbd7fd8e5b73cf9c50aa3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/id/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/id/firefox-76.0b1.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "4728f20776da754eb696036f69b6a341d912856bd0d9c105954f56d1181abe6b3b71a125b836d86061dfb39ed6282c4eadc3c9a0a33f39c24e9b34ae8ce047fc";
+      sha512 = "fdaf7c6552b42a98d6da1b33d391f4827dcfbdee336843672102c2d541189d4dccd772d28c2d05cf4d1efdca5c28032c6d134b418606b3c04bc47bbd6f569c05";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/is/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/is/firefox-76.0b1.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "0eee6d75916bc89554bbd9cc6736a289c816cfcd76c61999fe546489f5907ee23d9240686cc2f85fc56b005b4519883692d17225ea2daab7165f6bf0023d6290";
+      sha512 = "8f688d3104fb15b7c15f1326c6183872be6270569583bde532dc0bd4dbb12e8cf832eaa1641549759ea622c6af5d609c7a0096d078d9b91215c2762fea931a91";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/it/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/it/firefox-76.0b1.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "e61500f91e7351ea75b5fce63c0b3a258881449d16750cb84a8b91e65fdabae42cf2e8142ec06e408fc221c86e372a60a282a8635bdf103bfd65c097bf51d709";
+      sha512 = "3a3ddeca616a0cf61ba4b6ecb16f7fc4192f583ffb73f76def7bf7c6484e7d71406e40e9943ee3b8bdfaffcb3a7d3a5937730a064730bfb52a728a8da6b846c8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ja/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ja/firefox-76.0b1.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "f4e8bcc5435864de90bf69820f18c8b2647fd8da250089e4940e752d36b2ecb5a437794874c3cfa5d3cd96ddeda4f6cbdf4c17725a31d57474e4d6330eafa801";
+      sha512 = "8c281fe548e9d220d3bcd83802aa4ac95eeabd2f69dae118925984975fcfb03d7cb81e84ccfa995a5afe51933bc7559836050b22d3973c6c1847fdce8b31acea";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ka/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ka/firefox-76.0b1.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "b516b2f8af0f306b78a67af63d9576b358f17f40f71520e82be35fc8dfab29b61ce5e4dd56cd52b6bed2e029597524db4a059fdc63f58ffa4013b1c6bed39cde";
+      sha512 = "485ca9e9ba3d6dacb148cfa620e1919d643c710d4d119d162196b9cabaf22851fb5750c65b26307dc21ee523a7007394784967364a534475381fd3d322d89326";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/kab/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/kab/firefox-76.0b1.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "7a5c35f97deb3132f2575071eb81b5118f16403f37274f1f0d6677811de7b88059c2094aa3c35a7350a5a0f3308e904378e6095662af49188ad714b1bea920cf";
+      sha512 = "97c555fffb9c8de96c7cfa0500917e90a30594be6776a98f7199a450ba02ff67244314549a4b01e25dc6a6da8bc4f74d01ace3a01ac25572a67654758da4a80a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/kk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/kk/firefox-76.0b1.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "f7a21230d6f2102d0ef34e3407339e289f3c426fbea1e22044653908dab9430422d85000ea5c30fc2b07905a10aa2afa3662904f6ca388031ba30c91de760d0d";
+      sha512 = "97bb0accfbd813f5a7b98cac840dd0184500b3a50d8b2970629b6a992eca4de9e86e3448f26a8a0a30da0742e517f3abfd82d91c45091f03de3181a44389251f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/km/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/km/firefox-76.0b1.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "b2b66527be2330554a69380ad44b56fb2b1c297ad9aab118446e55bacc35b7958f704b5acb543b826919db6c36e91514cbccb4aff3856dd9ee58dea9bda43cbf";
+      sha512 = "510d2353b66aa5d0b11fd443ea52ac392d809663687cc6416332c94169bf31e5693dc46fd29611a0bd719a2f60f2efd43cf3d7a5be34d81a0363d347830d4c60";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/kn/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/kn/firefox-76.0b1.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "b110a46b8c5d6f4e7a9cfcd126a80fee7ba95cc35082845ad8aeec0f6778dfcde805377ab395e70a5e9dce518c53449a5586d9ae6eb8c19dce0eed6b4757b8cf";
+      sha512 = "c2e4cf96290b8995640a8eaf4f3e3a403523ada1af603bf49d8271f015863d7c3b9af776ed9748de3245ce27306b3ad032bb663bfa4b80db114075e9fc62a570";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ko/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ko/firefox-76.0b1.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "9a35c7a81cd8ee930f8164bb59e58c321f35aa47abe5f0e28faf320216b1555b89516aca94bd49a1b76c892abf29dace03a7055e571198bf981c4beeaf965973";
+      sha512 = "dd233e5e49b4c99fd0c10614bb7b467ccd5b563556028eb620c041492c1d3b8482440e84154947f9111e7497731ba7a2d912c0718ae326e5280a580f4cfe23e8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/lij/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/lij/firefox-76.0b1.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "21a09cac09faa88963e185d2e1f732aacbe2dd8629a389a851bb149eb1b09e4aa21a78996021ac43f7861cd67646e6008e63420c690bd8072138bc707d937b04";
+      sha512 = "f4c847ac00daaaa95ea95ad80ddd8dbcd0f571948bf69ae29f7c97fce0ab81330b6e59e884f88fb435d765c6afcbba02f73483769820265464ee9ba70e39a68c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/lt/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/lt/firefox-76.0b1.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "67864e1188716ae7e93f8a824709d597124ecdd4d76dd61ffc6a1dcc7048429e17440c8d096475811c7a00db2c42c778477f3c32f26e2facfdf538f562fd580e";
+      sha512 = "6fdd503a6f53ccea26cea4abd3e822b51b4bb610e5d9731686864efd0e2a6b48637a4aa74ad230d2c3cc45d0d95c6e33663c5d1d144557797b44bb4c11708be1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/lv/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/lv/firefox-76.0b1.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "de68b8cce2abe936bed8015c88a9dd998bd99d177b127ffcc205c975aafd3f51eff40b83d8b8e18cf66ce8dbb9931a9a9ca27684dcd2e2bdaaffd7b96607dc4d";
+      sha512 = "329972f3745af149d71b1f8bb090302bde3da3281791f1fe68fa9c4e67f0d21cea412afbd79ced9617504090608a416bb2911ac1a610812dfc04231224a3a4ee";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/mk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/mk/firefox-76.0b1.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "c5f0baa178293cf993fbfe73f54a7052a249dc070a3c1538df27949c38c14d1e3d486d7bac26a5c97bd744c051dbae265b4bea215b1bc96ac732fe57a7766439";
+      sha512 = "c5884cc27ff3e2c8a97e0cc498a0767c8a9f830ec92bdb98f143cafd49c4043659b9a7aaab423e2d770d3ec51cd6a2eae0c7e25cfb3f8f32364349e726b6cfac";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/mr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/mr/firefox-76.0b1.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "61e9f28f0c8505d6a132195aad5ba56ef5c9c41caffb22b323b764029b1af0f92dc43cea70580246fd11bac75908023553f3bc2238d842ee1f6962ac6c059ae5";
+      sha512 = "9f54a29e19bdf171526eb802175cb9cd84eda0cd55d45ab334313a18fde347b0ab28760326417e454c9e5604c89743f9c6989df40becf7a57169d12bd68c2491";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ms/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ms/firefox-76.0b1.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "4196f1eb297eca219ed58c58db77d691580f9a33158769f0559a2d1a815f4170c89d282bc01d4a94884b5dce6bf83fc6a6a687041eb02fd38f6dc0aaae78f555";
+      sha512 = "b01d8f11c309a56b38a7311eb5b61718ded8f1ff392e7c3123f1954b2317f25f4b4017b02f7784bfeb4ded9641b20067ce149026e83298bb0010c90c98d2ff35";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/my/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/my/firefox-76.0b1.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "4c1b2e13bbf33ae4d8c213e94a0d1d41fcdf1471304e9eede6ed74d28eab659be559f2a5ffcade436b624604e26255e37941afcb8d9f36cfdca2c3fb9031f758";
+      sha512 = "070e7f956e4c448936460ddba3627cd86a6d30ee6dfd26e474f333e0a9cad87843c2cca8d905c52fafbbaf16757257be6577bef4380998aa80804dce107a409a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/nb-NO/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/nb-NO/firefox-76.0b1.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "fc6d764124ae4182c01a96c12ba13ed807a7715d1ead7a7ae57c0c65d394166f0b80a18b12c351f87d8f28f894700d3e0892a42156cb6601fa34d173413ec121";
+      sha512 = "8fbdd844b3638a94c180c73d0e543ef2c97a4890ac2152d244ee4edd294ebb32d698c974eb9bbf73ad8256abb412f5d3fe49e0257123b9e3a5abfe851805a77d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ne-NP/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ne-NP/firefox-76.0b1.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "f285ea0cf2e4e6cd5da9ea2e04c5a942de5a9ba639c0c6be32fe64cb2d4076b15a0b8478a6b8e25d0bb7555b8148fda33313e5c78d91c5397d3cb8af7a5ab09d";
+      sha512 = "da253d0d4f3c6d042b04049dbee3f0be62916517c3b233e7b767ad8efef5b392c331589ce75f9484b40ea8ffb7bcfc00386222d52b07d1da80b13ea08866d580";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/nl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/nl/firefox-76.0b1.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "1e7e423cc24de27099375279a8f46572310a245709ab3b8450c7c1257ae28e219a1867477aaf50f68762eb1cb32b831ce3b73a1d4d7fcacef1fa4f6bc6a864f4";
+      sha512 = "c04a3f3e860c0cf58d241cdb663b391f170e71745f6b4bba4ada92b5b2e922b94446295d7dac08b153c8ddf2b07d65c3c6c33fe87cc47f80ecfced653d0d4f87";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/nn-NO/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/nn-NO/firefox-76.0b1.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "a1e70c2c4eac55f9f6ef46cf741fe421449e5ef1cdf1a125e07a86037c1d5ee7a329d0e2041338856ae8385778207ebb95163cce1a124da64a5ff334c73fb5dc";
+      sha512 = "00d4f4dd4b10325e9ea13cb7c4f2b705aa143fb906163f0277aaad84e31376a436adb03d534a1546a3c37daf8fd726b6dc8a793fa66441fa01bd6c2d3f4ec64a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/oc/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/oc/firefox-76.0b1.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "ac4abba844e7d9bca5d10889ec5150c2fe357bc5e2fcc1a47cb4ae1489645ec884de70a0190b7cc7ea943f1233dae708e33be8c9e4453a39e10c89b418a05e32";
+      sha512 = "a52a46f4bbab591a713721212c4628b928cbde08de518cb1d72b8be888a403d506bf0c0f7ad0c04fab95a4248f31295817243334c36c9fa279c30bf1c8c279a7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/pa-IN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/pa-IN/firefox-76.0b1.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "59e0ac652e3a619d5a9ba1d94014e583fe85118f4fe54779abb657e9ac5f59865483007bc6c254fce6f29270b24b74805ee6b9d227eca6ca61a651e051be6bd7";
+      sha512 = "c75fed260db1eed5e158dd1ac4d6ed8780eefaf2a2e67e0b1cb3008532bf4d35166050e070904651b69d5098071fe9eaec5c798193dadb68e34800ec97f191fd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/pl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/pl/firefox-76.0b1.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "3ba13b4616bd7381268e618cf0c00ea4ed807c38ff81e1f1b45457f9ab780e6676bfc563cea62df8767bbfe6962d91b8f1d7de63fc101242d18d2b1bbc045a1d";
+      sha512 = "d9b71dcd310b28d4223ae8643b452d2e9f9fbc9a6420b4ed474dcb5536c69dfefdac6685513626ca9c6bc7f9cf12089ec81ab415a432898af8a77faafbe796f5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/pt-BR/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/pt-BR/firefox-76.0b1.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "e115b3c9cbd88ea0fd43b58e9ba7996f3a95004269c5825b23244c9d30c75fb2f63abc4ebe6e645a91e21c798c4dfd7627604f44c0862547e156aa8f28e13d13";
+      sha512 = "0e529a3209ae57941cd498eeb6d89b6ef68dbfecd7160ddd44fdb550b73afebb4f62a17a8510013b953953d977d9ac487753805c826b0dd071d80ce434179327";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/pt-PT/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/pt-PT/firefox-76.0b1.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "7f53c4ba63b41c1f69c3ce11d401464d685983a906f44911a4a984073193c75b64d4df3d295fac9df004b4c8858d586424381d5607228d24663d4a3114e80a2c";
+      sha512 = "1301af89d5cc86023fc6c4a7704e6ff8781d1b28d5c83455ed7dcf1469b31ec772f990967b7b575122fd38e53c56783bc5d5f414851221ce71abf6247994d68d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/rm/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/rm/firefox-76.0b1.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "a397e6373787d0614f77641a10658dd72484364549f39ce89599554ec41b883a1c32b3a6a8df26a0b9065664012fd88e1c88d04d493ad4b2b5b39745113f4e99";
+      sha512 = "e4edd9b51548fc2d9de2172cc360748b50d5d8ffecba51e293f95c283d1d7e836505c639c1656a122a0cb284ec64c8180dd2bc36cbc4c39ffb5b4f03469d7b33";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ro/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ro/firefox-76.0b1.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "7eea48885af4efae7083c92797039d940594a26762551a5ec91479005414a8bdd7e0b57ae7e7f64d9fe80ed5d1da9dfb9c5b04aa1f721a7edaebde2c3885f790";
+      sha512 = "e005191f5d72eff47b695a8ca9021c50efd144f9f464a2e52abb3e44a500d27238fb6bd4598b7613de410c9248b1da5e4066ebcb2a5f034b303dbc6b789cb7ed";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ru/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ru/firefox-76.0b1.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "1362e789bb4890ce7791fb3c3d2e48428adab90ea5fa3f7644cf6fde6f6e0ad13ae01d318265013c48c8d0fb1d4bf67d2bf1001c6a49a2ab2fc0cc71813f6b3f";
+      sha512 = "b5b4ec978e332449566e5e21a03e93c7daa2a53ee7dbf6aa48e8fa5afbc7adfd3ac4224883c1464634824ef526a250fd123c341a0edc526e8495768c7489f557";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/si/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/si/firefox-76.0b1.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "f0369e0f40aa26933cd34b3e34e25a4fd3dc0f28ab85f58e4c5973732e1dd0c9539c9b2e83c82f70524fc0cd2d735a977ae2c62043470f2a590d9cd6e1f35643";
+      sha512 = "1a883746ada6cc9fed22da12edb98b90cac2631c6c525e7e3317c66bb2b52eeeb97bf6e301634a5d7ec141229d245a23a343b39b5ca79fe9182b6467ee0a3fb7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/sk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/sk/firefox-76.0b1.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "2c24711825bdf49ec2cc5ac558ab1dee43c4282966cf9dc00f4ec5c0f20761c31e57a79640b7465a50010d65270c5f730c4ba08bf268e9b85d87e3e800e77bb1";
+      sha512 = "4ec70876ba04c07abf229f938fea5e86500037b5872f3eff06f62d811af294290125120dd1d142e54b4252dc3f685b2b2618a03adb61741d0c77af1ba6d76ddd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/sl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/sl/firefox-76.0b1.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "b25e7a1c421d98455bb141a48d29e3f6b57974b1869b5950c898c56a285fabc6c10b1308a64e033fce77ce9376c580a3d877a42c1cf336d4c17f99dc8c375789";
+      sha512 = "5a830186de891d80b35915481470bf583e67df45bc5c4eafb011dc86116ca3faae84ac901c2fa036f5575a72c2339e353f8c32299a9ffa29880a5df9836681bd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/son/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/son/firefox-76.0b1.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "10011f2340274dbf7bd6183bebbeacbfa41f45eb8a2b255ef996f9c7285781bd80f4ba5e3411093dcccd7431cf57936ab87c8fb27c4458e19a8f0a5489ddaecf";
+      sha512 = "9de657a59c5dc2da3ace4972b855357d19c18709145a59d260741d5855b0c6f0adea1a68262b957f71d406ef05ad3536570834531afc2823f9db5da8be82b8df";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/sq/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/sq/firefox-76.0b1.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "e65105f1d8bb2aedfff769c5dfc55426cb846008d1d4bcc639a45c1fc24a00b2bdb8d1a1072755e552c7878526b75bac33d4a9bef6eb4637bbdc5a0d97020cc3";
+      sha512 = "fc7750164759648fdce9b6df8a40cf4e08a97c60ec1c1f194d63a282a248b7cbab5131f98383de9675cf87b3ad3e924b620e48fc79ed75b12179e92caf08d106";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/sr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/sr/firefox-76.0b1.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "3d0bfadf39fbdd5b51c8187fac2ac6643bcceb06252365532b0369ca4beb0e09ef5116704f208d5fd66e23b321828a24dda7dd277c475967711128a6f8f3bdca";
+      sha512 = "21321e433ae8b3958840514bbb1fafdf31d426bbfa0e5dc1b0a834a94b658624085811328c5d1914c7acad3fe37a02a10c2bd278539209356b9749f3a8b4635e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/sv-SE/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/sv-SE/firefox-76.0b1.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "036773f6324a6c6872ed0fa312c7ee63a891fceef9ba51f402e135b1572bacfd31c7b137014118ac91f13607056430eedcf082aa4889c68af4f4249035bbf7ca";
+      sha512 = "b2cbe20c536b34203b993fd095c96001883563e1e41b1b6f059a48cb9ce10bc4ed6c596517613e384a17ab97446bd06e439b2f06f402a6b32842f30dbd15c617";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ta/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ta/firefox-76.0b1.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "c9e4290b20655e9ad5e2f9bcf8982cfdb8c0492318ffdc716b0c257bd707b0d7db69bd6b48802e17026a3416cf1c78f6d10e782cdcdcaa0cc4a382517e1ea9e7";
+      sha512 = "dacc36c42e031c8e26c7bb94a9100a38d99ade3eba8e860be8a9552797387795e3bafb5ad242231119948c9052e262e401a10fb5b2ea8db4f9a2a6cf7b7d7e13";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/te/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/te/firefox-76.0b1.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "53a4c90bbd7854031dd180fddab6452f29c33f56111ba40d9bd634bb5e87584016581137e1b100ed247565557b8a556c6a473d2c46e1bd65f78fe5506420091a";
+      sha512 = "bb73bf4634658cb4840f3cbeac2a01753657e74ee2e89511758bb268336eadd03cfc05bb8f5dd3573164846f07a2bc5fa35cee4476778599517e604e33c3ac08";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/th/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/th/firefox-76.0b1.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "f75d583ec397c57cac3bd1c384393c818020c3f46ed3b196060497fc2f09a36df3d31cb7b6637e3697a50e04c5222cde0c50fffafabf3415cb097552b67061f6";
+      sha512 = "9232d7cc4a78b733b5b4fbad39723a11f6c0260a3a7a760968410110043f95ee58910ff9648b3b85b1b84cd7b48b04ba90abb183c5a542cd88b3852ee4c8898e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/tl/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/tl/firefox-76.0b1.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha512 = "607e6371397bf29c10893b5a72ff706c6cab84024c93832aedd1e7a57c1431c47350023424614680350536a3e8c6909a3ad89392d15208bdbceb6d63e1a2d95d";
+      sha512 = "dd3863e44bb3a773556814363a7db844a2998e7f967d7d38c2d723ee416b7155cb4ed713a49da323be1e7e19f49e1d52c89d30bbd64087a16fd51f55c494faa5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/tr/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/tr/firefox-76.0b1.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "c28d89bcae7ffc6145a1d8393a7cf4e9e63025f09ec54c42a7d5d7e6a0584f02ab52fbd4346c74e54b116ff461dedf7c533a77f2b2175e34b53f7a2b725023bc";
+      sha512 = "17f732988e3565437c486bcf1d27a6e1210fa1bf91827e22ed2409b020b2f204330386a5ca7a18396e7aca61bb3dda6bec4f1e9ff150f13e0f6fc1fac6c724f4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/trs/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/trs/firefox-76.0b1.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha512 = "eb505f85d35dade14f853bfbf4086f3ce28faed1f497a35f612f30bcf35d49fab6ea32bf2b00e436d12d255ae37dce6ff1fbdb1eb3dd1743064181404bb28774";
+      sha512 = "b673188a607e60b726f07017a307a2a629d9740fa665d350ac41a55ad2796231ee7654e36ea9ffb8b61a25f4c06683f63418098c5a29638dcc81bbb3eae750cc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/uk/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/uk/firefox-76.0b1.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "5045d30636c9f3d893ffe5a90e87f22d91718e36e720962e4d6d505106922290bed710ccb9ba50897228836f5df6844de21384143275460ef50aee37ca175ad6";
+      sha512 = "4db86db3777c7e655f6d33b651b9e78fc51d04a8403bd2ebae66fc56309592821f0d3a96d1989f0d388ca9c797702398cf646bc421c982555e36cb849a146122";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/ur/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/ur/firefox-76.0b1.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "78daf235a6cd6301b356a887bb0b8318e9a8f7785ace0c3a398fbd982e4131acd8c43f818addc516f0f14b56d41ae41d51ba07f2848c0630baa057b323a5f268";
+      sha512 = "c6b37a43d490e560f8f6b077e6df87b4c3f7f653b2a6729a3c7b240f272a5f35d7b4a9bb6ed8c720a3cb938f45c8ae5501a07a7a547d0741499ee4f7646a3012";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/uz/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/uz/firefox-76.0b1.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "ed6edd3f1c54e2675c650ff48e5102f54c258cc999506ace655a99f19dccfb9e3140e4c63d6bede4d72b6f84a6eb300ba485d932316b83922288d3ed6ac66e00";
+      sha512 = "9ed33a466d8ed5d1023adcee8812d1c73399c0e31ce79048c66f79bb66df528d547c0b7ecd62f3e68b1e0e660f716238973d38afa63b0fd8c5b216ec86f62343";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/vi/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/vi/firefox-76.0b1.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "125e68eb19e1f1fbfc8a8ac0809bfeac48ec37da172052921cb0710d8ddbcb031c72139c81c6349a4ef3946eb6d10e49d398e561e2b09c23752182ad979c932b";
+      sha512 = "08bc1ea459f9d5133c06e973d65ae4ae5a9f57d1dafd7d8636eb722bf6f73443240159dc8e3ff2366af46c302dd5c852430db66b86716a1319854e6cf46d3e84";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/xh/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/xh/firefox-76.0b1.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "bdd6749ddbe15d1332a749a9f9d954b4f018c91c3975b61af2863509fb97169f2c1afe31bfcfb2b3ee68fb30a5b7cbe6fcb4e94ed751d5a1710c743b3a6bd9de";
+      sha512 = "296d0c2703baa15b7ba5f0d506e61d989e9ed3458f02423cc6b4f9038ac9f298bd78097f153b39676d25dc93572a6a7e63e804a579e118f1c5d474c83bf37e5e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/zh-CN/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/zh-CN/firefox-76.0b1.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "2da359cbc166375462ce9f75f60ee802b2b63bfd21afa661d3bdce7ee41a3c76639c81f6700292d352739f8d3988de3a33e27464d7a8d7023e52440865e92c12";
+      sha512 = "599d4b7ccae6cc399539dfe0072766f89acf863439f7d480d29b0d048a4bfc07226539e3e67a8e467eedea9448a599a6b7be7e5910a7a29689fe295242ea0854";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/75.0b2/linux-i686/zh-TW/firefox-75.0b2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/76.0b1/linux-i686/zh-TW/firefox-76.0b1.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "99869cdc515c28505d025348013d7617a16ab79bc4b024240b893628e1884221fece1bee33013a62f800e2633bc1edbac256e74c411ea10b32b6802eac9e7855";
+      sha512 = "d9e2ac951163c3445f5aa507a6683ff930431b17e465398273f42d5b432c3c48442be5233a4f5dd4390c00b6909f8e66963c2a9cdddca59a69b1fd602304b6d0";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index 02c90006f34..997d6d98405 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
@@ -1,965 +1,965 @@
 {
-  version = "74.0";
+  version = "75.0";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ach/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ach/firefox-75.0.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "e5d3f75026891916b44fe962b8a01bb76e434269c2e9c10c8815765a8fe3b5eadcd63ade57ac2b103a8b66fe26ea6715f6c6d1ef675390e339c4d82c7f6a2723";
+      sha512 = "654ce2cccf5b123e25509f71f4526f42052b3cd6eb79694de47f94363af4ab2b98b60d73020bf45c11d5aee9d0b3e246f72a7795cdf770f34a34f8c097d3cb5b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/af/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/af/firefox-75.0.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "0a901248b2ebf5a8cf9755abda8bc170a295f65fca461e39d4957595295b61b7be91af3d5ce72c20fb1848a2d2bd017d6d6ce1e13415383d1087bb824a9e56ce";
+      sha512 = "615b948a59066bf7503d66a3fd574fa6523f85765f7e7f84d3929a78ef82b4833be6e810eeb95e266e3609e943703e1c84a0f7a26a542fb5e8a8bb0fcf379065";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/an/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/an/firefox-75.0.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "ce2ccb8f33acf35b58462573efe1ae5c37ba79c6174340b0e5391d90f826b2ba40aa1925d1aa247f15ab4f1272f552a15167019161f3ba53edcb6b994592d83d";
+      sha512 = "070d250a2a22ae6b97efc618fb65fe93efe209b82aab53f9c13d20c3c8bf3fb9b84e209661d0322759a0dbed68e17c69ce6ef24a53d9dfd3186f1fd987e7c60c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ar/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ar/firefox-75.0.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "8f7e36ce99b292084528ff29f78a85808f9259d7c6f6b20aba1a1b20de97238a9efc5fc6aefb6ddd1137f98a27e1f6ce62db3f8bac0fb2d8a7659a6f1ffe7049";
+      sha512 = "36f7e51b0a1b7eb1c5df858cd0e90c301c162bb0413882dc3e64ed1240b4c81fde26eb0d9f7d813ce92c8bbae1e87a98e97d4a6360d765fb32ffdd84298f7f37";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ast/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ast/firefox-75.0.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "042d6eec61bbc6d4b98bae661ac3fe30120ad8c732ee450b363cc6ffc78ba8367eb72d42fcf6244b72822d6a333045d7cbd38498ef12901566d3b2576d34d181";
+      sha512 = "693cc4eedc5ec9a058ecb618ef70b322bc55b5a6159f480b219807940061ec22c92843fd288252ef30341dc1e42d0ad63586f5b9f438011726dc5fe88ad6037e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/az/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/az/firefox-75.0.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "3ad861f357fb538d45388b9b2959043b157422144e426053e84b3094ac99a61af1bcbcd4697ba4da9bae70ce50915aaeea62b82f03e465669c54c9ddba4482a6";
+      sha512 = "9d78aa451a95f5c26685b6065c93c77c7b3f14db6cbc57ceb0b868a30ce2a023d28063d4a14b5617f65c2ebcb6eab7d2ec6ba2eab0909e44ab3f25b2b69471df";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/be/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/be/firefox-75.0.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "cbaaf387a9cdd6918d0a8dfe81ce02c0c6de644d791bd4ffb26dc84679a2129abfea068569967389672d7097e03c73b8999466b816942b14739eaa9d4c7c8772";
+      sha512 = "6b898118e72cb2311d6230a2a151505c1927a35060bf703da6ce97a5d0735b06e56b163d5e5d4542931453923cf5e0afb9b527d2392e324a509da5185f2a2720";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/bg/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/bg/firefox-75.0.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "7cce07ef87dd0d0c2a7040238c2a3f9f2d52eb2e13f1037031d5e8e1c9ffd4b64f018b2e6ca76dd3bf9556603da2454bd5e0ec86af9bf38b4001fa9cdc3f1707";
+      sha512 = "b9a12097e8312c099622c3f506c09507a9f3cb25e36f25967001c37f3840916f58c6693f272725ef3a35b22be916c3f4eea78b3bd0ea4a110647a0db53484cfd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/bn/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/bn/firefox-75.0.tar.bz2";
       locale = "bn";
       arch = "linux-x86_64";
-      sha512 = "3208c555544130df757d30a89769b9ed30a458712a109868d5d2d09212caba02b5c2200a30ae12546113c96b6ea32996367013aae11cfcfe358cbf60f2a26f87";
+      sha512 = "b396e1e57c0e1cb7d554eb32ff4cd92db5458c5c232855bce42765aa2ab0d387ccd817f8a06624f84122f74dc1d5818992e9ca18138085a2f164ae3095485e14";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/br/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/br/firefox-75.0.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "2840bc7fda4e4713dbba8f09c0295b8c566de5aa86486db33be1f05b56ac02204227559b546b18c4531539e3a4beec13b8c61c2e9aa756bb38329a5dc2d6ab81";
+      sha512 = "3aa6fb9dc3300b38038873e5fb06e40f4e9adbf30aa6fc4f3cfa7ebc399bd94d3464081f304843e83d4478989874283a8ae1be5704d34f4e43b2a699aab31466";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/bs/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/bs/firefox-75.0.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "c0155a15069791538342d767e36ded097deae8ba66b27f6ed34ee00b31ce045fba718e58452dda47b53fa4f26dbc44420b5d1c2d6b6610c5a57d3a58c63eaef0";
+      sha512 = "baf9e2909320fa15c70fc4a37e4e15a89726079d49d2a7edb72dcc4908b59cd8a8ae4917c1f4338063f5b85b119dfdd9c8d0480d71dd4fc45cca77ce465a3170";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ca-valencia/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ca-valencia/firefox-75.0.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-x86_64";
-      sha512 = "29051c03f47f5c7d9c9b1ec62d4e94b3732f2e695f92300f1f035226cd81f308f3bdfe987bdbfbed19b15618e89bc1955be3086828a6f495488730d7cc76b014";
+      sha512 = "a3e16f4ef89e8ffa65981cee1ed53817dc2ed235f2f3f7b9ba035db92ccc58893b10f5719fa7c37a400bfb9da07309f788c142e36e5f7a91e286d7f0d9ec3092";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ca/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ca/firefox-75.0.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "8cc5c4a3302cae8449fbb215c456073a03d86cc555737ef0481480b695ff6e72d59a4ec54d8205423eb588f4aa9273711a2a61722241335d68461aa6597ec4ad";
+      sha512 = "a68a75844cf22ecccd407f0478bd38b3ed6f19cf8e6b32cef2c9e5e6d03eaa621b60be924a649c729b6cca3dbdeaf518f56676cb0bc295cb50ebb1038571e31b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/cak/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/cak/firefox-75.0.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "ba11aa53222ad1947a0a8d41b2a0d5e16afdf2857a0415e28c21fee8b27464741c0d10f8655182c5b2992362f040290aa6dfa720b3f76968f26407e9e9183ca6";
+      sha512 = "5759039f87134d0a1653d8175c53a0aa8a71379cc4aad75831282956711e4fe485e62040c3325f24684e2d676fe4208ec4319aa959cb29c9682847b35906589d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/cs/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/cs/firefox-75.0.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "59c3c417a4a686ab3ef0073f8e153964f2e516c98f6772cb1be93e6f25ff9d34a830042043ef9ef7436445e9932f862f59ac1c00ee55cdf273f4c514473df1cd";
+      sha512 = "dcb7a5c9b89c524e61f7a99a2926099cb7ba088c7fbce82f3e8450b00554efc587dd7c4b757b6567519f0ec928edf50fcfd438367c37b48a3bff7d1ef66b4d51";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/cy/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/cy/firefox-75.0.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "06225ca6ee4fa5e7b4c790b0904faac902ff260acfc52df60f87d0a146c6bb299b74ce0163ffa6c2dd951bb8a6abc79f99ceff03ddac1481c548eac7ab717708";
+      sha512 = "e788954f6ce821cc68afe9428c02823870533164b36123d7f7a9bce7a4d82392606d397713e8cf28b5360dc5897ca35bd3ff6aaaafbabb7fe5106462e8f687f2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/da/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/da/firefox-75.0.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "0e0f3db805b0d63182060cd94dd0611ddedd2bdb0e9dd41e29ab8ea5e14c31ada265c284000de07fb3315e83a5c49bae7ad5d7976bf6eaff819de80270a8eaea";
+      sha512 = "4a2da0b04a3f6cd6a5dff9c4d575d83b8ac195d815d4bc64e1bf59f5993c4b7e26fd56b81d7f0c5f6e5d084365b4d21477f7d554ab06a4f73400b8c484ad0fcc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/de/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/de/firefox-75.0.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "35a674acf20ac903d208bad89ff681ede7fb4c9ce2bfaa3ae0696ccdfe38e065c8e19cc9afbd711aa3ef0591a3fbb0f196e71e2bb2d3407d9084f12b297d0eab";
+      sha512 = "6dd27ff5b7eab20c2548cb0dded8e677334b58040ee4e15a0d1095cafaa209bdde069d03b87ea7133899093375d425621bce7a9a3816f62aa603e20304be56af";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/dsb/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/dsb/firefox-75.0.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "7aa789662ef83d31d7bb68ec95405becf328df9127b02d128638b6726ace88038b75b94262ff12774c2f4538e789ac75d8447935b0160b7967b8b46b4f576d55";
+      sha512 = "abff1c0ab591a1c2572e88c25c785f218bfb7b9d86c415f4390830f4d0e2ae97f9ba44d2f0a552356fcdc2d6ef9a238b6d00f1287132df60348728b63fa322bd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/el/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/el/firefox-75.0.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "67bde03970d1e5ec54badb0964ff2080158e49c8f6a39243c58e7152d17d7908ecf79c6513e1e492f2816d5e5daa31bbb60631be6d56545b55a37bc36d3d1fa3";
+      sha512 = "9bfa5257fbefdc079f5d372d7feb3f52f52a33137367676e141a3aa57b5fde64a1e6d218a6cf9d81941a89fb3917edb5f1c4883796148fc63a32c55554538796";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/en-CA/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/en-CA/firefox-75.0.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "322cda1175c9550d10317149761f7fe4bb0a518adb1a7d4cbb96801f9cf3ecd86ca23b30109ccb513b398c1de7e4c9d3f86571a97fd8b3904c81cab1f18bf45c";
+      sha512 = "5b6ff6a0b422bd399a5ac2893e187e4f46c6afc106aed7177d3f3a6a9f72c5cf283a589ec589625deed0ce4e3d7d1d45cd9d8a6c7015c48b7187edeb1c07b129";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/en-GB/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/en-GB/firefox-75.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "80200e9e82544cdc88d39d620be89c6794d9f9c094fede1f3b0dcc59ae782ae1335954a8ef230ed30bb4295c067ea9bb080bd1415fceda0acec1f7886c667d47";
+      sha512 = "03e20bb7811ba53b2ae3f051279c478b4a240ad9ce0381e9a15daa8d04f15b11446456b05c84f41c3f628e3c7166ab2d19b8074c77b7f3190795cc4219be9be6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/en-US/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/en-US/firefox-75.0.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "6efa1ab5c884348ce011a5c3d370f04941ad37d14fbc36646f650ae877f2d3fa34960ab35368f8811132127d205c9d00bbca9d8d40f01a4d32f126bd20d9b0c1";
+      sha512 = "7cbe8df35f61d82115ca1e4db4dd2e17cc96ba74cdf4e5e48aa4c1f5bdadf4e8b612b6ab58a09ce1352129ccfa68043ae92836b175fc5c328c3696f1f3426107";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/eo/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/eo/firefox-75.0.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "afb711b4f859997c26973bb0c76dc1f1b30c2fc2b3bd7bad29e7a804d20cbdec746678767fc906f18263fecb0d2199ee96d569f9d13d7a23070804f7b2dcc3e8";
+      sha512 = "933a872f25c6377abe21e33fe56a3184e605e299369cf11b84c0fcf420336f119abdc9568eb81b1e51bb58228616cab4c7171cfb8f8e40329bffb377a455c832";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/es-AR/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/es-AR/firefox-75.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "8411449eb3699f43d2c430791b31f76d65e446a171757a6f6a461966640e23ddd94bf94f832537b0b6bbc2f4618b7384856cbeb2a8a5e0130a40ce9362561ebc";
+      sha512 = "5da5004a2985fce3a6dff5461f2c0fe174d3ad58e3dd37c4535edcd0883fad6f5a449f9f898c5bde5de3aebd9911e87e82c99bd48a06e9d953e38666e3f8fdee";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/es-CL/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/es-CL/firefox-75.0.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "20400f859333966edf138b391206595c8c57cdfd57803fcecec993d6149019662d02b31a9e7c82bbbd3a57a827f29940ed1b4112a73e4cf4be6a1f327e834265";
+      sha512 = "c2acae33bbf335d871ef14e27d197f4378e8ad1a94b9ba2df28497e4a72fd554a1d9428692cbd7cd5e3147f575d7517dbca07b3edb5eaa66c390000e7cbf5a7d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/es-ES/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/es-ES/firefox-75.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "b9017bc5587d16dd2cd5f1d3ac8ee6eda2768a4a6f15fbd05ecb437cb9cd341bf12a795a8dd110474abed874549855550af1f4d6836b13c4e020f6b66ef6f7f8";
+      sha512 = "ce8ca7ce217bde7b42c9ce6d64874d37306754ccfd61f0b61c898e22f84feba6e30a33468b9766ad96f5ae8e6e674eab93881f36ded52f010216d8efa5f77907";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/es-MX/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/es-MX/firefox-75.0.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "ec482c757317556b4e77e46bf885d99824b4a48577e3efde0c89d7bcb9464199c005ac4aae380294049f5c72b1f792c41fcc6592bac97cf4b7961925e82a5f58";
+      sha512 = "fe32f01fcc01ccefaf7207fdc56da4450fd17928185382cd738d7a22425b5c3761ef60d0a9f7d35d314d0b7884859d614f08903eb20fb0a679f27dd1f4b136b2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/et/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/et/firefox-75.0.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "afd3cf4f9384cccc079160f3bee5a87d0ced59387b1ee653200c73f541bfaf414f983110e29ef54bf45c869dc7b9e82f50baad2691c0bcbabf1f2f49283ba144";
+      sha512 = "fc1855e6c7bc19f181c7e87909a79e1a5d08ce1fd38f52d65e20331daec8af8b54c1bb7f90eb1c3e53c900f141ae264f55895f6fdd3690a83945a26707eec27d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/eu/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/eu/firefox-75.0.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "b09cd73ed933b56266955a82ebb2b6dc0f9f6ef372680172e5198f4ecc369e9bbeb98cf09a6278c4363c9a88c3367806453821da5293fbda18cf961c09cf94b5";
+      sha512 = "a285ac60590113e41f04a85183038ad02f0d7e24fb42fe1a7b313eb6d3fb5b747ac5f90364278f7c8cc3f35d0ddc86c0bfbc7f7fa7ed2adc56ef6c77c5b25ad8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/fa/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/fa/firefox-75.0.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "8661510591646f2b581866a2f2c1816eefafedaea05f7daffb7a4ba51423de1390f9f234b03021ecbc1a344a2537585ad1284d69efb5b0e314d53cdae09f194d";
+      sha512 = "84ee3198ca0cd8a3b20f4c696f6c08b94d35f9346e4443e1d6d6ef447d94a20fa1d58488a12124440290c4ae00ae827ee59c0cbdb7905210bdfca0c012f7e01c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ff/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ff/firefox-75.0.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "b42acd23ac34c4998e1cf27a1b74d12fbb954dc65ce7351d7721f91c16338e30239c79660c8d6c07eedcd9601fff6d7b7c94b69f7e86dbaf8001341a9bad8b20";
+      sha512 = "f3b615fc63b12ade11fad5b5532d81741147156ae84d08b1bc3c0f43f2c204993601e1bb363ce7e3ed7ed3a5d790428ca51e3cb5decf56f159bf7a25e2e43a83";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/fi/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/fi/firefox-75.0.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "25ec4fa9f055d2929d400614442bf771941236d6b54741ba1961d6775c070612367d61a23fb21ff3a8773b55614960e722372287c98079947afcbea6dc65a0cd";
+      sha512 = "b629b55fe05c53ef814b091ff5222704afb3802630a5f44047bcaa17f8140c834725eff9e51786e55336910c462ac07b956878b551a5a48190b1ccd2904e57dd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/fr/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/fr/firefox-75.0.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "2fe23f3c5b82b831f2cdc9b07381160078cf0ff92df5e464d249f896ab9467b8e4464d5415267014b9f620601e7bdeef884fd1eccfeffcd6c0df454df4c7853a";
+      sha512 = "1794f58a31e91916492319091437ad9e5bbed95b3925854f744e6e635e9fb4c06abe73f9fed429fd04027c12cc29b63363e60a0c099640226a5a626a428b3002";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/fy-NL/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/fy-NL/firefox-75.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "3620d8f7e24f31a261c73fa6f34c88761148f5ddfd3341575e12e82e1889dd59d0cb21ee8bdbb43b92d9033d274bc4e98ae4a29adb95a750f07abe9e605a4f03";
+      sha512 = "3aa9f95eeeadd81d0ecfa93b1df9b1b455425f430968395bfe65e60a65c6aed3d9316f842673c2638acffedfbf1d93940086f6b7a113496c7d8e580aecd8f25d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ga-IE/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ga-IE/firefox-75.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "75362b8c7bf608a2049d217a442364d0cf3e7dc31419997e43cb25a821d8a31e1d923a2770f9b360cb32923e4338c16718697fab9b16c018a7670299d55da462";
+      sha512 = "43bb9830e38dddcc59480a7e162214e37ca3516cfa0d773c4851ec60f098837ea2849917eb460ae7e388612619b13cf29d26d9b1908a8734b6fde1add36c65bc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/gd/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/gd/firefox-75.0.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "e888397bc7655e55c4c91376b7165a1dcbbd320e591cafddeef7726caf8c7eb5acca6fd82600ff05a22cf0e1514b9a2cecc8d34d8ae75142cf47a2134cd50407";
+      sha512 = "8cf151995af5ebfaf9f713dc7373b9ff3d12ce582c4fd062741eb99e291aec68fe636d871709ee0a0bd628af0e9f1a412a12289c539334783c7a5d6b6b0d4822";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/gl/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/gl/firefox-75.0.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "66c695344af848e4d96c727abf72cfbe348dab0eb61cdd24feaeb462f90aadd55b6115c9e6ac6af7a3ec0691f2d8233008915eb51303da637a9b6167336347f1";
+      sha512 = "da133c0af8546ab62c335faded8b35f917af2cc7fafac8cd22db1e3a867b390de60a2bc15adc7687044702907a675eee42b049cde335d41a55894537dd137fd0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/gn/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/gn/firefox-75.0.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "c266adc6f166a57994ae92df8df47c9d6fd7a406b4d3b0f157a33196b31c04b8ad2fbf5c491b80b7fa200c98887b4b4a5ffd3750930984f18c8c86bf43d6b956";
+      sha512 = "a1f6063560d70f81cab8d40f1f0e28ea866f284ec94a0093fe874c96795ad3e823c202e82dee2de7578f3ffc1231ac0e8bdcc1a21c44107cb1d4ab56cb56effe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/gu-IN/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/gu-IN/firefox-75.0.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "4924605c3be69db7639708e76cab66758c4bfd217f8a1bc1340b772db1d31f5df19099dc30ca3422db53a7bddf548c87e8338535e1454fd4d9ace57a24b71832";
+      sha512 = "60123058d668641a6c48a7a6a4247337515493267b3489a16e9f7fa2d0ab1ed8a5382974705a156fc041501560b8f6a2be3a97b47ebfdb5f6f527e63ac5acbcd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/he/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/he/firefox-75.0.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "faabb65699d0c83321178d845d7831c82078dd592d6a602a6b25eb56d5424c4c479345cd4ff331bda79e9dce616a06141973bfd7c221b20b3a8ebe899ffa2130";
+      sha512 = "7693bad7f6505cfd1718e8268611133d26826adc49003eeb6d30bf38ddc1908c39ec270b80e20463c016e4b367ea8035dc8c9707b410299581e1b09df7a08df0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/hi-IN/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/hi-IN/firefox-75.0.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "6d331d8ac6ba025785b49af71067bf2fdc406caf9f1c82fa90e26b4f56a1a2eaf4043fbf5ff6a477ac69836377cfa2205e029bd9125982b7c4076d90111bae1c";
+      sha512 = "f5b58f3507852cb2d900d1398c934bb8de725b3578d1037d424f5b81d7cf2e0a247e6be50037e027649dece8cae55c579f81205259c93f22eefb2d67af8b0d57";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/hr/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/hr/firefox-75.0.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "8229ec61969f2378f02e49f5071b49417c871799986a8ff9a77b177aa1753d410e76eef80675facc76b4c55799ddc4a16984cea4e1a321a96090afc98e741abf";
+      sha512 = "6504e82cb541bcc9a893c5adcc063a8de3b85e68329d3e5dee0a461a0c614b330d7b59b6f3fa0195a01d69ee011017bdf999f95fbb19ad25136b291feef1ccb3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/hsb/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/hsb/firefox-75.0.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "d78cd5a9dd7c5049e9b705412268a568b62e2a56602896659af9144ae9ae2ef0e25b7da6d470c7423bc2fec3fe14487b7d966ddeba69d5a451c6e3558808edcf";
+      sha512 = "6d0828ce7c721aecdc66a1df441cd7ad43a1e96487797a414a5a9843bbee6edc1ad2aa23d82edac7b2bb1264a0880b1852bf2cbab184ac1f5f91da99fb4bb06d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/hu/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/hu/firefox-75.0.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "e0da837fdb4071e88bc74de77fb57367eb2d69fc6f319b1672c32e3d051facfbacbc93806f5067674342898cf9adb44158a99882c66428b65427b952d53842e1";
+      sha512 = "a252051af8e299e6b21e9d601e54cbb0413d73eebce693403b522354cb0b6ceb240ef70b50c99ab55379d2a99a0f268483e2b0a02da3f9684a5b7a958b732cd1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/hy-AM/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/hy-AM/firefox-75.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "6f9ad04f2f48830cdbb1c9fbd781f50199593fcd3da0b8853b305c6c61dc627eb7669968aa69beb1ab6c0c93ec15a942e85b2984d55cd40d0b9447e28db458e5";
+      sha512 = "aca7eb55987d98d69f024ac41414fc9394c8f05949bde1880d191c3b09bdea4798baedb4a92119faf923e5a36c760360d87ecfadc771a57f6425302483b6dd08";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ia/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ia/firefox-75.0.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "4e399cfa525c847a0aed0b1c46d85bd981af6a3a68b07ec63860d53cb0d0e9cd004402522e2b54ffe81d95a6b594fb16290d9a5e01cff5cbe7264bef5e12a6e4";
+      sha512 = "e23d26cd4f7cd40610ca841fd2b8be72f199eb2102560002c419fb6f00b1f2fffcf5fad6fd06c6e7a0146d2b7525c006e6dc696271f4bd4f5bb3bcefb8980e9a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/id/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/id/firefox-75.0.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "50255eef2e33bb5737826a9864af5837e3b5e626e22361c5a3fae52a84afd0469d3de1db05317f1c8734f34c0a3e85e7853217660eb8fddb8cdaa0998535ebf8";
+      sha512 = "f8ecfe334dbcf6598cc2241c56d6496ccf0755494d11c26e2624803d3f1a6001944d8c9b78c62bd8bdac85fc3d1e60b90212b8bd8b2842e0faf6824a1651a31d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/is/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/is/firefox-75.0.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "69e96b479069ef1bf07df49cf77e623ed56d71ddcb44417b5d8b7d410bcd93f18c2a49bbae6a128e16998bae99617aa2128aa2d13afa0987f3b3c98cb9f39a8a";
+      sha512 = "9ce50d9746bcf6384627a83538a0e023091b7f264c6364e88de2bd8ebed0e081e1d31681ae0679d2a88f462bf9e04d7e9cd07826822cff3db1a1d338816875ac";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/it/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/it/firefox-75.0.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "a240412ffb762df4063532b6c07b5e1bed86b9d77d31ae2ffa58b2e7aa596ce6ab906e03a416039cea1ced3904a152b225106690e2f793c4061f0858fb807f07";
+      sha512 = "9284d8657a4097696523cc07217908449102f46dba9564f98b2e4889707082be4cf285f889f650ceaa92e06f564daa19691dfcfe95b0b4a865987b767665b837";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ja/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ja/firefox-75.0.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "dd419563541b90833e50f3a65d54638719df741e5cdbe53d6dcee39f7623745925cb6777ec07097e9c25dd69deb0c7a183ae26055e623869df6e7a65bc020c6e";
+      sha512 = "68bfe86b27d5d5d71121735a627e29964b2c3dd70e33e12f8ce3a9d380d253c33bede8d33eb7f0185acc68deb388b731ae6b40c7d71ac49c6fb5ee60e44e787c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ka/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ka/firefox-75.0.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "a1ad0cdb38c4fe1e2d87bf076cf16fb463f9f6fbdc60173768807570b6b1d4b7ebef9826d59e8666aba4598282556787e808371de37935c83c870d1514b855ea";
+      sha512 = "b784f5fcc063c98481ee3eae767eb3df60c9ba4464fbb612cd10bbdf1abf54f5b2098700345f2494358de1ced339f1fade979ab6603f036e4a2f76b25c46a33e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/kab/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/kab/firefox-75.0.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "d7f80172e0ae8ca780ad2f83fce0f75f53dc9a86d14908f14bf12c36ce4beededad592db90f35981e8c86ceafd41075c561e7b9b45340a27aae4489fa6cd8cc4";
+      sha512 = "ac26df50c827efe7fecac013ae417a4b68d2a49062ec9fd443f5ff6d47646333ccbf6a98e92e0c8c2d5aa293b170336752c92d33999e41e3ed163292a6bf3d0b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/kk/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/kk/firefox-75.0.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "d7c42163e48e7612d819247300a06d99f474a68016d099626c7493d6a836b9f6a0b641f686a2e110fea76c1df2f91c9d1b768c90011f9001cf708c5c4f6e8d95";
+      sha512 = "47e516fc9fbba8e5b57fa3172df29fccf8d318fe1431233c2d70c5c657d40f2a8af1b20daf5e3d6b3978ee093b1d100dbf7ef8838385791b58ce5463d6899946";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/km/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/km/firefox-75.0.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "3d9e3e5d211260e5816419b77b9dcc8aa77bf967c795949f9483978ebcd588928b9c36cac637d7f7601239278cb72860a2f047e22c3cc9af8fa8ef56500c6fe7";
+      sha512 = "ae0baee8e59fc4d44ebf57d7f708d3f30126989e4bd32309d8daa4478facfa4a929a96972acfb248eab0a1e04597b2dd521a4fee40f748fb0a4f6108220464de";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/kn/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/kn/firefox-75.0.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "ce3247275a30028580a0797838d7040e3f048bbee92684a39abe65a7d0425e883460aed711d4d7aa88295a5423a09872fddf51ac0d122fed50ca5d370fa27a84";
+      sha512 = "c0c37e1b36408b0d8a4d34fbba254a6d6b37c80287ddc4abce88a623ba3fd5b92108509bee27bbee500abfc08d364886ce8ed5b816b9450aacd127aeba39df94";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ko/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ko/firefox-75.0.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "a869918da7166a3de1918115c4fd080c0e17455bfcb54141332f5046fc546e4cfeb301640c5c1475b5b562d6cc7c29bb970423982bbdaeeb5da469b59262c6b7";
+      sha512 = "8867aa119becc3e88c63096c5ebfb2bea3a396cbbbc18f35725d5983df098543827bf6c069292322507b871263f744ffb411a59437687780a9dcafd276d04410";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/lij/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/lij/firefox-75.0.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "c5cace7eafa3fd6572bd00575c2e342ab1614b9647ba0fbe5b79faf65bc89c31deeca52fbc7618533dc48f6d60911a4af0020cd40fb28fc33f1c1538d3c3100f";
+      sha512 = "c10c9dbcbd911c3ce324aef23629f37df959797128fcea7373f3d77fb8b3d538850aed797e754bd15edf59e666412158bcee2c1a9ce8d040d1b457de9ee007f1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/lt/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/lt/firefox-75.0.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "a53f8f6c7585d2301a8490a75ee7e90d3f47b1503e8521b1b80de49a062531749c2302b92a2332b5cab7f9a4453dcaddf623ad63c5f78dfef11ca190bb73e6b3";
+      sha512 = "58517b58ac3c51c5aa2fddc0b5a458d100d3eec44e51c6d188a85c2e7538caf37cabb1440f4ebdc97d54d3677697a5fe07235d67ddc5c4287bcef10f9b7dc3bc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/lv/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/lv/firefox-75.0.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "26e7d07a0cfff802cd2a52e303af0df2227bd40616809acadcaf6787ed302e8ea5686de2a1cff800121f3899120c77de4df4eac246c9768b741b5e5e411e5d3b";
+      sha512 = "9e07357febaa5b67eafa435d30a2a8f75f2ad25d1e87968cf71b8a265a647ea0020169d6f2cd77c4779dff905774664f84ad26fbcc8b9d4c986dfad52000e175";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/mk/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/mk/firefox-75.0.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "e07991906c0c4d73a83205add07eeb7522ab51d32133f9d3601dc0e99479073f1f55e617913f7ab02f5022d898aa023d473652577d2e48e86f6c5d87635940dd";
+      sha512 = "249c45bf3f1b22e355bcfb4f5afa829163d8d1d72a8f192111eff2158b10585152c9c2dcb2fbc9ce66d8351d83d83236a04b42da4607fad92d2b4e25acdd39a4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/mr/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/mr/firefox-75.0.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "ce1f14f12949f7bb6493d72878fe81642619fa00dcb35c7de6d818a25c6cf1349c983ccb3976b796673340adecfcfd344042ef59c0eeca159cd1c60bd59d18ea";
+      sha512 = "b5860b41a310cddc4dc81074f01deffdbd10ec3f682aaf3d27881f8c190cf5ba39c428b7bae688301f8fb40ca12b3cfdd9377501a3e750ce8995e1331fc015ed";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ms/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ms/firefox-75.0.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "a2f3a1a8152835045c944cd70dd86a8053ab5cbdde7097d6d2e3c06485717ef8efd762f97c81b88f8f2bbed5e6d3d14e6adf192b286eebe413529bb60326a742";
+      sha512 = "a1b88f527ce9e4d9f69d4b727313a68432db2d989d360fe5716f896d61e7dc098667720a2c60e33612b43157566f95abe6f1b149f7aa507a9738753e6c3213bd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/my/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/my/firefox-75.0.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "e6280fa3a25bd44bfdfd80ae28b6909417731a81dc86bc728d70a3baa35f29d172c9495de43a87911b36e5bba187d4aba3d6680204ffd62b966bf0044ee7f6b1";
+      sha512 = "74efc375475884fb9bfa9fa4d944dde0f6c734d1c73676d37b80a909618773147f12faa94ed6570a6aab6652c4c5c32cf386ac096acc025ba6c8440d8d345026";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/nb-NO/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/nb-NO/firefox-75.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "d0ea04c9f898eeef36ee46918b345f6a307877d6aee8f9ab958e1600c74494e3851563aadc8a34f0997d285cc0f2118052dac009a0efec3034d6c3eee72d119e";
+      sha512 = "c1d4eafece0ba52022c96fd939651ad047e942fd9128dd8c6bada79f2d0eba01311b4829c805eafbbcc53ec4dee34d14e015742a86ec67de07d84d6950fff41e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ne-NP/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ne-NP/firefox-75.0.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "2baa7e1108390ca2baa28eb55afafecc7a67e746d3cf1a883fa515c623a9aaf996efcc4d54b6ba661f05f1ee00ad607ae75ed286847e7f9e74713e1a96df5cf7";
+      sha512 = "a97b467bd40e1564973b18ad6acb10412da67184daaad25c34b84ec2a8f3a840f01fe4b9720f4774a546a7e035338d9ce297eeb882a3df2b50f6a9cffa2bee13";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/nl/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/nl/firefox-75.0.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "e6c2a98851617b9d6e0f2f2005b049de15cc6dc89793c977c0566be9ec1000041c5f2e423cfd5e71351913765c37ed37e62b4defaec4c59b7d2c5e698dada651";
+      sha512 = "2d84393b851618e1742616ab6f3b1fb21b7f00cd65a98438cf3a1250275b7b184f6eb0cdb1d1425293d1ecbcf4591fba392283596146a5b18f29166111cd8844";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/nn-NO/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/nn-NO/firefox-75.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "df2ae022d88000d677a487f5c409d57d1ea703ca5a91770863da62f74ffd3ebf7e58e463ab9e67d44514c630b7226b7b623797dd2e90185341afe532311ef039";
+      sha512 = "c5782ddf73e00481ed338ccc989b2c2760f15e2b2960457cd3cf6403d6d3ad5d1b5d34cc6194b3a1ddc83df8d376796802d4e945b8ab47b7b7e1a4d5a4387a6e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/oc/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/oc/firefox-75.0.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "8c52efdaab0e3b9eb2f4e99710c8c7cd9d1d1e894d4c38cd877fde81fd52f5d135f039c9b8619995c384dfe4aa44fda37121d9e0cb87003b8e9dc5eb013ec0cc";
+      sha512 = "cd3a3fde21ab21e08467ebbb45d0a2d32cb901c2b6807edd6298eb75bc089684f9fd26c0741295f2ea82c2e25cb375bcd1e45e26c267c59d12d285a00f0d0b74";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/pa-IN/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/pa-IN/firefox-75.0.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "fdb7acfb49db508be8334685ce47216fe84976205bd83b159d5e573c004417d6adbb49f7d471af81edf026d417f2abfd5411d0e360ab36c1b591282d767873c4";
+      sha512 = "546e36c717f8a0c216c32f53cb56d2fb709702052bd52ac1184860c7cd755f9f0d657b8955c3f6347c37d382600ff9cf5add261dd066e8881e6a3e410fea151d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/pl/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/pl/firefox-75.0.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "ef4430578cb71488d0bae269610d962603f4da4a5e7e614acb90f700f4d487127faf8afff3000a9e46f81bb6a271fc2f6b40f06c881bad2096ce4a0de38dbd8e";
+      sha512 = "837bde42f6b9c1aaca794be4fcf819fcee3e3456a883743882ed6983e71f98ba25e02292bb01811958a9f21cedac55586deb8066f52939971c348e21ef5ab75d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/pt-BR/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/pt-BR/firefox-75.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "0987da83232c8319a890c8f0f62cf43dd9e0a8c82b8e06b3f1277cf83d6eb09e73df163b0a9faf420ac9db8924b1ad8ef84f1d0e81ea54682a831f941dd40700";
+      sha512 = "81a2620aee0f210782aba431e7e9e15ab2a0db49489aa61cf7a6af5944e59c62f38b65aafb198355d5d49aa5c52e1052ba60c03b1772916a972ed06aad616f25";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/pt-PT/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/pt-PT/firefox-75.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "4c052c11785da470cdad1a098ac1b1c8527a49e88a735319aa9385f4139c8f5f9e8fed496d1832cc502ff34be570dd5578c6b0d3af93731891753d842d3c07d4";
+      sha512 = "c6b317d17a14c5d5d428410f7e86c7b9089442bcbefdf1a44875373390d649b2f7eff26c09c5cb32fd2f8f42293d289044a7007dae4b075bb1fc522b63f4b18a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/rm/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/rm/firefox-75.0.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "462d3e3514141bc7e604fa9666800b30bb15a01757bdb8e1119cc0d97dc4d585a0998b94459ae92f9ecddbbaabf2f1aa342c13acb03135620b0706246f0f7e38";
+      sha512 = "12e6c10fcc9419a66aef11e50969fc6adc7084db46d2cc6202a08e1a7225b797fdcdebbfb9dff6a441e3fcc782cb33753361ef37767e5ccff35af2efefd82256";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ro/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ro/firefox-75.0.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "47bc24b33127efa652d2223fd6a624b6d8237911e10b8629f7b8ebba3320a4133f5751b9ec62f2acde9aaa45df0f0454e12a8b9defb366f8d2164db0356880ca";
+      sha512 = "c03df00b865bec9765d28bf0171a5eb6a57e3c8cd64a9002f17bf67d4d0c118414d6b25a782aa3eaca50d5997203c40e376562f64a252aac4b26fd8419872feb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ru/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ru/firefox-75.0.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "57f796bcf9d755e49639af0f4d7e38878d8f0fa0a4466f3c92fc8ea62c5fe365c10a81871017c3cc83915f80cd3db40669f470b53303bf3433c618c87c0c8502";
+      sha512 = "418b70ec07a966a51c101e9ae341b0c949476452b75ed00677ee87b032d592fef65e6ce746004deb0d89b94cf9e2d18ffaf1d388026bb5024dff0994dc2fb058";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/si/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/si/firefox-75.0.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "d028506d4edeede079c14cc2f97d7d9cc665ff54f163a691ad84da2731250e119ecc8e69dc4351a7bb58e9d2402a1ccfb26d30a2fac8b3881ba149c71fdbb9a7";
+      sha512 = "5adc26e616a8116fcd5b9579acccbb402fc5c88ac334cbbaca2da48e246c7e44868b6454c75bea355f5cbf6a182346efeb50f7a49b2c3f92c8fa988d50e19e52";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/sk/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/sk/firefox-75.0.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "f56f3c77fcb6c12539f1b264f565f371a7c4e5635fb644ec706b19bfb6cb10d546e217e06f04af0b5f96754c65f70f2c7008219e4428e7e17e76296f04f903f4";
+      sha512 = "d173c26b5ba44a98070fff9996efc5a35a3ad90de128c5345a996c83d4a68ca7d09e588bd75530c31abedd9f20f38561e22484a45e20fdf66f1cce682dfbc31a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/sl/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/sl/firefox-75.0.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "e3e284a74f742939ec99ecae43240be1e4ae6ab3e600d08cc07aa3df41aa15d9685256f4b976eb83409884209b1e3bea8522d6e3855f75eb67b88a842715e5eb";
+      sha512 = "1b16278f2f6e4df7cd437a7bb6a17b950540dfed646e948585cf0bdeba45630b4d5bdfc249d4fb49bf37dcde8a415053ef4ac3384c2534592ba189264bcf4e0b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/son/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/son/firefox-75.0.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "baad547898d92d1c783463a8defccd2b87164773dccf45c8c3442da063a4e6379ccf75452e70993d7cff8654ee37bdacb281a608c5786f6baf31d2dfd5b0cce6";
+      sha512 = "7e9c5c578d9669f47f3871a4d47e211d2ec9215633163605239603c0fc51cce1d1d4b5c3c5a06a9c29c16f82c3ff2583fef1b78652c8afbf093557375e912430";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/sq/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/sq/firefox-75.0.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "c38aa06a66a551d609a343528275f58c4a4f43b99066e5bb40f7653a0f2797d516819424164ff9d31d206598cea68e74db7c5023d05edb875dab8b7070d6b800";
+      sha512 = "09dd8df3e07b2bcc59e77c55ff4f9b607c5c2cd343d784a3bfe172cc09fe0fa31ea519bdf671206a16ae73fa9550f08b77cfda0e030dac455de4be16750ce431";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/sr/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/sr/firefox-75.0.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "68d2d885f01e5bbd2e689752822e8562ea2825e806fac97e8c356ad98be05374f2feb2a329524128e67e26505b3ad8989260df3c9a9c12e55e936b19efa77d27";
+      sha512 = "5a4dc12d716185ea86a8f31018198dc4eae0f791b04a247d2f2807d88747fd52fa39904bcd440c9da2e0225e64445c20da7cd7df75198c173a39aba59326e613";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/sv-SE/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/sv-SE/firefox-75.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "a7f612ccb43b4df144f48a635d0135967a1ecc27c61e637605b08f2e2d3edb038770df691ee07d1f734aef7044cd52a46973dd907ae988bc20da4937f0d51ec8";
+      sha512 = "7082fcd2db01626e90e6850230b0a2b51c0eb394d47604a76de5d03e30997366f7331a7247e7610dbddb16f50c2a3259a842be248614fd3725f0063138e18d49";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ta/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ta/firefox-75.0.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "f172d687b513750551f2ae314a8d9676c3714fb9909a0a6ac1dda26dacdddc5cbb37c6123700bb43aaa25ed8d7dc725b92be36028d9abde9a1e27ddd1769affb";
+      sha512 = "a85ff07912d369b915d543f9d06cf383a180bd14fd9355fce6d918506d8191da6f89c32fade5a9146700a95dbaa4a181fb513df1b8f28aeb7a09641baeece0ec";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/te/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/te/firefox-75.0.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "e7989468298980f55157554d8ea79a4d2f6089179eb813e66244489dc9744ba0c509bd45dde97c489e823ab3c3d7dc3dea0603228e025b998573001d6e51e786";
+      sha512 = "5313549c22fba2a3bad6550a000e59c15595dc0bd684a14ba025fe2c4de9097a1dd47566b8f256f569b74a21d20538ae89182d5278af01c674f50e00d49c873a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/th/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/th/firefox-75.0.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "914d4815daae91dc0c0a8322252e026172ee2f8de3e08f5dc9cb455565540985928ff5650c5a597acca7538b75668d249aa123bc5539595a346046e9ea68bb8c";
+      sha512 = "3f2b038b17553c962d2d964d342bb0884dc4acb4204fddfa90f8ed3dceba1aac40d537745aa32629402a7077a97cb01efd1225009ccef5412e14fd08d2aefeee";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/tl/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/tl/firefox-75.0.tar.bz2";
       locale = "tl";
       arch = "linux-x86_64";
-      sha512 = "698c3404d574501c9acd61a38d778730ca7ce1b0003375ab2ce470530cec3a792ff5a6d9aed7788af293edc246c704f7ee96352bef792d2a43c14f56fc0ede41";
+      sha512 = "1bd4ac5a59a06a71fc5bdf976e76da9535d0adb74da0aad922ce5ff6101bc48a7e6727c3f2d37161e1ae48be2ec47c2b7f6cb614a883739a8fa843fc5a5602b4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/tr/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/tr/firefox-75.0.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "bdd0aca34a6fdcec44af39a9db78e7d786586a782203bc98b6484f971dd09f45ab5976e5729a028a29adc4c05baafbfb5058773426dae329c7b09aa6fb2130d5";
+      sha512 = "817d6e54c256d72469f5e1c6f6ffd8d95669193c3506a36d9cf06756847e074be018ad6dac9ff8e91c7720cc70811df2768124e4df85f34f2963a6a64e9f7d26";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/trs/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/trs/firefox-75.0.tar.bz2";
       locale = "trs";
       arch = "linux-x86_64";
-      sha512 = "36e2c6bc099ec381565afcdf36fc69e8a01234a5dca7500fd2e0e642fbb294c819eb869ecdd57bdb1407c2de224db5b6a4e6b82a90daceb77346f561f99cf839";
+      sha512 = "f3d691e6f04658aa09b4f864f0adabc9c8dd6a2fc135065126ef124f025a5ce6768ac9792470d60fb436f8d21229a92e1acb6abc848b3b84a2026179c15ae1cd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/uk/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/uk/firefox-75.0.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "cf7a6ae1535b09ccdd0d3354e682e5441324a914d7852fde12ddca3ab67e211860e6f2e87144185b6348d70a6243899c48d29be906f915ddc12a025a72b153bf";
+      sha512 = "679b75df8c1d2d84a7cf9950a65869484cdd20b0a1c016007280d08782c2ae2ef393bc553fa5c3c85177bbf922e62158fd57bab43b222327048753934aff5bfa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/ur/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/ur/firefox-75.0.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "976eb06f7b0de8abb1a512b3f142920ebc4d3b35ab719913d5d01201921ae3380b8c5da8dd3e18de3b96eb139deb69502684d6fd1d33e378325103204cfa4004";
+      sha512 = "e4408eb34923ec1f668b7313ade263d1cdfacf1a748b32a6aa54c3c38886c8e1ea750179b0fb6dd41dc92fb419c9307aa2f32a7acce7248e460fe136af7f175b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/uz/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/uz/firefox-75.0.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "e0e750a921ac766d46726ea1c0073604dd4a17ba29713dae7ee42679a0b305c5723f6d3776603c79719e4100717a9cdc0b0016521a20ffee762b4f8cd614630e";
+      sha512 = "30a9c63cab66e47ba4b7f8bad3b798e720d3668f44f230581c564e8887b6674d2df90b8534a1d9b28684b07f1b928585a4c4b46edf1e740e3541b60b5607758c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/vi/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/vi/firefox-75.0.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "12561e674ef47a5d1817dd535f050b027ce316c75cef5802a8e365a4568609e44ff85840d27b91e81b5c46e4595b7e52736e2a43ed495db63b74fb2e2df1b376";
+      sha512 = "dea4cc3161f0d1a79f91b8eaa426a6fd8ee045d843261e7a2191bbe7addc9fa131b2d9455925381957f90e91145711be13fdc3957ec4bd8fddb8252b6f8bba3e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/xh/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/xh/firefox-75.0.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "365fdd88ddf29ac41d5cf388ade3dfe08bcba361153d244e45cb1f451969044956ca2387bae7e5f783c8cf0862e89141a39f52af873533139f49d2539f9401ed";
+      sha512 = "d1fa435a17e23f3228a767733e54d24ba000599822fdb507d3a6dc35d92485bb87a3a398c12750080f79ea7e81dcf74dc73cc1747f923c0015f4875bdf3e75c3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/zh-CN/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/zh-CN/firefox-75.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "29451eab0d61193258338fe19382c0fe2851bc02af668c4ab7e2702b782718ff80f5773622c7580a731214ae11a199e6158985f678f98e51cf18e0afdcd035cb";
+      sha512 = "5e236fd89a0c099da13c65c00526e93d152258049f9b7c8ff0387ce0ed6b843504163ef82cc205b01e0a0f265602b2d6ca64aa04c811cc0a6e94d1a8dc952e9b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-x86_64/zh-TW/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-x86_64/zh-TW/firefox-75.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "7724fd993d38cc7169901b6f589868ef3e884ee25b9957cd05b30b06a3cd25f3fd7d7ecb500c6b286272aec6031e18b5df6e03c739d81d92b73de932d4029293";
+      sha512 = "5b6b876f3dc8c2bd22ebb183cd4ee16a9157e14d93951e840d14a11a4067f85975c72873b82e49d797f7e67c00df6898e423a70360558838e8a18d95377af4ce";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ach/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ach/firefox-75.0.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "8c1773be02e8f9c40a77ff4078ee4e5d035b891e7de70f412d22cad305b0554f87c77ddad8663ff0d0dd36f621b58c7a143364ac3cd5c8ce5e2c87ea81fba400";
+      sha512 = "33ab7bae767308f01bb5d0a5bf7ad73fee8eec71d8393246b704702b81b46240cdbf02c041753e1910bd8171e36f380c77a21afa2f71926f25dcadcb2d6c2b2b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/af/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/af/firefox-75.0.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "678c058ecbd6bcf6bb749ec2677c0486b94af43b28a950dfada30516a70e8ec45fb2c76e4acc8c30125d07e5b4fe7c4387d73ab130e57bcb8592318225685356";
+      sha512 = "83842f5ca120205597b6eaa5f03e2f1d720a91cf3323fd44723c79c9aa3bb73e2c31054665fb32300f6ce707363a32d5d34859d7407015d3b4456c831b290ecc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/an/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/an/firefox-75.0.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "7512f534594f36aebd9f9aa2524f568c35d55167fe89090313578aded6e87404fd8df3f34bb1da658349374537146cb02cc3119a87346f2eaf1c5cc38dec0cf5";
+      sha512 = "2d53551b4918ce86842645492072db26fdc50fd4eaa4edffaecf04fbd83bc597c469a5d795c62aaffba4abfd3d130752d96739fdeeb82970c35826d005af16cd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ar/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ar/firefox-75.0.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "51a65a604f8adbb07d1ec59a8013e3d0c2e0658b2691714c64971203e463f8934aaf9d2e71bc1685c255172eb474bea0823d1205d84cc3a530befe80ed257d01";
+      sha512 = "1e42d930aa9903adf8385b695bd1a3aa051d51ad494d1dffc5d2bc04ba95574472daba608c182332195d7d60069b045f2a5c5762b7505e14ed7a639086fef264";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ast/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ast/firefox-75.0.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "ed032607ca192adcbc20a03b5b5742641500ad36de0685524ce36b33e49f74f83e491b9b5c5278d8f62ac19f701a9e393470d608c4de0c855e3ff91127c472ff";
+      sha512 = "d52c316d21089535252ca626b6774b65e5994a62732203200a39605d7a5bace9c681d1f120e1425936be212a9ac871c24f739dd7d91c0f371029083e3d3afde8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/az/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/az/firefox-75.0.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "a8583b604f720549ac3ec92fc89174cf8ac56b68c230e69d718662e1a788aa2038101a2d76199b6030dfcedf27d66659b78eb4e361c2e74f5e66a49ca8ca256e";
+      sha512 = "121c1e51d5b58f9ac912d0737c23ec34471a4c8fe99287606a350e70890edf23b28c9c145d8aa0d29d567753d047d484a0156c1f004228682a347145c1bd85af";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/be/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/be/firefox-75.0.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "3f917c28730d23e7d0c03053d0d86c8ef75c173e31529dc312d6d86a87852229c4a6d2727af2c2071959772a3deef5662b5075e52f37fa63b37c6cbed9cfa2e9";
+      sha512 = "f7c3039db50db23a43575e5ecda63643214731703179a42007b2ae44ea20649dc9629bce1f9738f35a882841666b1c3a0ff4bcfc38ed0e5005bb2b6b058b44a5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/bg/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/bg/firefox-75.0.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "4f960a211d2838308000aed8f20465dee70768734d111b5208a04fdf71af00bf8d4bcfd352d5d5490345a9e21a05c13b8ca1a1102181f785f4710cc56e60d04d";
+      sha512 = "d9853f385468a9644684f3accd7572f081395071ab62b4bb8adaebc9213cb8bad8772ba613a404f9a2f0e75469a6d224264ce5d00ea97fe2f16f8d0a044b3104";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/bn/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/bn/firefox-75.0.tar.bz2";
       locale = "bn";
       arch = "linux-i686";
-      sha512 = "7d8378c33447dc528937409dc1c0eec947ef7c147cf026bc7f0a78fe4e76ec692f0a7dfa964bd93fe5093b1c2caec39b42fbcebe92ac9771d9e3598bf00c2fc6";
+      sha512 = "1bff545fa7dfc083f07c8546b5d2c18d1bab3ce4844fb1bb667d151c081c639b3fdbc2122e45230ab45bd5251364b45d937d24a7b285b69139f4dc544e525c7f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/br/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/br/firefox-75.0.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "59a4dba230c0a8e5c7754ead9088ef3407669a4d9340b2f3736fcf4a3d2049568b131ca929fd12b8167e08280b6cfc04f843f1dccbf06a1d7826bb264dac772f";
+      sha512 = "cd724a5c402333792e5d739ba274c87cef983d3c29f6371cc1788a6b285031c5150b21cab235b603b240da3551c044abbc283f8313c8dd8b0082677b65406fd8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/bs/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/bs/firefox-75.0.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "65a44a974e5aa9b9e28a01de9e954dbb36f5acdbe2537ade59d9d956074dac9382dfe7ebdc7df2269d82fcd8b9fe5c73e49eff9dd2692c7a3690b1bc8e54ecc7";
+      sha512 = "47770c4421d2ec0035b0b3c6158462042f792f4ac87887c6704be2f3d34c8409c3e0570c6827f87e72c4697f89e5f0e0c574b9e90704798e9fbeb80c20968aa8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ca-valencia/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ca-valencia/firefox-75.0.tar.bz2";
       locale = "ca-valencia";
       arch = "linux-i686";
-      sha512 = "6cd4cf9b69dc35f4f5bab782305b6b4fc5044b807a5409ed4a8b13836c551f1df233c77614b989767755ce5357d597b9cd24f0011e62ad298ee5521766931f1e";
+      sha512 = "9d23f45405e98eb5d6534d19e09237f7488cd9a6310acf85935c0f40132a91ba2f355a15a46742796d1f397d65e4f17d599aa81ccba57f2acb76da80c2d95af1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ca/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ca/firefox-75.0.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "2bf061c948f012281468a0b7cf15bb8b806cef95b2e7b667b94825030ea134d110a261bee14717732fc176cad78988aa2c6d8acdcfba851dc8ea4122a1ad36b3";
+      sha512 = "4f27d129114a4db3f597fc253447c6f27bcfb566fb197dc4dc26a984f1abbd868242b1c0d077e6d514efe1e2e083378304ff490eaba26f669ccfb5a744d3899d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/cak/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/cak/firefox-75.0.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "c5e1c05b9649521470fcfd0eb89a4a7467c7cbe9e8f15916e6d5ac4ad88dde2e4eb62527e1436a2e48dd4d6d3aba7ea28ffdf6615ed31fc7d4b8dbbc729af515";
+      sha512 = "522852f4ced9302068b6251a33735846cbec73bbbe9ab0371e8456d3665bcddfc81bc4c258ecf4f0e5bc8f6f15ed27d3e4f88ffe471e9e8af4beeae85aabc949";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/cs/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/cs/firefox-75.0.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "1f0d647db99680521bdff74038fa31e9881a71789a2cb18f552bd770bfef25760231fd27436608fc393829c14b2018de211a10bff6890c931b8a78fb3af888e1";
+      sha512 = "1192630fffc7bbc3232c8328e066f8392f967da5a2254ba726243ed7a681c321747a39397dec8b11c5ddc4d725445712ffbb238677856b2ad2ddea41c8db090f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/cy/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/cy/firefox-75.0.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "b19948cfcb0f10978e7aeb859f3741b797a473163823232b20dd6327475df1a1a3c752769903cee00d048952ecca9f73c0de59300f596f10154dd150b58cde28";
+      sha512 = "3a327e31faf8eae17c60f7787bd53249957e5177d38ac2138cade1454ec4bd870c429215f1e0a5b9cd124aa660cf4d77a091ee579d865470c5cdae0703086b02";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/da/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/da/firefox-75.0.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "7978f11614514d9aa7c18007729645af4a3a50a3d13ac500d0c23ddbd80bb50724d7b627f62c7a6c05a74c9e6182cc49243b6a0a1966b433335d22fa535eed73";
+      sha512 = "297291ed06c290fbd9ad6172afb790e8f8a619ff0330337f5e777d1e4ef17ef52ff1cb94b2966161639a28221dbc9ce2eb28bd9ad14029ebcb878f79053386f0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/de/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/de/firefox-75.0.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "819a4947a53ff27d421af3e09326c2f0451eefd9b0d95dc7427bf600780a9350c0ae84ff062816d5599eef1b44e2d4c742ef2c07ab83ed9cdc0b7382972706ee";
+      sha512 = "7dec33f42715250c9a765c7f3f4f177101c69f7150661fc844c4742434a8d063fe1bc9149adf81c2729e848584fd6f68d1cd3d697159a1d5b4ed46d8dd9ae9ed";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/dsb/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/dsb/firefox-75.0.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "2e688088ee0c3712a5de56d855b013ecae815c482584711a4a27273f6a17a692552b70b2dc9d9beb108693b2c095c2e7365e661e8fbb84404fe27736964d8b88";
+      sha512 = "b5d8c78df21e8f8f1d96ddb042dcbae44b4d622d6d39a0a3d7967e89004e5e229aee84842b6fbacc90ae3c65bbc252a9a879b552a2546ae168d7f07cc312d207";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/el/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/el/firefox-75.0.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "5b703bd93ad3e43027d2f85ad9f2916b9103d69a1380ffa529800800188d3227837ca84f835a6007197231ddc9f93bd60f00bbf8954cca6f14702eb4ce101292";
+      sha512 = "8888a897dec9005edb469d27f40ce9ba3446c4ba713401f40955483f329114271c34a832afb93b48e0e41adfc1910e4813f79fd619a085ea15443743a72eeba6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/en-CA/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/en-CA/firefox-75.0.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "c94222ea766fb7d8131686d9ec3c2d3ac59e8a91c6d1e65366776eb717804120c4221f8568a3537fce247f12e2f8085a22df6d31a405a1b654a074727b4cc1ba";
+      sha512 = "713522e5c5305d111bd1eb55bba42cf201da74641593506b191ed1ab3eace55c1ac9c9a86182d667d7eae2bb4cf6fc9ddfa1ce4c8d31dcfdb0f2fab587fa6a8f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/en-GB/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/en-GB/firefox-75.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "24e91c045d36be25346e598af8d8ac187cf37b2c790957887a7d3fa42b102dacd05c236476ed1dff20e21d51c88aac2d5123352d868580704a0dff88747bd62b";
+      sha512 = "021b66ac6720deb68e45b1bdca86d8aa7db2e74cfa7391daee108cd002dbabc3f6302f380e6c029c7b56781dfd9bd34f8cdc1135851297e4dac9dc56f762eb69";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/en-US/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/en-US/firefox-75.0.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "19e3bde2ad51783ca5aa492ffe9a097e91db66a5d18c28c6ea36f6cfca7e14e41172cfca9f9c223bf42632c2235fb5a942ffac470e2c210d1b7992c75c48beed";
+      sha512 = "feef8046d08aba827f6dd2510cadea53a89983a4889c9c2baad3d88123639b90c8052b552e2bcfb03b6e9fb43ebda29815825ef7fd4d9ca867f238cfaa0ad1da";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/eo/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/eo/firefox-75.0.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "160912a75ca11a38c360924f206ed7baf53e0e0be4d42440c10e3e7e3a9ced4f4884db329917954af23ec5bb01b70ea7f567310c85242073d3d13c4ba19629c9";
+      sha512 = "49b0adb7c5dc8e1b7ecc121f65e8a6853f497a9cc151b4eb9ff6631af33b12f7b00186ac2d13390cfcadd9fbd1b361a597ec1d9da62b1a0466d85d8e313be4fa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/es-AR/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/es-AR/firefox-75.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "cfa240589014caf944d54971f7ed8f5b2f8656b03bffe7bc28628e07198f308406277b4ae8584a9b79d2e218f952f22c345982a264a47a7e2f129c297da134da";
+      sha512 = "a74988338fec99d50f5a16ab6c59630ec1e535338da3f23f05c7967bdeff41cb058c238ab2e873f96cab93db821ab066e6222397761578a12fa73b42c0ffe3e9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/es-CL/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/es-CL/firefox-75.0.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "228cda9199e333c030b43ed1fcc46d0f1d782f904e796f546092927597e661505477634219ea518972764049fce3a9db2e1e31ea766caea612a765d9532b5f50";
+      sha512 = "b4abd3f7abf1869bf360f5987e13c37b142b4c8afde51c790feb2563351a4754f385e0880ed51a1cd7aa3a5ed907e3cc22ff3c707d2923c47459c977cfedeb08";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/es-ES/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/es-ES/firefox-75.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "569c63b7b4599afb94fc725242661ae33d01de58012dd6bf46c020b55fcf5fc1dea1a95371f36e68aad6ae89f7e674e99e96139553fff3839a60a6ec36c418cf";
+      sha512 = "8a9c61dd9329c983c394c33c97c962c703fcf51a283dce09bb781d96879450adae5d8d78ca9d0d1892380fcac7ab95651e37133a0f836865a13946e2cb8a7e39";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/es-MX/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/es-MX/firefox-75.0.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "debb715bf2034640e573208b048c4f519a51a3b34c4500d27452f25f0f2d939f6812bf1f68856699a776ec8092696954e409381178b3328d417e97747f8ab720";
+      sha512 = "a1b7dc0eab0d4a8c713e27620235617a244ecadd62a125de8b1b60de7811a4d7e65051569ad4391b2a312107cb750c74d4c541c580f3af86b88b2fb84d93ce67";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/et/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/et/firefox-75.0.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "2ce02c48e6fc9407a09f89926e8452c385e8df739eb014f45d0d286d11d5c3f9c84220c99379ee7ce20f658617c3b28b8e59724c0a62a5fc961dcc47a1172cd8";
+      sha512 = "181aaa954ff9024a4efc211bba348461c28b892b1cc04eb50989cc8da78d88a350341de520b4a60da096ae399c28ad05802aeb73cf133171e8a4ea2693cce5f9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/eu/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/eu/firefox-75.0.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "25356e53f1334cbcba60d44739fcd69a03945d923a36dda4accbb2a471927df1977ed956f993d510d60df8fcace4dfb2fe773b49f3ebde6d227e1f474ec8483b";
+      sha512 = "893fa9700ca874b2a460d830f2e10f7999a6b521a351a88bf480232ca0270581f4ab334ac2d4721e3f5fbaec0105497afd5ef09b13f3b96a1e84556db79d0ef9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/fa/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/fa/firefox-75.0.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "d680434838694f6666c8decfee363e2aa5de22ecfdf690895bc7c027bdc2466c67518e69444d48413f1538e7c3751cda716df8fb2cb83ad68beff6b0975d3dc1";
+      sha512 = "fbe8cefe9e626d07f360b1ab30fd04c8628669f5164d5dbfd12cca72e17e6454de367e170565e0d7f1c30e300d315f54d7c6cc06c8367e6d0c428a994e9ba067";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ff/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ff/firefox-75.0.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "3b6f7bb0dd61c2872b8ae2e9dff50d9c6e21f2755d8dac5eeb44708af3441ecfe43ba5eeba31a2de09fdd246afdaaae8ab8ce10f2f83495588cef561446956cd";
+      sha512 = "7ea337b8f3cf536749cca253e063ab326e66a0a33ee0bb7863ba7c46d7d9ceef443bfec0551770346701f23f5adc2750225e8961d6fbbb48492afe7ec39a1272";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/fi/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/fi/firefox-75.0.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "0462288f84a7d4cc97758919cd8d6a2d275757ac91980752f538d0cc785813acf79f4e6908fda1eddbc34db2b574d5c381c03b8cef90c796f837706071a98044";
+      sha512 = "c97d9ceb5a98acf54bf37c1397973c2872a039812bc591979b44497e7f2db1cf7bb5fab75b4a0cb70df2d48eee4cf5fc55def69c22da9a0b5964e2af81bd0457";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/fr/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/fr/firefox-75.0.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "9a40af49d33a5c391a084d181d74bf418e5fb24ccc4aac96959f719624913b7b7d11b6977e4673046c89dcb5935a1b496b82b8a0b9729595689b158a7a96adc8";
+      sha512 = "15081d21ed77c376257e23cec42ba26023792cceb634b0d0b928471e1abeba17d9245ba5454452b17e786e576e19e8e47f20478002a3df2e15c56e8cb19faaf0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/fy-NL/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/fy-NL/firefox-75.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "97bc9a69879981a6f6ff32f534b31b986523a7d956644ad15de94913aa648af6b163a4a6125e6cb6869eb48d1d903773c3cd4f07a625da191b9fe34aa4b6dfa7";
+      sha512 = "c352989e6ed3eeda8ce724ff110bb09c2ad3ce4a5b1f45bd9335c1186dcc1c310efdd24c9a2adf7a0f31278b3989d79a683f7f770670c8b1419967ccc2e0704a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ga-IE/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ga-IE/firefox-75.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "72d3dbc9799be8c37880cae2603423e128040b99409148a8c316ef9400b259963078bcf9a86dbe3d69bd017276312ed9631512972dd718c6ffb0fa2f3d351a90";
+      sha512 = "ba27396ca8f76533033bc78066074c3aebcd687f1621b14db92a4952b226bebec0bd399f697dac92b71e14e91fefedfa6d4188dc067bbd575e07317182408510";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/gd/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/gd/firefox-75.0.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "637f08600c79790df3f683c7aadd1a7597e09f387d6f1e929ab7eb6301cf462df85e2a68a1ef5480cde0afc716c63dccee08f173c96358d461f3b5798ca2d75b";
+      sha512 = "f18b4acc47fcb9135ac28206011b6fb3fef5dd6640fab3e88d8e8f9dc23b19d427fcd461f70a00750c1739b3e3f6874c171dacd9c54b213eb9076dbb9a511b5b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/gl/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/gl/firefox-75.0.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "964541eb0d5ae8a7cef59b17d2e4002bf34b2137beb72593c2fee6e578e4e02f06bc443effa7d958631d46d097f482119aedcab4862f3881a8c68527bb88a998";
+      sha512 = "e4bec63583908fd225b903e45007e29f357e00fe7901524d5fa15bfea04211f55d2557c1ccc1fba28eff1f2dfc5b364cb7c52d438428c26f09aed3592f817c50";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/gn/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/gn/firefox-75.0.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "8c808172327308ea1eb4eca12642ee2628a01e1461ab33d56e326c4e5f675f3294a563f83bb42bb3b4eaa15311f89ae59c6de65c0fc565464611b89ca03d9a6b";
+      sha512 = "dca1a1062e47b8644a7e1a772f6abec1ff615d8857d74d576baf9a515fbef814f6d2e89878a3ea2aa4a7efb6931caecb3845f6eefec91c70299c463c2141689c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/gu-IN/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/gu-IN/firefox-75.0.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "9338b5d59f01b32d608a7e3202992e6e44e9f62f947bb8ab6aa64e539f8105dfd0e6436705276efde769a196e7de7a63190a98fd2d6664e2aa74365e0997fb7c";
+      sha512 = "efa6f443a092585defac47cb75d8ce85faec76c2624ecbf4cec3b4e8ffe4e582de0fb55f4901bcebedb0d991d709338bba212117fe59b3c6496fc5f35c1a7694";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/he/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/he/firefox-75.0.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "fbac46c204f656f07f1ed43fdab6cfe2b3db33a0c46030e23eb716eda26064329fbbf97ce0a07c031ee06d90c1b76c432dc4ab1b55b9b53b26fbcd8e640819e1";
+      sha512 = "ea76707fa795234f36088749cdc5a139482577d4488d476856cba926e40ce24d020f76a526efeebfd8a5840b9ebb2a93d71ce9be9fa8cd9255e6940074f22a8b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/hi-IN/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/hi-IN/firefox-75.0.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "3b5bb0426fde394e9102d13af677974bf522a6635921071bf5dc453d76431a10279a8622c8aa6642385c0803e30275058575e1dd0e986726e4f9e4f2ef742ce0";
+      sha512 = "73bde105b324df05adbc581e59c1b723b1dc0ecd2b35b9029ececdb83acbd5cb9946382f78c9bd02a480635c58c9578ec982d61793ae7e64e5cf940c09c5a508";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/hr/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/hr/firefox-75.0.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "cdc430d37f861e65248d95f29aa384ba4910e9e2fbaff9f3bf236cc9b93ee16c71c1128fea51c84772859002e00d3015ac2028a3103d13cde9ef2335f650095e";
+      sha512 = "e237486d9cc6418d213a006e07c23ecaa3732496d169f7a24a568866e1ec1276aa9096c16aa696baffe689096b8321c83e9d47a119257effd77c3b1b938323bd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/hsb/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/hsb/firefox-75.0.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "07d4c85e8838022d4626ceac115b9d41a88db711107dced35a80967a359f72395b657219e92a7cf5e4f5a4e6c521a36101d4a219c58e56b63dfe0b25bc942155";
+      sha512 = "be2a1bd69573ae49b011f266402a5f185a4eb8eb3e9b506a606b1444ef54091b36023e6d2dea2d118fa4ca5cc58dcd1afdf2e5dcbc3d38a7ceb776e6e06756b3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/hu/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/hu/firefox-75.0.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "cd2b6d36f7b6f12d77e43333f1741828804e0434e1394142a554ac7fe3e42d46dd66617c58921114a7472092b7714618247ec30d46abba5fc40b7306ce5f88ed";
+      sha512 = "405ce0eb8c7694ed2d9bb5548f8e56d63c14e59025cda561bd49f0deda1bf0b280c344138d154510ac8ed124e4ec95528f84212fe1634bf16477615971148f17";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/hy-AM/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/hy-AM/firefox-75.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "ae4b468bfa3f03ebf5f7793acfb6f3785238bd4a6e78c0e7542c49627b5436d55d8e0108c7db0bb755009962020010e767e49105a8374087d1ca5d50eb7b7340";
+      sha512 = "21d7c5343f62cb8a841872470013d9b836eecb0f780794108f56120c4bf26ddfe923400e630f6d981913d06875e7473dedaa3d4cbc2f9173db80ef34c3a6e0f4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ia/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ia/firefox-75.0.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "87fdedb6b07be5709ff0c5de383eaa12707bbd64487559a5a75d475abe72a9b7877645fb61911d0a95b27616318cac2208a6344b90d4c1bfdaef6d11208fc62c";
+      sha512 = "a8c070f164ebda582055628b324e03971602f15741314ce26024eec0539a92341020b7fee16cfd849189c5c106a0b3dc1fcb04d3177d7a4b06bd0cd2db74b614";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/id/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/id/firefox-75.0.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "b42fae3bdeaef76715c1698ed39f710e3932b39d7db67fa00c94e085c5ec23afea7bddfce99d444991126c67f3a9d81976362a3f32f99d7f24c81a0a70487bde";
+      sha512 = "4bc7b360f3fb9a8115541da54f867c693e7c8c98bf24685ae9ac1c052c4cf54126ccfaa3aa2c714a0450ffee0b6198370b1092ac99ba13c289bc46a202ac1189";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/is/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/is/firefox-75.0.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "0e9888e900536eee6199d7847f4b92cf6314c63b35877b08bc0f51f2f4877e1f965bf760a59a080a517a9ca1b8da814abe465a893b0816d3e5e00f1b02da67c0";
+      sha512 = "c9a1c9b03d3e7089a12f2ccceaa525b5c9ce62dc1e602a3899914e8adae571bfe12dfe7b2b5e54a4b2de01c869c33fa1f7478d1bc6d54e4dcb284ce1da7b32bc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/it/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/it/firefox-75.0.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "396e0b54e912317e3861c5eb25d32f7cbf3ea558bb115c7c6f0a7732a18b246c9a97dc8ca3172a1b21ed3238f5358a9a70c0976d83ffc7640f4d522adbe4317c";
+      sha512 = "0adc5cb03da1e36650c90de0cd82065a014bd944da4ba29f80f2fe74eee91fbff13378011c938bd79c110bacd0e04fcb5ad6ee7995fd76bd5ee98cacf32c2c98";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ja/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ja/firefox-75.0.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "0c8620750bcdc116ca0c9d26d8cda350afd1de3f8cab93f98df685c12a3f1551d537cde094f74675c8156a48e6c88d77ec077ae20f3bb0bc7b72d3ed023cc622";
+      sha512 = "fe743972968881f327812dd0a81ffb8564e0fa7a6f739a3a59dd039f560078827ddd36ba057b80792347b1cb19e262f34c276f6ce788453089ca0d8cf8d69a55";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ka/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ka/firefox-75.0.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "2e91dc34ee5656cf39aeafab2c7648b9465fc56a3afed40ae5a9e391bf8c0a897551bf402409db0d265ea196bfb0abbf100290fbbb108c79979266f1e2b0dece";
+      sha512 = "0715da694820f26550e0becaa151c19d366954fcfc2af7084b880cd12b2f031b6508e69b3ff687941f71c0b3467f5d118ec3f79be2cea6cdff22d2b5e4f050ff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/kab/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/kab/firefox-75.0.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "fe91f60852d0c6922884b1954f753cc04db696d28ecfe91505fc3cb23d2fd0c23dc010c37e0326fc3b782672400cb65f887ff799b6f6b039783d5f80c7373367";
+      sha512 = "2de6d3cea7077ddc896cdb95104a122b85f001013c0f59902b049423fdb370d5090a8630501009803592935fd5f90ade7625ef64b3b0bfecc712141b10f2366f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/kk/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/kk/firefox-75.0.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "581a46df5cb334c8cfd0925c78752887e636388d4e76ff41687ab2193f1a26c87be848a02753e427f297fa5169e7e203767b66ad96fd0825276aaad527f1fb88";
+      sha512 = "a0a1a9e7c2fda1bc92bce084472d432d4007fdc96707d7a926e884521c4ba8993374ef55179b7da7267d14699f079f5722974edf2713d449a59b76f01fb897cf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/km/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/km/firefox-75.0.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "8e53ba868d2d0a9dad832e68710c6958d55ccc70d75f16a138983bf5d1ec24ffda1e320d40fda0ea62bcad5e01419c81db52fd0b1eb3ef11cd90c4aa92b11be7";
+      sha512 = "4008860591482c70b0194e565f3f1fbb30b1607b486c8a3afc3e3d9465e24c3cc0da2c889905a7cad349484a386d7a2082e86e29f41fba84073cabcd75c5e358";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/kn/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/kn/firefox-75.0.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "ea0e3dcad9bee6b37b2de3178eec5c980b1f85ca38f47c4049f8f1d614dce581b8ed7ea7f8751443e737db62e09bc9888358f9d68690cd8c8d9ab16a4e62e727";
+      sha512 = "2628e52d65223c5a1941d94435398041cdbc7d5588a2227a9f17227800576a56975d5db2283d295e82e63e10c4ce6d3bc7999329fa26dd3c8d44dea025f96640";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ko/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ko/firefox-75.0.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "a486e93785532f05f4004253f369d384d2949b86eff8fc88dc49cbb76def0214a35f4675d86728c2e3ab6d1786b90546d223d7fcb8f70092f35e7d117a20f76b";
+      sha512 = "9b78d17bec3f243154cca1ae1d955282e8700dac9bd93890be6fe92852af67a1f81eaa5dc2465e2881398508af90f67fcb2c90d54edb1fe874f9717bd25dbe2b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/lij/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/lij/firefox-75.0.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "ae06bc4a21640d47034596522415c275faa16fd12866582aeab9b0b8cf8dac4b854bb22067f36419fc1c45810c499ac60f9319127199cd30f8dca1c1daa8e035";
+      sha512 = "01e4dbb561a962b4332cde78df74a229d6aae4cfe56bd471262fedd9fc16a948415e6f993724ed53eb878a999020b22f761f4ee3e6f006ae8447513201ed27d1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/lt/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/lt/firefox-75.0.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "d79206839e72915a5ad36674d624974aa4c2e09fc9b24eb82b54648f5e86cc97ca9c65c1e5fc97aa80b0afeae4cbd06a36fbc5cc6f0b8e915a820fde6d330d1b";
+      sha512 = "c17fff73a4f72378dc3173ea0ecde0492937a6fcee4108935126256f0ab085eb934be830907f1f4464205673023ed3cb21794cd540533f4e8defb42325b3bc93";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/lv/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/lv/firefox-75.0.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "c7c1a9d6cab35e29492440a94c31514fd21ce9f6d6828e1f83addbc60b67ad83553913b102312ce3b4d9014f222f16d25cf510cf6a816c9212324fc4fe7baacf";
+      sha512 = "22c90601b8162512ac045ffcc3d186dcf4e0d9d2330885e07f7df72224a840073415de0100419b981c08b73ba4c92da01edb49d1dcc9efb1abc0ce47b94da012";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/mk/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/mk/firefox-75.0.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "59dbf4c86c78ec02db97900b0db1ecf6d2f94c34bb8c5c7bcd60f2a3e8748655873d5994a9e4bf7a8762cd9646a14e180d1e330cdb2464bc146a1d365a7f789d";
+      sha512 = "a185e91441e302b9111d558c3ea0d7601347e843393e00adda74a903ad0f93a23ded2c8e61c5eb628996c0ef5b0fd63209fa9fd98f3a0040a9a8d419214e5df6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/mr/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/mr/firefox-75.0.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "d11f86f1b515d047cbb68fedf17b535776ffd42c20f7cb60c7c3dd39afaab6f07744ca0a4da0b9a40379bd24a9ff1699f901b8221e587f440faa2243088506b5";
+      sha512 = "e8d5066dcaa0c7168f804d1f1047435bb188c6daaf3f8aa472654b617c7d4471f7469ac2560782b6463c315ccd9ad60efacc8582110bec9279cdd16dc7da7d09";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ms/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ms/firefox-75.0.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "a8d2447ca79e9d66344a4f1ffee66ad7de50ed5c0e01c9f32303011324229d0fe414f39e8844b5e4a06732509e17a17dca9cc729c87e51cf8b2ecb925c194815";
+      sha512 = "dcdb08020fca5a43581b1900316cf7acba285a87b9cc0532ecaca8f85d1ac3b188eeb9d65ba68557d4350b7f2e0fee478dd5a9ababfd3c40ef1f7b4c57f08a39";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/my/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/my/firefox-75.0.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "9062c54b41a7bf1b7465cc649f90790a912576457ac1203aa6bbd14d927bdddaa41f31a9e7ddd7934c24d2db8357f8366d1b45a50a8f35462eb2b05028d673e4";
+      sha512 = "d7005ab40feaa6053af8624130ba4e5d60e54978452b6e63a658afc8321c9f4a7eed5406f07a16961f6051e794943c6ac6582e1723cb8a518332557a94dedcc4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/nb-NO/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/nb-NO/firefox-75.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "fba107427926346ecac412016c7a6e58fd1e6652d13b6df632ccbbe3568ec34e8927771036394cd52a232b5aae975394061f6ace87958b84e6d8ca685930bc58";
+      sha512 = "b6e0894cae9d257ce4d0becdcb65f9fe3693a947cfadfc88eb51ee93a4ade9924895a7f252317d145304d5bdc866294c437a5f03c15982fef8a970145678aa0e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ne-NP/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ne-NP/firefox-75.0.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "9b1b57700f22ee7827fdc7b391d05117b4286e0a27e90a45d25ec4afc7d9738a7d400f2720fcfdcaac311b6d6e4605c5a2e77ea2ae337cbd1acf5071b217c1f7";
+      sha512 = "fc7a97902679402185813d666ea65cfa059e4121c126a4b82f2fc70ac04790b7e73441c4a3e7c49ea6292e049792368f7abb9924c74b52ca342d832231e80c51";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/nl/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/nl/firefox-75.0.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "f208d274f971c53db962b731226039e6cf0f33ef59ecb64614000be634daf40bbf89730c13affd5445986cef9c1f9a1d1c32f94c1cfd7133dd254f3e8a1cbac4";
+      sha512 = "c96cfd08d2b3bcfc3380cfa4e7945c92ad6c1a1ca1f47db6977769792752a4f64ee99f90f6f904811ff3f1b7b2d07ba570ad1b80337d22e34c6bbb6ed0e511cd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/nn-NO/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/nn-NO/firefox-75.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "126eed4ad3a922c0b2e4f2f575be874a739d37d97fc19f83fcec01b8a029fc79c0132790e69c61622ef811f8f7bd16ebb1f742a8991f6e0aad0dd7a52af3ab34";
+      sha512 = "7e10f521aa2ea9900d03a2874861f079171a62860f3508edd7dc51c39db88cef7a603ba0c6ca69469c2593182b027d354b6a8c13209beabd51a8690717d11eb4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/oc/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/oc/firefox-75.0.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "f0bba67e75513aaea00371bd3b6eadfcc765b5bceb8712f82dc1a0432bf9360e979190ca569fb9c677faa23200a62766775536910d29689a51bb496c2d82cf38";
+      sha512 = "43413c027b618cd5ddd36fa42fa26f99a294ce2f6f33937a299b55d698b64b6e85d04954101ef27e7a739c00407d7457322e3b32d38a90df87529372c19e1b67";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/pa-IN/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/pa-IN/firefox-75.0.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "2e60b06a677e21149ed55e9b1f2cc3a4555fcaf78df90dd81f7a6fe56140ba1cdb6eaf29141c123b46e21c27bc116e1e8b97feedd86391fdc564ba20df078059";
+      sha512 = "fb59faad43d729eeff12e1eeab15c0712f2429892574c526c1f59326518c9c652475177c9aba14aa591e4c449b133a6a8fcbef7bbc8d0c89b2b4d5dffd053abe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/pl/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/pl/firefox-75.0.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "a834560790d35559db67db2e6f826fbd8788eeef8ae47cfb48e0f3a8b7416b389e6c37150a8dda1d80e133d8a9219ff30e3d9a4422ce8d2de83ef6ef7f638049";
+      sha512 = "406097bb810d60a16a88b675f6a893af84e0de905c222534b0e09802ae5b57912d000188920b06c4ffba198af0d096e42f9984222a94f53d45db64f41a4f3f9b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/pt-BR/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/pt-BR/firefox-75.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "ea8a2de3fc7f89ca15e118c9d4a2b75604fcb295c3ec1cb2b9b1961fe6a0abfc1bc9813f5fc7cc71e1ca10516d390cc7d36de03b57ef72e7fe7a45095fac8678";
+      sha512 = "519f9777303a5dc6eca8933406ff0ffbf7654c75305c16e13f1600550d924569ded9dc6ba606050c9bacc31ecbc0d6e43dd91dbe8cb3b587ab71d20467564cd5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/pt-PT/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/pt-PT/firefox-75.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "b6eb4096e7cdc2823667a99c654004c95b526a495d0dd1f24ea45643c8135cc01403417e7cd4d2aeb5fd935d153d44bbae53c6a581d9601c245a320f8114fd9e";
+      sha512 = "92500d0b49090382e261baa0fdd4620e5d9e4a047c9c7098ad3f7ce34a5e97bde419a87019517125239144d21589b428c11138aec691328530fd41d5a78cc5db";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/rm/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/rm/firefox-75.0.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "8de865c608b288feab89de6677974cbbb2897678514945907f421159049b2b63a332c9302a01e5ec4b355486085838930ef4b44ced7fdf78e5cd0a1f65186cf1";
+      sha512 = "6b8f3655d962612a047bb7d961ba74b362da0bcf740362e8f31a2263b0898da90e051951cf5894bd8a493f40d2d89fd50d6060eecc78908518f8611218a27eb3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ro/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ro/firefox-75.0.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "848f4b90fdce6455a563bb38b097d9b4853aaee8e43ec0d9101f41a4046719527a714c0b5d2ad07461ac5dfb34e0cd10060b5169276004c6f7cee839e2b3d669";
+      sha512 = "4f2e2012136c9821792241f2189550843320b52c44905d9902c7ef3f2be21f26dd79f930b719f752d3d4b5e7ab6ca8429d12ba6120f6bc365bf9e2f496ea85e2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ru/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ru/firefox-75.0.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "9b624a07fccf6f2aa1707e8d4e04894e6a2d3f467dbde806bcd11eaa7ff3cf8cced1ee1ac237037c309472588db247d175151393001ab03ee9e281fcef91890f";
+      sha512 = "7ce2ab97b3483b9632d24a979bbe051d8db539329359f91dc9df4446db0b4c1201dcbc6422e1406400dd3df007e5c3af6bcc8279966cf7448671608cc05a4231";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/si/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/si/firefox-75.0.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "c6f2d9666b32e635d35ba7c94dbc2c68c497a44b1cf464038ceacc0278a7348f11150c8e879ea5814f43ab9e9fc5ab14b0bfb553e52cf6e26c826cd3da154572";
+      sha512 = "65edb310b0c94dbaa2f5ece2eb6593a4fa7d89b2fc9e4d3bd8c77bd43dd4517d09895a7a325b9d6a1b5fda965e9d6e3c10f7e4b889b582ad4aacc2061db6a443";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/sk/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/sk/firefox-75.0.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "c89e44eebcbd0945b1c462f748a71286167739d75d9b0e65529be07793bfb20dfe01eaed8280b94047d2523e0a0592145eb7af524f4de630388ea3c2c1638aa5";
+      sha512 = "4e29357906cafb6df7dfddb4c668479d8e52722a4771e043a1d9e0c254e434251768a716f7791c6969e34c5004f276d1b3ae8b8c77176bb1ba76409295126671";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/sl/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/sl/firefox-75.0.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "e93922b8a6e946e39febb8d690d251d01d69cd82f4f07546209f21cb89532c342e6f4e37319821fd6786bc5bf5f7927a28463e5f2d1bc8fe87bba1817af5af00";
+      sha512 = "c84cdabcb498c6a387a08b7ead1cdadfb68c173a955e34f4118a4d56417918649b7ffab2eeb88ddfa276656367f8429e17ddad4b909b1f39e120e41d1caca56c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/son/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/son/firefox-75.0.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "f7d2757cad117522d9964885d002d717772012b9952d1e03a53bce775967e927c7cba1358fcf6165f8732f761aeb148b393d32f7cd0e540d449605cadbc8a0f9";
+      sha512 = "3fdf243217a00baef75aa36b9bcc257e1741fadc8070f5e50a4573c3c4b6b86eeb4405fab327b057e5d92543a0643429fc1159d3b77fe30ad918d8757d8970b1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/sq/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/sq/firefox-75.0.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "b19f1832a460298e36509bd3e8a8dbcaf300373954ccbec9c4f402fe4e60bb9b24a79e52e62c63c0ac9cf5abbb32187215cf7690781dd88b3649eab1f4b60cf9";
+      sha512 = "f8c32ef45297c86935bc8b99a9d6b8e4804320f76e085e70f988def0ec003f221666e8f7e34e1866c52c38dc45a3b6a39397ac1e81a7033a74652a1d42d32355";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/sr/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/sr/firefox-75.0.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "15a93a42b3d19d3d2da4e06ea0b071c05cbf82dd820d43f52e263900f233894112cd40132de93a85e544d7961ee7be11766be0e4c827b805025b0353bc4cdb7e";
+      sha512 = "10dfc0655723a00be5b5e32a280ffc660cf464df0be0686601b2bb502730ea5ee6f7c23c3f40616e9df3c5eb17638b841cc70e8b2271b442cc8b95927191dd62";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/sv-SE/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/sv-SE/firefox-75.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "c1c7cb83323e39d13bd04a65ab3bbacd9cca1ef90bf1870afd49ab72f0819bbcda8ef5c50db08537babd35e3ef117441915d87ee4b4dfd4548b023faf834adaa";
+      sha512 = "57e77414cd484560716ef659271e28c14a8f02f7189bc858b4293a72ac07cb0acc77a6e719c25b7a9b76cd4da6b3b56df8a75236b6ddef0ace9f87113f4f8d72";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ta/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ta/firefox-75.0.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "56ce445bdf12c7ab1bc31fd2f06f5ed3f63c0935e91d23e0e153a81362b1b44b1c874a3f36c2f3b7adf7821f1d08aa80aa55bc01594144fbd92da62e13ba8cc6";
+      sha512 = "396fe91815427866908619b33df4fcc503e0b30f03c567a9d4baa51bfae19d91de816cfbca4bd94a48447c7abdfb56d52a294ad0b8fff8134d935db9d6a81221";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/te/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/te/firefox-75.0.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "2381931f7fab5578e870d589975eae78c4b45f14d75497d1524b9500ce8305ded0aca89409371cdab866be0b32e714ebd1efeedf83d176c12b4518d07b096c6b";
+      sha512 = "87237a320372b1c34c583335335b5b8e85eaf0dd774883b0b0c74e883854c1cd14d459cc8b84db2dade7dc92b36d176c8f30bd17658f6e5660660b0f167fc715";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/th/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/th/firefox-75.0.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "0cc8606b5b15bd3cfc8e37f13c73eabf454c9997102c5bd4fb325b99f029c75bdbb6d48352c4dce40c3790c9446e6c2236885f2aa33ec171ff81a51b7277b780";
+      sha512 = "ca5ca4be8242e1fe9a9714b117965b67ebe86b578381ea4339f378dfe74e08f268b63346b5d3bcf30cf1c108a933609d8cbb393caa7f7646557d265c2b40decb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/tl/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/tl/firefox-75.0.tar.bz2";
       locale = "tl";
       arch = "linux-i686";
-      sha512 = "5f7bcd704a3c960b2d89788e841dcac15eae1fa575205ce67bf75726a5477a0356c968e77146297ed96206e5f05083477155fc3db2c9ddef53bae373104d12cf";
+      sha512 = "99322a06d7122438715b92f176b07203246c1e15a0a42dae4349f424232778f3d2b9bcd17a7b239b8eb6273a6ada8e259480601258275f16c567d9cee51fd16f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/tr/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/tr/firefox-75.0.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "8fdf1faad4615db6c2aa577391c7a9aa2600e486234d9d20ec0cc340552f98e199565ee391ec48d2c660fb347cbf3ff733c16d58350c4ed1a47076108d731a0e";
+      sha512 = "95a86989879b65c85032e9b8ffa9290d9a6fa1be409786b9782b284e4c0fb894719fc464ef7e6b96554e2cb852a3276a8e042bbff02a17bdb44aaf9ddc170361";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/trs/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/trs/firefox-75.0.tar.bz2";
       locale = "trs";
       arch = "linux-i686";
-      sha512 = "1a08a191f34c3fe120d0d7915f872750f903e6692819c0ee1bf1341539346f8f816e89e79970a81e610fb78b0b1fd0327655e7a5db10c717c60a3ab425cc1b01";
+      sha512 = "aae0652f74e82b0cdd752cb8f0747fd4f36f04fcdc50c3cd9d084c6418694cd3015e8de87d851605f5cac0b0159ddd8f9521755d81adbee0e561926b2ea1d393";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/uk/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/uk/firefox-75.0.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "0e93003cc99f7251e6596b960a89eb4348e260fdebb348ed9356e850e5d5a589d1affe131bc94a3d370ba340062d3d8b59f18eaa0d446f677f767f3a4e26884d";
+      sha512 = "df038e62ba6284245212f23c5458b2df14547ed532ba66adfed2297041ae7acf693a6e01a6af9c16f4a2e141806d9baf3c4fce91bf3316e635da7211ba9b057f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/ur/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/ur/firefox-75.0.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "ab5c15ed6f63d6c7b38e592f28e57cc895e191aa60e2eec819129c684a73480315925965ca0c4b69612c873637e56262b2c3372a59d451c11d73bcc888c92194";
+      sha512 = "1bcc2f2e8f5e389c29fd0e7f4a5a376d91268e326758b396c9d829e59d1315a52df0449fe49e81170713f1161946c2ed224560dc96329f30a5d13c8413f26823";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/uz/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/uz/firefox-75.0.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "58a83c8ee2582112eb4bb04e875ebad5c3f31fb7f6be790cecaa4f599b2e2f2c3935df019578d5c79dc2df2e3f177796830dcd7b8d96e1435f0cc8cc338d4cf7";
+      sha512 = "d957e4942ead1634d792555f57c6dbe54972fd9a97071e63901b422ed6b723426b27fe85afc8c33d75087a502112a4b4b2e0dc3f3a04a9d44a48ec867dc78cb2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/vi/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/vi/firefox-75.0.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "70c26fa5f2922979919f30454ef5714f69b61089af76158e2f4c59204e9ca800e7af620d60cf8ac6208b791677e00d5337ded25b4bbd7a64dd46d353bb728d84";
+      sha512 = "e3209382cf01d827f3e68230c46c6eda837798f92812c93ac19e81a77a0d72f3a5b53681320b71d886d8d4339fb2eb51d056bb4bc41466116aa51ffd50ff05d1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/xh/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/xh/firefox-75.0.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "1dab6166eeb18ec291b7c96662c74583adeeed7fec56414cdf827b1d0d2976374d84437df6ebd131628fee9607b91307e074cfa0d3c4ea65423d37dde0951fa7";
+      sha512 = "8719acd4bca1136668c6a90b3f7caaf29bd773acaab2776f2b7daca3c9028c33e73dc2c15c82d44064e92b61def23ca889a2ad09043c5bc5ad91db3214af1919";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/zh-CN/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/zh-CN/firefox-75.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "2f4c9461b178b646da63da07893fb3dc598ac2aa65e384ac4e0406eb748625bebb06b6e7d348b4324eddc794d0818e87958398d65a8d3354faec26854dfa7d07";
+      sha512 = "681e276d7ff6a6f91be59994e53f9f6f082e16f9d22ec7e1d1b65813e91c6c2661f28989b0331100b6f0d4cdbbb0589204b0ed80bf5f0bc0d18016e905a71148";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/74.0/linux-i686/zh-TW/firefox-74.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/75.0/linux-i686/zh-TW/firefox-75.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "f1e0e92ba60358f3b5e1edc1f3fd2a58482a4723785ed9e8d914519b6550617f5d19468ce9b8a5a5f81a212ae0e387d3f39335755838e074cbbf765f2440027a";
+      sha512 = "71ee272a7d02758187a9ef2d0a722760d04d9bf0fe11c90e841e15dc9019f44ba22483b6698e3f8eba9620e34d2678db2dbc2974c1ab5c7f0f79934aa4142432";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix
index 82f1c267e77..4dc2df91f8a 100644
--- a/pkgs/applications/networking/browsers/firefox/common.nix
+++ b/pkgs/applications/networking/browsers/firefox/common.nix
@@ -6,7 +6,8 @@
 , libjpeg, zlib, dbus, dbus-glib, bzip2, xorg
 , freetype, fontconfig, file, nspr, nss, libnotify
 , yasm, libGLU, libGL, sqlite, unzip, makeWrapper
-, hunspell, libXdamage, libevent, libstartup_notification, libvpx
+, hunspell, libXdamage, libevent, libstartup_notification
+, libvpx, libvpx_1_8
 , icu, libpng, jemalloc, glib
 , autoconf213, which, gnused, cargo, rustc, llvmPackages
 , rust-cbindgen, nodejs, nasm, fetchpatch
@@ -108,8 +109,8 @@ stdenv.mkDerivation ({
     xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file
     libnotify xorg.pixman yasm libGLU libGL
     xorg.libXScrnSaver xorg.xorgproto
-    xorg.libXext sqlite unzip makeWrapper
-    libevent libstartup_notification libvpx /* cairo */
+    xorg.libXext unzip makeWrapper
+    libevent libstartup_notification /* cairo */
     icu libpng jemalloc glib
     nasm
     # >= 66 requires nasm for the AV1 lib dav1d
@@ -118,7 +119,8 @@ stdenv.mkDerivation ({
     # https://groups.google.com/forum/#!msg/mozilla.dev.platform/o-8levmLU80/SM_zQvfzCQAJ
     nspr nss
   ]
-
+  ++ lib.optionals  (lib.versionOlder ffversion "75") [ libvpx sqlite ]
+  ++ lib.optional  (lib.versionAtLeast ffversion "75.0") libvpx_1_8
   ++ lib.optional  alsaSupport alsaLib
   ++ lib.optional  pulseaudioSupport libpulseaudio # only headers are needed
   ++ lib.optional  gtk3Support gtk3
@@ -206,7 +208,6 @@ stdenv.mkDerivation ({
     "--with-system-icu"
     "--enable-system-ffi"
     "--enable-system-pixman"
-    "--enable-system-sqlite"
     #"--enable-system-cairo"
     "--enable-startup-notification"
     #"--enable-content-sandbox" # TODO: probably enable after 54
@@ -221,6 +222,7 @@ stdenv.mkDerivation ({
     "--with-system-nspr"
     "--with-system-nss"
   ]
+  ++ lib.optional (lib.versionOlder ffversion "75") "--enable-system-sqlite"
   ++ lib.optional (stdenv.isDarwin) "--disable-xcode-checks"
   ++ lib.optionals (lib.versionOlder ffversion "69") [
     "--enable-webrender=build"
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index cf44639ad57..e30ebc9afb5 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -1,4 +1,4 @@
-{ config, lib, callPackage, fetchurl }:
+{ config, stdenv, lib, callPackage, fetchurl }:
 
 let
   common = opts: callPackage (import ./common.nix opts) {};
@@ -7,10 +7,10 @@ in
 rec {
   firefox = common rec {
     pname = "firefox";
-    ffversion = "74.0";
+    ffversion = "75.0";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
-      sha512 = "245n2ilfgx3rd0xlxzpg4gcwddcy0cgaqnaf5pwixjx0n8py1imiylwlsbihf70s41cq5q8awckchs287yysr4v6pdfqqbj7s0f02ki";
+      sha512 = "0m3ibm6dy9cpvsxkzkzwj7na5rm5qz7sm3bpx604ibay9pccvgv59jxapisvmswzmlz2nv02l6p2gxlz3b0lbcg7rd5zasia92y7j99";
     };
 
     patches = [
@@ -23,6 +23,8 @@ rec {
       maintainers = with lib.maintainers; [ eelco andir ];
       platforms = lib.platforms.unix;
       badPlatforms = lib.platforms.darwin;
+      broken = stdenv.buildPlatform.is32bit; # since Firefox 60, build on 32-bit platforms fails with "out of memory".
+                                             # not in `badPlatforms` because cross-compilation on 64-bit machine might work.
       license = lib.licenses.mpl20;
     };
     updateScript = callPackage ./update.nix {
@@ -33,10 +35,10 @@ rec {
 
   firefox-esr-68 = common rec {
     pname = "firefox-esr";
-    ffversion = "68.6.0esr";
+    ffversion = "68.7.0esr";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
-      sha512 = "2ipajk86s7hfz7qky9lh24i5fgzgpv9hl12invr1rr6jhpp0h6gbb44ffim0z9lmcj49cr01cgqis0swhb4vph8dl1jvgfq9rjmsml4";
+      sha512 = "29qbcc78hz1rsnz735a5miwfj0c3r1c5qm2043vyd9qz879vsh4ab82k7wncm3xa04kqdff26zh1rpbbjmdr7gwn4q8nmjzzs7wzpd3";
     };
 
     patches = [
diff --git a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
index a8a426b6162..97a03ccbab5 100644
--- a/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
+++ b/pkgs/applications/networking/browsers/tor-browser-bundle-bin/default.nix
@@ -28,7 +28,7 @@
 , apulse
 
 # Media support (implies audio support)
-, mediaSupport ? false
+, mediaSupport ? true
 , ffmpeg
 
 , gmp
@@ -90,19 +90,19 @@ let
   fteLibPath = makeLibraryPath [ stdenv.cc.cc gmp ];
 
   # Upstream source
-  version = "9.0.6";
+  version = "9.0.9";
 
   lang = "en-US";
 
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux64-${version}_${lang}.tar.xz";
-      sha256 = "1vk1pww8zmpjd5snyfz0if9v17g140ymlp6navxp28snzlffahss";
+      sha256 = "0ws4s0jn559j1ih60wqspxvr5wpqww29kzk0xzzbr56wfyahp4fg";
     };
 
     i686-linux = fetchurl {
       url = "https://dist.torproject.org/torbrowser/${version}/tor-browser-linux32-${version}_${lang}.tar.xz";
-      sha256 = "0bhikdilfz31iilgb48mayy9f4lilycq24pqsrq7w3dqdjg4v55v";
+      sha256 = "0sv73jlv0qwlkxgqkmqg1flsa9lbkxa4yahny5wrfgsbw74xibkl";
     };
   };
 in
diff --git a/pkgs/applications/networking/browsers/vivaldi/default.nix b/pkgs/applications/networking/browsers/vivaldi/default.nix
index e129542d530..776ed8f4471 100644
--- a/pkgs/applications/networking/browsers/vivaldi/default.nix
+++ b/pkgs/applications/networking/browsers/vivaldi/default.nix
@@ -17,11 +17,11 @@ let
   vivaldiName = if isSnapshot then "vivaldi-snapshot" else "vivaldi";
 in stdenv.mkDerivation rec {
   pname = "vivaldi";
-  version = "2.11.1811.49-1";
+  version = "2.11.1811.52-1";
 
   src = fetchurl {
     url = "https://downloads.vivaldi.com/${branch}/vivaldi-${branch}_${version}_amd64.deb";
-    sha256 = "0xn23jmh8pqp1hc0q6nysc8x9xgpypzqr4wz2rzqyald4asxj60v";
+    sha256 = "0bq9ggk75xzka2nbrnc7vghq8s7jjy9nbfmyrf51kf0nni1zg1fp";
   };
 
   unpackPhase = ''
diff --git a/pkgs/applications/networking/calls/default.nix b/pkgs/applications/networking/calls/default.nix
index 71997ff8ffa..18a9bc0f422 100644
--- a/pkgs/applications/networking/calls/default.nix
+++ b/pkgs/applications/networking/calls/default.nix
@@ -22,14 +22,14 @@
 
 stdenv.mkDerivation rec {
   pname = "calls";
-  version = "0.1.2";
+  version = "0.1.4";
 
   src = fetchFromGitLab {
     domain = "source.puri.sm";
     owner = "Librem5";
     repo = "calls";
     rev = "v${version}";
-    sha256 = "105r631a0rva1k1fa50lravsfk5dd3f0k3gfc7lvpn2jkd99s1g6";
+    sha256 = "0715cap3w8gppxlfaynhiqvc2ss512xgykjcpqq8f5syz2776skh";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/cawbird/default.nix b/pkgs/applications/networking/cawbird/default.nix
index af8b7241659..c9e6b6f6de0 100644
--- a/pkgs/applications/networking/cawbird/default.nix
+++ b/pkgs/applications/networking/cawbird/default.nix
@@ -20,14 +20,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.0.4";
+  version = "1.0.5";
   pname = "cawbird";
 
   src = fetchFromGitHub {
     owner = "IBBoard";
     repo = "cawbird";
     rev = "v${version}";
-    sha256 = "sha256:1gqi7bn08b9cjpb0mgs6bk1a2npdfhn56ckps95nck0jyqzfbnir";
+    sha256 = "sha256:0prrrkgmnm78sq2c6yvy86qb3lcl51d250q7gvmqili2ffnjmamf";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/cluster/argo/default.nix b/pkgs/applications/networking/cluster/argo/default.nix
index 25fb33399c0..f02b64e92c8 100644
--- a/pkgs/applications/networking/cluster/argo/default.nix
+++ b/pkgs/applications/networking/cluster/argo/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, buildGoPackage, fetchFromGitHub, Security }:
+{ lib, buildGoModule, buildGoPackage, fetchFromGitHub }:
 
 let
   # Argo can package a static server in the CLI using the `staticfiles` go module.
@@ -32,8 +32,6 @@ buildGoModule rec {
 
   subPackages = [ "cmd/argo" ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   preBuild = ''
     mkdir -p ui/dist/app
     echo "Built without static files" > ui/dist/app/index.html
@@ -41,7 +39,7 @@ buildGoModule rec {
     ${staticfiles}/bin/staticfiles -o server/static/files.go ui/dist/app
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Container native workflow engine for Kubernetes";
     homepage = https://github.com/argoproj/argo;
     license = licenses.asl20;
diff --git a/pkgs/applications/networking/cluster/argocd/default.nix b/pkgs/applications/networking/cluster/argocd/default.nix
index 51635292fa1..7f9ebda93c0 100644
--- a/pkgs/applications/networking/cluster/argocd/default.nix
+++ b/pkgs/applications/networking/cluster/argocd/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, packr, Security }:
+{ lib, buildGoModule, fetchFromGitHub, packr }:
 
 buildGoModule rec {
   pname = "argocd";
@@ -16,8 +16,6 @@ buildGoModule rec {
 
   nativeBuildInputs = [ packr ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   patches = [ ./use-go-module.patch ];
 
   buildFlagsArray = ''
@@ -33,7 +31,7 @@ buildGoModule rec {
     packr
   '';
   
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes";
     homepage = "https://github.com/argoproj/argo";
     license = licenses.asl20;
diff --git a/pkgs/applications/networking/cluster/atlantis/default.nix b/pkgs/applications/networking/cluster/atlantis/default.nix
index ce3a1730ae5..cb846060a3d 100644
--- a/pkgs/applications/networking/cluster/atlantis/default.nix
+++ b/pkgs/applications/networking/cluster/atlantis/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "atlantis";
@@ -15,8 +15,6 @@ buildGoModule rec {
 
   subPackages = [ "." ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     homepage = "https://github.com/runatlantis/atlantis";
     description = "Terraform Pull Request Automation";
diff --git a/pkgs/applications/networking/cluster/fluxctl/default.nix b/pkgs/applications/networking/cluster/fluxctl/default.nix
index 75e097131ea..10991d47cca 100644
--- a/pkgs/applications/networking/cluster/fluxctl/default.nix
+++ b/pkgs/applications/networking/cluster/fluxctl/default.nix
@@ -1,22 +1,22 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "fluxctl";
-  version = "1.18.0";
+  version = "1.19.0";
 
   src = fetchFromGitHub {
     owner = "weaveworks";
     repo = "flux";
     rev = version;
-    sha256 = "1sk82cnrj5ngcaml54rhh7ak8dg80r25623c4s8p7ybrj1m7krqj";
+    sha256 = "1w6ndp0nrpps6pkxnq38hikbnzwahi6j9gn8l0bxd0qkf7cjc5w0";
   };
 
-  modSha256 = "0ij5q31a0818nmqsdql1ii6rhq6nb0liplnw509qih8py7dk5xkg";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "0zwq7n1lggj27j5yxgfplbaccw5fhbm7vm0sja839r1jamrn3ips";
 
   subPackages = [ "cmd/fluxctl" ];
 
+  buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
+
   meta = with stdenv.lib; {
     description = "CLI client for Flux, the GitOps Kubernetes operator";
     homepage = "https://github.com/fluxcd/flux";
diff --git a/pkgs/applications/networking/cluster/helm/default.nix b/pkgs/applications/networking/cluster/helm/default.nix
index 822df765655..88ca9b3da94 100644
--- a/pkgs/applications/networking/cluster/helm/default.nix
+++ b/pkgs/applications/networking/cluster/helm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, installShellFiles, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub, installShellFiles }:
 
 buildGoModule rec {
   pname = "helm";
@@ -16,9 +16,6 @@ buildGoModule rec {
   buildFlagsArray = [ "-ldflags=-w -s -X helm.sh/helm/v3/internal/version.version=v${version}" ];
 
   nativeBuildInputs = [ installShellFiles ];
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   postInstall = ''
     $out/bin/helm completion bash > helm.bash
     $out/bin/helm completion zsh > helm.zsh
diff --git a/pkgs/applications/networking/cluster/helmfile/default.nix b/pkgs/applications/networking/cluster/helmfile/default.nix
index 2de07e9fdc7..1318ff003de 100644
--- a/pkgs/applications/networking/cluster/helmfile/default.nix
+++ b/pkgs/applications/networking/cluster/helmfile/default.nix
@@ -1,21 +1,23 @@
-{ stdenv, buildGoModule, fetchFromGitHub, makeWrapper, kubernetes-helm, Security }:
+{ lib, buildGoModule, fetchFromGitHub, makeWrapper, kubernetes-helm, ... }:
 
-buildGoModule rec {
+let version = "0.106.3"; in
+
+buildGoModule {
   pname = "helmfile";
-  version = "0.102.0";
+  inherit version;
 
   src = fetchFromGitHub {
     owner = "roboll";
     repo = "helmfile";
     rev = "v${version}";
-    sha256 = "0v7mhsnhswiqd62wrmkcpzsg9nfi6wvkh9danngs5rqjiz1zffhy";
+    sha256 = "0pwkkgdcj9vx6nk574iaqwn074qfpgqd1c44d3kr3xdbac89yfyf";
   };
 
-  modSha256 = "0s7j7jbgr8gdc0s9dnl6zjwkpywqj05xyb7mkcank54kgrz0g5vq";
+  goPackagePath = "github.com/roboll/helmfile";
 
-  nativeBuildInputs = [ makeWrapper ];
+  modSha256 = "1yv2b44qac0rms66v0qg13wsga0di6hwxa4dh2l0b1xvaf75ysay";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  nativeBuildInputs = [ makeWrapper ];
 
   buildFlagsArray = ''
     -ldflags=
@@ -24,14 +26,14 @@ buildGoModule rec {
 
   postInstall = ''
     wrapProgram $out/bin/helmfile \
-      --prefix PATH : ${stdenv.lib.makeBinPath [ kubernetes-helm ]}
+      --prefix PATH : ${lib.makeBinPath [ kubernetes-helm ]}
   '';
 
-  meta = with stdenv.lib; {
+  meta = {
     description = "Deploy Kubernetes Helm charts";
     homepage = "https://github.com/roboll/helmfile";
-    license = licenses.mit;
-    maintainers = with maintainers; [ pneumaticat yurrriq ];
-    platforms = platforms.unix;
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ pneumaticat yurrriq ];
+    platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/applications/networking/cluster/hetzner-kube/default.nix b/pkgs/applications/networking/cluster/hetzner-kube/default.nix
index 8a59bf3197a..1d9940c8f31 100644
--- a/pkgs/applications/networking/cluster/hetzner-kube/default.nix
+++ b/pkgs/applications/networking/cluster/hetzner-kube/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "hetzner-kube";
@@ -13,18 +13,16 @@ buildGoModule rec {
 
   modSha256 = "0jjrk93wdi13wrb5gchhqk7rgwm74kcizrbqsibgkgs2dszwfazh";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = ''
     -ldflags=
     -X github.com/xetys/hetzner-kube/cmd.version=${version}
   '';
 
-  meta = with stdenv.lib; {
+  meta = {
     description = "A CLI tool for provisioning Kubernetes clusters on Hetzner Cloud";
     homepage = "https://github.com/xetys/hetzner-kube";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ eliasp ];
-    platforms = platforms.unix;
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ eliasp ];
+    platforms = lib.platforms.unix;
   };
 }
diff --git a/pkgs/applications/networking/cluster/jx/default.nix b/pkgs/applications/networking/cluster/jx/default.nix
index f817a68ced1..88aa8777ee5 100644
--- a/pkgs/applications/networking/cluster/jx/default.nix
+++ b/pkgs/applications/networking/cluster/jx/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   name = "jx";
@@ -16,8 +16,6 @@ buildGoModule rec {
     ./3321-fix-location-of-thrift.patch
   ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   modSha256 = "0ljf0c0c3pc12nmhdbrwflcaj6hs8igzjw5hi6fyhi6n9cy87vac";
 
   subPackages = [ "cmd/jx" ];
@@ -28,7 +26,7 @@ buildGoModule rec {
     -X github.com/jenkins-x/jx/pkg/version.Revision=${version}
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "JX is a command line tool for installing and using Jenkins X.";
     homepage = https://jenkins-x.io;
     longDescription = ''
diff --git a/pkgs/applications/networking/cluster/k3s/default.nix b/pkgs/applications/networking/cluster/k3s/default.nix
new file mode 100644
index 00000000000..0fd58143868
--- /dev/null
+++ b/pkgs/applications/networking/cluster/k3s/default.nix
@@ -0,0 +1,235 @@
+{ stdenv, lib, makeWrapper, socat, iptables, iproute, bridge-utils
+, conntrack-tools, buildGoPackage, git, runc, libseccomp, pkgconfig
+, ethtool, utillinux, ipset, fetchFromGitHub, fetchurl, fetchzip
+, fetchgit
+}:
+
+with lib;
+
+# k3s is a kinda weird derivation. One of the main points of k3s is the
+# simplicity of it being one binary that can perform several tasks.
+# However, when you have a good package manager (like nix), that doesn't
+# actually make much of a difference; you don't really care if it's one binary
+# or 10 since with a good package manager, installing and running it is
+# identical.
+# Since upstream k3s packages itself as one large binary with several
+# "personalities" (in the form of subcommands like 'k3s agent' and 'k3s
+# kubectl'), it ends up being easiest to mostly mimic upstream packaging, with
+# some exceptions.
+# K3s also carries patches to some packages (such as containerd and cni
+# plugins), so we intentionally use the k3s versions of those binaries for k3s,
+# even if the upstream version of those binaries exist in nixpkgs already. In
+# the end, that means we have a thick k3s binary that behaves like the upstream
+# one for the most part.
+# However, k3s also bundles several pieces of unpatched software, from the
+# strongswan vpn software, to iptables, to socat, conntrack, busybox, etc.
+# 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.17.3+k3s1";     # k3s git tag
+  traefikChartVersion = "1.81.0"; # taken from ./scripts/version.sh at the above k3s tag
+  k3sRootVersion = "0.3.0";       # taken from .s/cripts/version.sh at the above k3s tag
+  # bundled into the k3s binary
+  traefikChart = fetchurl {
+    url = "https://kubernetes-charts.storage.googleapis.com/traefik-${traefikChartVersion}.tgz";
+    sha256 = "1aqpzgjlvqhil0g3angz94zd4xbl4iq0qmpjcy5aq1xv9qciwdi9";
+  };
+  # so, k3s is a complicated thing to package
+  # This derivation attempts to avoid including any random binaries from the
+  # internet. k3s-root is _mostly_ binaries built to be bundled in k3s (which
+  # we don't care about doing, we can add those as build or runtime
+  # dependencies using a real package manager).
+  # In addition to those binaries, it's also configuration though (right now
+  # mostly strongswan configuration), and k3s does use those files.
+  # As such, we download it in order to grab 'etc' and bundle it into the final
+  # k3s binary.
+  k3sRoot = fetchzip {
+    # Note: marked as apache 2.0 license
+    url = "https://github.com/rancher/k3s-root/releases/download/v${k3sRootVersion}/k3s-root-amd64.tar";
+    sha256 = "12xafn5jivl8lqdcs25b28xrc4mf7yf1xif5np169nvvxgvmpdxp";
+    stripRoot=false;
+  };
+  k3sPlugins = buildGoPackage rec {
+    name = "k3s-cni-plugins";
+    version = "0.7.6-k3s1"; # from ./scripts/version.sh 'VERSION_CNIPLUGINS'; update when k3s's repo is updated.
+
+    goPackagePath = "github.com/containernetworking/plugins";
+    subPackages = [ "." ];
+
+    src = fetchFromGitHub {
+      owner = "rancher";
+      repo = "plugins";
+      rev = "v${version}";
+      sha256 = "0ax72z1ziann352bp6khfds8vlf3bbkqckrkpx4l4jxgqks45izs";
+    };
+
+    meta = {
+      description = "CNI plugins, as patched by rancher for k3s";
+      license = licenses.asl20;
+      homepage = https://k3s.io;
+      maintainers = [ maintainers.euank ];
+      platforms = platforms.linux;
+    };
+  };
+  # Grab this separately from a build because it's used by both stages of the
+  # k3s build.
+  k3sRepo = fetchgit {
+    url = "https://github.com/rancher/k3s";
+    rev = "v${k3sVersion}";
+    leaveDotGit = true; # ./scripts/version.sh depends on git
+    sha256 = "0qahyc0mf9glxj49va6d20mcncqg4svfic2iz8b1lqid5c4g68mm";
+  };
+  # Stage 1 of the k3s build:
+  # Let's talk about how k3s is structured.
+  # One of the ideas of k3s is that there's the single "k3s" binary which can
+  # do everything you need, from running a k3s server, to being a worker node,
+  # to running kubectl.
+  # The way that actually works is that k3s is a single go binary that contains
+  # a bunch of bindata that it unpacks at runtime into directories (either the
+  # user's home directory or /var/lib/rancher if run as root).
+  # This bindata includes both binaries and configuration.
+  # In order to let nixpkgs do all its autostripping/patching/etc, we split this into two derivations.
+  # First, we build all the binaries that get packed into the thick k3s binary
+  # (and output them from one derivation so they'll all be suitably patched up).
+  # Then, we bundle those binaries into our thick k3s binary and use that as
+  # the final single output.
+  # This approach was chosen because it ensures the bundled binaries all are
+  # correctly built to run with nix (we can lean on the existing buildGoPackage
+  # stuff), and we can again lean on that tooling for the final k3s binary too.
+  # Other alternatives would be to manually run the
+  # strip/patchelf/remove-references step ourselves in the installPhase of the
+  # derivation when we've built all the binaries, but haven't bundled them in
+  # with generated bindata yet.
+  k3sBuildStage1 = buildGoPackage rec {
+    name = "k3s-build-1";
+    version = "${k3sVersion}";
+
+    goPackagePath = "github.com/rancher/k3s";
+
+    src = k3sRepo;
+
+    patches = [ ./patches/00-k3s.patch ];
+
+    nativeBuildInputs = [ git pkgconfig ];
+    buildInputs = [ libseccomp ];
+
+    buildPhase = ''
+      pushd go/src/${goPackagePath}
+
+      patchShebangs ./scripts/build ./scripts/version.sh
+      mkdir -p bin
+      ./scripts/build
+
+      popd
+    '';
+
+    installPhase = ''
+      pushd go/src/${goPackagePath}
+
+      mkdir -p "$bin/bin"
+      install -m 0755 -t "$bin/bin" ./bin/*
+
+      popd
+    '';
+
+    meta = {
+      description = "The various binaries that get packaged into the final k3s binary.";
+      license = licenses.asl20;
+      homepage = https://k3s.io;
+      maintainers = [ maintainers.euank ];
+      platforms = platforms.linux;
+    };
+  };
+  k3sBuild = buildGoPackage rec {
+    name = "k3s-build";
+    version = "${k3sVersion}";
+
+    goPackagePath = "github.com/rancher/k3s";
+
+    src = k3sRepo;
+
+    patches = [ ./patches/00-k3s.patch ];
+
+    nativeBuildInputs = [ git pkgconfig ];
+    buildInputs = [ k3sBuildStage1 k3sPlugins runc ];
+
+    # In order to build the thick k3s binary (which is what
+    # ./scripts/package-cli does), we need to get all the binaries that script
+    # expects in place.
+    buildPhase = ''
+      pushd go/src/${goPackagePath}
+
+      patchShebangs ./scripts/build ./scripts/version.sh ./scripts/package-cli
+
+      mkdir -p bin
+
+      install -m 0755 -t ./bin ${k3sBuildStage1}/bin/*
+      install -m 0755 -T "${k3sPlugins}/bin/plugins" ./bin/cni
+      # Note: use the already-nixpkgs-bundled k3s rather than the one bundled
+      # in k3s because the k3s one is completely unmodified from upstream
+      # (unlike containerd, cni, etc)
+      install -m 0755 -T "${runc}/bin/runc" ./bin/runc
+      cp -R "${k3sRoot}/etc" ./etc
+      mkdir -p "build/static/charts"
+      cp "${traefikChart}" "build/static/charts/traefik-${traefikChartVersion}.tgz"
+
+      ./scripts/package-cli
+
+      popd
+    '';
+
+    installPhase = ''
+      pushd go/src/${goPackagePath}
+
+      mkdir -p "$bin/bin"
+      install -m 0755 -t "$bin/bin" ./dist/artifacts/k3s
+
+      popd
+    '';
+
+    meta = {
+      description = "The k3s go binary which is used by the final wrapped output below.";
+      license = licenses.asl20;
+      homepage = https://k3s.io;
+      maintainers = [ maintainers.euank ];
+      platforms = platforms.linux;
+    };
+  };
+in
+stdenv.mkDerivation rec {
+  name = "k3s";
+
+  # Important utilities used by  the kubelet, see
+  # https://github.com/kubernetes/kubernetes/issues/26093#issuecomment-237202494
+  # Note the list in that issue is stale and some aren't relevant for k3s.
+  k3sRuntimeDeps = [ 
+    socat iptables iproute bridge-utils ethtool utillinux ipset conntrack-tools
+  ];
+
+  buildInputs = [ 
+    k3sBuild makeWrapper
+  ] ++ k3sRuntimeDeps;
+
+  unpackPhase = "true";
+
+  # And, one final derivation (you thought the last one was it, right?)
+  # We got the binary we wanted above, but it doesn't have all the runtime
+  # dependencies k8s wants, including mount utilities for kubelet, networking
+  # tools for cni/kubelet stuff, etc
+  # Use a wrapper script to reference all the binaries that k3s tries to
+  # execute, but that we didn't bundle with it.
+  installPhase = ''
+    mkdir -p "$out/bin"
+    makeWrapper ${k3sBuild}/bin/k3s "$out/bin/k3s" \
+      --prefix PATH : ${lib.makeBinPath k3sRuntimeDeps} \
+      --prefix PATH : "$out/bin"
+  '';
+
+    meta = {
+      description = "A lightweight Kubernetes distribution.";
+      license = licenses.asl20;
+      homepage = https://k3s.io;
+      maintainers = [ maintainers.euank ];
+      platforms = platforms.linux;
+    };
+}
diff --git a/pkgs/applications/networking/cluster/k3s/patches/00-k3s.patch b/pkgs/applications/networking/cluster/k3s/patches/00-k3s.patch
new file mode 100644
index 00000000000..afe2c356aa4
--- /dev/null
+++ b/pkgs/applications/networking/cluster/k3s/patches/00-k3s.patch
@@ -0,0 +1,74 @@
+diff --git a/main.go b/main.go
+index 62908bb7bb..0527222887 100644
+--- a/main.go
++++ b/main.go
+@@ -1,5 +1,5 @@
+ //go:generate go run pkg/codegen/cleanup/main.go
+-//go:generate /bin/rm -rf pkg/generated
++//go:generate rm -rf pkg/generated
+ //go:generate go run pkg/codegen/main.go
+ //go:generate go fmt pkg/deploy/zz_generated_bindata.go
+ //go:generate go fmt pkg/static/zz_generated_bindata.go
+diff --git a/scripts/build b/scripts/build
+index 72d3c07ece..3e5455b262 100755
+--- a/scripts/build
++++ b/scripts/build
+@@ -10,7 +10,8 @@ PKG_CONTAINERD="github.com/containerd/containerd"
+ PKG_RANCHER_CONTAINERD="github.com/rancher/containerd"
+ PKG_CRICTL="github.com/kubernetes-sigs/cri-tools"
+ 
+-buildDate=$(date -u '+%Y-%m-%dT%H:%M:%SZ')
++# Deterministic build date
++buildDate="$(date -d "$(git log -1 --format=%ai)" -u "+%Y-%m-%dT%H:%M:%SZ")"
+ 
+ VENDOR_PREFIX="${PKG}/vendor/"
+ VERSIONFLAGS="
+@@ -82,17 +83,7 @@ cleanup() {
+ }
+ 
+ INSTALLBIN=$(pwd)/bin
+-if [ ! -x ${INSTALLBIN}/cni ]; then
+-(
+-    echo Building cni
+-    TMPDIR=$(mktemp -d)
+-    trap cleanup EXIT
+-    WORKDIR=$TMPDIR/src/github.com/containernetworking/plugins
+-    git clone -b $VERSION_CNIPLUGINS https://github.com/rancher/plugins.git $WORKDIR
+-    cd $WORKDIR
+-    GOPATH=$TMPDIR CGO_ENABLED=0 go build -tags "$TAGS" -ldflags "$LDFLAGS $STATIC" -o $INSTALLBIN/cni
+-)
+-fi
++# skip building cni, use our separately built one
+ # 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
+@@ -108,9 +99,8 @@ 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
+-make EXTRA_LDFLAGS="-w -s" BUILDTAGS="apparmor seccomp" -C ./vendor/github.com/opencontainers/runc static
+-cp -f ./vendor/github.com/opencontainers/runc/runc ./bin/runc
++
++# skip building runc; use our packaged one
+ 
+ echo Building containerd-shim
+ make -C ./vendor/github.com/containerd/containerd bin/containerd-shim
+diff --git a/scripts/package-cli b/scripts/package-cli
+index 4c66ce32df..6d1e0c03cb 100755
+--- a/scripts/package-cli
++++ b/scripts/package-cli
+@@ -55,10 +55,10 @@ LDFLAGS="
+     -X github.com/rancher/k3s/pkg/version.GitCommit=${COMMIT:0:8}
+     -w -s
+ "
+-STATIC="-extldflags '-static'"
+ if [ "$DQLITE" = "true" ]; then
+     DQLITE_TAGS="dqlite"
+ fi
+-CGO_ENABLED=0 go build -tags "$DQLITE_TAGS" -ldflags "$LDFLAGS $STATIC" -o ${CMD_NAME} ./cmd/k3s/main.go
++go build -tags "$DQLITE_TAGS" -ldflags "$LDFLAGS" -o ${CMD_NAME} ./cmd/k3s/main.go
+ 
+-./scripts/build-upload ${CMD_NAME} ${COMMIT}
++# for nixos, don't upload it
++# ./scripts/build-upload ${CMD_NAME} ${COMMIT}
diff --git a/pkgs/applications/networking/cluster/k9s/default.nix b/pkgs/applications/networking/cluster/k9s/default.nix
index 956d7b106b9..1cf76e1cff3 100644
--- a/pkgs/applications/networking/cluster/k9s/default.nix
+++ b/pkgs/applications/networking/cluster/k9s/default.nix
@@ -1,28 +1,24 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "k9s";
-  version = "0.17.7";
-  # rev is the release commit, mainly for version command output
-  rev = "8fedc42304ce33df314664eb0c4ac73be59065af";
+  version = "0.18.1";
 
   src = fetchFromGitHub {
     owner  = "derailed";
     repo   = "k9s";
     rev    = "v${version}";
-    sha256 = "0bqx1ckk89vzmk6fmqmv03cbdvw0agwrqzywzw35b4n0di37x0nv";
+    sha256 = "0a5x4yamvx2qlwngfvainbhplwp0hqwgvdqlj2jbrbz4hfhr1l59";
   };
 
   buildFlagsArray = ''
     -ldflags=
       -s -w
       -X github.com/derailed/k9s/cmd.version=${version}
-      -X github.com/derailed/k9s/cmd.commit=${rev}
+      -X github.com/derailed/k9s/cmd.commit=${src.rev}
   '';
 
-  modSha256 = "06m4xgl29zx6zpqx630m9cm52wmljms9cvly5f4pqdb4zicq7n86";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "0wpf6iyq6p3a8azdkn17gdp01wq9khyzr1bab6qgvsnsnhnjzcky";
 
   meta = with stdenv.lib; {
     description = "Kubernetes CLI To Manage Your Clusters In Style.";
diff --git a/pkgs/applications/networking/cluster/kops/default.nix b/pkgs/applications/networking/cluster/kops/default.nix
index 76afaa47cee..0e71e91fbc1 100644
--- a/pkgs/applications/networking/cluster/kops/default.nix
+++ b/pkgs/applications/networking/cluster/kops/default.nix
@@ -18,8 +18,8 @@ let
           inherit sha256;
         };
 
-        buildInputs = [go-bindata];
-        subPackages = ["cmd/kops"];
+        nativeBuildInputs = [ go-bindata ];
+        subPackages = [ "cmd/kops" ];
 
         buildFlagsArray = ''
           -ldflags=
@@ -43,7 +43,7 @@ let
           description = "Easiest way to get a production Kubernetes up and running";
           homepage = https://github.com/kubernetes/kops;
           license = licenses.asl20;
-          maintainers = with maintainers; [offline zimbatm kampka];
+          maintainers = with maintainers; [ offline zimbatm kampka ];
           platforms = platforms.unix;
         };
       } // attrs';
@@ -60,7 +60,7 @@ in rec {
     version = "1.13.2";
     sha256 = "0lkkg34vn020r62ga8vg5d3a8jwvq00xlv3p1s01nkz33f6salng";
   };
-  
+
   kops_1_14 = mkKops {
     version = "1.14.1";
     sha256 = "0ikd8qwrjh8s1sc95g18sm0q6p33swz2m1rjd8zw34mb2w9jv76n";
diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix
index 5178b7a2bd4..004e88ff44e 100644
--- a/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     sha256 = "0caqczz8hrwqb8j94158hz6919i7c9v1v0zknh9m2zbbng4b1awi";
   };
 
-  buildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ];
+  nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ];
 
   outputs = ["out" "man" "pause"];
 
diff --git a/pkgs/applications/networking/cluster/kubeseal/default.nix b/pkgs/applications/networking/cluster/kubeseal/default.nix
index 092cee5f7a2..ef87b67a360 100644
--- a/pkgs/applications/networking/cluster/kubeseal/default.nix
+++ b/pkgs/applications/networking/cluster/kubeseal/default.nix
@@ -1,23 +1,21 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "kubeseal";
-  version = "0.10.0";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = "bitnami-labs";
     repo = "sealed-secrets";
     rev = "v${version}";
-    sha256 = "14ahb02p1gqcqbjz6mn3axw436b6bi4ygq5ckm85jzs28s4wrfsv";
+    sha256 = "0z51iwdc4m0y8wyyx3mcvbzxlrgws7n5wkcd0g7nr73irnsld4lh";
   };
 
-  modSha256 = "04dmjyz3vi2l0dfpyy42lkp2fv1vlfkvblrxh1dvb37phrkd5lbd";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "029h0zr3fpzlsv9hf1d1x5j7aalxkcsyszsxjz8fqrhjafqc7zvq";
 
   subPackages = [ "cmd/kubeseal" ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A Kubernetes controller and tool for one-way encrypted Secrets";
     homepage = "https://github.com/bitnami-labs/sealed-secrets";
     license = licenses.asl20;
diff --git a/pkgs/applications/networking/cluster/kubeval/default.nix b/pkgs/applications/networking/cluster/kubeval/default.nix
index 046052f78be..54be5956040 100644
--- a/pkgs/applications/networking/cluster/kubeval/default.nix
+++ b/pkgs/applications/networking/cluster/kubeval/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ stdenv, lib, fetchFromGitHub, buildGoModule, makeWrapper }:
 
 buildGoModule rec {
   pname = "kubeval";
@@ -13,9 +13,7 @@ buildGoModule rec {
 
   modSha256 = "0y9x44y3bchi8xg0a6jmp2rmi8dybkl6qlywb6nj1viab1s8dd4y";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Validate your Kubernetes configuration files";
     homepage = https://github.com/instrumenta/kubeval;
     license = licenses.asl20;
diff --git a/pkgs/applications/networking/cluster/linkerd/default.nix b/pkgs/applications/networking/cluster/linkerd/default.nix
index d52b25c2e01..8c0265d1491 100644
--- a/pkgs/applications/networking/cluster/linkerd/default.nix
+++ b/pkgs/applications/networking/cluster/linkerd/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ stdenv, fetchFromGitHub, buildGoModule }:
 
 buildGoModule {
   pname = "linkerd-unstablle";
@@ -13,8 +13,6 @@ buildGoModule {
 
   modSha256 = "0gahhywpcj16ww4l8s3wjwvavq24fpy258snhyf94ipy6lb797sl";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   subPackages = [ "cli/cmd" ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/cluster/mesos/default.nix b/pkgs/applications/networking/cluster/mesos/default.nix
index ec152fdc464..ac1feee5d72 100644
--- a/pkgs/applications/networking/cluster/mesos/default.nix
+++ b/pkgs/applications/networking/cluster/mesos/default.nix
@@ -258,5 +258,6 @@ in stdenv.mkDerivation rec {
     description = "A cluster manager that provides efficient resource isolation and sharing across distributed applications, or frameworks";
     maintainers = with maintainers; [ cstrahan offline ];
     platforms   = platforms.unix;
+    broken = true; # Broken since 2019-10-22 (https://hydra.nixos.org/build/115475123)
   };
 }
diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix
index ebd78424f4a..f49f1768ced 100644
--- a/pkgs/applications/networking/cluster/minikube/default.nix
+++ b/pkgs/applications/networking/cluster/minikube/default.nix
@@ -6,10 +6,6 @@
 , go-bindata
 , libvirt
 , vmnet
-, xpc
-, libobjc
-, Foundation
-, IOKit
 }:
 
 buildGoModule rec {
@@ -31,7 +27,7 @@ buildGoModule rec {
 
   nativeBuildInputs = [ pkgconfig go-bindata makeWrapper ];
   buildInputs = stdenv.lib.optionals stdenv.isLinux [ libvirt ]
-    ++ stdenv.lib.optionals stdenv.isDarwin [ vmnet xpc libobjc IOKit Foundation ];
+    ++ stdenv.lib.optionals stdenv.isDarwin [ vmnet ];
 
   preBuild = ''
     go-bindata -nomemcopy -o pkg/minikube/assets/assets.go -pkg assets deploy/addons/...
diff --git a/pkgs/applications/networking/cluster/nomad/default.nix b/pkgs/applications/networking/cluster/nomad/default.nix
index 6afbbf215a3..1243bf7db49 100644
--- a/pkgs/applications/networking/cluster/nomad/default.nix
+++ b/pkgs/applications/networking/cluster/nomad/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "nomad";
-  version = "0.10.2";
+  version = "0.10.5";
   rev = "v${version}";
 
   goPackagePath = "github.com/hashicorp/nomad";
@@ -12,7 +12,7 @@ buildGoPackage rec {
     owner = "hashicorp";
     repo = pname;
     inherit rev;
-    sha256 = "1kv67rkqnxiz2dkmc1v1df6qx9j5j4h7cis00v2i15sl824g22jw";
+    sha256 = "0i9104anf3qaydm1izlwrzvpzizd6p1zy651hsynscnnxa56cmyk";
   };
 
   # ui:
diff --git a/pkgs/applications/networking/cluster/prow/13918-fix-go-sum.patch b/pkgs/applications/networking/cluster/prow/13918-fix-go-sum.patch
deleted file mode 100644
index ae407727b9d..00000000000
--- a/pkgs/applications/networking/cluster/prow/13918-fix-go-sum.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From b0ab95b9664916618ebf5fe637b1bc4de4ba9a6e Mon Sep 17 00:00:00 2001
-From: "Wael M. Nasreddine" <wael.nasreddine@gmail.com>
-Date: Wed, 14 Aug 2019 23:07:51 -0700
-Subject: [PATCH] fix the hash of gomodules.xyz/jsonpatch/v2
-
----
- go.sum | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/go.sum b/go.sum
-index 6bb130b4d9b..b3f48a85d4a 100644
---- a/go.sum
-+++ b/go.sum
-@@ -452,7 +452,7 @@ golang.org/x/tools v0.0.0-20190312170243-e65039ee4138 h1:H3uGjxCR/6Ds0Mjgyp7LMK8
- golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
- golang.org/x/tools v0.0.0-20190404132500-923d25813098 h1:MtqjsZmyGRgMmLUgxnmMJ6RYdvd2ib8ipiayHhqSxs4=
- golang.org/x/tools v0.0.0-20190404132500-923d25813098/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
--gomodules.xyz/jsonpatch/v2 v2.0.0 h1:lHNQverf0+Gm1TbSbVIDWVXOhZ2FpZopxRqpr2uIjs4=
-+gomodules.xyz/jsonpatch/v2 v2.0.0 h1:OyHbl+7IOECpPKfVK42oFr6N7+Y2dR+Jsb/IiDV3hOo=
- gomodules.xyz/jsonpatch/v2 v2.0.0/go.mod h1:IhYNNY4jnS53ZnfE4PAmpKtDpTCj1JFXc+3mwe7XcUU=
- google.golang.org/api v0.0.0-20180910000450-7ca32eb868bf/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0=
- google.golang.org/api v0.0.0-20181021000519-a2651947f503/go.mod h1:4mhQ8q/RsB7i+udVvVy5NUi08OU8ZlA0gRVgrF7VFY0=
diff --git a/pkgs/applications/networking/cluster/prow/default.nix b/pkgs/applications/networking/cluster/prow/default.nix
index e3eb24b2374..0b2f798d35b 100644
--- a/pkgs/applications/networking/cluster/prow/default.nix
+++ b/pkgs/applications/networking/cluster/prow/default.nix
@@ -1,62 +1,55 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   pname = "prow-unstable";
-  version = "2019-08-14";
-  rev = "35a7744f5737bbc1c4e1256a9c9c5ad135c650e4";
+  version = "2020-04-01";
+  rev = "32e3b5ce7695fb622381421653db436cb57b47c5";
 
   src = fetchFromGitHub {
     inherit rev;
 
     owner = "kubernetes";
     repo = "test-infra";
-    sha256 = "07kdlzrj59xyaa73vlx4s50fpg0brrkb0h0cyjgx81a0hsc7s03k";
+    sha256 = "0mc3ynmbf3kidibdy8k3v3xjlvmxl8w7zm1z2m0skmhd0y4bpmk4";
   };
 
-  patches = [
-    # https://github.com/kubernetes/test-infra/pull/13918
-    ./13918-fix-go-sum.patch
-  ];
-
-  modSha256 = "06q1zvhm78k64aj475k1xl38h7nk83mysd0bja0wknja048ymgsq";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "1xajdg10a27icc7g1y3ym4pkgg64rp4afybbjlhbg3k3whir9xa1";
 
   subPackages = [
-    "./prow/cmd/admission"
-    "./prow/cmd/artifact-uploader"
-    "./prow/cmd/branchprotector"
-    "./prow/cmd/build"
-    "./prow/cmd/checkconfig"
-    "./prow/cmd/clonerefs"
-    "./prow/cmd/config-bootstrapper"
-    "./prow/cmd/crier"
-    "./prow/cmd/deck"
-    "./prow/cmd/entrypoint"
-    "./prow/cmd/gcsupload"
-    "./prow/cmd/gerrit"
-    "./prow/cmd/hook"
-    "./prow/cmd/horologium"
-    "./prow/cmd/initupload"
-    "./prow/cmd/jenkins-operator"
-    "./prow/cmd/mkbuild-cluster"
-    "./prow/cmd/mkpj"
-    "./prow/cmd/mkpod"
-    "./prow/cmd/peribolos"
-    "./prow/cmd/phaino"
-    "./prow/cmd/phony"
-    "./prow/cmd/pipeline"
-    "./prow/cmd/plank"
-    "./prow/cmd/sidecar"
-    "./prow/cmd/sinker"
-    "./prow/cmd/status-reconciler"
-    "./prow/cmd/sub"
-    "./prow/cmd/tackle"
-    "./prow/cmd/tide"
-    "./prow/cmd/tot"
+    "prow/cmd/admission"
+    "prow/cmd/branchprotector"
+    "prow/cmd/checkconfig"
+    "prow/cmd/clonerefs"
+    "prow/cmd/cm2kc"
+    "prow/cmd/config-bootstrapper"
+    "prow/cmd/crier"
+    "prow/cmd/deck"
+    "prow/cmd/entrypoint"
+    "prow/cmd/exporter"
+    "prow/cmd/gcsupload"
+    "prow/cmd/gerrit"
+    "prow/cmd/hook"
+    "prow/cmd/horologium"
+    "prow/cmd/initupload"
+    "prow/cmd/jenkins-operator"
+    "prow/cmd/mkbuild-cluster"
+    "prow/cmd/mkpj"
+    "prow/cmd/mkpod"
+    "prow/cmd/peribolos"
+    "prow/cmd/phaino"
+    "prow/cmd/phony"
+    "prow/cmd/pipeline"
+    "prow/cmd/plank"
+    "prow/cmd/sidecar"
+    "prow/cmd/sinker"
+    "prow/cmd/status-reconciler"
+    "prow/cmd/sub"
+    "prow/cmd/tackle"
+    "prow/cmd/tide"
+    "prow/cmd/tot"
   ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Prow is a Kubernetes based CI/CD system";
     longDescription = ''
       Prow is a Kubernetes based CI/CD system. Jobs can be triggered by various
diff --git a/pkgs/applications/networking/cluster/qbec/default.nix b/pkgs/applications/networking/cluster/qbec/default.nix
index 4e475320a61..53b421ec552 100644
--- a/pkgs/applications/networking/cluster/qbec/default.nix
+++ b/pkgs/applications/networking/cluster/qbec/default.nix
@@ -1,21 +1,19 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "qbec";
-  version = "0.10.5";
+  version = "0.11.0";
 
   src = fetchFromGitHub {
     owner = "splunk";
     repo = "qbec";
     rev = "v${version}";
-    sha256 = "0j0ybbv4ix864scmghy1lvr3rs2fbj49cva6x48kbwli4y447758";
+    sha256 = "0krdfaha19wzi10rh0wfhki5nknbd5mndaxhrq7y9m840xy43d6d";
   };
 
-  modSha256 = "165zqmannlylkzaz9gkmcrlyx8rfhz70ahzhiks4ycgq1qxr0av9";
+  modSha256 = "1wb15vrkb4ryvrjp68ygmadnf78s354106ya210pnmsbb53rbhaz";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Configure kubernetes objects on multiple clusters using jsonnet https://qbec.io";
     homepage = "https://github.com/splunk/qbec";
     license = licenses.asl20;
diff --git a/pkgs/applications/networking/cluster/terraform-docs/default.nix b/pkgs/applications/networking/cluster/terraform-docs/default.nix
index 606cd0370aa..a5b6e7d2f5e 100644
--- a/pkgs/applications/networking/cluster/terraform-docs/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-docs/default.nix
@@ -1,7 +1,7 @@
 { lib, buildGoPackage, fetchFromGitHub }:
 buildGoPackage rec {
   pname = "terraform-docs";
-  version = "0.6.0";
+  version = "0.9.1";
 
   goPackagePath = "github.com/segmentio/${pname}";
 
@@ -9,7 +9,7 @@ buildGoPackage rec {
     owner  = "segmentio";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "1p6prhjf82qnhf1zwl9h92j4ds5g383a6g9pwwnqbc3wdwy5zx7d";
+    sha256 = "00sfzdqhf8g85m03r6mbzfas5vvc67iq7syb8ljcgxg8l1knxnjx";
   };
 
   preBuild = ''
diff --git a/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock b/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock
index b801fad546d..7307d8a33f3 100644
--- a/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock
+++ b/pkgs/applications/networking/cluster/terraform-landscape/Gemfile.lock
@@ -22,4 +22,4 @@ DEPENDENCIES
   terraform_landscape
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/applications/networking/cluster/terraform-providers/data.nix b/pkgs/applications/networking/cluster/terraform-providers/data.nix
index b78ab3f6dda..d07b6321cb2 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/data.nix
+++ b/pkgs/applications/networking/cluster/terraform-providers/data.nix
@@ -1,5 +1,13 @@
 # Generated with ./update-all
 {
+  aci =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-aci";
+      rev     = "v0.1.8";
+      version = "0.1.8";
+      sha256  = "14hya00ygz0khljjxwvkp6wbrbsavh2n8f26s2mjakph2havb8a3";
+    };
   acme =
     {
       owner   = "terraform-providers";
@@ -8,17 +16,25 @@
       version = "1.5.0";
       sha256  = "1h53bgflchavnn4laf801d920bsgqqg0ph4slnf7y1fpb0mz5vdv";
     };
+  akamai =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-akamai";
+      rev     = "v0.5.0";
+      version = "0.5.0";
+      sha256  = "18l1ik10pn4aq0911sqnfjw9a5zxrm0qbsgynvf5vxc02zds13n5";
+    };
   alicloud =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-alicloud";
-      rev     = "v1.70.1";
-      version = "1.70.1";
-      sha256  = "19bhnnw5gh4pqap8y23v57lyk27z7fw1wb4p0faj860kdf2zpq4j";
+      rev     = "v1.77.0";
+      version = "1.77.0";
+      sha256  = "0g8i8dmxzgkzylh2hh4fa9nq6x8bmxqaz0ly0f0cijb82lcbc3qf";
     };
   archive =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-archive";
       rev     = "v1.3.0";
       version = "1.3.0";
@@ -32,37 +48,53 @@
       version = "1.1.0";
       sha256  = "1akl9fzgm5qv01vz18xjzyqjnlxw699qq4x8vr96j16l1zf10h99";
     };
-  atlas =
+  auth0 =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-atlas";
-      rev     = "v0.1.1";
-      version = "0.1.1";
-      sha256  = "0k73vv14vnjl5qm33w54s5zzi0mmk1kn2zs3qkfq71aqi9ml7d14";
+      repo    = "terraform-provider-auth0";
+      rev     = "v0.8.1";
+      version = "0.8.1";
+      sha256  = "0hfmbw76p99xa9jz2sjss56p4wzqqhnf9l9gqgyamywfrdd2bn57";
+    };
+  aviatrix =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-aviatrix";
+      rev     = "v2.12.0";
+      version = "2.12.0";
+      sha256  = "01n3cqb5k8gd0cll3nqbdmnx3mi0scm57j0xpzhxnif14kpj15g6";
+    };
+  avi =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-avi";
+      rev     = "v0.2.1";
+      version = "0.2.1";
+      sha256  = "1pyknx5maq1qxm4i2y69iz9c2ym3q3n0fd4hbwxcl83n39cb5iy6";
     };
   aws =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-aws";
-      rev     = "v2.45.0";
-      version = "2.45.0";
-      sha256  = "0416f32wy88zyagnwcf2flh1rh7i118b9h5qn8fwrm3sv43p3blm";
+      rev     = "v2.55.0";
+      version = "2.55.0";
+      sha256  = "0pxmwdy5cin0navva1nf3l02yrqqbg01xcq3hf8w0ch8fgr8mr25";
     };
   azuread =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-azuread";
-      rev     = "v0.7.0";
-      version = "0.7.0";
-      sha256  = "1a7w31dvjz5498445ia4m5gd1js3k7ghz6qqfq51f2n86iafs0xq";
+      rev     = "v0.8.0";
+      version = "0.8.0";
+      sha256  = "0vljhjbizxh5s8f2ki7yn6hzf5xbn5swhxmq9wpxmg7jw5z0k6ha";
     };
   azurerm =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-azurerm";
-      rev     = "v1.41.0";
-      version = "1.41.0";
-      sha256  = "0ma291m9d452wavjr3lgyik01r8napmwz91bbnbfzp1j48hhqc4h";
+      rev     = "v2.3.0";
+      version = "2.3.0";
+      sha256  = "195r6l0ddpjmmf947c1k5v0vdscnhsg2ilp6x7pna418pnx84y2d";
     };
   azurestack =
     {
@@ -72,21 +104,29 @@
       version = "0.9.0";
       sha256  = "1msm7jwzry0vmas3l68h6p0migrsm6d18zpxcncv197m8xbvg324";
     };
+  baiducloud =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-baiducloud";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "1va0b9vqfcv2nrqh8jwf80ylyl1x826jhb7h4ghnf18c144qm0i1";
+    };
   bigip =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-bigip";
-      rev     = "v1.1.1";
-      version = "1.1.1";
-      sha256  = "15rx25fbvdmgvg5n0qnq1hyfnr7l4nx8igdb4107g41fp73bxg32";
+      rev     = "v1.12";
+      version = "1.12";
+      sha256  = "0yjv0xldplx7jfld1izzc7i93bzwdqrjjzymq02isy2xyfh8by35";
     };
   bitbucket =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-bitbucket";
-      rev     = "v1.1.0";
-      version = "1.1.0";
-      sha256  = "06bjagbgpgfphwym015wl00wx6qf7lsdig0fhpxqaykvlkn3sg49";
+      rev     = "v1.2.0";
+      version = "1.2.0";
+      sha256  = "11n4wpvmaab164g6k077n9dbdbhd5lwl7pxpha5492ks468nd95b";
     };
   brightbox =
     {
@@ -96,6 +136,14 @@
       version = "1.2.0";
       sha256  = "0s1b2k58r2kmjrdqrkw2dlfpby79i81gml9rpa10y372bwq314zd";
     };
+  checkpoint =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-checkpoint";
+      rev     = "v1.0.1";
+      version = "1.0.1";
+      sha256  = "1z2m8lbnplcfaij1xnclyhl4zlchx6bmvrc2fr4hwfzc58m9v7ra";
+    };
   chef =
     {
       owner   = "terraform-providers";
@@ -104,13 +152,21 @@
       version = "0.2.0";
       sha256  = "0ihn4706fflmf0585w22l7arzxsa9biq4cgh8nlhlp5y0zy934ns";
     };
-  circonus =
+  cherryservers =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-circonus";
-      rev     = "v0.5.0";
-      version = "0.5.0";
-      sha256  = "0m6xbmgbismsmxnh79xb9p3mvy9aqdwvmsvifpxsbd73lki232mc";
+      repo    = "terraform-provider-cherryservers";
+      rev     = "v1.0.0";
+      version = "1.0.0";
+      sha256  = "1z6ai6q8aw38kiy8x13rp0dsvb4jk40cv8pk5c069q15m4jab8lh";
+    };
+  ciscoasa =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-ciscoasa";
+      rev     = "v1.2.0";
+      version = "1.2.0";
+      sha256  = "033pgy42qwjpmjyzylpml7sfzd6dvvybs56cid1f6sm4ykmxbal7";
     };
   clc =
     {
@@ -124,9 +180,9 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-cloudflare";
-      rev     = "v2.3.0";
-      version = "2.3.0";
-      sha256  = "031xb0g1g74gc44nadbgrfn59hzjr5q0s98lgxrglsdm5mfgzdfr";
+      rev     = "v2.5.0";
+      version = "2.5.0";
+      sha256  = "1dqxn2iwbidmfb0850sicwqh4yp6ynarkl36lnr8nqw9lasvqr5a";
     };
   cloudscale =
     {
@@ -156,25 +212,25 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-consul";
-      rev     = "v2.6.1";
-      version = "2.6.1";
-      sha256  = "17lgfanz3by7wfrgqbwbsbxs46mrr8a1iyqkj38qc8xg0m6pg97v";
+      rev     = "v2.7.0";
+      version = "2.7.0";
+      sha256  = "11c54waq7w34l79ak4kizjkmh8zjca5ygh9yib691hdmxsx2cifj";
     };
   datadog =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-datadog";
-      rev     = "v2.6.0";
-      version = "2.6.0";
-      sha256  = "05ijf01sxdxrxc3ii68ha8b6x8pz025kfa51i91q42ldhf3kqhsz";
+      rev     = "v2.7.0";
+      version = "2.7.0";
+      sha256  = "0cq11cjcm2nlszqhsrj425mk8dp0h5ljrrn7jplrbffp8g6wvadd";
     };
   digitalocean =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-digitalocean";
-      rev     = "v1.12.0";
-      version = "1.12.0";
-      sha256  = "137p8q30pv28h5gfqag0i44dxbc1dbq239gnzbb4hkzgsqgrb9gp";
+      rev     = "v1.15.1";
+      version = "1.15.1";
+      sha256  = "0nld6lgz5vy8n4s0y0wpssrslp866rha2znli6pd5sw1nvi6yg0z";
     };
   dme =
     {
@@ -184,29 +240,37 @@
       version = "0.1.0";
       sha256  = "1ipqw1sbx0i9rhxawsysrqxvf10z8ra2y86xwd4iz0f12x9drblv";
     };
-  dns =
+  dnsimple =
     {
       owner   = "terraform-providers";
+      repo    = "terraform-provider-dnsimple";
+      rev     = "v0.3.0";
+      version = "0.3.0";
+      sha256  = "1m38whc6jx5mccaisnbnkawwlz1bxvy991rqy6h9xb10zyvqar62";
+    };
+  dns =
+    {
+      owner   = "hashicorp";
       repo    = "terraform-provider-dns";
       rev     = "v2.2.0";
       version = "2.2.0";
       sha256  = "11xdxj6hfclaq9glbh14nihmrsk220crm9ld8bdv77w0bppmrrch";
     };
-  dnsimple =
+  docker =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-dnsimple";
-      rev     = "v0.2.0";
-      version = "0.2.0";
-      sha256  = "0jj82fffqaz7gramj5d4avx7vka6w190yz4r9q7628qh8ih2pfhz";
+      repo    = "terraform-provider-docker";
+      rev     = "v2.7.0";
+      version = "2.7.0";
+      sha256  = "0pl515xjnic7mhfvqbml1z1win5mrhjdqb84jhd5n09j39lb24gx";
     };
-  docker =
+  dome9 =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-docker";
-      rev     = "v2.6.0";
-      version = "2.6.0";
-      sha256  = "12qq7m75yxfczik78klqaimrzhp70m2vk5q0h3v8b2dwvvynj0dg";
+      repo    = "terraform-provider-dome9";
+      rev     = "v1.17.0";
+      version = "1.17.0";
+      sha256  = "123phc71rnb25lv9glybadhmr3pdsrbzl7xm6mj8j213a78qdmn5";
     };
   dyn =
     {
@@ -216,9 +280,17 @@
       version = "1.2.0";
       sha256  = "1a3kxmbib2y0nl7gnxknbhsflj5kfknxnm3gjxxrb2h5d2kvqy48";
     };
-  external =
+  exoscale =
     {
       owner   = "terraform-providers";
+      repo    = "terraform-provider-exoscale";
+      rev     = "v0.16.1";
+      version = "0.16.1";
+      sha256  = "0gs39nx12ws0ikal9zyqkyfiljbxbw0pj7llj9xsq96s7crvy6xr";
+    };
+  external =
+    {
+      owner   = "hashicorp";
       repo    = "terraform-provider-external";
       rev     = "v1.2.0";
       version = "1.2.0";
@@ -228,25 +300,41 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-fastly";
-      rev     = "v0.12.1";
-      version = "0.12.1";
-      sha256  = "1bczp7rdbpmycbky9ijirfix2capw0hjai4c7w5hmm4wda5spwb1";
+      rev     = "v0.13.0";
+      version = "0.13.0";
+      sha256  = "0mcjmk21fil4q98p8v3qln7s2fqbdkjv1pvba0cf9v9d101dhhi9";
     };
   flexibleengine =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-flexibleengine";
-      rev     = "v1.10.0";
-      version = "1.10.0";
-      sha256  = "1ys1dd7knfk3hic6ph4gi7qsf75s2m5mxkil16p3f9ywvfxpzq8w";
+      rev     = "v1.11.1";
+      version = "1.11.1";
+      sha256  = "12kgnq2ydwi2n29y0dc7r251zrnq8kkskiq8p5ypsrm23j3jm6dw";
+    };
+  fortios =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-fortios";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "0m006ah351f2ih7zvd3pnpga4d8mh42i4m8af4wflhvyzkw50xnf";
+    };
+  genymotion =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-genymotion";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "02jpr3cm7rrf810c69sr6lcxzvxpnf7icc5z80gnvg67wwfg4ph4";
     };
   github =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-github";
-      rev     = "v2.3.0";
-      version = "2.3.0";
-      sha256  = "02fd6rq25ms9lpjqn4n1wy13i2mnl9lvczpgjqlz69yj2aiwyw34";
+      rev     = "v2.5.1";
+      version = "2.5.1";
+      sha256  = "1lqnwq5gsz34n6zzwajxrh0i1cbyicl4zxakr4fch7makri2fqwg";
     };
   gitlab =
     {
@@ -256,21 +344,21 @@
       version = "2.5.0";
       sha256  = "1g7girhjks6p7rcs82p2zd8clp6kdfn6d1synlmfwiw6d3496fvf";
     };
-  google =
+  google-beta =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-google";
-      rev     = "v3.5.0";
-      version = "3.5.0";
-      sha256  = "09mlic67940bnq5f8a7magn27k2jm8hvq3z0zh2cv6a9gdpg821i";
+      repo    = "terraform-provider-google-beta";
+      rev     = "v3.15.0";
+      version = "3.15.0";
+      sha256  = "1xncw82y48dcc464v2gzfmr94l3kgh9x2rlmpmmy6g4mihiwh38b";
     };
-  google-beta =
+  google =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-google-beta";
-      rev     = "v3.5.0";
-      version = "3.5.0";
-      sha256  = "1qkfvvidvb2j76x095vprj2vm272lig38a8rbxsir2kkvkmnzv5l";
+      repo    = "terraform-provider-google";
+      rev     = "v3.15.0";
+      version = "3.15.0";
+      sha256  = "0vw7sndy441xn34kiv2k9hq9p9g649amh7bk91rf0f5p8cmyll1c";
     };
   grafana =
     {
@@ -280,61 +368,77 @@
       version = "1.5.0";
       sha256  = "0zy3bqgpxymp2zygaxzllk1ysdankwxa1sy1djfgr4fs2nlggkwi";
     };
+  gridscale =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-gridscale";
+      rev     = "v1.5.0";
+      version = "1.5.0";
+      sha256  = "05nzia9sa555k07gkhyyckdgn9n6a50w8l3id69rjq1jjh0pngd7";
+    };
   hcloud =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-hcloud";
-      rev     = "v1.15.0";
-      version = "1.15.0";
-      sha256  = "0l554mf6s248j0453b4r5pafshcvhn2smk4pp23y9kq5g1xd0xmd";
+      rev     = "v1.16.0";
+      version = "1.16.0";
+      sha256  = "09v2bg4ffyh4ibz449dygxgd7mvjgh4b2r242l3cwi7pzn66imrz";
     };
   hedvig =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-hedvig";
-      rev     = "v1.0.5";
-      version = "1.0.5";
-      sha256  = "0dic4kqjwi3s8pss1pmgixnr7xi503gl5i7pcx66fam5y5ar92v5";
+      rev     = "v1.1.1";
+      version = "1.1.1";
+      sha256  = "1gd26jm9frn52hy2vm5sv003lbai5sjgdign6akhjmw5sdsmfr05";
     };
   helm =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-helm";
-      rev     = "v0.10.4";
-      version = "0.10.4";
-      sha256  = "0xl0wgh1j6yhymadqvlj21qddxfzaxk3d5wpzskfmhfk732795rc";
+      rev     = "v1.1.1";
+      version = "1.1.1";
+      sha256  = "0sna0xaibdh1aw3lxs1r2hidw95lxkpm4fqdw0hzmdqxwdmg4b40";
     };
   heroku =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-heroku";
-      rev     = "v2.2.1";
-      version = "2.2.1";
-      sha256  = "145kfm4asca0ksprb076mjdhs5ahrlrad8cqz8spxra5fa3j46sq";
+      rev     = "v2.3.0";
+      version = "2.3.0";
+      sha256  = "1lv3l54fw6rgj2ixkz2dvaf3djj3slhrm0nlbza5c7zjb945igfq";
     };
   http =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-http";
-      rev     = "v1.1.1";
-      version = "1.1.1";
-      sha256  = "0ah4wi9gm5m7z0wyy6vn3baz2iw2sq7ah7q0lb9srwr887aai3x0";
+      rev     = "v1.2.0";
+      version = "1.2.0";
+      sha256  = "0q8ichbqrq62q1j0rc7sdz1jzfwg2l9v4ac9jqf6y485dblhmwqd";
+    };
+  huaweicloudstack =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-huaweicloudstack";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "1zzf7jbvdlccfbb4cmw2k3mlfj4hh0lv59zahq2zy8afiajsb68i";
     };
   huaweicloud =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-huaweicloud";
-      rev     = "v1.12.0";
-      version = "1.12.0";
-      sha256  = "1wcr1d9y6bnwjh6b0a49i566wyn0d8bjnxnpgmd4s6wmr9sc4l0b";
+      rev     = "v1.13.0";
+      version = "1.13.0";
+      sha256  = "1caix3lycqnd856z6c3zp9mmq3vr7rblwhhbkwn4rrcld8sv285j";
     };
   icinga2 =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-icinga2";
-      rev     = "v0.2.0";
-      version = "0.2.0";
-      sha256  = "02ladn2w75k35vn8llj3zh9hbpnnnvpm47c9f29zshfs04acwbq0";
+      rev     = "v0.3.0";
+      version = "0.3.0";
+      sha256  = "0xwjxb84glhp9viqykziwanj696w2prq4r7k0565k0w3qiaz440v";
     };
   ignition =
     {
@@ -344,6 +448,14 @@
       version = "1.2.1";
       sha256  = "0wd29iw0a5w7ykgs9m1mmi0bw5z9dl4z640qyz64x8rlh5hl1wql";
     };
+  incapsula =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-incapsula";
+      rev     = "v2.1.0";
+      version = "2.1.0";
+      sha256  = "12zw2m7j52rszfawywbiv9rgv976h1w6bp98012qn45d4ap2kvzy";
+    };
   influxdb =
     {
       owner   = "terraform-providers";
@@ -352,13 +464,29 @@
       version = "1.3.0";
       sha256  = "19af40g8hgz2rdz6523v0fs71ww7qdlf2mh5j9vb7pfzriqwa5k9";
     };
+  jdcloud =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-jdcloud";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "04vz0m3z9rfw2hp0h3jhn625r2v37b319krznvhqylqzksv39dzf";
+    };
   kubernetes =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-kubernetes";
-      rev     = "v1.10.0";
-      version = "1.10.0";
-      sha256  = "04hd9n9jm72fi81cmdz0yf374fg52r8yinsxy0ag29rd3r2l1k81";
+      rev     = "v1.11.1";
+      version = "1.11.1";
+      sha256  = "13m0g52i2z4s58grk22rv0yqbrfszfbxxhwisb5mi7cma4cp7506";
+    };
+  launchdarkly =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-launchdarkly";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "1gj0srv8shn6qg109y1g42dx8dybkp3qrjn412bvs6f063ggk0zs";
     };
   librato =
     {
@@ -372,13 +500,13 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-linode";
-      rev     = "v1.9.1";
-      version = "1.9.1";
-      sha256  = "10f7nij91fhgf1808r6rv3l13nz7p37mcln5p3nfvhsxskss3vxn";
+      rev     = "v1.9.2";
+      version = "1.9.2";
+      sha256  = "1nrk8fi0fwkcm4csrppjwv7vd2ilpbj01dywak696nj8b15w176q";
     };
   local =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-local";
       rev     = "v1.4.0";
       version = "1.4.0";
@@ -396,9 +524,9 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-logicmonitor";
-      rev     = "v1.2.1";
-      version = "1.2.1";
-      sha256  = "1fcv5g92l6xr4x69h9rg48zazjr99wrz9mkmr122fyq9s7kdd98y";
+      rev     = "v1.3.0";
+      version = "1.3.0";
+      sha256  = "00d8qx95cxaif636dyh935nv9nn6lmb1ybxy7n4myy9g80y50ap1";
     };
   mailgun =
     {
@@ -408,6 +536,30 @@
       version = "0.4.1";
       sha256  = "1l76pg4hmww9zg2n4rkhm5dwjh42fxri6d41ih1bf670krkxwsmz";
     };
+  matchbox =
+    {
+      owner   = "poseidon";
+      repo    = "terraform-provider-matchbox";
+      rev     = "v0.3.0";
+      version = "0.3.0";
+      sha256  = "1nq7k8qa7rv8xyryjigwpwcwvj1sw85c4j46rkfdv70b6js25jz3";
+    };
+  metalcloud =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-metalcloud";
+      rev     = "v2.2.0";
+      version = "2.2.0";
+      sha256  = "0xii9gk96srzi9y4pbvlx2cvwypll4igvk89f9qrg18qrw72ags3";
+    };
+  mongodbatlas =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-mongodbatlas";
+      rev     = "v0.4.2";
+      version = "0.4.2";
+      sha256  = "0cb8dh7bwz9yzyhz8v9j6ksi4dgmmz8d1qpm7234rj36ccirnjmz";
+    };
   mysql =
     {
       owner   = "terraform-providers";
@@ -416,49 +568,65 @@
       version = "1.9.0";
       sha256  = "14gxxki3jhncv3s2x828ns2vgmf2xxzigdyp9b54mbkw5rnv1k2g";
     };
+  ncloud =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-ncloud";
+      rev     = "v1.2.0";
+      version = "1.2.0";
+      sha256  = "1h2fr0ss58dr3ypqj6kw90iyji6s83sz2i85vhs5z2adjbk7h8va";
+    };
   netlify =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-netlify";
-      rev     = "v0.3.0";
-      version = "0.3.0";
-      sha256  = "0mmbli6d3fbpyvvdfsg32f1w83g8ga3x21b36rgmx3mn156r7yij";
+      rev     = "v0.4.0";
+      version = "0.4.0";
+      sha256  = "07xds84k2vgpvn2cy3id7hmzg57sz2603zs4msn3ysxmi28lmqyg";
     };
   newrelic =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-newrelic";
-      rev     = "v1.12.1";
-      version = "1.12.1";
-      sha256  = "17xdwhiyzfjxirvjwwl5jnan84i3zd930zch8l4jx04946vjzsc5";
+      rev     = "v1.16.0";
+      version = "1.16.0";
+      sha256  = "0ddfffyrw28syg0y2q9j7xh4k2sjb8l40167rwgz19w39p1caffv";
+    };
+  nixos =
+    {
+      owner   = "tweag";
+      repo    = "terraform-provider-nixos";
+      rev     = "v0.0.1";
+      version = "0.0.1";
+      sha256  = "00vz6qjq1pk39iqg4356b8g3c6slla9jifkv2knk46gc9q93q0lf";
     };
   nomad =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-nomad";
-      rev     = "v1.4.2";
-      version = "1.4.2";
-      sha256  = "0h0snkzqdi4g5lp78f5pq98x6556ldwgkg9p9jkmrg04y7928w5v";
+      rev     = "v1.4.4";
+      version = "1.4.4";
+      sha256  = "05029s8h8vx7pl0y3d9cd5nlww3483caxhwkbrmk0vs7zdgxk8ns";
     };
   ns1 =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-ns1";
-      rev     = "v1.6.4";
-      version = "1.6.4";
-      sha256  = "08wg5qlqj7id5gfwxckjyx1ypfkiq919vjzq8qsdayg9sr9dpf5i";
+      rev     = "v1.8.0";
+      version = "1.8.0";
+      sha256  = "1h1pqrj11wdi0fnrrh2mkwahi59jl2vd8affy4acx7kny4n92s49";
     };
   nsxt =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-nsxt";
-      rev     = "v1.1.2";
-      version = "1.1.2";
-      sha256  = "1hnxivad7371j363sp3460mfzl5alb3dhxsbp0qwfl5mzvriwrbl";
+      rev     = "v2.0.0";
+      version = "2.0.0";
+      sha256  = "0fka793r0c06sz8vlxk0z7vbm6kab5xzk39r5pznkq34004r17sl";
     };
   null =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-null";
       rev     = "v2.1.2";
       version = "2.1.2";
@@ -476,9 +644,25 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-oci";
-      rev     = "v3.59.0-rc1";
-      version = "3.59.0-rc1";
-      sha256  = "1pgl95rmxk9h9whbkfgpzpbvvkhnm3223flqk73w673ylgrxss49";
+      rev     = "v3.69.0";
+      version = "3.69.0";
+      sha256  = "17vndv6bpa9ajs7llnf64bb482b15virbv311d3ds5lrva4vvrv8";
+    };
+  oktaasa =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-oktaasa";
+      rev     = "v1.0.0";
+      version = "1.0.0";
+      sha256  = "093d5r8dz8gryk8qp5var2qrrgkvs1gwgw3zqpxry9xc5cpn30w0";
+    };
+  okta =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-okta";
+      rev     = "v3.1.1";
+      version = "3.1.1";
+      sha256  = "1hky6hqrfyl2gj1lykb7gazj9awjgsxhc028558whm5rysx2wpsr";
     };
   oneandone =
     {
@@ -496,29 +680,37 @@
       version = "1.3.7";
       sha256  = "01g09w8mqfp1d8phplsdj0vz63q5bgq9fqwy2kp4vrnwb70dq52w";
     };
+  opennebula =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-opennebula";
+      rev     = "v0.1.1";
+      version = "0.1.1";
+      sha256  = "048cqd89fz5xpji1w8ylg75nbzzcx1c5n89y1k0ra8d3g2208yb2";
+    };
   openstack =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-openstack";
-      rev     = "v1.25.0";
-      version = "1.25.0";
-      sha256  = "1yqc7nhmzlcq48csn23ma3fv6yb6cmkqqrxv63jjg6bxb7nyyqxd";
+      rev     = "v1.26.0";
+      version = "1.26.0";
+      sha256  = "1vsvzs8112vbi0x99yg6niw0wr55p09x7cg85qwjd0r42gpfdfq2";
     };
   opentelekomcloud =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-opentelekomcloud";
-      rev     = "v1.15.0";
-      version = "1.15.0";
-      sha256  = "080lzs40m3vny5bmg4vhsy7qz884c44ysmh325hi6s3v76dv4jxg";
+      rev     = "v1.16.0";
+      version = "1.16.0";
+      sha256  = "1bxkh8qnm1mw37wi4rxf29q8lksp864124nwbyn14fwb4h6m1yj4";
     };
   opsgenie =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-opsgenie";
-      rev     = "v0.2.7";
-      version = "0.2.7";
-      sha256  = "0yylf5iv1dba9naqys65l5whym3q0bwpn98dwxr0lyj0skr8nz7r";
+      rev     = "v0.2.9";
+      version = "0.2.9";
+      sha256  = "13y6awnm9j5qzq1bcmhg7ngzvx43h2dw9wmzdfi1xcpmv1ldvwpi";
     };
   oraclepaas =
     {
@@ -532,25 +724,25 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-ovh";
-      rev     = "v0.6.0";
-      version = "0.6.0";
-      sha256  = "0hj029q9j2751hnay0rh0c8yxgmv2wd6xjwi12gkj6k6rmpgqfdh";
+      rev     = "v0.7.0";
+      version = "0.7.0";
+      sha256  = "167msjsl8xh8zy7lrxvkq2h98xpvxpsjzlil8lcxqmz8qq8a0q5f";
     };
   packet =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-packet";
-      rev     = "v2.7.3";
-      version = "2.7.3";
-      sha256  = "1dd9fa416crh5y61qyaj2l0jhn1kh0ndkzqdw3lsxjqdhcqppbns";
+      rev     = "v2.8.0";
+      version = "2.8.0";
+      sha256  = "1qnjla347hll0fav0ngnifblk6slbmh1klnm7k9jv327jmv92hz5";
     };
   pagerduty =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-pagerduty";
-      rev     = "v1.4.1";
-      version = "1.4.1";
-      sha256  = "0dmafnlziyczad907isjqzsn1fyjzc8pdigp3m6114bbnca0ry5k";
+      rev     = "v1.5.1";
+      version = "1.5.1";
+      sha256  = "12n12sx1qxckqklcaphzr0j9bcwzrl6p8qzdc3d2csiqccqrpdas";
     };
   panos =
     {
@@ -560,13 +752,21 @@
       version = "1.6.2";
       sha256  = "1qy6jynv61zhvq16s8jkwjhxz7r65cmk9k37ahh07pbhdx707mz5";
     };
+  pass =
+    {
+      owner   = "camptocamp";
+      repo    = "terraform-provider-pass";
+      rev     = "1.2.1";
+      version = "1.2.1";
+      sha256  = "1hf5mvgz5ycp7shiy8px205d9kwswfjmclg7mlh9a55bkraffahk";
+    };
   postgresql =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-postgresql";
-      rev     = "v1.4.0";
-      version = "1.4.0";
-      sha256  = "162j6dyrbc9r4ipj6igj64wm6r65l4vb0dlwczfhlksix3qzr3kx";
+      rev     = "v1.5.0";
+      version = "1.5.0";
+      sha256  = "1c9vn1jpfan04iidzn030q21bz3xabrd5pdhlbblblf558ykn4q0";
     };
   powerdns =
     {
@@ -584,13 +784,29 @@
       version = "1.4.4";
       sha256  = "0pzcl3pdhaykihvv1v38zrv607mydchvkzrzhwcakgmdkp3vq54i";
     };
+  pureport =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-pureport";
+      rev     = "v1.1.8";
+      version = "1.1.8";
+      sha256  = "02vmqwjz5m5hj4zghwicjp27dxvc4qsiwj4gjsi66w6djdqnh4h1";
+    };
   rabbitmq =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-rabbitmq";
-      rev     = "v1.2.0";
-      version = "1.2.0";
-      sha256  = "1lhra8dvfyi6gn4s8mjd3lkkj6bz8y7xjhw1ki2kl5vpfw79d4l9";
+      rev     = "v1.3.0";
+      version = "1.3.0";
+      sha256  = "1adkbfm0p7a9i1i53bdmb34g5871rklgqkx7kzmwmk4fvv89n6g8";
+    };
+  rancher2 =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-rancher2";
+      rev     = "v1.8.1";
+      version = "1.8.1";
+      sha256  = "15pvz1sd1x932yxdp7d679vax3dw56bfhp3422vxqsgmdgscwg1s";
     };
   rancher =
     {
@@ -602,7 +818,7 @@
     };
   random =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-random";
       rev     = "v2.2.1";
       version = "2.2.1";
@@ -636,25 +852,49 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-scaleway";
-      rev     = "v1.13.0";
-      version = "1.13.0";
-      sha256  = "085wv59cfsaac2373gn783lknzp4qmgnrgi2yl1g27znm4b940i7";
+      rev     = "v1.14.0";
+      version = "1.14.0";
+      sha256  = "0j428pinwyyldg1jhlkad32213z98q3891yv906d6n7jg2bk5m6a";
+    };
+  secret =
+    {
+      owner   = "tweag";
+      repo    = "terraform-provider-secret";
+      rev     = "v1.1.0";
+      version = "1.1.0";
+      sha256  = "09gv0fpsrxzgna0xrhrdk8d4va9s0gvdbz596r306qxb4mip4w3r";
+    };
+  segment =
+    {
+      owner   = "ajbosco";
+      repo    = "terraform-provider-segment";
+      rev     = "v0.2.0";
+      version = "0.2.0";
+      sha256  = "0ic5b9djhnb1bs2bz3zdprgy3r55dng09xgc4d9l9fyp85g2amaz";
     };
   selectel =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-selectel";
-      rev     = "v3.0.0";
-      version = "3.0.0";
-      sha256  = "0fr97j85inaqvdqmlfk3xcq73zvncn001nsd03pp2ws30qqa8p7r";
+      rev     = "v3.1.0";
+      version = "3.1.0";
+      sha256  = "1ajhnjlx4bf91z04cp8245j3h2h9c30ajf934zr29jvwli0y3piw";
+    };
+  signalfx =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-signalfx";
+      rev     = "v4.18.6";
+      version = "4.18.6";
+      sha256  = "1xjajkvkcksz0dnawjb3hv14ysp140g0vdj5warshafz8hjbys17";
     };
   skytap =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-skytap";
-      rev     = "v0.13.0";
-      version = "0.13.0";
-      sha256  = "1why3ipi5a7whf18z87f97lbzdj020hfp8gxpgzl0nwpzpwkhdz3";
+      rev     = "v0.14.0";
+      version = "0.14.0";
+      sha256  = "01cscykfw5qilf5rlvh7y2l3bqbv8f180ssqw7zqzyr9p4m6511l";
     };
   softlayer =
     {
@@ -668,9 +908,17 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-spotinst";
-      rev     = "v1.13.4";
-      version = "1.13.4";
-      sha256  = "063lhm065y6qh9b2k11qjnqyfg5zrx6wa3bqrm7d1dqcha1i6d9f";
+      rev     = "v1.14.3";
+      version = "1.14.3";
+      sha256  = "06brm0bvr13f31km55y8bp4z1xj3imfi11k7l5nirjp73cbvcpmg";
+    };
+  stackpath =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-stackpath";
+      rev     = "v1.3.0";
+      version = "1.3.0";
+      sha256  = "0gsr903v6fngaxm2r5h53g9yc3jpx2zccqq07rhzm9jbsfb6rlzn";
     };
   statuscake =
     {
@@ -690,7 +938,7 @@
     };
   template =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-template";
       rev     = "v2.1.2";
       version = "2.1.2";
@@ -700,9 +948,9 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-tencentcloud";
-      rev     = "v1.30.1";
-      version = "1.30.1";
-      sha256  = "0gy7c3w217yzysv9hyrsw3q452g0iba9z72iijyfwcqm79gw3208";
+      rev     = "v1.30.7";
+      version = "1.30.7";
+      sha256  = "0d7byng63sxbgn8f5r92lkcaqvq3r0plm619h63f47h6z6z8xarc";
     };
   terraform =
     {
@@ -716,13 +964,13 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-tfe";
-      rev     = "v0.11.4";
-      version = "0.11.4";
-      sha256  = "0ls5736cwshj3z1wgpbcma6bml9p45k5g7hm530bmqdxsamxfj1m";
+      rev     = "v0.15.1";
+      version = "0.15.1";
+      sha256  = "0372yjifsr4kvbc36hzhzf6ajlg6wy1r2x94p67m7rgr2fw061n2";
     };
   tls =
     {
-      owner   = "terraform-providers";
+      owner   = "hashicorp";
       repo    = "terraform-provider-tls";
       rev     = "v2.1.1";
       version = "2.1.1";
@@ -740,9 +988,9 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-ucloud";
-      rev     = "v1.15.1";
-      version = "1.15.1";
-      sha256  = "1djlpjig8y6x149r6f21x7y3p49fjvrxx7pbs2fpsyv437zff9vj";
+      rev     = "v1.17.0";
+      version = "1.17.0";
+      sha256  = "0dpy3bkrm20sk4zpkikas5c8ygl0zf9v6cnd34iblw1m41f44n7v";
     };
   ultradns =
     {
@@ -756,57 +1004,57 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-vault";
-      rev     = "v2.7.1";
-      version = "2.7.1";
-      sha256  = "1lvpgdyi8qk1bvz9i1wml22mmm5ga8kf413xmpj966wvxqsgw6z5";
+      rev     = "v2.9.0";
+      version = "2.9.0";
+      sha256  = "0a1jkwxz45qcbnd91im0xz948k197zal78n6y45bwcbqnil32yiy";
     };
   vcd =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-vcd";
-      rev     = "v2.6.0";
-      version = "2.6.0";
-      sha256  = "0f7c5l05h0xcq51yaqpx1v3lg4wmysszayysvcspipiwzrhx5cmg";
+      rev     = "v2.7.0";
+      version = "2.7.0";
+      sha256  = "0bh8hqxpy6722q1v9cnpvn8fqwh5llzz1aavrbsib5brgjc8vqmy";
     };
-  vsphere =
+  venafi =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-vsphere";
-      rev     = "v1.15.0";
-      version = "1.15.0";
-      sha256  = "1hxzxkqphm00gp0d1s32xn0knxgf5vg05nq68ba3q27wpx4ipanl";
+      repo    = "terraform-provider-venafi";
+      rev     = "v0.9.2";
+      version = "0.9.2";
+      sha256  = "06nk5c7lxs8fc04sz97lc3yk1zk1b9phkzw6fj9fnmpgaak87bj9";
     };
-  yandex =
+  vra7 =
     {
       owner   = "terraform-providers";
-      repo    = "terraform-provider-yandex";
-      rev     = "v0.28.0";
-      version = "0.28.0";
-      sha256  = "1ml96cqjvxzapb76fpblgl6ak15idv3jj5wcs9ix0dr6i2fdfwpc";
+      repo    = "terraform-provider-vra7";
+      rev     = "v0.5.0";
+      version = "0.5.0";
+      sha256  = "123yskwgzp771nx03sg49vwi5ph3zf2ajf06s7msj0blvz6wan4v";
     };
-  segment =
+  vsphere =
     {
-      owner   = "ajbosco";
-      repo    = "terraform-provider-segment";
-      rev     = "v0.2.0";
-      version = "0.2.0";
-      sha256  = "0ic5b9djhnb1bs2bz3zdprgy3r55dng09xgc4d9l9fyp85g2amaz";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-vsphere";
+      rev     = "v1.17.0";
+      version = "1.17.0";
+      sha256  = "16fglpfy8grlifaa1d1ymvjys7wh39m6py8h45g1xgs1jyfkz00s";
     };
-  pass =
+  vthunder =
     {
-      owner   = "camptocamp";
-      repo    = "terraform-provider-pass";
-      rev     = "1.2.1";
-      version = "1.2.1";
-      sha256  = "1hf5mvgz5ycp7shiy8px205d9kwswfjmclg7mlh9a55bkraffahk";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-vthunder";
+      rev     = "v0.1.0";
+      version = "0.1.0";
+      sha256  = "1mw55g0kjgp300p6y4s8wc91fgfxjm0cbszfzgbc8ca4b00j8cc2";
     };
-  matchbox =
+  vultr =
     {
-      owner   = "poseidon";
-      repo    = "terraform-provider-matchbox";
-      rev     = "v0.3.0";
-      version = "0.3.0";
-      sha256  = "1nq7k8qa7rv8xyryjigwpwcwvj1sw85c4j46rkfdv70b6js25jz3";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-vultr";
+      rev     = "v1.1.4";
+      version = "1.1.4";
+      sha256  = "14anp7b759yyh78ickas52amads2lmwg85h8i0ikln7qhrhl42d7";
     };
   wavefront =
     {
@@ -816,20 +1064,12 @@
       version = "2.1.1";
       sha256  = "0cbs74kd820i8f13a9jfbwh2y5zmmx3c2mp07qy7m0xx3m78jksn";
     };
-  nixos =
-    {
-      owner   = "tweag";
-      repo    = "terraform-provider-nixos";
-      rev     = "v0.0.1";
-      version = "0.0.1";
-      sha256  = "00vz6qjq1pk39iqg4356b8g3c6slla9jifkv2knk46gc9q93q0lf";
-    };
-  secret =
+  yandex =
     {
-      owner   = "tweag";
-      repo    = "terraform-provider-secret";
-      rev     = "v1.1.0";
-      version = "1.1.0";
-      sha256  = "09gv0fpsrxzgna0xrhrdk8d4va9s0gvdbz596r306qxb4mip4w3r";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-yandex";
+      rev     = "v0.35.0";
+      version = "0.35.0";
+      sha256  = "10zj5s0zdgh54rlczyvkq292v9xj1ivvn2k9ml65l6j3h0axlgxv";
     };
 }
diff --git a/pkgs/applications/networking/cluster/terraform-providers/default.nix b/pkgs/applications/networking/cluster/terraform-providers/default.nix
index 5112277a8c4..c3c44160c1b 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-providers/default.nix
@@ -2,8 +2,6 @@
 , buildGoPackage
 , fetchFromGitHub
 , callPackage
-, buildGo112Module
-, Security
 }:
 let
   list = import ./data.nix;
@@ -17,24 +15,126 @@ let
       src = fetchFromGitHub {
         inherit owner repo rev sha256;
       };
-
-
       # Terraform allow checking the provider versions, but this breaks
       # if the versions are not provided via file paths.
       postBuild = "mv go/bin/${repo}{,_v${version}}";
     };
-in
-  {
-    elasticsearch = callPackage ./elasticsearch {
-      # Version 0.7.0 fails to build with go 1.13 due to dependencies:
-      #   verifying git.apache.org/thrift.git@v0.12.0/go.mod: git.apache.org/thrift.git@v0.12.0/go.mod: Get https://sum.golang.org/lookup/git.apache.org/thrift.git@v0.12.0: dial tcp: lookup sum.golang.org on [::1]:53: read udp [::1]:52968->[::1]:53: read: connection refused
-      #   verifying github.com/hashicorp/terraform@v0.12.0/go.mod: github.com/hashicorp/terraform@v0.12.0/go.mod: Get https://sum.golang.org/lookup/github.com/hashicorp/terraform@v0.12.0: dial tcp: lookup sum.golang.org on [::1]:53: read udp [::1]:52968->[::1]:53: read: connection refused
-      buildGoModule = buildGo112Module;
-      inherit Security;
-    };
+
+  # Google is now using the vendored go modules, which works a bit differently
+  # and is not 100% compatible with the pre-modules vendored folders.
+  #
+  # Instead of switching to goModules which requires a goModSha256, patch the
+  # goPackage derivation so it can install the top-level.
+  patchGoModVendor = drv:
+    drv.overrideAttrs (attrs: {
+      buildFlags = "-mod=vendor";
+
+      # override configurePhase to not move the source into GOPATH
+      configurePhase = ''
+        export GOPATH=$NIX_BUILD_TOP/go:$GOPATH
+        export GOCACHE=$TMPDIR/go-cache
+        export GO111MODULE=on
+      '';
+
+      # just build and install into $GOPATH/bin
+      buildPhase = ''
+        go install -mod=vendor -v -p 16 .
+      '';
+
+      # don't run the tests, they are broken in this setup
+      doCheck = false;
+    });
+
+  # These providers are managed with the ./update-all script
+  automated-providers = lib.mapAttrs (_: toDrv) list;
+
+  # These are the providers that don't fall in line with the default model
+  special-providers = {
+    # Override the google providers
+    google = patchGoModVendor automated-providers.google;
+    google-beta = patchGoModVendor automated-providers.google-beta;
+
+    # providers that were moved to the `hashicorp` organization,
+    # but haven't updated their references yet:
+
+    # https://github.com/hashicorp/terraform-provider-archive/pull/67
+    archive = automated-providers.archive.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-archive hashicorp/terraform-provider-archive
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-archive hashicorp/terraform-provider-archive
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-dns/pull/101
+    dns = automated-providers.dns.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-dns hashicorp/terraform-provider-dns
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-dns hashicorp/terraform-provider-dns
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-external/pull/41
+    external = automated-providers.external.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-external hashicorp/terraform-provider-external
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-external hashicorp/terraform-provider-external
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-http/pull/40
+    http = automated-providers.http.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-http hashicorp/terraform-provider-http
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-http hashicorp/terraform-provider-http
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-local/pull/40
+    local = automated-providers.local.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-local hashicorp/terraform-provider-local
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-local hashicorp/terraform-provider-local
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-null/pull/43
+    null = automated-providers.null.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-null hashicorp/terraform-provider-null
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-null hashicorp/terraform-provider-null
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-random/pull/107
+    random = automated-providers.random.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-random hashicorp/terraform-provider-random
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-random hashicorp/terraform-provider-random
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-template/pull/79
+    template = automated-providers.template.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-template hashicorp/terraform-provider-template
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-template hashicorp/terraform-provider-template
+      '';
+    });
+
+    # https://github.com/hashicorp/terraform-provider-tls/pull/71
+    tls = automated-providers.tls.overrideAttrs (attrs: {
+      prePatch = attrs.prePatch or "" + ''
+        substituteInPlace go.mod --replace terraform-providers/terraform-provider-tls hashicorp/terraform-provider-tls
+        substituteInPlace main.go --replace terraform-providers/terraform-provider-tls hashicorp/terraform-provider-tls
+      '';
+    });
+
+    elasticsearch = callPackage ./elasticsearch {};
     gandi = callPackage ./gandi {};
     ibm = callPackage ./ibm {};
     libvirt = callPackage ./libvirt {};
     lxd = callPackage ./lxd {};
     ansible = callPackage ./ansible {};
-  } // lib.mapAttrs (n: v: toDrv v) list
+  };
+in
+  automated-providers // special-providers
diff --git a/pkgs/applications/networking/cluster/terraform-providers/elasticsearch/default.nix b/pkgs/applications/networking/cluster/terraform-providers/elasticsearch/default.nix
index 2f13000c0cd..1aadbbc5ccd 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/elasticsearch/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-providers/elasticsearch/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ stdenv, fetchFromGitHub, buildGoModule }:
 buildGoModule rec {
   pname = "terraform-provider-elasticsearch";
   version = "0.7.0";
@@ -12,8 +12,6 @@ buildGoModule rec {
 
   modSha256 = "1xk21xswqwpv34j4ba4fj8lcbvfdd12x7rq1hrdyd21mdhmrhw0p";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   subPackages = [ "." ];
 
   # Terraform allow checking the provider versions, but this breaks
diff --git a/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix b/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix
index 40a6bb11c7d..c2014a4d7bf 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix
+++ b/pkgs/applications/networking/cluster/terraform-providers/libvirt/default.nix
@@ -30,7 +30,9 @@ buildGoPackage rec {
     sha256 = "1l2n97nj6g44n7bhnbjwmv36xi6754p4iq2qnpkdh39x4384a0zz";
   };
 
-  buildInputs = [ libvirt pkgconfig makeWrapper ];
+  nativeBuildInputs = [ pkgconfig makeWrapper ];
+
+  buildInputs = [ libvirt ];
 
   # mkisofs needed to create ISOs holding cloud-init data,
   # and wrapped to terraform via deecb4c1aab780047d79978c636eeb879dd68630
@@ -48,4 +50,3 @@ buildGoPackage rec {
     maintainers = with maintainers; [ mic92 ];
   };
 }
-
diff --git a/pkgs/applications/networking/cluster/terraform-providers/providers.txt b/pkgs/applications/networking/cluster/terraform-providers/providers.txt
deleted file mode 100644
index bdde6600678..00000000000
--- a/pkgs/applications/networking/cluster/terraform-providers/providers.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-# lines starting with a # are comments
-
-# The accepted format (double escape all grep expresssions):
-#  <organisation>         [grep-expression] [grep-v-expression]  - include all repositories in the organisation.
-#                                                                   grep-expression:   filter repo matching the expression
-#                                                                   grep-v-expression: filter repo not matching the expression
-#  <organisation>/<repo>                                         - include only the named repository.
-
-# include all terraform-providers
-terraform-providers terraform-provider- terraform-provider-\\(azure-classic\\|scaffolding\\)
-
-# include providers from individual repos
-ajbosco/terraform-provider-segment
-camptocamp/terraform-provider-pass
-poseidon/terraform-provider-matchbox
-spaceapegames/terraform-provider-wavefront
-tweag/terraform-provider-nixos
-tweag/terraform-provider-secret
diff --git a/pkgs/applications/networking/cluster/terraform-providers/update-all b/pkgs/applications/networking/cluster/terraform-providers/update-all
index 893a6b1c7d7..89ed5a94f2a 100755
--- a/pkgs/applications/networking/cluster/terraform-providers/update-all
+++ b/pkgs/applications/networking/cluster/terraform-providers/update-all
@@ -1,6 +1,7 @@
 #!/usr/bin/env nix-shell
-#! nix-shell -i bash -p bash coreutils curl jq nix
+#! nix-shell -i bash -p bash coreutils jq nix gitAndTools.hub
 # vim: ft=sh sw=2 et
+# shellcheck shell=bash
 #
 # This scripts scans the github terraform-providers repo for new releases,
 # generates the corresponding nix code and finally generates an index of
@@ -10,37 +11,53 @@ set -euo pipefail
 # the maximum number of attempts before giving up inside of GET and prefetch_github
 readonly maxAttempts=30
 
-GET() {
-  local url=$1
-  local retry=1
-  echo "fetching $url" >&2
-  while ! curl -#fL -u "$GITHUB_AUTH" "$url"; do
-    echo "The curl command has failed. Attempt $retry/${maxAttempts}" >&2
-    if [[ "${retry}" -eq "${maxAttempts}" ]]; then
-      exit 1
-    fi
-    retry=$(( retry + 1 ))
-    sleep 5
-  done
-}
-
-get_org_repos() {
+get_tf_providers_org() {
+  # returns all terraform providers in a given organization, and their the
+  # latest tags, in the format
+  # $org/$repo $rev
   local org=$1
-  local page=1
-  GET "https://api.github.com/orgs/$org/repos?per_page=100" | jq -r '.[].name'
+  hub api --paginate graphql -f query="
+    query(\$endCursor: String) {
+      repositoryOwner(login: \"${org}\") {
+        repositories(first: 100, after: \$endCursor) {
+          nodes {
+            nameWithOwner
+            name
+            refs(first: 1, refPrefix: \"refs/tags/\", orderBy: {field: TAG_COMMIT_DATE, direction: DESC}) {
+              nodes {
+                name
+              }
+            }
+          }
+          pageInfo {
+            hasNextPage
+            endCursor
+          }
+        }
+      }
+  }" | \
+  jq -r '.data.repositoryOwner.repositories.nodes[] | select(.name | startswith("terraform-provider-")) | select((.refs.nodes | length) > 0) | .nameWithOwner + " " + .refs.nodes[0].name'
+  # filter the result with jq:
+  # - repos need to start with `teraform-provider-`
+  # - they need to have at least one tag
+  # for each of the remaining repos, assemble a string $org/$repo $rev
 }
 
-get_repo_tags() {
+get_latest_repo_tag() {
+  # of a given repo and owner, retrieve the latest tag
   local owner=$1
   local repo=$2
-  GET "https://api.github.com/repos/$owner/$repo/git/refs/tags?per_page=100" | \
+  hub api --paginate "https://api.github.com/repos/$owner/$repo/git/refs/tags" | \
     jq -r '.[].ref' | \
     grep -v 'v\.' | \
     cut -d '/' -f 3- | \
-    sort --version-sort
+    sort --version-sort | \
+    tail -1
 }
 
 prefetch_github() {
+  # of a given owner, repo and rev, fetch the tarball and return the output of
+  # `nix-prefetch-url`
   local owner=$1
   local repo=$2
   local rev=$3
@@ -59,7 +76,7 @@ echo_entry() {
   local owner=$1
   local repo=$2
   local rev=$3
-  local version=$(echo $3 | sed 's/^v//')
+  local version=${rev#v}
   local sha256=$4
   cat <<EOF
 {
@@ -74,18 +91,18 @@ EOF
 
 indent() { sed 's/^/    /'; }
 
-add_repo() {
+add_provider() {
   org="${1}"
   repo="${2}"
+  rev="${3}"
 
-  echo "*** $repo ***"
+  echo "*** $org/$repo $rev ***"
   name=$(echo "$repo" | cut -d - -f 3-)
-  last_tag=$(get_repo_tags "$org" "$repo" | tail -1)
-  last_tag_sha256=$(prefetch_github "$org" "$repo" "$last_tag")
+  sha256=$(prefetch_github "$org" "$repo" "$rev")
 
   {
     echo "  $name ="
-    echo_entry "$org" "$repo" "$last_tag" "$last_tag_sha256" | indent
+    echo_entry "$org" "$repo" "$rev" "$sha256" | indent
   } >> data.nix
 }
 
@@ -93,50 +110,63 @@ add_repo() {
 
 cd "$(dirname "$0")"
 
-if [[ -z "${GITHUB_AUTH:-}" ]]; then
-  cat <<'HELP'
-Missing the GITHUB_AUTH env. This is required to work around the 60 request
-per hour rate-limit.
-
-Go to https://github.com/settings/tokens and create a new token with the
-"public_repo" scope.
-
-Then `export GITHUB_AUTH=<your user>:<your token>` and run this script again.
-HELP
-  exit 1
-fi
+# individual repos to fetch
+slugs=(
+  ajbosco/terraform-provider-segment
+  camptocamp/terraform-provider-pass
+  poseidon/terraform-provider-matchbox
+  spaceapegames/terraform-provider-wavefront
+  tweag/terraform-provider-nixos
+  tweag/terraform-provider-secret
+)
+
+# a list of providers to ignore
+blacklist=(
+  terraform-providers/terraform-provider-azure-classic
+  terraform-providers/terraform-provider-cidr
+  terraform-providers/terraform-provider-circonus
+  terraform-providers/terraform-provider-cloudinit
+  terraform-providers/terraform-provider-quorum
+  hashicorp/terraform-provider-time
+  terraform-providers/terraform-provider-vmc
+)
 
 cat <<HEADER > data.nix
 # Generated with ./update-all
 {
 HEADER
 
-while read line; do
-  IFS=' ' read -r -a fields <<< "$line"
-  if [[ "${#fields[@]}" -eq 0 ]]; then
-    continue
-  fi
-
-  if [[ "${fields[0]}" = *"/"* ]]; then
-    org="$(echo "${fields[0]}" | cut -d/ -f1)"
-    repo="$(echo "${fields[0]}" | cut -d/ -f2)"
-    add_repo "${org}" "${repo}"
-  else
-    org="${fields[0]}"
-    repos=$(get_org_repos "$org")
-    if [[ "${#fields[@]}" -ge 2 ]] && [[ -n "${fields[1]}" ]]; then
-      repos="$( echo "${repos[@]}" | grep "${fields[1]}" )"
-    fi
-    if [[ "${#fields[@]}" -eq 3 ]] && [[ -n "${fields[2]}" ]]; then
-      repos="$( echo "${repos[@]}" | grep -v "${fields[2]}" )"
-    fi
-    repos="$( echo "${repos[@]}" | sort )"
-
-    for repo in $repos; do
-      add_repo "$org" "$repo"
-    done
-  fi
-done < <(grep -v '^#\|^$' providers.txt)
+# assemble list of terraform providers
+providers=$(get_tf_providers_org "terraform-providers")
+providers=$(echo "$providers";get_tf_providers_org "hashicorp")
+
+# add terraform-providers from slugs
+for slug in "${slugs[@]}"; do
+  # retrieve latest tag
+  org=${slug%/*}
+  repo=${slug#*/}
+  rev=$(get_latest_repo_tag "$org" "$repo")
+
+  # add to list
+  providers=$(echo "$providers";echo "$org/$repo $rev")
+done
+
+# filter out all providers on the blacklist
+for repo in "${blacklist[@]}"; do
+  providers=$(echo "$providers" | grep -v "^${repo} ")
+done
+
+# sort results alphabetically by repo name
+providers=$(echo "$providers" | sort -t "/" --key=2)
+
+# render list
+IFS=$'\n'
+for provider in $providers; do
+  org=$(echo "$provider" | cut -d " " -f 1 | cut -d "/" -f1)
+  repo=$(echo "$provider" | cut -d " " -f 1 | cut -d "/" -f2)
+  rev=$(echo "$provider" | cut -d " " -f 2)
+  add_provider "${org}" "${repo}" "${rev}"
+done
 
 cat <<FOOTER >> data.nix
 }
diff --git a/pkgs/applications/networking/dnscontrol/default.nix b/pkgs/applications/networking/dnscontrol/default.nix
new file mode 100644
index 00000000000..3f0a83d015d
--- /dev/null
+++ b/pkgs/applications/networking/dnscontrol/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, buildGoPackage}:
+
+buildGoPackage rec {
+  pname = "dnscontrol";
+  version = "3.0.0";
+
+  goPackagePath = "github.com/StackExchange/dnscontrol";
+
+  goDeps = ./deps.nix;
+
+  src = fetchFromGitHub {
+    owner = "StackExchange";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1j8i4k7bqkqmi6dmc9fxfab49a7qigig72rlbga902lw336p6cc7";
+  };
+
+  postInstall = ''
+    rm $bin/bin/{build,convertzone,generate,validate}
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Synchronize your DNS to multiple providers from a simple DSL";
+    homepage = "https://stackexchange.github.io/dnscontrol/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ mmahut ];
+  };
+}
diff --git a/pkgs/applications/networking/dnscontrol/deps.nix b/pkgs/applications/networking/dnscontrol/deps.nix
new file mode 100644
index 00000000000..55cb5daa18f
--- /dev/null
+++ b/pkgs/applications/networking/dnscontrol/deps.nix
@@ -0,0 +1,1236 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "cloud.google.com/go";
+    fetch = {
+      type = "git";
+      url = "https://code.googlesource.com/gocloud";
+      rev = "335e9e09b93e";
+      sha256 = "1aiglr6d2369nf3s9ig1kc0nixsivcmh7p1fyzkcf6n6ql0p2zsm";
+    };
+  }
+  {
+    goPackagePath = "github.com/Azure/azure-sdk-for-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/Azure/azure-sdk-for-go";
+      rev = "v39.1.0";
+      sha256 = "1s0j7gh3d3p157py7v6525c6zs07hdiry97dhg4c8z7ww35wxhj7";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "v0.3.1";
+      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
+    };
+  }
+  {
+    goPackagePath = "github.com/BurntSushi/xgb";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/xgb";
+      rev = "27f122750802";
+      sha256 = "18lp2x8f5bljvlz0r7xn744f0c9rywjsb9ifiszqqdcpwhsa0kvj";
+    };
+  }
+  {
+    goPackagePath = "github.com/DisposaBoy/JsonConfigReader";
+    fetch = {
+      type = "git";
+      url = "https://github.com/DisposaBoy/JsonConfigReader";
+      rev = "5ea4d0ddac55";
+      sha256 = "022wzrkf0rni9yb15439w81kj0kb4667zx6n2zq07ysw7lk6ahqz";
+    };
+  }
+  {
+    goPackagePath = "github.com/TomOnTime/utfutil";
+    fetch = {
+      type = "git";
+      url = "https://github.com/TomOnTime/utfutil";
+      rev = "09c41003ee1d";
+      sha256 = "01d6w8migw5px19jg0mm7qhsa1ydcz9wvl838nsclfw63x5sy70i";
+    };
+  }
+  {
+    goPackagePath = "github.com/alecthomas/kingpin";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/kingpin";
+      rev = "v2.2.6";
+      sha256 = "0mndnv3hdngr3bxp7yxfd47cas4prv98sqw534mx7vp38gd88n5r";
+    };
+  }
+  {
+    goPackagePath = "github.com/alecthomas/template";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/template";
+      rev = "fb15b899a751";
+      sha256 = "1vlasv4dgycydh5wx6jdcvz40zdv90zz1h7836z7lhsi2ymvii26";
+    };
+  }
+  {
+    goPackagePath = "github.com/alecthomas/units";
+    fetch = {
+      type = "git";
+      url = "https://github.com/alecthomas/units";
+      rev = "f65c72e2690d";
+      sha256 = "04jyqm7m3m01ppfy1f9xk4qvrwvs78q9zml6llyf2b3v5k6b2bbc";
+    };
+  }
+  {
+    goPackagePath = "github.com/andreyvit/diff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/andreyvit/diff";
+      rev = "c7f18ee00883";
+      sha256 = "1s4qjkxig5yqahpzfl4xqh4kzi9mymdpkzq6kj3f4dr5dl3hlynr";
+    };
+  }
+  {
+    goPackagePath = "github.com/armon/go-metrics";
+    fetch = {
+      type = "git";
+      url = "https://github.com/armon/go-metrics";
+      rev = "f0300d1749da";
+      sha256 = "13l7c35ps0r27vxfil2w0xhhc7w5rh00awvlmn4cz0a937b9ffpv";
+    };
+  }
+  {
+    goPackagePath = "github.com/armon/go-radix";
+    fetch = {
+      type = "git";
+      url = "https://github.com/armon/go-radix";
+      rev = "7fddfc383310";
+      sha256 = "0y8chspn14n9xpsfb9gxnnf819rfpriaz64v81p7873a42kkhxb4";
+    };
+  }
+  {
+    goPackagePath = "github.com/aws/aws-sdk-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/aws/aws-sdk-go";
+      rev = "v1.29.21";
+      sha256 = "0q97abz6cjj1gf3gfd52gjx39grfhlcjax8306zw9038a8v0nadc";
+    };
+  }
+  {
+    goPackagePath = "github.com/bgentry/speakeasy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/bgentry/speakeasy";
+      rev = "v0.1.0";
+      sha256 = "02dfrj0wyphd3db9zn2mixqxwiz1ivnyc5xc7gkz58l5l27nzp8s";
+    };
+  }
+  {
+    goPackagePath = "github.com/billputer/go-namecheap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/billputer/go-namecheap";
+      rev = "0c7adb0710f8";
+      sha256 = "09jkymml6f0nvz7md7s4ayj75xdms77ziz9rkw4kvj7jhv36302p";
+    };
+  }
+  {
+    goPackagePath = "github.com/cenkalti/backoff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cenkalti/backoff";
+      rev = "v2.1.1";
+      sha256 = "1mf4lsl3rbb8kk42x0mrhzzy4ikqy0jf6nxpzhkr02rdgwh6rjk8";
+    };
+  }
+  {
+    goPackagePath = "github.com/census-instrumentation/opencensus-proto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/census-instrumentation/opencensus-proto";
+      rev = "v0.2.1";
+      sha256 = "19fcx3sc99i5dsklny6r073z5j20vlwn2xqm6di1q3b1xwchzqfj";
+    };
+  }
+  {
+    goPackagePath = "github.com/client9/misspell";
+    fetch = {
+      type = "git";
+      url = "https://github.com/client9/misspell";
+      rev = "v0.3.4";
+      sha256 = "1vwf33wsc4la25zk9nylpbp9px3svlmldkm0bha4hp56jws4q9cs";
+    };
+  }
+  {
+    goPackagePath = "github.com/cpuguy83/go-md2man";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cpuguy83/go-md2man";
+      rev = "v2.0.0";
+      sha256 = "0r1f7v475dxxgzqci1mxfliwadcrk86ippflx9n411325l4g3ghv";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath = "github.com/digitalocean/godo";
+    fetch = {
+      type = "git";
+      url = "https://github.com/digitalocean/godo";
+      rev = "v1.30.0";
+      sha256 = "0z38lg1zd57b5ymxdxhz5rs5rynpzhqmbvm0marhh0v7v9bbk0rx";
+    };
+  }
+  {
+    goPackagePath = "github.com/dimchansky/utfbom";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dimchansky/utfbom";
+      rev = "v1.1.0";
+      sha256 = "06s61wwd32fad1p8qn5blqjd5791avzb13fnqflkkg993adw49ww";
+    };
+  }
+  {
+    goPackagePath = "github.com/dnsimple/dnsimple-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dnsimple/dnsimple-go";
+      rev = "v0.31.0";
+      sha256 = "0i074r3m0bqggmplswymgj6yfzbsrcqw8gn6py9x8g3kyl4si0x0";
+    };
+  }
+  {
+    goPackagePath = "github.com/envoyproxy/go-control-plane";
+    fetch = {
+      type = "git";
+      url = "https://github.com/envoyproxy/go-control-plane";
+      rev = "5f8ba28d4473";
+      sha256 = "1f1s764rd41vd9vgk3r14h1m6fz6pdvxj6fd83q58gxifbc4q5w4";
+    };
+  }
+  {
+    goPackagePath = "github.com/envoyproxy/protoc-gen-validate";
+    fetch = {
+      type = "git";
+      url = "https://github.com/envoyproxy/protoc-gen-validate";
+      rev = "v0.1.0";
+      sha256 = "0kxd3wwh3xwqk0r684hsy281xq4y71cd11d4q2hspcjbnlbwh7cy";
+    };
+  }
+  {
+    goPackagePath = "github.com/exoscale/egoscale";
+    fetch = {
+      type = "git";
+      url = "https://github.com/exoscale/egoscale";
+      rev = "v0.23.0";
+      sha256 = "0dgc08sdvy2cj7yygrlnyp6v9m829h4v0pm3vdsj9yx3bps5v7iy";
+    };
+  }
+  {
+    goPackagePath = "github.com/fatih/color";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/color";
+      rev = "v1.7.0";
+      sha256 = "0v8msvg38r8d1iiq2i5r4xyfx0invhc941kjrsg5gzwvagv55inv";
+    };
+  }
+  {
+    goPackagePath = "github.com/fatih/structs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fatih/structs";
+      rev = "v1.1.0";
+      sha256 = "1wrhb8wp8zpzggl61lapb627lw8yv281abvr6vqakmf569nswa9q";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-acme/lego";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-acme/lego";
+      rev = "v2.7.2";
+      sha256 = "1137l22jrwk8hvdzjbmfkvd9nllp6sznzy66ngmcsc0ybp19hcry";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-ldap/ldap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-ldap/ldap";
+      rev = "v3.0.2";
+      sha256 = "1srb1nkcbs0v1hcdz6j4zhg000h763j83jlklsiwanvbp48y4lhz";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-sql-driver/mysql";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-sql-driver/mysql";
+      rev = "v1.5.0";
+      sha256 = "11x0m9yf3kdnf6981182r824psgxwfaqhn3x3in4yiidp0w0hk3v";
+    };
+  }
+  {
+    goPackagePath = "github.com/go-test/deep";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-test/deep";
+      rev = "042da051cf31";
+      sha256 = "08bya0s7m15f5qm1kn2r42g1r4lpq0svpaqr0zaac4hmaxj7vnid";
+    };
+  }
+  {
+    goPackagePath = "github.com/gobwas/glob";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gobwas/glob";
+      rev = "e7a84e9525fe";
+      sha256 = "1v6vjklq06wqddv46ihajahaj1slv0imgaivlxr8bsx59i90js5q";
+    };
+  }
+  {
+    goPackagePath = "github.com/gofrs/uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gofrs/uuid";
+      rev = "v3.2.0";
+      sha256 = "1q63mp7bznhfgyw133c0wc0hpcj1cq9bcf7w1f8r6inkcrils1fz";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/glog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/glog";
+      rev = "23def4e6c14b";
+      sha256 = "0jb2834rw5sykfr937fxi8hxi2zy80sj2bdn9b3jb4b26ksqng30";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/mock";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/mock";
+      rev = "v1.3.1";
+      sha256 = "1wnfa8njxdym1qb664dmfnkpm4pmqy22hqjlqpwaaiqhglb5g9d1";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/protobuf";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/protobuf";
+      rev = "v1.3.3";
+      sha256 = "1cyyr52yhj3fzrily3rmsbqyj8va4ld75lmry0857m39rgpv8sy1";
+    };
+  }
+  {
+    goPackagePath = "github.com/golang/snappy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/snappy";
+      rev = "v0.0.1";
+      sha256 = "0gp3kkzlm3wh37kgkhbqxq3zx07iqbgis5w9mf4d64h6vjq760is";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/btree";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/btree";
+      rev = "v1.0.0";
+      sha256 = "0ba430m9fbnagacp57krgidsyrgp3ycw5r7dj71brgp5r52g82p6";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-cmp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-cmp";
+      rev = "v0.4.0";
+      sha256 = "1x5pvl3fb5sbyng7i34431xycnhmx8xx94gq2n19g6p0vz68z2v2";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-github";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-github";
+      rev = "v17.0.0";
+      sha256 = "1kvw95l77a5n5rgal9n1xjh58zxb3a40ij1j722b1h4z8yg9jhg4";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/go-querystring";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-querystring";
+      rev = "c8c88dbee036";
+      sha256 = "1yckg2052mz7ps1m68wri6kyb5n4g0vx2yf7s0xs9gdqvvscp57l";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/martian";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/martian";
+      rev = "v2.1.0";
+      sha256 = "197hil6vrjk50b9wvwyzf61csid83whsjj6ik8mc9r2lryxlyyrp";
+    };
+  }
+  {
+    goPackagePath = "github.com/google/pprof";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/pprof";
+      rev = "54271f7e092f";
+      sha256 = "14x4ydifz23rzaylggvwbm3dwlv1bc6s0bclmkxck9nbjbqw89vy";
+    };
+  }
+  {
+    goPackagePath = "github.com/googleapis/gax-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/googleapis/gax-go";
+      rev = "v2.0.5";
+      sha256 = "1lxawwngv6miaqd25s3ba0didfzylbwisd2nz7r4gmbmin6jsjrx";
+    };
+  }
+  {
+    goPackagePath = "github.com/gopherjs/gopherjs";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gopherjs/gopherjs";
+      rev = "0766667cb4d1";
+      sha256 = "13pfc9sxiwjky2lm1xb3i3lcisn8p6mgjk2d927l7r92ysph8dmw";
+    };
+  }
+  {
+    goPackagePath = "github.com/gopherjs/jquery";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gopherjs/jquery";
+      rev = "73f4c7416038";
+      sha256 = "1xhl0k52v3djalnd02a0ph572f85i1szj2x4q3lglkq40j7racd2";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/errwrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/errwrap";
+      rev = "v1.0.0";
+      sha256 = "0slfb6w3b61xz04r32bi0a1bygc82rjzhqkxj2si2074wynqnr1c";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-cleanhttp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-cleanhttp";
+      rev = "v0.5.1";
+      sha256 = "07kx3fhryqmaw3czacmm11qwx63js2q8cfq967vphk7xg9q377kk";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-hclog";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-hclog";
+      rev = "v0.9.2";
+      sha256 = "0pakba7rdkjgq50r79sbbpavymbyib77cy613wl734mpi30ywrxm";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-immutable-radix";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-immutable-radix";
+      rev = "v1.0.0";
+      sha256 = "1v3nmsnk1s8bzpclrhirz7iq0g5xxbw9q5gvrg9ss6w9crs72qr6";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-multierror";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-multierror";
+      rev = "v1.0.0";
+      sha256 = "00nyn8llqzbfm8aflr9kwsvpzi4kv8v45c141v88xskxp5xf6z49";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-plugin";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-plugin";
+      rev = "v1.0.1";
+      sha256 = "0aama8vdyrfzjdhxc1l4cwhmgydl989lywhq3pg3slzjg6r00rda";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-retryablehttp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-retryablehttp";
+      rev = "v0.6.3";
+      sha256 = "1vnhr7yry71jldmmj5gxhq49crhi9vrmqc2i41mycpnva2zd8a0i";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-rootcerts";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-rootcerts";
+      rev = "v1.0.1";
+      sha256 = "0ca5h7vlvrghf24dzh8l6w5px293n173qxfkjxb9kgsl6hsrsl3y";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-sockaddr";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-sockaddr";
+      rev = "v1.0.2";
+      sha256 = "0y106nhd3s63lj7h7k21iq0br97h0z9qjrvx028zqcsq9407k9is";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-uuid";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-uuid";
+      rev = "v1.0.1";
+      sha256 = "0jvb88m0rq41bwgirsadgw7mnayl27av3gd2vqa3xvxp3fy0hp5k";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/go-version";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/go-version";
+      rev = "v1.1.0";
+      sha256 = "1ykh3jl5zj5a4irkgp5mq936bqkznmf9lp23qk741vh4r5874vi8";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/golang-lru";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/golang-lru";
+      rev = "v0.5.1";
+      sha256 = "13f870cvk161bzjj6x41l45r5x9i1z9r2ymwmvm7768kg08zznpy";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/hcl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/hcl";
+      rev = "v1.0.0";
+      sha256 = "0q6ml0qqs0yil76mpn4mdx4lp94id8vbv575qm60jzl1ijcl5i66";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/yamux";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/yamux";
+      rev = "2f1d1f20f75d";
+      sha256 = "1fga3p6j2g24ip9qjfwn3nqjr00m4nnjz92app7ms3sz7vgq2a7s";
+    };
+  }
+  {
+    goPackagePath = "github.com/hexonet/go-sdk";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hexonet/go-sdk";
+      rev = "v2.2.3";
+      sha256 = "0mgkfrc7qlm4xf1v7kb29p7wq6rmaaha9zv8kwa27r8hjx6qnb8c";
+    };
+  }
+  {
+    goPackagePath = "github.com/jarcoal/httpmock";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jarcoal/httpmock";
+      rev = "v1.0.4";
+      sha256 = "1x04i9hhvdxi9xmyf0vbi5azlh7rr4blsq7fbhps8i2gdpga612y";
+    };
+  }
+  {
+    goPackagePath = "github.com/jmespath/go-jmespath";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jmespath/go-jmespath";
+      rev = "2437e8417af5";
+      sha256 = "1hwcbr7nrlfshwr4hrac8ch8gvfpf07qi72bpqmqi272c67ma89v";
+    };
+  }
+  {
+    goPackagePath = "github.com/jstemmer/go-junit-report";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jstemmer/go-junit-report";
+      rev = "af01ea7f8024";
+      sha256 = "1lp3n94ris12hac02wi31f3whs88lcrzwgdg43a5j6cafg9p1d0s";
+    };
+  }
+  {
+    goPackagePath = "github.com/jtolds/gls";
+    fetch = {
+      type = "git";
+      url = "https://github.com/jtolds/gls";
+      rev = "v4.20.0";
+      sha256 = "1k7xd2q2ysv2xsh373qs801v6f359240kx0vrl0ydh7731lngvk6";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pretty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pretty";
+      rev = "v0.1.0";
+      sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/pty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/pty";
+      rev = "v1.1.1";
+      sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
+    };
+  }
+  {
+    goPackagePath = "github.com/kr/text";
+    fetch = {
+      type = "git";
+      url = "https://github.com/kr/text";
+      rev = "v0.1.0";
+      sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
+    };
+  }
+  {
+    goPackagePath = "github.com/malexdev/utfutil";
+    fetch = {
+      type = "git";
+      url = "https://github.com/malexdev/utfutil";
+      rev = "00c8d4a8e7a8";
+      sha256 = "01d6w8migw5px19jg0mm7qhsa1ydcz9wvl838nsclfw63x5sy70i";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-colorable";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-colorable";
+      rev = "v0.0.9";
+      sha256 = "1nwjmsppsjicr7anq8na6md7b1z84l9ppnlr045hhxjvbkqwalvx";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-isatty";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-isatty";
+      rev = "v0.0.3";
+      sha256 = "06w45aqz2a6yrk25axbly2k5wmsccv8cspb94bfmz4izvw8h927n";
+    };
+  }
+  {
+    goPackagePath = "github.com/miekg/dns";
+    fetch = {
+      type = "git";
+      url = "https://github.com/miekg/dns";
+      rev = "v1.1.27";
+      sha256 = "0fpd9alvhzrkb1c31n4lrxlpv1nlhy51w1yg39xxb3mjmrb7lby1";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/cli";
+      rev = "v1.0.0";
+      sha256 = "1i9kmr7rcf10d2hji8h4247hmc0nbairv7a0q51393aw2h1bnwg2";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/copystructure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/copystructure";
+      rev = "v1.0.0";
+      sha256 = "05njg92w1088v4yl0js0zdrpfq6k37i9j14mxkr3p90p5yd9rrrr";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-homedir";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-homedir";
+      rev = "v1.1.0";
+      sha256 = "0ydzkipf28hwj2bfxqmwlww47khyk6d152xax4bnyh60f4lq3nx1";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-testing-interface";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-testing-interface";
+      rev = "v1.0.0";
+      sha256 = "1dl2js8di858bawg7dadlf1qjpkl2g3apziihjyf5imri3znyfpw";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-wordwrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-wordwrap";
+      rev = "v1.0.0";
+      sha256 = "1jffbwcr3nnq6c12c5856bwzv2nxjzqk3jwgvxkwi1xhpd2by0bf";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/mapstructure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/mapstructure";
+      rev = "v1.1.2";
+      sha256 = "03bpv28jz9zhn4947saqwi328ydj7f6g6pf1m2d4m5zdh5jlfkrr";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/reflectwalk";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/reflectwalk";
+      rev = "v1.0.0";
+      sha256 = "0wzkp0fdx22n8f7y9y37dgmnlrlfsv9zjdb48cbx7rsqsbnny7l0";
+    };
+  }
+  {
+    goPackagePath = "github.com/mjibson/esc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mjibson/esc";
+      rev = "v0.2.0";
+      sha256 = "0ci3bdm01prm114plcwkgzbqn825lh0zc1iqaw3jicjay5sh0bis";
+    };
+  }
+  {
+    goPackagePath = "github.com/namedotcom/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/namedotcom/go";
+      rev = "08470befbe04";
+      sha256 = "00ai7fd74sn4alqmpqsiyczirli50b7m059b6zzg1izy9g4cdd4g";
+    };
+  }
+  {
+    goPackagePath = "github.com/oklog/run";
+    fetch = {
+      type = "git";
+      url = "https://github.com/oklog/run";
+      rev = "v1.0.0";
+      sha256 = "1pbjza4claaj95fpqvvfrysvs10y7dm0pl6qr5lzh6qy1vnhmcgw";
+    };
+  }
+  {
+    goPackagePath = "github.com/ovh/go-ovh";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ovh/go-ovh";
+      rev = "ba5adb4cf014";
+      sha256 = "1rwxib0pn2ni6nfn2sijvb6cd424n95gnqhs21q6mz08n9hnzspy";
+    };
+  }
+  {
+    goPackagePath = "github.com/pascaldekloe/goe";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pascaldekloe/goe";
+      rev = "v0.1.0";
+      sha256 = "1dqd3mfb4z2vmv6pg6fhgvfc53vhndk24wcl9lj1rz02n6m279fq";
+    };
+  }
+  {
+    goPackagePath = "github.com/philhug/opensrs-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/philhug/opensrs-go";
+      rev = "9dfa7433020d";
+      sha256 = "1bjw3llpx5n1srylw08310ch14sz1pw5mban1yakax8606q3dqdf";
+    };
+  }
+  {
+    goPackagePath = "github.com/pierrec/lz4";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pierrec/lz4";
+      rev = "v2.0.5";
+      sha256 = "0y5rh7z01zycd59nnjpkqq0ydyjmcg9j1xw15q1i600l9j9g617p";
+    };
+  }
+  {
+    goPackagePath = "github.com/pkg/errors";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pkg/errors";
+      rev = "v0.9.1";
+      sha256 = "1761pybhc2kqr6v5fm8faj08x9bql8427yqg6vnfv6nhrasx1mwq";
+    };
+  }
+  {
+    goPackagePath = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev = "v1.0.0";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath = "github.com/posener/complete";
+    fetch = {
+      type = "git";
+      url = "https://github.com/posener/complete";
+      rev = "v1.1.1";
+      sha256 = "1nbdiybjizbaxbf5q0xwbq0cjqw4bl6jggvsjzrpif0w86fcjda2";
+    };
+  }
+  {
+    goPackagePath = "github.com/prometheus/client_model";
+    fetch = {
+      type = "git";
+      url = "https://github.com/prometheus/client_model";
+      rev = "14fe0d1b01d4";
+      sha256 = "0zdmk6rbbx39cvfz0r59v2jg5sg9yd02b4pds5n5llgvivi99550";
+    };
+  }
+  {
+    goPackagePath = "github.com/renier/xmlrpc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/renier/xmlrpc";
+      rev = "ce4a1a486c03";
+      sha256 = "0byvacdwhagva53r2frzqws3f5j7qzigmxzxahpcv300i8pm9i50";
+    };
+  }
+  {
+    goPackagePath = "github.com/robertkrimen/otto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/robertkrimen/otto";
+      rev = "c382bd3c16ff";
+      sha256 = "043y6l647snsz71mdy84s2d3kn22aj6rbqd6c1vd8absvamqhlxa";
+    };
+  }
+  {
+    goPackagePath = "github.com/russross/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/russross/blackfriday";
+      rev = "v2.0.1";
+      sha256 = "0nlz7isdd4rgnwzs68499hlwicxz34j2k2a0b8jy0y7ycd2bcr5j";
+    };
+  }
+  {
+    goPackagePath = "github.com/ryanuber/columnize";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ryanuber/columnize";
+      rev = "v2.1.0";
+      sha256 = "0m9jhagb1k44zfcdai76xdf9vpi3bqdl7p078ffyibmz0z9jfap6";
+    };
+  }
+  {
+    goPackagePath = "github.com/ryanuber/go-glob";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ryanuber/go-glob";
+      rev = "v1.0.0";
+      sha256 = "0mhrjy0iba3jr6bsgy7q50zjr42ar1njn1sb2fvihlkhxgb2ahv2";
+    };
+  }
+  {
+    goPackagePath = "github.com/sergi/go-diff";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sergi/go-diff";
+      rev = "v1.1.0";
+      sha256 = "0ir8ali2vx0j7pipmlfd6k8c973akyy2nmbjrf008fm800zcp7z2";
+    };
+  }
+  {
+    goPackagePath = "github.com/shurcooL/sanitized_anchor_name";
+    fetch = {
+      type = "git";
+      url = "https://github.com/shurcooL/sanitized_anchor_name";
+      rev = "v1.0.0";
+      sha256 = "1gv9p2nr46z80dnfjsklc6zxbgk96349sdsxjz05f3z6wb6m5l8f";
+    };
+  }
+  {
+    goPackagePath = "github.com/smartystreets/assertions";
+    fetch = {
+      type = "git";
+      url = "https://github.com/smartystreets/assertions";
+      rev = "b2de0cb4f26d";
+      sha256 = "1i7ldgavgl35c7gk25p7bvdr282ckng090zr4ch9mk1705akx09y";
+    };
+  }
+  {
+    goPackagePath = "github.com/smartystreets/goconvey";
+    fetch = {
+      type = "git";
+      url = "https://github.com/smartystreets/goconvey";
+      rev = "68dc04aab96a";
+      sha256 = "1kas5v95fzhr88hg4rjy0vp03y4pzvy3pwwgkfz2yhn5nlj29nk6";
+    };
+  }
+  {
+    goPackagePath = "github.com/softlayer/softlayer-go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/softlayer/softlayer-go";
+      rev = "5e1c8cccc730";
+      sha256 = "0jsi0f60gx92qm1n2lcz65v425bbqf59dsr0dw4x1wmychp25mk7";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/objx";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/objx";
+      rev = "v0.1.0";
+      sha256 = "19ynspzjdynbi85xw06mh8ad5j0qa1vryvxjgvbnyrr8rbm4vd8w";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "v1.5.1";
+      sha256 = "09r89m1wy4cjv2nps1ykp00qjpi0531r07q3s34hr7m6njk4srkl";
+    };
+  }
+  {
+    goPackagePath = "github.com/tdewolff/minify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tdewolff/minify";
+      rev = "v2.3.6";
+      sha256 = "0p4v4ab49lm5y438k5aks06fpiagbjw2j2x7i8jaa273mkgicrbb";
+    };
+  }
+  {
+    goPackagePath = "github.com/tdewolff/parse";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tdewolff/parse";
+      rev = "v2.3.4";
+      sha256 = "00hclphbjgc5vjrqgnclp72v8c45k35vmj84d2a0f7bw8cc88zcd";
+    };
+  }
+  {
+    goPackagePath = "github.com/tdewolff/test";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tdewolff/test";
+      rev = "v1.0.6";
+      sha256 = "12glhjb4cwp6yxwd17rwa6b4gxna3lm01bgc7yn9di58chc7lyh3";
+    };
+  }
+  {
+    goPackagePath = "github.com/tiramiseb/go-gandi";
+    fetch = {
+      type = "git";
+      url = "https://github.com/tiramiseb/go-gandi";
+      rev = "e1cf2e430b3a";
+      sha256 = "1m6wzif0dgssh5hzffwqg39789k9nwvj8xaq0d492f0fr14w0nng";
+    };
+  }
+  {
+    goPackagePath = "github.com/urfave/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/urfave/cli";
+      rev = "v2.1.1";
+      sha256 = "0znf7pim7xsl8x6pcgi9vm0px48xrqfkw6ysn4yv6xc2569zpjs1";
+    };
+  }
+  {
+    goPackagePath = "github.com/vultr/govultr";
+    fetch = {
+      type = "git";
+      url = "https://github.com/vultr/govultr";
+      rev = "v0.2.0";
+      sha256 = "09103hb2rx93d6vyr54bqdai35d6l5q3klk09k53aqrijp8pycfz";
+    };
+  }
+  {
+    goPackagePath = "go.opencensus.io";
+    fetch = {
+      type = "git";
+      url = "https://github.com/census-instrumentation/opencensus-go";
+      rev = "v0.22.0";
+      sha256 = "05jr8gkr2w34i5wwki4zhl5ch0qrgi7cdgag5iy5gpxplhbrvbg9";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "2aa609cf4a9d";
+      sha256 = "1yvis6fqbsd7f356aqyi18f76vnwj3bry6mxqnkvshq4cwrf92il";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/exp";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/exp";
+      rev = "efd6b22b2522";
+      sha256 = "0ysahwb7p6y09izks4ca8nk2w414gmjxzz44l5rmadlvk3k66cgp";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/image";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/image";
+      rev = "0694c2d4d067";
+      sha256 = "0v4rs4xpi7agbdzjw713mp7gzij8z89058s0yfj3276mzlns3zk4";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/lint";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/lint";
+      rev = "959b441ac422";
+      sha256 = "1mgcv5f00pkzsbwnq2y7vqvd1b4lr5a3s47cphh2qv4indfk7pck";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/mobile";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/mobile";
+      rev = "d3739f865fa6";
+      sha256 = "079ck2dyikacnph9s5mf0hrjnqlk6lc8q64dwnyw45w3xbbc50mg";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/mod";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/mod";
+      rev = "v0.2.0";
+      sha256 = "1fp6885dclq77mh73v7i54v2b9llpv4di193zc8vmsbbkkc483cl";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/net";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/net";
+      rev = "0de0cce0169b";
+      sha256 = "1db7s5kbzyh2zd5lpv05n7hp8wbwdvgk0wpiwrlnig94mkr0y5aq";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/oauth2";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/oauth2";
+      rev = "bf48bf16ab8d";
+      sha256 = "1sirdib60zwmh93kf9qrx51r8544k1p9rs5mk0797wibz3m4mrdg";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sync";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sync";
+      rev = "cd5d95a43a6e";
+      sha256 = "1nqkyz2y1qvqcma52ijh02s8aiqmkfb95j08f6zcjhbga3ds6hds";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "cb0a6d8edb6c";
+      sha256 = "0xkrf2k6nn1qh64ckrc4rmf1vhkzs0p7f1rnhv4v4pz9mvgh3v6w";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.2";
+      sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/time";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/time";
+      rev = "9d24e82272b4";
+      sha256 = "1f5nkr4vys2vbd8wrwyiq2f5wcaahhpxmia85d1gshcbqjqf8dkb";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/tools";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/tools";
+      rev = "20ab64c0d93f";
+      sha256 = "1gfhw6daabjy771b3c0k0yga18ja50845n648mgagsa441dxvlch";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/xerrors";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/xerrors";
+      rev = "9bdfabe68543";
+      sha256 = "1yjfi1bk9xb81lqn85nnm13zz725wazvrx3b50hx19qmwg7a4b0c";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/api";
+    fetch = {
+      type = "git";
+      url = "https://code.googlesource.com/google-api-go-client";
+      rev = "v0.20.0";
+      sha256 = "13syr1x33k6mrn5w6l4sgdbzn368w3m60vf6kk2j10fwa45125rg";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/appengine";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/appengine";
+      rev = "v1.6.5";
+      sha256 = "05hbq4cs7bqw0zl17bx8rzdkszid3nyl92100scg3jjrg70dhm7w";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/genproto";
+    fetch = {
+      type = "git";
+      url = "https://github.com/google/go-genproto";
+      rev = "24fa4b261c55";
+      sha256 = "109zhaqlfd8zkbr1hk6zqbs6vcxfrk64scjwh2nswph05gr0m84d";
+    };
+  }
+  {
+    goPackagePath = "google.golang.org/grpc";
+    fetch = {
+      type = "git";
+      url = "https://github.com/grpc/grpc-go";
+      rev = "v1.27.0";
+      sha256 = "1ijrmgrxyabfn51nm3p9l81iaasq5fg237wnr6mdc4dzsfcg8kd7";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/asn1-ber.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/asn1-ber.v1";
+      rev = "f715ec2f112d";
+      sha256 = "00ixms8x3lrhywbvq5v2sagcqsxa1pcnlk17dp5lnwckv3xg4psb";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "41f04d3bba15";
+      sha256 = "0vfk9czmlxmp6wndq8k17rhnjxal764mxfhrccza7nwlia760pjy";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/ini.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/ini.v1";
+      rev = "v1.42.0";
+      sha256 = "18ywm8zyv091j1pp5mvx8szl7928chk8lw02br6jy568d7rk4xal";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/ns1/ns1-go.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/ns1/ns1-go.v2";
+      rev = "c563826f4cbe";
+      sha256 = "0swpsy0bdkwqlb7i0fgxs55sdfsy7pbnh6a09crhbw5xldvswq5k";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/sourcemap.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/sourcemap.v1";
+      rev = "v1.0.5";
+      sha256 = "08rf2dl13hbnm3fq2cm0nnsspy9fhf922ln23cz5463cv7h62as4";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/square/go-jose.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/square/go-jose.v2";
+      rev = "v2.3.1";
+      sha256 = "11r93g9xrcjqj7qvq8sbd5hy5rnbpmim0vdsp6rbav8gl7wimaa3";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "v2.2.8";
+      sha256 = "1inf7svydzscwv9fcjd2rm61a4xjk6jkswknybmns2n58shimapw";
+    };
+  }
+  {
+    goPackagePath = "honnef.co/go/tools";
+    fetch = {
+      type = "git";
+      url = "https://github.com/dominikh/go-tools";
+      rev = "ea95bdfd59fc";
+      sha256 = "1763nw7pwpzkvzfnm63dgzcgbq9hwmq5l1nffchnhh77vgkaq4ic";
+    };
+  }
+  {
+    goPackagePath = "rsc.io/binaryregexp";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rsc/binaryregexp";
+      rev = "v0.2.0";
+      sha256 = "1kar0myy85waw418zslviwx8846zj0m9cmqkxjx0fvgjdi70nc4b";
+    };
+  }
+]
diff --git a/pkgs/applications/networking/dropbox/cli.nix b/pkgs/applications/networking/dropbox/cli.nix
index 9b3b99708df..12865bd6ca7 100644
--- a/pkgs/applications/networking/dropbox/cli.nix
+++ b/pkgs/applications/networking/dropbox/cli.nix
@@ -11,7 +11,7 @@
 }:
 
 let
-  version = "2019.02.14";
+  version = "2020.03.04";
   dropboxd = "${dropbox}/bin/dropbox";
 in
 stdenv.mkDerivation {
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://linux.dropboxstatic.com/packages/nautilus-dropbox-${version}.tar.bz2";
-    sha256 = "09yg7q45sycl88l3wq0byz4a9k6sxx3m0r3szinvisfay9wlj35f";
+    sha256 = "1jjc835n2j61d23kvygdb4n4jsrw33r9mbwxrm4fqin6x01l2w7k";
   };
 
   strictDeps = true;
@@ -61,7 +61,7 @@ stdenv.mkDerivation {
   ];
 
   meta = {
-    homepage = https://www.dropbox.com;
+    homepage = "https://www.dropbox.com";
     description = "Command line client for the dropbox daemon";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [ the-kenny ];
diff --git a/pkgs/applications/networking/feedreaders/newsboat/default.nix b/pkgs/applications/networking/feedreaders/newsboat/default.nix
index 27bf8e81b11..5b97859304c 100644
--- a/pkgs/applications/networking/feedreaders/newsboat/default.nix
+++ b/pkgs/applications/networking/feedreaders/newsboat/default.nix
@@ -1,18 +1,18 @@
 { stdenv, rustPlatform, fetchFromGitHub, stfl, sqlite, curl, gettext, pkgconfig, libxml2, json_c, ncurses
-, asciidoc, docbook_xml_dtd_45, libxslt, docbook_xsl, libiconv, Security, makeWrapper }:
+, asciidoctor, libiconv, Security, makeWrapper }:
 
 rustPlatform.buildRustPackage rec {
   pname = "newsboat";
-  version = "2.18";
+  version = "2.19";
 
   src = fetchFromGitHub {
     owner = "newsboat";
     repo = "newsboat";
     rev = "r${version}";
-    sha256 = "1bg2qjkzdawn4fnn0w7jhw1dk6191w8axnqra43z21pinfyim6da";
+    sha256 = "0yyrq8a90l6pkrczm9qvdg75jhsdq0niwp79vrdpm8rsxqpdmfq7";
   };
 
-  cargoSha256 = "0q7bira2adfmx0ghb1c5nqz200iajaxap9bq8j5wvvk9l2wywslp";
+  cargoSha256 = "1q3jf3d80c0ik38qk8jgbhfz5jxv0cy3lzmkyh2l002azp9hvv59";
 
   postPatch = ''
     substituteInPlace Makefile --replace "|| true" ""
@@ -21,22 +21,25 @@ rustPlatform.buildRustPackage rec {
       --replace "ncurses5.4" "ncurses"
   '';
 
-  nativeBuildInputs = [ pkgconfig asciidoc docbook_xml_dtd_45 libxslt docbook_xsl ]
-    ++ stdenv.lib.optionals stdenv.isDarwin [ makeWrapper libiconv ];
+  nativeBuildInputs = [
+    pkgconfig
+    asciidoctor
+    gettext
+  ] ++ stdenv.lib.optionals stdenv.isDarwin [ makeWrapper libiconv ];
 
-  buildInputs = [ stfl sqlite curl gettext libxml2 json_c ncurses ]
+  buildInputs = [ stfl sqlite curl libxml2 json_c ncurses ]
     ++ stdenv.lib.optional stdenv.isDarwin Security;
 
   postBuild = ''
     make
   '';
 
-  NIX_CFLAGS_COMPILE = "-Wno-error=sign-compare"
-    + stdenv.lib.optionalString stdenv.isDarwin " -Wno-error=format-security";
+  # TODO: Check if that's still needed
+  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin " -Wno-error=format-security";
 
   doCheck = true;
 
-  checkPhase = ''
+  preCheck = ''
     make test
   '';
 
@@ -50,7 +53,7 @@ rustPlatform.buildRustPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage    = https://newsboat.org/;
+    homepage    = "https://newsboat.org/";
     description = "A fork of Newsbeuter, an RSS/Atom feed reader for the text console";
     maintainers = with maintainers; [ dotlambda nicknovitski ];
     license     = licenses.mit;
diff --git a/pkgs/applications/networking/gmailctl/default.nix b/pkgs/applications/networking/gmailctl/default.nix
new file mode 100644
index 00000000000..ea387dad424
--- /dev/null
+++ b/pkgs/applications/networking/gmailctl/default.nix
@@ -0,0 +1,27 @@
+{ stdenv
+, buildGoModule
+, fetchFromGitHub
+}:
+
+buildGoModule rec {
+  pname = "gmailctl";
+  version = "0.6.0";
+
+  src = fetchFromGitHub {
+    owner = "mbrt";
+    repo = "gmailctl";
+    rev = "v${version}";
+    sha256 = "0g581gdkib7bj86blpm8skjvbnivmzh9ddikxai9hr5qq231j1pb";
+  };
+
+  modSha256 = "0pv3lhzl96ygzh9y01hi9klrrk403ii92imr9yrbimaf7rsvyvjp";
+
+  meta = with stdenv.lib; {
+    description = "Declarative configuration for Gmail filters";
+    homepage = "https://github.com/mbrt/gmailctl";
+    license = licenses.mit;
+    maintainers = [ maintainers.doronbehar ];
+    platforms = platforms.unix;
+  };
+}
+
diff --git a/pkgs/applications/networking/gns3/default.nix b/pkgs/applications/networking/gns3/default.nix
index 6dcfb27b7ba..1d045afd4c0 100644
--- a/pkgs/applications/networking/gns3/default.nix
+++ b/pkgs/applications/networking/gns3/default.nix
@@ -1,13 +1,13 @@
 { callPackage }:
 
 let
-  stableVersion = "2.2.5";
+  stableVersion = "2.2.7";
   previewVersion = stableVersion;
   addVersion = args:
     let version = if args.stable then stableVersion else previewVersion;
         branch = if args.stable then "stable" else "preview";
     in args // { inherit version branch; };
-  extraArgs = {
+  extraArgs = rec {
     mkOverride = attrname: version: sha256:
       self: super: {
         ${attrname} = super.${attrname}.overridePythonAttrs (oldAttrs: {
@@ -18,11 +18,15 @@ let
           doCheck = oldAttrs.doCheck && (attrname != "psutil");
         });
       };
+    commonOverrides = [
+      (mkOverride "psutil" "5.6.6"
+        "1rs6z8bfy6bqzw88s4i5zllrx3i18hnkv4akvmw7bifngcgjh8dd")
+    ];
   };
   mkGui = args: callPackage (import ./gui.nix (addVersion args // extraArgs)) { };
   mkServer = args: callPackage (import ./server.nix (addVersion args // extraArgs)) { };
-  guiSrcHash = "1yxwbz93x9hn5y6dir8v7bdfsmfgppvjg4z88l8gx82hhf2476fx";
-  serverSrcHash = "1d3m8qrz82g8ii6q6j015wqwp6j0415fbqbjvw43zhdx5mnn962d";
+  guiSrcHash = "1rq1cb07mvakqny848nvwgasp8f6pxdy790gd98xh55xrbi8jvxp";
+  serverSrcHash = "1cf3inppj2050mgmx5sgf540iz3m3nbh53p26dx8m67x2xfyb934";
 in {
   guiStable = mkGui {
     stable = true;
diff --git a/pkgs/applications/networking/gns3/gui.nix b/pkgs/applications/networking/gns3/gui.nix
index 2d462d5c11d..2524731cd05 100644
--- a/pkgs/applications/networking/gns3/gui.nix
+++ b/pkgs/applications/networking/gns3/gui.nix
@@ -1,12 +1,10 @@
-{ stable, branch, version, sha256Hash, mkOverride }:
+{ stable, branch, version, sha256Hash, mkOverride, commonOverrides }:
 
 { lib, stdenv, python3, fetchFromGitHub }:
 
 let
   # TODO: This package requires qt5Full to launch
-  defaultOverrides = [
-    (mkOverride "psutil" "5.6.3"
-      "1wv31zly44qj0rp2acg58xbnc7bf6ffyadasq093l455q30qafl6")
+  defaultOverrides = commonOverrides ++ [
     (mkOverride "jsonschema" "2.6.0"
       "00kf3zmpp9ya4sydffpifn0j0mzm342a2vzh82p6r0vh10cg7xbg")
   ];
@@ -40,7 +38,8 @@ in python.pkgs.buildPythonPackage rec {
       requires access to a local or remote GNS3 server (it's recommended to
       download the official GNS3 VM).
     '';
-    homepage = https://www.gns3.com/;
+    homepage = "https://www.gns3.com/";
+    changelog = "https://github.com/GNS3/gns3-gui/releases/tag/v${version}";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/applications/networking/gns3/server.nix b/pkgs/applications/networking/gns3/server.nix
index beeac9d0293..32dc42e9f51 100644
--- a/pkgs/applications/networking/gns3/server.nix
+++ b/pkgs/applications/networking/gns3/server.nix
@@ -1,11 +1,9 @@
-{ stable, branch, version, sha256Hash, mkOverride }:
+{ stable, branch, version, sha256Hash, mkOverride, commonOverrides }:
 
 { lib, stdenv, python3, fetchFromGitHub }:
 
 let
-  defaultOverrides = [
-    (mkOverride "psutil" "5.6.3"
-      "1wv31zly44qj0rp2acg58xbnc7bf6ffyadasq093l455q30qafl6")
+  defaultOverrides = commonOverrides ++ [
     (mkOverride "jsonschema" "2.6.0"
       "00kf3zmpp9ya4sydffpifn0j0mzm342a2vzh82p6r0vh10cg7xbg")
   ];
@@ -25,8 +23,6 @@ in python.pkgs.buildPythonPackage {
   };
 
   postPatch = ''
-    # Only 2.x is problematic:
-    sed -iE "s/prompt-toolkit==1.0.15/prompt-toolkit<2.0.0/" requirements.txt
     # yarl 1.4+ only requires Python 3.6+
     sed -iE "s/yarl==1.3.0//" requirements.txt
   '';
@@ -34,7 +30,7 @@ in python.pkgs.buildPythonPackage {
   propagatedBuildInputs = with python.pkgs; [
     aiohttp-cors yarl aiohttp multidict setuptools
     jinja2 psutil zipstream raven jsonschema distro async_generator aiofiles
-    (python.pkgs.callPackage ../../../development/python-modules/prompt_toolkit/1.nix {})
+    prompt_toolkit py-cpuinfo
   ];
 
   # Requires network access
@@ -51,7 +47,8 @@ in python.pkgs.buildPythonPackage {
       Qemu/KVM. Clients like the GNS3 GUI control the server using a HTTP REST
       API.
     '';
-    homepage = https://www.gns3.com/;
+    homepage = "https://www.gns3.com/";
+    changelog = "https://github.com/GNS3/gns3-server/releases/tag/v${version}";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/applications/networking/hydroxide/default.nix b/pkgs/applications/networking/hydroxide/default.nix
index d3f45f7f038..75c1cdaece9 100644
--- a/pkgs/applications/networking/hydroxide/default.nix
+++ b/pkgs/applications/networking/hydroxide/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, fetchpatch, Security }:
+{ lib, buildGoModule, fetchFromGitHub, fetchpatch }:
 
 buildGoModule rec {
   pname = "hydroxide";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "0b19rcif8yiyvhrsjd3q5nsvr580lklamlphx4dk47n456ckcqfp";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   # FIXME: remove with next release
   patches = [
     (fetchpatch {
@@ -25,7 +23,7 @@ buildGoModule rec {
 
   subPackages = [ "cmd/hydroxide" ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A third-party, open-source ProtonMail bridge";
     homepage = "https://github.com/emersion/hydroxide";
     license = licenses.mit;
diff --git a/pkgs/applications/networking/instant-messengers/bluejeans/default.nix b/pkgs/applications/networking/instant-messengers/bluejeans/default.nix
index 21b21e25349..14fbd4db1a0 100644
--- a/pkgs/applications/networking/instant-messengers/bluejeans/default.nix
+++ b/pkgs/applications/networking/instant-messengers/bluejeans/default.nix
@@ -1,47 +1,120 @@
-{ stdenv, fetchurl, rpmextract, patchelf, libnotify, libcap, cairo, pango, fontconfig, udev, dbus
-, gtk2, atk, expat, gdk-pixbuf, freetype, nspr, glib, nss, gconf, libX11, libXrender, libXtst, libXdamage
-, libXi, libXext, libXfixes, libXcomposite, alsaLib, bash
+{ stdenv
+, fetchurl
+, rpmextract
+, patchelf
+, patchelfUnstable
+, libnotify
+, libuuid
+, cairo
+, cups
+, pango
+, fontconfig
+, udev
+, dbus
+, gtk3
+, atk
+, at-spi2-atk
+, expat
+, gdk-pixbuf
+, freetype
+, nspr
+, glib
+, nss
+, libX11
+, libXrandr
+, libXrender
+, libXtst
+, libXdamage
+, libxcb
+, libXcursor
+, libXi
+, libXext
+, libXfixes
+, libXft
+, libXcomposite
+, libXScrnSaver
+, alsaLib
+, pulseaudio
+, makeWrapper
 }:
 
 stdenv.mkDerivation rec {
   pname = "bluejeans";
-  version = "1.36.9";
+  version = "2.1.0";
 
-  src =
-    fetchurl {
-      url = "https://swdl.bluejeans.com/desktop/linux/1.36/${version}/bluejeans-${version}.x86_64.rpm";
-      sha256 = "0sbv742pzqd2cxn3kq10lfi16jah486i9kyrmi8l1rpb9fhyw2m1";
-    };
+  src = fetchurl {
+    url = "https://swdl.bluejeans.com/desktop-app/linux/${version}/BlueJeans.rpm";
+    sha256 = "1zhh0pla5gk75p8x84va9flvnk456pbcm1n6x8l82c9682fwr7dd";
+  };
 
-  nativeBuildInputs = [ patchelf rpmextract ];
+  nativeBuildInputs = [ rpmextract makeWrapper ];
 
   libPath =
     stdenv.lib.makeLibraryPath
-       [ libnotify libcap cairo pango fontconfig gtk2 atk expat gdk-pixbuf dbus udev.lib
-         freetype nspr glib stdenv.cc stdenv.cc.cc.lib nss gconf libX11 libXrender libXtst libXdamage
-         libXi libXext libXfixes libXcomposite alsaLib
-       ];
+      [
+        libnotify
+        libuuid
+        cairo
+        cups
+        pango
+        fontconfig
+        gtk3
+        atk
+        at-spi2-atk
+        expat
+        gdk-pixbuf
+        dbus
+        udev.lib
+        freetype
+        nspr
+        glib
+        stdenv.cc.cc.lib
+        nss
+        libX11
+        libXrandr
+        libXrender
+        libXtst
+        libXdamage
+        libxcb
+        libXcursor
+        libXi
+        libXext
+        libXfixes
+        libXft
+        libXcomposite
+        libXScrnSaver
+        alsaLib
+        pulseaudio
+      ];
+
+  localtime64_stub = ./localtime64_stub.c;
 
   buildCommand = ''
     mkdir -p $out/bin/
     cd $out
     rpmextract $src
-    patchelf \
+    mv usr/share share
+    rmdir usr
+
+    ${patchelf}/bin/patchelf \
       --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
-      opt/bluejeans/bluejeans-bin
-    patchelf \
-      --set-rpath ${libPath} \
-      opt/bluejeans/bluejeans-bin
-    patchelf \
       --replace-needed libudev.so.0 libudev.so.1 \
-      opt/bluejeans/bluejeans-bin
-    ln -s $out/opt/bluejeans/bluejeans $out/bin/bluejeans
-    chmod +x $out/bin/bluejeans
-    patchShebangs $out
+      opt/BlueJeans/bluejeans-v2
+    ${patchelfUnstable}/bin/patchelf \
+      --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
+      opt/BlueJeans/resources/BluejeansHelper
+
+    cc $localtime64_stub -shared -o "$out"/opt/BlueJeans/liblocaltime64_stub.so
+
+    makeWrapper $out/opt/BlueJeans/bluejeans-v2 $out/bin/bluejeans \
+      --set LD_LIBRARY_PATH "${libPath}":"${placeholder "out"}"/opt/BlueJeans \
+      --set LD_PRELOAD "$out"/opt/BlueJeans/liblocaltime64_stub.so
+
+    patchShebangs "$out"
   '';
 
   meta = with stdenv.lib; {
-    description = "Video, audio, and web conferencing that works together with the collaboration tools you use every day.";
+    description = "Video, audio, and web conferencing that works together with the collaboration tools you use every day";
     homepage = "https://www.bluejeans.com";
     license = licenses.unfree;
     maintainers = with maintainers; [ veprbl ];
diff --git a/pkgs/applications/networking/instant-messengers/bluejeans/localtime64_stub.c b/pkgs/applications/networking/instant-messengers/bluejeans/localtime64_stub.c
new file mode 100644
index 00000000000..87c2fa11714
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/bluejeans/localtime64_stub.c
@@ -0,0 +1,12 @@
+#include <stdio.h>
+#include <stdlib.h>
+
+void *localtime64() {
+  fprintf(stderr, "nixpkgs: call into localtime64_r\n");
+  abort();
+}
+
+void *localtime64_r() {
+  fprintf(stderr, "nixpkgs: call into localtime64_r\n");
+  abort();
+}
diff --git a/pkgs/applications/networking/instant-messengers/coyim/default.nix b/pkgs/applications/networking/instant-messengers/coyim/default.nix
index 3186009db58..e507d986510 100644
--- a/pkgs/applications/networking/instant-messengers/coyim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/coyim/default.nix
@@ -14,7 +14,9 @@ buildGoPackage rec {
     sha256 = "1g8nf56j17rdhhj7pv3ha1rb2mfc0mdvyzl35pgcki08w7iw08j3";
   };
 
-  nativeBuildInputs = [ pkgconfig wrapGAppsHook glib cairo gdk-pixbuf gtk3 gnome3.adwaita-icon-theme ];
+  nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
+
+  buildInputs = [ glib cairo gdk-pixbuf gtk3 gnome3.adwaita-icon-theme ];
 
   meta = with stdenv.lib; {
     description = "a safe and secure chat client";
diff --git a/pkgs/applications/networking/instant-messengers/fractal/default.nix b/pkgs/applications/networking/instant-messengers/fractal/default.nix
index 896ca4f38a6..47153779e40 100644
--- a/pkgs/applications/networking/instant-messengers/fractal/default.nix
+++ b/pkgs/applications/networking/instant-messengers/fractal/default.nix
@@ -46,6 +46,7 @@ rustPlatform.buildRustPackage rec {
     python3
     rustc
     wrapGAppsHook
+    glib
   ];
 
   buildInputs = [
@@ -84,4 +85,3 @@ rustPlatform.buildRustPackage rec {
     maintainers = with maintainers; [ dtzWill worldofpeace ];
   };
 }
-
diff --git a/pkgs/applications/networking/instant-messengers/gomuks/default.nix b/pkgs/applications/networking/instant-messengers/gomuks/default.nix
index 27790c2c9e0..2962d190d36 100644
--- a/pkgs/applications/networking/instant-messengers/gomuks/default.nix
+++ b/pkgs/applications/networking/instant-messengers/gomuks/default.nix
@@ -1,21 +1,34 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub, makeDesktopItem }:
 
 buildGoModule rec {
   pname = "gomuks";
-  version = "2020-02-19";
+  version = "2020-03-20";
 
   goPackagePath = "maunium.net/go/gomuks";
 
   src = fetchFromGitHub {
     owner = "tulir";
     repo = pname;
-    rev = "702592bf89dfcf1ec382c0a09d99318bce7a3943";
-    sha256 = "0g638q8ypkp6dbfy1s4hz798cpkld301f914il3yd70yf05vvysc";
+    rev = "bce30e32a049b3ee76081c8d3881a3820b0e7341";
+    sha256 = "0f7i88vrvl1xl4hmjplq3wwihqwijbgxy6nk5fkvc8pfmm5hsjcs";
   };
 
-  modSha256 = "03vbrh50pvx71rp6c23qc2sh0ir4jm1wl0gvi3z1c14ndzhsqky4";
+  modSha256 = "10w0bjhnf6bbqx5jbgfv2jxxyqswzx25p64kkjmvh5qamjzpbjz2";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  postInstall = ''
+    cp -r ${
+      makeDesktopItem {
+        name = "net.maunium.gomuks.desktop";
+        exec = "@out@/bin/gomuks";
+        terminal = "true";
+        desktopName = "Gomuks";
+        genericName = "Matrix client";
+        categories = "Network;Chat";
+        comment = meta.description;
+      }
+    }/* $out/
+    substituteAllInPlace $out/share/applications/*
+  '';
 
   meta = with stdenv.lib; {
     homepage = "https://maunium.net/go/gomuks/";
diff --git a/pkgs/applications/networking/instant-messengers/linphone/default.nix b/pkgs/applications/networking/instant-messengers/linphone/default.nix
index b155f312964..b1927395a57 100644
--- a/pkgs/applications/networking/instant-messengers/linphone/default.nix
+++ b/pkgs/applications/networking/instant-messengers/linphone/default.nix
@@ -1,61 +1,239 @@
-{ stdenv, intltool, pkgconfig, readline, openldap, cyrus_sasl, libupnp
-, zlib, libxml2, gtk2, libnotify, speex, ffmpeg, libX11, libsoup, udev
-, ortp, mediastreamer, sqlite, belle-sip, libosip, libexosip, bzrtp
-, mediastreamer-openh264, bctoolbox, makeWrapper, fetchFromGitHub, cmake
-, libmatroska, bcunit, doxygen, gdk-pixbuf, glib, cairo, pango, mbedtls
-, python, graphviz, belcard, bcg729
-, withGui ? true
+{ bcg729
+, bctoolbox
+, bcunit
+, belcard
+, belle-sip
+, belr
+, bzrtp
+, cairo
+, cmake
+, cyrus_sasl
+, fetchFromGitLab
+, fetchurl
+, ffmpeg
+, gdk-pixbuf
+, glib
+, gnused
+, graphviz
+, gtk2
+, intltool
+, lib
+, libexosip
+, liblinphone
+, libmatroska
+, libnotify
+, libosip
+, libsoup
+, libupnp
+, libX11
+, libxml2
+, makeWrapper
+, mbedtls
+, mediastreamer
+, mediastreamer-openh264
+, mkDerivation
+, openldap
+, ortp
+, pango
+, pkgconfig
+, python
+, qtbase
+, qtgraphicaleffects
+, qtquickcontrols2
+, qttranslations
+, readline
+, speex
+, sqlite
+, stdenv
+, udev
+, zlib
+  # For Minizip 2.2.7:
+, fetchFromGitHub
+, libbsd
 }:
+let
+  # Linphone Desktop requires Minizip 2.2.7. Nixpkgs contains a very old version
+  # from the time when it was part of zlib. The most recent release of Minizip
+  # is currently 2.9.2 but Linphone Desktop didn't work with that. So, even if
+  # we added most recent Minizip version to nixpkgs, probably Minizip 2.2.7 is
+  # only needed here and we shouldn't add this semi-old version to
+  # all-packages.nix. Therefore, just define it here locally.
+  minizip2 = stdenv.mkDerivation rec {
+    pname = "minizip";
+    version = "2.2.7";
 
-stdenv.mkDerivation rec {
-  pname = "linphone";
-  version = "3.12.0";
+    disabled = stdenv.isAarch32;
 
-  src = fetchFromGitHub {
-    owner = "BelledonneCommunications";
+    src = fetchFromGitHub {
+      owner = "nmoinvaz";
+      repo = pname;
+      rev = version;
+      sha256 = "1a88v1gjlflsd17mlrgxh420rpa38q0d17yh9q8j1zzqfrd1azch";
+    };
+
+    nativeBuildInputs = [ cmake pkgconfig ];
+
+    cmakeFlags = [
+      "-DBUILD_SHARED_LIBS=YES"
+    ];
+
+    buildInputs = [
+      zlib
+      libbsd # required in 2.2.7 but not in 2.9.2?
+    ];
+
+    meta = with stdenv.lib; {
+      description = "Compression library implementing the deflate compression method found in gzip and PKZIP";
+      homepage = "https://github.com/nmoinvaz/minizip";
+      license = licenses.zlib;
+      platforms = platforms.unix;
+    };
+  };
+in
+mkDerivation rec {
+  pname = "linphone-desktop";
+  # Latest release is 4.1.1 old and doesn't build with the latest releases of
+  # some of the dependencies so let's use the latest commit.
+  version = "unstable-2020-03-06";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
     repo = pname;
-    rev = version;
-    sha256 = "0az2ywrpx11sqfb4s4r2v726avcjf4k15bvrqj7xvhz7hdndmh0j";
+    rev = "971997e162558d37051f89c9c34bbc240135f704";
+    sha256 = "02ji4r8bpcm2kyisn9d3054m026l33g2574i1ag1cmb2dz2p8i1c";
   };
 
-  cmakeFlags = stdenv.lib.optional withGui [ "-DENABLE_GTK_UI=ON" ];
+  # Without this patch, the build fails with:
+  #
+  #   No rule to make target
+  #   'minizip_OUTPUT/nix/store/...linphone-desktop.../lib/libminizip.so',
+  #
+  # So, the makefile tries to use a full absolute path to the library but does
+  # it incorrectly. As we have installed Minizip properly, it's sufficient to
+  # just use "minizip" and the library is found automatically. If this patched
+  # target_link_libraries line was removed entirely, the build would fail at the
+  # very end when linking minizip.
+  patches = [
+    ./fix_minizip_linking.patch
+  ];
 
+  # See: https://gitlab.linphone.org/BC/public/linphone-desktop/issues/21
   postPatch = ''
-    touch coreapi/liblinphone_gitversion.h
+    substituteInPlace src/app/AppController.cpp \
+      --replace "LINPHONE_QT_GIT_VERSION" "\"${version}\""
   '';
 
+  # TODO: After linphone-desktop and liblinphone split into separate packages,
+  # there might be some build inputs here that aren't needed for
+  # linphone-desktop.
   buildInputs = [
-    readline openldap cyrus_sasl libupnp zlib libxml2 gtk2 libnotify speex ffmpeg libX11
-    mbedtls libsoup udev ortp mediastreamer sqlite belle-sip libosip libexosip
-    bctoolbox libmatroska gdk-pixbuf glib cairo pango bzrtp belcard bcg729
+    bcg729
+    bctoolbox
+    belcard
+    belle-sip
+    belr
+    bzrtp
+    cairo
+    cyrus_sasl
+    ffmpeg
+    gdk-pixbuf
+    glib
+    gtk2
+    libX11
+    libexosip
+    liblinphone
+    libmatroska
+    libnotify
+    libosip
+    libsoup
+    libupnp
+    libxml2
+    mbedtls
+    mediastreamer
+    mediastreamer-openh264
+    minizip2
+    openldap
+    ortp
+    pango
+    qtbase
+    qtgraphicaleffects
+    qtquickcontrols2
+    qttranslations
+    readline
+    speex
+    sqlite
+    udev
+    zlib
   ];
 
   nativeBuildInputs = [
-    intltool pkgconfig makeWrapper cmake bcunit doxygen graphviz
-    (python.withPackages (ps: [ ps.pystache ps.six ]))
+    bcunit
+    cmake
+    gnused
+    graphviz
+    intltool
+    makeWrapper
+    pkgconfig
   ];
 
-  NIX_CFLAGS_COMPILE = [
-    "-Wno-error"
-    "-I${glib.dev}/include/glib-2.0"
-    "-I${glib.out}/lib/glib-2.0/include"
-    "-I${gtk2.dev}/include/gtk-2.0/"
-    "-I${cairo.dev}/include/cairo"
-    "-I${pango.dev}/include/pango-1.0"
-    "-I${gtk2}/lib/gtk-2.0/include"
-    "-DLIBLINPHONE_GIT_VERSION=\"v${version}\""
+  cmakeFlags = [
+    "-DCMAKE_BUILD_TYPE=RelWithDebInfo"
+    "-DMINIZIP_INCLUDE_DIRS=${minizip2}/include"
+    "-DMINIZIP_LIBRARIES=minizip"
   ];
 
-  postInstall = ''
-    for i in $(cd $out/bin && ls); do
-      wrapProgram $out/bin/$i --set MEDIASTREAMER_PLUGINS_DIR ${mediastreamer-openh264}/lib/mediastreamer/plugins
-    done
+  # The default install phase fails because the paths are somehow messed up in
+  # the makefiles. The errors were like:
+  #
+  #   CMake Error at cmake_builder/linphone_package/cmake_install.cmake:49 (file):
+  #     file INSTALL cannot find
+  #     "/build/linphone-desktop-.../build/linphone-sdk/desktop//nix/store/.../bin":
+  #     No such file or directory.
+  #
+  # If someone is able to figure out how to fix that, great. For now, just
+  # trying to pick all the relevant files to the output.
+  #
+  # Also, the exec path in linphone.desktop file remains invalid, pointing to
+  # the build directory, after the whole nix build process. So, let's use sed to
+  # manually fix that path.
+  #
+  # In order to find mediastreamer plugins, mediastreamer package was patched to
+  # support an environment variable pointing to the plugin directory. Set that
+  # environment variable by wrapping the Linphone executable.
+  #
+  # Also, some grammar files needed to be copied too from some dependencies. I
+  # suppose if one define a dependency in such a way that its share directory is
+  # found, then this copying would be unnecessary. These missing grammar files
+  # were discovered when linphone crashed at startup and it was run with
+  # --verbose flag. Instead of actually copying these files, create symlinks.
+  #
+  # It is quite likely that there are some other files still missing and
+  # Linphone will randomly crash when it tries to access those files. Then,
+  # those just need to be copied manually below.
+  installPhase = ''
+    mkdir -p $out/bin
+    cp linphone $out/bin/
+    wrapProgram $out/bin/linphone \
+      --set MEDIASTREAMER_PLUGINS_DIR \
+            ${mediastreamer-openh264}/lib/mediastreamer/plugins
+    mkdir -p $out/share/applications
+    sed -i "s@/build/.*/OUTPUT/bin@$out/bin@" linphone.desktop
+    cp linphone.desktop $out/share/applications/
+    cp -r ../assets/icons $out/share/
+    mkdir -p $out/share/belr/grammars
+    ln -s ${belcard}/share/belr/grammars/* $out/share/belr/grammars/
+    ln -s ${liblinphone}/share/belr/grammars/* $out/share/belr/grammars/
+    mkdir -p $out/share/linphone
+    ln -s ${liblinphone}/share/linphone/* $out/share/linphone/
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     homepage = https://www.linphone.org/;
     description = "Open source SIP phone for voice/video calls and instant messaging";
-    license = licenses.gpl2Plus;
+    license = licenses.gpl3;
     platforms = platforms.linux;
+    maintainers = with maintainers; [ jluttine ];
   };
 }
diff --git a/pkgs/applications/networking/instant-messengers/linphone/fix_minizip_linking.patch b/pkgs/applications/networking/instant-messengers/linphone/fix_minizip_linking.patch
new file mode 100644
index 00000000000..bb88d0030fa
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/linphone/fix_minizip_linking.patch
@@ -0,0 +1,13 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 3ee77441..18ea5c27 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -517,7 +517,7 @@ else()
+             target_link_libraries(${TARGET_NAME} "${MINIZIP_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}/libminizip.dylib")
+             execute_process(COMMAND install_name_tool -id "@executable_path/../Frameworks/libminizip.dylib" "${MINIZIP_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}/libminizip.dylib")
+         elseif(NOT WIN32)
+-            target_link_libraries(${TARGET_NAME} "${MINIZIP_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}/libminizip.so")
++            target_link_libraries(${TARGET_NAME} "minizip")
+         endif()
+     endif()#If (LinphoneCxx_FOUND AND Minizip_FOUND)
+ endif()#If (LinphoneCxx_FOUND)
diff --git a/pkgs/applications/networking/instant-messengers/matrix-dl/default.nix b/pkgs/applications/networking/instant-messengers/matrix-dl/default.nix
new file mode 100644
index 00000000000..97f77522022
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/matrix-dl/default.nix
@@ -0,0 +1,25 @@
+{ lib, python3Packages, fetchFromGitHub }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "matrix-dl-unstable";
+  version = "2019-09-22";
+
+  src = fetchFromGitHub {
+    owner = "rubo77";
+    repo = "matrix-dl";
+    rev = "e91610f45b7b3b0aca34923309fc83ba377f8a69";
+    sha256 = "036xfdd21pcfjlilknc67z5jqpk0vz07853wwcsiac32iypc6f2q";
+  };
+
+  propagatedBuildInputs = with python3Packages; [
+    matrix-client
+  ];
+
+  meta = with lib; {
+    description = "Download backlogs from Matrix as raw text";
+    homepage = src.meta.homepage;
+    license = licenses.gpl1Plus;
+    maintainers = with maintainers; [ aw ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/quaternion/default.nix b/pkgs/applications/networking/instant-messengers/quaternion/default.nix
index 757551c7074..ec6a497bde9 100644
--- a/pkgs/applications/networking/instant-messengers/quaternion/default.nix
+++ b/pkgs/applications/networking/instant-messengers/quaternion/default.nix
@@ -1,7 +1,7 @@
 { mkDerivation, stdenv, lib, fetchFromGitHub, cmake
 , qtbase, qtquickcontrols, qtkeychain, qtmultimedia, qttools
 , libqmatrixclient_0_5
-, gnome3
+, libsecret
 }:
 
 let
@@ -16,7 +16,7 @@ let
       inherit sha256;
     };
 
-    buildInputs = [ qtbase qtmultimedia qtquickcontrols qtkeychain library gnome3.libsecret ];
+    buildInputs = [ qtbase qtmultimedia qtquickcontrols qtkeychain library libsecret ];
 
     nativeBuildInputs = [ cmake qttools ];
 
diff --git a/pkgs/applications/networking/instant-messengers/rambox/default.nix b/pkgs/applications/networking/instant-messengers/rambox/default.nix
index 488da12c18c..71102e7ed77 100644
--- a/pkgs/applications/networking/instant-messengers/rambox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/rambox/default.nix
@@ -3,18 +3,18 @@
 }:
 
 let
-  version = "0.7.3";
+  version = "0.7.5";
 in stdenv.mkDerivation rec {
   pname = "rambox";
   inherit version;
   src = {
     x86_64-linux = fetchurl {
       url = "https://github.com/ramboxapp/community-edition/releases/download/${version}/Rambox-${version}-linux-amd64.deb";
-      sha256 = "09v8zlayas906zhqy2aw4wkvyl87ykr09sjf0nmgmf69piwmjgg6";
+      sha256 = "108yd5djnap37yh0nbjyqkp5ci1zmydfzqcsbapin40a4f36zm31";
     };
     i686-linux = fetchurl {
       url = "https://github.com/ramboxapp/community-edition/releases/download/${version}/Rambox-${version}-linux-i386.deb";
-      sha256 = "0gv4pf3vhrw4xyccm24ivv92d9qy4zpwsh0m82ib1w764lyxmyrz";
+      sha256 = "1pvh048h6m19rmbscsy69ih0jkyhazmq2pcagmf3kk8gmbi7y6p6";
     };
   }.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
 
@@ -43,7 +43,7 @@ in stdenv.mkDerivation rec {
     description = "Free and Open Source messaging and emailing app that combines common web applications into one";
     homepage = http://rambox.pro;
     license = licenses.mit;
-    maintainers = [ maintainers.gnidorah ];
+    maintainers = with maintainers; [ gnidorah ma27 ];
     platforms = ["i686-linux" "x86_64-linux"];
     hydraPlatforms = [];
   };
diff --git a/pkgs/applications/networking/instant-messengers/rambox/pro.nix b/pkgs/applications/networking/instant-messengers/rambox/pro.nix
index df4675b0449..16c96a86a41 100644
--- a/pkgs/applications/networking/instant-messengers/rambox/pro.nix
+++ b/pkgs/applications/networking/instant-messengers/rambox/pro.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "rambox-pro";
-  version = "1.2.2";
+  version = "1.3.1";
 
   dontBuild = true;
   dontStrip = true;
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/ramboxapp/download/releases/download/v${version}/RamboxPro-${version}-linux-x64.tar.gz";
-    sha256 = "1zzlfk86gzg20qapqz9s8p9vmak8vj1smkwn9yrzs2yisfqh0gpc";
+    sha256 = "1cy4h2yzrpr3gxd16p4323w06i67d82jjlyx737c3ngzw7aahmq1";
   };
 
   installPhase = ''
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Messaging and emailing app that combines common web applications into one";
-    homepage = https://rambox.pro;
+    homepage = "https://rambox.pro";
     license = licenses.unfree;
     maintainers = with maintainers; [ chrisaw ];
     platforms = [ "i686-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json
index 418375e80c3..390b61d8d36 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-package.json
@@ -2,7 +2,7 @@
   "name": "riot-web",
   "productName": "Riot",
   "main": "src/electron-main.js",
-  "version": "1.5.12",
+  "version": "1.5.15",
   "description": "A feature-rich client for Matrix.org",
   "author": "New Vector Ltd.",
   "dependencies": {
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix
index b76848c2b81..e1dce803b40 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-desktop-yarndeps.nix
@@ -610,11 +610,11 @@
       };
     }
     {
-      name = "minimist___minimist_1.2.0.tgz";
+      name = "minimist___minimist_1.2.2.tgz";
       path = fetchurl {
-        name = "minimist___minimist_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz";
-        sha1 = "a35008b20f41383eec1fb914f4cd5df79a264284";
+        name = "minimist___minimist_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/minimist/-/minimist-1.2.2.tgz";
+        sha1 = "b00a00230a1108c48c169e69a291aafda3aacd63";
       };
     }
     {
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix b/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix
index 87342115e1e..37fcafd961a 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-desktop.nix
@@ -1,17 +1,20 @@
-{ pkgs, stdenv, fetchFromGitHub, makeWrapper, makeDesktopItem, electron_7, riot-web, mkYarnPackage }:
-
+{ stdenv, fetchFromGitHub
+, makeWrapper, makeDesktopItem, mkYarnPackage
+, electron_7, riot-web, gtk3
+, wrapGAppsHook, glib
+}:
 # Notes for maintainers:
 # * versions of `riot-web` and `riot-desktop` should be kept in sync.
 # * the Yarn dependency expression must be updated with `./update-riot-desktop.sh <git release tag>`
 
 let
   executableName = "riot-desktop";
-  version = "1.5.13";
+  version = "1.5.15";
   riot-web-src = fetchFromGitHub {
     owner = "vector-im";
     repo = "riot-web";
     rev = "v${version}";
-    sha256 = "1p2bdqq8yziv3l7kjkwqvi27a8djav7rk3lsipl7dvdjk1926941";
+    sha256 = "08yk5is6n9ci1jml0b94a3swdybx01k5klbl30i1b76biyn75m77";
   };
   electron = electron_7;
 
@@ -24,7 +27,14 @@ in mkYarnPackage rec {
   packageJSON = ./riot-desktop-package.json;
   yarnNix = ./riot-desktop-yarndeps.nix;
 
-  nativeBuildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ wrapGAppsHook ];
+
+  extraBuildInputs = [
+    glib
+    gtk3
+  ];
+
+  dontWrapGApps = true;
 
   installPhase = ''
     # resources
@@ -44,10 +54,13 @@ in mkYarnPackage rec {
     # desktop item
     mkdir -p "$out/share"
     ln -s "${desktopItem}/share/applications" "$out/share/applications"
+  '';
 
+  postFixup = ''
     # executable wrapper
     makeWrapper '${electron}/bin/electron' "$out/bin/${executableName}" \
-      --add-flags "$out/share/riot/electron"
+      --add-flags "$out/share/riot/electron" \
+      "''${gappsWrapperArgs[@]}"
   '';
 
   # Do not attempt generating a tarball for riot-web again.
@@ -70,7 +83,7 @@ in mkYarnPackage rec {
     comment = meta.description;
     categories = "Network;InstantMessaging;Chat;";
     extraEntries = ''
-      StartupWMClass="riot"
+      StartupWMClass=riot
     '';
   };
 
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
index 1ff55fbb1cb..69699505bb6 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
@@ -12,11 +12,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "riot-web";
-  version = "1.5.13";
+  version = "1.5.15";
 
   src = fetchurl {
     url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
-    sha256 = "0xghpf9rv7ns5aipc6n517qd9dp50rr93arvx6r36kqhkdyzbfad";
+    sha256 = "09a9l1l65m2c4ldycjhnqn0mmblm3j65vc9rcjfkdxqbd6bh86h7";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/networking/instant-messengers/signal-cli/default.nix b/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
index 8471f43c6dd..a062d679f7f 100644
--- a/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-cli/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "signal-cli";
-  version = "0.6.5";
+  version = "0.6.6";
 
   # Building from source would be preferred, but is much more involved.
   src = fetchurl {
     url = "https://github.com/AsamK/signal-cli/releases/download/v${version}/signal-cli-${version}.tar.gz";
-    sha256 = "082kq8kadxbwzf31fmlq4in714id2irk0hhqsl53vsl3wmv45zvv";
+    sha256 = "1r0w9knxa2kx5my9xgmcnhq14287ixwbqxqip5ispj78d27g4zfq";
   };
 
   buildInputs = lib.optionals stdenv.isLinux [ libmatthew_java dbus dbus_java ];
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with lib; {
-    homepage = https://github.com/AsamK/signal-cli;
+    homepage = "https://github.com/AsamK/signal-cli";
     description = "Command-line and dbus interface for communicating with the Signal messaging service";
     license = licenses.gpl3;
     maintainers = with maintainers; [ ivan erictapen ];
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
index 3592665ef0b..454d9b2884f 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
@@ -23,7 +23,7 @@ let
       else "");
 in stdenv.mkDerivation rec {
   pname = "signal-desktop";
-  version = "1.32.1"; # Please backport all updates to the stable channel.
+  version = "1.33.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:
@@ -33,7 +33,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 = "0sfzz1z57l20prj2s8hdl8ip1hrlzb5fqnccqcfd101a6mjnp9i9";
+    sha256 = "0s403243cm8x3daj4p7cpp5z0hwmsnk21cq42zcfls2q5d30p6wz";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
index 78b7a6d81a2..3aaaa7eb8ba 100644
--- a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, dpkg
 , alsaLib, atk, cairo, cups, curl, dbus, expat, fontconfig, freetype, gdk-pixbuf, glib, glibc, gnome2, gnome3
-, gtk3, libnotify, libpulseaudio, libsecret, libv4l, nspr, nss, pango, systemd, wrapGAppsHook, xorg
+, gtk3, libappindicator-gtk3, libnotify, libpulseaudio, libsecret, libv4l, nspr, nss, pango, systemd, wrapGAppsHook, xorg
 , at-spi2-atk, libuuid, at-spi2-core }:
 
 let
 
   # Please keep the version x.y.0.z and do not update to x.y.76.z because the
   # source of the latter disappears much faster.
-  version = "8.56.0.103";
+  version = "8.58.0.93";
 
   rpath = stdenv.lib.makeLibraryPath [
     alsaLib
@@ -29,6 +29,7 @@ let
     gnome2.GConf
     gdk-pixbuf
     gtk3
+    libappindicator-gtk3
 
     gnome3.gnome-keyring
 
@@ -63,7 +64,7 @@ let
           "https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb"
           "https://web.archive.org/web/https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb"
         ];
-        sha256 = "01qyi92dh4xalzaqzj9n3bz59y91rx45gkyw4k9ckjknbjwb3c90";
+        sha256 = "1nqadil50z896jg0r202gw3xmm3diawn0pnh6n6nxn900f02avl3";
       }
     else
       throw "Skype for linux is not supported on ${stdenv.hostPlatform.system}";
diff --git a/pkgs/applications/networking/instant-messengers/slack/dark-theme.nix b/pkgs/applications/networking/instant-messengers/slack/dark-theme.nix
deleted file mode 100644
index 903d8e60d6d..00000000000
--- a/pkgs/applications/networking/instant-messengers/slack/dark-theme.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ stdenv, fetchgit }:
-
-stdenv.mkDerivation rec {
-  rev = "f760176c6e133667ce73aeecba8b0c0eb8822941";
-  version = "2019-09-11";
-  pname = "slack-theme-black";
-
-  src = fetchgit { inherit rev;
-    url = "https://github.com/laCour/slack-night-mode";
-    sha256 = "1kx8nx7mhrabs5wxqgvy86s5smy5hw49gv6yc95yxwx6ymwpgbzj";
-  };
-
-  dontUnpack = true;
-
-  buildCommand = ''
-    mkdir $out
-    cp $src/css/raw/black.css $out/theme.css
-  '';
-}
diff --git a/pkgs/applications/networking/instant-messengers/slack/default.nix b/pkgs/applications/networking/instant-messengers/slack/default.nix
index 32f50b6fd63..712d45e2b19 100644
--- a/pkgs/applications/networking/instant-messengers/slack/default.nix
+++ b/pkgs/applications/networking/instant-messengers/slack/default.nix
@@ -1,35 +1,60 @@
-{ theme ? null, stdenv, fetchurl, dpkg, makeWrapper , alsaLib, atk, cairo,
-cups, curl, dbus, expat, fontconfig, freetype, glib , gnome2, gtk3, gdk-pixbuf,
-libappindicator-gtk3, libnotify, libxcb, nspr, nss, pango , systemd, xorg,
-at-spi2-atk, at-spi2-core, libuuid, nodePackages, libpulseaudio, xdg_utils
+{ stdenv
+, fetchurl
+, dpkg
+, makeWrapper
+, nodePackages
+, alsaLib
+, at-spi2-atk
+, at-spi2-core
+, atk
+, cairo
+, cups
+, curl
+, dbus
+, expat
+, fontconfig
+, freetype
+, gdk-pixbuf
+, glib
+, gnome2
+, gtk3
+, libappindicator-gtk3
+, libnotify
+, libpulseaudio
+, libuuid
+, libxcb
+, nspr
+, nss
+, pango
+, systemd
+, xdg_utils
+, xorg
 }:
 
 let
 
-  version = "4.2.0";
+  pname = "slack";
 
   inherit (stdenv.hostPlatform) system;
 
   throwSystem = throw "Unsupported system: ${system}";
 
-  pname = "slack";
-
   sha256 = {
-    x86_64-darwin = "0947a98m7yz4hldjvcqnv9s17dpvlsk9sflc1zc99hf500zck0w1";
-    x86_64-linux = "01b2klhky04fijdqcpfafgdqx2c5nh2fpnzvzgvz10hv7h16cinv";
+    x86_64-darwin = "05xsbiviikrwfayjr6rvvfkm70681x2an6mgcg1cxw1fsi4sr6fd";
+    x86_64-linux = "0h2rfgx92yq9a6dqsv9a0r8a6m5xfrywkljjk5w9snw49b0r1p12";
   }.${system} or throwSystem;
 
-
   meta = with stdenv.lib; {
     description = "Desktop client for Slack";
     homepage = https://slack.com;
     license = licenses.unfree;
-    maintainers = [ maintainers.mmahut ];
+    maintainers = with maintainers; [ mmahut ];
     platforms = [ "x86_64-darwin" "x86_64-linux" ];
   };
 
   linux = stdenv.mkDerivation rec {
-    inherit pname version meta;
+    inherit pname meta;
+    version = "4.4.0";
     src = fetchurl {
       url = "https://downloads.slack-edge.com/linux_releases/slack-desktop-${version}-amd64.deb";
       inherit sha256;
@@ -47,23 +72,22 @@ let
       expat
       fontconfig
       freetype
+      gdk-pixbuf
       glib
       gnome2.GConf
-      gdk-pixbuf
       gtk3
-      pango
+      libappindicator-gtk3
       libnotify
+      libpulseaudio
+      libuuid
       libxcb
-      libappindicator-gtk3
       nspr
       nss
+      pango
       stdenv.cc.cc
       systemd
-      libuuid
-      libpulseaudio
-  
-      xorg.libxkbfile
       xorg.libX11
+      xorg.libXScrnSaver
       xorg.libXcomposite
       xorg.libXcursor
       xorg.libXdamage
@@ -73,65 +97,51 @@ let
       xorg.libXrandr
       xorg.libXrender
       xorg.libXtst
-      xorg.libXScrnSaver
+      xorg.libxkbfile
     ] + ":${stdenv.cc.cc.lib}/lib64";
 
     buildInputs = [
       gtk3  # needed for GSETTINGS_SCHEMAS_PATH
     ];
-  
+
     nativeBuildInputs = [ dpkg makeWrapper nodePackages.asar ];
-  
+
     dontUnpack = true;
     dontBuild = true;
     dontPatchELF = true;
-  
+
     installPhase = ''
       # The deb file contains a setuid binary, so 'dpkg -x' doesn't work here
       dpkg --fsys-tarfile $src | tar --extract
       rm -rf usr/share/lintian
-  
+
       mkdir -p $out
       mv usr/* $out
-  
+
       # Otherwise it looks "suspicious"
       chmod -R g-w $out
-  
+
       for file in $(find $out -type f \( -perm /0111 -o -name \*.so\* \) ); do
         patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$file" || true
         patchelf --set-rpath ${rpath}:$out/lib/slack $file || true
       done
-  
+
       # Replace the broken bin/slack symlink with a startup wrapper
       rm $out/bin/slack
       makeWrapper $out/lib/slack/slack $out/bin/slack \
         --prefix XDG_DATA_DIRS : $GSETTINGS_SCHEMAS_PATH \
         --prefix PATH : ${xdg_utils}/bin
-  
+
       # Fix the desktop link
       substituteInPlace $out/share/applications/slack.desktop \
         --replace /usr/bin/ $out/bin/ \
         --replace /usr/share/ $out/share/
-    '' + stdenv.lib.optionalString (theme != null) ''
-      asar extract $out/lib/slack/resources/app.asar $out/lib/slack/resources/app.asar.unpacked
-      cat <<EOF >> $out/lib/slack/resources/app.asar.unpacked/dist/ssb-interop.bundle.js
-  
-      var fs = require('fs');
-      document.addEventListener('DOMContentLoaded', function() {
-        fs.readFile('${theme}/theme.css', 'utf8', function(err, css) {
-          let s = document.createElement('style');
-          s.type = 'text/css';
-          s.innerHTML = css;
-          document.head.appendChild(s);
-        });
-      });
-      EOF
-      asar pack $out/lib/slack/resources/app.asar.unpacked $out/lib/slack/resources/app.asar
     '';
   };
 
-  darwin = stdenv.mkDerivation {
-    inherit pname version meta;
+  darwin = stdenv.mkDerivation rec {
+    inherit pname meta;
+    version = "4.4.1";
 
     phases = [ "installPhase" ];
 
diff --git a/pkgs/applications/networking/instant-messengers/slack/update.sh b/pkgs/applications/networking/instant-messengers/slack/update.sh
deleted file mode 100755
index 6a15298c4e7..00000000000
--- a/pkgs/applications/networking/instant-messengers/slack/update.sh
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/env nix-shell
-#!nix-shell -i bash -p curl common-updater-scripts jq
-
-set -eu -o pipefail
-
-oldVersion="$(nix-instantiate --eval -E "with import ./. {}; lib.getVersion slack-theme-black" | tr -d '"')"
-latestSha="$(curl -L -s https://api.github.com/repos/laCour/slack-night-mode/commits\?sha\=master\&since\=${oldVersion} | jq -r '.[0].sha')"
-
-if [ ! "null" = "${latestSha}" ]; then
-  latestDate="$(curl -L -s https://api.github.com/repos/laCour/slack-night-mode/commits/${latestSha} | jq '.commit.author.date' | sed 's|"\(.*\)T.*|\1|g')"
-  update-source-version slack-theme-black "${latestSha}" --version-key=rev
-  update-source-version slack-theme-black "${latestDate}" --ignore-same-hash
-  nixpkgs="$(git rev-parse --show-toplevel)"
-  default_nix="$nixpkgs/pkgs/applications/networking/instant-messengers/slack/dark-theme.nix"
-  git add "${default_nix}"
-  git commit -m "slack-theme-black: ${oldVersion} -> ${latestDate}"
-else
-  echo "slack-theme-black is already up-to-date"
-fi
diff --git a/pkgs/applications/networking/instant-messengers/swift-im/default.nix b/pkgs/applications/networking/instant-messengers/swift-im/default.nix
index d47b7d00af9..0f1a7478a18 100644
--- a/pkgs/applications/networking/instant-messengers/swift-im/default.nix
+++ b/pkgs/applications/networking/instant-messengers/swift-im/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   patches = [ ./qt-5.11.patch ./scons.patch ];
 
-  nativeBuildInputs = [ pkgconfig qttools scons ];
+  nativeBuildInputs = [ pkgconfig qttools scons.py2 ];
 
   buildInputs = [
     GConf avahi boost hunspell libXScrnSaver libedit libidn libnatpmp libxml2
diff --git a/pkgs/applications/networking/instant-messengers/teams/default.nix b/pkgs/applications/networking/instant-messengers/teams/default.nix
index ef7e3717f72..63d922ab299 100644
--- a/pkgs/applications/networking/instant-messengers/teams/default.nix
+++ b/pkgs/applications/networking/instant-messengers/teams/default.nix
@@ -15,11 +15,11 @@
 
 stdenv.mkDerivation rec {
   pname = "teams";
-  version = "1.3.00.958";
+  version = "1.3.00.5153";
 
   src = fetchurl {
     url = "https://packages.microsoft.com/repos/ms-teams/pool/main/t/teams/teams_${version}_amd64.deb";
-    sha256 = "015awxgbwk4j973jnxj7q3i8csx7wnwpwp5g4jlmn7z8fxwy83d5";
+    sha256 = "13c7fmij0gcg6mrjjj2mhs21q7fzdssscwhihzyrmbmj64cd0a69";
   };
 
   nativeBuildInputs = [ dpkg autoPatchelfHook wrapGAppsHook ];
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
index 3d409666798..60fd95a1476 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
@@ -19,12 +19,12 @@ with lib;
 
 mkDerivation rec {
   pname = "telegram-desktop";
-  version = "1.9.21";
+  version = "2.0.1";
 
   # Telegram-Desktop with submodules
   src = fetchurl {
     url = "https://github.com/telegramdesktop/tdesktop/releases/download/v${version}/tdesktop-${version}-full.tar.gz";
-    sha256 = "1b7z68q2sb2y203nf4p6lmz72zkpi5gyv9ypqi5h99bm2j6bbyg1";
+    sha256 = "0g3jw4can9gmp48s3b8s1w8n9xi54i142y74fszxf9jyq5drzlff";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix b/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix
index ef842275a5d..d91cc5f8c84 100644
--- a/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telepathy/mission-control/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetchurl
+, fetchpatch
 , pkgconfig
 , dconf
 , telepathy-glib
@@ -19,6 +20,16 @@ stdenv.mkDerivation rec {
     sha256 = "00xxv38cfdirnfvgyd56m60j0nkmsv5fz6p2ydyzsychicxl6ssc";
   };
 
+  patches = [
+    # Fix property name (new GLib is stricter)
+    # https://github.com/NixOS/nixpkgs/pull/81626#issuecomment-601494939
+    # https://gitlab.gnome.org/GNOME/polari/-/merge_requests/141
+    (fetchpatch {
+      url = "https://github.com/TelepathyIM/telepathy-mission-control/commit/d8dab08fe8db137c6bbd8bbdc3d9b01d98c48910.patch";
+      sha256 = "Sw+V5QcWQ5zugwTTdkwa3pqV+v5XD0OhH6xI5ymgkOU=";
+    })
+  ];
+
   buildInputs = [
     python3
   ]; # ToDo: optional stuff missing
diff --git a/pkgs/applications/networking/instant-messengers/vk-messenger/default.nix b/pkgs/applications/networking/instant-messengers/vk-messenger/default.nix
index 165e3e959e0..7f2ce9553e9 100644
--- a/pkgs/applications/networking/instant-messengers/vk-messenger/default.nix
+++ b/pkgs/applications/networking/instant-messengers/vk-messenger/default.nix
@@ -3,18 +3,18 @@
 , wrapGAppsHook }:
 
 let
-  version = "4.5.2";
+  version = "5.0.1";
 in stdenv.mkDerivation {
   pname = "vk-messenger";
   inherit version;
   src = {
     i686-linux = fetchurl {
       url = "https://desktop.userapi.com/rpm/master/vk-${version}.i686.rpm";
-      sha256 = "11xsdmvd2diq3m61si87x2c08nap0vakcypm90wjmdjwayg3fdlw";
+      sha256 = "1ji23x13lzbkiqfrrwx1pj6gmms0p58cjmjc0y4g16kqhlxl60v6";
     };
     x86_64-linux = fetchurl {
       url = "https://desktop.userapi.com/rpm/master/vk-${version}.x86_64.rpm";
-      sha256 = "0j65d6mwj6rxczi0p9fsr6jh37jxw3a3h6w67xwgdvibb7lf3gbb";
+      sha256 = "01vvmia2qrxvrvavk9hkkyvfg4pg15m01grwb28884vy4nqw400y";
     };
   }.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
 
diff --git a/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix b/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
index c04851d586b..d69f22f32ac 100644
--- a/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix
@@ -20,13 +20,13 @@ let
   pname = "wire-desktop";
 
   version = {
-    x86_64-darwin = "3.12.3490";
-    x86_64-linux = "3.12.2916";
+    x86_64-darwin = "3.16.3630";
+    x86_64-linux = "3.16.2923";
   }.${system} or throwSystem;
 
   sha256 = {
-    x86_64-darwin = "0xvhx3r99fl1v1cdqj6sk46kzxv9qi7j754amkhv7knrpmgyp55z";
-    x86_64-linux = "0xx03cpy6kapbjpygwranxjg1a0p8s1xq3cpapvi55rnkbk0qvjw";
+    x86_64-darwin = "1lnjn45bhd36n9xgx6xx9cggwivvkr2s6r4zai2dwg0aac1bywr5";
+    x86_64-linux = "0c8jmlsg2gnxsvly04xj1al80nj52rg4czfdha58sg14x14lyspz";
   }.${system} or throwSystem;
 
   meta = with stdenv.lib; {
@@ -75,7 +75,7 @@ let
       icon = "wire-desktop";
       name = "wire-desktop";
       extraEntries = ''
-        StartupWMClass="Wire"
+        StartupWMClass=Wire
       '';
     };
 
@@ -121,7 +121,7 @@ let
 
     src = fetchurl {
       url = "https://github.com/wireapp/wire-desktop/releases/download/"
-      + "macos%2F${version}/Wire.pkg";
+          + "macos%2F${version}/Wire.pkg";
       inherit sha256;
     };
 
diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
index d47368a9cb2..7a46c0604cc 100644
--- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
+++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix
@@ -15,11 +15,11 @@ assert pulseaudioSupport -> libpulseaudio != null;
 let
   inherit (stdenv.lib) concatStringsSep makeBinPath optional;
 
-  version = "3.5.361976.0301";
+  version = "3.5.383291.0407";
   srcs = {
     x86_64-linux = fetchurl {
       url = "https://zoom.us/client/${version}/zoom_x86_64.tar.xz";
-      sha256 = "12pqs4pk73d7y9b49vq6f4fryph27k45zm1rjrpijnbi6ln2w993";
+      sha256 = "1l560gv1wpfiggxylz3f62mcjjchpq3p0i1j4b2b68ckgc5sj80k";
     };
   };
 
diff --git a/pkgs/applications/networking/instant-messengers/zulip/default.nix b/pkgs/applications/networking/instant-messengers/zulip/default.nix
index 33392af766c..0c0c6debd79 100644
--- a/pkgs/applications/networking/instant-messengers/zulip/default.nix
+++ b/pkgs/applications/networking/instant-messengers/zulip/default.nix
@@ -5,12 +5,12 @@
 
 let
   pname = "zulip";
-  version = "4.0.0";
+  version = "5.0.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://github.com/zulip/zulip-desktop/releases/download/v${version}/Zulip-${version}-x86_64.AppImage";
-    sha256 = "1pni02mb5bvwx3k45vd6ga269ghdl633gjklyslai24rrhp16h9z";
+    sha256 = "0qwlhkzb3lbzk3piyfx8nn827kcafrl3j1nxrn18f8px9gwasinz";
     name="${pname}-${version}.AppImage";
   };
 
diff --git a/pkgs/applications/networking/ipfs-cluster/default.nix b/pkgs/applications/networking/ipfs-cluster/default.nix
index 9bf7faf51f3..a214f222d56 100644
--- a/pkgs/applications/networking/ipfs-cluster/default.nix
+++ b/pkgs/applications/networking/ipfs-cluster/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub, fetchgx, gx-go }:
 
 buildGoModule rec {
   pname = "ipfs-cluster";
@@ -14,8 +14,6 @@ buildGoModule rec {
     sha256 = "1jh6ynj50jd4w79widaqrgm3h3yz5h03vq0lbsx717a8d9073blh";
   };
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "Allocate, replicate, and track Pins across a cluster of IPFS daemons";
     homepage = https://cluster.ipfs.io/;
@@ -24,3 +22,4 @@ buildGoModule rec {
     maintainers = with maintainers; [ jglukasik ];
   };
 }
+
diff --git a/pkgs/applications/networking/ipfs-migrator/default.nix b/pkgs/applications/networking/ipfs-migrator/default.nix
index dc646f9471e..578ac9b0479 100644
--- a/pkgs/applications/networking/ipfs-migrator/default.nix
+++ b/pkgs/applications/networking/ipfs-migrator/default.nix
@@ -19,7 +19,7 @@ buildGoPackage {
 
   meta = with stdenv.lib; {
     description = "Migration tool for ipfs repositories";
-    homepage = https://ipfs.io/;
+    homepage = "https://ipfs.io/";
     license = licenses.mit;
     platforms = platforms.unix;
     maintainers = with maintainers; [ elitak ];
diff --git a/pkgs/applications/networking/ipfs-migrator/deps.nix b/pkgs/applications/networking/ipfs-migrator/deps.nix
index 1ad1c383c8c..b4ae5ef827e 100644
--- a/pkgs/applications/networking/ipfs-migrator/deps.nix
+++ b/pkgs/applications/networking/ipfs-migrator/deps.nix
@@ -3,7 +3,7 @@
     goPackagePath = "github.com/jbenet/goprocess";
     fetch = {
       type = "git";
-      url = https://github.com/jbenet/goprocess;
+      url = "https://github.com/jbenet/goprocess";
       rev = "b497e2f366b8624394fb2e89c10ab607bebdde0b";
       sha256 = "1lnvkzki7vnqn5c4m6bigk0k85haicmg27w903kwg30rdvblm82s";
     };
@@ -12,7 +12,7 @@
     goPackagePath = "github.com/jbenet/go-random";
     fetch = {
       type = "git";
-      url = https://github.com/jbenet/go-random;
+      url = "https://github.com/jbenet/go-random";
       rev = "384f606e91f542a98e779e652eed88051618f0f7";
       sha256 = "0gcshzl9n3apzc0jaxqrjsc038yfrzfyhpdqgbpcnajin83l2msa";
     };
@@ -21,7 +21,7 @@
     goPackagePath = "github.com/jbenet/go-random-files";
     fetch = {
       type = "git";
-      url = https://github.com/jbenet/go-random-files;
+      url = "https://github.com/jbenet/go-random-files";
       rev = "737479700b40b4b50e914e963ce8d9d44603e3c8";
       sha256 = "1klpdc4qkrfy31r7qh00fcz42blswzabmcnry9byd5adhszxj9bw";
     };
@@ -30,7 +30,7 @@
     goPackagePath = "github.com/hashicorp/golang-lru";
     fetch = {
       type = "git";
-      url = https://github.com/hashicorp/golang-lru;
+      url = "https://github.com/hashicorp/golang-lru";
       rev = "20f1fb78b0740ba8c3cb143a61e86ba5c8669768";
       sha256 = "12k2cp2k615fjvfa5hyb9k2alian77wivds8s65diwshwv41939f";
     };
diff --git a/pkgs/applications/networking/ipfs/default.nix b/pkgs/applications/networking/ipfs/default.nix
index c3a31f4e290..4f71fcf3b74 100644
--- a/pkgs/applications/networking/ipfs/default.nix
+++ b/pkgs/applications/networking/ipfs/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "ipfs";
@@ -18,8 +18,6 @@ buildGoModule rec {
 
   modSha256 = "12m4ind1s8zaa6kssblc28z2cafy20w2jp80kzif39hg5ar9bijm";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "A global, versioned, peer-to-peer filesystem";
     homepage = https://ipfs.io/;
diff --git a/pkgs/applications/networking/irc/qweechat/default.nix b/pkgs/applications/networking/irc/qweechat/default.nix
index acf030222a1..aedd4bdf0dd 100644
--- a/pkgs/applications/networking/irc/qweechat/default.nix
+++ b/pkgs/applications/networking/irc/qweechat/default.nix
@@ -18,7 +18,7 @@ python27Packages.buildPythonApplication rec {
   '';
 
   propagatedBuildInputs = with python27Packages; [
-     pyside
+     pyside setuptools
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix
index 96d7b3faaed..ee850ea0eba 100644
--- a/pkgs/applications/networking/irc/weechat/default.nix
+++ b/pkgs/applications/networking/irc/weechat/default.nix
@@ -27,12 +27,12 @@ let
   in
     assert lib.all (p: p.enabled -> ! (builtins.elem null p.buildInputs)) plugins;
     stdenv.mkDerivation rec {
-      version = "2.7.1";
+      version = "2.8";
       pname = "weechat";
 
       src = fetchurl {
         url = "https://weechat.org/files/src/weechat-${version}.tar.bz2";
-        sha256 = "0acz41jg7lmipni9z2agfqw4dhmx5hf6k9w4pvr4zih1fhkldva2";
+        sha256 = "0xpzl7985j47rpmly4r833jxd448xpy7chqphaxmhlql2c0gc08z";
       };
 
       outputs = [ "out" "man" ] ++ map (p: p.name) enabledPlugins;
diff --git a/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix b/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix
index 632a485381d..7b98630e85e 100644
--- a/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix
+++ b/pkgs/applications/networking/irc/weechat/scripts/wee-slack/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wee-slack";
-  version = "2.4.0";
+  version = "2.5.0";
 
   src = fetchFromGitHub {
     repo = "wee-slack";
     owner = "wee-slack";
     rev = "v${version}";
-    sha256 = "0h425ln5vv76zv41dccapyfbl8qmmflbpwmrd26knqyj8k24zfpr";
+    sha256 = "0sxgi5fg8qvzqmxy7sdma6v0wj93xwh21av10n8nxvdskacw5dxz";
   };
 
   patches = [
@@ -19,13 +19,19 @@ stdenv.mkDerivation rec {
         paths = with python3Packages; [ websocket_client six ];
       }}/${python3Packages.python.sitePackages}";
     })
+    ./hardcode-json-file-path.patch
   ];
 
+  postPatch = ''
+    substituteInPlace wee_slack.py --subst-var out
+  '';
+
   passthru.scripts = [ "wee_slack.py" ];
 
   installPhase = ''
     mkdir -p $out/share
     cp wee_slack.py $out/share/wee_slack.py
+    install -D -m 0444 weemoji.json $out/share/wee-slack/weemoji.json
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/irc/weechat/scripts/wee-slack/hardcode-json-file-path.patch b/pkgs/applications/networking/irc/weechat/scripts/wee-slack/hardcode-json-file-path.patch
new file mode 100644
index 00000000000..7413a9229ce
--- /dev/null
+++ b/pkgs/applications/networking/irc/weechat/scripts/wee-slack/hardcode-json-file-path.patch
@@ -0,0 +1,12 @@
+--- a/wee_slack.py
++++ b/wee_slack.py
+@@ -4560,8 +4560,7 @@
+ 
+ def load_emoji():
+     try:
+-        DIR = w.info_get('weechat_dir', '')
+-        with open('{}/weemoji.json'.format(DIR), 'r') as ef:
++        with open('@out@/share/wee-slack/weemoji.json', 'r') as ef:
+             emojis = json.loads(ef.read())
+             if 'emoji' in emojis:
+                 print_error('The weemoji.json file is in an old format. Please update it.')
diff --git a/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix
index 038611ca289..aca9a9a111d 100644
--- a/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix
+++ b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix
@@ -22,13 +22,13 @@ let
   ]);
 in buildPythonPackage {
   pname = "weechat-matrix";
-  version = "unstable-2020-01-21";
+  version = "0.1.0";
 
   src = fetchFromGitHub {
     owner = "poljar";
     repo = "weechat-matrix";
-    rev = "46640df3e0bfb058e97d8abe723bb88fdf4e5177";
-    sha256 = "1j3l43j741csfxsp1nsc74y6wj2wm86c45iraf167g6p0sdzcq8z";
+    rev = "65a5db7291439b6132e35e8cc09ed901614fabf6";
+    sha256 = "0m3k5vrv5ab1aw1mjd0r8d71anwqzvncvv9v5zx9xp1i188sdm8x";
   };
 
   propagatedBuildInputs = [
@@ -53,11 +53,9 @@ in buildPythonPackage {
     mkdir -p $out/share $out/bin
     cp $src/main.py $out/share/matrix.py
 
-    cp \
-      $src/contrib/matrix_upload \
-      $src/contrib/matrix_decrypt \
-      $src/contrib/matrix_sso_helper \
-      $out/bin/
+    cp $src/contrib/matrix_upload.py $out/bin/matrix_upload
+    cp $src/contrib/matrix_decrypt.py $out/bin/matrix_decrypt
+    cp $src/contrib/matrix_sso_helper.py $out/bin/matrix_sso_helper
     substituteInPlace $out/bin/matrix_upload \
       --replace '/usr/bin/env -S python3' '${scriptPython}/bin/python'
     substituteInPlace $out/bin/matrix_sso_helper \
diff --git a/pkgs/applications/networking/mailreaders/aerc/default.nix b/pkgs/applications/networking/mailreaders/aerc/default.nix
index e0f98208e7a..7b24ed93406 100644
--- a/pkgs/applications/networking/mailreaders/aerc/default.nix
+++ b/pkgs/applications/networking/mailreaders/aerc/default.nix
@@ -1,6 +1,6 @@
 { stdenv, buildGoModule, fetchurl
 , go, ncurses, notmuch, scdoc
-, python3, perl, w3m, dante, Security
+, python3, perl, w3m, dante
 }:
 
 let
@@ -29,8 +29,7 @@ in buildGoModule rec {
     python3.pkgs.colorama
   ];
 
-  buildInputs = [ python3 notmuch ]
-    ++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  buildInputs = [ python3 notmuch ];
 
   GOFLAGS="-tags=notmuch";
 
diff --git a/pkgs/applications/networking/mailreaders/mutt/default.nix b/pkgs/applications/networking/mailreaders/mutt/default.nix
index 143153d4d9f..a53e1abc186 100644
--- a/pkgs/applications/networking/mailreaders/mutt/default.nix
+++ b/pkgs/applications/networking/mailreaders/mutt/default.nix
@@ -27,11 +27,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "mutt";
-  version = "1.13.4";
+  version = "1.13.5";
 
   src = fetchurl {
     url = "http://ftp.mutt.org/pub/mutt/${pname}-${version}.tar.gz";
-    sha256 = "016dzx2c0kr9xgnw4nfzpkn4nvpk56rdlcqhrwa820fq8083yzdm";
+    sha256 = "0lx65a44b03rbvcrz0y9syrik67fx3hvblxyyvz5l9bb7rdipmvc";
   };
 
   patches = optional smimeSupport (fetchpatch {
diff --git a/pkgs/applications/networking/mailreaders/notmuch/default.nix b/pkgs/applications/networking/mailreaders/notmuch/default.nix
index ac59dc91646..e4a09ec5a16 100644
--- a/pkgs/applications/networking/mailreaders/notmuch/default.nix
+++ b/pkgs/applications/networking/mailreaders/notmuch/default.nix
@@ -1,12 +1,12 @@
 { fetchurl, stdenv
 , pkgconfig, gnupg
 , xapian, gmime, talloc, zlib
-, doxygen, perl
+, doxygen, perl, texinfo
 , pythonPackages
-, bash-completion
 , emacs
 , ruby
 , which, dtach, openssl, bash, gdb, man
+, withEmacs ? true
 }:
 
 with stdenv.lib;
@@ -25,15 +25,19 @@ stdenv.mkDerivation rec {
     sha256 = "0dfwa38vgnxk9cvvpza66szjgp8lir6iz6yy0cry9593lywh9xym";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [
+    pkgconfig
+    doxygen                   # (optional) api docs
+    pythonPackages.sphinx     # (optional) documentation -> doc/INSTALL
+    texinfo                   # (optional) documentation -> doc/INSTALL
+  ] ++ optional withEmacs [ emacs ];
+
   buildInputs = [
-    gnupg # undefined dependencies
+    gnupg                     # undefined dependencies
     xapian gmime talloc zlib  # dependencies described in INSTALL
-    doxygen perl  # (optional) api docs
-    pythonPackages.sphinx pythonPackages.python  # (optional) documentation -> doc/INSTALL
-    bash-completion  # (optional) dependency to install bash completion
-    emacs  # (optional) to byte compile emacs code, also needed for tests
-    ruby  # (optional) ruby bindings
+    perl
+    pythonPackages.python
+    ruby
   ];
 
   postPatch = ''
@@ -42,13 +46,19 @@ stdenv.mkDerivation rec {
 
     substituteInPlace lib/Makefile.local \
       --replace '-install_name $(libdir)' "-install_name $out/lib"
-
+  '' + optionalString withEmacs ''
     substituteInPlace emacs/notmuch-emacs-mua \
       --replace 'EMACS:-emacs' 'EMACS:-${emacs}/bin/emacs' \
       --replace 'EMACSCLIENT:-emacsclient' 'EMACSCLIENT:-${emacs}/bin/emacsclient'
   '';
 
-  configureFlags = [ "--zshcompletiondir=${placeholder "out"}/share/zsh/site-functions" ];
+  configureFlags = [
+    "--zshcompletiondir=${placeholder "out"}/share/zsh/site-functions"
+    "--bashcompletiondir=${placeholder "out"}/share/bash-completion/completions"
+    "--infodir=${placeholder "info"}"
+  ] ++ optional (!withEmacs) "--without-emacs"
+    ++ optional (withEmacs) "--emacslispdir=${placeholder "emacs"}/share/emacs/site-lisp"
+    ++ optional (isNull ruby) "--without-ruby";
 
   # Notmuch doesn't use autoconf and consequently doesn't tag --bindir and
   # friends
@@ -56,6 +66,9 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
   makeFlags = [ "V=1" ];
 
+
+  outputs = [ "out" "man" "info" ] ++ stdenv.lib.optional withEmacs "emacs";
+
   preCheck = let
     test-database = fetchurl {
       url = "https://notmuchmail.org/releases/test-databases/database-v1.tar.xz";
@@ -68,10 +81,14 @@ stdenv.mkDerivation rec {
   checkTarget = "test";
   checkInputs = [
     which dtach openssl bash
-    gdb man
+    gdb man emacs
   ];
 
-  installTargets = [ "install" "install-man" ];
+  installTargets = [ "install" "install-man" "install-info" ];
+
+  postInstall = stdenv.lib.optionalString withEmacs ''
+    moveToOutput bin/notmuch-emacs-mua $emacs
+  '';
 
   dontGzipMan = true; # already compressed
 
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
index e5ef5567800..39950bd58c5 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/release_sources.nix
@@ -1,615 +1,615 @@
 {
-  version = "68.6.0";
+  version = "68.7.0";
   sources = [
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/ar/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ar/thunderbird-68.7.0.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "af46815cdcaa2f9d7819f9d38d9d924813e28784a94829717301fc603175a7e0c6d20b698f76125bc7a31be83753df65e155c36643c77e18eb48ac57257a4969";
+      sha512 = "549c2fde5a7da05f1d0da28e6e203fffef5cc7d39073baef204da5ce221fdb12da53da64b29dc84cf4518eaee7394db71cee6e22611d5d86938df1b9b3bf8e0b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/ast/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ast/thunderbird-68.7.0.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "484b7abf08bbbb5a6302d35f4d6f5b40ecbba900b40b11d1e40f46e613af4c51a17413844bc8d5792b55bc11f5585d1ec8956cef99c7c1c6b6255389a34e7256";
+      sha512 = "92fa156e6dd72d9c0a6b0b6889e7486d97922cad3d8c8a4e572b048ff5694cd4fcd7f7f91eff718417760b72a50d045e5508befb8404f9343ec73633c8c43040";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/be/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/be/thunderbird-68.7.0.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "32e26ea9effd43c50ca27c59e9e65dc2beb882fbb0df2d7ae7eca41fd736b740872c756a3722df69095bc6015657ffa314bf03d0ca6f8119ca861ac7835e8dde";
+      sha512 = "1ddce136d33b7eb6065cc1fa02f3e167b76a546308a19edf51f1102e569b259cb2bbd98d720050d48669ae04610cde6c09400ae6a9f467d611f3a5d332dcf203";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/bg/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/bg/thunderbird-68.7.0.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "cc19721c742e339e1c988759dc3cc6055e9c43b590075994774985158e366347a3bada182224a613e8f181491bcbee6a05712a63e0ee1d02de11e61442faea37";
+      sha512 = "31aeab60348dcb199e3fee7c167eccb8e02e98a62c0a30ad48d2963fda56a1cf25ff71eb9f16bc186db481fa90d795191c6aa29eef33742adab6e2df0c2e5282";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/br/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/br/thunderbird-68.7.0.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "590cffad2e7027a5b833462d752c3b4507c9ebc04af621013a745534091255ca1cfe6863d191200015057e6d1fe289691229c4e6242e8aa9047ca09b15d68ce4";
+      sha512 = "f1555dbb5e30ad7d9d7468473f042424e9abd159a85325af55fdda74963c54e780f76093d15a2fc23a555b22896c6a76ad4c449846611222b63d13745cb577b7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/ca/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ca/thunderbird-68.7.0.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "56f6a25c737d18da4662410710306d93290f9db851cf338d564d9088004f6169390797fde3afd720b376d642394ba4052bddbb5aeff100d6b9e97ef7d2a1ea19";
+      sha512 = "44e0a8cb1feda921b6a3afb6ef0f72d2ad3aaf681f908673c015ef43a660914df5a8b61a6d987c3ddb0b6abc6cd778e0ddb07c56c737a74848942e26d4ee45a2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/cak/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/cak/thunderbird-68.7.0.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "45057e2f2b4cbcca5349f25c2396311ee8d5ed13fb329d471907dde9fad89810eeb72a5eac1adddcb86527c7a9bfc8dd190987d579f28ad5f6e1a9b2e0792ce8";
+      sha512 = "e907643f6c7065117fd131d24b452734c229fad3bace6d445de15757ffbed875fdc69dcfc535cbe7b00b38df30c0b69b378b50560382e57fabff166c71d7ea33";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/cs/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/cs/thunderbird-68.7.0.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "9c7452d7ff20c1c15f1f12cb06493ab65549aa934b86aa37ebd0be95e55f4156f155f5d3e7bbdaae79d02514292458ae7de14852072067f52715b0ba45ae99f6";
+      sha512 = "1b65fe735bb61d2dbcd2d23ede39e7770a66feb6f898ec31cb7c198fdf95796d4f42876730fdb993767026c4c315a9be9cb53229cc21a5328ff443bc463ca4c3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/cy/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/cy/thunderbird-68.7.0.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "6498688d0f18c1a307c19d3d738611993c35e56e67fae024d0676ec49dba6a752b883b539e2a83085c06f6065772ce393f4d0f9e0a898bf02a141e36ebbf523c";
+      sha512 = "77a3beb1ce6e78fb1d5138a7f0021462efb96e7f1d13cae2213670016a4a89dbd4a46bbe0e588ad15957ec71d053643cbd01033d9cdcc4e91b9e0303726abc27";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/da/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/da/thunderbird-68.7.0.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "ad306983ae608ce8fa6a706a6459d8047e00f156870e8dc2e6b0c6c07661d6a836e8599a590b2f166b819a8d5b0e75106be7e4db0e7746566cac9397b9c29f7f";
+      sha512 = "b9d12257b5b4fae31cb70edf36ff02d48dc56481b37fa3f3a65bacadc38d772e407d7c1382899179299c23d70e55652c1d05f8ada855621a9db5f300b9c983a7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/de/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/de/thunderbird-68.7.0.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "0449a38f90aff5e05a0b5382d108999c59049b8974592c3310fe2efaa8d0928e056fb3d81ad096975d6f9307adb79f9285853ef8339d3de88326b9d64bab086e";
+      sha512 = "c84cd6e76e18207ed02209bb333e922e3dc928c0f0ecd0243f4f8024d49c3ad1f4c3268dde921ced90a77cacffcd41eac82beab65d226dedcd07fd7a2f821a00";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/dsb/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/dsb/thunderbird-68.7.0.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "ea99eb1eab6e06da1bc62dfa8b1c203eb5b8d61027ae35f29cb38ec1c2753ae4d2d96ce93b39eba665c3a5c247dc4adf0654154bb19d5ecfcb0631dab9a38085";
+      sha512 = "e29bd848258aa5b04eb60391183bead511ad8bdee038994a84982d068312c97b2e490cb5abe3821825101ed313c503c5c679e42d79011aab89bd116af7807276";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/el/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/el/thunderbird-68.7.0.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "25241521666f05d2206188b8a7078d8db4585818511453f5359e19683305b5970d47636b37e4287d170c3a3d222dc8f3f6c81558e05be63679cce298f5321e17";
+      sha512 = "b203b8cb46f51f5dd176aabfc720eadc41ed081094c8feed87658885025ba4aef422ac19f4b4773976c42c4f8ce38aa80b39bc75f56c42ec59f5313ce4b98111";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/en-GB/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/en-GB/thunderbird-68.7.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "f247725c614dca6e6ede4622802a8ad3c342046eab0b4fe57dda6a1ba8be601adea20b9906e2a8d99c243712a0e067a2821c1e1b3a7ad57efd1766a60354840b";
+      sha512 = "998aaa3ea0dcc387568802f367ea1637806a1dc19929ac8875ab4823c691c84004f62c6450b3c4439b88e017774ecbd4abfa38f72661fd9ce97208fe920060e4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/en-US/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/en-US/thunderbird-68.7.0.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "0db0b36b095355d080d985df6547264a3df136d11ce828872dcc3b19c24a3156f521e1657c68059ba31de806f18a3d285275eaeecdb076344996bf8f6731bae6";
+      sha512 = "583e9a08aff1d3e4be47e5a9f31b7595109e25a4062a36e8640468a354e29a47f389062db5fa134af6c231af5fb1caaa31368584fa662105100419a64134f0ac";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/es-AR/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/es-AR/thunderbird-68.7.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "5efa24ab3951d53828eb8a04bd34029428fb832f19284111192993fb66e2b7ca1d91e400180f1b989562f391281ff9a1c05c927a8ffc599b993c7192197b334e";
+      sha512 = "d976f3b916430388af3a50f58253cd4ddcaa5adef935b3965c71f38e938a8e3ad28f7ea8d83d4a9e0d0c85d29a1613547a95d4c9c4917159dce06d700e3f8122";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/es-ES/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/es-ES/thunderbird-68.7.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "4d54f696793ca1264e7523ab7a3b64c64e57a8bf287257c21b5d06ea1eb51703cac251a2b9da7011942956bf110d1f09e661d28f5b7b861367d17cb299a740a2";
+      sha512 = "e51afeb81b39f6f3e7c501a0d5ca839d87794ed3a7f04ce552175a7f1227fee9667dec917a0c13d509687e31d6d87516bd5580dfe0158a964b13e4c26c82fb52";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/et/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/et/thunderbird-68.7.0.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "e6bd840cfa218b32b27315ee5c406db626a54597e6944426733e386a90b61cb0ad62c2b71f9d9bcaa8aa287e0778c3f89e3cb2ac589dc662da984d2b85748216";
+      sha512 = "60872a5306f154af3e2b9e58dfecf6135927464c92a3a6cac7c44fb934cc074eefeef6bbb6242e7403aaad3e1fb850d475efb07aaa80a07043f213960b92bd3b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/eu/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/eu/thunderbird-68.7.0.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "c39144c970c5f95d25e0a3a8065dd97fad9171159564a12fbc1596132aa8522191cf0db67e83a19f49e60e5df4251c00f7a8b779dbaa576ba48c93f5f7db199a";
+      sha512 = "5f774a38904b5881d0a5bdf0ddad71fa7f85db82daf7879de54d337e8dae17021267b1a289676a11daf1e96572f2734f74a29327f23636e8b38aed084b874bd7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/fi/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/fi/thunderbird-68.7.0.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "038f4a2893f42db613135a9702430c312d9ffe42e17ca46512ce4a1cefff29f60727b615a1893d40e7169708627b4ecb4000eb05e146a0af48c8564e1c4fbedc";
+      sha512 = "0d977cbd85d7f1360e985844cc8ee433414abc3d10b8a33b2fbb9a03fdddcf3a91018edc12a12d96cc680d2c119e0c020549bd40cc10db9eba4188805e40dea8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/fr/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/fr/thunderbird-68.7.0.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "79e3a612752694162d11ddf3a4c4514341d56d1efe9bfcf997914b9084b3944a87a0276ec6d97ce2145150a3aea61526dc4e252f79a0832d37d144286b36f933";
+      sha512 = "dc6d20875579d8e788a236885859faee3ca61d83aa051a48bfe18c484afec986353c1493e7e68181a83fea7a42ee62c29d3f71cc053873743959513dddf6e8ce";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/fy-NL/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/fy-NL/thunderbird-68.7.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "f54b56da0958198525c61d4c3b4b7f007cd28a3d621fa7a1fc2a85f020c5bf8e6fd66e4be9931543d19fd6b3d9cb0d69b36609c8dec71e0936d05cbbe91ae729";
+      sha512 = "add2c509cb15cebc5dc77957c44e26a80ee52eda82f395308303216ebf14d13c09338f7bee14bad46ad0ffa8187008e7f4cc101c712029ff15b3ce14904c0a69";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/ga-IE/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ga-IE/thunderbird-68.7.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "4e3c594578f7667e6f9ba8928a224e180830a9853b89ec60508554d11c9b7e2ca06fa7a9504fcfb3b0b8257bddd136ed8a15632beb7760a5d1ab5c43e30d565b";
+      sha512 = "d1771c8282253a80ed62dca8f49797796f202da66e2a607d27dee89a1a8fe556dda440bc03d441b8b63bf732cd9c0960ebf9b9cc047de9c07e901a1051dfc94b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/gd/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/gd/thunderbird-68.7.0.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "98c466383f136f8c104475a8a1d8098f8f0a047b358ecbc93fe4ad6c1e96bffc3de81c61a9026ad8dbfa8e95130b4bf8c82d5d08875dc4c012357291d483ab87";
+      sha512 = "ea0f6d6287ef4e771c49b4891a4d9dff8b9766e444087456448e9ebe32c17e41d5cd9c9a17747250c393e389720a6ecb3bc6df98dc5c81f26504fc9cd6ea3e03";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/gl/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/gl/thunderbird-68.7.0.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "649f1df44ab7289abc6038deb59fe38258fb31f8d20aa44fee6630d469560dbf212973fb9fd437fcef7456554223f7971a39a00de57b543e7e71d6f857ca0d34";
+      sha512 = "487af69af4e9844a97d72e14a9de8f8aaf8f45efee6f72ad0d5b310019d6fe73c74288b3e4c7d2a83f6e30cb5b3fbeab2d2200d406814e6e25936ccefdbb5f14";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/he/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/he/thunderbird-68.7.0.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "70e97215a9b91ddb832f85194e3c8c385a7fbda9edd31d2273f472f6bf7ab12d8055e9bd535aeea5fc822588aa0efa2dbe4e66425a8eed16f2c8e321da9e6223";
+      sha512 = "13f43a849b765ed9743947c9e03fe9cb7bffcf120446ec80e8622ae1ecc7994497617464e7597a1e883520598f5de2404e2901b8d30cc91fad78dfe58763da20";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/hr/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/hr/thunderbird-68.7.0.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "e44d1ea44dbcde82ac630bf6a34802adde9d4948f7036275a9ea424b70de44a2198d016db6d2ab860fa0bc6f74262db7b57d53cabb4ca03c6237fdd5cbfd584e";
+      sha512 = "bbcb86e67a1975920a3e0fd4298b817103fbf88eea05e822eeb89f60f4690164c90940e32082cbcc19fb9222f53c30b32c39eb041a768b1f8cdf61ae866abd13";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/hsb/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/hsb/thunderbird-68.7.0.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "326f0a15c4ef03243c89cffe8cf5092fe0f1714f43afb835bc0b9b9711fb597effcc488eca3eacbd2f3777c6f355469a2164a6bc0c850984d554949002484026";
+      sha512 = "23c9d885024b178a37de1f968def6e338fb1e44d2414f01d6b8757e3be082ab4b5950ca6bfb0cfb93093ebcf57d061cfeb2c7c8c46ac56274ff495b83a7754e7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/hu/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/hu/thunderbird-68.7.0.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "af5dc78b7e413c94aa3ef2a7e9a036d984c0519e762449178b3e404803ea375f0a1e92f0a24087d21cf2806d73100b5b161b67f587045e5f829f397d97143d14";
+      sha512 = "8076d47c0b15fb565ecda807c789d5eba41b1209df356fe2184d4550a115b7ea986bb51fb6e9e8a4a279ed6025b7acb8f5c7ca88e5ccd72e4556fdaaf95619fc";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/hy-AM/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/hy-AM/thunderbird-68.7.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "ab274b064c3fdf65f96f65ae0f582013603093be63ea38ebdd85b325f7be0e517301e22e954968dac83e8460a8f348e3b9ac4165cebf8ef540b4ba4095b23707";
+      sha512 = "825f0066a329fc3e35c6a2c9038a28c1e673b93767a020a6f4297dff5b769882d6550eb2cd293b232123223fbbb0f0e0d54893c98ae9f2e35072071a26171967";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/id/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/id/thunderbird-68.7.0.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "1de1c0eeacb51814ca5de25b1b088072cb4c703068aef160534b339dcc0fa3a541400bc8a7c374595cd67c53708eefe2a264b3e8178a4ecca77b7da10b44524b";
+      sha512 = "253cc87eee92b10d9b74e7885e43d5d9b146694bed63ebbb1b5e63730b18feeef53de4581ae824ded77a5770c45fce8b46d90621212d4b0e1ab32ba5fc7df1b3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/is/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/is/thunderbird-68.7.0.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "ac72b529293288e938d5a0b0a594c9fd47b0ed5a3173299b22afe7d11c34c347adf9e5b715ea3654561f4fc13ee0f81b8ba1b9504c96be71bd04b9c7d1eb719d";
+      sha512 = "0e0784865fa1f0b57f5287674c94993263a03b8876fa6a053cb9bd52cef89a93a07dace1d2425ad669656ebc86a083e37faa456ee52481844e8e8e7fe87f3c85";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/it/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/it/thunderbird-68.7.0.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "734c29ba833f05711bab8ae3548ce33a4633b48dedfddcc84ef6dbe4fd208eb6736f6f62f2ff74a8cb4864ceae1abde570b56669d199ae8162de5f02b79c44a6";
+      sha512 = "0eca59d5adf138f2be6b9c2cd11e51252e550b711f3f6584e6971ec3564630eebb7f1774dfed4f79c6b38f3218420825300bb447b0bddd0e16379aa787edd0f8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/ja/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ja/thunderbird-68.7.0.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "922026013615642cb55a4bebe647b99d84386a04ae2c6b3f5996a060ed62ceb921818439cafedbbf25486181cc4e2fb57058a0ac5d276a7960c70f6214ca81b0";
+      sha512 = "6a112e7ae24616115f6b5dadc72bd30d8dd046b8df16ebae1d609199d9467259f83b354659a1358d70d2e1ad8c52e71db9991f95aff6f2864649d539b9f0f139";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/ka/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ka/thunderbird-68.7.0.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "4804caeacf6aa2dbf14c88ae36f670ef06382ee98c71be6e341a620c8230222c413784b0b640dabf01266271debfb1eb59d4c2b80e596b092995d2327eec839d";
+      sha512 = "e2c71035f910648cc83d92af69bd96f3a7668be2ac4ddfcd40c97762a1fa4e94c7d67b9ff588b27783ff943330ee07940fe0f8bf1671dfd87dd34a23b78b55cf";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/kab/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/kab/thunderbird-68.7.0.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "f5cdfa7596ebd37cd0b4e7a31b5b2ad1d4e336c52681560a2183a3aae7dfd8be01312b5b342f1f0c1962cbfa13c8c2da188642dd16efcca30944bf30f71b7017";
+      sha512 = "4e1a72147657fc0706f3cd4c4511fc22949fdb5e90e5d17a080b5c814240451d030ccb4c287ec6901d1dfd8a7ebfd74d59e617ca73530fd20c0b4fad539f9154";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/kk/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/kk/thunderbird-68.7.0.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "ca87066bb2f8e945299c984189a5e01a620d3ca04b1f96a85fe99fb629c7a9721b289f702299aecfa5a67515d3f45827f8930ead8fa4a9187e0610a55d64e790";
+      sha512 = "61cbaa5aa674a4b6a34869f271d93234d874fdf49231b0ebf3c882863b294a0e2e0447bc81c8980c7f27c5dda4e8c29ace091c7097870d4109aa1f4718379099";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/ko/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ko/thunderbird-68.7.0.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "89869ca565d972065b8e87d6d8febfcdfd7269b158f7afcd5747933759c6345deb979235139aa86cecb021c2abad30b5683b76de9c606a1dcbfc7dbccede98c5";
+      sha512 = "b2d3be58c8af63b3a94888e8365cd7253858733686ee30776c61ccbb8e05db57882158ad3a9aa5af6e319c875e870bb52dae9dd8c834ea5643e811dd948b6fd2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/lt/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/lt/thunderbird-68.7.0.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "93a417401249b24d25000c05970cec3c1a5f6f292a944ab2cc306fa076052228c354d746d180ee7c4fc75baf70b241cc743ad7e3a2ad31ceccc44bdb1485bd26";
+      sha512 = "e878eefffd3ada9d49c3a692fe1a968159d8fd23ec8660cb71ce8019034e10c905f1acb79c6122384c7b18f3da3d1e6b91e31807c9d88ae799175fae2ef18005";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/ms/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ms/thunderbird-68.7.0.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "f0c8dcb9431889bafeab7964a48e377a00e04acff18cfb2955b41845c765ffd1d9ab77b6d4ae8a87dc0a7b7f2dffe3c5502fb4b6fda5ca042aeac1e445ba85bb";
+      sha512 = "1d6094b7ea3fbdd40d278a60684b2e2357c1608e3403037a761038460dd1c89149f3f010a9f93d795f3f408acb81c3b6fa2b5ce206f5550352db6391895fb0f3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/nb-NO/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/nb-NO/thunderbird-68.7.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "e3638c127d26636cfedd5c7024b58c04140b00da59c67afc3d93cdd7c359467b32113259af6fdedebb9d13d46005f50306a774731d90e65238f018fdf90adaa2";
+      sha512 = "0deb1e4fb220c9b17bd68ddec7bf4569ee8425528a6586f5cdadd17f7c1948f933070700d36d7c6cc9442c172d6bb302d2681716abac131c9777d8b57d4f0a4c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/nl/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/nl/thunderbird-68.7.0.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "0289e32a70c952288248f3b3c5bddf7fbd77927d944f5b1b08c8e0268d20aac4bcfa21e246fc04ec10f47134b4f40498c0bde6af419145822165898d5f972119";
+      sha512 = "24c5100339da2ea1df96d515c1529f02b0132385e141520d7a2c94d194ca71a634310eb26f3a88ea0cd6a8ad0a56f33ce5055bce19c68e3465037afe33a85550";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/nn-NO/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/nn-NO/thunderbird-68.7.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "ce1c64501cf2f3b599a7e0614d6845cdd3d3d37e876926ff0b5280c829f18b2746f0b4c43a46f1f0308d39f3a9fceda29a47374aa343ff4569d6af01c508ba08";
+      sha512 = "525675451d274d17d3b5dbd1d3b75d3475b3c29f32b5d0813c71d5cff6c8002f35038ee7801c245d0b2cefa596ba4288c4287a6fed66905b6497591cca96be61";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/pl/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/pl/thunderbird-68.7.0.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "86cddfefab791d313f271f91f209be19f3475a7e92801da6163078b62531da345156a048ca6036f3b32a663de06cd3eb719fc9c07b19effe104d86b010ea7180";
+      sha512 = "3ef251ebd90637c11cb64f00f429611a2621fc5841e91fa51d7a3ba97d1244ddcf383c8b0011abb009935a59bab58a3bba52e3c4db05483b28c400dbd500ba42";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/pt-BR/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/pt-BR/thunderbird-68.7.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "613d75a4fb7affb990550d6a9a61af145a7bfa9dfe2b5385d6be06762a0624d78a3ef1ee7940d0d4b76fe9e5b728f55dd9b804d136ee3d16f71415d1597a733d";
+      sha512 = "fe80b879e307d6ca192bae16e13df892bc837e0e216562c4a4ddf7ae3c526e2967cdf8f8291e53a450f70759025303b2195f7e2acf683cca9d8620a00d8ed69f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/pt-PT/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/pt-PT/thunderbird-68.7.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "1d2c2582ee452557ebd600fa61bd89c6162d78ccaf4884567557ac4efae43c604288ac401fdd0ef1c9aafc32c913593fd6d69795e215b762556478245150ecb1";
+      sha512 = "437e5390889424f126a1a229bf8c66881ac4a98d300f6308e242c5f2386d443c1977c52f78fe9e2b620952d181c14c35692718ff447d267c000e1ccc8cdafd5d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/rm/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/rm/thunderbird-68.7.0.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "c2c25f143b1421dd44180b55fe4263bc250c4f52b4748c133a38a9b7ecc7f491e492f2dd8e02ce7ff1a6cf61300eec939c0156740a2cb0ed2d37cca3a3570561";
+      sha512 = "d76f9f0e992da2e28e69b20a1ae532c8e98415825d41ee5716c34639abd1a3bb456d8645a108d17423bfac848f8e8a340358ccfc2635794cc703764d6f8de0a9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/ro/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ro/thunderbird-68.7.0.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "ef52beef9fa5de764fbc40c746fb6d95e5726174237432a5fe690d67c9e56a0138f6ed3fd0531a27fecc14c79e7d42ce84837e9cfd0df3db2a0134acb7460132";
+      sha512 = "0485cdcdf247ed4bd67420fe7919f7f9d845e3c369c80960d92e448c48e3ce7e55c03ddbce16aed6de84da70a5e7610d8be5f55c5f53dc4568ac712b92a7153c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/ru/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/ru/thunderbird-68.7.0.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "7fece3278eea40b2f4dc9a369cbed40ea04c9d499a1a5c23ec38e57a452c9b4b81e2e18b369cee8abbe15832d9ee87346821164e1556e8b812f30475f90cc980";
+      sha512 = "96b28866dd1e4b68846cd88adee09e4edb60af8d506f42838f3f5f1dadd59ef5339e8c331b2a8b6ed0d1ff482ed48d83861b9db174b28dce5ce90b619b3a237d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/si/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/si/thunderbird-68.7.0.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "564350c67c0b826a0e77c972774fb509b7a162d65cbe93873c1f0b62eb1a2c314ac09f3f9edc816ceb6b56d74fbaeaa576972ab7fb35f4dc5c9808a001b916f5";
+      sha512 = "0ea525527ab09277fce4202f488778d838090d2d59fcb2f049b1869ff0a6d50f54eb22449dbd1063aa6b15d5e559dc119e36dbf97d8a7bbf22e9ac4971393a1e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/sk/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/sk/thunderbird-68.7.0.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "a013c634324efc8f2dc2e3ac4c4df222d7bc37e99820fa87a89d66a1099208623550a54a8660ccb9161f6cee7d2a2f1e96bda5299c57aa6c31e0c9830ba40029";
+      sha512 = "26280b266d2a7956321854ec57737d8cd4ff6ecc938ca07304431e6f351f73ea43e2213e28797d0bc994e0174da41108421a957054a00adca97cc630c107e4b9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/sl/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/sl/thunderbird-68.7.0.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "855fca581e4b2caa41bd52c0f3a991e54ff8f038d0c757c0b3012c1c0cba0fe7b224b99a7ec9dc632a5e9d6c946cd2ebe871040129cbeb19ba260d47d3629935";
+      sha512 = "3cf380bb8bab8917e3643eaa337e8382e73802d725ca6134e73fc9d991d9e137b6681fb2aaa86aa83cf6766c3f536406298a4962b97175cf63bbf81142b75618";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/sq/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/sq/thunderbird-68.7.0.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "96076bfe74dcf439c39445d22196e0b1a09bcf3a844db8c6054bf709f861b4f1f8365bf3c7bdc4f23fa94861590819041d5dbd9bd04f1c828715ffeac108d8d3";
+      sha512 = "daeeb1a66f65e2da8ef2a6e3c59eb07bc341bebd19a79cce606d787d16f674e2d52decb17ae12125a7df78ecdb7c7a693644b17aa726ce1fd424fd30bb05ae43";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/sr/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/sr/thunderbird-68.7.0.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "b88a2b84cb2d4d5e9a6682dbb9873b94b24dd89cb26480544d1982a5f3090d9d02345bf3b6ddbae7c5f41f32f81f0c40d32e496e03baec13efa661d258a55035";
+      sha512 = "01a71c036d95587adb010cdd0f0641c4559af557c3596b16e43d11accddf64290d06ed5b35ab8d0b640b9242157b04a899ded266a47ad7bf2a07e3b923bc6fb7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/sv-SE/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/sv-SE/thunderbird-68.7.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "f5ac338a7a44492ce470c767df410a0f5c0cd80a20015cdf86fcf3c0da3ef3c88885cba7263e73bcd16bc989fc6ac99b8593b634c38743ad5748ff24afe1a16c";
+      sha512 = "28abf6b95fc03abd0f8d5008a1a3ba5b46138a616750b20e8f7be08fc2307cc75ef0e1ac3b8e29e37542553de502d07c092a771cc94c9b794da6a5bd268e3c6e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/tr/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/tr/thunderbird-68.7.0.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "971e7505f57604b6073f8e1bfd7aada8c4a16cd52b003719dd6b3689734205361c9e9e5ab67a7fee21b6a6dcd52ff96bb2b801730a446ffc33798639e91a4a80";
+      sha512 = "a7cb235bf1db3dfc5f7bed0fb92c327fedeb2f319c602bc13727b3c452305345a053405f77895611d294578a96eb8dfe7c7e9f008c531fa2acddfc81679391b6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/uk/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/uk/thunderbird-68.7.0.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "d1a7a2822a30a9542d055f530c13b172025cd50c4291bd2b70cb0da48872a1b24c684199daef47f39c669a76eea5eeaa5d975e05d5cd4b0b2783523c5417dcb7";
+      sha512 = "0fd2ea32ce4ef03150db5234561546f45724e399fb12967a4ecde42149a81f4609505bd1da5cf85ae745e71768b93738c2885c4c7ace9b7b0063d6ace566bbb5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/uz/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/uz/thunderbird-68.7.0.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "53b0c0fed9a5c5efaef627a677c4a6b832e79391e265368928e9243091319cac7c1ce6756036385f8ce2fae9f12bdf14125b75230f17ec5cf9c56edc7d5c9908";
+      sha512 = "4394e70e02ef67428b74af0b1d35ea06964b71a23d5a0d73afa2e6fdbe8d23286abde651b17a48a2353a1ac762d5a8b169f8e699a79644f00340b05e204f05c8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/vi/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/vi/thunderbird-68.7.0.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "f5bb40ecaa0ada3f48020a18f64e02aacd31c216db0c02f426a8c4dda3cb9b7740cca00c63ddb179424e37fe29badc846b4e8f2e87751f98e15430bbf8aab96a";
+      sha512 = "e1eeb7b46a9ece66fc40d2d58d2781fea4cca320a97b6cfeddd02f3f6907b44539f4400390467a794cbadde50c8ffe350fb08d8012f207db60d36a61d205a368";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/zh-CN/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/zh-CN/thunderbird-68.7.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "50f39f460f412412c5b97f3223f854d865fa526be05c5c5c60835ce8ac974dbfbe3b36abf5ac5f3698aed712560307e17ddf26606b09134360bde9e8c70fdeda";
+      sha512 = "ab6839f46e41c14fbc588a59044496feb3e8a35aaaa1f0777212636e9b4dc5a6640b34a3f1e833239d5597f468960a947c0591373938306dd8bedd6c6e13283e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-x86_64/zh-TW/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-x86_64/zh-TW/thunderbird-68.7.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "eb463fe925431d9c5150eb0e3f6c6f907e96a547e02613b8a65803021761761011e3054dad8d18a93a1d0ae950846eefb9fd95c7744db86febbe60856562bed2";
+      sha512 = "4923f6c790335820811bad56494d24a5899c1586ab2344b3e2fc81a91651d9de5b378ec6ac0ec68597ee83a8dc0f24ef084a41bfcd98dbde128cf4831646db70";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/ar/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ar/thunderbird-68.7.0.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "7e5a68cd2eb58dea99cf940ba8b212b7f6fcbd66e6ecfc9b476ea0aa33566f4ccb010d2056ca84000cedbb42072ce943fc955d4fd8a1cbb0b2faf30bb45f8867";
+      sha512 = "91b19e61a360062d71e090d7eb8dd78b1ff73fd3e7733573ff1ce6ef4e98c13fb297c219fda8c43c9d80299625ea8bf9566e25a5546f28d010737a399488f3fd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/ast/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ast/thunderbird-68.7.0.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "25a4fdae0021af4ce67560ef213b9dd18590d0850d0703f347b16206b4e48abd32b2f6f1bedb39812d0db04586169d095f104e82dbd4916a0f276b4f943d6fe5";
+      sha512 = "2edcc3b6d7c51c79b1539fe8fa4da53003af0379727ed658ca7523d608c96c251e8be6fea004098609d5b854ebfe6cc8b81830f8e1d359386edd2593f3eff6c7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/be/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/be/thunderbird-68.7.0.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "60ada0a93b1b9eab7e2aadb78ef8433487868f1e1f2e04a6a91996263dca0f034949858e8e0b8da1b35e0a812af689e31a6b3e2620a4177db9e19da155e43868";
+      sha512 = "84a76ba8031d25f6b097f66e4b0c74359ac313f25016c3b82e547d8e973814d8398697572014590f23ea094aad7941c13cb4130b618a776f6c4973356cccb30a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/bg/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/bg/thunderbird-68.7.0.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "3cd159fdf5bd9d7b2ad021335b77326d234273e9f247be54d1c58b8dfc3cc2b855f1d5a31a096f8a93ec28c0255dc8b85d5c49e3b2928e170a78a68d7553a366";
+      sha512 = "b489ff67e47eb1d431f5b2f59f0d6b8cfcded889e167cea3a2d602057264a402769e44191ac015e15930faacf7acd9f1fccb87abbd438e3629db7b795b8fe43d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/br/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/br/thunderbird-68.7.0.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "59b6cd33c5db88ed0c9ece2d88091f5769848b582200f79ef7178071afa5631781044a6a1cf30c27f3f3d81ac215c9b2095cc186766878486898935ef24b93a4";
+      sha512 = "3ffa33885f86bbf13f4c2a2bb15b864aec851b5558eba88e7a64e8b8b111169bf4e163e590491702465ec8436274ee72dd140a0bda2c9ba39754145de5501388";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/ca/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ca/thunderbird-68.7.0.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "13e30705a506d0f34b95b1c22bc7770491f265268f9cbb6d7d4d7e4dc275ed81d46efa86d44f2acc8c475ab6b53589b6c4733067221d1ec604794bade2a9864e";
+      sha512 = "fad5eeda16877f0bfa5edfec10fd8fe5baf16a112aaf56c908c718159b0bb6b72ac314b93584536ca369d054059612fbf86c396d076158b6efc7a9d9cd2fff93";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/cak/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/cak/thunderbird-68.7.0.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "6db7346815bc9fd9adb7896291015794477b05379635ee2c3b4b475b393b594c806efd309d5f46d996aa9e95b58fd13f65a70facc4d2c8ec74be8e3443507a3d";
+      sha512 = "f4a0605533cfd5b0806c8412514de4478c520f52903a07c809df136b443ff0734be917444cec2d4c73301d0821d77e585c96bf314ab17deec4b4bd5036e83a97";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/cs/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/cs/thunderbird-68.7.0.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "aa407d20e7ec83e433d225dedb28d68eb8c9a1d295f2a37871048ea90930828c67674fe5059e8167fd9b0c573fc84d17fe3ce31ac7676a54b2786b38e10f58da";
+      sha512 = "319f3a63a352a2f7831bb6d2d046d238db4c136cdc256934ac19fd4e8421344c98b4900c57a12f49af77d1844ffc8e8c7129c4ab9557d590affd59aaa0229ba4";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/cy/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/cy/thunderbird-68.7.0.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "8e2e3136674041408daf6ec3dc194b5115aab6c254ca8da035b1f6900eb07d34ca57ab00f8776313f038a87acae3bfe454a6118f4b532e9f364ea411d685ca7e";
+      sha512 = "4aa1974543b568168d06ec8c0004127cabab481fa798a67878a9bd5c1955d98d14d770383ef5e6af35dadc106fb20da46a1744a7156b3bfc582e416a32df1673";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/da/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/da/thunderbird-68.7.0.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "22062cc37c2563b98516b16f9adb210528ffdb8791df39170bac66351d86a3e491c54787c3c6dd866f6ce806029694e11868a3d5c3b9b9ad4faa1bb621a89a08";
+      sha512 = "c587a13d45f5a5e94108252d8dc98548583ac7f27b35f3fc28100df0a15f696c04c68a4f786d7b9c3ee461db6120c14aef2b6ee14cfcabbe855f16ed00660861";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/de/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/de/thunderbird-68.7.0.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "6228aca78b3577031aeae1f0c7ce7fe6eea41c232c46b8d6fc7ffdbbf4f0468a0e8c2ef77927bfe5c65380223d43cc67e6dcb0bcdeeb096f89794cbfee769a5b";
+      sha512 = "5c425faa2c44d30b695ce6713b59e5720bbd8294aea20d1c7431f26173da0f6ca85b1cdb9f178e54ff670e109bc6c30abf21110df0c7029b5d5a01373c8b1510";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/dsb/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/dsb/thunderbird-68.7.0.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "43a51d0b294a53878c630de5da04f417b2d929036b8a689e93c7f72c6b738cecd4105f216d7955d2937e9a4998bf9a96ace66771c75ee46f9ac2e96fe6674fb5";
+      sha512 = "6ad04e1e43d0a7e4821c584a78b476262e77aa5f6c7d170806eb02d74b0d831f53e66568917837d11c11cb5ed19b796c23ba6d496573ca1da7029fb1eedbad9f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/el/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/el/thunderbird-68.7.0.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "28b0aab8c2480d7deb48edd2c46468dda7489ba768a2293da43367d623464973527bf47ec6264443cf2febab667dcac39f1459117af97c3436100d8e9b3cb124";
+      sha512 = "e9c7d89bbc736527ea9918151886705fec533969582ff37fe8e1acec3b6c1938fb33da4285c02ea92c2a87df1c6700c9c2223ca391ba342eb2e4e1fad8e06f8f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/en-GB/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/en-GB/thunderbird-68.7.0.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "af4c726daeb0951552c55331f7c4d3aef54078b7fcfb98ab32293f39c945e58cb43ed224c5f50ab56bd804629b8db2a9719186749501d76c9f6d26aa6fe7bcf8";
+      sha512 = "ead179d699feabcf14373aa4e02ec96f52e96f8a1413294f690d70608f2cf83fdfbccd1031f0430a0f3805bb230943d8aea269195d0f092334040d0c092cf9b7";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/en-US/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/en-US/thunderbird-68.7.0.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "2a93646dfe69131d51d600511450f3cce267f11e51bcbba8a648baf1af1ebea57d43ae63c05cb138e74fac574cd76b55e07a86b98e7cb27e26575a777ad80934";
+      sha512 = "18309ddef56d0e7e50f3b5895e1c21c206b432da141c7517f9220686ada6523f7b0181e98a6722205bfe09d9023c4d2beeeb11ad60a7b6ec4242441bd60afcd0";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/es-AR/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/es-AR/thunderbird-68.7.0.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "1750821128688b0bfc2cf005be120740b5ffe953daaad0cb6a1fc8821347324dd90ef0541676ac9613fde8b7026a1085449e14c4bd23414153bd415f4d860460";
+      sha512 = "d0a1ce2264c3663a529df667f800bb7e7ae446e09a5b0b09934e00ca18e523baca3943edf1bc2e3269a1b41399a47bd989b487e8650a0ce9a66b94b8bcb37726";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/es-ES/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/es-ES/thunderbird-68.7.0.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "ecb1ec114a5728083773ae74cbcfb2488fbe902e2862dada06b9bbec3b1f6baf9d41bf78a12ffe803471a3b8d47feb7537ab9d80cdd02e720c55da22e2147b06";
+      sha512 = "5dc04a48b1997e0291265533351818b1912d73b9b002c8978f729006f7b406c03c27edf736a99d898ad9cb8328b40d732b27ca51e3f621740146b81968f87d8d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/et/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/et/thunderbird-68.7.0.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "388b8a7249a82aa9078e9aa07dd56bf683f3f98c114c48e856f29ac5cb49f6baf6f7aaa55c1af490c8da03190cd30896fb45e24c40fce5b58d4b4babd1f547f8";
+      sha512 = "8fdb9911b0da646fca7256fc0e004530339f6631fe3a91e1c0857b52d3d7f786a6fb8bf83cfea9e3c4e0faf6093d0b3afcd46a0dd1ce5c1357a40ff217393d6b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/eu/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/eu/thunderbird-68.7.0.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "c68a5024cad0b85d73534277099e4a4dc0ced6b9ae62b3e3c1ee50634d0a495685a393fe464b670a912b075dda072718316fc0bcc6e09956b655975ced31c13c";
+      sha512 = "788cee146a94621d373e8d815daef246d58b46ab1e935b01dee3955fe695af43e7a482f287d611e98a376b137b5bcd5b92baed5ab322a39ef30d8815abff6640";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/fi/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/fi/thunderbird-68.7.0.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "d005766665f6399e0e84a79a84f5220a0a29fd176c9a90e8b087c2be2dfee88f36c7cf08ce50c79798865c6bbf4818d4628ed384c53f555466b4a900fbbd776d";
+      sha512 = "b65e042905882d1c7fbc88bffb512b32fc91475b99c3b1bf6a4e10ed355f9bb3223a3c709273b0ad84c30ad3c6c405c07cb3e04eeb8a4938ec22bae3af4dfbe5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/fr/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/fr/thunderbird-68.7.0.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "f7a46c960bd9c07b6f48ede2b1940f5177029eed8afd03e520db019013dee74b87818b92d8a106a95f5522c4f06e76ce6aed3031e0e0596c9f8e3a30d221ed94";
+      sha512 = "a85af36139d6f7ab6028acaba61a8dd47c2fd6ef9114b5ae8783c78c85e16c606d72b05c15a299d1a0beb518301aeb65d3493d518b270bfb97f22c88d23bbc0a";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/fy-NL/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/fy-NL/thunderbird-68.7.0.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "25c3033f4bd890a6d8bca47114cf0bacb5aaa97c882e4aac306e790879516e26761615de2b73f2bf3229dfd36e86796a3c009daebd031b588595797a33ae55ee";
+      sha512 = "60cc189b7eedc72327d3fce18809403014cc6b2c4dc53617cc8cd589dade6be25ade584416f9be18830f3c7a6060fad3e19bb930a591f17fdb3437b4597f48a6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/ga-IE/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ga-IE/thunderbird-68.7.0.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "6c8847f57225df57ec874879a9e62b0d16edee49419a69412a6710cd1a094570d0090cc2ddfa6a380d7c34623d5e6a7b740937cac43e9720640bd13d41ab5b75";
+      sha512 = "95b337d681a5292c0343bb545232b666268e5fbea0afd6b96122ff00e504da0a5628126a11495ba54d4e8500615d35b34de13851ad43f180bd9b5b1f584c7ec9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/gd/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/gd/thunderbird-68.7.0.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "1f846022be0400ea2f7bb0bd2c56286021692c152565311fb9b4cf439a1b1c06656efacddfbd68ae6669f9435afc89fd4aba47cec768e0d5025b289a58bdd088";
+      sha512 = "483a1bcc1a0066a962ed91c8f4c6f948623e3555d2977c593a473c5c08e12baf05fc4c043ef5db1fc839fb9f550764abe457f2d33e23ffc748ea6aa50d675101";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/gl/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/gl/thunderbird-68.7.0.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "444ade430be00b1b60bbc937f693544402cdb626ece1a0706f274a3bc1b417a88a26eba3364c8d0faba34c6eeecdcbdf4b79225a286412425e2d4b8a183cb8b9";
+      sha512 = "0a88fc59510fa06757dd1b6994be0ceb8a0ad2cd1246077838756a0d65d6c01a64f8c48fc8ac87690686bdfea8c7d0b44e5fd96feca4c3aa59d6fb43eaeed3f2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/he/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/he/thunderbird-68.7.0.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "5432eed239fa34699504fddfb80c167bfc078d1d3e9e0aea18081d6898da3f966a475059de6aee013f312579e7c6a62a9ae388cf0b103c2fdf0f3a3f410585ac";
+      sha512 = "9c2ae42cf2d43e4ae9d0dad829871b44321b2cf49cde1f17568f96c4d6a69793d78c9b7a72cb29b71c108718906ab749f006f7c727d6f3892efa3d56d0852449";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/hr/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/hr/thunderbird-68.7.0.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "7c8a9a1e92db564b3eb2ab3b782d06798eb8a2c88502dba1965e5b6a1b004df4aa0423acd3244e56a507ae4b46bcd5012616973ed2d6196439f78e87c448d04e";
+      sha512 = "9e9a949fe54c23a0f73bcb05a4fe2b212c6701cbd1d68ae10dba2b62de07fcc5dad5210de0ec3c3f684f06828f8fd1c420712396e5132da6053de42f319d6454";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/hsb/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/hsb/thunderbird-68.7.0.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "d95e899f19f599270cb45a8a90cf6c616bba9af6e62a889d4cd6ffdf3019bc455c3910271f95e2b463ffb3da2bd806843a4f335951e800fab49ea764a07fec90";
+      sha512 = "0d3c5ca3ce6a9becaad63b2d7bf3e1d4491cad18201e1ddb634ad80d4d9d9d26c95b02034888f24ce50c5390b1197fe3bbd69525bcffd5192d95ed35203515de";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/hu/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/hu/thunderbird-68.7.0.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "b99171d4dbb965423fede825468ea740c4c86d666cb5efa457f71a79cbd226f01162b536aa53a6f19019e0ee14c9d3cb11957ca3ef453424eb3851393f1bc6e5";
+      sha512 = "4519acbc2d00cb1f97d73f17b37db4625fd16f7f25e628d5309bdddee2012feb2133ce599bc69eabb22a18f015a00c8e98d6804140ea1ae41d66f59164355f32";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/hy-AM/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/hy-AM/thunderbird-68.7.0.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "78df360fc50d4e80e73fffb3a39e109ea84a629edf6c7260eb1783ace5a93a460065da1e23d6cc201e918daa813db475cd2a4a38c0d4e9cb242b78f2e5a88952";
+      sha512 = "f60cca5cef19516a5c6e4b22962567c0c0d22035ee7583b0d93a4db0db7f625ed0cfaddc78f56621371d0a8b6341948cbf9171debe81c222d170af2c759eef36";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/id/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/id/thunderbird-68.7.0.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "81a0c9ef733ceadb814e69bee0d748d211147ddcc559b5fcca200cf24d67308bf440b601d60ea99cf1a71b9cb090c489d424bfe6af545cdaf039fe6f10b1ee5f";
+      sha512 = "75adaedcce7dae3998a063794552d3e5fd69e037422e44fafcc7871a05cabcb592c9ddb637c1f7b0639e03f6d0d99b262679087df2d6806fe2a202121cdb5563";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/is/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/is/thunderbird-68.7.0.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "d25970c2c4ffac96252e4e5d8c33608f6147254fa8c9879a0e809b940aa4a0425477ce56456191ad24fe8c0bd94e68ccabbd70982a4665f4c9f09166c06510fc";
+      sha512 = "b80488a594bebecaa139a2bbac76e3daa0d3a9f3257cfdc2f6954f8cbf427c3b3ec1db3d1f55b9c5e8c37242778e53904b92adff1cb7e1907142008e69607ee8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/it/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/it/thunderbird-68.7.0.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "693bcd512a5ca343d389a3f3ca85c75a52df5fe101eef09ff6c68ed4a4a92c30b760969e2db54b8b87a50e9be28931dec0292dd5904e8526dc7aa8296036a03e";
+      sha512 = "c8a0f75f6467f6428103c98e97afce1690a0d986ea6466dbfbaa2eba2853d8f7a1e65c568d10884d6d4412fcbab39e8743d3e3233ac16f69ab57a5f698c3ac5c";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/ja/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ja/thunderbird-68.7.0.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "d20d59d7abe85dcf660c89190c9761777bfad8b7276fdeaae74ef7a5eeb68f6aea6890aae53654849618459e74c58d5e46b07888c990b2ef6578ce6a96e5cfa1";
+      sha512 = "b1abc4fb9e7af1695ca2a4fe88d2198876212923ae10977b0caedffc96dadd891fe6068fd8d53c7cb7667854523197d1378791fb71c12eb817dd9b6e338eb3a3";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/ka/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ka/thunderbird-68.7.0.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "29aed1a98a6a4f2c30d98bd549461d32a229cd373145bc8f33426db3e518c4857b21446cd59cb03207eb60a432a69be6b0103df4467b33f49c3cb1097d96764c";
+      sha512 = "11e56137a0e5f9f6cc4b24e02861e6ee4c451280076e9efc46e1f28066862b3bd494ff7388f6be736be3dcf6412c5dbd141546dd37d6351aed54790deff841f9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/kab/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/kab/thunderbird-68.7.0.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "347334edc3a87face8cc2efb2096cf8e07feacd0d7cf8b1e501778d67385730362d4718ea26d85a768988e05296eccdc4bdb08d50030128123903bed3cb1f7c9";
+      sha512 = "b930bd22990497a66cc9aff96f0c9bbfae4396fd9b4397893db9c72b59b602b45f6ab7388b8899890e151bf8dd1e0b788d668cdad607f4326794825508d36ebd";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/kk/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/kk/thunderbird-68.7.0.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "b2be10cc25f6d93113463b2f8614d00b2b52e9b376f9e939825f8c2b0a4976584b11a96022538496a242cc3e3d7cbbbb832fa1c698ef91cd30e28dbeebb6b3e5";
+      sha512 = "17b7ec790013cdbad015d3045ec8d4c5ee6d92b1ea9be18e2b9a5d7776f53c7b621193e7dec418f86be25e3d876e4a9cf9c8ceef0cac4051461afc1a51498353";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/ko/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ko/thunderbird-68.7.0.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "2247b46fbcdac7067c03525374ac842a6f7699c6ba7bed4d16ae9f9e3717d5e8fd92cc9d1cc7c24dd2bd61a7f55ec68abd464fabe11e00f30778d9852c89698b";
+      sha512 = "1030a289a2e0793553ec3bfa8ac1b3ff3bfac3766318f5ffd9e6eff1979481b327a90a2207a5c16ca33719675c65e20d58ea8074fbd5fe9877fd334114e9b5f2";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/lt/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/lt/thunderbird-68.7.0.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "7435ac8db0c185c492ed30cb1310e67f8c30d1b9a3593f9b7c31f524b13e22d2c2d77ba66f5be99321f28c90fe7810f1e77d2714166e20728d968ab4cd69ae8c";
+      sha512 = "e433d8933c1d4a41e70ae2a8bdb6f1a502d478aad1308e1f0e8489149371893deea61fe8339717eb22996d844a5a6bbef916ec6c468a57cfbb7a54751bee2408";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/ms/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ms/thunderbird-68.7.0.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "2931092def64e4f6985b4a8d93c82843b0e90f3ed644dc0c7605709068d6b4bf01d30d2b55c45ef29197d5fc542932294e56e924d9d5db9b3efd04095581957c";
+      sha512 = "31343703e214decf4f25d724507dc706cb6c47d6247989cc2019841175099a0c328fca562fbd257f0003ec6a6fc8cdcd632c141de13e910a6a7b9c75733998bb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/nb-NO/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/nb-NO/thunderbird-68.7.0.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "ad2021b90d1a420661cb4d71fcfde6bbedb97c84a6f1a5d66e04c4fecfdf6836a1001bd6f4350b89d169b7fcf9c80230384063e1974bff53dfb11bad6fc1a49a";
+      sha512 = "e79708c309dd16d23bba5bc0e29a4f5b426a7dcb7dcd56b86c40875abd0d7fa532d9ca8c8b5019552fa0d07e5c4686a66f0a4173e2fdbf8865d3921c8b29f327";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/nl/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/nl/thunderbird-68.7.0.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "46f2507b16558151f46cae7cc88189ec581694ee50212fd0f8d2a9dd006d6685a8c49ad7d24e2117ae4a2bc55a88621ab900af7dfdbc5a08511e6374361241fc";
+      sha512 = "8c268bbe04c30a3dbef069add7b6e47fc576a60d0709020d0aee03b0be634f0fbfd4928489fe7b984a8c54fb1ad9ae951b9dd0c0ba04483b35a242bbbe3bbc19";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/nn-NO/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/nn-NO/thunderbird-68.7.0.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "b6afb0adeb9ac4ad5ae0f7ba396ff8d9643d1341016d389947007e8ff40710e3fcb25e612ffff787d1fe8ba5424c17a2fbef96e10e288ad1bbb79ae337cbf505";
+      sha512 = "9c73e09e4680f3c258e7d25691dffaf805ca6946335c9c30ef091a739d7f87e0f36f5328875ceb2b7f0f2cee2bf16fe1401411f11f4e5e45ca86837c4e207d79";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/pl/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/pl/thunderbird-68.7.0.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "bd015ffab2e9fb6f416194d3d8cfa1181d220dffce30060e12a665918ec0ebbe7c78c4536dab8b5f67af790350a7675f733fda5e60e640a363c757ea26b6e88e";
+      sha512 = "6dcb19a95e0bd8dd783a420c3f06e0980c5706c065397d4ee424969bd84daf783752d55153808df5811f656d28adeb15f826b1d4f2b9e356846c6b1c01b89a04";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/pt-BR/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/pt-BR/thunderbird-68.7.0.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "fdce0362b597a82692f95236d8ff29ff442e7e9565cb44cf5ce1e526c80ee1571ed0d670a9cfa199c716507af21e02c2bc3f9ea26041fec2187ecaff8b70a6fe";
+      sha512 = "99deb6fe54bf1f9bb1858f2c454e44246b34bca6aaeb5322db57d048acdea5de853d439d4f079c3e2587174364ecb05861cac461a34dfba495eb747bb8fc98ac";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/pt-PT/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/pt-PT/thunderbird-68.7.0.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "9f0004b1f662945d35d8eec6800005116d40ca64575c66b471f2d09f8326ee359e9a429ee8684b28d4dafea9e5b708145831eadbbedcd44f0ce7a57390665a99";
+      sha512 = "fd0fe715c0e816e6a92b9cb6a2afea50952851161cdd217f764cdafdc529f7cf0c5a6913546b81fc1d9532de74eecf13517c6eb8380ab5f920487df4c26d331b";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/rm/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/rm/thunderbird-68.7.0.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "f72bbb0d18193c1cc0296f1717d2d1652a0317aafe05f16bbf7bb944bf554b6d4333c3a6e6327957f146f5cbabd174967e7c7147e1dc1a11420fc0906a59cc75";
+      sha512 = "5ff0306c7c6f88976f3080d34690e4607a74730509f9f43a0ba56fb9e5b9cdea8e85a4137333c150110fa110ab6d98cbbf265ea07ca439f199841a82af500152";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/ro/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ro/thunderbird-68.7.0.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "8ebdf16bc98c261eeaa0845a88bf03782c340871c0bbfce1e404dac459bd465a9c25eecba6a3b040ae8f6422537f474f6842f722be2c7698a1f70920d20f2ff0";
+      sha512 = "9240e285135f27f82402cd0d3374f28d293a29c904a503297014802554e8257bf95c8d0cbcf18841c44d1012e0d3d8067ab24186317cb4f42f96dfeeb65255b9";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/ru/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/ru/thunderbird-68.7.0.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "92da68f204338f3dc5adfddf8a1332d4fb8e78901ed00eec00ff48b857861ffc98748755edb4b5580d46ffe25e183fdf1f29418104525b6edce201e273169cdc";
+      sha512 = "0c90806ecfe1e4b2e4d17ba01a5945bf5c0d3a0e7b5caaecd36456286f5a1ea597b743743acfbaef585cdc4bada86e6f194608ebe9dd2308f24d093fbba49fa5";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/si/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/si/thunderbird-68.7.0.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "72887d5bc23331e228f91477dd71631f66021055c5c989abdd3ae7f35d27d67c48c3a6983eada438ba47982b1b82655de60cc6a11a3f87cad2edc59e5b4c8706";
+      sha512 = "a10ab6a050df683057d4532c0c1ebfbed80de96f6831ae60e53f4e4fe95a342ce97b545c7a658fa092a7b9d4c2196f4bb296e4af9b0c7e4183f112ab50b464e6";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/sk/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/sk/thunderbird-68.7.0.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "844e533e41f87169d08176c9aa3f3ca355838837f9a8ee723991b65e1cd037cc7a7ccb03692394a63de91314117c6e158a48cef70b5ae803390fa99fbf7183d2";
+      sha512 = "1aa04c5702a89099645616f7aee86a507cc5c54f3a62696eaef17d6ca161ded644285d77782ff940c2ab128d2ff9f4c5b385999da9de678837ecf91d00f88f16";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/sl/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/sl/thunderbird-68.7.0.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "41b57fd7d7f2f7690dca2e22028f09c66fd93e4a7abed1a1b1d791b3953c4129d89737d918e47090631e543229e5e8bbd7f516e05d57781abba23a9379831d14";
+      sha512 = "afacff8423baa933c6e4b2282fc112636876dd97e607e9a63675fc5232907bf7b06dc50e1377aeedd3cc56dded6f3d71b47aa774dbea12217f6243c6182a2bf8";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/sq/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/sq/thunderbird-68.7.0.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "671b70e2a1c6d54841e84864bdefa8989954771780c0a5e8732baccae18ae261b349435adcdda58197354f60d89d1b205b0dd3b98ea020279160dc4b104c5d25";
+      sha512 = "6036f12337b129025c34906b8df0663ae210294d3914cceb9f97be907f058e9eaeafad2aa2e2c2ee79f83be3659a242ab2135cf7f240b34eee24dcf555aef40f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/sr/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/sr/thunderbird-68.7.0.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "5e9fc54b0abd21d2bc5ac4dd4895a5b2c961204f57175fa6051e0e23eee6b4af97ca00c9c595c8c64d29a3badbd7191baf364a9099db662aa2e6a3e7e0a570f0";
+      sha512 = "c48be7ba5b42ebd244c59a6188be08236974fabdf7cc30f3473add6b215c6c7ea80fd4ad4d739d7e62fe2f1043afb288d2a6f7e838bf0e17fcc68b5340806e45";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/sv-SE/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/sv-SE/thunderbird-68.7.0.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "42a4a55209a94df2a2bf1c2c144b0db17a99cf63d2750f0e1bec8cfcccf8fccd38ae5742d7f3c037923311e4388d582801857c648ae9ebadf332edc26ecb7607";
+      sha512 = "c943304a7f40e715d1fb1194ba7f306538b917788306f02be10a86e1d01baf091b1bc58b417aad7775fba58cf90ddd8412a56cfbcf2f12e4f7581be34c328205";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/tr/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/tr/thunderbird-68.7.0.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "fb061df16bd3e44e1315797418c7568433ed24b0dc4dd91517c7562ab2ef999cc5e147a7aaa07d29446c5db09e5c76f3e96fe3d25453a4ef82d191d98903c785";
+      sha512 = "53d5c9d7db4a44ea3858c55377c0ab8f8d359440f86634a0ff5eefdaf0553dd2c7a9ca66112a2cd4fe3a8e6094cf9c1f16fe01119ab11f1a039f471fcba37609";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/uk/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/uk/thunderbird-68.7.0.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "4e70211298c788f874f47c1ce1eb291bf16df1c1316f51dde833bb983032ab50aa725fdd4453bd360f4fddb93215f01ecb75b2922c28b7b7abbef4a3a19c87cb";
+      sha512 = "8204e0ca96902f16b92a6e02c09a788362359af3a6566f8246055727d5a74736d0b9f8570a4671a1f69233a993e25676c730001dfef9a92d034edcb8b12a5f7f";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/uz/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/uz/thunderbird-68.7.0.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "7b6cedb38bc18da9902df19070cdb66c49d288591af3346e369c09b84dcc8803b6b06870165cb99e3faab33b95c9d115bdb648a1eb9be3ad28d17b84a69e35ee";
+      sha512 = "496d82507602cff8e48f43b9c63a696d24020b804ffda45f2027103c5f3768543db0f03051ef062e0076c16b78b31759f7d4a4878a45e7dfac1cc0e4e9d046cb";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/vi/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/vi/thunderbird-68.7.0.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "eaaaf5002ccd31685b1f96fff6b63c9ab17d4ed3ec4c88cc368e60935b794e08a1fb56626d772f579fe0381b1381f3335de4739eaaf5b0dcfb31833c593b093c";
+      sha512 = "f360794ecb21ed3f90552797269ab6e89024591903eb53dcf6216b25bb4dbcdf94c2526672b94ba979717f90cce5bfb6329efb3b5a2b9bec7c3d4d06d339ac9e";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/zh-CN/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/zh-CN/thunderbird-68.7.0.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "89341195b5cd0d9833fee836acfea6091e9ebff3f675a02b74a2f6d6424df910d6ea4866f97832ba5bc798694d02b12d13c14c27bfff20df4ba967581c23ffcb";
+      sha512 = "ec7274b2870206647fd853c30db4e30b3856896ce9c89d5d825363e9d4327d23a230c899abbb740036a8e060f1532007ba5936af010feea85318bdeb18f29e0d";
     }
-    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.6.0/linux-i686/zh-TW/thunderbird-68.6.0.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/thunderbird/releases/68.7.0/linux-i686/zh-TW/thunderbird-68.7.0.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "3a63cf99d67f0a0e79692caa2ded310284fd876b1d150cdbdc3a2bc3b1266250a90f05117c00521c1b589beaf825b8a091b7e40627d8c2127faf1b06f4c6b746";
+      sha512 = "f0fb6deda0813516753386ae69ddb7b6dce95ce89c6dfba3ba5828d80d9fe92e3eaf014e89ab56c4548d39932bbfe12d4b9c6c8ff66b77a9ebe4f7476a9f6be9";
     }
     ];
 }
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/default.nix b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
index ef943518c77..797d7b17ec2 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
@@ -72,13 +72,13 @@ assert waylandSupport -> gtk3Support == true;
 
 stdenv.mkDerivation rec {
   pname = "thunderbird";
-  version = "68.6.0";
+  version = "68.7.0";
 
   src = fetchurl {
     url =
       "mirror://mozilla/thunderbird/releases/${version}/source/thunderbird-${version}.source.tar.xz";
     sha512 =
-      "0z2r93inj4k0sg4ghq8nz209ayklvh9dxgbsimg6dgil5ibcmyapks30gva7r9jxi07mzmb6i2mj4wazgkyi6i124svzvllnm1cq0im";
+      "0glskn3djf739v2dphs663a2lfg5b0lbk1vlwwbzwfj9wfshvk7l07ijp84143bamvgb0lhhh0c9zx4gy5jj3x1j4196m3s1c1n7rzs";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/modem-manager-gui/default.nix b/pkgs/applications/networking/modem-manager-gui/default.nix
index bfd177cda7a..f9cda71b7a5 100644
--- a/pkgs/applications/networking/modem-manager-gui/default.nix
+++ b/pkgs/applications/networking/modem-manager-gui/default.nix
@@ -2,6 +2,7 @@
 , pkgconfig
 , python3
 , fetchhg
+, fetchpatch
 , gtk3
 , glib
 , gdbm
@@ -25,6 +26,14 @@ stdenv.mkDerivation rec {
     sha256 = "11iibh36567814h2bz41sa1072b86p1l13xyj670pwkh9k8kw8fd";
   };
 
+  patches = [
+    # Fix docs build
+    (fetchpatch {
+      url = "https://bitbucket.org/linuxonly/modem-manager-gui/commits/68fb09c12413b7de9b7477cbf4241c3527568325/raw";
+      sha256 = "58XIT/RTZ9sjUK2e47h+SqpRWhQ2vbKb2h9MKiHNdgw=";
+    })
+  ];
+
   nativeBuildInputs = [
     pkgconfig
     python3
diff --git a/pkgs/applications/networking/msmtp/default.nix b/pkgs/applications/networking/msmtp/default.nix
index 486b34ecb30..58190944b64 100644
--- a/pkgs/applications/networking/msmtp/default.nix
+++ b/pkgs/applications/networking/msmtp/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, autoreconfHook, pkgconfig
+{ stdenv, lib, fetchurl, autoreconfHook, pkgconfig, texinfo
 , netcat-gnu, gnutls, gsasl, libidn2, Security
 , withKeyring ? true, libsecret ? null
 , systemd ? null }:
@@ -24,7 +24,7 @@ in stdenv.mkDerivation rec {
     ++ stdenv.lib.optional stdenv.isDarwin Security
     ++ stdenv.lib.optional withKeyring libsecret;
 
-  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+  nativeBuildInputs = [ autoreconfHook pkgconfig texinfo ];
 
   configureFlags =
     [ "--sysconfdir=/etc" ] ++ stdenv.lib.optional stdenv.isDarwin [ "--with-macosx-keyring" ];
diff --git a/pkgs/applications/networking/mullvad-vpn/default.nix b/pkgs/applications/networking/mullvad-vpn/default.nix
index 3b7de8360d7..1e25b01259d 100644
--- a/pkgs/applications/networking/mullvad-vpn/default.nix
+++ b/pkgs/applications/networking/mullvad-vpn/default.nix
@@ -1,7 +1,7 @@
 { stdenv, makeWrapper, fetchurl, dpkg
 , alsaLib, atk, cairo, cups, dbus, expat, fontconfig, freetype
 , gdk-pixbuf, glib, gnome2, pango, nspr, nss, gtk3
-, xorg, autoPatchelfHook, systemd, libnotify
+, xorg, autoPatchelfHook, systemd, libnotify, libappindicator
 }:
 
 let deps = [
@@ -18,6 +18,7 @@ let deps = [
     gnome2.GConf
     pango
     gtk3
+    libappindicator
     libnotify
     xorg.libX11
     xorg.libXScrnSaver
@@ -40,11 +41,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "mullvad-vpn";
-  version = "2020.2";
+  version = "2020.3";
 
   src = fetchurl {
     url = "https://www.mullvad.net/media/app/MullvadVPN-${version}_amd64.deb";
-    sha256 = "4f5970714684a86fba44b742d77f9bbe1147a111330e487d160d9844f34ae3d5";
+    sha256 = "fac3896db78cc2ddac81abec8bc0aa324e66b453126ed35a501e422ce64b1362";
   };
 
   nativeBuildInputs = [
@@ -59,7 +60,7 @@ stdenv.mkDerivation rec {
 
   unpackPhase = "dpkg-deb -x $src .";
 
-  runtimeDependencies = [ systemd.lib libnotify ];
+  runtimeDependencies = [ systemd.lib libnotify libappindicator ];
 
   installPhase = ''
     runHook preInstall
@@ -74,6 +75,7 @@ stdenv.mkDerivation rec {
 
     ln -s $out/share/mullvad/mullvad-{gui,vpn} $out/bin/
     ln -s $out/share/mullvad/resources/mullvad-daemon $out/bin/mullvad-daemon
+    ln -sf $out/share/mullvad/resources/mullvad-problem-report $out/bin/mullvad-problem-report
 
     runHook postInstall
   '';
diff --git a/pkgs/applications/networking/p2p/qbittorrent/default.nix b/pkgs/applications/networking/p2p/qbittorrent/default.nix
index 8ab83c8a4ba..3dd55f3c5b8 100644
--- a/pkgs/applications/networking/p2p/qbittorrent/default.nix
+++ b/pkgs/applications/networking/p2p/qbittorrent/default.nix
@@ -10,13 +10,13 @@ with lib;
 
 mkDerivation rec {
   pname = "qbittorrent";
-  version = "4.2.1";
+  version = "4.2.2";
 
   src = fetchFromGitHub {
     owner = "qbittorrent";
     repo = "qbittorrent";
     rev = "release-${version}";
-    sha256 = "0bz4l7awkx4qf3gh9c8gj8fab989439zj8qy4x9r36wxdjg5cxil";
+    sha256 = "1iqgwhgwa2kx85zj1rwfnnclr1433a7m2gbs3j7w6rx39vxnzhcc";
   };
 
   # NOTE: 2018-05-31: CMake is working but it is not officially supported
diff --git a/pkgs/applications/networking/p2p/stig/default.nix b/pkgs/applications/networking/p2p/stig/default.nix
index 80b8251f2a3..325dc653e5b 100644
--- a/pkgs/applications/networking/p2p/stig/default.nix
+++ b/pkgs/applications/networking/p2p/stig/default.nix
@@ -26,7 +26,7 @@ python3.pkgs.buildPythonApplication rec {
       --replace "urwidtrees>=1.0.3dev0" "urwidtrees"
   '';
 
-  buildInputs = with python3.pkgs; [
+  propagatedBuildInputs = with python3.pkgs; [
     urwid
     urwidtrees
     aiohttp
@@ -43,8 +43,10 @@ python3.pkgs.buildPythonApplication rec {
     pytest
   ];
 
+  # test_string__month_day_hour_minute_second fails on darwin
   checkPhase = ''
-    pytest tests
+    LC_ALL=en_US.utf8 pytest tests \
+      --deselect=tests/client_test/ttypes_test.py::TestTimestamp::test_string__month_day_hour_minute_second
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/pjsip/default.nix b/pkgs/applications/networking/pjsip/default.nix
index c9df5d3fbe3..f3d41219470 100644
--- a/pkgs/applications/networking/pjsip/default.nix
+++ b/pkgs/applications/networking/pjsip/default.nix
@@ -1,12 +1,14 @@
-{ stdenv, fetchurl, openssl, libsamplerate, alsaLib }:
+{ stdenv, fetchFromGitHub, openssl, libsamplerate, alsaLib }:
 
 stdenv.mkDerivation rec {
   pname = "pjsip";
-  version = "2.9";
+  version = "2.10";
 
-  src = fetchurl {
-    url = "https://www.pjsip.org/release/${version}/pjproject-${version}.tar.bz2";
-    sha256 = "0dm6l8fypkimmzvld35zyykbg957cm5zb4ny3lchgv68amwfz1fi";
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = "pjproject";
+    rev = version;
+    sha256 = "1aklicpgwc88578k03i5d5cm5h8mfm7hmx8vfprchbmaa2p8f4z0";
   };
 
   patches = [ ./fix-aarch64.patch ];
diff --git a/pkgs/applications/networking/protonvpn-cli-ng/default.nix b/pkgs/applications/networking/protonvpn-cli-ng/default.nix
index 03d1a665273..e62bc21ab5b 100644
--- a/pkgs/applications/networking/protonvpn-cli-ng/default.nix
+++ b/pkgs/applications/networking/protonvpn-cli-ng/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, lib, fetchFromGitHub, python3Packages, openvpn, dialog }:
+{ lib, fetchFromGitHub, python3Packages, openvpn, dialog, iptables }:
 
 python3Packages.buildPythonApplication rec {
-  name = "protonvpn-cli-ng";
-  version = "2.2.0";
+  pname = "protonvpn-cli-ng";
+  version = "2.2.2";
 
   src = fetchFromGitHub {
     owner = "protonvpn";
-    repo = "protonvpn-cli-ng";
+    repo = "${pname}";
     rev = "v${version}";
-    sha256 = "11fvnnr5p3qdc4y10815jnydcjvxlxwkkq9kvaajg0yszq84rwkz";
+    sha256 = "0ixjb02kj4z79whm1izd8mrn2h0rp9cmw4im1qvp93rahqxdd4n8";
   };
 
   propagatedBuildInputs = (with python3Packages; [
@@ -19,15 +19,16 @@ python3Packages.buildPythonApplication rec {
     ]) ++ [
       dialog
       openvpn
+      iptables
     ];
 
   # No tests
   doCheck = false;
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Linux command-line client for ProtonVPN";
     homepage = "https://github.com/protonvpn/protonvpn-cli-ng";
-    maintainers = [ maintainers.jtcoolen ];
+    maintainers = with maintainers; [ jtcoolen jefflabonte ];
     license = licenses.gpl3;
     platforms = platforms.unix;
   };
diff --git a/pkgs/applications/networking/remote/remmina/default.nix b/pkgs/applications/networking/remote/remmina/default.nix
index de221fce389..3e41649d8cc 100644
--- a/pkgs/applications/networking/remote/remmina/default.nix
+++ b/pkgs/applications/networking/remote/remmina/default.nix
@@ -13,13 +13,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "remmina";
-  version = "1.3.10";
+  version = "1.4.1";
 
   src = fetchFromGitLab {
     owner  = "Remmina";
     repo   = "Remmina";
     rev    = "v${version}";
-    sha256 = "0gc7b88129avl9sbax3ncvm7zf2qvq35ixvvpr2zj74g3qnphl08";
+    sha256 = "084yw0fd3qmzzd6xinhf4plv5bg8gfj4jnfac7zi1nif8zilf456";
   };
 
   nativeBuildInputs = [ cmake ninja pkgconfig wrapGAppsHook ];
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     license = licenses.gpl2;
-    homepage = https://gitlab.com/Remmina/Remmina;
+    homepage = "https://gitlab.com/Remmina/Remmina";
     description = "Remote desktop client written in GTK";
     maintainers = with maintainers; [ melsigl ryantm ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/networking/sniffers/wireshark/default.nix b/pkgs/applications/networking/sniffers/wireshark/default.nix
index fe84787c21a..7602cb5fe6a 100644
--- a/pkgs/applications/networking/sniffers/wireshark/default.nix
+++ b/pkgs/applications/networking/sniffers/wireshark/default.nix
@@ -10,7 +10,7 @@ assert withQt  -> qt5  != null;
 with stdenv.lib;
 
 let
-  version = "3.2.2";
+  version = "3.2.3";
   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 = "0ygdxpz0i4jxp55fg9x4xcan093wycjb66yas073gviz9kpj6naz";
+    sha256 = "1fpsfjrap7j84sy728yhcr2gad9nq3n5gq03mwrmxnc6ijwf81zh";
   };
 
   cmakeFlags = [
diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix
index 0fd3a5ca280..c880f7db866 100644
--- a/pkgs/applications/networking/syncthing/default.nix
+++ b/pkgs/applications/networking/syncthing/default.nix
@@ -1,21 +1,19 @@
-{ buildGoModule, stdenv, lib, procps, fetchFromGitHub, libobjc, CoreServices, Foundation }:
+{ buildGoModule, stdenv, lib, procps, fetchFromGitHub }:
 
 let
   common = { stname, target, postInstall ? "" }:
     buildGoModule rec {
-      version = "1.4.0";
+      version = "1.4.2";
       name = "${stname}-${version}";
 
       src = fetchFromGitHub {
         owner  = "syncthing";
         repo   = "syncthing";
         rev    = "v${version}";
-        sha256 = "049f9h03qq9a7pa8ngwampwf5xc7kr7mm473zn56yl3nrmv0nid6";
+        sha256 = "0pfzpbdir2agwsyfjh1rxlyyd225xmyrr4k2g4vlg5r12kpcjwya";
       };
 
-      modSha256 = "1qq0979cm42wd3scy3blyi0hg67mkghis9r5rn2x1lqi2b982wfh";
-
-      buildInputs = stdenv.lib.optionals stdenv.isDarwin [ libobjc CoreServices Foundation ];
+      modSha256 = "0qjhb55nd8mlnswbk8bgl2sb9angmv8fnympmmyqj1dqa7lcs87z";
 
       patches = [
         ./add-stcli-target.patch
diff --git a/pkgs/applications/networking/wayback_machine_downloader/Gemfile.lock b/pkgs/applications/networking/wayback_machine_downloader/Gemfile.lock
index 86e064347b6..4534beb20c3 100644
--- a/pkgs/applications/networking/wayback_machine_downloader/Gemfile.lock
+++ b/pkgs/applications/networking/wayback_machine_downloader/Gemfile.lock
@@ -10,4 +10,4 @@ DEPENDENCIES
   wayback_machine_downloader!
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/applications/networking/websocketd/default.nix b/pkgs/applications/networking/websocketd/default.nix
index 8d0e92488db..4160e70b9c4 100644
--- a/pkgs/applications/networking/websocketd/default.nix
+++ b/pkgs/applications/networking/websocketd/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "websocketd";
@@ -13,9 +13,7 @@ buildGoModule rec {
 
   modSha256 = "18hamj557ln8k3vmvcrpvnydjr1dy7zi9490iacwdldw5vp870xs";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Turn any program that uses STDIN/STDOUT into a WebSocket server";
     homepage = "http://websocketd.com/";
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/applications/office/elementary-planner/default.nix b/pkgs/applications/office/elementary-planner/default.nix
index abc227e9e39..def44b40e80 100644
--- a/pkgs/applications/office/elementary-planner/default.nix
+++ b/pkgs/applications/office/elementary-planner/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-planner";
-  version = "2.1.1";
+  version = "2.2.14";
 
   src = fetchFromGitHub {
     owner = "alainm23";
     repo = "planner";
     rev = version;
-    sha256 = "0swj94pqf00wwzsgjap8z19k33gg1wj2b78ba1aj9h791j8lmaim";
+    sha256 = "14k5kiknr0d3my17p4v20iiqzifpz3y80gdzj8vdxic8yk2yr1ap";
   };
 
   nativeBuildInputs = [
@@ -36,24 +36,16 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     evolution-data-server
-    libical
-    libgee
-    json-glib
     glib
-    sqlite
-    libsoup
     gtk3
+    json-glib
+    libgee
+    libical
+    libsoup
+    pantheon.elementary-icon-theme
     pantheon.granite
+    sqlite
     webkitgtk
-    pantheon.elementary-icon-theme
-  ];
-
-  # Fix version string, remove in next update!
-  patches = [
-    (fetchpatch {
-      url = "https://github.com/alainm23/planner/pull/194/commits/3d0a2197087b13fe90fa6f85f817ba56798d632c.patch";
-      sha256 = "077q5jddi8jaw2ypc6szbd1c50i4x3b21jvmvi3w7g5zhjwpkmf5";
-    })
   ];
 
   postPatch = ''
diff --git a/pkgs/applications/office/fava/default.nix b/pkgs/applications/office/fava/default.nix
index d62c6c0e4cc..2770b6917ce 100644
--- a/pkgs/applications/office/fava/default.nix
+++ b/pkgs/applications/office/fava/default.nix
@@ -5,11 +5,11 @@ let
 in
 buildPythonApplication rec {
   pname = "fava";
-  version = "1.13";
+  version = "1.14";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1pjfa5xb2imhcf7q037h8g0bp9nrnj1xyblgqphnjnz6hbr58a59";
+    sha256 = "181ypq2p7aaq2b76s55hxxbm1hykzf45mjjgm500h4dsaa167dqy";
   };
 
   checkInputs = [ python3.pkgs.pytest ];
diff --git a/pkgs/applications/office/gnucash/default.nix b/pkgs/applications/office/gnucash/default.nix
index 476b1128b94..d7664b347ee 100644
--- a/pkgs/applications/office/gnucash/default.nix
+++ b/pkgs/applications/office/gnucash/default.nix
@@ -25,11 +25,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gnucash";
-  version = "3.8b";
+  version = "3.9";
 
   src = fetchurl {
     url = "mirror://sourceforge/gnucash/${pname}-${version}.tar.bz2";
-    sha256 = "0dvzm3bib7jcj685sklpzyy9mrak9mxyvih2k9fk4sl3v21wlphg";
+    sha256 = "1zxrgrjbs13vgr002rvl734w9f7zzxfq4xxmyhj777dwgkfds0ld";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper cmake gtest ];
@@ -102,7 +102,7 @@ stdenv.mkDerivation rec {
 
     license = stdenv.lib.licenses.gpl2Plus;
 
-    homepage = http://www.gnucash.org/;
+    homepage = "http://www.gnucash.org/";
 
     maintainers = [ stdenv.lib.maintainers.peti stdenv.lib.maintainers.domenkozar ];
     platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/office/khronos/default.nix b/pkgs/applications/office/khronos/default.nix
index e672b5c3efd..02c645f3d84 100644
--- a/pkgs/applications/office/khronos/default.nix
+++ b/pkgs/applications/office/khronos/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "khronos";
-  version = "1.0.6";
+  version = "1.0.8";
 
   src = fetchFromGitHub {
     owner = "lainsce";
     repo = pname;
     rev = version;
-    sha256 = "0s6yx05k0x90bmdmr61hw07nf9a1kyvvk6gwlg8m97zq1n3qc0f3";
+    sha256 = "0d5ma1d86lh2apagwrwk0d1v1cm3fifjivhf530nlznb67vi1x80";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/ledger-web/Gemfile.lock b/pkgs/applications/office/ledger-web/Gemfile.lock
index f18460420c5..b12a8600ed2 100644
--- a/pkgs/applications/office/ledger-web/Gemfile.lock
+++ b/pkgs/applications/office/ledger-web/Gemfile.lock
@@ -58,4 +58,4 @@ DEPENDENCIES
   ledger_web
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix
index a7d8f4c7d40..9517a4404de 100644
--- a/pkgs/applications/office/libreoffice/default.nix
+++ b/pkgs/applications/office/libreoffice/default.nix
@@ -3,8 +3,8 @@
 , libxml2, db, curl, fontconfig, libsndfile, neon
 , bison, flex, zip, unzip, gtk3, gtk2, libmspack, getopt, file, cairo, which
 , icu, boost, jdk, ant, cups, xorg, libcmis, fontforge
-, openssl, gperf, cppunit, GConf, ORBit2, poppler, utillinux
-, librsvg, gnome_vfs, libGLU, libGL, bsh, CoinMP, libwps, libabw, libmysqlclient
+, openssl, gperf, cppunit, poppler, utillinux
+, librsvg, libGLU, libGL, bsh, CoinMP, libwps, libabw, libmysqlclient
 , autoconf, automake, openldap, bash, hunspell, librdf_redland, nss, nspr
 , libwpg, dbus-glib, qt4, clucene_core, libcdr, lcms, vigra
 , unixODBC, mdds, sane-backends, mythes, libexttextcat, libvisio
@@ -347,13 +347,13 @@ in (stdenv.mkDerivation rec {
   buildInputs = with xorg;
     [ ant ArchiveZip boost cairo clucene_core
       IOCompress cppunit cups curl db dbus-glib expat file flex fontconfig
-      freetype GConf getopt gnome_vfs gperf gtk3 gtk2
+      freetype getopt gperf gtk3 gtk2
       hunspell icu jdk lcms libcdr libexttextcat unixODBC libjpeg
       libmspack librdf_redland librsvg libsndfile libvisio libwpd libwpg libX11
       libXaw libXext libXi libXinerama libxml2 libxslt libXtst
       libXdmcp libpthreadstubs libGLU libGL mythes gst_all_1.gstreamer
       gst_all_1.gst-plugins-base glib libmysqlclient
-      neon nspr nss openldap openssl ORBit2 pam perl pkgconfig poppler
+      neon nspr nss openldap openssl pam perl pkgconfig poppler
       python3 sane-backends unzip vigra which zip zlib
       mdds bluez5 libcmis libwps libabw libzmf
       libxshmfence libatomic_ops graphite2 harfbuzz gpgme utillinux
diff --git a/pkgs/applications/office/mendeley/default.nix b/pkgs/applications/office/mendeley/default.nix
index 9fdeecfee36..192585bd4b5 100644
--- a/pkgs/applications/office/mendeley/default.nix
+++ b/pkgs/applications/office/mendeley/default.nix
@@ -137,7 +137,7 @@ mkDerivation {
   updateScript = import ./update.nix { inherit writeScript runtimeShell; };
 
   meta = with stdenv.lib; {
-    homepage = https://www.mendeley.com;
+    homepage = "https://www.mendeley.com";
     description = "A reference manager and academic social network";
     license = licenses.unfree;
     platforms = [ "x86_64-linux" "i686-linux" ];
diff --git a/pkgs/applications/office/notes-up/default.nix b/pkgs/applications/office/notes-up/default.nix
index 1d2e581f3c9..055b3a41d09 100644
--- a/pkgs/applications/office/notes-up/default.nix
+++ b/pkgs/applications/office/notes-up/default.nix
@@ -2,7 +2,7 @@
 , fetchFromGitHub
 , pantheon
 , pkgconfig
-, vala
+, vala_0_46
 , cmake
 , ninja
 , gtk3
@@ -30,7 +30,8 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     cmake
     ninja
-    vala
+    # fails with newer vala: https://github.com/Philip-Scott/Notes-up/issues/349
+    vala_0_46
     pkgconfig
     wrapGAppsHook
   ];
@@ -59,7 +60,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Markdown notes editor and manager designed for elementary OS"
     + stdenv.lib.optionalString withPantheon " - built with Contractor support";
-    homepage = https://github.com/Philip-Scott/Notes-up;
+    homepage = "https://github.com/Philip-Scott/Notes-up";
     license = licenses.gpl2;
     maintainers = with maintainers; [ davidak worldofpeace ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/office/softmaker/desktop_items.nix b/pkgs/applications/office/softmaker/desktop_items.nix
index 6975da06456..614c6574faa 100644
--- a/pkgs/applications/office/softmaker/desktop_items.nix
+++ b/pkgs/applications/office/softmaker/desktop_items.nix
@@ -4,10 +4,10 @@
   planmaker = makeDesktopItem {
     name = "${pname}-planmaker";
     desktopName = "${suiteName} PlanMaker";
-    icon = "${pname}-pml.png";
-    categories = "Application;Office;SpreadSheet;";
+    icon = "${pname}-pml";
+    categories = "Office;";
     exec = "${pname}-planmaker %F";
-    mimeType = "application/x-pmd;application/x-pmdx;application/x-pmv;application/excel;application/x-excel;application/x-ms-excel;application/x-msexcel;application/x-sylk;application/x-xls;application/xls;application/vnd.ms-excel;application/vnd.stardivision.calc;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-excel.sheet.macroenabled.12;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-excel.template.macroEnabled.12;application/x-dif;text/spreadsheet;text/csv;application/x-prn;application/vnd.ms-excel.sheet.binary.macroenabled.12;";
+    mimeType = "application/x-pmd;application/x-pmdx;application/x-pmv;application/excel;application/x-excel;application/x-ms-excel;application/x-msexcel;application/x-sylk;application/x-xls;application/xls;application/vnd.ms-excel;application/vnd.stardivision.calc;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-excel.sheet.macroenabled.12;application/vnd.ms-excel.template.macroEnabled.12;application/x-dif;text/spreadsheet;text/csv;application/x-prn;application/vnd.ms-excel.sheet.binary.macroenabled.12;";
     extraEntries = ''
       TryExec=${pname}-planmaker
       StartupWMClass=pm
@@ -17,8 +17,8 @@
   presentations = makeDesktopItem {
     name = "${pname}-presentations";
     desktopName = "${suiteName} Presentations";
-    icon = "${pname}-prl.png";
-    categories = "Application;Office;Presentation;";
+    icon = "${pname}-prl";
+    categories = "Office;";
     exec = "${pname}-presentations %F";
     mimeType = "application/x-prdx;application/x-prvx;application/x-prsx;application/x-prd;application/x-prv;application/x-prs;application/ppt;application/mspowerpoint;application/vnd.ms-powerpoint;application/vnd.openxmlformats-officedocument.presentationml.presentation;application/vnd.ms-powerpoint.presentation.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.template;application/vnd.ms-powerpoint.template.macroEnabled.12;application/vnd.ms-powerpoint.slideshow.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.slideshow;";
     extraEntries = ''
@@ -30,8 +30,8 @@
   textmaker = makeDesktopItem {
     name = "${pname}-textmaker";
     desktopName = "${suiteName} TextMaker";
-    icon = "${pname}-tml.png";
-    categories = "Application;Office;WordProcessor;";
+    icon = "${pname}-tml";
+    categories = "Office;";
     exec = "${pname}-textmaker %F";
     mimeType = "application/x-tmdx;application/x-tmvx;application/x-tmd;application/x-tmv;application/msword;application/vnd.ms-word;application/x-doc;text/rtf;application/rtf;application/vnd.oasis.opendocument.text;application/vnd.oasis.opendocument.text-template;application/vnd.stardivision.writer;application/vnd.sun.xml.writer;application/vnd.sun.xml.writer.template;application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/vnd.ms-word.document.macroenabled.12;application/vnd.openxmlformats-officedocument.wordprocessingml.template;application/vnd.ms-word.template.macroenabled.12;application/x-pocket-word;application/x-dbf;application/msword-template;";
     extraEntries = ''
diff --git a/pkgs/applications/office/softmaker/freeoffice.nix b/pkgs/applications/office/softmaker/freeoffice.nix
index b114194d563..d9f901ff463 100644
--- a/pkgs/applications/office/softmaker/freeoffice.nix
+++ b/pkgs/applications/office/softmaker/freeoffice.nix
@@ -2,13 +2,13 @@
 
 callPackage ./generic.nix (args // rec {
   pname = "freeoffice";
-  version = "974";
+  version = "976";
   edition = "2018";
   suiteName = "FreeOffice";
 
   src = fetchurl {
     url = "https://www.softmaker.net/down/softmaker-freeoffice-${version}-amd64.tgz";
-    sha256 = "0z7131qmqyv1m9phm7wzvb5z7wkh27h59lsa3zc0zjkykikmjrp2";
+    sha256 = "13yh4lyqakbdqf4r8vw8imy5gwpfva697iqfd85qmp3wimqvzskl";
   };
 
   archive = "freeoffice${edition}.tar.lzma";
diff --git a/pkgs/applications/office/softmaker/softmaker_office.nix b/pkgs/applications/office/softmaker/softmaker_office.nix
index ed4903d6474..77634efebe8 100644
--- a/pkgs/applications/office/softmaker/softmaker_office.nix
+++ b/pkgs/applications/office/softmaker/softmaker_office.nix
@@ -2,13 +2,13 @@
 
 callPackage ./generic.nix (args // rec {
   pname = "softmaker-office";
-  version = "974";
+  version = "976";
   edition = "2018";
   suiteName = "SoftMaker Office";
 
   src = fetchurl {
     url = "https://www.softmaker.net/down/softmaker-office-${edition}-${version}-amd64.tgz";
-    sha256 = "0z1g76lhja92s25x6y0h55wmqza2d3pjbshn5b9rn2784gjgj7hn";
+    sha256 = "0j6zm0cbxrcgm7glk84hvvbp4z0ys6v8bkwwhl5r7dbphyi72fw8";
   };
 
   archive = "office${edition}.tar.lzma";
diff --git a/pkgs/applications/office/timetrap/Gemfile.lock b/pkgs/applications/office/timetrap/Gemfile.lock
index 9f2ea82cee0..30e48b7febb 100644
--- a/pkgs/applications/office/timetrap/Gemfile.lock
+++ b/pkgs/applications/office/timetrap/Gemfile.lock
@@ -2,12 +2,12 @@ GEM
   remote: https://rubygems.org/
   specs:
     chronic (0.10.2)
-    sequel (4.43.0)
-    sqlite3 (1.3.13)
-    timetrap (1.15.1)
+    sequel (5.30.0)
+    sqlite3 (1.4.2)
+    timetrap (1.15.2)
       chronic (~> 0.10.2)
-      sequel (~> 4.43.0)
-      sqlite3 (~> 1.3.3)
+      sequel (~> 5.30.0)
+      sqlite3 (~> 1.4.2)
 
 PLATFORMS
   ruby
@@ -16,4 +16,4 @@ DEPENDENCIES
   timetrap
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/applications/office/timetrap/gemset.nix b/pkgs/applications/office/timetrap/gemset.nix
index 1ea489b92c3..65ab4ade9e0 100644
--- a/pkgs/applications/office/timetrap/gemset.nix
+++ b/pkgs/applications/office/timetrap/gemset.nix
@@ -14,20 +14,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "121z4sq2m4vsgxwy8hs6d12cc1i4xa5rjiv0nbviyj87jldxapw0";
+      sha256 = "0gqqnqrfayhwhkp0vy3frv68sgc7klyd6mfisx1j3djjvlyc7hmr";
       type = "gem";
     };
-    version = "4.43.0";
+    version = "5.30.0";
   };
   sqlite3 = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "01ifzp8nwzqppda419c9wcvr8n82ysmisrs0hph9pdmv1lpa4f5i";
+      sha256 = "0lja01cp9xd5m6vmx99zwn4r7s97r1w5cb76gqd8xhbm1wxyzf78";
       type = "gem";
     };
-    version = "1.3.13";
+    version = "1.4.2";
   };
   timetrap = {
     dependencies = ["chronic" "sequel" "sqlite3"];
@@ -35,9 +35,9 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ylaz9q99hbxnw6h1df6wphmh68fj847d1l4f9jylcx3nzzp5cyd";
+      sha256 = "0pfg5c3kmh1jfaaszw253bi93ixa6cznqmsafrcpccrdg9r8j2k8";
       type = "gem";
     };
-    version = "1.15.1";
+    version = "1.15.2";
   };
 }
\ No newline at end of file
diff --git a/pkgs/applications/office/zotero/default.nix b/pkgs/applications/office/zotero/default.nix
index 54530cb8dce..8a27dcd3c9f 100644
--- a/pkgs/applications/office/zotero/default.nix
+++ b/pkgs/applications/office/zotero/default.nix
@@ -42,10 +42,11 @@ stdenv.mkDerivation rec {
     sha256 = "1abkwxdi154hnry8nsvxbklvbsnvd7cs2as0041h2kbiz824pv31";
   };
 
-  buildInputs= [ wrapGAppsHook gsettings-desktop-schemas gtk3 gnome3.adwaita-icon-theme dconf ];
-
-  phases = [ "unpackPhase" "patchPhase" "installPhase" "fixupPhase" ];
+  nativeBuildInputs = [ wrapGAppsHook ];
+  buildInputs= [ gsettings-desktop-schemas glib gtk3 gnome3.adwaita-icon-theme dconf ];
 
+  dontConfigure = true;
+  dontBuild = true;
   dontStrip = true;
   dontPatchELF = true;
 
diff --git a/pkgs/applications/radio/airspy/default.nix b/pkgs/applications/radio/airspy/default.nix
index 0a313c35a18..09b8499b27a 100644
--- a/pkgs/applications/radio/airspy/default.nix
+++ b/pkgs/applications/radio/airspy/default.nix
@@ -1,36 +1,33 @@
 { stdenv, lib, fetchFromGitHub
-, cmake , pkgconfig, libusb
+, cmake , pkgconfig, libusb1
 }:
 
-let
+stdenv.mkDerivation rec {
+  pname = "airspy";
   version = "1.0.9";
-in
-  stdenv.mkDerivation {
-    pname = "airspy";
-    inherit version;
 
-    src = fetchFromGitHub {
-      owner = "airspy";
-      repo = "airspyone_host";
-      rev = "v${version}";
-      sha256 = "04kx2p461sqd4q354n1a99zcabg9h29dwcnyhakykq8bpg3mgf1x";
-    };
+  src = fetchFromGitHub {
+    owner = "airspy";
+    repo = "airspyone_host";
+    rev = "v${version}";
+    sha256 = "04kx2p461sqd4q354n1a99zcabg9h29dwcnyhakykq8bpg3mgf1x";
+  };
 
-    postPatch = ''
-      substituteInPlace airspy-tools/CMakeLists.txt --replace "/etc/udev/rules.d" "$out/etc/udev/rules.d"
-    '';
+  postPatch = ''
+    substituteInPlace airspy-tools/CMakeLists.txt --replace "/etc/udev/rules.d" "$out/etc/udev/rules.d"
+  '';
 
-    nativeBuildInputs = [ cmake pkgconfig ];
-    buildInputs = [ libusb ];
+  nativeBuildInputs = [ cmake pkgconfig ];
+  buildInputs = [ libusb1 ];
 
-    cmakeFlags =
-      lib.optionals stdenv.isLinux [ "-DINSTALL_UDEV_RULES=ON" ];
+  cmakeFlags =
+    lib.optionals stdenv.isLinux [ "-DINSTALL_UDEV_RULES=ON" ];
 
-    meta = with stdenv.lib; {
-      homepage = https://github.com/airspy/airspyone_host;
-      description = "Host tools and driver library for the AirSpy SDR";
-      license = licenses.bsd3;
-      platforms = with platforms; linux ++ darwin;
-      maintainers = with maintainers; [ markuskowa ];
-    };
-  }
+  meta = with stdenv.lib; {
+    homepage = https://github.com/airspy/airspyone_host;
+    description = "Host tools and driver library for the AirSpy SDR";
+    license = licenses.bsd3;
+    platforms = with platforms; linux ++ darwin;
+    maintainers = with maintainers; [ markuskowa ];
+  };
+}
diff --git a/pkgs/applications/radio/dump1090/default.nix b/pkgs/applications/radio/dump1090/default.nix
index 0a92bea44e8..3ab25d86e75 100644
--- a/pkgs/applications/radio/dump1090/default.nix
+++ b/pkgs/applications/radio/dump1090/default.nix
@@ -2,7 +2,7 @@
 , fetchFromGitHub
 , pkgconfig
 , libbladeRF
-, libusb
+, libusb1
 , ncurses
 , rtl-sdr
 }:
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     libbladeRF
-    libusb
+    libusb1
     ncurses
     rtl-sdr
   ];
diff --git a/pkgs/applications/radio/fldigi/default.nix b/pkgs/applications/radio/fldigi/default.nix
index b7705cff026..20cf2cf6286 100644
--- a/pkgs/applications/radio/fldigi/default.nix
+++ b/pkgs/applications/radio/fldigi/default.nix
@@ -2,12 +2,12 @@
   libsamplerate, libpulseaudio, libXinerama, gettext, pkgconfig, alsaLib }:
 
 stdenv.mkDerivation rec {
-  version = "4.1.09";
+  version = "4.1.11";
   pname = "fldigi";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "1pdwm8na2yq6wj76057sbfxr5cb5avnm26if8spsp5fkfw9yylwp";
+    sha256 = "1y62xn1pim38ibaf2mbl8b7aq20jdaac6lgggb9r402w9bj5b196";
   };
 
   buildInputs = [ libXinerama gettext hamlib fltk14 libjpeg libpng portaudio
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Digital modem program";
-    homepage = https://sourceforge.net/projects/fldigi/;
+    homepage = "https://sourceforge.net/projects/fldigi/";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [ relrod ftrvxmtrx ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/radio/flrig/default.nix b/pkgs/applications/radio/flrig/default.nix
index 17d579cb45e..968b2fd0df9 100644
--- a/pkgs/applications/radio/flrig/default.nix
+++ b/pkgs/applications/radio/flrig/default.nix
@@ -6,12 +6,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "1.3.49";
+  version = "1.3.50";
   pname = "flrig";
 
   src = fetchurl {
     url = "mirror://sourceforge/fldigi/${pname}-${version}.tar.gz";
-    sha256 = "0icfniiw2l7d7gyxrzy87n3ragzvf0ykvq7c10ppf111wl5in295";
+    sha256 = "0fzrknzzi8kmzmrcfpc8rxr7v4a4ny6z6z5q5qwh95sp2kn2qzp9";
   };
 
   buildInputs = [
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Digital modem rig control program";
-    homepage = https://sourceforge.net/projects/fldigi/;
+    homepage = "https://sourceforge.net/projects/fldigi/";
     license = stdenv.lib.licenses.gpl3Plus;
     maintainers = with stdenv.lib.maintainers; [ dysinger ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/radio/gqrx/default.nix b/pkgs/applications/radio/gqrx/default.nix
index e95c7d77952..f1a71804e3f 100644
--- a/pkgs/applications/radio/gqrx/default.nix
+++ b/pkgs/applications/radio/gqrx/default.nix
@@ -38,7 +38,7 @@ mkDerivation rec {
       including Funcube Dongle Pro/Pro+, rtl-sdr, HackRF, and Universal
       Software Radio Peripheral (USRP) devices.
     '';
-    homepage = http://gqrx.dk/;
+    homepage = "https://gqrx.dk/";
     # Some of the code comes from the Cutesdr project, with a BSD license, but
     # it's currently unknown which version of the BSD license that is.
     license = licenses.gpl3Plus;
diff --git a/pkgs/applications/radio/hackrf/default.nix b/pkgs/applications/radio/hackrf/default.nix
index 09b4c84c131..ea05d08e8ce 100644
--- a/pkgs/applications/radio/hackrf/default.nix
+++ b/pkgs/applications/radio/hackrf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig, libusb, fftwSinglePrec }:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, libusb1, fftwSinglePrec }:
 
 stdenv.mkDerivation rec {
   pname = "hackrf";
@@ -11,9 +11,14 @@ stdenv.mkDerivation rec {
     sha256 = "0idh983xh6gndk9kdgx5nzz76x3mxb42b02c5xvdqahadsfx3b9w";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [
+    cmake
+    pkgconfig
+  ];
+
   buildInputs = [
-    cmake libusb fftwSinglePrec
+    libusb1
+    fftwSinglePrec
   ];
 
   cmakeFlags = [ "-DUDEV_RULES_GROUP=plugdev" "-DUDEV_RULES_PATH=lib/udev/rules.d" ];
diff --git a/pkgs/applications/radio/pyradio/default.nix b/pkgs/applications/radio/pyradio/default.nix
index 88ce23cd709..f23359688c6 100644
--- a/pkgs/applications/radio/pyradio/default.nix
+++ b/pkgs/applications/radio/pyradio/default.nix
@@ -2,13 +2,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "pyradio";
-  version = "0.8.7.1";
+  version = "0.8.7.2";
 
   src = fetchFromGitHub {
     owner = "coderholic";
     repo = pname;
     rev = version;
-    sha256 = "1f1dch5vrx2armrff19rh9gpqydspn3nvzc9p9j2jfi6gsxhppyb";
+    sha256 = "0h2sxaqpmc1d1kpvpbcs9wymgzhx25x0x9p7dbyfw9r90i6123q1";
   };
 
   checkPhase = ''
diff --git a/pkgs/applications/radio/uhd/default.nix b/pkgs/applications/radio/uhd/default.nix
index 76519062f59..e7ddb5787fa 100644
--- a/pkgs/applications/radio/uhd/default.nix
+++ b/pkgs/applications/radio/uhd/default.nix
@@ -1,57 +1,129 @@
-{ stdenv, fetchurl, fetchFromGitHub, cmake, pkgconfig
-, python, orc, libusb1, boost }:
-
-# You need these udev rules to not have to run as root (copied from
-# ${uhd}/share/uhd/utils/uhd-usrp.rules):
-#
-#   SUBSYSTEMS=="usb", ATTRS{idVendor}=="fffe", ATTRS{idProduct}=="0002", MODE:="0666"
-#   SUBSYSTEMS=="usb", ATTRS{idVendor}=="2500", ATTRS{idProduct}=="0002", MODE:="0666"
+{ stdenv
+, fetchurl
+, fetchFromGitHub
+, cmake
+, pkgconfig
+# See https://files.ettus.com/manual_archive/v3.15.0.0/html/page_build_guide.html for dependencies explanations
+, boost
+, enableLibuhd_C_api ? true
+# requires numpy
+, enableLibuhd_Python_api ? false
+, python3 ? null
+, enableExamples ? false
+, enableUtils ? false
+, enableLiberio ? false
+, liberio ? null
+, libusb1 ? null
+, enableDpdk ? false
+, dpdk ? null
+# Devices
+, enableOctoClock ? true
+, enableMpmd ? true
+, enableB100 ? true
+, enableB200 ? true
+, enableUsrp1 ? true
+, enableUsrp2 ? true
+, enableX300 ? true
+, enableN230 ? true
+, enableN300 ? true
+, enableN320 ? true
+, enableE300 ? true
+, enableE320 ? true
+}:
 
 let
-  uhdVer = "v" + version;
+  onOffBool = b: if b then "ON" else "OFF";
+  inherit (stdenv.lib) optionals;
+in
 
+stdenv.mkDerivation rec {
+  pname = "uhd";
   # UHD seems to use three different version number styles: x.y.z, xxx_yyy_zzz
   # and xxx.yyy.zzz. Hrmpf... style keeps changing
-  version = "3.14.0.0";
-
-  # Firmware images are downloaded (pre-built) from the respective release on Github
-  uhdImagesSrc = fetchurl {
-    url = "https://github.com/EttusResearch/uhd/releases/download/${uhdVer}/uhd-images_${version}.tar.xz";
-    sha256 = "1fp37wgqkbr14cxg9l7ghfd4r92y2bxwgb7cfjzs96hbpd9s6al0";
-  };
-
-in stdenv.mkDerivation {
-  pname = "uhd";
-  inherit version;
+  version = "3.15.0.0";
 
   src = fetchFromGitHub {
     owner = "EttusResearch";
     repo = "uhd";
-    rev = uhdVer;
-    sha256 = "0y1hff4vslfv36vxgvjqajg4862a11d4wgr0vcb0visgh1bi8qgy";
+    rev = "v${version}";
+    sha256 = "0jknln88a69fh244670nb7qrflbyv0vvdxfddb5g8ncpb6hcg8qf";
+  };
+  # Firmware images are downloaded (pre-built) from the respective release on Github
+  uhdImagesSrc = fetchurl {
+    url = "https://github.com/EttusResearch/uhd/releases/download/v${version}/uhd-images_${version}.tar.xz";
+    sha256 = "1fir1a13ac07mqhm4sr34cixiqj2difxq0870qv1wr7a7cbfw6vp";
   };
 
   enableParallelBuilding = true;
 
-  # ABI differences GCC 7.1
-  # /nix/store/wd6r25miqbk9ia53pp669gn4wrg9n9cj-gcc-7.3.0/include/c++/7.3.0/bits/vector.tcc:394:7: note: parameter passing for argument of type 'std::vector<uhd::range_t>::iterator {aka __gnu_cxx::__normal_iterator<uhd::range_t*, std::vector<uhd::range_t> >}' changed in GCC 7.1
+  cmakeFlags = [
+    "-DENABLE_LIBUHD=ON"
+    "-DENABLE_USB=ON"
+    "-DENABLE_TESTS=ON" # This installs tests as well so we delete them via postPhases
+    "-DENABLE_EXAMPLES=${onOffBool enableExamples}"
+    "-DENABLE_UTILS=${onOffBool enableUtils}"
+    "-DENABLE_LIBUHD_C_API=${onOffBool enableLibuhd_C_api}"
+    "-DENABLE_LIBUHD_PYTHON_API=${onOffBool enableLibuhd_Python_api}"
+    "-DENABLE_LIBERIO=${onOffBool enableLiberio}"
+    "-DENABLE_DPDK=${onOffBool enableDpdk}"
+    # Devices
+    "-DENABLE_OCTOCLOCK=${onOffBool enableOctoClock}"
+    "-DENABLE_MPMD=${onOffBool enableMpmd}"
+    "-DENABLE_B100=${onOffBool enableB100}"
+    "-DENABLE_B200=${onOffBool enableB200}"
+    "-DENABLE_USRP1=${onOffBool enableUsrp1}"
+    "-DENABLE_USRP2=${onOffBool enableUsrp2}"
+    "-DENABLE_X300=${onOffBool enableX300}"
+    "-DENABLE_N230=${onOffBool enableN230}"
+    "-DENABLE_N300=${onOffBool enableN300}"
+    "-DENABLE_N320=${onOffBool enableN320}"
+    "-DENABLE_E300=${onOffBool enableE300}"
+    "-DENABLE_E320=${onOffBool enableE320}"
+  ]
+    # TODO: Check if this still needed
+    # ABI differences GCC 7.1
+    # /nix/store/wd6r25miqbk9ia53pp669gn4wrg9n9cj-gcc-7.3.0/include/c++/7.3.0/bits/vector.tcc:394:7: note: parameter passing for argument of type 'std::vector<uhd::range_t>::iterator {aka __gnu_cxx::__normal_iterator<uhd::range_t*, std::vector<uhd::range_t> >}' changed in GCC 7.1
+    ++ [ (stdenv.lib.optionalString stdenv.isAarch32 "-DCMAKE_CXX_FLAGS=-Wno-psabi") ]
+  ;
 
-  cmakeFlags = [ "-DLIBUSB_INCLUDE_DIRS=${libusb1.dev}/include/libusb-1.0"] ++
-               [ (stdenv.lib.optionalString stdenv.isAarch32 "-DCMAKE_CXX_FLAGS=-Wno-psabi") ];
+  # Python + Mako are always required for the build itself but not necessary for runtime.
+  pythonEnv = python3.withPackages (ps: with ps; [ Mako ]
+    ++ optionals (enableLibuhd_Python_api) [ numpy setuptools ]
+    ++ optionals (enableUtils) [ requests six ]
+  );
 
-  nativeBuildInputs = [ cmake pkgconfig ];
+  nativeBuildInputs = [
+    cmake
+    pkgconfig
+  ]
+    # If both enableLibuhd_Python_api and enableUtils are off, we don't need
+    # pythonEnv in buildInputs as it's a 'build' dependency and not a runtime
+    # dependency
+    ++ optionals (!enableLibuhd_Python_api && !enableUtils) [ pythonEnv ]
+  ;
   buildInputs = [
-    (python.withPackages (ps: with ps; [ Mako six requests ]))
-    orc
-    libusb1
     boost
-  ];
+    libusb1
+  ]
+    # However, if enableLibuhd_Python_api *or* enableUtils is on, we need
+    # pythonEnv for runtime as well. The utilities' runtime dependencies are
+    # handled at the environment
+    ++ optionals (enableLibuhd_Python_api || enableUtils) [ pythonEnv ]
+    ++ optionals (enableLiberio) [ liberio ]
+    ++ optionals (enableDpdk) [ dpdk ]
+  ;
+
+  doCheck = true;
 
   # Build only the host software
   preConfigure = "cd host";
+  # TODO: Check if this still needed, perhaps relevant:
+  # https://files.ettus.com/manual_archive/v3.15.0.0/html/page_build_guide.html#build_instructions_unix_arm
   patches = if stdenv.isAarch32 then ./neon.patch else null;
 
-  postPhases = [ "installFirmware" ];
+  postPhases = [ "installFirmware" "removeInstalledTests" ]
+    ++ optionals (enableUtils) [ "moveUdevRules" ]
+  ;
 
   # UHD expects images in `$CMAKE_INSTALL_PREFIX/share/uhd/images`
   installFirmware = ''
@@ -59,6 +131,18 @@ in stdenv.mkDerivation {
     tar --strip-components=1 -xvf "${uhdImagesSrc}" -C "$out/share/uhd/images"
   '';
 
+  # -DENABLE_TESTS=ON installs the tests, we don't need them in the output
+  removeInstalledTests = ''
+    rm -r $out/lib/uhd/tests
+  '';
+
+  # Moves the udev rules to the standard location, needed only if utils are
+  # enabled
+  moveUdevRules = ''
+    mkdir -p $out/lib/udev/rules.d
+    mv $out/lib/uhd/utils/uhd-usrp.rules $out/lib/udev/rules.d/
+  '';
+
   meta = with stdenv.lib; {
     description = "USRP Hardware Driver (for Software Defined Radio)";
     longDescription = ''
@@ -68,7 +152,7 @@ in stdenv.mkDerivation {
       USRP devices are designed and sold by Ettus Research, LLC and its parent
       company, National Instruments.
     '';
-    homepage = https://uhd.ettus.com/;
+    homepage = "https://uhd.ettus.com/";
     license = licenses.gpl3Plus;
     platforms = platforms.linux ++ platforms.darwin;
     maintainers = with maintainers; [ bjornfor fpletz tomberek ];
diff --git a/pkgs/applications/radio/urh/default.nix b/pkgs/applications/radio/urh/default.nix
index 6c8615fd631..850f73c4922 100644
--- a/pkgs/applications/radio/urh/default.nix
+++ b/pkgs/applications/radio/urh/default.nix
@@ -5,13 +5,13 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "urh";
-  version = "2.8.3";
+  version = "2.8.5";
 
   src = fetchFromGitHub {
     owner = "jopohl";
     repo = pname;
     rev = "v${version}";
-    sha256 = "17104livp6fv2zg56sqv90lqb7ywqhq2qfnal1hriwwh1b92glv8";
+    sha256 = "060npn0q7yrby2zj9hi8x7raivs91v9hvryvf45k1ipyqh8dgri6";
   };
 
   nativeBuildInputs = [ qt5.wrapQtAppsHook ];
diff --git a/pkgs/applications/science/astronomy/stellarium/default.nix b/pkgs/applications/science/astronomy/stellarium/default.nix
index eca25774c59..3cb34576c46 100644
--- a/pkgs/applications/science/astronomy/stellarium/default.nix
+++ b/pkgs/applications/science/astronomy/stellarium/default.nix
@@ -6,13 +6,13 @@
 
 mkDerivation rec {
   pname = "stellarium";
-  version = "0.19.3";
+  version = "0.20.0";
 
   src = fetchFromGitHub {
     owner = "Stellarium";
     repo = "stellarium";
     rev = "v${version}";
-    sha256 = "175aj4bgi9b6bif6fvjdlpd68brcwij4x3ml0lxk6i51binv233y";
+    sha256 = "1732dxkgyqd4xf0ry7v930vcbv60l8iry596869z1d47j2piibs4";
   };
 
   nativeBuildInputs = [ cmake perl wrapQtAppsHook ];
diff --git a/pkgs/applications/science/biology/deeptools/default.nix b/pkgs/applications/science/biology/deeptools/default.nix
index 78a6f483337..8787c96e5b0 100644
--- a/pkgs/applications/science/biology/deeptools/default.nix
+++ b/pkgs/applications/science/biology/deeptools/default.nix
@@ -4,11 +4,11 @@
 with python.pkgs;
 buildPythonApplication rec {
   pname = "deepTools";
-  version = "3.3.1";
+  version = "3.4.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "08p36p9ncj5s8qf1r7h83x4rnmi63l3yk6mnr3wgpg2qgvwl0hji";
+    sha256 = "05zw9gk17hz08hns5lnhn7l13idg9jdz4gdba6m6gbr84yz149gs";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/applications/science/biology/last/default.nix b/pkgs/applications/science/biology/last/default.nix
index b47ce6ac3a9..1a3762f4326 100644
--- a/pkgs/applications/science/biology/last/default.nix
+++ b/pkgs/applications/science/biology/last/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "last";
-  version = "1047";
+  version = "1060";
 
   src = fetchurl {
     url = "http://last.cbrc.jp/last-${version}.zip";
-    sha256 = "06fj4qfw3dd35y3pky3dnr40v1alf43wjx373rbx1vr3hbgzvgf8";
+    sha256 = "0h0604rxg0z0h21dykrnxsb4679zfhibg79gss1v2ik5xpdxl8kk";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/applications/science/biology/picard-tools/default.nix b/pkgs/applications/science/biology/picard-tools/default.nix
index 93f66810549..246c9876810 100644
--- a/pkgs/applications/science/biology/picard-tools/default.nix
+++ b/pkgs/applications/science/biology/picard-tools/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "picard-tools";
-  version = "2.22.0";
+  version = "2.22.2";
 
   src = fetchurl {
     url = "https://github.com/broadinstitute/picard/releases/download/${version}/picard.jar";
-    sha256 = "1qgg8r81xn2z965v78kfj05vycrd2cz48gxk5csr6kvwk3ba286c";
+    sha256 = "11mzz483f89pb2s8jmwhl12d0m6k41kmi4xh0i6hq69rxrqi8l4s";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/science/biology/seaview/default.nix b/pkgs/applications/science/biology/seaview/default.nix
index fea8da41d70..4192de714d0 100644
--- a/pkgs/applications/science/biology/seaview/default.nix
+++ b/pkgs/applications/science/biology/seaview/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, coreutils, fltk, libjpeg }:
 
 stdenv.mkDerivation rec {
-  version = "5.0";
+  version = "5.0.2";
   pname = "seaview";
 
   src = fetchurl {
     url = "ftp://pbil.univ-lyon1.fr/pub/mol_phylogeny/seaview/archive/seaview_${version}.tar.gz";
-    sha256 = "0gzjqf5mm91pa1drwxvz229bv6l995npdggngszh6z6j4pfh8j7c";
+    sha256 = "0bad0nd18a36g6ysx28j68rbnwqn33ra8inx2lv2igqqcs6i5kif";
   };
 
   buildInputs = [ fltk libjpeg ];
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
 
           Gouy M., Guindon S. & Gascuel O. (2010) SeaView version 4 : a multiplatform graphical user interface for sequence alignment and phylogenetic tree building. Molecular Biology and Evolution 27(2):221-224.
     '';
-    homepage = http://doua.prabi.fr/software/seaview;
+    homepage = "http://doua.prabi.fr/software/seaview";
     license = licenses.gpl3;
     maintainers = [ maintainers.iimog ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/biology/stacks/default.nix b/pkgs/applications/science/biology/stacks/default.nix
index e778c3bd52c..93a02a46bd8 100644
--- a/pkgs/applications/science/biology/stacks/default.nix
+++ b/pkgs/applications/science/biology/stacks/default.nix
@@ -2,17 +2,17 @@
     
 stdenv.mkDerivation rec {
   pname = "stacks";
-  version = "2.41";
+  version = "2.52";
   src = fetchurl {
     url = "http://catchenlab.life.illinois.edu/stacks/source/${pname}-${version}.tar.gz";
-    sha256 = "0q420rzjb05jfchcls3pysm4hxfgs6xj2jw246isx0il10g93gkq";
+    sha256 = "0gq3kbj910jsq591wylzjmd23srjlsssmrckmf46m4ysjqdqd8vm";
   };
 
   buildInputs = [ zlib ];
 
   meta = {
     description = "Software pipeline for building loci from short-read sequences";
-    homepage = http://catchenlab.life.illinois.edu/stacks/;
+    homepage = "http://catchenlab.life.illinois.edu/stacks/";
     maintainers = [ stdenv.lib.maintainers.bzizou ];
     license = stdenv.lib.licenses.gpl3;
   };
diff --git a/pkgs/applications/science/chemistry/gwyddion/codegen.patch b/pkgs/applications/science/chemistry/gwyddion/codegen.patch
new file mode 100644
index 00000000000..eb306d99f8a
--- /dev/null
+++ b/pkgs/applications/science/chemistry/gwyddion/codegen.patch
@@ -0,0 +1,22 @@
+--- gwyddion-2.55.orig/configure	2019-11-04 01:25:31.000000000 -0800
++++ gwyddion-2.55/configure	2020-03-20 18:49:43.860452655 -0700
+@@ -18560,7 +18560,7 @@
+ fi
+   if test "x$embed_pygtk" = xno; then
+     if test "x$PYGTK_CODEGENDIR" = 'x'; then
+-      PYGTK_CODEGENDIR=`$PKG_CONFIG --variable=codegendir pygtk-2.0`
++      PYGTK_CODEGENDIR=`$PKG_CONFIG --variable=codegendir pygobject-2.0`
+     fi
+   else
+     # Some silly OSes want to remove pygtk2.  We can build pygwy without
+--- gwyddion-2.55.orig/configure.ac	2019-11-04 01:25:16.000000000 -0800
++++ gwyddion-2.55/configure.ac	2020-03-20 18:52:55.042724547 -0700
+@@ -270,7 +270,7 @@
+                     [embed_pygtk=yes; pygwy_warn=" (embedded pygtk2)"])
+   if test "x$embed_pygtk" = xno; then
+     if test "x$PYGTK_CODEGENDIR" = 'x'; then
+-      PYGTK_CODEGENDIR=`$PKG_CONFIG --variable=codegendir pygtk-2.0`
++      PYGTK_CODEGENDIR=`$PKG_CONFIG --variable=codegendir pygobject-2.0`
+     fi
+   else
+     # Some silly OSes want to remove pygtk2.  We can build pygwy without
diff --git a/pkgs/applications/science/chemistry/gwyddion/default.nix b/pkgs/applications/science/chemistry/gwyddion/default.nix
index 12007c940b3..644f609ed0a 100644
--- a/pkgs/applications/science/chemistry/gwyddion/default.nix
+++ b/pkgs/applications/science/chemistry/gwyddion/default.nix
@@ -1,17 +1,69 @@
-{ stdenv, fetchurl, gtk2, pkgconfig }:
+{ stdenv, fetchurl, gtk2, pkg-config, fftw, file,
+  pythonSupport ? false, pythonPackages ? null,
+  gnome2 ? null,
+  openexrSupport ? true, openexr ? null,
+  libzipSupport ? true, libzip ? null,
+  libxml2Support ? true, libxml2 ? null,
+  libwebpSupport ? true, libwebp ? null,
+  # libXmu is not used if libunique is.
+  libXmuSupport ? false, xorg ? null,
+  libxsltSupport ? true, libxslt ? null,
+  fitsSupport ? true, cfitsio ? null,
+  zlibSupport ? true, zlib ? null,
+  libuniqueSupport ? true, libunique ? null,
+  libpngSupport ? true, libpng ? null,
+  openglSupport ? !stdenv.isDarwin
+}:
 
-with stdenv.lib;
+assert openexrSupport -> openexr != null;
+assert libzipSupport -> libzip != null;
+assert libxml2Support -> libxml2 != null;
+assert libwebpSupport -> libwebp != null;
+assert libXmuSupport -> xorg != null;
+assert libxsltSupport -> libxslt != null;
+assert fitsSupport -> cfitsio != null;
+assert zlibSupport -> zlib != null;
+assert libuniqueSupport -> libunique != null;
+assert libpngSupport -> libpng != null;
+assert openglSupport -> gnome2 != null;
+assert pythonSupport -> (pythonPackages != null && gnome2 != null);
 
-let version = "2.48"; in
-stdenv.mkDerivation {
+let
+    inherit (pythonPackages) pygtk pygobject2 python;
+
+in
+
+stdenv.mkDerivation rec {
   pname = "gwyddion";
-  inherit version;
+   version = "2.55";
   src = fetchurl {
-    url = "mirror://sourceforge/gwyddion/files/gwyddion/${version}/gwyddion-${version}.tar.xz";
-    sha256 = "119iw58ac2wn4cas6js8m7r1n4gmmkga6b1y711xzcyjp9hshgwx";
+    url = "mirror://sourceforge/gwyddion/gwyddion-${version}.tar.xz";
+    sha256 = "0l00zszvginpriv12idc0y1x28qmicdmrwkqa007srkxvrdgxwdi";
   };
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ gtk2 ];
+  
+  nativeBuildInputs = [ pkg-config file ];
+  
+  buildInputs = with stdenv.lib;
+    [ gtk2 fftw ] ++
+    optional openglSupport gnome2.gtkglext ++
+    optional openexrSupport openexr ++
+    optional libXmuSupport xorg.libXmu ++
+    optional fitsSupport cfitsio ++
+    optional libpngSupport libpng ++
+    optional libxsltSupport libxslt ++
+    optional libxml2Support libxml2 ++
+    optional libwebpSupport libwebp ++
+    optional zlibSupport zlib ++
+    optional libuniqueSupport libunique ++
+    optional libzipSupport libzip;
+
+  propagatedBuildInputs = with stdenv.lib;
+    optionals pythonSupport [ pygtk pygobject2 python gnome2.gtksourceview ];
+
+  # This patch corrects problems with python support, but should apply cleanly
+  # regardless of whether python support is enabled, and have no effects if
+  # it is disabled.
+  patches = [ ./codegen.patch ];
   meta = {
     homepage = http://gwyddion.net/;
 
@@ -28,6 +80,7 @@ stdenv.mkDerivation {
       spectrophotometry.
     '';
     license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = with stdenv.lib.platforms; linux ++ darwin;
+    maintainers = [ stdenv.lib.maintainers.cge ];
   };
 }
diff --git a/pkgs/applications/science/chemistry/marvin/default.nix b/pkgs/applications/science/chemistry/marvin/default.nix
index 2c155e4e848..c54fb3444bb 100644
--- a/pkgs/applications/science/chemistry/marvin/default.nix
+++ b/pkgs/applications/science/chemistry/marvin/default.nix
@@ -4,12 +4,12 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "marvin";
-  version = "20.6.0";
+  version = "20.9.0";
 
   src = fetchurl {
     name = "marvin-${version}.deb";
     url = "http://dl.chemaxon.com/marvin/${version}/marvin_linux_${versions.majorMinor version}.deb";
-    sha256 = "1vd1hsj36wzghpn6xnppjmva35kdcin7h0xdj3xmi4w5l3qw7fl6";
+    sha256 = "1c6q1vb96jsb37g5qbhzcnasd5pdqjyc190yg3caw3gwrd97889q";
   };
 
   nativeBuildInputs = [ dpkg makeWrapper ];
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "A chemical modelling, analysis and structure drawing program";
-    homepage = https://chemaxon.com/products/marvin;
+    homepage = "https://chemaxon.com/products/marvin";
     maintainers = with maintainers; [ fusion809 ];
     license = licenses.unfree;
     platforms = platforms.linux;
diff --git a/pkgs/applications/science/electronics/dsview/default.nix b/pkgs/applications/science/electronics/dsview/default.nix
index d188365db1d..1e125964d50 100644
--- a/pkgs/applications/science/electronics/dsview/default.nix
+++ b/pkgs/applications/science/electronics/dsview/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchFromGitHub, pkgconfig, cmake,
 libzip, boost, fftw, qtbase,
-libusb, wrapQtAppsHook, libsigrok4dsl, libsigrokdecode4dsl
+libusb1, wrapQtAppsHook, libsigrok4dsl, libsigrokdecode4dsl
 }:
 
 stdenv.mkDerivation rec {
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ cmake pkgconfig wrapQtAppsHook ];
 
   buildInputs = [
-   boost fftw qtbase libusb libzip libsigrokdecode4dsl libsigrok4dsl
+   boost fftw qtbase libusb1 libzip libsigrokdecode4dsl libsigrok4dsl
   ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix b/pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix
index c2cfc69c50c..f5f3ce7435a 100644
--- a/pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix
+++ b/pkgs/applications/science/electronics/dsview/libsigrok4dsl.nix
@@ -1,5 +1,5 @@
 { stdenv, pkgconfig, autoreconfHook,
-glib, libzip, libserialport, check, libusb, libftdi,
+glib, libzip, libserialport, check, libusb1, libftdi,
 systemd, alsaLib, dsview
 }:
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
 
   buildInputs = [
-    glib libzip libserialport libusb libftdi systemd check alsaLib
+    glib libzip libserialport libusb1 libftdi systemd check alsaLib
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/science/electronics/fparser/default.nix b/pkgs/applications/science/electronics/fparser/default.nix
new file mode 100644
index 00000000000..55e40ca2b00
--- /dev/null
+++ b/pkgs/applications/science/electronics/fparser/default.nix
@@ -0,0 +1,26 @@
+{ stdenv
+, fetchFromGitHub
+, cmake
+}:
+
+stdenv.mkDerivation rec {
+  pname = "fparser";
+  version = "unstable-2015-09-25";
+
+  src = fetchFromGitHub {
+    owner = "thliebig";
+    repo = "fparser";
+    rev = "a59e1f51e32096bfe2a0a2640d5dffc7ae6ba37b";
+    sha256 = "0wayml1mlyi922gp6am3fsidhzsilziksdn5kbnpcln01h8555ad";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with stdenv.lib; {
+    description = "C++ Library for Evaluating Mathematical Functions";
+    homepage = "https://github.com/thliebig/fparser";
+    license = licenses.lgpl3;
+    maintainers = with maintainers; [ matthuszagh ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/science/electronics/xcircuit/default.nix b/pkgs/applications/science/electronics/xcircuit/default.nix
index 418144e6af7..d10b486492e 100644
--- a/pkgs/applications/science/electronics/xcircuit/default.nix
+++ b/pkgs/applications/science/electronics/xcircuit/default.nix
@@ -2,7 +2,7 @@
 , cairo, ghostscript, ngspice, tcl, tk, xorg, zlib }:
 
 let
-  version = "3.9.73";
+  version = "3.10.12";
   name = "xcircuit-${version}";
   inherit (stdenv.lib) getBin;
 
@@ -11,7 +11,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://opencircuitdesign.com/xcircuit/archive/${name}.tgz";
-    sha256 = "1kj9hayipplzm4960kx48vxddqj154qnxkccaqj9cnkp62b7q3jg";
+    sha256 = "1h1ywc3mr7plvwnhdii2zgnnv5ih2nhyl4qbdjpi83dq0aq1s2mn";
   };
 
   nativeBuildInputs = [ autoreconfHook automake pkgconfig ];
@@ -30,6 +30,6 @@ in stdenv.mkDerivation {
     homepage = http://opencircuitdesign.com/xcircuit;
     license = licenses.gpl2;
     platforms = platforms.linux;
-    maintainers = [ maintainers.spacefrogg ];
+    maintainers = with maintainers; [ spacefrogg thoughtpolice ];
   };
 }
diff --git a/pkgs/applications/science/logic/alt-ergo/default.nix b/pkgs/applications/science/logic/alt-ergo/default.nix
index f83480cfbaf..e396f1c4a91 100644
--- a/pkgs/applications/science/logic/alt-ergo/default.nix
+++ b/pkgs/applications/science/logic/alt-ergo/default.nix
@@ -1,26 +1,47 @@
-{ fetchurl, stdenv, which, dune, ocamlPackages }:
+{ fetchurl, lib, which, ocamlPackages }:
 
-stdenv.mkDerivation rec {
+let
   pname = "alt-ergo";
-  version = "2.3.0";
+  version = "2.3.2";
 
   src = fetchurl {
-    url    = "https://alt-ergo.ocamlpro.com/download_manager.php?target=${pname}-${version}.tar.gz";
-    name   = "${pname}-${version}.tar.gz";
-    sha256 = "1ycr3ff0gacq1aqzs16n6swgfniwpim0m7rvhcam64kj0a80c6bz";
+    url = "https://alt-ergo.ocamlpro.com/http/alt-ergo-${version}/alt-ergo-${version}.tar.gz";
+    sha256 = "130hisjzkaslygipdaaqib92spzx9rapsd45dbh5ssczjn5qnhb9";
   };
 
-  buildInputs = [ dune which ] ++ (with ocamlPackages; [
-    ocaml findlib camlzip lablgtk menhir num ocplib-simplex psmt2-frontend seq zarith
-  ]);
-
   preConfigure = "patchShebangs ./configure";
 
+  nativeBuildInputs = [ which ];
+
+in
+
+let alt-ergo-lib = ocamlPackages.buildDunePackage rec {
+  pname = "alt-ergo-lib";
+  inherit version src preConfigure nativeBuildInputs;
+  configureFlags = pname;
+  propagatedBuildInputs = with ocamlPackages; [ num ocplib-simplex stdlib-shims zarith ];
+}; in
+
+let alt-ergo-parsers = ocamlPackages.buildDunePackage rec {
+  pname = "alt-ergo-parsers";
+  inherit version src preConfigure nativeBuildInputs;
+  configureFlags = pname;
+  buildInputs = with ocamlPackages; [ menhir ];
+  propagatedBuildInputs = [ alt-ergo-lib ] ++ (with ocamlPackages; [ camlzip psmt2-frontend ]);
+}; in
+
+ocamlPackages.buildDunePackage {
+
+  inherit pname version src preConfigure nativeBuildInputs;
+
+  configureFlags = pname;
+
+  buildInputs = [ alt-ergo-parsers ocamlPackages.menhir ];
+
   meta = {
     description = "High-performance theorem prover and SMT solver";
     homepage    = "https://alt-ergo.ocamlpro.com/";
-    license     = stdenv.lib.licenses.ocamlpro_nc;
-    platforms   = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
-    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+    license     = lib.licenses.ocamlpro_nc;
+    maintainers = [ lib.maintainers.thoughtpolice ];
   };
 }
diff --git a/pkgs/applications/science/logic/cadical/default.nix b/pkgs/applications/science/logic/cadical/default.nix
new file mode 100644
index 00000000000..5e6c0d55b7d
--- /dev/null
+++ b/pkgs/applications/science/logic/cadical/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "cadical";
+  version = "1.2.1";
+
+  src = fetchFromGitHub {
+    owner = "arminbiere";
+    repo = "cadical";
+    rev = "rel-${version}";
+    hash = "sha256:1a66xkw42ad330fvw8i0sawrmg913m8wrq5c85lw5qandkwvxdi6";
+  };
+
+  dontAddPrefix = true;
+  installPhase = ''
+    install -Dm0755 build/cadical "$out/bin/cadical"
+    install -Dm0755 build/mobical "$out/bin/mobical"
+    mkdir -p "$out/share/doc/${pname}-${version}/"
+    install -Dm0755 {LICEN?E,README*,VERSION} "$out/share/doc/${pname}-${version}/"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Simplified Satisfiability Solver";
+    maintainers = with maintainers; [ shnarazk ];
+    platforms = platforms.unix;
+    license = licenses.mit;
+    homepage = "http://fmv.jku.at/cadical";
+  };
+}
diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix
index 85c5d23ffca..52a587ccb48 100644
--- a/pkgs/applications/science/logic/coq/default.nix
+++ b/pkgs/applications/science/logic/coq/default.nix
@@ -33,6 +33,7 @@ let
    "8.10.1" = "072v2zkjzf7gj48137wpr3c9j0hg9pdhlr5l8jrgrwynld8fp7i4";
    "8.10.2" = "0znxmpy71bfw0p6x47i82jf5k7v41zbz9bdpn901ysn3ir8l3wrz";
    "8.11.0" = "1rfdic6mp7acx2zfwz7ziqk12g95bl9nyj68z4n20a5bcjv2pxpn";
+   "8.11.1" = "0qriy9dy36dajsv5qmli8gd6v55mah02ya334nw49ky19v7518m0";
   }.${version};
   coq-version = stdenv.lib.versions.majorMinor version;
   versionAtLeast = stdenv.lib.versionAtLeast coq-version;
diff --git a/pkgs/applications/science/logic/lean/default.nix b/pkgs/applications/science/logic/lean/default.nix
index cfd645a3c73..594f596b5ef 100644
--- a/pkgs/applications/science/logic/lean/default.nix
+++ b/pkgs/applications/science/logic/lean/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "lean";
-  version = "3.7.2";
+  version = "3.8.0";
 
   src = fetchFromGitHub {
     owner  = "leanprover-community";
     repo   = "lean";
     rev    = "v${version}";
-    sha256 = "0d9lz0mbxyaaykkvk2p8w2hcif9cx0ksihgh7qhxf417bz6msgc1";
+    sha256 = "0frs2vhxlzdliyydb462c1886dn585zd7yp7hdxzsri2v6gdh89g";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/science/logic/mcy/default.nix b/pkgs/applications/science/logic/mcy/default.nix
index ec9af192631..a9366d56058 100644
--- a/pkgs/applications/science/logic/mcy/default.nix
+++ b/pkgs/applications/science/logic/mcy/default.nix
@@ -7,13 +7,13 @@ let
 in
 stdenv.mkDerivation {
   pname = "mcy";
-  version = "2020.03.16";
+  version = "2020.03.21";
 
   src = fetchFromGitHub {
     owner  = "YosysHQ";
     repo   = "mcy";
-    rev    = "562c02375067428bb657f57faa5131ee1ab44051";
-    sha256 = "0q77v2hxnmv61zx5bl4lrqiavgvsiyb5qxdp9hnihimj1m30bc5h";
+    rev    = "bac92b8aad9bf24714fda70d3750bb50d6d96177";
+    sha256 = "0mmg6zd5cbn8g0am9c3naamg0lq67yyy117fzn2ydigcyia7vmnp";
   };
 
   buildInputs = [ python ];
diff --git a/pkgs/applications/science/logic/poly/default.nix b/pkgs/applications/science/logic/poly/default.nix
index c833b22e49b..ee50a2d8504 100644
--- a/pkgs/applications/science/logic/poly/default.nix
+++ b/pkgs/applications/science/logic/poly/default.nix
@@ -2,13 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "libpoly";
-  version = "0.1.7";
+  version = "0.1.8";
 
   src = fetchFromGitHub {
     owner = "SRI-CSL";
     repo = "libpoly";
-    rev = "v${version}";
-    sha256 = "0i5ar4lhs88glk0rvkmag656ii434i6i1q5dspx6d0kyg78fii64";
+    # they've pushed to the release branch, use explicit tag
+    rev = "refs/tags/v${version}";
+    sha256 = "1n3gijksnl2ybznq4lkwm2428f82423sxq18gnb2g1kiwqlzdaa3";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -16,7 +17,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ gmp python ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/SRI-CSL/libpoly;
+    homepage = "https://github.com/SRI-CSL/libpoly";
     description = "C library for manipulating polynomials";
     license = licenses.lgpl3;
     platforms = platforms.all;
diff --git a/pkgs/applications/science/logic/symbiyosys/default.nix b/pkgs/applications/science/logic/symbiyosys/default.nix
index 48c48836b06..b180cf307f0 100644
--- a/pkgs/applications/science/logic/symbiyosys/default.nix
+++ b/pkgs/applications/science/logic/symbiyosys/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation {
   pname = "symbiyosys";
-  version = "2020.02.11";
+  version = "2020.03.24";
 
   src = fetchFromGitHub {
     owner  = "YosysHQ";
     repo   = "SymbiYosys";
-    rev    = "0a7013017f9d583ef6cc8d10712f4bf11cf6e024";
-    sha256 = "08xz8sgvs1qy7jxp8ma5yl49i6nl7k6bkhry4afdvwg3fvwis39c";
+    rev    = "8a62780b9df4d2584e41cdd42cab92fddcd75b31";
+    sha256 = "0ss5mrzwff2dny8kfciqbrz67m6k52yvc1shd7gk3qb99x7g7fp8";
   };
 
   buildInputs = [ python3 ];
diff --git a/pkgs/applications/science/math/cemu/default.nix b/pkgs/applications/science/math/cemu/default.nix
new file mode 100644
index 00000000000..f91e5be5170
--- /dev/null
+++ b/pkgs/applications/science/math/cemu/default.nix
@@ -0,0 +1,53 @@
+{ fetchFromGitHub
+, stdenv
+, mkDerivation
+, SDL2
+, libGL
+, libarchive
+, libusb
+, qtbase
+, qmake
+, git
+, libpng_apng
+, pkgconfig
+}:
+
+mkDerivation rec {
+  pname = "CEmu";
+  version = "1.3";
+  src = fetchFromGitHub {
+    owner = "CE-Programming";
+    repo = "CEmu";
+    rev = "v${version}";
+    sha256 = "1wcdnzcqscawj6jfdj5wwmw9g9vsd6a1rx0rrramakxzf8b7g47r";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [
+    qmake
+    git
+    pkgconfig
+  ];
+
+  buildInputs = [
+    SDL2
+    libGL
+    libarchive
+    libusb
+    qtbase
+    libpng_apng
+  ];
+
+  qmakeFlags = [
+    "gui/qt"
+  ];
+
+  meta = with stdenv.lib; {
+    changelog = "https://github.com/CE-Programming/CEmu/releases/tag/v${version}";
+    description = "Third-party TI-84 Plus CE / TI-83 Premium CE emulator, focused on developer features";
+    homepage = "https://ce-programming.github.io/CEmu";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ luc65r ];
+    platforms = [ "x86_64-linux" "x86_64-darwin" ];
+  };
+}
diff --git a/pkgs/applications/science/math/gmsh/default.nix b/pkgs/applications/science/math/gmsh/default.nix
index e65cf52d581..2c4d5f254da 100644
--- a/pkgs/applications/science/math/gmsh/default.nix
+++ b/pkgs/applications/science/math/gmsh/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gmsh";
-  version = "4.5.4";
+  version = "4.5.6";
 
   src = fetchurl {
     url = "http://gmsh.info/src/gmsh-${version}-source.tgz";
-    sha256 = "1k9f7qxlwja9i40qy55070sjnr21bl165677mdqw7qyb8d7wgy6c";
+    sha256 = "0gs65bgr1ph5lz7r6manqj8cra30s7c94pxilkd2z0p5vq6fpsj6";
   };
 
   buildInputs = [ openblasCompat gmm fltk libjpeg zlib libGLU libGL
diff --git a/pkgs/applications/science/math/mathematica/default.nix b/pkgs/applications/science/math/mathematica/default.nix
index 7cd1b2eb99f..5553bb0505f 100644
--- a/pkgs/applications/science/math/mathematica/default.nix
+++ b/pkgs/applications/science/math/mathematica/default.nix
@@ -9,6 +9,7 @@
 , freetype
 , gcc
 , glib
+, libssh2
 , ncurses
 , opencv
 , openssl
@@ -44,9 +45,11 @@ stdenv.mkDerivation rec {
     gcc.cc
     gcc.libc
     glib
+    libssh2
     ncurses
     opencv
     openssl
+    stdenv.cc.cc.lib
     unixODBC
     xkeyboard_config
     libxml2
@@ -93,7 +96,7 @@ stdenv.mkDerivation rec {
     # Fix library paths
     cd $out/libexec/Mathematica/Executables
     for path in mathematica MathKernel Mathematica WolframKernel wolfram math; do
-      sed -i -e "2iexport LD_LIBRARY_PATH=${zlib}/lib:\''${LD_LIBRARY_PATH}\n" $path
+      sed -i -e "2iexport LD_LIBRARY_PATH=${zlib}/lib:${stdenv.cc.cc.lib}/lib:${libssh2}/lib:\''${LD_LIBRARY_PATH}\n" $path
     done
 
     # Fix xkeyboard config path for Qt
@@ -102,7 +105,7 @@ stdenv.mkDerivation rec {
     done
 
     # Remove some broken libraries
-    rm $out/libexec/Mathematica/SystemFiles/Libraries/Linux-x86-64/libz.so*
+    rm -f $out/libexec/Mathematica/SystemFiles/Libraries/Linux-x86-64/libz.so*
   '';
 
   preFixup = ''
diff --git a/pkgs/applications/science/math/mathematica/l10ns.nix b/pkgs/applications/science/math/mathematica/l10ns.nix
index 51fb489be7e..c75c91be059 100644
--- a/pkgs/applications/science/math/mathematica/l10ns.nix
+++ b/pkgs/applications/science/math/mathematica/l10ns.nix
@@ -8,6 +8,12 @@ let allVersions = with lib; flip map
   # N.B. Versions in this list should be ordered from newest to oldest.
   [
     {
+      version = "12.1.0";
+      lang = "en";
+      language = "English";
+      sha256 = "15m9l20jvkxh5w6mbp81ys7mx2lx5j8acw5gz0il89lklclgb8z7";
+    }
+    {
       version = "12.0.0";
       lang = "en";
       language = "English";
diff --git a/pkgs/applications/science/math/palp/default.nix b/pkgs/applications/science/math/palp/default.nix
index e9fd21b46d8..4912b82d158 100644
--- a/pkgs/applications/science/math/palp/default.nix
+++ b/pkgs/applications/science/math/palp/default.nix
@@ -4,10 +4,12 @@
 , doSymlink ? true # symlink the executables to the default location (without dimension postfix)
 }:
 
+let
+  dim = toString dimensions;
+in
 stdenv.mkDerivation rec {
+  pname = "palp";
   version = "2.1";
-  dim = toString dimensions;
-  name = "palp-${dim}d-${version}";
 
   src = fetchurl {
     url = "http://hep.itp.tuwien.ac.at/~kreuzer/CY/palp/palp-${version}.tar.gz";
@@ -75,7 +77,7 @@ stdenv.mkDerivation rec {
       algorithms work in any dimension and our key routine for vertex and
       facet enumeration compares well with existing packages.
     '';
-    homepage = http://hep.itp.tuwien.ac.at/~kreuzer/CY/CYpalp.html;
+    homepage = "http://hep.itp.tuwien.ac.at/~kreuzer/CY/CYpalp.html";
     # Just a link on the website pointing to gpl -- now gplv3. When the last
     # version was released that pointed to gplv2 however, so thats probably
     # the right license.
diff --git a/pkgs/applications/science/math/qalculate-gtk/default.nix b/pkgs/applications/science/math/qalculate-gtk/default.nix
index c23debdd7a4..e393111590a 100644
--- a/pkgs/applications/science/math/qalculate-gtk/default.nix
+++ b/pkgs/applications/science/math/qalculate-gtk/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qalculate-gtk";
-  version = "3.8.0";
+  version = "3.8.0a";
 
   src = fetchFromGitHub {
     owner = "qalculate";
     repo = "qalculate-gtk";
     rev = "v${version}";
-    sha256 = "0nsg6dzg5r7rzqr671nvrf1c50rjwpz7bxv5f20i4s7agizgv840";
+    sha256 = "0bjd61bbc5b2i09kz3ss01c0xmxrhmiv5wpbhhplkp3yhw2qrf3m";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/science/math/rofi-calc/0001-Patch-plugindir-to-output.patch b/pkgs/applications/science/math/rofi-calc/0001-Patch-plugindir-to-output.patch
new file mode 100644
index 00000000000..197d1347d53
--- /dev/null
+++ b/pkgs/applications/science/math/rofi-calc/0001-Patch-plugindir-to-output.patch
@@ -0,0 +1,25 @@
+From 0eaef67b683683fb423fcb2d5096b3cdf9a4a9cd Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Maciej=20Kr=C3=BCger?= <mkg20001@gmail.com>
+Date: Sun, 22 Mar 2020 12:26:10 +0100
+Subject: [PATCH] Patch plugindir to output
+
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 50edb74..639ee86 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -50,7 +50,7 @@ PKG_CHECK_MODULES([glib],     [glib-2.0 >= 2.40 gio-unix-2.0 gmodule-2.0 ])
+ PKG_CHECK_MODULES([cairo],    [cairo])
+ PKG_CHECK_MODULES([rofi],     [rofi >= 1.5.4])
+ 
+-[rofi_PLUGIN_INSTALL_DIR]="`$PKG_CONFIG --variable=pluginsdir rofi`"
++[rofi_PLUGIN_INSTALL_DIR]="`echo $out/lib/rofi`"
+ AC_SUBST([rofi_PLUGIN_INSTALL_DIR])
+ 
+ LT_INIT([disable-static])
+-- 
+2.25.1
+
diff --git a/pkgs/applications/science/math/rofi-calc/default.nix b/pkgs/applications/science/math/rofi-calc/default.nix
new file mode 100644
index 00000000000..842265cf3d5
--- /dev/null
+++ b/pkgs/applications/science/math/rofi-calc/default.nix
@@ -0,0 +1,54 @@
+{ stdenv
+, fetchFromGitHub
+, autoreconfHook
+, pkgconfig
+, rofi-unwrapped
+, libqalculate
+, glib
+, cairo
+, gobject-introspection
+, wrapGAppsHook
+}:
+
+stdenv.mkDerivation rec {
+  pname = "rofi-calc";
+  version = "1.6";
+
+  src = fetchFromGitHub {
+    owner = "svenstaro";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "00pz0s99pihjdjy8pl4ckg2qciyp32k439lmjb5iazwck512ar92";
+  };
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkgconfig
+    gobject-introspection
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    rofi-unwrapped
+    libqalculate
+    glib
+    cairo
+  ];
+
+  patches = [
+    ./0001-Patch-plugindir-to-output.patch
+  ];
+
+  postPatch = ''
+    sed "s|qalc_binary = \"qalc\"|qalc_binary = \"${libqalculate}/bin/qalc\"|" -i src/calc.c
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Do live calculations in rofi!";
+    homepage = "https://github.com/svenstaro/rofi-calc";
+    license = licenses.mit;
+    maintainers = with maintainers; [ luc65r albakham ];
+    platforms = [ "x86_64-linux" "x86_64-darwin" ];
+  };
+}
+
diff --git a/pkgs/applications/science/misc/rink/default.nix b/pkgs/applications/science/misc/rink/default.nix
index 1bb74ec17a3..839fc8f9546 100644
--- a/pkgs/applications/science/misc/rink/default.nix
+++ b/pkgs/applications/science/misc/rink/default.nix
@@ -16,8 +16,8 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "0shlh0m9k0iqxpv9zmiw7a6v197swrvpz9x6qzhximzkdwni9gz9";
 
-  buildInputs = [ pkgconfig ];
-  propagatedBuildInputs = [ openssl gmp ncurses ];
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ openssl gmp ncurses ];
 
   # Some tests fail and/or attempt to use internet servers.
   doCheck = false;
diff --git a/pkgs/applications/science/misc/snakemake/default.nix b/pkgs/applications/science/misc/snakemake/default.nix
index 27bf47e890a..34bdaf6bacf 100644
--- a/pkgs/applications/science/misc/snakemake/default.nix
+++ b/pkgs/applications/science/misc/snakemake/default.nix
@@ -2,7 +2,7 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "snakemake";
-  version = "5.10.0";
+  version = "5.13.0";
 
   propagatedBuildInputs = with python3Packages; [
     appdirs
@@ -22,13 +22,13 @@ python3Packages.buildPythonApplication rec {
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "0n8d5c8sc90kfdw740ad9ffbkg1ic3k1pmlnk68qr4w4vc98pym3";
+    sha256 = "11snr7sgv70d3y63s5svijfx8f4xpggh96g8chr6lccl4mi1s9x9";
   };
 
   doCheck = false; # Tests depend on Google Cloud credentials at ${HOME}/gcloud-service-key.json
 
   meta = with stdenv.lib; {
-    homepage = http://snakemake.bitbucket.io;
+    homepage = "http://snakemake.bitbucket.io";
     license = licenses.mit;
     description = "Python-based execution environment for make-like workflows";
     longDescription = ''
diff --git a/pkgs/applications/system/glances/default.nix b/pkgs/applications/system/glances/default.nix
index a7dffd0bfab..3dfec185b57 100644
--- a/pkgs/applications/system/glances/default.nix
+++ b/pkgs/applications/system/glances/default.nix
@@ -8,14 +8,14 @@
 
 buildPythonApplication rec {
   pname = "glances";
-  version = "3.1.4";
+  version = "3.1.4.1";
   disabled = isPyPy;
 
   src = fetchFromGitHub {
     owner = "nicolargo";
     repo = "glances";
     rev = "v${version}";
-    sha256 = "1lr186rc3fvldy2m2yx1hxzdlxll93pjabs01sxz48kkpsvbiydi";
+    sha256 = "04dc3pwj9qbbhxpihf13ckdgwz0qc771c7v7awni4vyzk3a9cdfb";
   };
 
   # Some tests fail in the sandbox (they e.g. require access to /sys/class/power_supply):
diff --git a/pkgs/applications/version-management/gerrit/default.nix b/pkgs/applications/version-management/gerrit/default.nix
index be84b7abc82..4382a638893 100644
--- a/pkgs/applications/version-management/gerrit/default.nix
+++ b/pkgs/applications/version-management/gerrit/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gerrit";
-  version = "3.1.2";
+  version = "3.1.4";
 
   src = fetchurl {
     url = "https://gerrit-releases.storage.googleapis.com/gerrit-${version}.war";
-    sha256 = "01hak4gqaqn40a0qvmg8a89ai3ndnjls5v64m8awig8j1yysz5vl";
+    sha256 = "1pi4252hsx1zcmarzzimds1pw34x3fwi96nh9xvxqvv2cjjlr2c1";
   };
 
   buildCommand = ''
@@ -14,6 +14,24 @@ stdenv.mkDerivation rec {
     ln -s ${src} "$out"/webapps/gerrit-${version}.war
   '';
 
+  passthru = {
+    # A list of plugins that are part of the gerrit.war file.
+    # Use `java -jar gerrit.war ls | grep plugins/` to generate that list.
+    plugins = [
+      "codemirror-editor"
+      "commit-message-length-validator"
+      "delete-project"
+      "download-commands"
+      "gitiles"
+      "hooks"
+      "plugin-manager"
+      "replication"
+      "reviewnotes"
+      "singleusergroup"
+      "webhooks"
+    ];
+  };
+
   meta = with stdenv.lib; {
     homepage = "https://www.gerritcodereview.com/index.md";
     license = licenses.asl20;
diff --git a/pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/Gemfile.lock b/pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/Gemfile.lock
index 61159eb3ee9..27a6e2c8dd0 100644
--- a/pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/Gemfile.lock
+++ b/pkgs/applications/version-management/git-and-tools/bitbucket-server-cli/Gemfile.lock
@@ -24,4 +24,4 @@ DEPENDENCIES
   atlassian-stash
 
 BUNDLED WITH
-   1.13.6
+   2.1.4
diff --git a/pkgs/applications/version-management/git-and-tools/default.nix b/pkgs/applications/version-management/git-and-tools/default.nix
index c4a99cf1858..8f46d9550f8 100644
--- a/pkgs/applications/version-management/git-and-tools/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/default.nix
@@ -30,13 +30,9 @@ let
 
   diff-so-fancy = callPackage ./diff-so-fancy { };
 
-  gh = callPackage ./gh {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  gh = callPackage ./gh { };
 
-  ghq = callPackage ./ghq {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  ghq = callPackage ./ghq { };
 
   git = appendToName "minimal" gitBase;
 
@@ -67,13 +63,13 @@ let
 
   git-appraise = callPackage ./git-appraise {};
 
-  git-bug = callPackage ./git-bug {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  git-bug = callPackage ./git-bug { };
 
   # support for bugzilla
   git-bz = callPackage ./git-bz { };
 
+  git-cinnabar = callPackage ./git-cinnabar { };
+
   git-codeowners = callPackage ./git-codeowners { };
 
   git-codereview = callPackage ./git-codereview { };
@@ -140,9 +136,7 @@ let
 
   git-subrepo = callPackage ./git-subrepo { };
 
-  git-subtrac = callPackage ./git-subtrac {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  git-subtrac = callPackage ./git-subtrac { };
 
   git-sync = callPackage ./git-sync { };
 
@@ -183,13 +177,11 @@ let
     inherit (darwin) Security;
   };
 
-  lab = callPackage ./lab {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  lab = callPackage ./lab { };
 
-  lefthook = callPackage ./lefthook {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  lefthook = callPackage ./lefthook { };
+
+  legit = callPackage ./legit { };
 
   pass-git-helper = python3Packages.callPackage ./pass-git-helper { };
 
@@ -197,6 +189,8 @@ let
 
   qgit = qt5.callPackage ./qgit { };
 
+  scmpuff = callPackage ./scmpuff { };
+
   stgit = callPackage ./stgit { };
 
   subgit = callPackage ./subgit { };
diff --git a/pkgs/applications/version-management/git-and-tools/gh/default.nix b/pkgs/applications/version-management/git-and-tools/gh/default.nix
index e655813d340..acd09f0d0c0 100644
--- a/pkgs/applications/version-management/git-and-tools/gh/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gh/default.nix
@@ -1,17 +1,17 @@
-{ stdenv, fetchFromGitHub, buildGoModule, installShellFiles, Security }:
+{ lib, fetchFromGitHub, buildGoModule, installShellFiles }:
 
 buildGoModule rec {
   pname = "gh";
-  version = "0.6.2";
+  version = "0.6.4";
 
   src = fetchFromGitHub {
     owner = "cli";
     repo = "cli";
     rev = "v${version}";
-    sha256 = "10vylfsc8lldmr1l6r882sx87pgxl687k419c19faq90vd403i14";
+    sha256 = "0na8zfvcmdy968i47x6qd1jwfaphy5h18ff7ym5sxyia9a27yhf8";
   };
 
-  modSha256 = "03m193ny5z77yy586cwh099ypi1lmhb5vdj7d4kphxycnvpndr66";
+  modSha256 = "102v30wr9wmd6n20qdvgs5mp2s639pwbqqd71r8q52f42p694bi1";
 
   buildFlagsArray = [
     "-ldflags=-X github.com/cli/cli/command.Version=${version}"
@@ -20,7 +20,6 @@ buildGoModule rec {
   subPackages = [ "cmd/gh" ];
 
   nativeBuildInputs = [ installShellFiles ];
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
   postInstall = ''
     for shell in bash fish zsh; do
       $out/bin/gh completion -s $shell > gh.$shell
@@ -28,7 +27,7 @@ buildGoModule rec {
     done
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "GitHub CLI tool";
     homepage = "https://cli.github.com/";
     license = licenses.mit;
diff --git a/pkgs/applications/version-management/git-and-tools/ghq/default.nix b/pkgs/applications/version-management/git-and-tools/ghq/default.nix
index 34829c14b7b..d0c468ab68e 100644
--- a/pkgs/applications/version-management/git-and-tools/ghq/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/ghq/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "ghq";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "0hlbhky3c6zva9khn73n6xgq57k5p8anskxy3g2m0wzhr72cyc41";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = ''
     -ldflags=
       -X=main.Version=${version}
diff --git a/pkgs/applications/version-management/git-and-tools/git-bug/default.nix b/pkgs/applications/version-management/git-and-tools/git-bug/default.nix
index fdb5a6c53fd..ed0c8680d75 100644
--- a/pkgs/applications/version-management/git-and-tools/git-bug/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-bug/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "git-bug";
@@ -15,8 +15,6 @@ buildGoModule rec {
 
   modSha256 = "1cfn49cijiarzzczrpd28x1k7ib98xyzlvn3zghwk2ngfgiah3ld";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = ''
     -ldflags= 
       -X ${goPackagePath}/commands.GitCommit=${rev}
diff --git a/pkgs/applications/version-management/git-and-tools/git-cinnabar/default.nix b/pkgs/applications/version-management/git-and-tools/git-cinnabar/default.nix
new file mode 100644
index 00000000000..679e8dbdf50
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-cinnabar/default.nix
@@ -0,0 +1,50 @@
+{ stdenv, lib, fetchFromGitHub, autoconf, makeWrapper
+, curl, libiconv, mercurial, zlib
+}:
+
+let
+  python3 = mercurial.python;
+in
+
+stdenv.mkDerivation rec {
+  pname = "git-cinnabar";
+  version = "0.5.4";
+
+  src = fetchFromGitHub {
+    owner = "glandium";
+    repo = "git-cinnabar";
+    rev = version;
+    sha256 = "1cjn2cc6mj4m736wxab9s6qx83p5n5ha8cr3x84s9ra6rxs8d7pi";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [ autoconf makeWrapper ];
+  buildInputs = [ curl zlib ] ++ lib.optional stdenv.isDarwin libiconv;
+
+  # Ignore submodule status failing due to no git in environment.
+  makeFlags = [ "SUBMODULE_STATUS=yes" ];
+
+  enableParallelBuilding = true;
+
+  installPhase = ''
+    mkdir -p $out/bin $out/libexec
+    install git-cinnabar-helper $out/bin
+    install git-cinnabar git-remote-hg $out/libexec
+    cp -r cinnabar mercurial $out/libexec
+
+    for pythonBin in git-cinnabar git-remote-hg; do
+        makeWrapper $out/libexec/$pythonBin $out/bin/$pythonBin \
+            --prefix PATH : ${lib.getBin python3}/bin \
+            --prefix GIT_CINNABAR_EXPERIMENTS , python3 \
+            --set PYTHONPATH ${mercurial}/${python3.sitePackages}
+    done
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/glandium/git-cinnabar";
+    description = "git remote helper to interact with mercurial repositories";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ qyliss ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-fame/Gemfile.lock b/pkgs/applications/version-management/git-and-tools/git-fame/Gemfile.lock
index 0ac7907fe55..12c58d72103 100644
--- a/pkgs/applications/version-management/git-and-tools/git-fame/Gemfile.lock
+++ b/pkgs/applications/version-management/git-and-tools/git-fame/Gemfile.lock
@@ -23,4 +23,4 @@ DEPENDENCIES
   git_fame
 
 BUNDLED WITH
-   1.14.6
+   2.1.4
diff --git a/pkgs/applications/version-management/git-and-tools/git-filter-repo/default.nix b/pkgs/applications/version-management/git-and-tools/git-filter-repo/default.nix
index af21296cffa..0439669f9da 100644
--- a/pkgs/applications/version-management/git-and-tools/git-filter-repo/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-filter-repo/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "git-filter-repo";
-  version = "2.25.0";
+  version = "2.26.0";
 
   src = fetchurl {
     url = "https://github.com/newren/git-filter-repo/releases/download/v${version}/${pname}-${version}.tar.xz";
-    sha256 = "1772if8ajaw80dsdw4ic6vjw24dq0b9w87qlkn0iw4b8r9yxp37a";
+    sha256 = "15d07i66b090bhjfj9s4s2s38k75mhxmddzyn44bnnyb967w6yjk";
   };
 
   buildInputs = [ pythonPackages.python ];
diff --git a/pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix b/pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix
index 9ccf3c606a2..07c63ea0119 100644
--- a/pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-subtrac/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "git-subtrac";
@@ -13,9 +13,7 @@ buildGoModule rec {
 
   modSha256 = "147vzllp1gydk2156hif313vwykagrj35vaiqy1swqczxs7p9hhs";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Keep the content for your git submodules all in one place: the parent repo";
     homepage = "https://github.com/apenwarr/git-subtrac";
     license = licenses.asl20;
diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix
index 5ccd5c9c59e..02df27e745f 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -95,7 +95,15 @@ stdenv.mkDerivation {
   ++ stdenv.lib.optionals stdenv.isSunOS ["INSTALL=install" "NO_INET_NTOP=" "NO_INET_PTON="]
   ++ (if stdenv.isDarwin then ["NO_APPLE_COMMON_CRYPTO=1"] else ["sysconfdir=/etc"])
   ++ stdenv.lib.optionals stdenv.hostPlatform.isMusl ["NO_SYS_POLL_H=1" "NO_GETTEXT=YesPlease"]
-  ++ stdenv.lib.optional withpcre2 "USE_LIBPCRE2=1";
+  ++ stdenv.lib.optional withpcre2 "USE_LIBPCRE2=1"
+  # git-gui refuses to start with the version of tk distributed with
+  # macOS Catalina. We can prevent git from building the .app bundle
+  # by specifying an invalid tk framework. The postInstall step will
+  # then ensure that git-gui uses tcl/tk from nixpkgs, which is an
+  # acceptable version.
+  #
+  # See https://github.com/Homebrew/homebrew-core/commit/dfa3ccf1e7d3901e371b5140b935839ba9d8b706
+  ++ stdenv.lib.optional stdenv.isDarwin "TKFRAMEWORK=/nonexistent";
 
 
   postBuild = ''
@@ -232,7 +240,6 @@ stdenv.mkDerivation {
        for prog in bin/gitk libexec/git-core/{git-gui,git-citool,git-gui--askpass}; do
          sed -i -e "s|exec 'wish'|exec '${tk}/bin/wish'|g" \
                 -e "s|exec wish|exec '${tk}/bin/wish'|g" \
-                -e "s|exec \"[^\"]*/MacOS/Wish\"|exec '${tk}/bin/wish'|g" \
                 "$out/$prog"
        done
        ln -s $out/share/git/contrib/completion/git-completion.bash $out/share/bash-completion/completions/gitk
diff --git a/pkgs/applications/version-management/git-and-tools/gita/default.nix b/pkgs/applications/version-management/git-and-tools/gita/default.nix
index 22bd0e66c15..c9d188e10e5 100644
--- a/pkgs/applications/version-management/git-and-tools/gita/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/gita/default.nix
@@ -6,12 +6,12 @@
 }:
 
 buildPythonApplication rec {
-  version = "0.9.9";
+  version = "0.10.5";
   pname = "gita";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1si2f9nyisbrvv8cvrjxj8r4cbrgc97ic0wdlbf34gvp020dsmgv";
+    sha256 = "1xggslmrrfszpl190klkc97fnl88gml1bnkmkzp6aimdch66g4jg";
   };
 
   propagatedBuildInputs = [
@@ -21,7 +21,7 @@ buildPythonApplication rec {
 
   meta = with lib; {
     description = "A command-line tool to manage multiple git repos";
-    homepage = https://github.com/nosarthur/gita;
+    homepage = "https://github.com/nosarthur/gita";
     license = licenses.mit;
     maintainers = with maintainers; [ seqizz ];
   };
diff --git a/pkgs/applications/version-management/git-and-tools/grv/default.nix b/pkgs/applications/version-management/git-and-tools/grv/default.nix
index e6b746233fe..c1839b591a7 100644
--- a/pkgs/applications/version-management/git-and-tools/grv/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/grv/default.nix
@@ -1,13 +1,14 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, curl, libgit2, ncurses, pkgconfig, readline }:
+{ stdenv, buildGoPackage, fetchFromGitHub, curl, ncurses, pkgconfig, readline
+, cmake }:
 let
-  version = "0.3.1";
+  version = "0.3.2";
 in
 buildGoPackage {
   pname = "grv";
   inherit version;
 
-  buildInputs = [ ncurses readline curl libgit2 ];
-  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ ncurses readline curl ];
+  nativeBuildInputs = [ pkgconfig cmake ];
 
   goPackagePath = "github.com/rgburke/grv";
 
@@ -15,7 +16,7 @@ buildGoPackage {
     owner = "rgburke";
     repo = "grv";
     rev = "v${version}";
-    sha256 = "16ylapsibqrqwx45l4ypr3av07rd1haf10v838mjqsakf8l1xc0b";
+    sha256 = "0bpjsk35rlp56z8149z890adnhmxyh743vsls3q86j4682b83kyf";
     fetchSubmodules = true;
   };
 
@@ -23,7 +24,21 @@ buildGoPackage {
     rm util/update_latest_release.go
   '';
 
-  buildFlagsArray = [ "-ldflags=" "-X main.version=${version}" ];
+  postConfigure = ''
+    cd $NIX_BUILD_TOP/go/src/$goPackagePath
+  '';
+
+  buildPhase = ''
+    runHook preBuild
+    make build-only
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    install -D grv $bin/bin/grv
+    runHook postInstall
+  '';
 
   meta = with stdenv.lib; {
     description = "GRV is a terminal interface for viewing Git repositories";
diff --git a/pkgs/applications/version-management/git-and-tools/lab/default.nix b/pkgs/applications/version-management/git-and-tools/lab/default.nix
index 8780ce4a220..3e47631caf6 100644
--- a/pkgs/applications/version-management/git-and-tools/lab/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/lab/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "lab";
@@ -15,8 +15,6 @@ buildGoModule rec {
 
   modSha256 = "03fqa7s6729g0a6ffiyc61dkldpi7vg8pvvpqak4c0mqi1dycivd";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
   postInstall = ''
diff --git a/pkgs/applications/version-management/git-and-tools/lefthook/default.nix b/pkgs/applications/version-management/git-and-tools/lefthook/default.nix
index c80cff15265..9fc89d520ae 100644
--- a/pkgs/applications/version-management/git-and-tools/lefthook/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/lefthook/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "lefthook";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "0ih11gw2y9dhv3zw1fzjmdfjln5h6zg1bj7sl68cglf6743siqnq";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "Fast and powerful Git hooks manager for any type of projects";
     homepage = "https://github.com/Arkweid/lefthook";
diff --git a/pkgs/applications/version-management/git-and-tools/legit/default.nix b/pkgs/applications/version-management/git-and-tools/legit/default.nix
new file mode 100644
index 00000000000..7dbdd6071a5
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/legit/default.nix
@@ -0,0 +1,30 @@
+{ lib, python3Packages }:
+
+python3Packages.buildPythonApplication rec {
+  pname = "legit";
+  version = "1.2.0";
+  src = python3Packages.fetchPypi {
+    inherit pname version;
+    sha256 = "0ngh3ar6v15516f52j21k6qz7hykmxfjadhb2rakvl27b5xvjy1c";
+  };
+
+  propagatedBuildInputs = with python3Packages; [
+    click
+    clint
+    crayons
+    GitPython
+    six
+  ];
+
+  # Prevent tests from trying to create configuration in /homeless-shelter.
+  preCheck = ''
+    export HOME=$PWD/test-home
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/frostming/legit";
+    description = "Git for Humans, Inspired by GitHub for Mac";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ ryneeverett ];
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/scmpuff/default.nix b/pkgs/applications/version-management/git-and-tools/scmpuff/default.nix
new file mode 100644
index 00000000000..de8cb396b7f
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/scmpuff/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  pname = "scmpuff";
+  version = "0.3.0";
+  goPackagePath = "github.com/mroth/scmpuff";
+
+  goDeps = ./deps.nix;
+
+  src = fetchFromGitHub {
+    owner = "mroth";
+    repo = pname;
+    rev = "56dc2041f2c45ab15d41e63058c1c44fff905e81";
+    sha256 = "0zrzzcs0i13pfwcqh8qb0sji54vh37rdr7qasg57y56cqpx16vl3";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Add numbered shortcuts to common git commands";
+    homepage = "https://github.com/mroth/scmpuff";
+    license = licenses.mit;
+    maintainers = with maintainers; [ cpcloud ];
+    platforms = concatLists (with platforms; [ linux darwin windows ]);
+  };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/scmpuff/deps.nix b/pkgs/applications/version-management/git-and-tools/scmpuff/deps.nix
new file mode 100644
index 00000000000..da9052f9bb7
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/scmpuff/deps.nix
@@ -0,0 +1,273 @@
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
+[
+  {
+    goPackagePath = "github.com/BurntSushi/toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/BurntSushi/toml";
+      rev = "v0.3.1";
+      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
+    };
+  }
+  {
+    goPackagePath = "github.com/armon/consul-api";
+    fetch = {
+      type = "git";
+      url = "https://github.com/armon/consul-api";
+      rev = "eb2c6b5be1b6";
+      sha256 = "1j6fdr1sg36qy4n4xjl7brq739fpm5npq98cmvklzjc9qrx98nk9";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/etcd";
+      rev = "v3.3.10";
+      sha256 = "1x2ii1hj8jraba8rbxz6dmc03y3sjxdnzipdvg6fywnlq1f3l3wl";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-etcd";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-etcd";
+      rev = "v2.0.0";
+      sha256 = "1xb34hzaa1lkbq5vkzy9vcz6gqwj7hp6cdbvyack2bf28dwn33jj";
+    };
+  }
+  {
+    goPackagePath = "github.com/coreos/go-semver";
+    fetch = {
+      type = "git";
+      url = "https://github.com/coreos/go-semver";
+      rev = "v0.2.0";
+      sha256 = "1gghi5bnqj50hfxhqc1cxmynqmh2yk9ii7ab9gsm75y5cp94ymk0";
+    };
+  }
+  {
+    goPackagePath = "github.com/cpuguy83/go-md2man";
+    fetch = {
+      type = "git";
+      url = "https://github.com/cpuguy83/go-md2man";
+      rev = "v1.0.10";
+      sha256 = "1bqkf2bvy1dns9zd24k81mh2p1zxsx2nhq5cj8dz2vgkv1xkh60i";
+    };
+  }
+  {
+    goPackagePath = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath = "github.com/fsnotify/fsnotify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/fsnotify/fsnotify";
+      rev = "v1.4.7";
+      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
+    };
+  }
+  {
+    goPackagePath = "github.com/hashicorp/hcl";
+    fetch = {
+      type = "git";
+      url = "https://github.com/hashicorp/hcl";
+      rev = "v1.0.0";
+      sha256 = "0q6ml0qqs0yil76mpn4mdx4lp94id8vbv575qm60jzl1ijcl5i66";
+    };
+  }
+  {
+    goPackagePath = "github.com/inconshreveable/mousetrap";
+    fetch = {
+      type = "git";
+      url = "https://github.com/inconshreveable/mousetrap";
+      rev = "v1.0.0";
+      sha256 = "1mn0kg48xkd74brf48qf5hzp0bc6g8cf5a77w895rl3qnlpfw152";
+    };
+  }
+  {
+    goPackagePath = "github.com/magiconair/properties";
+    fetch = {
+      type = "git";
+      url = "https://github.com/magiconair/properties";
+      rev = "v1.8.0";
+      sha256 = "1a10362wv8a8qwb818wygn2z48lgzch940hvpv81hv8gc747ajxn";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/go-homedir";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/go-homedir";
+      rev = "v1.1.0";
+      sha256 = "0ydzkipf28hwj2bfxqmwlww47khyk6d152xax4bnyh60f4lq3nx1";
+    };
+  }
+  {
+    goPackagePath = "github.com/mitchellh/mapstructure";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mitchellh/mapstructure";
+      rev = "v1.1.2";
+      sha256 = "03bpv28jz9zhn4947saqwi328ydj7f6g6pf1m2d4m5zdh5jlfkrr";
+    };
+  }
+  {
+    goPackagePath = "github.com/pelletier/go-toml";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pelletier/go-toml";
+      rev = "v1.2.0";
+      sha256 = "1fjzpcjng60mc3a4b2ql5a00d5gah84wj740dabv9kq67mpg8fxy";
+    };
+  }
+  {
+    goPackagePath = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev = "v1.0.0";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath = "github.com/russross/blackfriday";
+    fetch = {
+      type = "git";
+      url = "https://github.com/russross/blackfriday";
+      rev = "v1.5.2";
+      sha256 = "0jzbfzcywqcrnym4gxlz6nphmm1grg6wsl4f0r9x384rn83wkj7c";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/afero";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/afero";
+      rev = "v1.1.2";
+      sha256 = "0miv4faf5ihjfifb1zv6aia6f6ik7h1s4954kcb8n6ixzhx9ck6k";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/cast";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cast";
+      rev = "v1.3.0";
+      sha256 = "0xq1ffqj8y8h7dcnm0m9lfrh0ga7pssnn2c1dnr09chqbpn4bdc5";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/cobra";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/cobra";
+      rev = "v0.0.4";
+      sha256 = "1k7dq78fjz94lzifsprkmiv93swwzwcbg1vd64v20wvnga8v254b";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/jwalterweatherman";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/jwalterweatherman";
+      rev = "v1.0.0";
+      sha256 = "093fmmvavv84pv4q84hav7ph3fmrq87bvspjj899q0qsx37yvdr8";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/pflag";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/pflag";
+      rev = "v1.0.3";
+      sha256 = "1cj3cjm7d3zk0mf1xdybh0jywkbbw7a6yr3y22x9sis31scprswd";
+    };
+  }
+  {
+    goPackagePath = "github.com/spf13/viper";
+    fetch = {
+      type = "git";
+      url = "https://github.com/spf13/viper";
+      rev = "v1.3.2";
+      sha256 = "1829hvf805kda65l59r17wvid7y0vr390s23zfhf4w7vdb4wp3zh";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "v1.2.2";
+      sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs";
+    };
+  }
+  {
+    goPackagePath = "github.com/ugorji/go";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ugorji/go";
+      rev = "d75b2dcb6bc8";
+      sha256 = "0di1k35gpq9bp958ywranpbskx2vdwlb38s22vl9rybm3wa5g3ps";
+    };
+  }
+  {
+    goPackagePath = "github.com/xordataexchange/crypt";
+    fetch = {
+      type = "git";
+      url = "https://github.com/xordataexchange/crypt";
+      rev = "b2862e3d0a77";
+      sha256 = "04q3856anpzl4gdfgmg7pbp9cx231nkz3ymq2xp27rnmmwhfxr8y";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/crypto";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/crypto";
+      rev = "505ab145d0a9";
+      sha256 = "1vbsvcvmjz6c00p5vf8ls533p52fx2y3gy6v4k5qrdlzl4wf0i5s";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/sys";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/sys";
+      rev = "a5c9d58dba9a";
+      sha256 = "02qv5i7yps35p7fa81345qz7k8i73gkigj69anwmpw9rhpmzayf9";
+    };
+  }
+  {
+    goPackagePath = "golang.org/x/text";
+    fetch = {
+      type = "git";
+      url = "https://go.googlesource.com/text";
+      rev = "v0.3.0";
+      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/check.v1";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/check.v1";
+      rev = "20d25e280405";
+      sha256 = "0k1m83ji9l1a7ng8a7v40psbymxasmssbrrhpdv2wl4rhs0nc3np";
+    };
+  }
+  {
+    goPackagePath = "gopkg.in/yaml.v2";
+    fetch = {
+      type = "git";
+      url = "https://gopkg.in/yaml.v2";
+      rev = "v2.2.2";
+      sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
+    };
+  }
+]
diff --git a/pkgs/applications/version-management/git-and-tools/tig/default.nix b/pkgs/applications/version-management/git-and-tools/tig/default.nix
index 424694d7262..25754ef4de9 100644
--- a/pkgs/applications/version-management/git-and-tools/tig/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/tig/default.nix
@@ -1,16 +1,16 @@
-{ stdenv, fetchFromGitHub, ncurses, asciidoc, xmlto, docbook_xsl, docbook_xml_dtd_45, fetchpatch
+{ stdenv, fetchFromGitHub, ncurses, asciidoc, xmlto, docbook_xsl, docbook_xml_dtd_45
 , readline, makeWrapper, git, libiconv, autoreconfHook, findXMLCatalogs, pkgconfig
 }:
 
 stdenv.mkDerivation rec {
   pname = "tig";
-  version = "2.5.0";
+  version = "2.5.1";
 
   src = fetchFromGitHub {
     owner = "jonas";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "1lrzgnq8ywq28qd4xyd0y5qfv3j25ra81lcbdqqfywasl8lwz3lf";
+    sha256 = "0wxcbfqsk8p84zizy6lf3gp5j122wrf8c7xlipki6nhcfhksn33b";
   };
 
   nativeBuildInputs = [ makeWrapper autoreconfHook asciidoc xmlto docbook_xsl docbook_xml_dtd_45 findXMLCatalogs pkgconfig ];
@@ -25,14 +25,6 @@ stdenv.mkDerivation rec {
       rm -f contrib/config.make-*
   '';
 
-  patches = [
-    # Fix memory leak. Remove with the next release
-    (fetchpatch {
-      url = "https://github.com/jonas/tig/commit/6202c6032f17438a2facb23f02e330b9d0566d9d.patch";
-      sha256 = "15zn8hw9y7bqa1np4mj0qnm2z86nif7qwh7wc4vgy2rwxdil85bd";
-    })
-  ];
-
   enableParallelBuilding = true;
 
   installPhase = ''
diff --git a/pkgs/applications/version-management/git-lfs/default.nix b/pkgs/applications/version-management/git-lfs/default.nix
index f2d87fd69dd..eca841350de 100644
--- a/pkgs/applications/version-management/git-lfs/default.nix
+++ b/pkgs/applications/version-management/git-lfs/default.nix
@@ -1,28 +1,23 @@
-{ stdenv, buildGoPackage, fetchFromGitHub }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "git-lfs";
-  version = "2.8.0";
+  version = "2.10.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "git-lfs";
     repo = "git-lfs";
-    sha256 = "17x9q4g1acf51bxr9lfmd2ym7w740n4ghdi0ncmma77kwabw9d3x";
+    sha256 = "1y5ryk0iz5g5sqaw79ml6fr5kvjgzcah481pk5qmnb2ipb1xlng9";
   };
 
-  goPackagePath = "github.com/git-lfs/git-lfs";
+  modSha256 = "1rvvgyg4gqbli4pwfnmyz59gf14k7925mdqj6ykp542gwnsjgjp2";
 
   subPackages = [ "." ];
 
-  preBuild = ''
-    cd go/src/${goPackagePath}
-    go generate ./commands
-  '';
-
   meta = with stdenv.lib; {
     description = "Git extension for versioning large files";
-    homepage    = https://git-lfs.github.com/;
+    homepage    = "https://git-lfs.github.com/";
     license     = [ licenses.mit ];
     maintainers = [ maintainers.twey ];
   };
diff --git a/pkgs/applications/version-management/git-repo/default.nix b/pkgs/applications/version-management/git-repo/default.nix
index 543ca58401a..93fb65d1031 100644
--- a/pkgs/applications/version-management/git-repo/default.nix
+++ b/pkgs/applications/version-management/git-repo/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "git-repo";
-  version = "2.4.1";
+  version = "2.5";
 
   src = fetchFromGitHub {
     owner = "android";
     repo = "tools_repo";
     rev = "v${version}";
-    sha256 = "0khg1731927gvin73dcbw1657kbfq4k7agla5rpzqcnwkk5agzg3";
+    sha256 = "0y37s0v37gygv0dm8y9sjc4jr7ml8irix5rwmbk6smzwa74n0x8a";
   };
 
   patches = [ ./import-ssl-module.patch ];
diff --git a/pkgs/applications/version-management/gitea/default.nix b/pkgs/applications/version-management/gitea/default.nix
index 164392ef4ce..570fb2ce56f 100644
--- a/pkgs/applications/version-management/gitea/default.nix
+++ b/pkgs/applications/version-management/gitea/default.nix
@@ -8,11 +8,11 @@ with stdenv.lib;
 
 buildGoPackage rec {
   pname = "gitea";
-  version = "1.11.3";
+  version = "1.11.4";
 
   src = fetchurl {
     url = "https://github.com/go-gitea/gitea/releases/download/v${version}/gitea-src-${version}.tar.gz";
-    sha256 = "1v0i7cppdqb02d73qq0bxzz8yydn17jh0g83y3cq3k48awlk22sx";
+    sha256 = "18k6kcdq0ijpzgay2aq1w95qkgfvrn1dgh4cxyj9c4i0pwb3ar7f";
   };
 
   unpackPhase = ''
@@ -29,8 +29,9 @@ buildGoPackage rec {
     substituteInPlace modules/setting/setting.go --subst-var data
   '';
 
-  nativeBuildInputs = [ makeWrapper ]
-    ++ optional pamSupport pam;
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs = optional pamSupport pam;
 
   preBuild = let
     tags = optional pamSupport "pam"
diff --git a/pkgs/applications/version-management/gitlab/data.json b/pkgs/applications/version-management/gitlab/data.json
index ddad51dfb63..8da56229a02 100644
--- a/pkgs/applications/version-management/gitlab/data.json
+++ b/pkgs/applications/version-management/gitlab/data.json
@@ -1,13 +1,13 @@
 {
-  "version": "12.8.6",
-  "repo_hash": "0plcigppmg6ckmq8myj3m9adshdvqj7czx8fms71bsa9zx060wib",
+  "version": "12.8.8",
+  "repo_hash": "1y8flmssz8bp07v7x9gxazqn5889hvkxk0k6py773gdnna5fd5fb",
   "owner": "gitlab-org",
   "repo": "gitlab",
-  "rev": "v12.8.6-ee",
+  "rev": "v12.8.8-ee",
   "passthru": {
-    "GITALY_SERVER_VERSION": "12.8.6",
+    "GITALY_SERVER_VERSION": "12.8.8",
     "GITLAB_PAGES_VERSION": "1.16.0",
     "GITLAB_SHELL_VERSION": "11.0.0",
-    "GITLAB_WORKHORSE_VERSION": "8.21.0"
+    "GITLAB_WORKHORSE_VERSION": "8.21.1"
   }
 }
\ No newline at end of file
diff --git a/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
index e3f7865226a..b41c78f3a3d 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
@@ -242,4 +242,4 @@ DEPENDENCIES
   webmock (~> 3.4.0)
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/applications/version-management/gitlab/gitaly/default.nix b/pkgs/applications/version-management/gitlab/gitaly/default.nix
index 9b3e4da2024..aea38245c91 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/default.nix
@@ -28,14 +28,14 @@ let
     };
   });
 in buildGoPackage rec {
-  version = "12.8.6";
+  version = "12.8.8";
   pname = "gitaly";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitaly";
     rev = "v${version}";
-    sha256 = "1rf9qmyjllkwkyi7la1dzyjh0z9sw21zdzihd7v9ngwqssfk5zfk";
+    sha256 = "182jqglzbzq8jnlq6l634125jkvi67pfr1xck68n4k09gyzqllxv";
   };
 
   # Fix a check which assumes that hook files are writeable by their
diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
index 937c3576fc3..0197e8d89b3 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -3,13 +3,13 @@
 buildGoPackage rec {
   pname = "gitlab-workhorse";
 
-  version = "8.21.0";
+  version = "8.21.1";
 
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-workhorse";
     rev = "v${version}";
-    sha256 = "04vhshm9lwnx77q9l7znxwkvvwm3gxgxw12y1xwahfilj352xr7q";
+    sha256 = "1d384xw7hfrph4i61z9z315sik7ja9hgrvmhljirwxrch1fyx3m4";
   };
 
   goPackagePath = "gitlab.com/gitlab-org/gitlab-workhorse";
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
index aa33bd4cd68..a808e85e433 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
@@ -652,7 +652,7 @@ GEM
     netrc (0.11.0)
     nio4r (2.5.2)
     no_proxy_fix (0.1.2)
-    nokogiri (1.10.7)
+    nokogiri (1.10.8)
       mini_portile2 (~> 2.4.0)
     nokogumbo (1.5.0)
       nokogiri
@@ -1404,4 +1404,4 @@ DEPENDENCIES
   wikicloth (= 0.8.1)
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix b/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
index efba20ab082..f92b72361df 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
@@ -2927,10 +2927,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0r0qpgf80h764k176yr63gqbs2z0xbsp8vlvs2a79d5r9vs83kln";
+      sha256 = "1yi8j8hwrlc3rg5v3w52gxndmwifyk7m732q9yfbal0qajqbh1h8";
       type = "gem";
     };
-    version = "1.10.7";
+    version = "1.10.8";
   };
   nokogumbo = {
     dependencies = ["nokogiri"];
diff --git a/pkgs/applications/version-management/gogs/default.nix b/pkgs/applications/version-management/gogs/default.nix
index fedb000e42d..487026d8e3f 100644
--- a/pkgs/applications/version-management/gogs/default.nix
+++ b/pkgs/applications/version-management/gogs/default.nix
@@ -24,8 +24,9 @@ buildGoPackage rec {
     substituteInPlace pkg/setting/setting.go --subst-var data
   '';
 
-  nativeBuildInputs = [ makeWrapper ]
-    ++ optional pamSupport pam;
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs = optional pamSupport pam;
 
   buildFlags = [ "-tags" ];
 
diff --git a/pkgs/applications/version-management/monotone-viz/default.nix b/pkgs/applications/version-management/monotone-viz/default.nix
index c23feec6f43..03b98694eaf 100644
--- a/pkgs/applications/version-management/monotone-viz/default.nix
+++ b/pkgs/applications/version-management/monotone-viz/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocamlPackages, gnome2, pkgconfig, makeWrapper
+{ stdenv, fetchurl, ocamlPackages, gnome2, pkgconfig, makeWrapper, glib
 , libtool, libpng, yacc, expat, fontconfig, gd, pango, libjpeg, libwebp, xlibsWrapper, libXaw
 }:
 # We need an old version of Graphviz for format compatibility reasons.
@@ -7,7 +7,7 @@ let graphviz_2_0 = import ./graphviz-2.0.nix {
       inherit stdenv fetchurl pkgconfig xlibsWrapper libpng libjpeg expat libXaw
         yacc libtool fontconfig pango gd libwebp;
     }; in
-let inherit (gnome2) libgnomecanvas glib; in
+let inherit (gnome2) libgnomecanvas; in
 let inherit (ocamlPackages) ocaml lablgtk camlp4; in
 stdenv.mkDerivation rec {
   version = "1.0.2";
diff --git a/pkgs/applications/version-management/redmine/Gemfile.lock b/pkgs/applications/version-management/redmine/Gemfile.lock
index 806847a298e..66326b28235 100644
--- a/pkgs/applications/version-management/redmine/Gemfile.lock
+++ b/pkgs/applications/version-management/redmine/Gemfile.lock
@@ -225,4 +225,4 @@ DEPENDENCIES
   yard
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/applications/video/bombono/default.nix b/pkgs/applications/video/bombono/default.nix
index 1cba1d0e949..f9a82af2f79 100644
--- a/pkgs/applications/video/bombono/default.nix
+++ b/pkgs/applications/video/bombono/default.nix
@@ -17,7 +17,13 @@ stdenv.mkDerivation rec {
     sha256 = "1lz1vik6abn1i1pvxhm55c9g47nxxv755wb2ijszwswwrwgvq5b9";
   };
 
-  patches = map fetchPatchFromAur [
+  patches = [
+    (fetchpatch {
+      name = "bombono-dvd-1.2.4-scons3.patch";
+      url = "https://svnweb.mageia.org/packages/cauldron/bombono-dvd/current/SOURCES/bombono-dvd-1.2.4-scons-python3.patch?revision=1447925&view=co&pathrev=1484457";
+      sha256 = "081116d0if6s2r1rgqfr1n5gl3kpvzk01pf4v2k7gg2rnid83qp4";
+    })
+  ] ++ (map fetchPatchFromAur [
     {name="fix_ffmpeg_codecid.patch";         sha256="1asfc0lqzk4gjssrvjmsi1xr53ygnsx2sh7c8yzp5r3j2bagxhp7";}
     {name="fix_ptr2bool_cast.patch";          sha256="0iqzrmbg38ikh4x9cmx0v0rnm7a9lcq0kd8sh1z9yfmnz71qqahg";}
     {name="fix_c++11_literal_warnings.patch"; sha256="1zbf12i77p0j0090pz5lzg4a7kyahahzqssybv7vi0xikwvw57w9";}
@@ -26,7 +32,7 @@ stdenv.mkDerivation rec {
     {name="fix_throw_specifications.patch";   sha256="1f5gi3qwm843hsxvijq7sjy0s62xm7rnr1vdp7f242fi0ldq6c1n";}
     {name="fix_operator_ambiguity.patch";     sha256="0r4scsbsqfg6wgzsbfxxpckamvgyrida0n1ypg1klx24pk5dc7n7";}
     {name="fix_ffmpeg30.patch";               sha256="1irva7a9bpbzs60ga8ypa3la9y84i5rz20jnd721qmfqp2yip8dw";}
-  ];
+  ]);
 
   nativeBuildInputs = [ wrapGAppsHook scons pkgconfig gettext ];
 
diff --git a/pkgs/applications/video/celluloid/default.nix b/pkgs/applications/video/celluloid/default.nix
index 22fac11b018..208cbb7f4e6 100644
--- a/pkgs/applications/video/celluloid/default.nix
+++ b/pkgs/applications/video/celluloid/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "celluloid";
-  version = "0.18";
+  version = "0.19";
 
   src = fetchFromGitHub {
     owner = "celluloid-player";
     repo = "celluloid";
     rev = "v${version}";
-    sha256 = "1j8z75y98liirr41rlcn89cshvp1xp71cspcclm6wx455i7q2cg1";
+    sha256 = "1jdmwljckajqb3ys8azd1nyy49nvq9kb2knrrqdcfnvzq0m5lpqr";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/video/ffmpeg-normalize/default.nix b/pkgs/applications/video/ffmpeg-normalize/default.nix
index d992e42ebff..4fad80c27ab 100644
--- a/pkgs/applications/video/ffmpeg-normalize/default.nix
+++ b/pkgs/applications/video/ffmpeg-normalize/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonApplication rec {
   pname = "ffmpeg-normalize";
-  version = "1.15.7";
+  version = "1.15.8";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0161939f864e973b11d50170c657baf3e1433147f46c74a74ed5025a822e9a2d";
+    sha256 = "01lx1ki1iglg1dz6x99ciqx5zqlbj7hvfb12ga9m68ypjm0fcphl";
   };
 
   propagatedBuildInputs = [ ffmpeg tqdm ];
diff --git a/pkgs/applications/video/jellyfin-mpv-shim/default.nix b/pkgs/applications/video/jellyfin-mpv-shim/default.nix
index 7842c48a78a..de931074091 100644
--- a/pkgs/applications/video/jellyfin-mpv-shim/default.nix
+++ b/pkgs/applications/video/jellyfin-mpv-shim/default.nix
@@ -4,13 +4,13 @@
 
 buildPythonApplication rec {
   pname = "jellyfin-mpv-shim";
-  version = "1.4.1";
+  version = "1.4.2";
 
   src = fetchFromGitHub {
     owner = "iwalton3";
     repo = pname;
     rev = "v${version}";
-    sha256 = "195vplq4182pq62sn6ci0a8p57k6zv8pk1gmifmwdv69wzaph043";
+    sha256 = "1cnii5wj0pgqg3dqk5cm6slpbs3730x8ippps4cjbsxcsrmqjpx6";
     fetchSubmodules = true; # needed for display_mirror css file
   };
 
diff --git a/pkgs/applications/video/kodi/default.nix b/pkgs/applications/video/kodi/default.nix
index 875ef8d52dd..fcb6ed4860b 100644
--- a/pkgs/applications/video/kodi/default.nix
+++ b/pkgs/applications/video/kodi/default.nix
@@ -31,6 +31,7 @@
 , vdpauSupport ? true, libvdpau ? null
 , useWayland ? false, wayland ? null, wayland-protocols ? null
 , waylandpp ?  null, libxkbcommon ? null
+, useGbm ? false, mesa ? null, libinput ? null
 }:
 
 assert dbusSupport  -> dbus != null;
@@ -185,6 +186,11 @@ in stdenv.mkDerivation {
       wayland waylandpp
       # Not sure why ".dev" is needed here, but CMake doesn't find libxkbcommon otherwise
       libxkbcommon.dev
+    ]
+    ++ lib.optional useGbm [
+      libxkbcommon.dev
+      mesa.dev
+      libinput.dev
     ];
 
     nativeBuildInputs = [
@@ -207,6 +213,9 @@ in stdenv.mkDerivation {
     ] ++ lib.optional useWayland [
       "-DCORE_PLATFORM_NAME=wayland"
       "-DWAYLAND_RENDER_SYSTEM=gl"
+    ] ++ lib.optional useGbm [
+      "-DCORE_PLATFORM_NAME=gbm"
+      "-DGBM_RENDER_SYSTEM=gles"
     ];
 
     enableParallelBuilding = true;
diff --git a/pkgs/applications/video/kodi/plugins.nix b/pkgs/applications/video/kodi/plugins.nix
index 41e5a7c5c75..5dc02335672 100644
--- a/pkgs/applications/video/kodi/plugins.nix
+++ b/pkgs/applications/video/kodi/plugins.nix
@@ -1,6 +1,6 @@
 { stdenv, callPackage, fetchFromGitHub
 , cmake, kodiPlain, libcec_platform, tinyxml, rapidxml
-, steam, libusb, pcre-cpp, jsoncpp, libhdhomerun, zlib
+, steam, udev, libusb1, jsoncpp, libhdhomerun, zlib
 , python2Packages, expat, glib, nspr, nss, openssl
 , libssh, libarchive, lzma, bzip2, lz4, lzo }:
 
@@ -236,8 +236,7 @@ let self = rec {
       maintainers = with maintainers; [ edwtjo ];
     };
 
-    extraBuildInputs = [ libusb pcre-cpp ];
-
+    extraBuildInputs = [ udev ];
   };
 
   simpleplugin = mkKodiPlugin rec {
@@ -300,7 +299,7 @@ let self = rec {
       sha256 = "1hbd8fdvn7xkr9csz1g9wah78nhnq1rkazl4zwa31y70830k3279";
     };
 
-    extraBuildInputs = [ libusb ];
+    extraBuildInputs = [ libusb1 ];
 
     meta = {
       description = "Binary addon for steam controller.";
@@ -531,14 +530,14 @@ let self = rec {
 
   vfs-libarchive = mkKodiABIPlugin rec {
     namespace = "vfs.libarchive";
-    version = "1.0.5";
+    version = "1.0.6";
     plugin = namespace;
 
     src = fetchFromGitHub {
       owner = "xbmc";
       repo = namespace;
       rev = "${version}-${rel}";
-      sha256 = "0l1f1fijflr1ia30r0dcz1x2zn35c4lxy30az1cqxdf8nipza0b8";
+      sha256 = "1gz39i97n8xgbja8miqligmhxsvmqimlxx75xr9v0r9lfxp7135f";
     };
 
     meta = with stdenv.lib; {
diff --git a/pkgs/applications/video/makemkv/default.nix b/pkgs/applications/video/makemkv/default.nix
index ca202c5ce60..5423ffcb142 100644
--- a/pkgs/applications/video/makemkv/default.nix
+++ b/pkgs/applications/video/makemkv/default.nix
@@ -3,21 +3,21 @@
 }:
 
 let
-  version = "1.14.7";
+  version = "1.15.0";
   # Using two URLs as the first one will break as soon as a new version is released
   src_bin = fetchurl {
     urls = [
       "http://www.makemkv.com/download/makemkv-bin-${version}.tar.gz"
       "http://www.makemkv.com/download/old/makemkv-bin-${version}.tar.gz"
     ];
-    sha256 = "19j62vyk8havv38lh35108f7jmrqiqzikl3aqlsncxxa69m6fv5n";
+    sha256 = "1zr63fqx4qcrnrbg1f97w9mp3yzzxf0dk8pw60y2d4436vanfba4";
   };
   src_oss = fetchurl {
     urls = [
       "http://www.makemkv.com/download/makemkv-oss-${version}.tar.gz"
       "http://www.makemkv.com/download/old/makemkv-oss-${version}.tar.gz"
     ];
-    sha256 = "1w6b4cvhfg1dv2claam0l6slhjqzy0n2lvwk1ggkh4c561qbfp59";
+    sha256 = "01pdydll37inkq74874rqd5kk0maafnm1lqcv41jzgzjrfkky8d9";
   };
 in mkDerivation {
   pname = "makemkv";
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index c5eafe94c78..a1bdb3db98b 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -13,13 +13,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "mkvtoolnix";
-  version = "44.0.0";
+  version = "45.0.0";
 
   src = fetchFromGitLab {
     owner  = "mbunkus";
     repo   = "mkvtoolnix";
     rev    = "release-${version}";
-    sha256 = "072sw51svaizqi9f6kscic23wxcjarwgb7nv52yd5si5w8s0qh9r";
+    sha256 = "1m9ih6bgl3nrjgr0rxvfbvw8s9ska7ps1ypc2ynvyxba4gjkkyyf";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix
index f1713fe29d4..c24d25634a1 100644
--- a/pkgs/applications/video/mpv/default.nix
+++ b/pkgs/applications/video/mpv/default.nix
@@ -1,4 +1,4 @@
-{ config, stdenv, fetchurl, fetchFromGitHub, makeWrapper
+{ config, stdenv, fetchurl, fetchFromGitHub, makeWrapper, fetchpatch
 , addOpenGLRunpath, docutils, perl, pkgconfig, python3, wafHook, which
 , ffmpeg_4, freefont_ttf, freetype, libass, libpthreadstubs, mujs
 , nv-codec-headers, lua, libuchardet, libiconv ? null
@@ -191,6 +191,14 @@ in stdenv.mkDerivation rec {
       --prefix PYTHONPATH : "${vapoursynth}/lib/${python3.libPrefix}/site-packages:$PYTHONPATH"
   '';
 
+  patches = stdenv.lib.optionals stdenv.isDarwin [
+    # Fix cocoa backend. Remove with the next release
+    (fetchpatch {
+      url = "https://github.com/mpv-player/mpv/commit/188169854313b99d01da8f69fe129f0a487eb7c4.patch";
+      sha256 = "062sz4666prb2wg1rn5q8brqkzlq6lxn8sxic78a8lb0125c01f7";
+    })
+  ];
+
   postInstall = ''
     # Use a standard font
     mkdir -p $out/share/mpv
diff --git a/pkgs/applications/video/mpv/scripts/mpris.nix b/pkgs/applications/video/mpv/scripts/mpris.nix
index e383823f2cc..e318c7afa67 100644
--- a/pkgs/applications/video/mpv/scripts/mpris.nix
+++ b/pkgs/applications/video/mpv/scripts/mpris.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "mpv-mpris-${version}.so";
-  version = "0.3";
+  version = "0.4";
 
   src = fetchFromGitHub {
     owner = "hoyon";
     repo = "mpv-mpris";
     rev = version;
-    sha256 = "02lqsgp296s8wr0yh6wm8h7nhn53rj254zahpzbwdv15apgy0z17";
+    sha256 = "1fr3jvja8s2gdpx8qyk9r17977flms3qpm8zci62nd9r5wjdvr5i";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "MPRIS plugin for mpv";
-    homepage = https://github.com/hoyon/mpv-mpris;
+    homepage = "https://github.com/hoyon/mpv-mpris";
     license = licenses.mit;
     maintainers = with maintainers; [ jfrankenau ];
   };
diff --git a/pkgs/applications/video/obs-studio/default.nix b/pkgs/applications/video/obs-studio/default.nix
index 61d58d42d43..be2a323943d 100644
--- a/pkgs/applications/video/obs-studio/default.nix
+++ b/pkgs/applications/video/obs-studio/default.nix
@@ -37,13 +37,13 @@ let
   inherit (stdenv.lib) optional optionals;
 in mkDerivation rec {
   pname = "obs-studio";
-  version = "25.0.0";
+  version = "25.0.3";
 
   src = fetchFromGitHub {
     owner = "obsproject";
     repo = "obs-studio";
     rev = version;
-    sha256 = "1xbvj69zk1x2sv39wqjp5s929c61szn32d3d0ykhxr6jxb0sih4w";
+    sha256 = "11hl3lxvbsm7ackl7qhzgy2x0jsz2dfpi2qxsf8pkp908lrh3b3r";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
diff --git a/pkgs/applications/video/olive-editor/default.nix b/pkgs/applications/video/olive-editor/default.nix
index 1285422a2f9..55c6149e7d0 100644
--- a/pkgs/applications/video/olive-editor/default.nix
+++ b/pkgs/applications/video/olive-editor/default.nix
@@ -4,13 +4,13 @@
 
 mkDerivation rec {
   pname = "olive-editor";
-  version = "0.1.1";
+  version = "0.1.2";
 
   src = fetchFromGitHub {
     owner = "olive-editor";
     repo = "olive";
     rev = version;
-    sha256 = "15q4qwf5rc3adssywl72jrhkpqk55ihpd5h5wf07baw0s47vv5kq";
+    sha256 = "151g6jwhipgbq4llwib92sq23p1s9hm6avr7j4qq3bvykzrm8z1a";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/video/openshot-qt/default.nix b/pkgs/applications/video/openshot-qt/default.nix
index 1c5359e5f0c..e8a348b4328 100644
--- a/pkgs/applications/video/openshot-qt/default.nix
+++ b/pkgs/applications/video/openshot-qt/default.nix
@@ -2,26 +2,17 @@
 , doxygen, python3Packages, libopenshot
 , wrapGAppsHook, gtk3 }:
 
-let
-  fixPermissions = fetchpatch rec {
-    url = https://github.com/OpenShot/openshot-qt/pull/2973.patch;
-    sha256 = "037rh0p3k4sdzprlpyb73byjq3qhqk5zd0d4iin6bq602r8bbp0n";
-  };
-in
-
 mkDerivationWith python3Packages.buildPythonApplication rec {
   pname = "openshot-qt";
-  version = "2.4.4";
+  version = "2.5.1";
 
   src = fetchFromGitHub {
     owner = "OpenShot";
     repo = "openshot-qt";
     rev = "v${version}";
-    sha256 = "0mg63v36h7l8kv2sgf6x8c1n3ygddkqqwlciz7ccxpbm4x1idqba";
+    sha256 = "0qc5i0ay6j2wab1whl41sjb71cj02pg6y79drf7asrprq8b2rmfq";
   };
 
-  patches = [ fixPermissions ];
-
   nativeBuildInputs = [ doxygen wrapGAppsHook ];
 
   buildInputs = [ gtk3 ];
diff --git a/pkgs/applications/video/openshot-qt/libopenshot-audio.nix b/pkgs/applications/video/openshot-qt/libopenshot-audio.nix
index 9bf21116455..253ef15a600 100644
--- a/pkgs/applications/video/openshot-qt/libopenshot-audio.nix
+++ b/pkgs/applications/video/openshot-qt/libopenshot-audio.nix
@@ -3,13 +3,13 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "libopenshot-audio";
-  version = "0.1.8";
+  version = "0.2.0";
 
   src = fetchFromGitHub {
     owner = "OpenShot";
     repo = "libopenshot-audio";
     rev = "v${version}";
-    sha256 = "1fvp6nmf30xzkmcznakh8dv5vn9d7nq051pqcqv638hsfppkmcrl";
+    sha256 = "13if0m5mvlqly8gmbhschzb9papkgp3yqivklhb949dhy16m8zgf";
   };
 
   nativeBuildInputs =
diff --git a/pkgs/applications/video/openshot-qt/libopenshot.nix b/pkgs/applications/video/openshot-qt/libopenshot.nix
index 2ed4b8ce3e3..19852664a9f 100644
--- a/pkgs/applications/video/openshot-qt/libopenshot.nix
+++ b/pkgs/applications/video/openshot-qt/libopenshot.nix
@@ -8,13 +8,13 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "libopenshot";
-  version = "0.2.3";
+  version = "0.2.5";
 
   src = fetchFromGitHub {
     owner = "OpenShot";
     repo = "libopenshot";
     rev = "v${version}";
-    sha256 = "0r1qmr8ar5n72603xkj9h065vbpznrqsq88kxxmn9n8djyyvk03k";
+    sha256 = "1mxjkgjmjzgf628y3rscc6rqf55hxgjpmvwxlncfk1216i5xskwp";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/video/plex-mpv-shim/default.nix b/pkgs/applications/video/plex-mpv-shim/default.nix
index 019d080f973..df72e200e62 100644
--- a/pkgs/applications/video/plex-mpv-shim/default.nix
+++ b/pkgs/applications/video/plex-mpv-shim/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonApplication rec {
   pname = "plex-mpv-shim";
-  version = "1.7.12";
+  version = "1.7.14";
 
   src = fetchFromGitHub {
     owner = "iwalton3";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0l13g4vkvcd1q4lkdkbgv4hgkx5pql6ym2fap35581z7rzy9jhkq";
+    sha256 = "1rjifqvs59w2aacfird02myqfd34qadhacj9zpy5xjz25x410zza";
   };
 
   propagatedBuildInputs = [ mpv requests python-mpv-jsonipc ];
diff --git a/pkgs/applications/video/shotcut/default.nix b/pkgs/applications/video/shotcut/default.nix
index f0959284d66..b3c05818638 100644
--- a/pkgs/applications/video/shotcut/default.nix
+++ b/pkgs/applications/video/shotcut/default.nix
@@ -8,13 +8,13 @@ assert stdenv.lib.versionAtLeast mlt.version "6.18.0";
 
 mkDerivation rec {
   pname = "shotcut";
-  version = "20.02.17";
+  version = "20.04.01";
 
   src = fetchFromGitHub {
     owner = "mltframework";
     repo = "shotcut";
     rev = "v${version}";
-    sha256 = "0nsqlbapqgxccb7mnvxqw4hdddj944d4z5jxafpv0cwj7s3z8wj0";
+    sha256 = "10svbhsd5q8z1k055kcfibil97qifwzn3xmnf5b9sxa7ky4bkmqr";
   };
 
   patches = [ ./0001-encodedock.cpp-connect-to-VAAPI-via-DRM-not-X11.patch ];
@@ -60,7 +60,7 @@ mkDerivation rec {
       nixpkgs maintainer(s). If you wish to report any bugs upstream,
       please use the official build from shotcut.org instead.
     '';
-    homepage = https://shotcut.org;
+    homepage = "https://shotcut.org";
     license = licenses.gpl3;
     maintainers = with maintainers; [ goibhniu woffs peti ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/video/vdr/xineliboutput/default.nix b/pkgs/applications/video/vdr/xineliboutput/default.nix
index 98fcd2b5d40..950cb253c12 100644
--- a/pkgs/applications/video/vdr/xineliboutput/default.nix
+++ b/pkgs/applications/video/vdr/xineliboutput/default.nix
@@ -1,21 +1,26 @@
 { stdenv, fetchurl, lib, vdr
 , libav, libcap, libvdpau
-, xineLib, libjpeg, libextractor, mesa, libGLU
+, xineLib, libjpeg, libextractor, libglvnd, libGLU
 , libX11, libXext, libXrender, libXrandr
 , makeWrapper
 }: let
-  name = "vdr-xineliboutput-2.1.0";
-
   makeXinePluginPath = l: lib.concatStringsSep ":" (map (p: "${p}/lib/xine/plugins") l);
 
-  self =  stdenv.mkDerivation {
-    inherit name;
+  self =  stdenv.mkDerivation rec {
+    pname = "vdr-xineliboutput";
+    version = "2.2.0";
 
     src = fetchurl {
-      url = "mirror://sourceforge/project/xineliboutput/xineliboutput/${name}/${name}.tgz";
-      sha256 = "1phrxpaz8li7z0qy241spawalhcmwkv5hh3gdijbv4h7mm899yba";
+      url = "mirror://sourceforge/project/xineliboutput/xineliboutput/${pname}-${version}/${pname}-${version}.tgz";
+      sha256 = "0a24hs5nr7ncf51c5agyfn1xrvb4p70y3i0s6dlyyd9bwbfjldns";
     };
 
+    postPatch = ''
+      # pkg-config is called with opengl, which do not contain needed glx symbols
+      substituteInPlace configure \
+        --replace "X11  opengl" "X11  gl"
+    '';
+
     # configure don't accept argument --prefix
     dontAddPrefix = true;
 
@@ -40,13 +45,13 @@
       libcap
       libextractor
       libjpeg
+      libglvnd
       libGLU
       libvdpau
       libXext
       libXrandr
       libXrender
       libX11
-      mesa
       vdr
       xineLib
     ];
diff --git a/pkgs/applications/video/vokoscreen/default.nix b/pkgs/applications/video/vokoscreen/default.nix
index a38a9056c85..94d0de20ccf 100644
--- a/pkgs/applications/video/vokoscreen/default.nix
+++ b/pkgs/applications/video/vokoscreen/default.nix
@@ -40,7 +40,7 @@ mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Simple GUI screencast recorder, using ffmpeg";
-    homepage = "http://linuxecke.volkoh.de/vokoscreen/vokoscreen.html";
+    homepage = "https://linuxecke.volkoh.de/vokoscreen/vokoscreen.html";
     longDescription = ''
       vokoscreen is an easy to use screencast creator to record
       educational videos, live recordings of browser, installation,
diff --git a/pkgs/applications/virtualization/bochs/bochs-2.6.10-glibc-2.26.patch b/pkgs/applications/virtualization/bochs/bochs-2.6.11-glibc-2.26.patch
index e662913574d..e662913574d 100644
--- a/pkgs/applications/virtualization/bochs/bochs-2.6.10-glibc-2.26.patch
+++ b/pkgs/applications/virtualization/bochs/bochs-2.6.11-glibc-2.26.patch
diff --git a/pkgs/applications/virtualization/bochs/default.nix b/pkgs/applications/virtualization/bochs/default.nix
index f6e202ac499..e9982d61391 100644
--- a/pkgs/applications/virtualization/bochs/default.nix
+++ b/pkgs/applications/virtualization/bochs/default.nix
@@ -19,14 +19,14 @@ with stdenv.lib;
 stdenv.mkDerivation rec {
 
   pname = "bochs";
-  version = "2.6.10";
+  version = "2.6.11";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/bochs/bochs/${version}/${pname}-${version}.tar.gz";
-    sha256 = "1c3mw4b8wrjf8z44fvhycs95j1wd1c0b4khcv63giiia5j5q0gvj";
+    sha256 = "0ql8q6y1k356li1g9gbvl21448mlxphxxi6kjb2b3pxvzd0pp2b3";
   };
 
-  patches = [ ./bochs-2.6.10-glibc-2.26.patch ];
+  patches = [ ./bochs-2.6.11-glibc-2.26.patch ./fix-build-smp.patch ];
 
   buildInputs =
   [ pkgconfig libtool gtk2 libGLU libGL readline libX11 libXpm docbook_xml_dtd_45 docbook_xsl ]
diff --git a/pkgs/applications/virtualization/bochs/fix-build-smp.patch b/pkgs/applications/virtualization/bochs/fix-build-smp.patch
new file mode 100644
index 00000000000..faa2acfa512
--- /dev/null
+++ b/pkgs/applications/virtualization/bochs/fix-build-smp.patch
@@ -0,0 +1,21 @@
+Description: A fix for SMP-enable configurations
+Inspired in: https://sourceforge.net/p/bochs/code/13778/
+
+============
+diff -Naur bochs-2.6.11-old/bx_debug/dbg_main.cc bochs-2.6.11-new/bx_debug/dbg_main.cc
+--- bochs-2.6.11-old/bx_debug/dbg_main.cc	2019-12-20 04:57:59.818924000 -0300
++++ bochs-2.6.11-new/bx_debug/dbg_main.cc	2020-03-30 23:20:29.402195707 -0300
+@@ -1494,11 +1494,11 @@
+ {
+   char cpu_param_name[16];
+ 
+-  Bit32u index = BX_ITLB_INDEX_OF(laddr);
++  Bit32u index = BX_CPU(dbg_cpu)->ITLB.get_index_of(laddr);
+   sprintf(cpu_param_name, "ITLB.entry%d", index);
+   bx_dbg_show_param_command(cpu_param_name, 0);
+ 
+-  index = BX_DTLB_INDEX_OF(laddr, 0);
++  index = BX_CPU(dbg_cpu)->DTLB.get_index_of(laddr);
+   sprintf(cpu_param_name, "DTLB.entry%d", index);
+   bx_dbg_show_param_command(cpu_param_name, 0);
+ }
diff --git a/pkgs/applications/virtualization/conmon/default.nix b/pkgs/applications/virtualization/conmon/default.nix
index 37223b5cb42..b09911cf6e5 100644
--- a/pkgs/applications/virtualization/conmon/default.nix
+++ b/pkgs/applications/virtualization/conmon/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "conmon";
-  version = "2.0.13";
+  version = "2.0.15";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1cp9hhanndr6c71g4hdxfgwk348vnnlgijkr12f7qmd5acwfl7jc";
+    sha256 = "1fshcmnfqzbagzcrh5nxw7pi0dd60xpq47a2lzfghklqhl1h0b5i";
   };
 
   nativeBuildInputs = [ pkg-config ];
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/containers/conmon";
     description = "An OCI container runtime monitor";
     license = licenses.asl20;
-    maintainers = with maintainers; [ vdemeester saschagrunert ];
+    maintainers = with maintainers; [ ] ++ teams.podman.members;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/virtualization/containerd/default.nix b/pkgs/applications/virtualization/containerd/default.nix
index 6075a7bb219..7b48d8c1934 100644
--- a/pkgs/applications/virtualization/containerd/default.nix
+++ b/pkgs/applications/virtualization/containerd/default.nix
@@ -16,7 +16,10 @@ buildGoPackage rec {
   goPackagePath = "github.com/containerd/containerd";
   outputs = [ "bin" "out" "man" ];
 
-  buildInputs = [ btrfs-progs go-md2man utillinux ];
+  nativeBuildInputs = [ go-md2man utillinux ];
+
+  buildInputs = [ btrfs-progs ];
+
   buildFlags = [ "VERSION=v${version}" ];
 
   BUILDTAGS = []
diff --git a/pkgs/applications/virtualization/cri-o/default.nix b/pkgs/applications/virtualization/cri-o/default.nix
index 274468334ee..793d34a0dcc 100644
--- a/pkgs/applications/virtualization/cri-o/default.nix
+++ b/pkgs/applications/virtualization/cri-o/default.nix
@@ -20,7 +20,7 @@ let
   buildTags = "apparmor seccomp selinux containers_image_ostree_stub";
 in buildGoPackage rec {
   project = "cri-o";
-  version = "1.17.0";
+  version = "1.17.1";
   name = "${project}-${version}${flavor}";
 
   goPackagePath = "github.com/${project}/${project}";
@@ -29,7 +29,7 @@ in buildGoPackage rec {
     owner = "cri-o";
     repo = "cri-o";
     rev = "v${version}";
-    sha256 = "0xjmylf0ww23qqcg7kw008px6608r4qq6q57pfqis0661kp6f24j";
+    sha256 = "0zipigjcnhcnn0w69dkd8312qb6z98l65ir175wp3jfvj4cx3g28";
   };
 
   outputs = [ "bin" "out" ];
diff --git a/pkgs/applications/virtualization/crun/default.nix b/pkgs/applications/virtualization/crun/default.nix
index 35b88d7e447..ded793449fc 100644
--- a/pkgs/applications/virtualization/crun/default.nix
+++ b/pkgs/applications/virtualization/crun/default.nix
@@ -67,5 +67,6 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     inherit (src.meta) homepage;
+    maintainers = with maintainers; [ ] ++ teams.podman.members;
   };
 }
diff --git a/pkgs/applications/virtualization/hercules/default.nix b/pkgs/applications/virtualization/hercules/default.nix
new file mode 100644
index 00000000000..901e2f0b6ec
--- /dev/null
+++ b/pkgs/applications/virtualization/hercules/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  pname = "hercules";
+  version = "3.13";
+
+  src = fetchurl {
+    url = "http://downloads.hercules-390.eu/${pname}-${version}.tar.gz";
+    sha256 = "0zg6rwz8ib4alibf8lygi8qn69xx8n92kbi8b3jhi1ymb32mf349";
+  };
+
+  meta = with stdenv.lib; {
+    description = "IBM mainframe emulator";
+    homepage = "http://www.hercules-390.eu";
+    license = licenses.qpl;
+    maintainers = [ maintainers.dkudriavtsev ];
+  };
+}
diff --git a/pkgs/applications/virtualization/podman/default.nix b/pkgs/applications/virtualization/podman/default.nix
index 288cac27b21..cd78c12bdc5 100644
--- a/pkgs/applications/virtualization/podman/default.nix
+++ b/pkgs/applications/virtualization/podman/default.nix
@@ -41,7 +41,7 @@ buildGoPackage rec {
     homepage = "https://podman.io/";
     description = "A program for managing pods, containers and container images";
     license = licenses.asl20;
-    maintainers = with maintainers; [ vdemeester saschagrunert marsam ];
+    maintainers = with maintainers; [ marsam ] ++ teams.podman.members;
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/applications/virtualization/runc/default.nix b/pkgs/applications/virtualization/runc/default.nix
index e7713d45f2f..363a41c1edf 100644
--- a/pkgs/applications/virtualization/runc/default.nix
+++ b/pkgs/applications/virtualization/runc/default.nix
@@ -53,7 +53,7 @@ buildGoPackage rec {
     homepage = https://runc.io/;
     description = "A CLI tool for spawning and running containers according to the OCI specification";
     license = licenses.asl20;
-    maintainers = with maintainers; [ offline vdemeester saschagrunert ];
+    maintainers = with maintainers; [ offline ] ++ teams.podman.members;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/virtualization/seabios/default.nix b/pkgs/applications/virtualization/seabios/default.nix
index 32528627a3c..d95f759783d 100644
--- a/pkgs/applications/virtualization/seabios/default.nix
+++ b/pkgs/applications/virtualization/seabios/default.nix
@@ -3,11 +3,11 @@
 stdenv.mkDerivation rec {
 
   pname = "seabios";
-  version = "1.11.0";
+  version = "1.13.0";
 
   src = fetchurl {
-    url = "http://code.coreboot.org/p/seabios/downloads/get/${pname}-${version}.tar.gz";
-    sha256 = "1xwvp77djxbxbxg82hzj26pv6zka3556vkdcp09hnfwapcp46av2";
+    url = "https://www.seabios.org/downloads/${pname}-${version}.tar.gz";
+    sha256 = "00z7vdahpxa37irlf8ld350dp6z9qfyfb56vbfqr319hsv13srrp";
   };
 
   buildInputs = [ iasl python ];
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
       It can run in an emulator or it can run natively on X86 hardware with the use of coreboot.
       SeaBIOS is the default BIOS for QEMU and KVM.
     '';
-    homepage = http://www.seabios.org;
+    homepage = "http://www.seabios.org";
     license = licenses.lgpl3;
     maintainers = [ maintainers.tstrobel ];
     platforms = [ "i686-linux" "x86_64-linux" ];
diff --git a/pkgs/applications/virtualization/singularity/default.nix b/pkgs/applications/virtualization/singularity/default.nix
index 60825063cab..930afa31722 100644
--- a/pkgs/applications/virtualization/singularity/default.nix
+++ b/pkgs/applications/virtualization/singularity/default.nix
@@ -27,8 +27,8 @@ buildGoPackage rec {
   goPackagePath = "github.com/sylabs/singularity";
   goDeps = ./deps.nix;
 
-  buildInputs = [ openssl ];
-  nativeBuildInputs = [ removeReferencesTo utillinux which makeWrapper ];
+  buildInputs = [ openssl utillinux ];
+  nativeBuildInputs = [ removeReferencesTo which makeWrapper ];
   propagatedBuildInputs = [ coreutils squashfsTools ];
 
   prePatch = ''
diff --git a/pkgs/applications/virtualization/spice-vdagent/default.nix b/pkgs/applications/virtualization/spice-vdagent/default.nix
index 6f5cbeb7ed4..22aa31a6dea 100644
--- a/pkgs/applications/virtualization/spice-vdagent/default.nix
+++ b/pkgs/applications/virtualization/spice-vdagent/default.nix
@@ -2,10 +2,10 @@
  libpciaccess, libxcb, libXrandr, libXinerama, libXfixes, dbus, libdrm,
  systemd}:
 stdenv.mkDerivation rec {
-  name = "spice-vdagent-0.19.0";
+  name = "spice-vdagent-0.20.0";
   src = fetchurl {
     url = "https://www.spice-space.org/download/releases/${name}.tar.bz2";
-    sha256 = "0r9gjx1vcgb4f7g85b1ib045kqa3dqjk12m7342i5y443ihpr9v3";
+    sha256 = "0n9k2kna2gd1zi6jv45zsp2jlv439nz5l5jjijirxqaycwi74srf";
   };
   NIX_CFLAGS_COMPILE = [ "-Wno-error=address-of-packed-member" ];
   postPatch = ''
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
          to the client resolution
        * Multiple displays
     '';
-    homepage = https://www.spice-space.org/;
+    homepage = "https://www.spice-space.org/";
     license = stdenv.lib.licenses.gpl3;
     maintainers = [ stdenv.lib.maintainers.aboseley ];
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/virtualization/virt-top/default.nix b/pkgs/applications/virtualization/virt-top/default.nix
index f32a2a6ce1c..efe985920a8 100644
--- a/pkgs/applications/virtualization/virt-top/default.nix
+++ b/pkgs/applications/virtualization/virt-top/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ autoreconfHook ];
-  buildInputs = with ocamlPackages; [ ocaml findlib ocaml_extlib ocaml_libvirt ocaml_gettext curses csv xml-light ];
+  buildInputs = with ocamlPackages; [ ocaml findlib ocaml_extlib ocaml_libvirt gettext-stub curses csv xml-light ];
 
   buildPhase = "make opt";
 
diff --git a/pkgs/applications/virtualization/x11docker/default.nix b/pkgs/applications/virtualization/x11docker/default.nix
index add16fd98f9..7ef91e6f609 100644
--- a/pkgs/applications/virtualization/x11docker/default.nix
+++ b/pkgs/applications/virtualization/x11docker/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchFromGitHub, makeWrapper, nx-libs, xorg, getopt, gnugrep, gawk, ps, mount, iproute }:
 stdenv.mkDerivation rec {
   pname = "x11docker";
-  version = "6.6.0";
+  version = "6.6.1";
   src = fetchFromGitHub {
     owner = "mviereck";
     repo = "x11docker";
     rev = "v${version}";
-    sha256 = "0a7fggyaybfppsvqyll1gsh19pp41nkly4x1sgy5pk1d9j1lblgx";
+    sha256 = "0p1ypgy45ngxxjczd986pkfh4cn5bs45cwzlfv9fm2p58fkx3aar";
   };
   nativeBuildInputs = [ makeWrapper ];
 
diff --git a/pkgs/applications/window-managers/cage/default.nix b/pkgs/applications/window-managers/cage/default.nix
index fe5e9c4e2e3..205569ad550 100644
--- a/pkgs/applications/window-managers/cage/default.nix
+++ b/pkgs/applications/window-managers/cage/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     sha256 = "1gkqx26pvlw00b3fgx6sh87yyjfzyj51jwxvbf9k117npkrf4b2g";
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig makeWrapper ];
+  nativeBuildInputs = [ meson ninja pkgconfig makeWrapper wayland ];
 
   buildInputs = [
     wlroots wayland wayland-protocols pixman libxkbcommon
diff --git a/pkgs/applications/window-managers/i3/lock-fancy.nix b/pkgs/applications/window-managers/i3/lock-fancy.nix
index 4ca69ce31b4..b6b354021d9 100644
--- a/pkgs/applications/window-managers/i3/lock-fancy.nix
+++ b/pkgs/applications/window-managers/i3/lock-fancy.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "00lqsvz1knb8iqy8lnkn3sf4c2c4nzb0smky63qf48m8za5aw9b1";
   };
   patchPhase = ''
-    sed -i -e "s|(mktemp)|(${coreutils}/bin/mktemp)|" i3lock-fancy
+    sed -i -e "s|mktemp|${coreutils}/bin/mktemp|" i3lock-fancy
     sed -i -e "s|'rm -f |'${coreutils}/bin/rm -f |" i3lock-fancy
     sed -i -e "s|scrot -z |${scrot}/bin/scrot -z |" i3lock-fancy
     sed -i -e "s|convert |${imagemagick.out}/bin/convert |" i3lock-fancy
diff --git a/pkgs/applications/window-managers/icewm/default.nix b/pkgs/applications/window-managers/icewm/default.nix
index 58fa0d194e1..651669bebe5 100644
--- a/pkgs/applications/window-managers/icewm/default.nix
+++ b/pkgs/applications/window-managers/icewm/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   pname = "icewm";
-  version = "1.6.3";
+  version = "1.6.5";
 
   src = fetchFromGitHub {
     owner  = "bbidulock";
     repo   = "icewm";
     rev    = version;
-    sha256 = "0h3w718x28fd4sz36ka9wpgcb98scna6qpycxzls4cjji3rjgm0l";
+    sha256 = "1glzpkpl0vl5sjn1d9jlvwd9ch16dvxvsf2n310kb0ycpfkl84vs";
   };
 
   nativeBuildInputs = [ cmake pkgconfig perl asciidoc ];
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
       IceWM is a window manager for the X Window System. The goal of
       IceWM is speed, simplicity, and not getting in the user's way.
     '';
-    homepage = http://www.icewm.org/;
+    homepage = "http://www.icewm.org/";
     license = licenses.lgpl2;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/window-managers/notion/default.nix b/pkgs/applications/window-managers/notion/default.nix
index 2b9e8237a04..ac4f00f4545 100644
--- a/pkgs/applications/window-managers/notion/default.nix
+++ b/pkgs/applications/window-managers/notion/default.nix
@@ -7,22 +7,22 @@
 
 stdenv.mkDerivation rec{
   pname = "notion";
-  version = "3-2019050101";
+  version = "4.0.0";
 
   src = fetchFromGitHub {
     owner = "raboof";
     repo = pname;
     rev = version;
-    sha256 = "09kvgqyw0gnj3jhz9gmwq81ak8qy32vyanx1hw79r6m181aysspz";
+    sha256 = "0rqfvwkj0j862hf6i4wsmb6185xibsskfj9kwy896qcpcg8w4kk7";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper groff ];
   buildInputs = [ lua gettext which readline fontconfig libX11 libXext libSM
                   libXinerama libXrandr libXft xlibsWrapper ];
 
-  buildFlags = [ "CC=cc" "LUA_DIR=${lua}" "X11_PREFIX=/no-such-path" ];
+  buildFlags = [ "LUA_DIR=${lua}" "X11_PREFIX=/no-such-path" ];
 
-  makeFlags = [ "PREFIX=\${out}" ];
+  makeFlags = [ "NOTION_RELEASE=${version}" "PREFIX=\${out}" ];
 
   postInstall = ''
     wrapProgram $out/bin/notion \
@@ -30,10 +30,10 @@ stdenv.mkDerivation rec{
   '';
 
   meta = with stdenv.lib; {
-    description = "Tiling tabbed window manager, follow-on to the Ion";
-    homepage = "https://notionwm.net/";
+    description = "Tiling tabbed window manager";
+    homepage = "https://notionwm.net";
     license   = licenses.lgpl21;
-    maintainers = with maintainers; [ jfb AndersonTorres ];
+    maintainers = with maintainers; [ jfb AndersonTorres raboof ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/window-managers/sway/lock-effects.nix b/pkgs/applications/window-managers/sway/lock-effects.nix
new file mode 100644
index 00000000000..e07080497f4
--- /dev/null
+++ b/pkgs/applications/window-managers/sway/lock-effects.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchFromGitHub,
+  meson, ninja, pkgconfig, scdoc,
+  wayland, wayland-protocols, libxkbcommon,
+  cairo, gdk-pixbuf, pam
+}:
+
+stdenv.mkDerivation rec {
+  pname = "swaylock-effects";
+  version = "v1.6-0";
+
+  src = fetchFromGitHub {
+    owner = "mortie";
+    repo = "swaylock-effects";
+    rev = version;
+    sha256 = "15lshqq3qj9m3yfac65hjcciaf9zdfh3ir7hgh0ach7gpi3rbk13";
+
+  };
+
+  postPatch = ''
+    sed -iE "s/version: '1\.3',/version: '${version}',/" meson.build
+  '';
+
+  nativeBuildInputs = [ meson ninja pkgconfig scdoc ];
+  buildInputs = [ wayland wayland-protocols libxkbcommon cairo gdk-pixbuf pam ];
+
+  mesonFlags = [
+    "-Dpam=enabled" "-Dgdk-pixbuf=enabled" "-Dman-pages=enabled"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Screen locker for Wayland";
+    longDescription = ''
+      swaylock-effects is a screen locking utility for Wayland compositors.
+    '';
+    inherit (src.meta) homepage;
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ gnxlxnxx ];
+  };
+}
diff --git a/pkgs/build-support/build-pecl.nix b/pkgs/build-support/build-pecl.nix
index a1030e3b34f..f43205f24c5 100644
--- a/pkgs/build-support/build-pecl.nix
+++ b/pkgs/build-support/build-pecl.nix
@@ -1,9 +1,11 @@
-{ stdenv, php, autoreconfHook, fetchurl, re2c }:
+{ stdenv, lib, php, autoreconfHook, fetchurl, re2c }:
 
 { pname
 , version
+, internalDeps ? []
 , buildInputs ? []
 , nativeBuildInputs ? []
+, postPhpize ? ""
 , makeFlags ? []
 , src ? fetchurl {
     url = "http://pecl.php.net/get/${pname}-${version}.tgz";
@@ -22,5 +24,11 @@ stdenv.mkDerivation (args // {
 
   makeFlags = [ "EXTENSION_DIR=$(out)/lib/php/extensions" ] ++ makeFlags;
 
-  autoreconfPhase = "phpize";
+  autoreconfPhase = ''
+    phpize
+    ${postPhpize}
+    ${lib.concatMapStringsSep "\n"
+      (dep: "mkdir -p ext; ln -s ${dep.dev}/include ext/${dep.extensionName}")
+      internalDeps}
+  '';
 })
diff --git a/pkgs/build-support/emacs/setup-hook.sh b/pkgs/build-support/emacs/setup-hook.sh
index 8f074e0b406..83e995631b3 100644
--- a/pkgs/build-support/emacs/setup-hook.sh
+++ b/pkgs/build-support/emacs/setup-hook.sh
@@ -1,15 +1,23 @@
+addToEmacsLoadPath() {
+  local lispDir="$1"
+  if [[ -d $lispDir && ${EMACSLOADPATH-} != *"$lispDir":* ]] ; then
+    # It turns out, that the trailing : is actually required
+    # see https://www.gnu.org/software/emacs/manual/html_node/elisp/Library-Search.html
+    export EMACSLOADPATH="$lispDir:${EMACSLOADPATH-}"
+  fi
+}
+
 addEmacsVars () {
+  addToEmacsLoadPath "$1/share/emacs/site-lisp"
+
+  # Add sub paths to the Emacs load path if it is a directory
+  # containing .el files. This is necessary to build some packages,
+  # e.g., using trivialBuild.
   for lispDir in \
-      "$1/share/emacs/site-lisp" \
       "$1/share/emacs/site-lisp/"* \
       "$1/share/emacs/site-lisp/elpa/"*; do
-    # Add the path to the Emacs load path if it is a directory
-    # containing .el files and it has not already been added to the
-    # load path.
-    if [[ -d $lispDir && "$(echo "$lispDir"/*.el)" && ${EMACSLOADPATH-} != *"$lispDir":* ]] ; then
-      # It turns out, that the trailing : is actually required
-      # see https://www.gnu.org/software/emacs/manual/html_node/elisp/Library-Search.html
-      export EMACSLOADPATH="$lispDir:${EMACSLOADPATH-}"
+    if [[ -d $lispDir && "$(echo "$lispDir"/*.el)" ]] ; then
+      addToEmacsLoadPath "$lispDir"
     fi
   done
 }
diff --git a/pkgs/build-support/make-desktopitem/default.nix b/pkgs/build-support/make-desktopitem/default.nix
index 67b82fd66db..8355a5ad29b 100644
--- a/pkgs/build-support/make-desktopitem/default.nix
+++ b/pkgs/build-support/make-desktopitem/default.nix
@@ -1,4 +1,5 @@
-{ lib, runCommandLocal }:
+{ lib, runCommandLocal, desktop-file-utils }:
+
 { name
 , type ? "Application"
 , exec
@@ -8,9 +9,10 @@
 , desktopName
 , genericName ? null
 , mimeType ? null
-, categories ? "Application;Other;"
+, categories ? null
 , startupNotify ? null
 , extraEntries ? null
+, fileValidation ? true # whether to validate resulting desktop file.
 }:
 
 let
@@ -18,6 +20,7 @@ let
                          {k="Comment";       v=comment;}
                          {k="GenericName";   v=genericName;}
                          {k="MimeType";      v=mimeType;}
+                         {k="Categories";    v=categories;}
                          {k="StartupNotify"; v=startupNotify;}];
 
   valueNotNull = {k, v}: v != null;
@@ -28,16 +31,20 @@ let
 in
 runCommandLocal "${name}.desktop" {}
   ''
-    mkdir -p $out/share/applications
-    cat > $out/share/applications/${name}.desktop <<EOF
+    mkdir -p "$out/share/applications"
+    cat > "$out/share/applications/${name}.desktop" <<EOF
     [Desktop Entry]
     Type=${type}
     Exec=${exec}
     Terminal=${terminal}
     Name=${desktopName}
-    Categories=${categories}
     ${optionalEntriesString}
     ${if extraEntries == null then ''EOF'' else ''
     ${extraEntries}
     EOF''}
+
+    ${lib.optionalString fileValidation ''
+      echo "Running desktop-file validation"
+      ${desktop-file-utils}/bin/desktop-file-validate "$out/share/applications/${name}.desktop"
+    ''}
   ''
diff --git a/pkgs/build-support/release/binary-tarball.nix b/pkgs/build-support/release/binary-tarball.nix
index dad65a0e7eb..168343c8082 100644
--- a/pkgs/build-support/release/binary-tarball.nix
+++ b/pkgs/build-support/release/binary-tarball.nix
@@ -51,29 +51,24 @@ stdenv.mkDerivation (
       configureFlags="--prefix=$prefix $configureFlags"
       dontAddPrefix=1
       prefix=$TMPDIR/inst$prefix
-    ''; # */
-
+    '';
 
     doDist = true;
 
-    distPhase =
-      ''
-        mkdir -p $out/tarballs
-        tar cvfj $out/tarballs/''${releaseName:-binary-dist}.tar.bz2 -C $TMPDIR/inst .
-      '';
-
-
-    finalPhase =
-      ''
-        for i in $out/tarballs/*; do
-            echo "file binary-dist $i" >> $out/nix-support/hydra-build-products
-        done
+    distPhase = ''
+      mkdir -p $out/tarballs
+      tar cvfj $out/tarballs/''${releaseName:-binary-dist}.tar.bz2 -C $TMPDIR/inst .
+    '';
 
-        # Propagate the release name of the source tarball.  This is
-        # to get nice package names in channels.
-        test -n "$releaseName" && (echo "$releaseName" >> $out/nix-support/hydra-release-name)
-      '';
+    finalPhase = ''
+      for i in $out/tarballs/*; do
+          echo "file binary-dist $i" >> $out/nix-support/hydra-build-products
+      done
 
+      # Propagate the release name of the source tarball.  This is
+      # to get nice package names in channels.
+      test -n "$releaseName" && (echo "$releaseName" >> $out/nix-support/hydra-release-name)
+    '';
 
     meta = (if args ? meta then args.meta else {}) // {
       description = "Build of a generic binary distribution";
diff --git a/pkgs/build-support/release/debian-build.nix b/pkgs/build-support/release/debian-build.nix
index 354d929c9b6..dfa896a86a6 100644
--- a/pkgs/build-support/release/debian-build.nix
+++ b/pkgs/build-support/release/debian-build.nix
@@ -88,7 +88,7 @@ vmTools.runInLinuxImage (stdenv.mkDerivation (
       done
 
       eval "$postInstall"
-    ''; # */
+    '';
 
     meta = (if args ? meta then args.meta else {}) // {
       description = "Deb package for ${diskImage.fullName}";
diff --git a/pkgs/build-support/release/default.nix b/pkgs/build-support/release/default.nix
index 5e3eb751b81..6b9aa9a8c4a 100644
--- a/pkgs/build-support/release/default.nix
+++ b/pkgs/build-support/release/default.nix
@@ -1,4 +1,4 @@
-{pkgs}:
+{ pkgs }:
 
 with pkgs;
 
@@ -77,7 +77,7 @@ rec {
      its contituents. Channel jobs are a special type of jobs that are
      listed in the channel tab of Hydra and that can be suscribed.
      A tarball of the src attribute is distributed via the channel.
-     
+
      - constituents: a list of derivations on which the channel success depends.
      - name: the channel name that will be used in the hydra interface.
      - src: should point to the root folder of the nix-expressions used by the
@@ -88,7 +88,7 @@ rec {
          name = "my-channel";
          src = ./.;
        };
-     
+
   */
   channel =
     { name, src, constituents ? [], meta ? {}, isNixOS ? true, ... }@args:
diff --git a/pkgs/build-support/release/maven-build.nix b/pkgs/build-support/release/maven-build.nix
index 71eb63b850d..eaa47647287 100644
--- a/pkgs/build-support/release/maven-build.nix
+++ b/pkgs/build-support/release/maven-build.nix
@@ -11,12 +11,12 @@
 , ...
 } @ args :
 
-let 
+let
   mvnFlags = "-Dmaven.repo.local=$M2_REPO ${if doTest then "" else "-Dmaven.test.skip.exec=true"} ${extraMvnFlags}";
 in
 
 stdenv.mkDerivation ( {
-  inherit name src; 
+  inherit name src;
   phases = "setupPhase unpackPhase patchPhase mvnCompile ${if doTestCompile then "mvnTestCompile mvnTestJar" else ""} ${if doTest then "mvnTest" else ""} ${if doJavadoc then "mvnJavadoc" else ""} ${if doCheckstyle then "mvnCheckstyle" else ""} mvnJar mvnAssembly mvnRelease finalPhase";
 
   setupPhase = ''
@@ -32,15 +32,15 @@ stdenv.mkDerivation ( {
 
   mvnCompile = ''
     mvn compile ${mvnFlags}
-  '';  
+  '';
 
   mvnTestCompile = ''
     mvn test-compile ${mvnFlags}
-  '';  
+  '';
 
   mvnTestJar = ''
     mvn jar:test-jar ${mvnFlags}
-  '';  
+  '';
 
   mvnTest = ''
     mvn test ${mvnFlags}
@@ -53,21 +53,21 @@ stdenv.mkDerivation ( {
       mvn surefire-report:report-only
       echo "report coverage $out/site/surefire-report.html" >> $out/nix-support/hydra-build-products
     fi
-  '';  
+  '';
 
   mvnJavadoc = ''
     mvn javadoc:javadoc ${mvnFlags}
     echo "report javadoc $out/site/apidocs" >> $out/nix-support/hydra-build-products
-  '';  
+  '';
 
   mvnCheckstyle = ''
     mvn checkstyle:checkstyle ${mvnFlags}
     echo "report checkstyle $out/site/checkstyle.html" >> $out/nix-support/hydra-build-products
-  '';  
+  '';
 
   mvnJar = ''
     mvn jar:jar ${mvnFlags}
-  '';  
+  '';
 
   mvnAssembly = ''
     mvn assembly:assembly -Dmaven.test.skip=true ${mvnFlags}
@@ -80,13 +80,13 @@ stdenv.mkDerivation ( {
     releaseName=$(basename $zip .zip)
     releaseName="$releaseName-r${toString src.rev or "0"}"
     cp $zip $out/release/$releaseName.zip
-    
+
     echo "$releaseName" > $out/nix-support/hydra-release-name
 
     ${if doRelease then  ''
     echo "file zip $out/release/$releaseName.zip" >> $out/nix-support/hydra-build-products
     '' else ""}
-  '';  
+  '';
 
   finalPhase = ''
     if [ -d target/site ] ; then
@@ -94,5 +94,5 @@ stdenv.mkDerivation ( {
       echo "report site $out/site" >> $out/nix-support/hydra-build-products
     fi
   '';
-} // args 
+} // args
 )
diff --git a/pkgs/build-support/release/rpm-build.nix b/pkgs/build-support/release/rpm-build.nix
index 194bbc60534..47c01f2e66b 100644
--- a/pkgs/build-support/release/rpm-build.nix
+++ b/pkgs/build-support/release/rpm-build.nix
@@ -44,7 +44,7 @@ vmTools.buildRPM (
       for rpmdir in $extraRPMs ; do
         echo "file rpm-extra $(ls $rpmdir/rpms/*/*.rpm | grep -v 'src\.rpm' | sort | head -1)" >> $out/nix-support/hydra-build-products
       done
-    ''; # */
+    '';
 
     meta = (if args ? meta then args.meta else {}) // {
       description = "RPM package for ${diskImage.fullName}";
diff --git a/pkgs/build-support/rust/build-rust-crate/configure-crate.nix b/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
index 61c39c6b21c..ed810053709 100644
--- a/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
+++ b/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
@@ -172,7 +172,7 @@ in ''
      set +e
      EXTRA_BUILD=$(sed -n "s/^cargo:rustc-flags=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ' | sort -u)
      EXTRA_FEATURES=$(sed -n "s/^cargo:rustc-cfg=\(.*\)/--cfg \1/p" target/build/${crateName}.opt | tr '\n' ' ')
-     EXTRA_LINK=$(sed -n "s/^cargo:rustc-link-lib=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ' | sort -u)
+     EXTRA_LINK=$(sed -n "s/^cargo:rustc-link-lib=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ')
      EXTRA_LINK_SEARCH=$(sed -n "s/^cargo:rustc-link-search=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ' | sort -u)
 
      for env in $(sed -n "s/^cargo:rustc-env=\(.*\)/\1/p" target/build/${crateName}.opt); do
diff --git a/pkgs/build-support/rust/build-rust-crate/default.nix b/pkgs/build-support/rust/build-rust-crate/default.nix
index 70d48bef8c9..a175ba9d7f6 100644
--- a/pkgs/build-support/rust/build-rust-crate/default.nix
+++ b/pkgs/build-support/rust/build-rust-crate/default.nix
@@ -100,7 +100,7 @@ stdenv.mkDerivation (rec {
     );
 
     crateFeatures = lib.optionalString (crate ? features)
-      (lib.concatMapStringsSep " " (f: "--cfg feature=\\\"${f}\\\"") (crate.features ++ features));
+      (lib.concatMapStringsSep " " (f: ''--cfg feature=\"${f}\"'') (crate.features ++ features));
 
     libName = if crate ? libName then crate.libName else crate.crateName;
     libPath = if crate ? libPath then crate.libPath else "";
diff --git a/pkgs/build-support/rust/build-rust-crate/install-crate.nix b/pkgs/build-support/rust/build-rust-crate/install-crate.nix
index 5ba7b69bedc..f4a4dcdb0d9 100644
--- a/pkgs/build-support/rust/build-rust-crate/install-crate.nix
+++ b/pkgs/build-support/rust/build-rust-crate/install-crate.nix
@@ -14,7 +14,7 @@ if !buildTests then ''
   fi
   if [[ "$(ls -A target/lib)" ]]; then
     mkdir -p $lib/lib
-    cp target/lib/* $lib/lib #*/
+    cp -r target/lib/* $lib/lib #*/
     for library in $lib/lib/*.so $lib/lib/*.dylib; do #*/
       ln -s $library $(echo $library | sed -e "s/-${metadata}//")
     done
@@ -26,7 +26,7 @@ if !buildTests then ''
   if [[ -d target/bin ]]; then
     if [[ "$(ls -A target/bin)" ]]; then
       mkdir -p $out/bin
-      cp -P target/bin/* $out/bin # */
+      cp -rP target/bin/* $out/bin # */
     fi
   fi
   runHook postInstall
diff --git a/pkgs/build-support/rust/build-rust-crate/lib.sh b/pkgs/build-support/rust/build-rust-crate/lib.sh
index 5843ee98b0d..3bf1992cecd 100644
--- a/pkgs/build-support/rust/build-rust-crate/lib.sh
+++ b/pkgs/build-support/rust/build-rust-crate/lib.sh
@@ -14,7 +14,6 @@ build_lib() {
     --crate-name $CRATE_NAME \
     $lib_src \
     --out-dir target/lib \
-    --emit=dep-info,link \
     -L dependency=target/deps \
     --cap-lints allow \
     $LIB_RUSTC_OPTS \
@@ -45,7 +44,6 @@ build_bin() {
     --crate-type bin \
     $BIN_RUSTC_OPTS \
     --out-dir target/bin \
-    --emit=dep-info,link \
     -L dependency=target/deps \
     $LINK \
     $EXTRA_LIB \
@@ -105,11 +103,6 @@ setup_link_paths() {
   done
 
   if [[ -e target/link ]]; then
-     sort -u target/link.final > target/link.final.sorted
-     mv target/link.final.sorted target/link.final
-     sort -u target/link > target/link.sorted
-     mv target/link.sorted target/link
-
      tr '\n' ' ' < target/link > target/link_
      LINK=$(cat target/link_)
   fi
diff --git a/pkgs/build-support/rust/build-rust-crate/test/default.nix b/pkgs/build-support/rust/build-rust-crate/test/default.nix
index f24583c41fc..fba938f6237 100644
--- a/pkgs/build-support/rust/build-rust-crate/test/default.nix
+++ b/pkgs/build-support/rust/build-rust-crate/test/default.nix
@@ -1,4 +1,14 @@
-{ lib, buildRustCrate, runCommand, writeTextFile, symlinkJoin, callPackage, releaseTools }:
+{ lib
+, buildRustCrate
+, callPackage
+, releaseTools
+, runCommand
+, runCommandCC
+, stdenv
+, symlinkJoin
+, writeTextFile
+}:
+
 let
   mkCrate = args: let
     p = {
@@ -94,6 +104,58 @@ let
         ''
       );
 
+    /* Returns a derivation that asserts that the crate specified by `crateArgs`
+       has the specified files as output.
+
+       `name` is used as part of the derivation name that performs the checking.
+
+       `crateArgs` is passed to `mkCrate` to build the crate with `buildRustCrate`.
+
+       `expectedFiles` contains a list of expected file paths in the output. E.g.
+       `[ "./bin/my_binary" ]`.
+
+       `output` specifies the name of the output to use. By default, the default
+       output is used but e.g. `output = "lib";` will cause the lib output
+       to be checked instead. You do not need to specify any directories.
+     */
+    assertOutputs = { name, crateArgs, expectedFiles, output? null }:
+      assert (builtins.isString name);
+      assert (builtins.isAttrs crateArgs);
+      assert (builtins.isList expectedFiles);
+
+      let
+        crate = mkCrate (builtins.removeAttrs crateArgs ["expectedTestOutput"]);
+        crateOutput = if output == null then crate else crate."${output}";
+        expectedFilesFile = writeTextFile {
+          name = "expected-files-${name}";
+          text =
+            let sorted = builtins.sort (a: b: a<b) expectedFiles;
+                concatenated = builtins.concatStringsSep "\n" sorted;
+            in "${concatenated}\n";
+        };
+      in
+      runCommand "assert-outputs-${name}" {
+      } ''
+      local actualFiles=$(mktemp)
+
+      cd "${crateOutput}"
+      find . -type f | sort >$actualFiles
+      diff -q ${expectedFilesFile} $actualFiles >/dev/null || {
+        echo -e "\033[0;1;31mERROR: Difference in expected output files in ${crateOutput} \033[0m" >&2
+        echo === Got:
+        sed -e 's/^/  /' $actualFiles
+        echo === Expected:
+        sed -e 's/^/  /' ${expectedFilesFile}
+        echo === Diff:
+        diff -u ${expectedFilesFile} $actualFiles |\
+          tail -n +3 |\
+          sed -e 's/^/  /'
+        exit 1
+      }
+      touch $out
+      ''
+      ;
+
   in rec {
 
   tests = let
@@ -258,6 +320,64 @@ let
           ];
         };
       };
+      # Regression test for https://github.com/NixOS/nixpkgs/pull/83379
+      # link flag order should be preserved
+      linkOrder = {
+        src = symlinkJoin {
+          name = "buildrs-out-dir-overlay";
+          paths = [
+            (mkFile "build.rs" ''
+              fn main() {
+                // in the other order, linkage will fail
+                println!("cargo:rustc-link-lib=b");
+                println!("cargo:rustc-link-lib=a");
+              }
+            '')
+            (mkFile "src/main.rs" ''
+              extern "C" {
+                fn hello_world();
+              }
+              fn main() {
+                unsafe {
+                  hello_world();
+                }
+              }
+            '')
+          ];
+        };
+        buildInputs = let
+          compile = name: text: let
+            src = writeTextFile {
+              name = "${name}-src.c";
+              inherit text;
+            };
+          in runCommandCC name {} ''
+            mkdir -p $out/lib
+            # Note: On darwin (which defaults to clang) we have to add
+            # `-undefined dynamic_lookup` as otherwise the compilation fails.
+            cc -shared \
+              ${lib.optionalString stdenv.isDarwin "-undefined dynamic_lookup"} \
+              -o $out/lib/${name}${stdenv.hostPlatform.extensions.sharedLibrary} ${src}
+          '';
+          b = compile "libb" ''
+            #include <stdio.h>
+
+            void hello();
+
+            void hello_world() {
+              hello();
+              printf(" world!\n");
+            }
+          '';
+          a = compile "liba" ''
+            #include <stdio.h>
+
+            void hello() {
+              printf("hello");
+            }
+          '';
+        in [ a b ];
+      };
       rustCargoTomlInSubDir = {
         # The "workspace_member" can be set to the sub directory with the crate to build.
         # By default ".", meaning the top level directory is assumed.
@@ -294,7 +414,80 @@ let
           };
     };
     brotliCrates = (callPackage ./brotli-crates.nix {});
-  in lib.mapAttrs (key: value: mkTest (value // lib.optionalAttrs (!value?crateName) { crateName = key; })) cases // {
+    tests = lib.mapAttrs (key: value: mkTest (value // lib.optionalAttrs (!value?crateName) { crateName = key; })) cases;
+  in tests // rec {
+
+    crateBinWithPathOutputs = assertOutputs {
+      name="crateBinWithPath";
+      crateArgs = {
+        crateBin = [{ name = "test_binary1"; path = "src/foobar.rs"; }];
+        src = mkBin "src/foobar.rs";
+      };
+      expectedFiles = [
+        "./bin/test_binary1"
+      ];
+    };
+
+    crateBinWithPathOutputsDebug = assertOutputs {
+      name="crateBinWithPath";
+      crateArgs = {
+        release = false;
+        crateBin = [{ name = "test_binary1"; path = "src/foobar.rs"; }];
+        src = mkBin "src/foobar.rs";
+      };
+      expectedFiles = [
+        "./bin/test_binary1"
+      ] ++ lib.optionals stdenv.isDarwin [
+        # On Darwin, the debug symbols are in a seperate directory.
+        "./bin/test_binary1.dSYM/Contents/Info.plist"
+        "./bin/test_binary1.dSYM/Contents/Resources/DWARF/test_binary1"
+      ];
+    };
+
+    crateBinNoPath1Outputs = assertOutputs {
+      name="crateBinNoPath1";
+      crateArgs = {
+        crateBin = [{ name = "my-binary2"; }];
+        src = mkBin "src/my_binary2.rs";
+      };
+      expectedFiles = [
+        "./bin/my-binary2"
+      ];
+    };
+
+    crateLibOutputs = assertOutputs {
+      name="crateLib";
+      output="lib";
+      crateArgs = {
+        libName = "test_lib";
+        type = [ "rlib" ];
+        libPath = "src/lib.rs";
+        src = mkLib "src/lib.rs";
+      };
+      expectedFiles = [
+        "./nix-support/propagated-build-inputs"
+        "./lib/libtest_lib-042a1fdbef.rlib"
+        "./lib/link"
+      ];
+    };
+
+    crateLibOutputsDebug = assertOutputs {
+      name="crateLib";
+      output="lib";
+      crateArgs = {
+        release = false;
+        libName = "test_lib";
+        type = [ "rlib" ];
+        libPath = "src/lib.rs";
+        src = mkLib "src/lib.rs";
+      };
+      expectedFiles = [
+        "./nix-support/propagated-build-inputs"
+        "./lib/libtest_lib-042a1fdbef.rlib"
+        "./lib/link"
+      ];
+    };
+
     brotliTest = let
       pkg = brotliCrates.brotli_2_5_0 {};
     in runCommand "run-brotli-test-cmd" {
diff --git a/pkgs/build-support/rust/default.nix b/pkgs/build-support/rust/default.nix
index 7cfd03a4e26..93770d71a10 100644
--- a/pkgs/build-support/rust/default.nix
+++ b/pkgs/build-support/rust/default.nix
@@ -181,6 +181,8 @@ stdenv.mkDerivation (args // {
 
   doCheck = args.doCheck or true;
 
+  strictDeps = true;
+
   inherit releaseDir;
 
   installPhase = args.installPhase or ''
diff --git a/pkgs/build-support/setup-hooks/patch-shebangs.sh b/pkgs/build-support/setup-hooks/patch-shebangs.sh
index 29fed7ad794..b48b0c50f57 100644
--- a/pkgs/build-support/setup-hooks/patch-shebangs.sh
+++ b/pkgs/build-support/setup-hooks/patch-shebangs.sh
@@ -42,7 +42,7 @@ patchShebangs() {
     local newInterpreterLine
 
     if [ $# -eq 0 ]; then
-        echo "No arguments supplied to patchShebangs" >0
+        echo "No arguments supplied to patchShebangs" >&2
         return 0
     fi
 
@@ -66,7 +66,7 @@ patchShebangs() {
             # - options: something starting with a '-'
             # - environment variables: foo=bar
             if $(echo "$arg0" | grep -q -- "^-.*\|.*=.*"); then
-                echo "$f: unsupported interpreter directive \"$oldInterpreterLine\" (set dontPatchShebangs=1 and handle shebang patching yourself)" >0
+                echo "$f: unsupported interpreter directive \"$oldInterpreterLine\" (set dontPatchShebangs=1 and handle shebang patching yourself)" >&2
                 exit 1
             fi
 
diff --git a/pkgs/build-support/skaware/build-skaware-package.nix b/pkgs/build-support/skaware/build-skaware-package.nix
index 9e4456a3a15..e6e2e35789b 100644
--- a/pkgs/build-support/skaware/build-skaware-package.nix
+++ b/pkgs/build-support/skaware/build-skaware-package.nix
@@ -18,15 +18,12 @@ in {
 , configureFlags
   # mostly for moving and deleting files from the build directory
   # : lines
-, postInstall ? ""
-  # : lines
-, postFixup ? ""
+, postInstall
   # : list Maintainer
 , maintainers ? []
-  # : attrs
-, meta ? {}
-, ...
-} @ args:
+
+
+}:
 
 let
 
@@ -53,17 +50,24 @@ let
     "README.*"
   ];
 
-in stdenv.mkDerivation ({
+in stdenv.mkDerivation {
+  inherit pname version;
+
   src = fetchurl {
     url = "https://skarnet.org/software/${pname}/${pname}-${version}.tar.gz";
     inherit sha256;
   };
 
+  inherit outputs;
+
   dontDisableStatic = true;
   enableParallelBuilding = true;
 
   configureFlags = configureFlags ++ [
     "--enable-absolute-paths"
+    # We assume every nix-based cross target has urandom.
+    # This might not hold for e.g. BSD.
+    "--with-sysdep-devurandom=yes"
     (if stdenv.isDarwin
       then "--disable-shared"
       else "--enable-shared")
@@ -83,11 +87,13 @@ in stdenv.mkDerivation ({
        noiseFiles = commonNoiseFiles;
        docFiles = commonMetaFiles;
      }} $doc/share/doc/${pname}
-  '' + postInstall;
+
+    ${postInstall}
+  '';
 
   postFixup = ''
     ${cleanPackaging.checkForRemainingFiles}
-  '' + postFixup;
+  '';
 
   meta = {
     homepage = "https://skarnet.org/software/${pname}/";
@@ -95,9 +101,6 @@ in stdenv.mkDerivation ({
     license = stdenv.lib.licenses.isc;
     maintainers = with lib.maintainers;
       [ pmahoney Profpatsch ] ++ maintainers;
-  } // meta;
+  };
 
-} // builtins.removeAttrs args [
-  "sha256" "configureFlags" "postInstall" "postFixup"
-  "meta" "description" "platforms"  "maintainers"
-])
+}
diff --git a/pkgs/build-support/vm/default.nix b/pkgs/build-support/vm/default.nix
index 488c7f2ce2c..487a91145c5 100644
--- a/pkgs/build-support/vm/default.nix
+++ b/pkgs/build-support/vm/default.nix
@@ -1022,8 +1022,8 @@ rec {
       name = "debian-9.8-stretch-i386";
       fullName = "Debian 9.8 Stretch (i386)";
       packagesList = fetchurl {
-        url = http://snapshot.debian.org/archive/debian/20190503T090946Z/dists/stretch/main/binary-i386/Packages.xz;
-        sha256 = "1dr3skl35iyj85qlc33lq4whippbqf327vnbcyfqqrv6h86k68mw";
+        url = http://snapshot.debian.org/archive/debian/20200301T030401Z/dists/stretch/main/binary-i386/Packages.xz;
+        sha256 = "1jglr1d1jys3xddp8f7w9j05db39fah8xy4gfkpqbd1b5d2caslz";
       };
       urlPrefix = mirror://debian;
       packages = commonDebianPackages;
diff --git a/pkgs/data/documentation/gnome-user-docs/default.nix b/pkgs/data/documentation/gnome-user-docs/default.nix
index a47ec9ea790..07381a13e80 100644
--- a/pkgs/data/documentation/gnome-user-docs/default.nix
+++ b/pkgs/data/documentation/gnome-user-docs/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-user-docs";
-  version = "3.34.1";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-user-docs/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "11m9fv8k2hynrcgah4jvbm6yczg0s1ly302mipysbwpn6gbdkvf2";
+    sha256 = "0vnwya5g7fg0jhdrg9drxnx83lhk8qa2nvcrmd1sdfanlz4qfhjf";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/fonts/fira-code/default.nix b/pkgs/data/fonts/fira-code/default.nix
index 46149b0781b..71057639f97 100644
--- a/pkgs/data/fonts/fira-code/default.nix
+++ b/pkgs/data/fonts/fira-code/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchzip }:
 
 let
-  version = "2";
+  version = "3";
 in fetchzip {
   name = "fira-code-${version}";
 
@@ -13,10 +13,10 @@ in fetchzip {
     unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype
   '';
 
-  sha256 = "0kg9lrrjr6wrd4r96y0rnslnaw2276558a369qdvalwb3q1gi8d2";
+  sha256 = "19kcqqd6c61v137q88zsvf2ra154n009sbqh6zs7l8f7r5bbipj2";
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/tonsky/FiraCode;
+    homepage = "https://github.com/tonsky/FiraCode";
     description = "Monospace font with programming ligatures";
     longDescription = ''
       Fira Code is a monospace font extending the Fira Mono font with
diff --git a/pkgs/data/fonts/inconsolata-nerdfont/default.nix b/pkgs/data/fonts/inconsolata-nerdfont/default.nix
new file mode 100644
index 00000000000..b4356e73d5c
--- /dev/null
+++ b/pkgs/data/fonts/inconsolata-nerdfont/default.nix
@@ -0,0 +1,28 @@
+{ lib, fetchzip }:
+
+let
+  version = "2.0.0";
+in fetchzip {
+  name = "inconsolata-nerdfont-${version}";
+
+  url = "https://github.com/ryanoasis/nerd-fonts/releases/download/v${version}/Inconsolata.zip";
+
+  postFetch = ''
+    mkdir -p $out/share/fonts/inconsolata-nerdfont
+    unzip -j $downloadedFile -d $out/share/fonts/inconsolata-nerdfont
+  '';
+
+  sha256 = "06i1akjblqd038cn5lvz67lwp6afpv31vqcfdihp66qisgbgm4w9";
+
+  meta = with lib; {
+    description = ''
+      Nerd Fonts is a project that attempts to patch as many developer targeted
+      and/or used fonts as possible. The patch is to specifically add a high
+      number of additional glyphs from popular 'iconic fonts' such as Font
+      Awesome, Devicons, Octicons, and others.
+    '';
+    homepage = https://github.com/ryanoasis/nerd-fonts;
+    license = licenses.mit;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/data/fonts/iosevka/bin.nix b/pkgs/data/fonts/iosevka/bin.nix
index cbe4b25bd36..b801451c7be 100644
--- a/pkgs/data/fonts/iosevka/bin.nix
+++ b/pkgs/data/fonts/iosevka/bin.nix
@@ -15,7 +15,7 @@ in fetchzip {
   sha256 = "1dfm1888rii5kfmkxp5hnx8ycji57cbs5gazpgkxg1mnmn7i35wl";
 
   meta = with stdenv.lib; {
-    homepage = https://be5invis.github.io/Iosevka/;
+    homepage = "https://be5invis.github.io/Iosevka/";
     downloadPage = "https://github.com/be5invis/Iosevka/releases";
     description = ''
       Slender monospace sans-serif and slab-serif typeface inspired by Pragmata
diff --git a/pkgs/data/fonts/jetbrains-mono/default.nix b/pkgs/data/fonts/jetbrains-mono/default.nix
index 8a7e841df67..4297d15da94 100644
--- a/pkgs/data/fonts/jetbrains-mono/default.nix
+++ b/pkgs/data/fonts/jetbrains-mono/default.nix
@@ -1,14 +1,14 @@
 { lib, fetchzip }:
 
 let
-  version = "1.0.4";
+  version = "1.0.5";
 in
 fetchzip rec {
   name = "JetBrainsMono-${version}";
 
   url = "https://github.com/JetBrains/JetBrainsMono/releases/download/v${version}/JetBrainsMono-${version}.zip";
 
-  sha256 = "1m6wppz6mrh7475d92yvwrjgbwkkcfq444v0im90f5c7fsf3dzbd";
+  sha256 = "1iqqix7rr22ij0cn7vg812qs4gbjpphndgbzm57abqk658lra4kl";
 
   postFetch = ''
     mkdir -p $out/share/fonts
diff --git a/pkgs/data/fonts/joypixels/default.nix b/pkgs/data/fonts/joypixels/default.nix
index fc6481e9a89..41543729e1f 100644
--- a/pkgs/data/fonts/joypixels/default.nix
+++ b/pkgs/data/fonts/joypixels/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "joypixels";
-  version = "5.0.2";
+  version = "5.5.0";
 
   src = fetchurl {
     url = "https://cdn.joypixels.com/arch-linux/font/${version}/joypixels-android.ttf";
-    sha256 = "0javgnfsh2nfddr5flf4yzi81ar8wx2z8w1q7h4fvdng5fsrgici";
+    sha256 = "S0Y/yAps11W69poz2c3xJSX9Augexm82ZzbbCSgoeXA=";
   };
 
   dontUnpack = true;
diff --git a/pkgs/data/fonts/junicode/default.nix b/pkgs/data/fonts/junicode/default.nix
index 1cfe1d5d4b0..1e1341932f5 100644
--- a/pkgs/data/fonts/junicode/default.nix
+++ b/pkgs/data/fonts/junicode/default.nix
@@ -1,20 +1,24 @@
 { lib, fetchzip }:
 
-fetchzip {
-  name = "junicode-0.7.8";
+let
+  pname = "junicode";
+  version = "1.002";
+in fetchzip {
+  name = "${pname}-${version}";
 
-  url = mirror://sourceforge/junicode/junicode/junicode-0-7-8/junicode-0-7-8.zip;
+  url = "mirror://sourceforge/junicode/junicode/junicode-${version}/junicode-${version}.zip";
 
   postFetch = ''
     mkdir -p $out/share/fonts
     unzip -j $downloadedFile \*.ttf -d $out/share/fonts/junicode-ttf
   '';
 
-  sha256 = "0q4si9pnbif36154sv49kzc7ygivgflv81nzmblpz3b2p77g9956";
+  sha256 = "1n170gw41lr0zr5958z5cgpg6i1aa7kj7iq9s6gdh1cqq7hhgd08";
 
   meta = {
     homepage = http://junicode.sourceforge.net/;
     description = "A Unicode font for medievalists";
-    license = lib.licenses.gpl2Plus;
+    maintainers = with lib.maintainers; [ ivan-timokhin ];
+    license = lib.licenses.ofl;
   };
 }
diff --git a/pkgs/data/fonts/recursive/default.nix b/pkgs/data/fonts/recursive/default.nix
index 8aab8c0cd72..015b084aed7 100644
--- a/pkgs/data/fonts/recursive/default.nix
+++ b/pkgs/data/fonts/recursive/default.nix
@@ -1,7 +1,7 @@
 { lib, fetchzip }:
 
 let
-  version = "1.043";
+  version = "1.047";
 in
 fetchzip {
   name = "recursive-${version}";
@@ -14,7 +14,7 @@ fetchzip {
     unzip -j $downloadedFile \*.woff2 -d $out/share/fonts/woff2
   '';
 
-  sha256 = "0y7wg3ssr4j0r8dyxd0i0ji8bjvipzsqf0l6wznl5sfxk41mvjvd";
+  sha256 = "0v50m6hiv19f7i4idi987j1six6493y6hj3r9djifg075v9adxx9";
 
   meta = with lib; {
     homepage = "https://recursive.design/";
diff --git a/pkgs/data/fonts/roboto-mono/default.nix b/pkgs/data/fonts/roboto-mono/default.nix
index cfd4e3808aa..9bb65526801 100644
--- a/pkgs/data/fonts/roboto-mono/default.nix
+++ b/pkgs/data/fonts/roboto-mono/default.nix
@@ -1,53 +1,53 @@
 { stdenv, fetchurl }:
 
 let
-  # last commit on the directory containing the fonts in the upstream repository
-  commit = "883939708704a19a295e0652036369d22469e8dc";
+  # Latest commit touching the robotomono tree
+  commit = "5338537ef835a3d9ccf8faf386399f13a30605e2";
 in
 stdenv.mkDerivation {
   pname = "roboto-mono";
-  version = "2016-01-11";
+  version = "2.002-20190125";
 
   srcs = [
     (fetchurl {
       url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotomono/RobotoMono-Regular.ttf";
-      sha256 = "0r6g1xydy824xbbjilq6pvrv8611ga3q1702v5jj1ly5np6gpddz";
+      sha256 = "1f96r4by67hzqpr4p2wkrfnpj9b7x9qrmwns0312w2l2rnp2qajx";
     })
     (fetchurl {
       url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotomono/RobotoMono-Bold.ttf";
-      sha256 = "0x9qnrbd7hin873wjzrl6798bvakixd86qdw0z5b4sm56f7fjl32";
+      sha256 = "10wg4dchdq4s89r9pd4h8y5l1bf8mix32pksph2wafyr3815kfnm";
     })
     (fetchurl {
       url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotomono/RobotoMono-Italic.ttf";
-      sha256 = "17aia6hgpjvvrl79y0f67ncr5y1nhyxj0dzqwdg3dycsa4kij59q";
+      sha256 = "1cayhm3wj36q748xd0zdgrhm4pz7wnrskrlf7khxx2s41m3win5b";
     })
     (fetchurl {
       url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotomono/RobotoMono-BoldItalic.ttf";
-      sha256 = "05gqfnps6qzxgyxrrmkmw0by3j88lf88v67n8jgi2chhhm0sw40q";
+      sha256 = "04238dxizdlhnnnyzhnqckxf8ciwlnwyzxby6qgpyg232abx0n2z";
     })
     (fetchurl {
       url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotomono/RobotoMono-Medium.ttf";
-      sha256 = "0ww96qd0cyj3waxf7a98hyd4cp8snajjvjmbhr66zilql8ylfzk0";
+      sha256 = "00rh49d0dbycbkjgd2883w7iqzd6hcry08ycjipsvk091p5nq6qy";
     })
     (fetchurl {
       url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotomono/RobotoMono-MediumItalic.ttf";
-      sha256 = "1n2cvvcpwm68lazfh3s3xhj4mrc01x84mi2ackwf8ahd95fk9p5y";
+      sha256 = "0fxl6lblj7anhqmhplnpvjwckjh4g8m6r9jykxdrvpl5hk8mr65b";
     })
     (fetchurl {
       url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotomono/RobotoMono-Light.ttf";
-      sha256 = "0na2sxz3n1km1ryz002spfa65d91fm48x0qcda2ac0rly7dgaqjf";
+      sha256 = "1h8rbc2p70fabkplsafzah1wcwy92qc1wzkmc1cnb4yq28gxah4a";
     })
     (fetchurl {
       url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotomono/RobotoMono-LightItalic.ttf";
-      sha256 = "171fr8wsbmvfllsbmb9pcdax2qfzhbqzyxfn5bcrz9kx5k9x6198";
+      sha256 = "08y2qngwy61mc22f8i00gshgmcf7hwmfxh1f4j824svy4n16zhsc";
     })
     (fetchurl {
       url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotomono/RobotoMono-Thin.ttf";
-      sha256 = "0pv54afyprajb16ksm5vklc1q76iv72v427wgamqzrzyvxgn6ymj";
+      sha256 = "0fmij9zlfjiyf0vb8n8gvrwi35l830zpmkbhcy1xgx0m8za6mmmy";
     })
     (fetchurl {
       url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotomono/RobotoMono-ThinItalic.ttf";
-      sha256 = "1ziyysl09z24l735y940g92rqhn9v4npwqzajj9m1kn0xz21r1aw";
+      sha256 = "0mpwdhjnsk8311nw8fqzy1b7v0wzb4pw639ply1j38a0vibrsmn7";
     })
   ];
 
@@ -65,10 +65,10 @@ stdenv.mkDerivation {
 
   outputHashAlgo = "sha256";
   outputHashMode = "recursive";
-  outputHash = "1rd3qql779dn9nl940hf988lvv4gfy5llgrlfqq0db0c22b2yfng";
+  outputHash = "0fkx2z97k29n1392bf76iwdyz44yp86hmqah7ai6bikzlia38qa0";
 
-  meta = {
-    homepage = https://www.google.com/fonts/specimen/Roboto+Mono;
+  meta = with stdenv.lib; {
+    homepage = "https://www.google.com/fonts/specimen/Roboto+Mono";
     description = "Google Roboto Mono fonts";
     longDescription = ''
       Roboto Mono is a monospaced addition to the Roboto type family. Like
@@ -81,8 +81,8 @@ stdenv.mkDerivation {
       wider glyphs are adjusted for weight. Curved caps like 'C' and 'O'
       take on the straighter sides from Roboto Condensed.
     '';
-    license = stdenv.lib.licenses.asl20;
-    maintainers = [ stdenv.lib.maintainers.romildo ];
-    platforms = stdenv.lib.platforms.all;
+    license = licenses.asl20;
+    platforms = platforms.all;
+    maintainers = [ maintainers.romildo ];
   };
 }
diff --git a/pkgs/data/fonts/roboto-slab/default.nix b/pkgs/data/fonts/roboto-slab/default.nix
index f9f6ec342e9..1fec03b46fe 100644
--- a/pkgs/data/fonts/roboto-slab/default.nix
+++ b/pkgs/data/fonts/roboto-slab/default.nix
@@ -1,51 +1,28 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchFromGitHub }:
 
-let
-  # last commit on the directory containing the fonts in the upstream repository
-  commit = "883939708704a19a295e0652036369d22469e8dc";
-in
 stdenv.mkDerivation {
   pname = "roboto-slab";
-  version = "2016-01-11";
+  version = "2.000";
 
-  srcs = [
-    (fetchurl {
-      url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotoslab/RobotoSlab-Regular.ttf";
-      sha256 = "04180b5zk2nzll1rrgx8f1i1za66pk6pbrp0iww2xypjqra5zahk";
-    })
-    (fetchurl {
-      url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotoslab/RobotoSlab-Bold.ttf";
-      sha256 = "0ayl2hf5j33vixxfa7051hzjjxnx8zhag3rr0mmmnxpsn7md44ms";
-    })
-    (fetchurl {
-      url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotoslab/RobotoSlab-Light.ttf";
-      sha256 = "09riqgj9ixqjdb3mkzbs799cgmnp3ja3d6izlqkhpkfm52sgafqm";
-    })
-    (fetchurl {
-      url = "https://raw.githubusercontent.com/google/fonts/${commit}/apache/robotoslab/RobotoSlab-Thin.ttf";
-      sha256 = "1hd0m7lxhr261a4s2nb572ari6v53w2yd8yjr9i534iqfl4jcbsf";
-    })
-  ];
-
-  sourceRoot = "./";
-
-  unpackCmd = ''
-    ttfName=$(basename $(stripHash $curSrc))
-    cp $curSrc ./$ttfName
-  '';
+  src = fetchFromGitHub {
+    owner = "googlefonts";
+    repo = "robotoslab";
+    rev = "baeeba45e0c3ccdcfb6a70dc564785941aafef5d";
+    sha256 = "1v6z0a2xgwgf9dyj62sriy8ckwpbwlxkki6gfax1f4h4livvzpdn";
+  };
 
   installPhase = ''
     mkdir -p $out/share/fonts/truetype
-    cp -a *.ttf $out/share/fonts/truetype/
+    cp -a fonts/static/*.ttf $out/share/fonts/truetype/
   '';
 
   outputHashAlgo = "sha256";
   outputHashMode = "recursive";
-  outputHash = "0imhvisjzi0rvn32hn04kngca4szx0j39h4c4zs7ryb4wdca76q9";
+  outputHash = "0g663npi5lkvwcqafd4cjrm90ph0nv1lig7d19xzfymnj47qpj8x";
 
-  meta = {
-    homepage = https://www.google.com/fonts/specimen/Roboto+Slab;
-    description = "Google Roboto Slab fonts";
+  meta = with stdenv.lib; {
+    homepage = "https://www.google.com/fonts/specimen/Roboto+Slab";
+    description = "Roboto Slab Typeface by Google";
     longDescription = ''
       Roboto has a dual nature. It has a mechanical skeleton and the forms
       are largely geometric. At the same time, the font features friendly
@@ -57,8 +34,8 @@ stdenv.mkDerivation {
       This is the Roboto Slab family, which can be used alongside the normal
       Roboto family and the Roboto Condensed family.
     '';
-    license = stdenv.lib.licenses.asl20;
-    maintainers = [ stdenv.lib.maintainers.romildo ];
-    platforms = stdenv.lib.platforms.all;
+    license = licenses.asl20;
+    platforms = platforms.all;
+    maintainers = [ maintainers.romildo ];
   };
 }
diff --git a/pkgs/data/fonts/terminus-nerdfont/default.nix b/pkgs/data/fonts/terminus-nerdfont/default.nix
new file mode 100644
index 00000000000..3c1730146b3
--- /dev/null
+++ b/pkgs/data/fonts/terminus-nerdfont/default.nix
@@ -0,0 +1,28 @@
+{ lib, fetchzip }:
+
+let
+  version = "2.0.0";
+in fetchzip {
+  name = "terminus-nerdfont-${version}";
+
+  url = "https://github.com/ryanoasis/nerd-fonts/releases/download/v${version}/Terminus.zip";
+
+  postFetch = ''
+    mkdir -p $out/share/fonts/terminus-nerdfont
+    unzip -j $downloadedFile -d $out/share/fonts/terminus-nerdfont
+  '';
+
+  sha256 = "036i1qwwrb0r8hvcjf3h34w0g7mbsmngvrjic98jgikbz3i2f46c";
+
+  meta = with lib; {
+    description = ''
+      Nerd Fonts is a project that attempts to patch as many developer targeted
+      and/or used fonts as possible. The patch is to specifically add a high
+      number of additional glyphs from popular 'iconic fonts' such as Font
+      Awesome, Devicons, Octicons, and others.
+    '';
+    homepage = https://github.com/ryanoasis/nerd-fonts;
+    license = licenses.mit;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/data/fonts/unifont/default.nix b/pkgs/data/fonts/unifont/default.nix
index fc41263fee7..034c2583d26 100644
--- a/pkgs/data/fonts/unifont/default.nix
+++ b/pkgs/data/fonts/unifont/default.nix
@@ -4,16 +4,16 @@
 
 stdenv.mkDerivation rec {
   pname = "unifont";
-  version = "12.1.03";
+  version = "13.0.01";
 
   ttf = fetchurl {
     url = "mirror://gnu/unifont/${pname}-${version}/${pname}-${version}.ttf";
-    sha256 = "10igjlf05d97h3vcggr2ahxmq9ljby4ypja2g4s9bvxs2w1si51p";
+    sha256 = "0y5bd7i5hp9ks6d3qq0bshywba7g90i3074wckpn9m8shh98ngcg";
   };
 
   pcf = fetchurl {
     url = "mirror://gnu/unifont/${pname}-${version}/${pname}-${version}.pcf.gz";
-    sha256 = "1cd1fnk3m7giqp099kynnjj4m7q00lqm4ybqb1vzd2wi3j4a1awf";
+    sha256 = "05zgz00n514cijqh9qcvr4iz0bla4hd028cvi1jlh0ic6fkafix8";
   };
 
   nativeBuildInputs = [ libfaketime fonttosfnt mkfontscale ];
diff --git a/pkgs/data/icons/elementary-xfce-icon-theme/default.nix b/pkgs/data/icons/elementary-xfce-icon-theme/default.nix
index 221974c7941..3aebf09554c 100644
--- a/pkgs/data/icons/elementary-xfce-icon-theme/default.nix
+++ b/pkgs/data/icons/elementary-xfce-icon-theme/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-xfce-icon-theme";
-  version = "0.14";
+  version = "0.15";
 
   src = fetchFromGitHub {
     owner = "shimmerproject";
     repo = "elementary-xfce";
     rev = "v${version}";
-    sha256 = "00sk6sv0kkfb3q0jqwcllzawi30rw8nfkkfn5l1qwqha48izw3r4";
+    sha256 = "1f6qvpzxz759znishmr4b22n540y18glv41wmy91r78sa4g6x4sh";
   };
 
   nativeBuildInputs = [ pkgconfig gdk-pixbuf librsvg optipng gtk3 ];
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Elementary icons for Xfce and other GTK desktops like GNOME";
-    homepage = https://github.com/shimmerproject/elementary-xfce;
+    homepage = "https://github.com/shimmerproject/elementary-xfce";
     license = licenses.gpl2;
     # darwin cannot deal with file names differing only in case
     platforms = platforms.linux;
diff --git a/pkgs/data/icons/flat-remix-icon-theme/default.nix b/pkgs/data/icons/flat-remix-icon-theme/default.nix
index 53732c61106..65c2fe295fb 100644
--- a/pkgs/data/icons/flat-remix-icon-theme/default.nix
+++ b/pkgs/data/icons/flat-remix-icon-theme/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec  {
   pname = "flat-remix-icon-theme";
-  version = "20191122";
+  version = "20200116";
 
   src = fetchFromGitHub  {
     owner = "daniruiz";
     repo = "flat-remix";
     rev = version;
-    sha256 = "1rv35r52l7xxjpajwli0md07k3xl7xplbw919vjmsb1hhrzavzzg";
+    sha256 = "14n5wydhd5ifmsbj770s2qg2ksd3xa3m61qxydid6jq39k0lxbd8";
   };
 
   nativeBuildInputs = [ gtk3 ];
@@ -31,5 +31,4 @@ stdenv.mkDerivation rec  {
     platforms = platforms.linux;
     maintainers = with maintainers; [ mschneider ];
   };
-}
- 
+}
\ No newline at end of file
diff --git a/pkgs/data/icons/gnome-icon-theme/default.nix b/pkgs/data/icons/gnome-icon-theme/default.nix
new file mode 100644
index 00000000000..30dacbae740
--- /dev/null
+++ b/pkgs/data/icons/gnome-icon-theme/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchurl, pkgconfig, intltool, iconnamingutils, gtk2 }:
+
+stdenv.mkDerivation rec {
+  pname = "gnome-icon-theme";
+  version = "3.12.0";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/gnome-icon-theme/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "0fjh9qmmgj34zlgxb09231ld7khys562qxbpsjlaplq2j85p57im";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    intltool
+    iconnamingutils
+    gtk2
+  ];
+
+  dontDropIconThemeCache = true;
+
+  postInstall = ''
+    # remove a tree of dirs with no files within
+    rm -r "$out/share/locale"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Collection of icons for the GNOME 2 desktop";
+    homepage = "https://download.gnome.org/sources/gnome-icon-theme/";
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.romildo ];
+  };
+}
diff --git a/pkgs/data/icons/iconpack-jade/default.nix b/pkgs/data/icons/iconpack-jade/default.nix
new file mode 100644
index 00000000000..1b42c1af612
--- /dev/null
+++ b/pkgs/data/icons/iconpack-jade/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchFromGitHub, gtk3, hicolor-icon-theme }:
+
+stdenv.mkDerivation rec {
+  pname = "iconpack-jade";
+  version = "1.22";
+
+  src = fetchFromGitHub {
+    owner = "madmaxms";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1piypv8wdxnfiy6kgh7i3wi52m4fh4x874kh01qjmymssyirn17x";
+  };
+
+  nativeBuildInputs = [ gtk3 ];
+
+  propagatedBuildInputs = [ hicolor-icon-theme ];
+
+  dontDropIconThemeCache = true;
+
+  installPhase = ''
+     mkdir -p $out/share/icons
+     cp -a Jade* $out/share/icons
+  '';
+
+  postFixup = ''
+    for theme in $out/share/icons/*; do
+      gtk-update-icon-cache $theme
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Icon pack based upon Faenza and Mint-X";
+    homepage = "https://github.com/madmaxms/iconpack-jade";
+    license = licenses.lgpl3;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.romildo ];
+  };
+}
diff --git a/pkgs/data/icons/iconpack-obsidian/default.nix b/pkgs/data/icons/iconpack-obsidian/default.nix
index 96514b6a4cd..c954af9e83d 100644
--- a/pkgs/data/icons/iconpack-obsidian/default.nix
+++ b/pkgs/data/icons/iconpack-obsidian/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "iconpack-obsidian";
-  version = "4.10";
+  version = "4.11";
 
   src = fetchFromGitHub {
     owner = "madmaxms";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1imnbfrmizs0yx2165qj423y3m5vw9z33pqxmvhvs0rcwwddgqix";
+    sha256 = "18sqnrvh4bbmg3zzm78n4s2hvv8a77ilg7xa3hl94mp9qla6gasn";
   };
 
   nativeBuildInputs = [ gtk3 ];
diff --git a/pkgs/data/icons/numix-icon-theme/default.nix b/pkgs/data/icons/numix-icon-theme/default.nix
index d3bcdb12d3d..46c61d861a3 100644
--- a/pkgs/data/icons/numix-icon-theme/default.nix
+++ b/pkgs/data/icons/numix-icon-theme/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "numix-icon-theme";
-  version = "19.09.20";
+  version = "20.03.20";
 
   src = fetchFromGitHub {
     owner = "numixproject";
     repo = pname;
     rev = version;
-    sha256 = "0pn3x0mmsph777lwhg890ck366p31bjl3755h4pv161ym08d4z9w";
+    sha256 = "092f8k38xf9yz898nrangm0ia211d41z8kx0v6njfqfgpiad1s7q";
   };
 
   nativeBuildInputs = [ gtk3 ];
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Numix icon theme";
-    homepage = https://numixproject.github.io;
+    homepage = "https://numixproject.github.io";
     license = licenses.gpl3;
     # darwin cannot deal with file names differing only in case
     platforms = platforms.linux;
diff --git a/pkgs/data/icons/papirus-icon-theme/default.nix b/pkgs/data/icons/papirus-icon-theme/default.nix
index 8055b19ad63..d01410f28da 100644
--- a/pkgs/data/icons/papirus-icon-theme/default.nix
+++ b/pkgs/data/icons/papirus-icon-theme/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "papirus-icon-theme";
-  version = "20200301";
+  version = "20200405";
 
   src = fetchFromGitHub {
     owner = "PapirusDevelopmentTeam";
     repo = pname;
     rev = version;
-    sha256 = "1hknprylmd5zciaz4nkysmbb03am41r9dgnzm3r9l8qg2548js9v";
+    sha256 = "0qv4340avm5s0640r8aznbfwjzvm6k64840qggyg9jfcy6223pdy";
   };
 
   nativeBuildInputs = [ gtk3 ];
diff --git a/pkgs/data/misc/cldr-emoji-annotation/default.nix b/pkgs/data/misc/cldr-emoji-annotation/default.nix
index 4279cf8aec4..289f6d66340 100644
--- a/pkgs/data/misc/cldr-emoji-annotation/default.nix
+++ b/pkgs/data/misc/cldr-emoji-annotation/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Emoji annotation files in CLDR";
     homepage = "https://www.unicode.org/";
-    license = licenses.free; # https://www.unicode.org/license.html
+    license = licenses.unicode-dfs-2016;
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/data/misc/hackage/default.nix b/pkgs/data/misc/hackage/default.nix
index 96617bb0f27..960d1aef121 100644
--- a/pkgs/data/misc/hackage/default.nix
+++ b/pkgs/data/misc/hackage/default.nix
@@ -1,6 +1,6 @@
 { fetchurl }:
 
 fetchurl {
-  url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/fcb0ed924c8504d54870d6dc2092b9dab8305732.tar.gz";
-  sha256 = "0b7dxgj40y9svddrx14scnxls20ww4f717zhz3lwigb16dm4crpi";
+  url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/90b24a91103dca4f0df6cb28cecb205a7d7ab650.tar.gz";
+  sha256 = "1zfj8c6s9icqg83ycfvd150s4jd07ccbjg2w2mn10rx5ng76mn53";
 }
diff --git a/pkgs/data/misc/nixos-artwork/icons.nix b/pkgs/data/misc/nixos-artwork/icons.nix
index 1c14bcc9f98..caab674393a 100644
--- a/pkgs/data/misc/nixos-artwork/icons.nix
+++ b/pkgs/data/misc/nixos-artwork/icons.nix
@@ -9,5 +9,5 @@ stdenv.mkDerivation {
     sha256 = "0wp08b1gh2chs1xri43wziznyjcplx0clpsrb13wzyscv290ay5a";
   };
   makeFlags = [ "DESTDIR=$(out)" "prefix=" ];
-  buildInputs = [ imagemagick ];
+  nativeBuildInputs = [ imagemagick ];
 }
diff --git a/pkgs/data/misc/osinfo-db/default.nix b/pkgs/data/misc/osinfo-db/default.nix
index 9afe4a9e400..7fb2aa2f811 100644
--- a/pkgs/data/misc/osinfo-db/default.nix
+++ b/pkgs/data/misc/osinfo-db/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Osinfo database of information about operating systems for virtualization provisioning tools";
-    homepage = "https://libosinfo.org/";
+    homepage = "https://gitlab.com/libosinfo/osinfo-db/";
     license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/data/misc/scowl/default.nix b/pkgs/data/misc/scowl/default.nix
index f15a7534e26..686582b48ce 100644
--- a/pkgs/data/misc/scowl/default.nix
+++ b/pkgs/data/misc/scowl/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "scowl";
-  version = "2018.04.16";
+  version = "2019.10.06";
 
   src = fetchFromGitHub {
     owner = "en-wl";
     repo = "wordlist";
     rev = "rel-${version}";
-    sha256 = "0p0hgg5y88bb802z210cdk1c4fjwlpxxkci6yph3fk7g6s9xc73g";
+    sha256 = "1daag7h63gdijp1lv3v93bx5kmcb5zsyydsd57kv0a6kk3vs819x";
   };
 
   postPatch = ''
diff --git a/pkgs/data/misc/unicode-character-database/default.nix b/pkgs/data/misc/unicode-character-database/default.nix
index 1eda25fbe2b..e52f21713ed 100644
--- a/pkgs/data/misc/unicode-character-database/default.nix
+++ b/pkgs/data/misc/unicode-character-database/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Unicode Character Database";
     homepage = "https://www.unicode.org/";
-    license = licenses.free; # https://www.unicode.org/license.html
+    license = licenses.unicode-dfs-2016;
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/data/misc/unicode-emoji/default.nix b/pkgs/data/misc/unicode-emoji/default.nix
index 05472b26d88..b7705d7ee5b 100644
--- a/pkgs/data/misc/unicode-emoji/default.nix
+++ b/pkgs/data/misc/unicode-emoji/default.nix
@@ -53,7 +53,7 @@ symlinkJoin rec {
   meta = with stdenv.lib; {
     description = "Unicode Emoji Data Files";
     homepage = "https://home.unicode.org/emoji/";
-    license = licenses.free; # https://www.unicode.org/license.html
+    license = licenses.unicode-dfs-2016;
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/data/misc/unihan-database/default.nix b/pkgs/data/misc/unihan-database/default.nix
index 77da77242a9..d5d62403cc3 100644
--- a/pkgs/data/misc/unihan-database/default.nix
+++ b/pkgs/data/misc/unihan-database/default.nix
@@ -32,7 +32,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Unicode Han Database";
     homepage = "https://www.unicode.org/";
-    license = licenses.free; # https://www.unicode.org/license.html
+    license = licenses.unicode-dfs-2016;
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/data/themes/ant-theme/ant-bloody.nix b/pkgs/data/themes/ant-theme/ant-bloody.nix
index 4ec1c3281d5..3c540889c13 100644
--- a/pkgs/data/themes/ant-theme/ant-bloody.nix
+++ b/pkgs/data/themes/ant-theme/ant-bloody.nix
@@ -16,8 +16,6 @@ stdenv.mkDerivation rec {
     gtk-engine-murrine
   ];
 
-  dontBuild = true;
-
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/themes/${themeName}
@@ -26,10 +24,6 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
-  outputHashAlgo = "sha256";
-  outputHashMode = "recursive";
-  outputHash = "0v5pdhysa2460sh400cpq11smcfsi9g1lbfzx8nj1w5a21d811cz";
-
   meta = with stdenv.lib; {
     description = "Bloody variant of the Ant theme";
     homepage = "https://github.com/EliverLara/${themeName}";
diff --git a/pkgs/data/themes/ant-theme/ant-dracula.nix b/pkgs/data/themes/ant-theme/ant-dracula.nix
index baeafb25527..e365ab94c30 100644
--- a/pkgs/data/themes/ant-theme/ant-dracula.nix
+++ b/pkgs/data/themes/ant-theme/ant-dracula.nix
@@ -16,8 +16,6 @@ stdenv.mkDerivation rec {
     gtk-engine-murrine
   ];
 
-  dontBuild = true;
-
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/themes/${themeName}
@@ -26,10 +24,6 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
-  outputHashAlgo = "sha256";
-  outputHashMode = "recursive";
-  outputHash = "1a9mkxfb0zixx8s05h15lhnnzygh2qzc8k2q10i0khx90bf72x14";
-
   meta = with stdenv.lib; {
     description = "Dracula variant of the Ant theme";
     homepage = "https://github.com/EliverLara/${themeName}";
diff --git a/pkgs/data/themes/ant-theme/ant-nebula.nix b/pkgs/data/themes/ant-theme/ant-nebula.nix
index 75aeb91f902..03ee3b5d2d4 100644
--- a/pkgs/data/themes/ant-theme/ant-nebula.nix
+++ b/pkgs/data/themes/ant-theme/ant-nebula.nix
@@ -16,8 +16,6 @@ stdenv.mkDerivation rec {
     gtk-engine-murrine
   ];
 
-  dontBuild = true;
-
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/themes/${themeName}
@@ -26,10 +24,6 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
-  outputHashAlgo = "sha256";
-  outputHashMode = "recursive";
-  outputHash = "1lmlc4fvjnp05gshc0arfysh8r1xxzpzdv3j0bk40mjf3d59814c";
-
   meta = with stdenv.lib; {
     description = "Nebula variant of the Ant theme";
     homepage = "https://github.com/EliverLara/${themeName}";
diff --git a/pkgs/data/themes/ant-theme/ant.nix b/pkgs/data/themes/ant-theme/ant.nix
index 0908883e20e..736c8a1aa6a 100644
--- a/pkgs/data/themes/ant-theme/ant.nix
+++ b/pkgs/data/themes/ant-theme/ant.nix
@@ -16,8 +16,6 @@ stdenv.mkDerivation rec {
     gtk-engine-murrine
   ];
 
-  dontBuild = true;
-
   installPhase = ''
     runHook preInstall
     mkdir -p $out/share/themes/${themeName}
@@ -26,10 +24,6 @@ stdenv.mkDerivation rec {
     runHook postInstall
   '';
 
-  outputHashAlgo = "sha256";
-  outputHashMode = "recursive";
-  outputHash = "07iv4jangqnzrvjr749vl3x31z7dxds51bq1bhz5acbjbwf25wjf";
-
   meta = with stdenv.lib; {
     description = "A flat and light theme with a modern look";
     homepage = "https://github.com/EliverLara/${themeName}";
diff --git a/pkgs/data/themes/arc/default.nix b/pkgs/data/themes/arc/default.nix
index 8dcfacadb49..200ce5f6061 100644
--- a/pkgs/data/themes/arc/default.nix
+++ b/pkgs/data/themes/arc/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
   '';
 
   configureFlags = [
-    "--with-gnome-shell=${stdenv.lib.versions.majorMinor gnome3.gnome-shell.version}"
+    "--disable-gnome-shell" # 3.36 not supported
     "--disable-unity"
   ];
 
diff --git a/pkgs/data/themes/greybird/default.nix b/pkgs/data/themes/greybird/default.nix
index cc665749d3c..794034af7e7 100644
--- a/pkgs/data/themes/greybird/default.nix
+++ b/pkgs/data/themes/greybird/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "greybird";
-  version = "3.22.11";
+  version = "3.22.12";
 
   src = fetchFromGitHub {
     owner = "shimmerproject";
     repo = pname;
     rev = "v${version}";
-    sha256 = "00x7dcjldph9k0nmvc8hyh3k4lhbmwk791rywd89ry6jivrx40pc";
+    sha256 = "1j66ddvl3pmwh2v8ajm8r5g5nbsr7r262ff1qn2nf3i0gy8b3lq8";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/data/themes/jade1/default.nix b/pkgs/data/themes/jade1/default.nix
index cba38cb297a..7398c417933 100644
--- a/pkgs/data/themes/jade1/default.nix
+++ b/pkgs/data/themes/jade1/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "theme-jade1";
-  version = "1.6";
+  version = "1.7";
 
   src = fetchFromGitHub {
     owner = "madmaxms";
     repo = "theme-jade-1";
     rev = "v${version}";
-    sha256 = "1lnajrsikw6dljf6dvgmj8aqwywmgdp34h3xsc0xiyq07arhp606";
+    sha256 = "19vg95bf0ylmfhg0frs2k0k7c0wfn933h06wrklb9p5qy84hfig3";
   };
 
   propagatedUserEnvPkgs = [ gtk-engine-murrine ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "Fork of the original Linux Mint theme with dark menus, more intensive green and some other modifications";
+    description = "Based on Linux Mint theme with dark menus and more intensive green";
     homepage = "https://github.com/madmaxms/theme-jade-1";
     license = with licenses; [ gpl3 ];
     platforms = platforms.linux;
diff --git a/pkgs/data/themes/matcha/default.nix b/pkgs/data/themes/matcha/default.nix
index c2274c57bbf..75d31acb83f 100644
--- a/pkgs/data/themes/matcha/default.nix
+++ b/pkgs/data/themes/matcha/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "matcha";
-  version = "2020-03-15";
+  version = "2020-04-03";
 
   src = fetchFromGitHub {
     owner = "vinceliuice";
     repo = pname;
     rev = version;
-    sha256 = "0hj1hpg9p46hyfcssd5ac7m599zkq7nrbwdwfbp98g5rw4fq8jaw";
+    sha256 = "0arnc12zsbypv550dv5j22z4hkc58yncxqhc03xcmxjw1h8lzrwv";
   };
 
   buildInputs = [ gdk-pixbuf librsvg ];
diff --git a/pkgs/data/themes/obsidian2/default.nix b/pkgs/data/themes/obsidian2/default.nix
index 452ee0f8897..25d6218e4bf 100644
--- a/pkgs/data/themes/obsidian2/default.nix
+++ b/pkgs/data/themes/obsidian2/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "theme-obsidian2";
-  version = "2.10";
+  version = "2.11";
 
   src = fetchFromGitHub {
     owner = "madmaxms";
     repo = "theme-obsidian-2";
     rev = "v${version}";
-    sha256 = "123f6hpz0h5xfmas44xa1ci68w8f3lcjj54jpnrqhsww66c9vs0i";
+    sha256 = "0n64cml2h8dw2m2m6j90d515saqapqzjz6xcv4kr544ibv62hn61";
   };
 
   propagatedUserEnvPkgs = [ gtk-engine-murrine ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Gnome theme, based upon Adwaita-Maia dark skin";
-    homepage = https://github.com/madmaxms/theme-obsidian-2;
+    homepage = "https://github.com/madmaxms/theme-obsidian-2";
     license = with licenses; [ gpl3 ];
     platforms = platforms.linux;
     maintainers = [ maintainers.romildo ];
diff --git a/pkgs/desktops/cinnamon/cinnamon-session/0001-Add-dbus_glib-dependency.patch b/pkgs/desktops/cinnamon/cinnamon-session/0001-Add-dbus_glib-dependency.patch
new file mode 100644
index 00000000000..156573c30e9
--- /dev/null
+++ b/pkgs/desktops/cinnamon/cinnamon-session/0001-Add-dbus_glib-dependency.patch
@@ -0,0 +1,38 @@
+From ddc2c4faeec36675654a2f8f04c3011b807fdf79 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Maciej=20Kr=C3=BCger?= <mkg20001@gmail.com>
+Date: Sun, 22 Mar 2020 07:36:25 +0100
+Subject: [PATCH] Add dbus_glib dependency
+
+---
+ cinnamon-session/meson.build | 2 +-
+ meson.build                  | 1 +
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/cinnamon-session/meson.build b/cinnamon-session/meson.build
+index ee8916f..9dd9283 100644
+--- a/cinnamon-session/meson.build
++++ b/cinnamon-session/meson.build
+@@ -74,7 +74,7 @@ executable('cinnamon-session',
+     xext,
+     xrender,
+     xtest,
+-    # elogind,
++    dbus_glib,
+   ],
+   link_with: [
+     libegg,
+diff --git a/meson.build b/meson.build
+index 231a448..db306dc 100644
+--- a/meson.build
++++ b/meson.build
+@@ -48,6 +48,7 @@ else
+   gconf     = dependency('', required: false)
+ endif
+ conf.set('HAVE_GCONF', gconf.found())
++dbus_glib = dependency('dbus-glib-1')
+ 
+ 
+ gio_unix    = dependency('gio-unix-2.0',      required: false)
+-- 
+2.25.1
+
diff --git a/pkgs/desktops/cinnamon/cinnamon-session/default.nix b/pkgs/desktops/cinnamon/cinnamon-session/default.nix
new file mode 100644
index 00000000000..56ff4b106e3
--- /dev/null
+++ b/pkgs/desktops/cinnamon/cinnamon-session/default.nix
@@ -0,0 +1,105 @@
+{ fetchFromGitHub
+, cinnamon-desktop
+, cinnamon-settings-daemon
+, dbus-glib
+, docbook_xsl
+, docbook_xml_dtd_412
+, glib
+, gsettings-desktop-schemas
+, gtk3
+, libcanberra
+, libxslt
+, makeWrapper
+, meson
+, ninja
+, pkgconfig
+, python3
+, stdenv
+, systemd
+, wrapGAppsHook
+, xapps
+, xmlto
+, xorg
+, cmake
+, libexecinfo
+, pango
+}:
+
+stdenv.mkDerivation rec {
+  pname = "cinnamon-session";
+  version = "4.4.0";
+
+  src = fetchFromGitHub {
+    owner = "linuxmint";
+    repo = pname;
+    rev = version;
+    sha256 = "0hplck17rksfgqm2z58ajvz4p2m4zg6ksdpbc27ki20iv4fv620s";
+  };
+
+  patches = [
+    ./0001-Add-dbus_glib-dependency.patch
+  ];
+
+  buildInputs = [
+    # meson.build
+    gtk3
+    glib
+    libcanberra
+    pango
+    xorg.libX11
+    xorg.libXext
+    xapps
+    xorg.libXau
+    xorg.libXcomposite
+
+    systemd
+
+    xorg.libXtst
+    xorg.libXrender
+    xorg.xtrans
+
+    # other (not meson.build)
+
+    cinnamon-desktop
+    cinnamon-settings-daemon
+    dbus-glib
+    glib
+    gsettings-desktop-schemas
+  ];
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    wrapGAppsHook
+    libexecinfo
+    docbook_xsl
+    docbook_xml_dtd_412
+    python3
+    pkgconfig
+    libxslt
+    xmlto
+  ];
+
+  # TODO: https://github.com/NixOS/nixpkgs/issues/36468
+  mesonFlags = [ "-Dc_args=-I${glib.dev}/include/gio-unix-2.0" "-Dgconf=false" "-DENABLE_IPV6=true" ];
+
+  postPatch = ''
+    chmod +x data/meson_install_schemas.py # patchShebangs requires executable file
+    patchShebangs data/meson_install_schemas.py
+  '';
+
+  preFixup = ''
+    gappsWrapperArgs+=(
+      --prefix XDG_DATA_DIRS : "${cinnamon-desktop}/share"
+      --prefix XDG_CONFIG_DIRS : "${cinnamon-settings-daemon}/etc/xdg"
+    )
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/linuxmint/cinnamon-session";
+    description = "The Cinnamon session manager";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.mkg20001 ];
+  };
+}
diff --git a/pkgs/desktops/cinnamon/default.nix b/pkgs/desktops/cinnamon/default.nix
index 802c0bdaa88..b08c9e468f8 100644
--- a/pkgs/desktops/cinnamon/default.nix
+++ b/pkgs/desktops/cinnamon/default.nix
@@ -5,9 +5,12 @@ lib.makeScope pkgs.newScope (self: with self; {
   cinnamon-desktop = callPackage ./cinnamon-desktop { };
   cinnamon-menus = callPackage ./cinnamon-menus { };
   cinnamon-translations = callPackage ./cinnamon-translations { };
+  cinnamon-session = callPackage ./cinnamon-session { };
   cinnamon-settings-daemon = callPackage ./cinnamon-settings-daemon { };
   cjs = callPackage ./cjs { };
   nemo = callPackage ./nemo { };
+  mint-themes = callPackage ./mint-themes { };
+  mint-y-icons = callPackage ./mint-y-icons { };
   muffin = callPackage ./muffin { };
   xapps = callPackage ./xapps { };
 })
diff --git a/pkgs/desktops/cinnamon/mint-themes/default.nix b/pkgs/desktops/cinnamon/mint-themes/default.nix
new file mode 100644
index 00000000000..770baf77bcd
--- /dev/null
+++ b/pkgs/desktops/cinnamon/mint-themes/default.nix
@@ -0,0 +1,41 @@
+{ fetchFromGitHub
+, stdenv
+, python3
+, sassc
+, sass
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mint-themes";
+  version = "1.8.0";
+
+  src = fetchFromGitHub {
+    owner = "linuxmint";
+    repo = pname;
+    rev = version;
+    sha256 = "0a8f2cmcl00y4607v5qr2zdcdjc0z74ixm2yakscvw6qzgsh9fac";
+  };
+
+  nativeBuildInputs = [
+    python3
+    sassc
+    sass
+  ];
+
+  preBuild = ''
+    patchShebangs .
+  '';
+
+  installPhase = ''
+    mkdir -p $out
+    mv usr/share $out
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/linuxmint/mint-themes";
+    description = "Mint-X and Mint-Y themes for the cinnamon desktop";
+    license = licenses.gpl3; # from debian/copyright
+    platforms = platforms.linux;
+    maintainers = [ maintainers.mkg20001 ];
+  };
+}
diff --git a/pkgs/desktops/cinnamon/mint-y-icons/default.nix b/pkgs/desktops/cinnamon/mint-y-icons/default.nix
new file mode 100644
index 00000000000..d4415c4bf04
--- /dev/null
+++ b/pkgs/desktops/cinnamon/mint-y-icons/default.nix
@@ -0,0 +1,46 @@
+{ fetchFromGitHub
+, stdenv
+, gnome3
+, hicolor-icon-theme
+, gtk3
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mint-y-icons";
+  version = "unstable-2020-03-21";
+
+  src = fetchFromGitHub {
+    owner = "linuxmint";
+    repo = pname;
+    rev = "f169a617bc344cb0b480b2b72f54cdd06af05255";
+    sha256 = "1c2a79ylk363i982czwwqcwc7cw6dyzlqphcypqm6nll7xlafq8s";
+  };
+
+  propagatedUserEnvPkgs = [
+    gnome3.adwaita-icon-theme
+    hicolor-icon-theme
+  ];
+
+  nativeBuildInputs = [
+    gtk3
+  ];
+
+  postFixup =  ''
+    gtk-update-icon-cache $out/share/icons/*
+  '';
+
+  dontDropIconThemeCache = true;
+
+  installPhase = ''
+    mkdir -p $out
+    mv usr/share $out
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/linuxmint/mint-y-icons";
+    description = "The Mint-Y icon theme";
+    license = licenses.gpl3; # from debian/copyright
+    platforms = platforms.linux;
+    maintainers = [ maintainers.mkg20001 ];
+  };
+}
diff --git a/pkgs/desktops/deepin/dde-api/default.nix b/pkgs/desktops/deepin/dde-api/default.nix
index c4082ce454c..3c0718570d0 100644
--- a/pkgs/desktops/deepin/dde-api/default.nix
+++ b/pkgs/desktops/deepin/dde-api/default.nix
@@ -43,28 +43,31 @@ buildGoPackage rec {
     pkgconfig
     deepin-gettext-tools # build
     dbus-factory         # build
-    go-dbus-factory      # needed
-    go-gir-generator     # needed
-    go-lib               # build
     deepin.setupHook
-  ];
 
-  buildInputs = [
-    alsaLib     # needed
+    # TODO: using $PATH to find run time executable does not work with cross compiling
     bc          # run (to adjust grub theme?)
     blur-effect # run (is it really needed?)
     coreutils   # run (is it really needed?)
     fontconfig  # run (is it really needed?)
-    #glib        # ? arch
+    rfkill      # run
+    xcur2png    # run
     grub2       # run (is it really needed?)
+  ];
+
+  buildInputs = [
+    go-dbus-factory      # needed
+    go-gir-generator     # needed
+    go-lib               # build
+
+    alsaLib     # needed
+    #glib        # ? arch
     gtk3        # build run
     libcanberra # build run
     libgudev    # needed
     librsvg     # build run
     poppler     # build run
     pulseaudio  # needed
-    rfkill      # run
-    xcur2png    # run
     #locales     # run (locale-helper needs locale-gen, which is unavailable on NixOS?)
   ];
 
diff --git a/pkgs/desktops/deepin/dde-daemon/default.nix b/pkgs/desktops/deepin/dde-daemon/default.nix
index b5460029f78..6e5435315e3 100644
--- a/pkgs/desktops/deepin/dde-daemon/default.nix
+++ b/pkgs/desktops/deepin/dde-daemon/default.nix
@@ -1,6 +1,6 @@
 { stdenv, buildGoPackage, fetchFromGitHub, fetchpatch, pkgconfig,
   dbus-factory, go-dbus-factory, go-gir-generator, go-lib,
-  deepin-gettext-tools, dde-api, deepin-desktop-schemas,
+  deepin-gettext-tools, gettext, dde-api, deepin-desktop-schemas,
   deepin-wallpapers, deepin-desktop-base, alsaLib, glib, gtk3,
   libgudev, libinput, libnl, librsvg, linux-pam, networkmanager,
   pulseaudio, python3, hicolor-icon-theme, glibc, tzdata, go,
@@ -34,11 +34,8 @@ buildGoPackage rec {
   nativeBuildInputs = [
     pkgconfig
     dbus-factory
-    go-dbus-factory
-    go-gir-generator
-    go-lib
     deepin-gettext-tools
-    linux-pam
+    gettext
     networkmanager
     networkmanager.dev
     python3
@@ -48,6 +45,11 @@ buildGoPackage rec {
   ];
 
   buildInputs = [
+    go-dbus-factory
+    go-gir-generator
+    go-lib
+    linux-pam
+
     alsaLib
     dde-api
     deepin-desktop-base
diff --git a/pkgs/desktops/deepin/deepin-terminal/default.nix b/pkgs/desktops/deepin/deepin-terminal/default.nix
index 049c856419d..93e81bf6a6f 100644
--- a/pkgs/desktops/deepin/deepin-terminal/default.nix
+++ b/pkgs/desktops/deepin/deepin-terminal/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pkgconfig, cmake, ninja, vala_0_40,
+{ stdenv, fetchFromGitHub, pkgconfig, cmake, ninja, vala_0_40, fetchpatch,
   gettext, at-spi2-core, dbus, epoxy, expect, gtk3, json-glib,
   libXdmcp, libgee, libpthreadstubs, librsvg, libsecret, libtasn1,
   libxcb, libxkbcommon, p11-kit, pcre, vte, wnck, libselinux, gnutls, pcre2,
@@ -15,6 +15,14 @@ stdenv.mkDerivation rec {
     sha256 = "1929saj828b438d07caw3cjhqq60v6gni7mi3fqrg9wdjz81xwv7";
   };
 
+  patches = [
+    # Fix build with VTE 0.60
+    (fetchpatch {
+      url = "https://github.com/linuxdeepin/deepin-terminal/commit/542d1035b609698ee81aa7971d20ca8e5930743d.patch";
+      sha256 = "1pihiy70yc25fm5fx7i7v9gmi65v4mhldvi7xwv8rgr2z6hbfj41";
+    })
+  ];
+
   nativeBuildInputs = [
     pkgconfig
     cmake
diff --git a/pkgs/desktops/deepin/go-gir-generator/default.nix b/pkgs/desktops/deepin/go-gir-generator/default.nix
index 5a10efa1932..c499d4a1fb4 100644
--- a/pkgs/desktops/deepin/go-gir-generator/default.nix
+++ b/pkgs/desktops/deepin/go-gir-generator/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pkgconfig, go, gobject-introspection,
+{ stdenv, fetchpatch, fetchFromGitHub, pkgconfig, go, gobject-introspection,
   libgudev, deepin }:
 
 stdenv.mkDerivation rec {
@@ -12,6 +12,15 @@ stdenv.mkDerivation rec {
     sha256 = "1ydzll8zlk897iqcihvv6p046p0rzr4qqz2drmz2nx95njp8n03a";
   };
 
+  patches = [
+    # Fix compatibility with glib 2.63+
+    # https://github.com/linuxdeepin/go-gir-generator/pull/11
+    (fetchpatch {
+      url = "https://github.com/linuxdeepin/go-gir-generator/commit/7dea15a1a491f28d2ac8c411068ccefeba01aae3.patch";
+      sha256 = "7bn/mtruCcK+AIXMzhN2e3o7CuzuJ3mtTz0HOTEYTaA=";
+    })
+  ];
+
   nativeBuildInputs = [
     pkgconfig
     go
diff --git a/pkgs/desktops/deepin/startdde/default.nix b/pkgs/desktops/deepin/startdde/default.nix
index 137b3f690a6..92000882616 100644
--- a/pkgs/desktops/deepin/startdde/default.nix
+++ b/pkgs/desktops/deepin/startdde/default.nix
@@ -27,16 +27,16 @@ buildGoPackage rec {
   nativeBuildInputs = [
     pkgconfig
     dbus-factory
-    dde-api
-    go-dbus-factory
-    go-gir-generator
-    go-lib
     jq
     wrapGAppsHook
     deepin.setupHook
   ];
 
   buildInputs = [
+    dde-api
+    go-dbus-factory
+    go-gir-generator
+    go-lib
     alsaLib
     dde-daemon
     dde-dock
diff --git a/pkgs/desktops/gnome-2/default.nix b/pkgs/desktops/gnome-2/default.nix
index d0a7a890355..4212fa68bd4 100644
--- a/pkgs/desktops/gnome-2/default.nix
+++ b/pkgs/desktops/gnome-2/default.nix
@@ -60,8 +60,6 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   gtksourceview = callPackage ./desktop/gtksourceview { };
 
-  gnome_icon_theme = callPackage ./desktop/gnome-icon-theme { };
-
   vte = callPackage ./desktop/vte { };
 
 #### BINDINGS
@@ -87,6 +85,8 @@ lib.makeScope pkgs.newScope (self: with self; {
   startup_notification = pkgs.libstartup_notification;
   startupnotification = pkgs.libstartup_notification;
   gnomedocutils = pkgs.gnome-doc-utils;
-  gnomeicontheme = self.gnome_icon_theme;
+  gnome-icon-theme = pkgs.gnome-icon-theme;
+  gnome_icon_theme = self.gnome-icon-theme;
+  gnomeicontheme = self.gnome-icon-theme;
   gnome_common = gnome-common;
 })
diff --git a/pkgs/desktops/gnome-2/desktop/gnome-icon-theme/default.nix b/pkgs/desktops/gnome-2/desktop/gnome-icon-theme/default.nix
deleted file mode 100644
index 0f2a98c61f6..00000000000
--- a/pkgs/desktops/gnome-2/desktop/gnome-icon-theme/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, intltool, iconnamingutils, gtk2 }:
-
-stdenv.mkDerivation rec {
-  name = "gnome-icon-theme-2.91.93";
-
-  src = fetchurl {
-    #url = "mirror://gnome/sources/gnome-icon-theme/3.4/${name}.tar.xz";
-    url = "mirror://gnome/sources/gnome-icon-theme/2.91/${name}.tar.bz2";
-    sha256 = "cc7f15e54e2640697b58c26e74cc3f6ebadeb4ef6622bffe9c1e6874cc3478d6";
-  };
-
-  nativeBuildInputs = [ pkgconfig intltool iconnamingutils gtk2 ];
-
-  # remove a tree of dirs with no files within
-  postInstall = '' rm -r "$out/share/locale" '';
-
-  meta = {
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/desktops/gnome-2/desktop/mail-notification/default.nix b/pkgs/desktops/gnome-2/desktop/mail-notification/default.nix
index c12d50d792f..5a81c1bcb1a 100644
--- a/pkgs/desktops/gnome-2/desktop/mail-notification/default.nix
+++ b/pkgs/desktops/gnome-2/desktop/mail-notification/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pkgconfig, glib, gnome2, dbus-glib, gmime, libnotify, libgnome-keyring, openssl, cyrus_sasl, gnonlin, sylpheed, gob2, gettext, intltool, libxml2, hicolor-icon-theme, tango-icon-theme }:
+{ stdenv, fetchFromGitHub, pkgconfig, glib, gnome2, dbus-glib, gmime, gnome-icon-theme, libnotify, libgnome-keyring, openssl, cyrus_sasl, gnonlin, sylpheed, gob2, gettext, intltool, libxml2, hicolor-icon-theme, tango-icon-theme }:
 
 stdenv.mkDerivation rec {
   rev = "9ae8768";
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkgconfig ];
-   buildInputs = [ glib dbus-glib gmime libnotify libgnome-keyring openssl cyrus_sasl gnonlin sylpheed gob2 gettext intltool gnome2.GConf gnome2.libgnomeui dbus-glib gmime libnotify gnome2.scrollkeeper libxml2 gnome2.gnome_icon_theme hicolor-icon-theme tango-icon-theme ];
+   buildInputs = [ glib dbus-glib gmime libnotify libgnome-keyring openssl cyrus_sasl gnonlin sylpheed gob2 gettext intltool gnome2.GConf gnome2.libgnomeui dbus-glib gmime libnotify gnome2.scrollkeeper libxml2 gnome-icon-theme hicolor-icon-theme tango-icon-theme ];
 
   prePatch = ''
     sed -i  -e '/jb_rule_set_install_message/d' -e '/jb_rule_add_install_command/d' jbsrc/jb.c
diff --git a/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix b/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix
index 33c2abef0fa..f4d6cb534bc 100644
--- a/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix
+++ b/pkgs/desktops/gnome-2/platform/gtkhtml/4.x.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, gtk3, intltool
-, GConf, enchant, isocodes, gnome_icon_theme, gsettings-desktop-schemas }:
+, GConf, enchant, isocodes, gnome-icon-theme, gsettings-desktop-schemas }:
 
 stdenv.mkDerivation rec {
   version = "4.10.0";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "1hq6asgb5n9q3ryx2vngr4jyi8lg65lzpnlgrgcwayiczcj68fya";
   };
 
-  propagatedBuildInputs = [ gsettings-desktop-schemas gtk3 gnome_icon_theme GConf ];
+  propagatedBuildInputs = [ gsettings-desktop-schemas gtk3 gnome-icon-theme GConf ];
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ intltool enchant isocodes ];
 }
diff --git a/pkgs/desktops/gnome-2/platform/gtkhtml/default.nix b/pkgs/desktops/gnome-2/platform/gtkhtml/default.nix
index 3c89f9ff0fc..57a000351cf 100644
--- a/pkgs/desktops/gnome-2/platform/gtkhtml/default.nix
+++ b/pkgs/desktops/gnome-2/platform/gtkhtml/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, gtk2, intltool,
-GConf, enchant, isocodes, gnome_icon_theme }:
+GConf, enchant, isocodes, gnome-icon-theme }:
 
 stdenv.mkDerivation rec {
   name = "gtkhtml-3.32.2";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   patches = [ ./01_remove-disable-deprecated.patch ];
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ gtk2 intltool GConf enchant isocodes gnome_icon_theme ];
+  buildInputs = [ gtk2 intltool GConf enchant isocodes gnome-icon-theme ];
 
   NIX_LDFLAGS = "-lgthread-2.0";
 }
diff --git a/pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix b/pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix
index 215c9eb3e5e..bd74fe335eb 100644
--- a/pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix
+++ b/pkgs/desktops/gnome-2/platform/libgnomeprintui/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, pkgconfig, gtk2, gettext, intltool, libgnomecanvas, libgnomeprint, gnome_icon_theme}:
+{stdenv, fetchurl, pkgconfig, gtk2, gettext, intltool, libgnomecanvas, libgnomeprint, gnome-icon-theme}:
 
 stdenv.mkDerivation {
   name = "libgnomeprintui-2.18.6";
@@ -9,5 +9,5 @@ stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ gtk2 gettext intltool libgnomecanvas libgnomeprint gnome_icon_theme];
+  buildInputs = [ gtk2 gettext intltool libgnomecanvas libgnomeprint gnome-icon-theme];
 }
diff --git a/pkgs/desktops/gnome-3/apps/accerciser/default.nix b/pkgs/desktops/gnome-3/apps/accerciser/default.nix
index 41b40244f57..0ceafeea439 100644
--- a/pkgs/desktops/gnome-3/apps/accerciser/default.nix
+++ b/pkgs/desktops/gnome-3/apps/accerciser/default.nix
@@ -17,13 +17,13 @@
 
  python3.pkgs.buildPythonApplication rec {
   name = "accerciser-${version}";
-  version = "3.34.4";
+  version = "3.36.0";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/accerciser/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "0f1dixq5hc55dl3y0fr85bkrc2zk08n4dacqcjifij1dys4ks3z1";
+    sha256 = "1iwi7mnayw1f90s439flh0zkgmj4qx10dzgj38nd5f3wvqmhabk3";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/apps/evolution/default.nix b/pkgs/desktops/gnome-3/apps/evolution/default.nix
index 60c7fc3872b..971c16dee5e 100644
--- a/pkgs/desktops/gnome-3/apps/evolution/default.nix
+++ b/pkgs/desktops/gnome-3/apps/evolution/default.nix
@@ -43,11 +43,11 @@
 
 stdenv.mkDerivation rec {
   pname = "evolution";
-  version = "3.34.4";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/evolution/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "136vpaq94ymyn8pf3a3z1w45xlk1xbvwjdnzasq0d7iwbac0jwks";
+    sha256 = "1f3cwc05gw75yqficcxns95r96lv7an4aih6d7hng3n3pqfwyfl7";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/apps/file-roller/default.nix b/pkgs/desktops/gnome-3/apps/file-roller/default.nix
index 57c7a93a533..b6e59203182 100644
--- a/pkgs/desktops/gnome-3/apps/file-roller/default.nix
+++ b/pkgs/desktops/gnome-3/apps/file-roller/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "file-roller";
-  version = "3.32.4";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/file-roller/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "05s046br4fcli1d3wngh4jmwi0aikpfkl1px1cahskj4rfzjqfqv";
+    sha256 = "0p22jxcagamvp08xfglz4cz1sp8w4p101npw0ggrkhh7vm8yb9bh";
   };
 
   LANG = "en_US.UTF-8"; # postinstall.py
diff --git a/pkgs/desktops/gnome-3/apps/gedit/default.nix b/pkgs/desktops/gnome-3/apps/gedit/default.nix
index 6ea04910d23..c63a51324f0 100644
--- a/pkgs/desktops/gnome-3/apps/gedit/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gedit/default.nix
@@ -1,20 +1,21 @@
 { stdenv, meson, fetchurl, python3
 , pkgconfig, gtk3, glib, adwaita-icon-theme
 , libpeas, gtksourceview4, gsettings-desktop-schemas
-, wrapGAppsHook, ninja, libsoup, libxml2
-, gnome3, gspell, perl, itstool, desktop-file-utils }:
+, wrapGAppsHook, ninja, libsoup, tepl
+, gnome3, gspell, perl, itstool, desktop-file-utils
+}:
 
 stdenv.mkDerivation rec {
   pname = "gedit";
-  version = "3.34.1";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gedit/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1inm50sdfw63by1lf4f1swb59mpyxlly0g5rdg99j5l3357fzygb";
+    sha256 = "11z3lhc5i3z0gqw0qmprsm4rmvhbbm4gz6wy0f73c73x4bd8xhvd";
   };
 
   nativeBuildInputs = [
-    pkgconfig wrapGAppsHook meson ninja libxml2
+    pkgconfig wrapGAppsHook meson ninja
     python3 perl itstool desktop-file-utils
   ];
 
@@ -23,6 +24,7 @@ stdenv.mkDerivation rec {
     adwaita-icon-theme libsoup
     libpeas gtksourceview4
     gsettings-desktop-schemas gspell
+    tepl
   ];
 
   postPatch = ''
@@ -47,6 +49,6 @@ stdenv.mkDerivation rec {
     description = "Official text editor of the GNOME desktop environment";
     maintainers = gnome3.maintainers;
     license = licenses.gpl2;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/desktops/gnome-3/apps/glade/default.nix b/pkgs/desktops/gnome-3/apps/glade/default.nix
index 367bcdef472..7449e22d69d 100644
--- a/pkgs/desktops/gnome-3/apps/glade/default.nix
+++ b/pkgs/desktops/gnome-3/apps/glade/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    pkgconfig intltool itstool wrapGAppsHook docbook_xsl libxslt gobject-introspection
+    pkgconfig intltool itstool wrapGAppsHook docbook_xsl libxslt libxml2 gobject-introspection
   ];
   buildInputs = [
     gtk3 glib libxml2 python3 python3.pkgs.pygobject3
diff --git a/pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix b/pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix
index 4b76679f9ee..54afc3dbcd6 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-boxes/default.nix
@@ -34,7 +34,7 @@
 , mtools
 , cdrkit
 , libcdio
-, libusb
+, libusb1
 , libarchive
 , acl
 , libgudev
@@ -51,11 +51,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-boxes";
-  version = "3.34.4";
+  version = "3.36.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-boxes/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1bqrl36nngbd8jpj31ipnywg2k0rg2j3bcgnyvn8r86ysh1gnm0f";
+    sha256 = "01hjlz9hljk2skrwfqxpy3934wjs6figs71sw8bm8g2vnyaqwq7a";
   };
 
   doCheck = true;
@@ -99,7 +99,7 @@ stdenv.mkDerivation rec {
     librsvg
     libsecret
     libsoup
-    libusb
+    libusb1
     libvirt
     libvirt-glib
     libxml2
diff --git a/pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix b/pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix
index b00045cf9e9..db32efc62ea 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-calendar/default.nix
@@ -1,16 +1,16 @@
 { stdenv, fetchurl, meson, ninja, pkgconfig, wrapGAppsHook, libdazzle, libgweather, geoclue2, geocode-glib, python3
 , gettext, libxml2, gnome3, gtk3, evolution-data-server, libsoup
-, glib, gnome-online-accounts, gsettings-desktop-schemas }:
+, glib, gnome-online-accounts, gsettings-desktop-schemas, libhandy }:
 
 let
   pname = "gnome-calendar";
-  version = "3.34.2";
+  version = "3.36.0";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1bnmd191044zn2kr6f5vg7sm5q59qf7z652awll1f7s6ahijr8rw";
+    sha256 = "1cxy4qf83s8w1ys94rcc4ksf7ywi0hkkpfs0szkkip2v8g3j6kq2";
   };
 
   passthru = {
@@ -23,7 +23,7 @@ in stdenv.mkDerivation rec {
   nativeBuildInputs = [ meson ninja pkgconfig gettext libxml2 wrapGAppsHook python3 ];
   buildInputs = [
     gtk3 evolution-data-server libsoup glib gnome-online-accounts libdazzle libgweather geoclue2 geocode-glib
-    gsettings-desktop-schemas gnome3.adwaita-icon-theme
+    gsettings-desktop-schemas gnome3.adwaita-icon-theme libhandy
   ];
 
   postPatch = ''
diff --git a/pkgs/desktops/gnome-3/apps/gnome-clocks/default.nix b/pkgs/desktops/gnome-3/apps/gnome-clocks/default.nix
index a99e775b26b..e725c50983d 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-clocks/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-clocks/default.nix
@@ -1,16 +1,37 @@
-{ stdenv, fetchurl
-, meson, ninja, gettext, pkgconfig, wrapGAppsHook, itstool, desktop-file-utils
-, vala, gobject-introspection, libxml2, gtk3, glib, gsound, sound-theme-freedesktop
-, gsettings-desktop-schemas, adwaita-icon-theme, gnome-desktop, geocode-glib
-, gnome3, gdk-pixbuf, geoclue2, libgweather }:
+{ stdenv
+, fetchurl
+, meson
+, ninja
+, gettext
+, pkgconfig
+, wrapGAppsHook
+, itstool
+, desktop-file-utils
+, vala
+, gobject-introspection
+, libxml2
+, gtk3
+, glib
+, gsound
+, sound-theme-freedesktop
+, gsettings-desktop-schemas
+, adwaita-icon-theme
+, gnome-desktop
+, geocode-glib
+, gnome3
+, gdk-pixbuf
+, geoclue2
+, libgweather
+, libhandy
+}:
 
 stdenv.mkDerivation rec {
   pname = "gnome-clocks";
-  version = "3.34.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-clocks/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0g7hjk55smhkd09hwa9kag3h5a12l494wj89w9smpdk3ghsmy6b1";
+    sha256 = "1ij9xwp3c96gsnnlhkqkiw3y45a4lpw7a09d4yysx7bvgw68p5sc";
   };
 
   passthru = {
@@ -23,12 +44,29 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   nativeBuildInputs = [
-    vala meson ninja pkgconfig gettext itstool wrapGAppsHook desktop-file-utils libxml2
+    vala
+    meson
+    ninja
+    pkgconfig
+    gettext
+    itstool
+    wrapGAppsHook
+    desktop-file-utils
+    libxml2
     gobject-introspection # for finding vapi files
   ];
   buildInputs = [
-    gtk3 glib gsettings-desktop-schemas gdk-pixbuf adwaita-icon-theme
-    gnome-desktop geocode-glib geoclue2 libgweather gsound
+    gtk3
+    glib
+    gsettings-desktop-schemas
+    gdk-pixbuf
+    adwaita-icon-theme
+    gnome-desktop
+    geocode-glib
+    geoclue2
+    libgweather
+    gsound
+    libhandy
   ];
 
   preFixup = ''
diff --git a/pkgs/desktops/gnome-3/apps/gnome-getting-started-docs/default.nix b/pkgs/desktops/gnome-3/apps/gnome-getting-started-docs/default.nix
index f5261011d11..79e92aece74 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-getting-started-docs/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-getting-started-docs/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-getting-started-docs";
-  version = "3.34.1";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-getting-started-docs/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "00in6yc02pdalyx8g0fncmch0l7nr819587ngjm83ara9qa8z6fa";
+    sha256 = "09bf9r6brmll14z87ljgivw0nr0nggcgjpbx6lg2835zq36vfmi9";
   };
 
   passthru = {
diff --git a/pkgs/desktops/gnome-3/apps/gnome-maps/default.nix b/pkgs/desktops/gnome-3/apps/gnome-maps/default.nix
index 784b0142f46..e10460f622a 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-maps/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-maps/default.nix
@@ -5,13 +5,13 @@
 
 let
   pname = "gnome-maps";
-  version = "3.34.3";
+  version = "3.36.1";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1p58il8dqj96nlv41gf926y8nw6ya15vmv9yr52025sizxaqzydw";
+    sha256 = "1yajq2pxd4fbzngwhn92h55rn02psxih8bbdcdxgg66qdbcyychs";
   };
 
   doCheck = true;
diff --git a/pkgs/desktops/gnome-3/apps/gnome-music/default.nix b/pkgs/desktops/gnome-3/apps/gnome-music/default.nix
index 26c46b1f7b9..2a4c5026ed2 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-music/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-music/default.nix
@@ -16,6 +16,7 @@
 , grilo-plugins
 , pkgconfig
 , gtk3
+, pango
 , glib
 , desktop-file-utils
 , appstream-glib
@@ -29,13 +30,13 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "gnome-music";
-  version = "3.34.4";
+  version = "3.36.1";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1l2jaf5jfdkqqpjxwahsjslb3sa2vlhjgpi1ib51is04ln729xb6";
+    sha256 = "0cn33r9v2raizq1b8s7s0kb506y91iarc0knm0sljcsqs4qgd03v";
   };
 
   nativeBuildInputs = [
@@ -53,6 +54,7 @@ python3.pkgs.buildPythonApplication rec {
 
   buildInputs = [
     gtk3
+    pango
     glib
     libmediaart
     gnome-online-accounts
diff --git a/pkgs/desktops/gnome-3/apps/gnome-notes/default.nix b/pkgs/desktops/gnome-3/apps/gnome-notes/default.nix
index 7137ec7180e..5f47cd1fd0c 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-notes/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-notes/default.nix
@@ -1,18 +1,37 @@
-{ stdenv, meson, ninja, gettext, fetchurl, pkgconfig
-, wrapGAppsHook, itstool, desktop-file-utils, python3
-, glib, gtk3, evolution-data-server, gnome-online-accounts
-, libuuid, webkitgtk, zeitgeist
-, gnome3, libxml2, gsettings-desktop-schemas, tracker }:
+{ stdenv
+, meson
+, ninja
+, gettext
+, fetchurl
+, pkgconfig
+, wrapGAppsHook
+, itstool
+, desktop-file-utils
+, python3
+, glib
+, gtk3
+, evolution-data-server
+, gnome-online-accounts
+, libuuid
+, libhandy
+, webkitgtk
+, zeitgeist
+, gnome3
+, libxml2
+, gsettings-desktop-schemas
+, tracker
+}:
 
 let
-  version = "3.34.2";
-in stdenv.mkDerivation {
+  version = "3.36.1";
+in
+stdenv.mkDerivation {
   pname = "gnome-notes";
   inherit version;
 
   src = fetchurl {
     url = "mirror://gnome/sources/bijiben/${stdenv.lib.versions.majorMinor version}/bijiben-${version}.tar.xz";
-    sha256 = "0kmhivgamnv2kk5kywrwm4af4s7663rjwh2wdri8iy1n2gmc9qpv";
+    sha256 = "0421g9czdahk2w2kv7zg4gd9b4q8g1hl483jsfrxy5y7saincbr1";
   };
 
   doCheck = true;
@@ -23,12 +42,26 @@ in stdenv.mkDerivation {
   '';
 
   nativeBuildInputs = [
-    meson ninja pkgconfig gettext itstool libxml2 desktop-file-utils python3 wrapGAppsHook
+    meson
+    ninja
+    pkgconfig
+    gettext
+    itstool
+    libxml2
+    desktop-file-utils
+    python3
+    wrapGAppsHook
   ];
 
   buildInputs = [
-    glib gtk3 libuuid webkitgtk tracker
-    gnome-online-accounts zeitgeist
+    glib
+    gtk3
+    libuuid
+    libhandy
+    webkitgtk
+    tracker
+    gnome-online-accounts
+    zeitgeist
     gsettings-desktop-schemas
     evolution-data-server
     gnome3.adwaita-icon-theme
diff --git a/pkgs/desktops/gnome-3/apps/gnome-weather/default.nix b/pkgs/desktops/gnome-3/apps/gnome-weather/default.nix
index c71baa146d1..085131d80fc 100644
--- a/pkgs/desktops/gnome-3/apps/gnome-weather/default.nix
+++ b/pkgs/desktops/gnome-3/apps/gnome-weather/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-weather";
-  version = "3.34.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-weather/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1g63xzs17i36if923b36k9fwbk0nqa5vz6zh1k6q2axrzhhpx1i4";
+    sha256 = "15ahfgqj0rz16y2bdxb7sa4b3b3larg8hn3b41pc5ddnwf9x63zi";
   };
 
   nativeBuildInputs = [ pkgconfig meson ninja wrapGAppsHook python3 ];
diff --git a/pkgs/desktops/gnome-3/apps/polari/default.nix b/pkgs/desktops/gnome-3/apps/polari/default.nix
index 02b476c2eea..b01e1e8106a 100644
--- a/pkgs/desktops/gnome-3/apps/polari/default.nix
+++ b/pkgs/desktops/gnome-3/apps/polari/default.nix
@@ -1,19 +1,26 @@
 { stdenv, itstool, fetchurl, gdk-pixbuf, adwaita-icon-theme
 , telepathy-glib, gjs, meson, ninja, gettext, telepathy-idle, libxml2, desktop-file-utils
-, pkgconfig, gtk3, glib, libsecret, libsoup, gobject-introspection, appstream-glib
+, pkgconfig, gtk3, glib, libsecret, libsoup, webkitgtk, gobject-introspection, appstream-glib
 , gnome3, wrapGAppsHook, telepathy-logger, gspell, gsettings-desktop-schemas }:
 
 let
   pname = "polari";
-  version = "3.34.1";
+  version = "3.36.1";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "0wcfkib673fpys7hcpi5cqc0zgqzqmqvpzjzx4wwmim8lb121x5w";
+    sha256 = "1rmmq74g22qrmsg0mjvpzk5403kkpfw0iznvnwxfqbi0dfkamhn4";
   };
 
+  patches = [
+    # Upstream runs the thumbnailer by passing it to gjs.
+    # If we wrap it in a shell script, gjs can no longer run it.
+    # Let’s change the code to run the script directly by making it executable and having gjs in shebang.
+    ./make-thumbnailer-wrappable.patch
+  ];
+
   propagatedUserEnvPkgs = [ telepathy-idle telepathy-logger ];
 
   nativeBuildInputs = [
@@ -23,9 +30,13 @@ in stdenv.mkDerivation rec {
 
   buildInputs = [
     gtk3 glib adwaita-icon-theme gsettings-desktop-schemas
-    telepathy-glib telepathy-logger gjs gspell gdk-pixbuf libsecret libsoup
+    telepathy-glib telepathy-logger gjs gspell gdk-pixbuf libsecret libsoup webkitgtk
   ];
 
+  postFixup = ''
+    wrapGApp "$out/share/polari/thumbnailer.js"
+  '';
+
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;
diff --git a/pkgs/desktops/gnome-3/apps/polari/make-thumbnailer-wrappable.patch b/pkgs/desktops/gnome-3/apps/polari/make-thumbnailer-wrappable.patch
new file mode 100644
index 00000000000..0fb09eb154a
--- /dev/null
+++ b/pkgs/desktops/gnome-3/apps/polari/make-thumbnailer-wrappable.patch
@@ -0,0 +1,24 @@
+diff --git a/src/thumbnailer.js b/src/thumbnailer.js
+old mode 100644
+new mode 100755
+index e2ad0a5..7ebf08a
+--- a/src/thumbnailer.js
++++ b/src/thumbnailer.js
+@@ -1,3 +1,4 @@
++#!/usr/bin/env gjs
+ imports.gi.versions.Gdk = '3.0';
+ imports.gi.versions.Gtk = '3.0';
+ 
+diff --git a/src/urlPreview.js b/src/urlPreview.js
+index f17e0be..ccffc32 100644
+--- a/src/urlPreview.js
++++ b/src/urlPreview.js
+@@ -44,7 +44,7 @@ class Thumbnailer {
+     _generateThumbnail(data) {
+         let { filename, uri } = data;
+         this._subProc = Gio.Subprocess.new(
+-            ['gjs', `${pkg.pkgdatadir}/thumbnailer.js`, uri, filename],
++            [`${pkg.pkgdatadir}/thumbnailer.js`, uri, filename],
+             Gio.SubprocessFlags.NONE);
+         this._subProc.wait_async(null, (o, res) => {
+             try {
diff --git a/pkgs/desktops/gnome-3/apps/seahorse/default.nix b/pkgs/desktops/gnome-3/apps/seahorse/default.nix
index 315968fde65..245a1b287a2 100644
--- a/pkgs/desktops/gnome-3/apps/seahorse/default.nix
+++ b/pkgs/desktops/gnome-3/apps/seahorse/default.nix
@@ -22,15 +22,16 @@
 , p11-kit
 , openssh
 , gsettings-desktop-schemas
+, libhandy
 }:
 
 stdenv.mkDerivation rec {
   pname = "seahorse";
-  version = "3.34.1";
+  version = "3.36";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "19c2zylwgycb5q9hal8rmflc2sywc5c2grpsfsq3rf37i9lfwynw";
+    sha256 = "1nqn4a6dr4l1fpzj3mv4swhpnvhjcqlwsyhwm59sdzqgdfx4hbwr";
   };
 
   doCheck = true;
@@ -60,6 +61,7 @@ stdenv.mkDerivation rec {
     openssh
     openldap
     libpwquality
+    libhandy
   ];
 
   postPatch = ''
diff --git a/pkgs/desktops/gnome-3/core/adwaita-icon-theme/default.nix b/pkgs/desktops/gnome-3/core/adwaita-icon-theme/default.nix
index 4900717898f..1fe5b6fb897 100644
--- a/pkgs/desktops/gnome-3/core/adwaita-icon-theme/default.nix
+++ b/pkgs/desktops/gnome-3/core/adwaita-icon-theme/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "adwaita-icon-theme";
-  version = "3.34.3";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/adwaita-icon-theme/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "025rj1fskw1y448hiar4a9icyzpyr242nlh9xhsmyp8jb71dihp7";
+    sha256 = "066m3vd6k6xf3ap1ahrbw5hnx2322wf0qsnywcxjsj6snq9225qs";
   };
 
   # For convenience, we can specify adwaita-icon-theme only in packages
diff --git a/pkgs/desktops/gnome-3/core/dconf-editor/default.nix b/pkgs/desktops/gnome-3/core/dconf-editor/default.nix
index 19d2255ab5f..45c3185bc29 100644
--- a/pkgs/desktops/gnome-3/core/dconf-editor/default.nix
+++ b/pkgs/desktops/gnome-3/core/dconf-editor/default.nix
@@ -3,13 +3,13 @@
 
 let
   pname = "dconf-editor";
-  version = "3.34.4";
+  version = "3.36.0";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "129a2klywvnrj49rz6p5camwsamajldqpsfkl1rgpm6nw0q2lnyy";
+    sha256 = "14q678bwgmhzmi7565xhhw51y8b0pv3cqh0f411qwzwif1bd1vkj";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/core/eog/default.nix b/pkgs/desktops/gnome-3/core/eog/default.nix
index 80ef1f4659f..02b8707b037 100644
--- a/pkgs/desktops/gnome-3/core/eog/default.nix
+++ b/pkgs/desktops/gnome-3/core/eog/default.nix
@@ -4,13 +4,13 @@
 
 let
   pname = "eog";
-  version = "3.34.2";
+  version = "3.36.1";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1lx96nn8q61ajk2m5454s9b5v5wyn7jbz2sf3k1irv8waiq0aavg";
+    sha256 = "15cwghcbx9x1xmv1dwmwcdxplnhf25w6f4dhx8hk6fjymaks2m74";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig gettext itstool wrapGAppsHook libxml2 gobject-introspection python3 ];
diff --git a/pkgs/desktops/gnome-3/core/epiphany/default.nix b/pkgs/desktops/gnome-3/core/epiphany/default.nix
index be917b64452..ff564d47e45 100644
--- a/pkgs/desktops/gnome-3/core/epiphany/default.nix
+++ b/pkgs/desktops/gnome-3/core/epiphany/default.nix
@@ -30,15 +30,16 @@
 , json-glib
 , libdazzle
 , libhandy
+, buildPackages
 }:
 
 stdenv.mkDerivation rec {
   pname = "epiphany";
-  version = "3.34.4";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/epiphany/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "13ar3s40cds1rplwbzx0fzigf120w0rydiv05r3k6zpc0zy91qb0";
+    sha256 = "1dpgp1fqkn6azdrkw9imbrxi5d6mznrhfisrsiv88cf68gxk7wpn";
   };
 
   # Tests need an X display
@@ -56,6 +57,7 @@ stdenv.mkDerivation rec {
     pkgconfig
     python3
     wrapGAppsHook
+    buildPackages.glib
   ];
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome-3/core/evince/default.nix b/pkgs/desktops/gnome-3/core/evince/default.nix
index bab84eeb78c..60bef883416 100644
--- a/pkgs/desktops/gnome-3/core/evince/default.nix
+++ b/pkgs/desktops/gnome-3/core/evince/default.nix
@@ -43,13 +43,13 @@
 
 stdenv.mkDerivation rec {
   pname = "evince";
-  version = "3.34.2";
+  version = "3.36.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/evince/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "05q6v9lssd21623mnj2p49clj9v9csw9kay7n4nklki025grbh1w";
+    sha256 = "1a7v534sqbg7rlrvg9x1rffdf6p9n37blp3wix6anyfl6i99n7c5";
   };
 
   postPatch = ''
diff --git a/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix b/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
index ff4e499204c..f1e4a8a5726 100644
--- a/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
+++ b/pkgs/desktops/gnome-3/core/evolution-data-server/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "evolution-data-server";
-  version = "3.34.4";
+  version = "3.36.1";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/evolution-data-server/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1wz8mizblmvficxap6z9w62ymjwa8x99spnaljcwjl1wc55lnp4q";
+    sha256 = "15k7k225jfv5a45hmjk94xq90np2r9f5v8yj0xi3166vvlp2n4hk";
   };
 
   patches = [
diff --git a/pkgs/desktops/gnome-3/core/evolution-data-server/hardcode-gsettings.patch b/pkgs/desktops/gnome-3/core/evolution-data-server/hardcode-gsettings.patch
index c499bac4552..4e345c3cb3c 100644
--- a/pkgs/desktops/gnome-3/core/evolution-data-server/hardcode-gsettings.patch
+++ b/pkgs/desktops/gnome-3/core/evolution-data-server/hardcode-gsettings.patch
@@ -423,10 +423,10 @@ diff --git a/src/libedataserverui/e-reminders-widget.c b/src/libedataserverui/e-
 index f89cd4a5c..06cca9b5f 100644
 --- a/src/libedataserverui/e-reminders-widget.c
 +++ b/src/libedataserverui/e-reminders-widget.c
-@@ -1642,7 +1642,21 @@ static void
+@@ -1650,7 +1650,21 @@ static void
  e_reminders_widget_init (ERemindersWidget *reminders)
  {
- 	reminders->priv = G_TYPE_INSTANCE_GET_PRIVATE (reminders, E_TYPE_REMINDERS_WIDGET, ERemindersWidgetPrivate);
+ 	reminders->priv = e_reminders_widget_get_instance_private (reminders);
 -	reminders->priv->settings = g_settings_new ("org.gnome.evolution-data-server.calendar");
 +	{
 +		GSettingsSchemaSource *schema_source;
diff --git a/pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix b/pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix
index 4b91b3219be..518b86adf7f 100644
--- a/pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-backgrounds/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-backgrounds";
-  version = "3.34.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-backgrounds/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0zxlwy55fz7i582hch2wnj8zy1kzikssgaix0l2y41ccp5nzpdy2";
+    sha256 = "02xvfwfi3133mjljl731z2hj9hfmjas3a1jl4fxmy24xrzj83jxq";
   };
 
   passthru = {
diff --git a/pkgs/desktops/gnome-3/core/gnome-bluetooth/default.nix b/pkgs/desktops/gnome-3/core/gnome-bluetooth/default.nix
index b52161f90ae..5dd95255077 100644
--- a/pkgs/desktops/gnome-3/core/gnome-bluetooth/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-bluetooth/default.nix
@@ -6,14 +6,14 @@ let
   pname = "gnome-bluetooth";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
-  version = "3.34.0";
+  version = "3.34.1";
 
   # TODO: split out "lib"
   outputs = [ "out" "dev" "devdoc" "man" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1bvbxcsjkyl0givy8nfm7112bq3c0vn1v89fdk2pip714dsfcrz8";
+    sha256 = "11nk8nvz5yrbx7wp75vsiaf4rniv7ik2g3nwmgwx2b42q9v11j9y";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix b/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix
index cabe7c9ca74..c3de61d6616 100644
--- a/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-calculator/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-calculator";
-  version = "3.34.1";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-calculator/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0lbh87255zzggqzai6543qg920y52bl4vs5m5h5087ghzg14hlsd";
+    sha256 = "1cqd4b25qp1i0p04m669jssg1l5sdapc1mniv9jssvw5r7wk1s52";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/core/gnome-color-manager/default.nix b/pkgs/desktops/gnome-3/core/gnome-color-manager/default.nix
index 200d038d0fb..341fd13bfa7 100644
--- a/pkgs/desktops/gnome-3/core/gnome-color-manager/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-color-manager/default.nix
@@ -1,21 +1,54 @@
-{ stdenv, fetchurl, meson, ninja, pkgconfig, gettext, itstool, desktop-file-utils, gnome3, glib, gtk3, libexif, libtiff, colord, colord-gtk, libcanberra-gtk3, lcms2, vte, exiv2 }:
+{ stdenv
+, fetchurl
+, meson
+, ninja
+, pkgconfig
+, gettext
+, itstool
+, desktop-file-utils
+, gnome3
+, glib
+, gtk3
+, libexif
+, libtiff
+, colord
+, colord-gtk
+, libcanberra-gtk3
+, lcms2
+, vte
+, exiv2
+}:
 
-let
+stdenv.mkDerivation rec {
   pname = "gnome-color-manager";
   version = "3.32.0";
-in stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
+    url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
     sha256 = "1vpxa2zjz3lkq9ldjg0fl65db9s6b4kcs8nyaqfz3jygma7ifg3w";
   };
 
   nativeBuildInputs = [
-    meson ninja pkgconfig gettext itstool desktop-file-utils
+    meson
+    ninja
+    pkgconfig
+    gettext
+    itstool
+    desktop-file-utils
   ];
 
-  buildInputs = [ glib gtk3 libexif libtiff colord colord-gtk libcanberra-gtk3 lcms2 vte exiv2 ];
+  buildInputs = [
+    glib
+    gtk3
+    libexif
+    libtiff
+    colord
+    colord-gtk
+    libcanberra-gtk3
+    lcms2
+    vte
+    exiv2
+  ];
 
   passthru = {
     updateScript = gnome3.updateScript {
diff --git a/pkgs/desktops/gnome-3/core/gnome-contacts/default.nix b/pkgs/desktops/gnome-3/core/gnome-contacts/default.nix
index d2375b5341b..648e9d232b5 100644
--- a/pkgs/desktops/gnome-3/core/gnome-contacts/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-contacts/default.nix
@@ -1,18 +1,18 @@
 { stdenv, gettext, fetchurl, evolution-data-server, fetchpatch
 , pkgconfig, libxslt, docbook_xsl, docbook_xml_dtd_42, python3, gtk3, glib, cheese
 , libchamplain, clutter-gtk, geocode-glib, gnome-desktop, gnome-online-accounts
-, wrapGAppsHook, folks, libxml2, gnome3, telepathy-glib
-, vala, meson, ninja, libhandy, gsettings-desktop-schemas }:
+, wrapGAppsHook, folks, libxml2, gnome3
+, vala, meson, ninja, libhandy, gsettings-desktop-schemas
+# , telepathy-glib
+}:
 
-let
-  version = "3.34.1";
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
   pname = "gnome-contacts";
-  inherit version;
+  version = "3.36";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-contacts/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1jqw5yrypvjxzgg70vjbryylwx06amg6sg85mqi14a97xbccg0qa";
+    sha256 = "0yvgsfmqm8dxbhay12m20xp6qi9v31wwyv1gz4fx7j4kklhd5jzf";
   };
 
   propagatedUserEnvPkgs = [ evolution-data-server ];
@@ -23,16 +23,15 @@ in stdenv.mkDerivation rec {
 
   buildInputs = [
     gtk3 glib evolution-data-server gsettings-desktop-schemas
-    folks gnome-desktop telepathy-glib libhandy
+    folks gnome-desktop libhandy
     libxml2 gnome-online-accounts cheese
     gnome3.adwaita-icon-theme libchamplain clutter-gtk geocode-glib
+    # telepathy-glib 3.35.90 fails to build with telepathy
   ];
 
   mesonFlags = [
-    "-Dtelepathy=true"
-  ];
-
-  patches = [
+    # Upstream does not seem to maintain this properly: https://gitlab.gnome.org/GNOME/gnome-contacts/issues/103
+    "-Dtelepathy=false"
   ];
 
   postPatch = ''
diff --git a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
index 4e66a16bf7c..00f5ff5cd7a 100644
--- a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
@@ -60,20 +60,19 @@
 , tzdata
 , udisks2
 , upower
-, vino
+, epoxy
 , gnome-user-share
 , gnome-remote-desktop
-, shadow
 , wrapGAppsHook
 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-control-center";
-  version = "3.34.4";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0bi7lsmr5hcf0v17brsa8j33p6i0wnh620bzwycmxryfp6s6vshp";
+    sha256 = "1466swjyw5vjym001qda94x6sisd4xhpyb6vq91grhkyzwf2vqzk";
   };
 
   nativeBuildInputs = [
@@ -133,14 +132,13 @@ stdenv.mkDerivation rec {
     tracker
     udisks2
     upower
-    vino
+    epoxy
   ];
 
   patches = [
     (substituteAll {
       src = ./paths.patch;
       gcm = gnome-color-manager;
-      usermod = "${shadow}/bin/usermod";
       gnome_desktop = gnome-desktop;
       inherit glibc libgnomekbd tzdata;
       inherit cups networkmanagerapplet;
diff --git a/pkgs/desktops/gnome-3/core/gnome-control-center/paths.patch b/pkgs/desktops/gnome-3/core/gnome-control-center/paths.patch
index 63ca038d802..361972f2635 100644
--- a/pkgs/desktops/gnome-3/core/gnome-control-center/paths.patch
+++ b/pkgs/desktops/gnome-3/core/gnome-control-center/paths.patch
@@ -54,14 +54,14 @@ index 96b25140c..1ad704d4a 100644
  
  typedef struct _TzDB TzDB;
  typedef struct _TzLocation TzLocation;
-diff --git a/panels/info/cc-info-overview-panel.c b/panels/info/cc-info-overview-panel.c
-index 7fce8691e..b839f8b69 100644
---- a/panels/info/cc-info-overview-panel.c
-+++ b/panels/info/cc-info-overview-panel.c
-@@ -187,7 +187,7 @@ load_gnome_version (char **version,
+diff --git a/panels/info-overview/cc-info-overview-panel.c b/panels/info-overview/cc-info-overview-panel.c
+index 4541986db..da7826bfe 100644
+--- a/panels/info-overview/cc-info-overview-panel.c
++++ b/panels/info-overview/cc-info-overview-panel.c
+@@ -169,7 +169,7 @@ load_gnome_version (char **version,
    gsize length;
    g_autoptr(VersionData) data = NULL;
- 
+
 -  if (!g_file_get_contents (DATADIR "/gnome/gnome-version.xml",
 +  if (!g_file_get_contents ("@gnome_desktop@/share/gnome/gnome-version.xml",
                              &contents,
@@ -71,44 +71,69 @@ diff --git a/panels/network/connection-editor/net-connection-editor.c b/panels/n
 index 9390a3308..d30b4a68e 100644
 --- a/panels/network/connection-editor/net-connection-editor.c
 +++ b/panels/network/connection-editor/net-connection-editor.c
-@@ -247,9 +247,9 @@ net_connection_editor_do_fallback (NetConnectionEditor *editor, const gchar *typ
-         GError *error = NULL;
- 
-         if (editor->is_new_connection) {
+@@ -278,9 +278,9 @@ net_connection_editor_do_fallback (NetConnectionEditor *self, const gchar *type)
+         g_autoptr(GError) error = NULL;
+
+         if (self->is_new_connection) {
 -                cmdline = g_strdup_printf ("nm-connection-editor --type='%s' --create", type);
 +                cmdline = g_strdup_printf ("@networkmanagerapplet@/bin/nm-connection-editor --type='%s' --create", type);
          } else {
 -                cmdline = g_strdup_printf ("nm-connection-editor --edit='%s'",
 +                cmdline = g_strdup_printf ("@networkmanagerapplet@/bin/nm-connection-editor --edit='%s'",
-                                            nm_connection_get_uuid (editor->connection));
+                                            nm_connection_get_uuid (self->connection));
          }
  
-diff --git a/panels/network/net-device-wifi.c b/panels/network/net-device-wifi.c
-index dd99a7485..4baa88a4e 100644
---- a/panels/network/net-device-wifi.c
-+++ b/panels/network/net-device-wifi.c
-@@ -1445,7 +1445,7 @@ device_wifi_edit (NetObject *object)
-                 return;
-         }
-         uuid = nm_connection_get_uuid (NM_CONNECTION (connection));
+diff --git a/panels/network/net-device-bluetooth.c b/panels/network/net-device-bluetooth.c
+--- a/panels/network/net-device-bluetooth.c
++++ b/panels/network/net-device-bluetooth.c
+@@ -90,7 +90,7 @@ nm_device_bluetooth_refresh_ui (NetDeviceBluetooth *self)
+         update_off_switch_from_device_state (self->device_off_switch, state, self);
+
+         /* set up the Options button */
+-        path = g_find_program_in_path ("nm-connection-editor");
++        path = g_find_program_in_path ("@networkmanagerapplet@/bin/nm-connection-editor");
+         gtk_widget_set_visible (GTK_WIDGET (self->options_button), state != NM_DEVICE_STATE_UNMANAGED && path != NULL);
+ }
+
+@@ -141,7 +141,7 @@ options_button_clicked_cb (NetDeviceBluetooth *self)
+
+         connection = net_device_get_find_connection (self->client, self->device);
+         uuid = nm_connection_get_uuid (connection);
 -        cmdline = g_strdup_printf ("nm-connection-editor --edit %s", uuid);
 +        cmdline = g_strdup_printf ("@networkmanagerapplet@/bin/nm-connection-editor --edit %s", uuid);
          g_debug ("Launching '%s'\n", cmdline);
-         if (!g_spawn_command_line_async (cmdline, &error)) {
+         if (!g_spawn_command_line_async (cmdline, &error))
                  g_warning ("Failed to launch nm-connection-editor: %s", error->message);
-diff --git a/panels/network/net-device.c b/panels/network/net-device.c
-index d73b537b9..e2ee54294 100644
---- a/panels/network/net-device.c
-+++ b/panels/network/net-device.c
-@@ -197,7 +197,7 @@ net_device_edit (NetObject *object)
- 
-         connection = net_device_get_find_connection (device);
+@@ -185,7 +185,7 @@ net_device_bluetooth_init (NetDeviceBluetooth *self)
+
+         gtk_widget_init_template (GTK_WIDGET (self));
+
+-        path = g_find_program_in_path ("nm-connection-editor");
++        path = g_find_program_in_path ("@networkmanagerapplet@/bin/nm-connection-editor");
+         gtk_widget_set_visible (GTK_WIDGET (self->options_button), path != NULL);
+ }
+
+diff --git a/panels/network/net-device-mobile.c b/panels/network/net-device-mobile.c
+--- a/panels/network/net-device-mobile.c
++++ b/panels/network/net-device-mobile.c
+@@ -484,7 +484,7 @@ options_button_clicked_cb (NetDeviceMobile *self)
+
+         connection = net_device_get_find_connection (self->client, self->device);
          uuid = nm_connection_get_uuid (connection);
 -        cmdline = g_strdup_printf ("nm-connection-editor --edit %s", uuid);
 +        cmdline = g_strdup_printf ("@networkmanagerapplet@/bin/nm-connection-editor --edit %s", uuid);
          g_debug ("Launching '%s'\n", cmdline);
-         if (!g_spawn_command_line_async (cmdline, &error)) {
+         if (!g_spawn_command_line_async (cmdline, &error))
                  g_warning ("Failed to launch nm-connection-editor: %s", error->message);
+@@ -776,7 +776,7 @@ net_device_mobile_init (NetDeviceMobile *self)
+
+         self->cancellable = g_cancellable_new ();
+
+-        path = g_find_program_in_path ("nm-connection-editor");
++        path = g_find_program_in_path ("@networkmanagerapplet@/bin/nm-connection-editor");
+         gtk_widget_set_visible (GTK_WIDGET (self->options_button), path != NULL);
+ }
+
 diff --git a/panels/printers/pp-host.c b/panels/printers/pp-host.c
 index f53ba217e..d24bcaeb9 100644
 --- a/panels/printers/pp-host.c
@@ -123,10 +148,10 @@ index f53ba217e..d24bcaeb9 100644
  
    /* Use SNMP to get printer's informations */
 diff --git a/panels/region/cc-region-panel.c b/panels/region/cc-region-panel.c
-index e0604b8c3..fc323c1b2 100644
+index 35859526d..21486c917 100644
 --- a/panels/region/cc-region-panel.c
 +++ b/panels/region/cc-region-panel.c
-@@ -763,10 +763,10 @@ row_layout_cb (CcRegionPanel *self,
+@@ -755,10 +755,10 @@ row_layout_cb (CcRegionPanel *self,
          layout_variant = cc_input_source_get_layout_variant (source);
  
          if (layout_variant && layout_variant[0])
@@ -140,7 +165,7 @@ index e0604b8c3..fc323c1b2 100644
  
          g_spawn_command_line_async (commandline, NULL);
 diff --git a/panels/user-accounts/run-passwd.c b/panels/user-accounts/run-passwd.c
-index 19934f186..9f41a9620 100644
+index 00239ce0f..617c98870 100644
 --- a/panels/user-accounts/run-passwd.c
 +++ b/panels/user-accounts/run-passwd.c
 @@ -150,7 +150,7 @@ spawn_passwd (PasswdHandler *passwd_handler, GError **error)
@@ -152,19 +177,6 @@ index 19934f186..9f41a9620 100644
          argv[1] = NULL;
  
          envp = g_get_environ ();
-diff --git a/panels/user-accounts/user-utils.c b/panels/user-accounts/user-utils.c
-index 83d4cd091..e8784c722 100644
---- a/panels/user-accounts/user-utils.c
-+++ b/panels/user-accounts/user-utils.c
-@@ -486,7 +486,7 @@ is_valid_username_async (const gchar *username,
-          * future, so it would be nice to have some official way for this
-          * instead of relying on the current "--login" implementation.
-          */
--        argv[0] = "/usr/sbin/usermod";
-+        argv[0] = "@usermod@";
-         argv[1] = "--login";
-         argv[2] = data->username;
-         argv[3] = "--";
 diff --git a/tests/datetime/test-endianess.c b/tests/datetime/test-endianess.c
 index 9cb92007a..84d2f0fa3 100644
 --- a/tests/datetime/test-endianess.c
diff --git a/pkgs/desktops/gnome-3/core/gnome-desktop/default.nix b/pkgs/desktops/gnome-3/core/gnome-desktop/default.nix
index 1717bfc7fde..213cb890ef6 100644
--- a/pkgs/desktops/gnome-3/core/gnome-desktop/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-desktop/default.nix
@@ -1,21 +1,21 @@
-{ stdenv, fetchurl, fetchpatch, substituteAll, pkgconfig, libxslt, ninja, libX11, gnome3, gtk3, glib
+{ stdenv, fetchurl, substituteAll, pkgconfig, libxslt, ninja, libX11, gnome3, gtk3, glib
 , gettext, libxml2, xkeyboard_config, isocodes, meson, wayland
 , libseccomp, systemd, bubblewrap, gobject-introspection, gtk-doc, docbook_xsl, gsettings-desktop-schemas }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-desktop";
-  version = "3.34.4";
+  version = "3.36.1";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-desktop/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1g0cvsx0gk65kfa91knkqg7l2isrnlpvqwjbzpr3a5f2girp4gn5";
+    sha256 = "1058h1ndl6pmlh8rmbqq5lw15glws3anin88cm7lw4vzasgfavwc";
   };
 
   nativeBuildInputs = [
     pkgconfig meson ninja gettext libxslt libxml2 gobject-introspection
-    gtk-doc docbook_xsl
+    gtk-doc docbook_xsl glib
   ];
   buildInputs = [
     libX11 bubblewrap xkeyboard_config isocodes wayland
@@ -30,14 +30,6 @@ stdenv.mkDerivation rec {
       bubblewrap_bin = "${bubblewrap}/bin/bwrap";
       inherit (builtins) storeDir;
     })
-
-    # honor $XKB_CONFIG_ROOT
-    # addresses #76590: services.xserver.extraLayouts aren't honored by GNOME3
-    # NOTE: should be merged upstream in 3.36.
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/gnome-desktop/commit/450446b5353e8231edded4d5b5db90a67a9fa9b7.diff";
-      sha256 = "07y989x7mbgn3rsm2qfdi8qkkc8i60k28hw87l744nlkydn78kq5";
-    })
   ];
 
   mesonFlags = [
diff --git a/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix b/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
index 15be3e3178c..671331460b1 100644
--- a/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-disk-utility/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-disk-utility";
-  version = "3.34.4";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-disk-utility/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0p7pifmihg1vpsvym4qabdjqdp96yx9b4cbc6cnmf5i055js7i8y";
+    sha256 = "055l29z99f4ybgf2plz3biz1bwhlpsjpr0zk3aa6vg5w67r1h6vr";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/core/gnome-initial-setup/default.nix b/pkgs/desktops/gnome-3/core/gnome-initial-setup/default.nix
index 47d06ddac31..67d5c11ae9f 100644
--- a/pkgs/desktops/gnome-3/core/gnome-initial-setup/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-initial-setup/default.nix
@@ -36,11 +36,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-initial-setup";
-  version = "3.34.3";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1dc87mcvr7vdhfx4q0c44q37lf7ls2qvnc34dm66802qssrcxy9k";
+    sha256 = "1sfn6bdz8snc2qmi3nzb07vlkdhy9s1ipwxxj0v2i36a7n0gv6ci";
   };
 
   nativeBuildInputs = [
@@ -85,10 +85,9 @@ stdenv.mkDerivation rec {
   ];
 
   mesonFlags = [
-    "-Dregion-page=true"
     "-Dcheese=disabled"
-    "-Dsoftware-sources=disabled"
     "-Dibus=disabled"
+    "-Dparental_controls=disabled"
     "-Dvendor-conf-file=${./vendor.conf}"
   ];
 
diff --git a/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix b/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix
index fa960087f9b..447a6bf654b 100644
--- a/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-keyring/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-keyring";
-  version = "3.34.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-keyring/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0hqrsh5g9q9lm190f0m85q4nki8k4ng7wphl6qbccdry59aakkg9";
+    sha256 = "11sgffrrpss5cmv3b717pqlbhgq17l1xd33fsvqgsw8simxbar52";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/desktops/gnome-3/core/gnome-remote-desktop/default.nix b/pkgs/desktops/gnome-3/core/gnome-remote-desktop/default.nix
index fd507acc009..0971e65e5a4 100644
--- a/pkgs/desktops/gnome-3/core/gnome-remote-desktop/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-remote-desktop/default.nix
@@ -3,14 +3,14 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-remote-desktop";
-  version = "0.1.7";
+  version = "0.1.8";
 
   src = fetchFromGitLab {
     domain = "gitlab.gnome.org";
     owner = "jadahl";
     repo = "gnome-remote-desktop";
     rev = version;
-    sha256 = "0gmazc8ww0lyhx9iclhi982bkpjsnflrzv4qfm3q6hcy0il21fsc";
+    sha256 = "1wcvk0w4p0wnqnrjkbwvqcby9dd4nj0cm9cz0fqna31qfjrvb913";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig python3 wrapGAppsHook ];
diff --git a/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix b/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
index 34ff8793224..03a790967c3 100644
--- a/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-screenshot/default.nix
@@ -4,13 +4,13 @@
 
 let
   pname = "gnome-screenshot";
-  version = "3.34.0";
+  version = "3.36.0";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1rmiq890j7gfn5mcz31xy6jfnnxgc17dq67bhn2k9m5ylbvza2n8";
+    sha256 = "0rhj6fkpxfm26jv3vsn7yb2ybkc2k86ggy23nxa945q74y4msj9k";
   };
 
   doCheck = true;
diff --git a/pkgs/desktops/gnome-3/core/gnome-session/default.nix b/pkgs/desktops/gnome-3/core/gnome-session/default.nix
index 3df78b88090..03a56db3ed9 100644
--- a/pkgs/desktops/gnome-3/core/gnome-session/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-session/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-session";
-  version = "3.34.2";
+  version = "3.36.0";
 
   outputs = ["out" "sessions"];
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-session/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1qgqp97f8k2zi2ydvhds14zsjzfj7cv521r6wx5sw0qacn0p7dwb";
+    sha256 = "0ymvf1bap35348rpjqp63qwnwnnawdwi4snch95zc4n832w3hjym";
   };
 
   patches = [
diff --git a/pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix b/pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix
index c388c4f7211..c4b1ab867c7 100644
--- a/pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-settings-daemon/default.nix
@@ -13,7 +13,6 @@
 , libgnomekbd
 , lcms2
 , libpulseaudio
-, mousetweaks
 , alsaLib
 , libcanberra-gtk3
 , upower
@@ -41,19 +40,18 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-settings-daemon";
-  version = "3.34.2";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-settings-daemon/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1vfpgbdxkhh9xwvb3ja174jk3gpzj4n3jzcy9ygbjlvy45zfdflz";
+    sha256 = "0jddz8f2j4ps7csgq9b694h9hjxsyhlimik6rb2f8nbcxhrg0bzs";
   };
 
   patches = [
     (substituteAll {
       src = ./fix-paths.patch;
-      inherit tzdata mousetweaks;
+      inherit tzdata;
     })
-    ./global-backlight-helper.patch
   ];
 
   nativeBuildInputs = [
@@ -103,11 +101,6 @@ stdenv.mkDerivation rec {
   # we're using plain
   NIX_CFLAGS_COMPILE = "-DG_DISABLE_CAST_CHECKS";
 
-  # So the polkit policy can reference /run/current-system/sw/bin/gnome-settings-daemon/gsd-backlight-helper
-  postFixup = ''
-    mkdir -p $out/bin/gnome-settings-daemon
-    ln -s $out/libexec/gsd-backlight-helper $out/bin/gnome-settings-daemon/gsd-backlight-helper
-  '';
 
   postPatch = ''
     for f in gnome-settings-daemon/codegen.py plugins/power/gsd-power-constants-update.pl meson_post_install.py; do
diff --git a/pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix b/pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix
index 44c9e3eff44..ef7b0fee26b 100644
--- a/pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix
@@ -1,13 +1,13 @@
-{ stdenv, fetchurl, meson, ninja, gettext, pkgconfig, spidermonkey_60, glib
+{ stdenv, fetchurl, meson, ninja, gettext, pkgconfig, spidermonkey_68, glib
 , gnome3, gnome-menus, substituteAll }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extensions";
-  version = "3.34.2";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-shell-extensions/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1f5l35l3kdkzrv49xmg1sh11vwmgjbg7hx3gb91i39bfl1snxqd1";
+    sha256 = "1rmi6ccqfdisvmmzaiqr2r031r0f3h8qxgw5qwq62x859nbrzcmm";
   };
 
   passthru = {
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
   # 60 is required for tests
   # https://gitlab.gnome.org/GNOME/gnome-shell-extensions/blob/3.34.0/meson.build#L23
-  checkInputs = [ spidermonkey_60 ];
+  checkInputs = [ spidermonkey_68 ];
 
   nativeBuildInputs = [ meson ninja pkgconfig gettext glib ];
 
diff --git a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
index 26e96b5a338..d099e582839 100644
--- a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix
@@ -1,8 +1,8 @@
-{ fetchurl, fetchpatch, substituteAll, stdenv, meson, ninja, pkgconfig, gnome3, json-glib, libcroco, gettext, libsecret
+{ fetchurl, fetchpatch, substituteAll, stdenv, meson, ninja, pkgconfig, gnome3, json-glib, gettext, libsecret
 , python3, libsoup, polkit, clutter, networkmanager, docbook_xsl , docbook_xsl_ns, at-spi2-core
 , libstartup_notification, telepathy-glib, telepathy-logger, libXtst, unzip, glibcLocales, shared-mime-info
 , libgweather, libcanberra-gtk3, librsvg, geoclue2, perl, docbook_xml_dtd_42, desktop-file-utils
-, libpulseaudio, libical, gobject-introspection, gstreamer, wrapGAppsHook, libxslt, gcr
+, libpulseaudio, libical, gobject-introspection, wrapGAppsHook, libxslt, gcr
 , accountsservice, gdk-pixbuf, gdm, upower, ibus, libnma, libgnomekbd, gnome-desktop
 , gsettings-desktop-schemas, gnome-keyring, glib, gjs, mutter, evolution-data-server, gtk3
 , sassc, systemd, gst_all_1, adwaita-icon-theme, gnome-bluetooth, gnome-clocks, gnome-settings-daemon
@@ -15,11 +15,11 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "gnome-shell";
-  version = "3.34.4";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-shell/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0rm32h7lv4vyadi9x32sb6fwxslarwk70yzmvzjxbq872cazp779";
+    sha256 = "1phkkkwrrigchz58xs324vf6snd1fm7mxa2iaqwwj526vh5c1s2q";
   };
 
   LANG = "en_US.UTF-8";
@@ -31,45 +31,79 @@ in stdenv.mkDerivation rec {
   buildInputs = [
     systemd
     gsettings-desktop-schemas gnome-keyring glib gcr json-glib accountsservice
-    libcroco libsecret libsoup polkit gdk-pixbuf librsvg
-    clutter networkmanager libstartup_notification telepathy-glib
+    libsecret libsoup polkit gdk-pixbuf librsvg
+    networkmanager libstartup_notification telepathy-glib
     libXtst gjs mutter libpulseaudio evolution-data-server
-    libical gtk3 gstreamer gdm libcanberra-gtk3 geoclue2
+    libical gtk3 gdm libcanberra-gtk3 geoclue2
     adwaita-icon-theme gnome-bluetooth
     gnome-clocks # schemas needed
     at-spi2-core upower ibus gnome-desktop telepathy-logger gnome-settings-daemon
-    gst_all_1.gst-plugins-good # recording
     gobject-introspection
     gnome-autoar
 
+    # recording
+    gst_all_1.gstreamer
+    gst_all_1.gst-plugins-base
+    gst_all_1.gst-plugins-good
+
     # not declared at build time, but typelib is needed at runtime
     libgweather libnma
   ];
 
   patches = [
+    # Fix dependencies.
+    # https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/1114
     (fetchpatch {
       name = "0001-build-Add-missing-dependency-to-run-js-test.patch";
       url = https://bug787864.bugzilla-attachments.gnome.org/attachment.cgi?id=360016;
       sha256 = "1dmahd8ysbzh33rxglba0fbq127aw9h14cl2a2bw9913vjxhxijm";
     })
+
+    # Hardcode paths to various dependencies so that they can be found at runtime.
     (substituteAll {
       src = ./fix-paths.patch;
       inherit libgnomekbd unzip;
       gsettings = "${glib.bin}/bin/gsettings";
     })
+
+    # Fix ibus launching regression.
+    # https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/1080
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-shell/commit/94f6976ddd6337593203fdcdd2e3644774408dfa.patch";
+      sha256 = "PGmFQhqqd3gK+3kp0dlmlYd2G5ZTIQpfE++Q03Ghkx0=";
+    })
+
+    # Fix typing regression with ibus.
+    # https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/1084
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-shell/commit/b18469427e5c19402111de5fe9888bceec0eaacd.patch";
+      sha256 = "1M+3kjt7K61BFgk1Zf9XfK1ziilQGa60PD8xtVjnQec=";
+    })
+
+    # Fix theming breakage after Shell restart on X11.
+    # https://gitlab.gnome.org/GNOME/gnome-shell/issues/2329
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-shell/commit/72c4f148ef88b4bffb2106b99434da5c05c0bb64.patch";
+      sha256 = "RBA+JHz4ZvmbJZMnGNieD6D5LONRgFU4iOFIMQQ2kHQ=";
+    })
+
+    # Fix Telepathy chat integration.
+    # https://gitlab.gnome.org/GNOME/gnome-shell/issues/2449
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gnome-shell/commit/766288eec1bd3bd50dfc4ddf410c2b507187e603.patch";
+      sha256 = "Cp6xLohCM0gmMxtyYjSukS2oV60Khmxf4iQd9EDAlIc=";
+    })
   ];
 
   postPatch = ''
     patchShebangs src/data-to-c.pl
+    chmod +x meson/postinstall.py
+    patchShebangs meson/postinstall.py
 
     substituteInPlace src/gnome-shell-extension-tool.in --replace "@PYTHON@" "${pythonEnv}/bin/python"
     substituteInPlace src/gnome-shell-perf-tool.in --replace "@PYTHON@" "${pythonEnv}/bin/python"
   '';
 
-  postInstall = ''
-    glib-compile-schemas $out/share/glib-2.0/schemas
-  '';
-
   preFixup = ''
     gappsWrapperArgs+=(
       # Until glib’s xdgmime is patched
diff --git a/pkgs/desktops/gnome-3/core/gnome-software/default.nix b/pkgs/desktops/gnome-3/core/gnome-software/default.nix
index 051f0e4b432..26debc798f7 100644
--- a/pkgs/desktops/gnome-3/core/gnome-software/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-software/default.nix
@@ -11,11 +11,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "gnome-software";
-  version = "3.34.2";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-software/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1zhi6zkphq0wfm9z2d1rp1ym8x52c7as4r8h2nrcd34mmv02xnm7";
+    sha256 = "0b5b1k0a531c2jyf4g59dw7lblga8xrba38mzfdl57dnknbvbafs";
   };
 
   patches = [
@@ -42,6 +42,8 @@ stdenv.mkDerivation rec {
   mesonFlags = [
     "-Dubuntu_reviews=false"
     "-Dgudev=false"
+    # FIXME: package malcontent parental controls
+    "-Dmalcontent=false"
   ] ++ stdenv.lib.optionals (!withFwupd) [
     "-Dfwupd=false"
   ];
diff --git a/pkgs/desktops/gnome-3/core/gnome-system-monitor/default.nix b/pkgs/desktops/gnome-3/core/gnome-system-monitor/default.nix
index a9f8367a548..8b26a2a2d6d 100644
--- a/pkgs/desktops/gnome-3/core/gnome-system-monitor/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-system-monitor/default.nix
@@ -1,21 +1,20 @@
-{ stdenv, gettext, fetchurl, pkgconfig, gtkmm3, libxml2, polkit
+{ stdenv, gettext, fetchurl, pkgconfig, gtkmm3, libxml2
 , bash, gtk3, glib, wrapGAppsHook, meson, ninja, python3
 , gsettings-desktop-schemas, itstool, gnome3, librsvg, gdk-pixbuf, libgtop, systemd }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-system-monitor";
-  version = "3.32.1";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-system-monitor/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1wd43qdgjav6xamq5z5cy8fri5zr01jga3plc9w95gcia0rk3ha8";
+    sha256 = "1gipjaw708lv1zj1c9g09x4h4226kawam2kzdhdd6zjkzfghp9s0";
   };
 
   doCheck = true;
 
   nativeBuildInputs = [
     pkgconfig gettext itstool wrapGAppsHook meson ninja python3
-    polkit # for ITS file
   ];
   buildInputs = [
     bash gtk3 glib libxml2 gtkmm3 libgtop gdk-pixbuf gnome3.adwaita-icon-theme librsvg
diff --git a/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix b/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix
index 31f125e9720..75864c8d658 100644
--- a/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-terminal/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, pkgconfig, libxml2, gnome3, dconf, nautilus
-, gtk3, gsettings-desktop-schemas, vte, intltool, which, libuuid, vala
+, gtk3, gsettings-desktop-schemas, vte, gettext, which, libuuid, vala
 , desktop-file-utils, itstool, wrapGAppsHook, glib, pcre2 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-terminal";
-  version = "3.34.2";
+  version = "3.36.1.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-terminal/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0gc004f9b5k94gkdanmqjz3wqgnpny0l3nqm8zd19h4f0ps27mrv";
+    sha256 = "0xm3g3kanfhs1q3xh3x58r55v8906806wvqjbg4c2xvdwyhhimzk";
   };
 
   buildInputs = [
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [
-    pkgconfig intltool itstool which libxml2
+    pkgconfig gettext itstool which libxml2
     vala desktop-file-utils wrapGAppsHook pcre2
   ];
 
diff --git a/pkgs/desktops/gnome-3/core/gucharmap/default.nix b/pkgs/desktops/gnome-3/core/gucharmap/default.nix
index 3d2da33732b..b6e8b4c11c0 100644
--- a/pkgs/desktops/gnome-3/core/gucharmap/default.nix
+++ b/pkgs/desktops/gnome-3/core/gucharmap/default.nix
@@ -10,7 +10,6 @@
 , glib
 , desktop-file-utils
 , gtk-doc
-, libtool
 , wrapGAppsHook
 , gnome3
 , itstool
@@ -66,7 +65,6 @@ in stdenv.mkDerivation rec {
     unzip
     intltool
     itstool
-    libtool
     gtk-doc
     docbook_xsl
     docbook_xml_dtd_412
diff --git a/pkgs/desktops/gnome-3/core/mutter/0001-Revert-ClutterActor-Preserve-valid-paint-volumes-til.patch b/pkgs/desktops/gnome-3/core/mutter/0001-Revert-ClutterActor-Preserve-valid-paint-volumes-til.patch
deleted file mode 100644
index 0e1c33773b0..00000000000
--- a/pkgs/desktops/gnome-3/core/mutter/0001-Revert-ClutterActor-Preserve-valid-paint-volumes-til.patch
+++ /dev/null
@@ -1,147 +0,0 @@
-From 76477def5c103f10d62e604305802d7f5506afd4 Mon Sep 17 00:00:00 2001
-From: worldofpeace <worldofpeace@protonmail.ch>
-Date: Sun, 15 Sep 2019 20:14:16 -0400
-Subject: [PATCH] Revert "ClutterActor: Preserve valid paint volumes till the
- next relayout/repaint"
-
-This causes issues for users of mutter like in gala[0].
-
-Upstream report: https://gitlab.gnome.org/GNOME/mutter/issues/536
-[0]: https://github.com/elementary/gala/issues/605
----
- clutter/clutter/clutter-actor.c | 35 +++++----------------------------
- 1 file changed, 5 insertions(+), 30 deletions(-)
-
-diff --git a/clutter/clutter/clutter-actor.c b/clutter/clutter/clutter-actor.c
-index e70892308..8cb60fa07 100644
---- a/clutter/clutter/clutter-actor.c
-+++ b/clutter/clutter/clutter-actor.c
-@@ -24,7 +24,7 @@
- 
- /**
-  * SECTION:clutter-actor
-- * @short_description: The basic element of the scene graph 
-+ * @short_description: The basic element of the scene graph
-  *
-  * The ClutterActor class is the basic element of the scene graph in Clutter,
-  * and it encapsulates the position, size, and transformations of a node in
-@@ -840,7 +840,6 @@ struct _ClutterActorPrivate
-   guint needs_compute_expand        : 1;
-   guint needs_x_expand              : 1;
-   guint needs_y_expand              : 1;
--  guint needs_paint_volume_update   : 1;
-   guint had_effects_on_last_paint_volume_update : 1;
- };
- 
-@@ -1511,8 +1510,6 @@ clutter_actor_real_map (ClutterActor *self)
- 
-   CLUTTER_ACTOR_SET_FLAGS (self, CLUTTER_ACTOR_MAPPED);
- 
--  self->priv->needs_paint_volume_update = TRUE;
--
-   stage = _clutter_actor_get_stage_internal (self);
-   priv->pick_id = _clutter_stage_acquire_pick_id (CLUTTER_STAGE (stage), self);
- 
-@@ -2746,7 +2743,6 @@ clutter_actor_real_queue_relayout (ClutterActor *self)
-   priv->needs_width_request  = TRUE;
-   priv->needs_height_request = TRUE;
-   priv->needs_allocation     = TRUE;
--  priv->needs_paint_volume_update = TRUE;
- 
-   /* reset the cached size requests */
-   memset (priv->width_requests, 0,
-@@ -4742,7 +4738,7 @@ clutter_actor_set_rotation_center_internal (ClutterActor        *self,
-                                             ClutterRotateAxis    axis,
-                                             const ClutterVertex *center)
- {
--  ClutterVertex v = CLUTTER_VERTEX_INIT_ZERO; 
-+  ClutterVertex v = CLUTTER_VERTEX_INIT_ZERO;
-   GObject *obj = G_OBJECT (self);
-   ClutterTransformInfo *info;
- 
-@@ -8531,7 +8527,6 @@ clutter_actor_init (ClutterActor *self)
-   priv->needs_width_request = TRUE;
-   priv->needs_height_request = TRUE;
-   priv->needs_allocation = TRUE;
--  priv->needs_paint_volume_update = TRUE;
- 
-   priv->cached_width_age = 1;
-   priv->cached_height_age = 1;
-@@ -10098,9 +10093,6 @@ clutter_actor_allocate (ClutterActor           *self,
-       return;
-     }
- 
--  if (CLUTTER_ACTOR_IS_MAPPED (self))
--    self->priv->needs_paint_volume_update = TRUE;
--
-   if (!stage_allocation_changed)
-     {
-       /* If the actor didn't move but needs_allocation is set, we just
-@@ -12992,9 +12984,6 @@ clutter_actor_add_child_internal (ClutterActor              *self,
-       child->priv->needs_height_request = TRUE;
-       child->priv->needs_allocation = TRUE;
- 
--      if (CLUTTER_ACTOR_IS_MAPPED (child))
--        child->priv->needs_paint_volume_update = TRUE;
--
-       /* we only queue a relayout here, because any possible
-        * redraw has already been queued either by show() or
-        * by our call to queue_redraw() above
-@@ -14130,7 +14119,7 @@ clutter_actor_get_anchor_point_gravity (ClutterActor *self)
-  *
-  * Since: 0.6
-  *
-- * Deprecated: 1.12: Use #ClutterActor:pivot-point and 
-+ * Deprecated: 1.12: Use #ClutterActor:pivot-point and
-  * clutter_actor_set_translation() instead.
-  */
- void
-@@ -14178,7 +14167,7 @@ clutter_actor_move_anchor_point (ClutterActor *self,
-  *
-  * Since: 0.6
-  *
-- * Deprecated: 1.12: Use #ClutterActor:pivot-point and 
-+ * Deprecated: 1.12: Use #ClutterActor:pivot-point and
-  * clutter_actor_set_translation() instead.
-  */
- void
-@@ -14230,7 +14219,7 @@ clutter_actor_move_anchor_point_from_gravity (ClutterActor   *self,
-  *
-  * Since: 0.6
-  *
-- * Deprecated: 1.12: Use #ClutterActor:pivot-point and 
-+ * Deprecated: 1.12: Use #ClutterActor:pivot-point and
-  * clutter_actor_set_translation() instead. E.g. For %CLUTTER_GRAVITY_CENTER set
-  * pivot_point to (0.5,0.5) and the translation to (width/2,height/2).
-  */
-@@ -17567,19 +17556,6 @@ _clutter_actor_get_paint_volume_mutable (ClutterActor *self)
- 
-   if (priv->paint_volume_valid)
-     {
--      /* If effects are applied, the actor paint volume
--       * needs to be recomputed on each paint, since those
--       * paint volumes could change over the duration of the
--       * effect.
--       *
--       * We also need to update the paint volume if we went
--       * from having effects to not having effects on the last
--       * paint volume update. */
--      if (!priv->needs_paint_volume_update &&
--          priv->current_effect == NULL &&
--          !has_paint_volume_override_effects &&
--          !priv->had_effects_on_last_paint_volume_update)
--        return &priv->paint_volume;
-       clutter_paint_volume_free (&priv->paint_volume);
-     }
- 
-@@ -17588,7 +17564,6 @@ _clutter_actor_get_paint_volume_mutable (ClutterActor *self)
-   if (_clutter_actor_get_paint_volume_real (self, &priv->paint_volume))
-     {
-       priv->paint_volume_valid = TRUE;
--      priv->needs_paint_volume_update = FALSE;
-       return &priv->paint_volume;
-     }
-   else
--- 
-2.22.1
-
diff --git a/pkgs/desktops/gnome-3/core/mutter/3.28.nix b/pkgs/desktops/gnome-3/core/mutter/3.28.nix
deleted file mode 100644
index 85208163415..00000000000
--- a/pkgs/desktops/gnome-3/core/mutter/3.28.nix
+++ /dev/null
@@ -1,97 +0,0 @@
-{ fetchFromGitLab, stdenv, substituteAll, pkgconfig, gnome3, intltool, gobject-introspection, upower, cairo
-, glib, gtk3, pango, cogl, clutter, libstartup_notification, zenity, libcanberra-gtk3, fetchpatch
-, gsettings-desktop-schemas, gnome-desktop, wrapGAppsHook
-, libtool, xkeyboard_config, libxkbfile, libxkbcommon, libXtst, libinput
-, geocode-glib, libgudev, libwacom, xwayland, autoreconfHook }:
-
-stdenv.mkDerivation rec {
-  pname = "mutter";
-  version = "3.28.4";
-
-  src = fetchFromGitLab {
-    domain = "gitlab.gnome.org";
-    owner = "GNOME";
-    repo = pname;
-    rev = "74e3126b77eb5f27c0ae3f53b0aff2d2eebc15af"; # patches of tip from gnome-3-28 branch
-    sha256 = "0gw1n1w3i040w5mv30kkg7g8a59ymjlc5yaklip0ngg8xv76g0zi";
-  };
-
-  patches = [
-    (substituteAll {
-      src = ./fix-paths-328.patch;
-      inherit zenity;
-    })
-
-    # https://bugzilla.redhat.com/show_bug.cgi?id=1700337
-    # https://gitlab.gnome.org/GNOME/mutter/merge_requests/133
-    (fetchpatch {
-      url = "https://src.fedoraproject.org/rpms/mutter328/raw/fff28bebda02111b4c534952465ff967ba7efced/f/0070-clutter-Add-API-to-retrieve-the-physical-size-of-abs.patch";
-      sha256 = "11xg0clrqwvssy2r6hv4iya8g87z2v5f47fimd2b4hha6ki3g1is";
-    })
-    (fetchpatch {
-      url = "https://src.fedoraproject.org/rpms/mutter328/raw/fff28bebda02111b4c534952465ff967ba7efced/f/0071-backends-Add-MetaInputMapper.patch";
-      sha256 = "1kcp42hg8sy1q21w5586gdgmi95nf36829kkfswbah61h6bkb518";
-    })
-    (fetchpatch {
-      url = "https://src.fedoraproject.org/rpms/mutter328/raw/fff28bebda02111b4c534952465ff967ba7efced/f/0072-backends-Delegate-on-MetaInputMapper-for-unmapped-di.patch";
-      sha256 = "0zf4yxhq5s3dnzmn15mx4yb978g27ij4vmq055my9p7xgh6h9ga8";
-    })
-    (fetchpatch {
-      url = "https://src.fedoraproject.org/rpms/mutter328/raw/fff28bebda02111b4c534952465ff967ba7efced/f/0073-backends-Add-MetaInputMapper-method-to-lookup-device.patch";
-      sha256 = "0dnb2hqx5in6x9ar6wnr1hy3bg2wdcl3wbdx4jn66c7bi7s1k5zd";
-    })
-    (fetchpatch {
-      url = "https://src.fedoraproject.org/rpms/mutter328/raw/fff28bebda02111b4c534952465ff967ba7efced/f/0074-backends-Turn-builtin-touchscreen-on-off-together-wi.patch";
-      sha256 = "17fvs7j5ws4sz6fkch93gjlik0nm4z426w4n348gyw5llh0r76pg";
-    })
-    (fetchpatch {
-      url = "https://src.fedoraproject.org/rpms/mutter328/raw/fff28bebda02111b4c534952465ff967ba7efced/f/0075-backends-Update-to-new-output-setting-for-tablets-to.patch";
-      sha256 = "141p3an83s042f67fw2fqmr79i5g634ndrbpd8cs47fd4wwiwpj5";
-    })
-    # https://gitlab.gnome.org/GNOME/mutter/merge_requests/670
-    # Needed for gala redorder workspace
-    (fetchpatch {
-      url = "https://github.com/elementary/os-patches/commit/d636a44885c5be662997f8e19f7dcd26670b3219.patch";
-      sha256 = "12pbxk6f39a09jxjam5a5hxl4whp3cifzpck2m7fpp0n98nc63qh";
-    })
-    # See patch commit message
-    ./0001-Revert-ClutterActor-Preserve-valid-paint-volumes-til.patch
-    # Fix build with libglvnd provided headers
-    ./libglvnd-328.patch
-  ];
-
-  configureFlags = [
-    "--with-x"
-    "--enable-shape"
-    "--enable-sm"
-    "--enable-startup-notification"
-    "--enable-xsync"
-    "--enable-verbose-mode"
-    "--with-libcanberra"
-    "--with-xwayland-path=${xwayland}/bin/Xwayland"
-    "--enable-compile-warnings=maximum"
-  ];
-
-  propagatedBuildInputs = [
-    # required for pkgconfig to detect mutter-clutter
-    libXtst
-  ];
-
-  nativeBuildInputs = [ autoreconfHook pkgconfig intltool libtool wrapGAppsHook ];
-
-  buildInputs = [
-    glib gobject-introspection gtk3 gsettings-desktop-schemas upower
-    gnome-desktop cairo pango cogl clutter zenity libstartup_notification
-    geocode-glib libinput libgudev libwacom
-    libcanberra-gtk3 zenity xkeyboard_config libxkbfile
-    libxkbcommon
-  ];
-
-  enableParallelBuilding = true;
-
-  meta = with stdenv.lib; {
-    platforms = platforms.linux;
-    maintainers = gnome3.maintainers;
-    license = licenses.gpl2;
-  };
-}
diff --git a/pkgs/desktops/gnome-3/core/mutter/3.34/0001-Fix-glitches-in-gala.patch b/pkgs/desktops/gnome-3/core/mutter/3.34/0001-Fix-glitches-in-gala.patch
new file mode 100644
index 00000000000..7be00b33bba
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/mutter/3.34/0001-Fix-glitches-in-gala.patch
@@ -0,0 +1,29 @@
+From e10186284103d3ad8e425980b096eac813cae631 Mon Sep 17 00:00:00 2001
+From: worldofpeace <worldofpeace@protonmail.ch>
+Date: Sun, 5 Apr 2020 23:06:03 -0400
+Subject: [PATCH] Fix glitches in gala
+
+This fixes issues for users of mutter like in gala[0].
+
+Upstream report: https://gitlab.gnome.org/GNOME/mutter/issues/536
+[0]: https://github.com/elementary/gala/issues/605
+---
+ clutter/clutter/clutter-actor.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/clutter/clutter/clutter-actor.c b/clutter/clutter/clutter-actor.c
+index ecf9a597d..07b8b7155 100644
+--- a/clutter/clutter/clutter-actor.c
++++ b/clutter/clutter/clutter-actor.c
+@@ -17831,7 +17831,7 @@ _clutter_actor_get_paint_volume_mutable (ClutterActor *self)
+   if (_clutter_actor_get_paint_volume_real (self, &priv->paint_volume))
+     {
+       priv->paint_volume_valid = TRUE;
+-      priv->needs_paint_volume_update = FALSE;
++      //priv->needs_paint_volume_update = FALSE;
+       return &priv->paint_volume;
+     }
+   else
+-- 
+2.25.1
+
diff --git a/pkgs/desktops/gnome-3/core/mutter/3.34/default.nix b/pkgs/desktops/gnome-3/core/mutter/3.34/default.nix
new file mode 100644
index 00000000000..51d3c4115d9
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/mutter/3.34/default.nix
@@ -0,0 +1,159 @@
+{ fetchurl
+, fetchpatch
+, substituteAll
+, stdenv
+, pkgconfig
+, gnome3
+, pantheon
+, gettext
+, gobject-introspection
+, upower
+, cairo
+, pango
+, cogl
+, json-glib
+, libstartup_notification
+, zenity
+, libcanberra-gtk3
+, ninja
+, xkeyboard_config
+, libxkbfile
+, libxkbcommon
+, libXtst
+, libinput
+, gsettings-desktop-schemas
+, glib
+, gtk3
+, gnome-desktop
+, geocode-glib
+, pipewire_0_2
+, libgudev
+, libwacom
+, xwayland
+, meson
+, gnome-settings-daemon
+, xorgserver
+, python3
+, wrapGAppsHook
+, sysprof
+, desktop-file-utils
+, libcap_ng
+, egl-wayland
+}:
+
+stdenv.mkDerivation rec {
+  pname = "mutter";
+  version = "3.34.4";
+
+  outputs = [ "out" "dev" "man" ];
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/mutter/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "18hbw98p4h3d4qz57415smwmfg72s9a0nk8mb04ds1gn2lsm2d01";
+  };
+
+  mesonFlags = [
+    "-Degl_device=true"
+    "-Dinstalled_tests=false" # TODO: enable these
+    "-Dwayland_eglstream=true"
+    "-Dxwayland-path=${xwayland}/bin/Xwayland"
+  ];
+
+  propagatedBuildInputs = [
+    # required for pkgconfig to detect mutter-clutter
+    json-glib
+    libXtst
+    libcap_ng
+  ];
+
+  nativeBuildInputs = [
+    desktop-file-utils
+    gettext
+    meson
+    ninja
+    pkgconfig
+    python3
+    wrapGAppsHook
+    xorgserver # for cvt command
+  ];
+
+  buildInputs = [
+    cairo
+    cogl
+    egl-wayland
+    geocode-glib
+    glib
+    gnome-desktop
+    gnome-settings-daemon
+    gobject-introspection
+    gsettings-desktop-schemas
+    gtk3
+    libcanberra-gtk3
+    libgudev
+    libinput
+    libstartup_notification
+    libwacom
+    libxkbcommon
+    libxkbfile
+    pango
+    pipewire_0_2 # TODO: backport pipewire 0.3 support
+    sysprof
+    upower
+    xkeyboard_config
+    xwayland
+    zenity
+  ];
+
+  patches = [
+    # Fix build with libglvnd provided headers
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/mutter/commit/a444a4c5f58ea516ad3cd9d6ddc0056c3ca9bc90.patch";
+      sha256 = "0imy2j8af9477jliwdq4jc40yw1cifsjjf196gnmwxr9rkj0hbrd";
+    })
+
+    # Drop inheritable cap_sys_nice, to prevent the ambient set from leaking
+    # from mutter/gnome-shell, see https://github.com/NixOS/nixpkgs/issues/71381
+    ./drop-inheritable.patch
+
+    # See commit message for details
+    ./0001-Fix-glitches-in-gala.patch
+
+    # https://gitlab.gnome.org/GNOME/mutter/merge_requests/1094
+    # https://gitlab.gnome.org/GNOME/mutter/merge_requests/957
+    ./fix-sysprof.patch
+
+    # profiler: track changes in GLib and Sysprof
+    # https://gitlab.gnome.org/GNOME/mutter/merge_requests/908
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/mutter/-/commit/605171291993460f31d470a8143d6438d0c6169c.patch";
+      sha256 = "10fxzj0lmic2sp57w26w3r0bv1szngjjs50p3ka22wr9pxqmzl7l";
+    })
+
+    # Fixes https://github.com/elementary/wingpanel/issues/305
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/mutter/-/commit/9d390ee49fb1f6300336e82ae94cc8061c6bae12.patch";
+      sha256 = "12hmi07rvspwhp8h1y1vmcvmvbh8fihcrb07ja5g0qnh28ip5qfi";
+    })
+
+    (substituteAll {
+      src = ./fix-paths.patch;
+      inherit zenity;
+    })
+  ];
+
+  postPatch = ''
+    patchShebangs src/backends/native/gen-default-modes.py
+  '';
+
+  postInstall = ''
+    ${glib.dev}/bin/glib-compile-schemas "$out/share/glib-2.0/schemas"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A window manager for GNOME";
+    homepage = "https://gitlab.gnome.org/GNOME/mutter";
+    license = licenses.gpl2;
+    maintainers = pantheon.maintainers;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/gnome-3/core/mutter/3.34/drop-inheritable.patch b/pkgs/desktops/gnome-3/core/mutter/3.34/drop-inheritable.patch
new file mode 100644
index 00000000000..0f60be3a121
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/mutter/3.34/drop-inheritable.patch
@@ -0,0 +1,132 @@
+From e9c772e265b2293af031c79f4bbc99b5847dfe3c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Tor=20Hedin=20Br=C3=B8nner?= <torhedinbronner@gmail.com>
+Date: Sat, 19 Oct 2019 13:26:05 +0200
+Subject: [PATCH] drop inheritable
+
+Adapted from https://gitlab.gnome.org/GNOME/mutter/commit/c53c47ae123b03cc66044d2b846342123ecb3a01
+
+We only want to drop inheritable though, to prevent the ambient set leaking further than gnome-shell.
+
+---
+ config.h.meson    |  3 +++
+ meson.build       |  5 +++++
+ meson_options.txt |  6 ++++++
+ src/core/main.c   | 11 +++++++++++
+ src/meson.build   |  1 +
+ 5 files changed, 26 insertions(+)
+
+diff --git a/config.h.meson b/config.h.meson
+index 0bab71848..202fb7ed1 100644
+--- a/config.h.meson
++++ b/config.h.meson
+@@ -58,6 +58,9 @@
+ /* Xwayland applications allowed to issue keyboard grabs */
+ #mesondefine XWAYLAND_GRAB_DEFAULT_ACCESS_RULES
+
++/* Defined if libcap-ng is available */
++#mesondefine HAVE_LIBCAPNG
++
+ /* XKB base prefix */
+ #mesondefine XKB_BASE
+
+diff --git a/meson.build b/meson.build
+index 3322bd3b1..01c8020fa 100644
+--- a/meson.build
++++ b/meson.build
+@@ -35,6 +35,7 @@ libstartup_notification_req = '>= 0.7'
+ libcanberra_req = '>= 0.26'
+ libwacom_req = '>= 0.13'
+ atk_req = '>= 2.5.3'
++libcapng_req = '>= 0.7.9'
+
+ # optional version requirements
+ udev_req = '>= 228'
+@@ -125,6 +126,7 @@ xau_dep = dependency('xau')
+ ice_dep = dependency('ice')
+ atk_dep = dependency('atk', version: atk_req)
+ libcanberra_dep = dependency('libcanberra', version: libcanberra_req)
++libcapng_dep = dependency('libcap-ng', required: get_option('libcapng'))
+
+ # For now always require X11 support
+ have_x11 = true
+@@ -256,6 +258,7 @@ have_core_tests = false
+ have_cogl_tests = false
+ have_clutter_tests = false
+ have_installed_tests = false
++have_libcapng = libcapng_dep.found()
+
+ if have_tests
+   have_core_tests = get_option('core_tests')
+@@ -361,6 +364,7 @@ cdata.set('HAVE_LIBWACOM', have_libwacom)
+ cdata.set('HAVE_SM', have_sm)
+ cdata.set('HAVE_STARTUP_NOTIFICATION', have_startup_notification)
+ cdata.set('HAVE_INTROSPECTION', have_introspection)
++cdata.set('HAVE_LIBCAPNG', have_libcapng)
+ cdata.set('HAVE_PROFILER', have_profiler)
+
+ xkb_base = xkeyboard_config_dep.get_pkgconfig_variable('xkb_base')
+@@ -443,6 +447,7 @@ output = [
+   '        Startup notification..... ' + have_startup_notification.to_string(),
+   '        Introspection............ ' + have_introspection.to_string(),
+   '        Profiler................. ' + have_profiler.to_string(),
++  '        libcap-ng................ ' + have_libcapng.to_string(),
+   '',
+   '    Tests:',
+   '',
+diff --git a/meson_options.txt b/meson_options.txt
+index 73aa7adde..8bfaacd9a 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -152,3 +152,9 @@ option('xwayland_grab_default_access_rules',
+   value: 'gnome-boxes,remote-viewer,virt-viewer,virt-manager,vinagre,vncviewer,Xephyr',
+   description: 'Comma delimited list of applications ressources or class allowed to issue X11 grabs in Xwayland'
+ )
++
++option('libcapng',
++  type: 'feature',
++  value: 'auto',
++  description: 'Enable libcap-ng support'
++)
+diff --git a/src/core/main.c b/src/core/main.c
+index 7f4f666d2..b27968f13 100644
+--- a/src/core/main.c
++++ b/src/core/main.c
+@@ -66,6 +66,10 @@
+ #include <girepository.h>
+ #endif
+
++#ifdef HAVE_LIBCAPNG
++#include <cap-ng.h>
++#endif
++
+ #if defined(HAVE_NATIVE_BACKEND) && defined(HAVE_WAYLAND)
+ #include <systemd/sd-login.h>
+ #endif /* HAVE_WAYLAND && HAVE_NATIVE_BACKEND */
+@@ -673,6 +677,12 @@ meta_run (void)
+   if (!meta_display_open ())
+     meta_exit (META_EXIT_ERROR);
+
++#ifdef HAVE_LIBCAPNG
++  capng_clear(CAPNG_SELECT_BOTH);
++  capng_update(CAPNG_ADD, CAPNG_EFFECTIVE|CAPNG_PERMITTED, CAP_SYS_NICE);
++  capng_apply(CAPNG_SELECT_BOTH);
++#endif
++
+   g_main_loop_run (meta_main_loop);
+
+   meta_finalize ();
+diff --git a/src/meson.build b/src/meson.build
+index 90d80734f..a9fffa2c2 100644
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -18,6 +18,7 @@ mutter_pkg_deps = [
+   glib_dep,
+   gsettings_desktop_schemas_dep,
+   gtk3_dep,
++  libcapng_dep,
+   pango_dep,
+ ]
+
+--
+2.23.0
+
diff --git a/pkgs/desktops/gnome-3/core/mutter/fix-paths-328.patch b/pkgs/desktops/gnome-3/core/mutter/3.34/fix-paths.patch
index 6c40624a55d..1986c65e8f4 100644
--- a/pkgs/desktops/gnome-3/core/mutter/fix-paths-328.patch
+++ b/pkgs/desktops/gnome-3/core/mutter/3.34/fix-paths.patch
@@ -1,8 +1,8 @@
 diff --git a/src/core/util.c b/src/core/util.c
-index 5b8de18c7..546352a95 100644
+index 57b73747d..f424cc81c 100644
 --- a/src/core/util.c
 +++ b/src/core/util.c
-@@ -635,7 +635,7 @@ meta_show_dialog (const char *type,
+@@ -636,7 +636,7 @@ meta_show_dialog (const char *type,
 
    args = g_ptr_array_new ();
 
diff --git a/pkgs/desktops/gnome-3/core/mutter/0001-build-use-get_pkgconfig_variable-for-sysprof-dbusdir.patch b/pkgs/desktops/gnome-3/core/mutter/3.34/fix-sysprof.patch
index 2df70ff9646..481a0ab89cb 100644
--- a/pkgs/desktops/gnome-3/core/mutter/0001-build-use-get_pkgconfig_variable-for-sysprof-dbusdir.patch
+++ b/pkgs/desktops/gnome-3/core/mutter/3.34/fix-sysprof.patch
@@ -14,12 +14,12 @@ index 182f7f5f5..43060865b 100644
 @@ -710,7 +710,7 @@ if have_profiler
      'backends/meta-profiler.h',
    ]
- 
+
 -  dbus_interfaces_dir = join_paths(datadir, 'dbus-1', 'interfaces')
 +  dbus_interfaces_dir = join_paths(sysprof_dep.get_pkgconfig_variable('prefix'), 'share', 'dbus-1', 'interfaces')
    sysprof3_dbus_file = join_paths(dbus_interfaces_dir, 'org.gnome.Sysprof3.Profiler.xml')
- 
+
    dbus_sysprof3_profiler_built_sources = gnome.gdbus_codegen('meta-dbus-sysprof3-profiler',
--- 
+--
 2.22.1
 
diff --git a/pkgs/desktops/gnome-3/core/mutter/default.nix b/pkgs/desktops/gnome-3/core/mutter/default.nix
index 8ed00edf6c5..3c8a139d3e1 100644
--- a/pkgs/desktops/gnome-3/core/mutter/default.nix
+++ b/pkgs/desktops/gnome-3/core/mutter/default.nix
@@ -38,24 +38,30 @@
 , desktop-file-utils
 , libcap_ng
 , egl-wayland
+, graphene
+, wayland-protocols
 }:
 
 stdenv.mkDerivation rec {
   pname = "mutter";
-  version = "3.34.4";
+  version = "3.36.0";
 
   outputs = [ "out" "dev" "man" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/mutter/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "18hbw98p4h3d4qz57415smwmfg72s9a0nk8mb04ds1gn2lsm2d01";
+    sha256 = "18lvj158w6gwc6xpvn699v8ykh1r5szry7sqascl6f1i8g628v2x";
   };
 
   mesonFlags = [
     "-Degl_device=true"
     "-Dinstalled_tests=false" # TODO: enable these
     "-Dwayland_eglstream=true"
-    "-Dxwayland-path=${xwayland}/bin/Xwayland"
+    "-Dprofiler=true"
+    "-Dxwayland_path=${xwayland}/bin/Xwayland"
+    # This should be auto detected, but it looks like it manages a false
+    # positive.
+    "-Dxwayland_initfd=disabled"
   ];
 
   propagatedBuildInputs = [
@@ -63,6 +69,7 @@ stdenv.mkDerivation rec {
     json-glib
     libXtst
     libcap_ng
+    graphene
   ];
 
   nativeBuildInputs = [
@@ -102,26 +109,25 @@ stdenv.mkDerivation rec {
     xwayland
     zenity
     zenity
+    wayland-protocols
   ];
 
   patches = [
-    # Fix build with libglvnd provided headers
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/mutter/commit/a444a4c5f58ea516ad3cd9d6ddc0056c3ca9bc90.patch";
-      sha256 = "0imy2j8af9477jliwdq4jc40yw1cifsjjf196gnmwxr9rkj0hbrd";
-    })
-
     # Drop inheritable cap_sys_nice, to prevent the ambient set from leaking
     # from mutter/gnome-shell, see https://github.com/NixOS/nixpkgs/issues/71381
     ./drop-inheritable.patch
 
-    # TODO: submit upstream
-    ./0001-build-use-get_pkgconfig_variable-for-sysprof-dbusdir.patch
-
     (substituteAll {
       src = ./fix-paths.patch;
       inherit zenity;
     })
+
+    # Fix crash when opening submenus from «always on visible workspace» windows
+    # https://gitlab.gnome.org/GNOME/mutter/issues/1083
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/mutter/commit/7e32cc05ce2e5b3931ddcf46ce9ead603a0de39e.patch";
+      sha256 = "5ZzOMizucfrSnHNYjHIUObLHCvAIjrE6fY/CxLp4c7k=";
+    })
   ];
 
   postPatch = ''
diff --git a/pkgs/desktops/gnome-3/core/mutter/drop-inheritable.patch b/pkgs/desktops/gnome-3/core/mutter/drop-inheritable.patch
index 574ed572561..1600db1e705 100644
--- a/pkgs/desktops/gnome-3/core/mutter/drop-inheritable.patch
+++ b/pkgs/desktops/gnome-3/core/mutter/drop-inheritable.patch
@@ -41,12 +41,12 @@ index 3322bd3b1..01c8020fa 100644
  
  # optional version requirements
  udev_req = '>= 228'
-@@ -125,6 +126,7 @@ xau_dep = dependency('xau')
- ice_dep = dependency('ice')
+@@ -131,6 +131,7 @@ ice_dep = dependency('ice')
  atk_dep = dependency('atk', version: atk_req)
  libcanberra_dep = dependency('libcanberra', version: libcanberra_req)
+ dbus_dep = dependency('dbus-1')
 +libcapng_dep = dependency('libcap-ng', required: get_option('libcapng'))
- 
+
  # For now always require X11 support
  have_x11 = true
 @@ -256,6 +258,7 @@ have_core_tests = false
@@ -65,10 +65,10 @@ index 3322bd3b1..01c8020fa 100644
  cdata.set('HAVE_PROFILER', have_profiler)
  
  xkb_base = xkeyboard_config_dep.get_pkgconfig_variable('xkb_base')
-@@ -443,6 +447,7 @@ output = [
-   '        Startup notification..... ' + have_startup_notification.to_string(),
+@@ -465,6 +465,7 @@ output = [
    '        Introspection............ ' + have_introspection.to_string(),
    '        Profiler................. ' + have_profiler.to_string(),
+   '        Xwayland initfd.......... ' + have_xwayland_initfd.to_string(),
 +  '        libcap-ng................ ' + have_libcapng.to_string(),
    '',
    '    Tests:',
diff --git a/pkgs/desktops/gnome-3/core/mutter/libglvnd-328.patch b/pkgs/desktops/gnome-3/core/mutter/libglvnd-328.patch
deleted file mode 100644
index 96e27559828..00000000000
--- a/pkgs/desktops/gnome-3/core/mutter/libglvnd-328.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-diff --git a/cogl/configure.ac b/cogl/configure.ac
-index 3be282f..d338cd1 100644
---- a/cogl/configure.ac
-+++ b/cogl/configure.ac
-@@ -490,6 +490,11 @@ AS_IF([test "x$enable_gles1" = "xyes"],
- #include <EGL/eglext.h>"],
-                              [],
-                              [$COGL_EGL_INCLUDES])
-+            AC_CHECK_HEADERS([EGL/eglmesaext.h],
-+                             [COGL_EGL_INCLUDES="$COGL_EGL_INCLUDE
-+#include <EGL/eglmesaext.h>"],
-+                             [],
-+                             [$COGL_EGL_INCLUDES])
- 
-             # Check for a GLES 1.x Common Profile library with/without EGL.
-             #
-@@ -759,7 +764,9 @@ AS_IF([test "x$NEED_EGL" = "xyes" && test "x$EGL_CHECKED" != "xyes"],
-           )
- 
-         COGL_EGL_INCLUDES="#include <EGL/egl.h>
--#include <EGL/eglext.h>"
-+#include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
-+"
-         AC_SUBST([COGL_EGL_INCLUDES])
-       ])
- 
-diff --git a/src/backends/meta-egl-ext.h b/src/backends/meta-egl-ext.h
-index 8705e7d..db0b74f 100644
---- a/src/backends/meta-egl-ext.h
-+++ b/src/backends/meta-egl-ext.h
-@@ -29,6 +29,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- /*
-  * This is a little different to the tests shipped with EGL implementations,
-diff --git a/src/backends/meta-egl.c b/src/backends/meta-egl.c
-index 755ec49..bd253c9 100644
---- a/src/backends/meta-egl.c
-+++ b/src/backends/meta-egl.c
-@@ -31,6 +31,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <gio/gio.h>
- #include <glib.h>
- #include <glib-object.h>
-diff --git a/src/backends/meta-egl.h b/src/backends/meta-egl.h
-index 060c7cd..2fef264 100644
---- a/src/backends/meta-egl.h
-+++ b/src/backends/meta-egl.h
-@@ -27,6 +27,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <glib-object.h>
- 
- #define META_EGL_ERROR meta_egl_error_quark ()
diff --git a/pkgs/desktops/gnome-3/core/nautilus/default.nix b/pkgs/desktops/gnome-3/core/nautilus/default.nix
index e55bf19f528..a716ad27991 100644
--- a/pkgs/desktops/gnome-3/core/nautilus/default.nix
+++ b/pkgs/desktops/gnome-3/core/nautilus/default.nix
@@ -32,11 +32,11 @@
 
 stdenv.mkDerivation rec {
   pname = "nautilus";
-  version = "3.34.2";
+  version = "3.36.1.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "19zqwq4qyyncc5wq3xls0f7rsavnw741k336p2h7kx35p4kf41mv";
+    sha256 = "1pkvxyfm2fl06fpyq2jr147hhpc91y4rgdlxlilg7n8ih982y9gr";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/core/simple-scan/default.nix b/pkgs/desktops/gnome-3/core/simple-scan/default.nix
index 9b28ca7cf91..63f2eb2a03a 100644
--- a/pkgs/desktops/gnome-3/core/simple-scan/default.nix
+++ b/pkgs/desktops/gnome-3/core/simple-scan/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "simple-scan";
-  version = "3.34.4";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/simple-scan/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0xvy672zyl6jsdlnxma8nc2aqsx9k92jhp6wfxs0msj9ppp1nd3z";
+    sha256 = "0bprm9gfnlrs0k8jvy9pqm1rjq47z5pgahqjjj1i7q2k4a8g09vl";
   };
 
   buildInputs = [
diff --git a/pkgs/desktops/gnome-3/core/vino/default.nix b/pkgs/desktops/gnome-3/core/vino/default.nix
deleted file mode 100644
index abfe8b2e039..00000000000
--- a/pkgs/desktops/gnome-3/core/vino/default.nix
+++ /dev/null
@@ -1,98 +0,0 @@
-{ stdenv
-, fetchFromGitLab
-, wrapGAppsHook
-, pkgconfig
-, gnome3
-, gtk3
-, glib
-, intltool
-, libXtst
-, libnotify
-, libsoup
-, libsecret
-, gnutls
-, libgcrypt
-, avahi
-, zlib
-, libjpeg
-, libXdamage
-, libXfixes
-, libXext
-, networkmanager
-, gnome-common
-, libtool
-, automake
-, autoconf
-, telepathySupport ? false
-, dbus-glib ? null
-, telepathy-glib ? null
-}:
-
-stdenv.mkDerivation {
-  pname = "vino";
-  version = "unstable-2019-07-08";
-
-  src = fetchFromGitLab {
-    domain = "gitlab.gnome.org";
-    owner = "GNOME";
-    repo = "vino";
-    rev = "aed81a798558c8127b765cd4fb4dc726d10f1e21";
-    sha256 = "16r4cj5nsygmd9v97nq6d1yhynzak9hdnaprcdbmwfhh0c9w8jv3";
-  };
-
-  doCheck = true;
-
-  nativeBuildInputs = [
-    autoconf
-    automake
-    gnome-common
-    intltool
-    libtool
-    pkgconfig
-    wrapGAppsHook
-  ];
-
-  buildInputs = [
-    avahi
-    glib
-    gnome3.adwaita-icon-theme
-    gnutls
-    gtk3
-    libXdamage
-    libXext
-    libXfixes
-    libXtst
-    libgcrypt
-    libjpeg
-    libnotify
-    libsecret
-    libsoup
-    networkmanager
-    zlib
-  ]
-  ++ stdenv.lib.optionals telepathySupport [ dbus-glib telepathy-glib ]
-  ;
-
-  preConfigure = ''
-    NOCONFIGURE=1 ./autogen.sh
-  '';
-
-  postInstall = stdenv.lib.optionalString (!telepathySupport) ''
-    rm -f $out/share/dbus-1/services/org.freedesktop.Telepathy.Client.Vino.service
-  '';
-
-  passthru = {
-    # updateScript = gnome3.updateScript {
-    #   packageName = "vino";
-    #   attrPath = "gnome3.vino";
-    # };
-  };
-
-  meta = with stdenv.lib; {
-    homepage = https://wiki.gnome.org/Projects/Vino;
-    description = "GNOME desktop sharing server";
-    maintainers = gnome3.maintainers;
-    license = licenses.gpl2;
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/desktops/gnome-3/core/yelp-xsl/default.nix b/pkgs/desktops/gnome-3/core/yelp-xsl/default.nix
index 34f6accdd5f..7d4f2f36515 100644
--- a/pkgs/desktops/gnome-3/core/yelp-xsl/default.nix
+++ b/pkgs/desktops/gnome-3/core/yelp-xsl/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   pname = "yelp-xsl";
-  version = "3.34.2";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/yelp-xsl/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1bdpgkzawhqmw52l6zx8czzg1ndfgcf1p44m2bxjdpqkc4afcgqc";
+    sha256 = "1hsfj3q3a3kca0cf9i02xlq2qd4vy12qsjb89hh4r6mp6c11rrag";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/core/yelp/default.nix b/pkgs/desktops/gnome-3/core/yelp/default.nix
index 438c71c4ad3..76a124b0c61 100644
--- a/pkgs/desktops/gnome-3/core/yelp/default.nix
+++ b/pkgs/desktops/gnome-3/core/yelp/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "yelp";
-  version = "3.34.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/yelp/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0ifhgdxff2xx2damaj72gpjln5k36grg2chvi4335mv3b5y55mp3";
+    sha256 = "097djjyl096zmicjpxlb858yz6rd5cj813xc8azbxlhsscikwjzx";
   };
 
   nativeBuildInputs = [ pkgconfig gettext itstool wrapGAppsHook ];
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index f2d3182c337..25a8ba6573a 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -107,10 +107,9 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   mutter = callPackage ./core/mutter { };
 
-  # Needed for elementary's gala and greeter until they get around to adapting to all the API breaking changes in libmutter-3
-  # A more detailed explaination can be seen here https://decathorpe.com/2018/09/04/call-for-help-pantheon-on-fedora-29.html
-  # See Also: https://github.com/elementary/gala/issues/303
-  mutter328 = callPackage ./core/mutter/3.28.nix { };
+  # Needed for elementary's gala and greeter until 3.36 support has more bugfixes
+  # https://github.com/elementary/gala/issues/763
+  mutter334 = callPackage ./core/mutter/3.34 { };
 
   nautilus = callPackage ./core/nautilus { };
 
@@ -146,8 +145,6 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   totem = callPackage ./core/totem { };
 
-  vino = callPackage ./core/vino { };
-
   yelp = callPackage ./core/yelp { };
 
   yelp-xsl = callPackage ./core/yelp-xsl { };
@@ -271,8 +268,6 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   gnome-panel = callPackage ./misc/gnome-panel { };
 
-  gnome-screensaver = callPackage ./misc/gnome-screensaver { };
-
   gnome-tweaks = callPackage ./misc/gnome-tweaks { };
 
   gpaste = callPackage ./misc/gpaste { };
@@ -324,7 +319,7 @@ lib.makeScope pkgs.newScope (self: with self; {
   inherit (pkgs) atk glib gobject-introspection gspell webkitgtk gtk3 gtkmm3
       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 libcroco libpeas libgee geocode-glib libgweather librest libzapojit libmediaart gfbgraph gexiv2 folks totem-pl-parser gcr gsound libgnomekbd vte vte_290 gnome-menus gdl;
+      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
   inherit (pkgs) gnome-video-effects; # added 2019-08-19
   inherit (pkgs) gnome-online-accounts grilo grilo-plugins tracker tracker-miners gnome-photos; # added 2019-08-23
@@ -358,4 +353,10 @@ lib.makeScope pkgs.newScope (self: with self; {
   inherit (pkgs) dconf; # added 2019-11-30
 
   inherit (pkgs) networkmanagerapplet; # added 2019-12-12
+
+  vino = throw "vino is deprecated, use gnome-remote-desktop instead."; # added 2020-03-13
+
+  gnome-screensaver = throw "gnome-screensaver is deprecated. If you are using GNOME Flashback, it now has a built-in lock screen. If you are using it elsewhere, you can try xscreenlock or other alternatives."; # added 2020-03-19
+
+  mutter328 = throw "Removed as Pantheon is upgraded to mutter334.";
 })
diff --git a/pkgs/desktops/gnome-3/devtools/devhelp/default.nix b/pkgs/desktops/gnome-3/devtools/devhelp/default.nix
index 080a332d7df..1a6acbd4613 100644
--- a/pkgs/desktops/gnome-3/devtools/devhelp/default.nix
+++ b/pkgs/desktops/gnome-3/devtools/devhelp/default.nix
@@ -20,11 +20,11 @@
 
 stdenv.mkDerivation rec {
   pname = "devhelp";
-  version = "3.34.0";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/devhelp/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0zpmn6fgkgiayvn4diia5df0s6s7dqrdnp3nrvpavsmgn0vhb4pg";
+    sha256 = "0gcakbq2fci6cf5z8lakydqnynasp74djfy53bh7jjmw0a9yry2c";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/extensions/appindicator/default.nix b/pkgs/desktops/gnome-3/extensions/appindicator/default.nix
index 6ec7dee1722..cf9ca9999d7 100644
--- a/pkgs/desktops/gnome-3/extensions/appindicator/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/appindicator/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-appindicator";
-  version = "32";
+  version = "33";
 
   src = fetchFromGitHub {
     owner = "Ubuntu";
     repo = "gnome-shell-extension-appindicator";
     rev = "v${version}";
-    sha256 = "1qv9ll4iwkinwk5mf2jppj4fbk8rfncix6q4hhrwnqmhmsbiz6n2";
+    sha256 = "B039bgg5b63oaHp1Z36k9Dh5FLr8fmfxI25ZgIA+p2I=";
   };
 
   # This package has a Makefile, but it's used for building a zip for
diff --git a/pkgs/desktops/gnome-3/extensions/arc-menu/default.nix b/pkgs/desktops/gnome-3/extensions/arc-menu/default.nix
index f85b91d354d..db1741e72bb 100644
--- a/pkgs/desktops/gnome-3/extensions/arc-menu/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/arc-menu/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-arc-menu";
-  version = "33";
+  version = "43";
 
   src = fetchFromGitLab {
     owner = "LinxGem33";
     repo = "Arc-Menu";
     rev = "v${version}-Stable";
-    sha256 = "0ncb19jlwy2y9jcj8g6cdbasdv6n7hm96qv9l251z6qgrmg28x4z";
+    sha256 = "1rspl89bxqy0wla8cj0h1d29gp38xg1vmvhc1qg7bl46ank4yp5q";
   };
 
   patches = [
@@ -22,12 +22,12 @@ stdenv.mkDerivation rec {
     glib gettext
   ];
 
-  makeFlags = [ "INSTALL_BASE=${placeholder "out"}/share/gnome-shell/extensions" ];
+  makeFlags = [ "INSTALLBASE=${placeholder "out"}/share/gnome-shell/extensions" ];
 
   meta = with stdenv.lib; {
     description = "Gnome shell extension designed to replace the standard menu found in Gnome 3";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ dkabot ];
-    homepage = https://gitlab.com/LinxGem33/Arc-Menu;
+    homepage = "https://gitlab.com/LinxGem33/Arc-Menu";
   };
 }
diff --git a/pkgs/desktops/gnome-3/extensions/caffeine/default.nix b/pkgs/desktops/gnome-3/extensions/caffeine/default.nix
index 1761887f8fb..608d44a2892 100644
--- a/pkgs/desktops/gnome-3/extensions/caffeine/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/caffeine/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, glib, gettext, bash, gnome3 }:
 
 stdenv.mkDerivation rec {
-  pname = "gnome-shell-extension-caffeine";
-  version = "33";
+  pname = "gnome-shell-extension-caffeine-unstable";
+  version = "2020-03-13";
 
   src = fetchFromGitHub {
     owner = "eonpatapon";
     repo = "gnome-shell-extension-caffeine";
-    rev = "v${version}";
-    sha256 = "1v74xfk7csgc4kw1fg75brmhk2aby3d453ksnmj4k8ivyxkzxmfg";
+    rev = "f25fa5cd586271f080c2304d0ad1273b55e864f5";
+    sha256 = "12a76g1ydw677pjnj00r3vw31k4xybc63ynqzx3s4g0wi6lipng7";
   };
 
   uuid = "caffeine@patapon.info";
@@ -31,6 +31,6 @@ stdenv.mkDerivation rec {
     description = "Fill the cup to inhibit auto suspend and screensaver";
     license = licenses.gpl2;
     maintainers = with maintainers; [ eperuffo ];
-    homepage = https://github.com/eonpatapon/gnome-shell-extension-caffeine;
+    homepage = "https://github.com/eonpatapon/gnome-shell-extension-caffeine";
   };
 }
diff --git a/pkgs/desktops/gnome-3/extensions/clipboard-indicator/default.nix b/pkgs/desktops/gnome-3/extensions/clipboard-indicator/default.nix
index 5277cb08cbb..0faadbcd2b6 100644
--- a/pkgs/desktops/gnome-3/extensions/clipboard-indicator/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/clipboard-indicator/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, gnome3 }:
+{ stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-clipboard-indicator";
@@ -24,6 +24,5 @@ stdenv.mkDerivation rec {
     maintainers = with maintainers; [ jonafato ];
     platforms = platforms.linux;
     homepage = https://github.com/Tudmotu/gnome-shell-extension-clipboard-indicator;
-    broken = versionAtLeast gnome3.gnome-shell.version "3.26";
   };
 }
diff --git a/pkgs/desktops/gnome-3/extensions/dash-to-dock/default.nix b/pkgs/desktops/gnome-3/extensions/dash-to-dock/default.nix
index 6ac82c539a2..36404cf7b29 100644
--- a/pkgs/desktops/gnome-3/extensions/dash-to-dock/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/dash-to-dock/default.nix
@@ -1,14 +1,15 @@
 { stdenv, fetchFromGitHub, glib, gettext }:
 
 stdenv.mkDerivation rec {
-  pname = "gnome-shell-dash-to-dock";
-  version = "67";
+  pname = "gnome-shell-dash-to-dock-unstable";
+  version = "2020-03-19";
 
   src = fetchFromGitHub {
     owner = "micheleg";
     repo = "dash-to-dock";
-    rev = "extensions.gnome.org-v" + version;
-    sha256 = "1746xm0iyvyzj6m3pvjx11smh9w1s7naz426ki0dlr5l7jh3mpy5";
+    # rev = "extensions.gnome.org-v" + version;
+    rev = "c58004802b2eedfde96966a4ec0151fea2a1bd98";
+    sha256 = "IjunykPFP2CbGcd8XVqhPuNUOUOOgDAQFIytLaoyqRg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/extensions/dash-to-panel/default.nix b/pkgs/desktops/gnome-3/extensions/dash-to-panel/default.nix
index 33261472487..84662505a37 100644
--- a/pkgs/desktops/gnome-3/extensions/dash-to-panel/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/dash-to-panel/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-dash-to-panel";
-  version = "26";
+  version = "31";
 
   src = fetchFromGitHub {
     owner = "home-sweet-gnome";
     repo = "dash-to-panel";
     rev = "v${version}";
-    sha256 = "1phfx2pblygpcvsppsqqqflm7qnz46mqkw29hj0nv2dn69hf4xbc";
+    sha256 = "A8Ft+tLNv8KlTnVUzrWGavBWpP0u2rhkuG5LZls1A24=";
   };
 
   buildInputs = [
@@ -21,6 +21,6 @@ stdenv.mkDerivation rec {
     description = "An icon taskbar for Gnome Shell";
     license = licenses.gpl2;
     maintainers = with maintainers; [ mounium ];
-    homepage = https://github.com/jderose9/dash-to-panel;
+    homepage = "https://github.com/jderose9/dash-to-panel";
   };
 }
diff --git a/pkgs/desktops/gnome-3/extensions/drop-down-terminal/default.nix b/pkgs/desktops/gnome-3/extensions/drop-down-terminal/default.nix
index 4e7fa17d495..fb713201594 100644
--- a/pkgs/desktops/gnome-3/extensions/drop-down-terminal/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/drop-down-terminal/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchFromGitHub, substituteAll, gjs, vte }:
+{ stdenv, fetchFromGitHub, substituteAll, gjs, vte, gnome3 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-drop-down-terminal";
-  version = "24";
+  version = "unstable-2020-03-25";
 
   src = fetchFromGitHub {
     owner = "zzrough";
     repo = "gs-extensions-drop-down-terminal";
-    rev = "v${version}";
-    sha256 = "1gda56xzwsa5pgmgpb7lhb3i3gqishvn84282inwvqm86afks73r";
+    rev = "a59669afdb395b3315619f62c1f740f8b2f0690d";
+    sha256 = "0igfxgrjdqq6z6xg4rsawxn261pk25g5dw2pm3bhwz5sqsy4bq3i";
   };
 
   uuid = "drop-down-terminal@gs-extensions.zzrough.org";
@@ -29,6 +29,6 @@ stdenv.mkDerivation rec {
     description = "Configurable drop down terminal shell";
     license = licenses.gpl3;
     maintainers = with maintainers; [ ericdallo ];
-    homepage = https://github.com/zzrough/gs-extensions-drop-down-terminal;
+    homepage = "https://github.com/zzrough/gs-extensions-drop-down-terminal";
   };
 }
diff --git a/pkgs/desktops/gnome-3/extensions/gsconnect/default.nix b/pkgs/desktops/gnome-3/extensions/gsconnect/default.nix
index 26d7f157240..d7e59910511 100644
--- a/pkgs/desktops/gnome-3/extensions/gsconnect/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/gsconnect/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-gsconnect";
-  version = "31";
+  version = "35";
 
   src = fetchFromGitHub {
     owner = "andyholmes";
     repo = "gnome-shell-extension-gsconnect";
     rev = "v${version}";
-    sha256 = "0nricm31jh4akncs0rkkilmq9afg7kgbj5cy7w26pfqb3l4nhifg";
+    sha256 = "GqM2S9FIOHw+8AK2K7fpEBq34JqgKRCsW8I9Ve6c6IM=";
   };
 
   patches = [
diff --git a/pkgs/desktops/gnome-3/extensions/impatience/default.nix b/pkgs/desktops/gnome-3/extensions/impatience/default.nix
index b36f3489b57..2f5c48a5a32 100644
--- a/pkgs/desktops/gnome-3/extensions/impatience/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/impatience/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-impatience";
-  version = "0.4.5";
+  version = "unstable-2019-09-23";
 
   src = fetchFromGitHub {
     owner = "timbertson";
     repo = "gnome-shell-impatience";
-    rev = "version-${version}";
+    rev = "43e4e0a1e0eeb334a2da5224ce3ab4fdddf4f1b2";
     sha256 = "0kvdhlz41fjyqdgcfw6mrr9nali6wg2qwji3dvykzfi0aypljzpx";
   };
 
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Speed up builtin gnome-shell animations";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ aneeshusa timbertson tiramiseb ];
+    maintainers = with maintainers; [ timbertson tiramiseb ];
     homepage = http://gfxmonk.net/dist/0install/gnome-shell-impatience.xml;
   };
 }
diff --git a/pkgs/desktops/gnome-3/extensions/mpris-indicator-button/default.nix b/pkgs/desktops/gnome-3/extensions/mpris-indicator-button/default.nix
index dca346c6cce..c16f7bc4209 100644
--- a/pkgs/desktops/gnome-3/extensions/mpris-indicator-button/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/mpris-indicator-button/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-mpris-indicator-button-unstable";
-  version = "2019-09-29";
+  version = "2020-03-21";
 
   src = fetchFromGitHub {
     owner = "JasonLG1979";
     repo = "gnome-shell-extension-mpris-indicator-button";
-    rev = "6cdc28a8bde98f25618b27ee48280996e2b4a0f8";
-    sha256 = "1n3sh3phpa75y3vpc09wnzhis0m92zli1m46amzsdbvmk6gkifif";
+    rev = "de54160e7d905b8c48c0fe30a437f7c51efc1aa3";
+    sha256 = "k/NLmDrlaOsMkwLye7YGQhaQvOMNfhCsDVh2F0qnuFg=";
   };
 
   uuid = "mprisindicatorbutton@JasonLG1979.github.io";
diff --git a/pkgs/desktops/gnome-3/extensions/night-theme-switcher/default.nix b/pkgs/desktops/gnome-3/extensions/night-theme-switcher/default.nix
index 8d3a775e949..be6c1916ab4 100644
--- a/pkgs/desktops/gnome-3/extensions/night-theme-switcher/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/night-theme-switcher/default.nix
@@ -1,21 +1,31 @@
-{ stdenv, fetchgit }:
+{ stdenv, fetchFromGitLab }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-night-theme-switcher";
-  version = "2.1";
+  version = "19";
 
-  src = fetchgit {
-    url = "https://git.romainvigier.fr/Romain/nightthemeswitcher-gnome-shell-extension";
+  src = fetchFromGitLab {
+    owner = "rmnvgr";
+    repo = "nightthemeswitcher-gnome-shell-extension";
     rev = "v${version}";
-    sha256 = "1md44vmc83cp35riszhdvysnvl8pmkcpf5j6n4i2b3wwcjwxqwfy";
+    sha256 = "1ll0yf1skf51wa10mlrajd1dy459w33kx0i3vhfcx2pdk7mw5a3c";
   };
 
-  makeFlags = [ "GSEXT_DIR_LOCAL=${placeholder "out"}/share/gnome-shell/extensions" ];
+  # makefile tries to do install in home directory using
+  # `gnome-extensions install`
+  dontBuild = true;
+
+  uuid = "nightthemeswitcher@romainvigier.fr";
+
+  installPhase = ''
+    mkdir -p $out/share/gnome-shell/extensions/
+    cp -r src/ $out/share/gnome-shell/extensions/${uuid}
+  '';
 
   meta = with stdenv.lib; {
     description = "Automatically change the GTK theme to dark variant when Night Light activates";
     license = licenses.gpl3;
     maintainers = with maintainers; [ jonafato ];
-    homepage = https://git.romainvigier.fr/Romain/nightthemeswitcher-gnome-shell-extension;
+    homepage = "https://gitlab.com/rmnvgr/nightthemeswitcher-gnome-shell-extension/";
   };
 }
diff --git a/pkgs/desktops/gnome-3/extensions/sound-output-device-chooser/default.nix b/pkgs/desktops/gnome-3/extensions/sound-output-device-chooser/default.nix
index cc1c2deeef9..6fa1840bbb1 100644
--- a/pkgs/desktops/gnome-3/extensions/sound-output-device-chooser/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/sound-output-device-chooser/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-sound-output-device-chooser";
-  version = "25";
+  version = "28";
 
   src = fetchFromGitHub {
     owner = "kgshank";
     repo = "gse-sound-output-device-chooser";
     rev = version;
-    sha256 = "16xaa4r01575ix9lrvww8n6pird8r3ml1j037b3sm6dfrf8kvzxs";
+    sha256 = "JmDUi6xTMbkMzW+hYJuKtjQj4ERctaiHr6eLsl5Fru4=";
   };
 
   patches = [
diff --git a/pkgs/desktops/gnome-3/extensions/system-monitor/default.nix b/pkgs/desktops/gnome-3/extensions/system-monitor/default.nix
index 13b2d6a1db4..4327f30c95b 100644
--- a/pkgs/desktops/gnome-3/extensions/system-monitor/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/system-monitor/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, substituteAll, fetchFromGitHub, glib, glib-networking, libgtop }:
+{ stdenv, substituteAll, fetchFromGitHub, glib, glib-networking, libgtop, gnome3 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-system-monitor";
@@ -39,7 +39,10 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Display system informations in gnome shell status bar";
     license = licenses.gpl3Plus;
-    maintainers = with maintainers; [ aneeshusa tiramiseb ];
+    maintainers = with maintainers; [ tiramiseb ];
     homepage = https://github.com/paradoxxxzero/gnome-shell-system-monitor-applet;
+    # 3.36 support not yet ready
+    # https://github.com/paradoxxxzero/gnome-shell-system-monitor-applet/pull/564
+    broken = stdenv.lib.versionAtLeast gnome3.gnome-shell.version "3.34";
   };
 }
diff --git a/pkgs/desktops/gnome-3/extensions/topicons-plus/default.nix b/pkgs/desktops/gnome-3/extensions/topicons-plus/default.nix
index f0f6279fe2e..22d58662e2b 100644
--- a/pkgs/desktops/gnome-3/extensions/topicons-plus/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/topicons-plus/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, glib, gettext }:
+{ stdenv, fetchFromGitHub, glib, gnome3, gettext }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-topicons-plus";
@@ -22,5 +22,7 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     maintainers = with maintainers; [ eperuffo ];
     homepage = https://github.com/phocean/TopIcons-plus;
+    # Unmaintained and no longer working with GNOME Shell 3.34+
+    broken = stdenv.lib.versionAtLeast gnome3.gnome-shell.version "3.32";
   };
 }
diff --git a/pkgs/desktops/gnome-3/extensions/window-corner-preview/default.nix b/pkgs/desktops/gnome-3/extensions/window-corner-preview/default.nix
index 7d5de1062b1..a278ec1d5e5 100644
--- a/pkgs/desktops/gnome-3/extensions/window-corner-preview/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/window-corner-preview/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub }:
+{ stdenv, fetchFromGitHub, gnome3 }:
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-window-corner-preview";
@@ -24,5 +24,6 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     maintainers = with maintainers; [ jtojnar ];
     homepage = https://github.com/medenagan/window-corner-preview;
+    broken = stdenv.lib.versionAtLeast gnome3.gnome-shell.version "3.32"; # Doesn't support 3.34
   };
 }
diff --git a/pkgs/desktops/gnome-3/extensions/workspace-matrix/default.nix b/pkgs/desktops/gnome-3/extensions/workspace-matrix/default.nix
index ca4b72111c6..b97b2c902ba 100644
--- a/pkgs/desktops/gnome-3/extensions/workspace-matrix/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/workspace-matrix/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-shell-extension-workspace-matrix";
-  version = "3.0.0";
+  version = "4.0.0";
 
   src = fetchFromGitHub {
     owner = "mzur";
     repo = "gnome-shell-wsmatrix";
     rev = "v${version}";
-    sha256 = "1fgyzmd16kklcca7600bwg8w8pbb4klmapqsvmahlwa99vmkhfkn";
+    sha256 = "LTDkKSKvReJxBzAERE+vV+uJBNZw6UyhiB7kN48BZCo=";
   };
 
   uuid = "wsmatrix@martin.zurowietz.de";
diff --git a/pkgs/desktops/gnome-3/games/five-or-more/default.nix b/pkgs/desktops/gnome-3/games/five-or-more/default.nix
index 4d0512f1adb..9bb1286c8d9 100644
--- a/pkgs/desktops/gnome-3/games/five-or-more/default.nix
+++ b/pkgs/desktops/gnome-3/games/five-or-more/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "five-or-more";
-  version = "3.32.1";
+  version = "3.32.2";
 
   src = fetchurl {
     url = "mirror://gnome/sources/five-or-more/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0xw05dd2dwi9vsph9h158b4n89s5k07xrh6bjz1icm0pdmjwhpgk";
+    sha256 = "19pf8wzbf3ciqf2k4bj9sddvyhckfd62x86pnqr6s8h4vn9jc6ii";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/games/four-in-a-row/default.nix b/pkgs/desktops/gnome-3/games/four-in-a-row/default.nix
index 94466b38e22..d047db68ef5 100644
--- a/pkgs/desktops/gnome-3/games/four-in-a-row/default.nix
+++ b/pkgs/desktops/gnome-3/games/four-in-a-row/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "four-in-a-row";
-  version = "3.34.4";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/four-in-a-row/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1gw54llbmbv4w2rxmmkzq2wq6sacnpj99maw06zpn071cga0g4z5";
+    sha256 = "1bl63npcbr5ymka2y06wps612qynxa4hsqlzn7bvwpz2v53pai1z";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/games/gnome-chess/default.nix b/pkgs/desktops/gnome-3/games/gnome-chess/default.nix
index 72c4bdf1d29..c67d8fa8ffe 100644
--- a/pkgs/desktops/gnome-3/games/gnome-chess/default.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-chess/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-chess";
-  version = "3.34.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-chess/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1n1vjg6xhwppmddrmqmkk6b3jkgphshp06rjbv5h3270k520a135";
+    sha256 = "1a9fgi749gy1f60vbcyrqqkab9vqs42hji70q73k1xx8rv0agmg0";
   };
 
   nativeBuildInputs = [ meson ninja vala pkgconfig gettext itstool libxml2 python3 wrapGAppsHook gobject-introspection ];
diff --git a/pkgs/desktops/gnome-3/games/gnome-klotski/default.nix b/pkgs/desktops/gnome-3/games/gnome-klotski/default.nix
index f7a7a75533d..62fc7bf8d67 100644
--- a/pkgs/desktops/gnome-3/games/gnome-klotski/default.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-klotski/default.nix
@@ -5,13 +5,13 @@
 
 let
   pname = "gnome-klotski";
-  version = "3.34.4";
+  version = "3.36.0";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1bg7hl64lmjryzvp51qfak5jqs7vbqfmj0s7h1g3c7snscca7rx6";
+    sha256 = "06gsg3s8hyhhsk11f1ld2anzv1czg1429483gbv9lr2p7fnq7pyy";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/games/gnome-mahjongg/default.nix b/pkgs/desktops/gnome-3/games/gnome-mahjongg/default.nix
index aa7824a0317..1a04b90c09e 100644
--- a/pkgs/desktops/gnome-3/games/gnome-mahjongg/default.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-mahjongg/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-mahjongg";
-  version = "3.34.0";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-mahjongg/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0qyi3jkg112jysrsy5p330b7b92sl09mr8zsimq06q68kj1wzkz5";
+    sha256 = "1a5h55amr0pab36y2iqm6ynv6mmb8al1b92rfk18wzfcfz7mhxzd";
   };
 
   passthru = {
diff --git a/pkgs/desktops/gnome-3/games/gnome-mines/default.nix b/pkgs/desktops/gnome-3/games/gnome-mines/default.nix
index 8c620fdd0d1..00b4d15b442 100644
--- a/pkgs/desktops/gnome-3/games/gnome-mines/default.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-mines/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-mines";
-  version = "3.34.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-mines/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1spxa6qr1y8s5rrsvpciywpvhk812ngn95s1apaxaigwy2g1iw54";
+    sha256 = "0m53ymxbgr3rb3yv13fzjwqh6shsfr51abkm47rchsy2jryqkzja";
   };
 
   # gobject-introspection for finding vapi files
diff --git a/pkgs/desktops/gnome-3/games/gnome-nibbles/default.nix b/pkgs/desktops/gnome-3/games/gnome-nibbles/default.nix
index 94bc8a56b39..1600ddc9e8a 100644
--- a/pkgs/desktops/gnome-3/games/gnome-nibbles/default.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-nibbles/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-nibbles";
-  version = "3.34.2";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-nibbles/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0sl54ns1b5cff6vrls6716xb73krgd1sp36k94gc2lza5laixyh0";
+    sha256 = "01vzcjys2x95wnanwq25x0a7x6cc4j6g8gk69c5yc9ild48rr9c1";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/games/gnome-robots/default.nix b/pkgs/desktops/gnome-3/games/gnome-robots/default.nix
index 484110cfaa9..c5565e92f12 100644
--- a/pkgs/desktops/gnome-3/games/gnome-robots/default.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-robots/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-robots";
-  version = "3.34.1";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-robots/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0ncghkv06x9qqfr5zyh6hdv28d0i6v9z4z365k05x9ji5pyzxiny";
+    sha256 = "0qmdwrl70ccs3blgwmpcf3sg9k8mcvsl1dr1gds4ba3fq9ca8ipb";
   };
 
   passthru = {
diff --git a/pkgs/desktops/gnome-3/games/gnome-sudoku/default.nix b/pkgs/desktops/gnome-3/games/gnome-sudoku/default.nix
index 53cd073af34..efeecf04aae 100644
--- a/pkgs/desktops/gnome-3/games/gnome-sudoku/default.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-sudoku/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-sudoku";
-  version = "3.34.1";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-sudoku/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "025y85r4qqardivvwiwhbmgarziykdy224m8zlrq8b79zv82793b";
+    sha256 = "17a1r2jk5yygrxil1dycmamxyvyi64mr29mbyfgcx5hm2fylxxwm";
   };
 
   nativeBuildInputs = [ meson ninja vala pkgconfig gobject-introspection gettext itstool libxml2 python3 desktop-file-utils wrapGAppsHook ];
diff --git a/pkgs/desktops/gnome-3/games/gnome-taquin/default.nix b/pkgs/desktops/gnome-3/games/gnome-taquin/default.nix
index 623572f980b..9ac0cf88b6e 100644
--- a/pkgs/desktops/gnome-3/games/gnome-taquin/default.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-taquin/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-taquin";
-  version = "3.34.4";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-taquin/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0s8gsgaj1mxldg5yaq6k9anfha9bc4n16wms66kbbpqi8k5hcm40";
+    sha256 = "16ss2d8s6glb3k0wnb5ihmbqvk9i1yi18wv9hzgxfyhs1rvk496f";
   };
 
   passthru = {
diff --git a/pkgs/desktops/gnome-3/games/gnome-tetravex/default.nix b/pkgs/desktops/gnome-3/games/gnome-tetravex/default.nix
index 843211822f9..de81e76d3cd 100644
--- a/pkgs/desktops/gnome-3/games/gnome-tetravex/default.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-tetravex/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-tetravex";
-  version = "3.34.4";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gnome-tetravex/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1sm90nkpig02hwk7bh5bnf65awgssxl63bvvh2a7gmlaln8x99iy";
+    sha256 = "1xbd0flh77v3x0dh4dsfspykwb6rwvga7kqwn1fq7gk421mq6n52";
   };
 
   passthru = {
diff --git a/pkgs/desktops/gnome-3/games/hitori/default.nix b/pkgs/desktops/gnome-3/games/hitori/default.nix
index cf83527432f..fa82365d166 100644
--- a/pkgs/desktops/gnome-3/games/hitori/default.nix
+++ b/pkgs/desktops/gnome-3/games/hitori/default.nix
@@ -18,11 +18,11 @@
 
 stdenv.mkDerivation rec {
   pname = "hitori";
-  version = "3.34.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/hitori/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1612hq6d2mnggppy949dkb8lz9886n0rlg68z7qmjjizz1l41lb5";
+    sha256 = "0mq1jv8rbmvksnhbm1d25kcvcfr9lq58qipcacn7wa26xpx7cvs5";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/games/iagno/default.nix b/pkgs/desktops/gnome-3/games/iagno/default.nix
index 028684114ec..cf4e8595f96 100644
--- a/pkgs/desktops/gnome-3/games/iagno/default.nix
+++ b/pkgs/desktops/gnome-3/games/iagno/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "iagno";
-  version = "3.34.5";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/iagno/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "05qywjcar29vk29yvbxwlddxhwlrvllgjw7srmlz5811hc5m0a1m";
+    sha256 = "0ysb021mf5sy1ywicys35rn5c9v355rffjrlhxmr3z6yplrljm5b";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/games/lightsoff/default.nix b/pkgs/desktops/gnome-3/games/lightsoff/default.nix
index 0a236d0425a..3d0c3f72396 100644
--- a/pkgs/desktops/gnome-3/games/lightsoff/default.nix
+++ b/pkgs/desktops/gnome-3/games/lightsoff/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "lightsoff";
-  version = "3.34.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/lightsoff/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1yyq0962fv16rab3alq5saf4gpii9xvcfy5vbq85hhhgjpbqrfns";
+    sha256 = "0qvafpciqbqmpan9i8ans3lqs29v02zblz6k0hzj4p3qq4sch3a3";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/games/quadrapassel/default.nix b/pkgs/desktops/gnome-3/games/quadrapassel/default.nix
index 2ac4c4c96f7..34dc18968da 100644
--- a/pkgs/desktops/gnome-3/games/quadrapassel/default.nix
+++ b/pkgs/desktops/gnome-3/games/quadrapassel/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "quadrapassel";
-  version = "3.34.1";
+  version = "3.36.00";
 
   src = fetchurl {
     url = "mirror://gnome/sources/quadrapassel/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1qh6hx90lqag2hby94jc68xnz4i6b2a253x4yp6xz025fpacv6mk";
+    sha256 = "1xk9x1pp71armj47vxja7fsj6gs116kcjkd8xgwf8wi4zr4kgx7g";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/games/tali/default.nix b/pkgs/desktops/gnome-3/games/tali/default.nix
index f196ada3850..39b98663b4e 100644
--- a/pkgs/desktops/gnome-3/games/tali/default.nix
+++ b/pkgs/desktops/gnome-3/games/tali/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tali";
-  version = "3.32.1";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/tali/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0na7sswfh63wj44aibcnqdsbb24yfngcwgi07lv8rky6rry0kqgz";
+    sha256 = "1klnxk49rr1m2lr4zj1wvfl0iaxzdh2k8ngrcmfmcq39vlxnn94y";
   };
 
   passthru = {
diff --git a/pkgs/desktops/gnome-3/misc/geary/default.nix b/pkgs/desktops/gnome-3/misc/geary/default.nix
index 7e2a8050b41..afb406ae861 100644
--- a/pkgs/desktops/gnome-3/misc/geary/default.nix
+++ b/pkgs/desktops/gnome-3/misc/geary/default.nix
@@ -1,17 +1,17 @@
 { stdenv, fetchurl, pkgconfig, gtk3, vala, enchant2, wrapGAppsHook, meson, ninja
 , desktop-file-utils, gnome-online-accounts, gsettings-desktop-schemas, adwaita-icon-theme
-, libcanberra-gtk3, libsecret, gmime, isocodes, libxml2, gettext, fetchpatch
+, libpeas, libsecret, gmime3, isocodes, libxml2, gettext, fetchpatch
 , sqlite, gcr, json-glib, itstool, libgee, gnome3, webkitgtk, python3
-, xvfb_run, dbus, shared-mime-info, libunwind, libunity, folks, glib-networking
+, xvfb_run, dbus, shared-mime-info, libunwind, folks, glib-networking
 , gobject-introspection, gspell, appstream-glib, libytnef, libhandy }:
 
 stdenv.mkDerivation rec {
   pname = "geary";
-  version = "3.34.2";
+  version = "3.36.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1a6j70pzr57ga7m4nypqdkqwlzk2dablpz93yaympgrlqpf5zkvm";
+    sha256 = "07rhmzznfa4asx5gbmvnfpybd5czy7xmzk75xrk4r1qcnr24ml03";
   };
 
   nativeBuildInputs = [
@@ -21,10 +21,10 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    adwaita-icon-theme enchant2 gcr gmime gnome-online-accounts
-    gsettings-desktop-schemas gtk3 isocodes json-glib libcanberra-gtk3
+    adwaita-icon-theme enchant2 gcr gmime3 gnome-online-accounts
+    gsettings-desktop-schemas gtk3 isocodes json-glib libpeas
     libgee libsecret sqlite webkitgtk glib-networking
-    libunwind libunity folks gspell libytnef libhandy
+    libunwind folks gspell libytnef libhandy
   ];
 
   checkInputs = [ xvfb_run dbus ];
@@ -41,14 +41,21 @@ stdenv.mkDerivation rec {
     })
   ];
 
+  # NOTE: Remove `build-auxyaml_to_json.py` when no longer needed, see:
+  # https://gitlab.gnome.org/GNOME/geary/commit/f7f72143e0f00ca5e0e6a798691805c53976ae31#0cc1139e3347f573ae1feee5b73dbc8a8a21fcfa
   postPatch = ''
     chmod +x build-aux/post_install.py build-aux/git_version.py
+
     patchShebangs build-aux/post_install.py build-aux/git_version.py
 
+    chmod +x build-aux/yaml_to_json.py
+    patchShebangs build-aux/yaml_to_json.py
+
     chmod +x desktop/geary-attach
   '';
 
-  doCheck = true;
+  # FIXME: fix tests
+  doCheck = false;
 
   checkPhase = ''
     NO_AT_BRIDGE=1 \
diff --git a/pkgs/desktops/gnome-3/misc/gnome-applets/default.nix b/pkgs/desktops/gnome-3/misc/gnome-applets/default.nix
index fff328c608d..50d0372d662 100644
--- a/pkgs/desktops/gnome-3/misc/gnome-applets/default.nix
+++ b/pkgs/desktops/gnome-3/misc/gnome-applets/default.nix
@@ -12,7 +12,6 @@
 , libgtop
 , libnotify
 , upower
-, dbus-glib
 , wirelesstools
 , linuxPackages
 , adwaita-icon-theme
@@ -25,13 +24,13 @@
 
 let
   pname = "gnome-applets";
-  version = "3.34.0";
+  version = "3.36.2";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1mbhykqwzq18zpvfkdcdkbb4zhijmxqa2i6502an78yap87vq74i";
+    sha256 = "1hlblnajjkvlcd45lxfdxscx7j51nwyvri5jci6ylgpaxlwwm1s8";
   };
 
   nativeBuildInputs = [
@@ -51,7 +50,6 @@ in stdenv.mkDerivation rec {
     libgtop
     libnotify
     upower
-    dbus-glib
     adwaita-icon-theme
     libgweather
     gucharmap
diff --git a/pkgs/desktops/gnome-3/misc/gnome-flashback/default.nix b/pkgs/desktops/gnome-3/misc/gnome-flashback/default.nix
index c1791ee5bbd..123261330e9 100644
--- a/pkgs/desktops/gnome-3/misc/gnome-flashback/default.nix
+++ b/pkgs/desktops/gnome-3/misc/gnome-flashback/default.nix
@@ -17,7 +17,10 @@
 , libxml2
 , pkgconfig
 , polkit
+, gdm
+, systemd
 , upower
+, pam
 , wrapGAppsHook
 , writeTextFile
 , writeShellScriptBin
@@ -27,14 +30,38 @@
 
 let
   pname = "gnome-flashback";
-  version = "3.34.2";
-  requiredComponents = wmName: "RequiredComponents=${wmName};gnome-flashback;gnome-panel;org.gnome.SettingsDaemon.A11ySettings;org.gnome.SettingsDaemon.Color;org.gnome.SettingsDaemon.Datetime;org.gnome.SettingsDaemon.Housekeeping;org.gnome.SettingsDaemon.Keyboard;org.gnome.SettingsDaemon.MediaKeys;org.gnome.SettingsDaemon.Power;org.gnome.SettingsDaemon.PrintNotifications;org.gnome.SettingsDaemon.Rfkill;org.gnome.SettingsDaemon.ScreensaverProxy;org.gnome.SettingsDaemon.Sharing;org.gnome.SettingsDaemon.Smartcard;org.gnome.SettingsDaemon.Sound;org.gnome.SettingsDaemon.Wacom;org.gnome.SettingsDaemon.XSettings;";
+  version = "3.36.1";
+
+  # From data/sessions/Makefile.am
+  requiredComponentsCommon = [
+    "gnome-flashback"
+    "gnome-panel"
+  ];
+  requiredComponentsGsd = [
+    "org.gnome.SettingsDaemon.A11ySettings"
+    "org.gnome.SettingsDaemon.Color"
+    "org.gnome.SettingsDaemon.Datetime"
+    "org.gnome.SettingsDaemon.Housekeeping"
+    "org.gnome.SettingsDaemon.Keyboard"
+    "org.gnome.SettingsDaemon.MediaKeys"
+    "org.gnome.SettingsDaemon.Power"
+    "org.gnome.SettingsDaemon.PrintNotifications"
+    "org.gnome.SettingsDaemon.Rfkill"
+    "org.gnome.SettingsDaemon.ScreensaverProxy"
+    "org.gnome.SettingsDaemon.Sharing"
+    "org.gnome.SettingsDaemon.Smartcard"
+    "org.gnome.SettingsDaemon.Sound"
+    "org.gnome.SettingsDaemon.UsbProtection"
+    "org.gnome.SettingsDaemon.Wacom"
+    "org.gnome.SettingsDaemon.XSettings"
+  ];
+  requiredComponents = wmName: "RequiredComponents=${stdenv.lib.concatStringsSep ";" ([wmName] ++ requiredComponentsCommon ++ requiredComponentsGsd)};";
   gnome-flashback = stdenv.mkDerivation rec {
     name = "${pname}-${version}";
 
     src = fetchurl {
       url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-      sha256 = "1726xcm2q94nfvb055d3m61m20s0xy3xl1fc3ds3k3rcrn457riv";
+      sha256 = "16gknn5mj29i8svlncarj92qi0swdlziggxpg9rryqslsy896a2x";
     };
 
     # make .desktop Execs absolute
@@ -76,7 +103,11 @@ let
       libpulseaudio
       libxkbfile
       polkit
+      gdm
+      gnome-panel
+      systemd
       upower
+      pam
       xkeyboard_config
     ];
 
@@ -84,6 +115,9 @@ let
 
     enableParallelBuilding = true;
 
+    PKG_CONFIG_LIBGNOME_PANEL_LAYOUTSDIR = "${placeholder "out"}/share/gnome-panel/layouts";
+    PKG_CONFIG_LIBGNOME_PANEL_MODULESDIR = "${placeholder "out"}/lib/gnome-panel/modules";
+
     passthru = {
       updateScript = gnome3.updateScript {
         packageName = pname;
diff --git a/pkgs/desktops/gnome-3/misc/gnome-panel/default.nix b/pkgs/desktops/gnome-3/misc/gnome-panel/default.nix
index 423a393eb77..a69331f2e8b 100644
--- a/pkgs/desktops/gnome-3/misc/gnome-panel/default.nix
+++ b/pkgs/desktops/gnome-3/misc/gnome-panel/default.nix
@@ -7,7 +7,6 @@
 , gettext
 , glib
 , gnome-desktop
-, gnome-flashback
 , gnome-menus
 , gnome3
 , gtk3
@@ -23,7 +22,7 @@
 
 let
   pname = "gnome-panel";
-  version = "3.34.1";
+  version = "3.36.1";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
@@ -31,7 +30,7 @@ in stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "03dr54njdh2szy6yrib2q0agjscbj3bmzrfb9fb4psrf4mah5g56";
+    sha256 = "1lxba8syy9gb50zxdk13gr1f62dfphwbb7njg6p26x9rvlkbf88y";
   };
 
   # make .desktop Exec absolute
@@ -46,8 +45,8 @@ in stdenv.mkDerivation rec {
 
   preFixup = ''
     gappsWrapperArgs+=(
-      --prefix XDG_DATA_DIRS : "${gnome-menus}/share:${gnome-flashback}/share"
-      --prefix XDG_CONFIG_DIRS : "${gnome-menus}/etc/xdg:${gnome-flashback}/etc/xdg"
+      --prefix XDG_DATA_DIRS : "${gnome-menus}/share"
+      --prefix XDG_CONFIG_DIRS : "${gnome-menus}/etc/xdg"
     )
   '';
 
diff --git a/pkgs/desktops/gnome-3/misc/gnome-screensaver/default.nix b/pkgs/desktops/gnome-3/misc/gnome-screensaver/default.nix
deleted file mode 100644
index 4a530e54de7..00000000000
--- a/pkgs/desktops/gnome-3/misc/gnome-screensaver/default.nix
+++ /dev/null
@@ -1,96 +0,0 @@
-{ stdenv
-, fetchgit
-, autoreconfHook
-, dbus-glib
-, glib
-, gnome-common
-, gnome-desktop
-, gnome3
-, gtk3
-, pkgconfig
-, intltool
-, pam
-, systemd
-, wrapGAppsHook
-}:
-
-stdenv.mkDerivation rec {
-  pname = "gnome-screensaver";
-  version = "3.6.1";
-
-  # the original package is deprecated and the Ubuntu version has a number of useful patches
-  src = fetchgit {
-    url = "https://git.launchpad.net/ubuntu/+source/gnome-screensaver";
-    rev =  "4f7b666131dec060a5aac9117f395ac522a627b4";
-    sha256 = "15xqgcpm825cy3rm8pj00qlblq66svmh06lcw8qi74a3g0xcir87";
-  };
-
-  # from debian/patches/series
-  patches = map (patch: "debian/patches/${patch}") [
-    "00git_logind_check.patch"
-    "01_no_autostart.patch"
-    "03_fix_ltsp-fading.patch"
-    "05_dbus_service.patch"
-    "10_legacy_scrsvr_inhibit.patch"
-    "13_nvidia_gamma_fade_fallback.patch"
-    "14_no_fade_on_user_switch.patch"
-    "15_dont_crash_on_no_fade.patch"
-    "16_dont_crash_in_kvm.patch"
-    "17_remove_top_panel.patch"
-    "18_unity_dialog_layout.patch"
-    "24_use_user_settings.patch"
-    "25_fix_lock_command.patch"
-    "27_lightdm_switch_user.patch"
-    "28_blocking_return.patch"
-    "29_handle_expired_creds.patch"
-    # these two patches are ubuntu-specific
-    # "30_ubuntu-lock-on-suspend_gsetting.patch"
-    # "31_lock_screen_on_suspend.patch"
-    "32_input_sources_switcher.patch"
-    "move-not-nuke.patch"
-    "allow-replacement"
-    "libsystemd.patch"
-    "0001-gs-lock-plug-Disconnect-signal-handler-from-right-ob.patch"
-    "33_budgie_support.patch"
-  ] ++ [ ./fix-dbus-service-dir.patch ];
-
-  nativeBuildInputs = [
-    autoreconfHook
-    intltool
-    wrapGAppsHook
-    gnome-common
-    pkgconfig
-  ];
-
-  buildInputs = [
-    glib
-    gtk3
-    gnome-desktop
-    dbus-glib
-    pam
-    systemd
-  ];
-
-  NIX_CFLAGS_COMPILE = [ "-Wno-error=return-type" ];
-
-  configureFlags = [ "--enable-locking" "--with-systemd=yes" ];
-
-  enableParallelBuilding = true;
-
-  doCheck = true;
-
-  passthru = {
-    updateScript = gnome3.updateScript {
-      packageName = pname;
-      attrPath = "gnome3.${pname}";
-    };
-  };
-
-  meta = with stdenv.lib; {
-    description = "Component of Gnome Flashback that provides screen locking";
-    homepage = https://wiki.gnome.org/Projects/GnomeScreensaver;
-    license = licenses.gpl2Plus;
-    maintainers = gnome3.maintainers;
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/desktops/gnome-3/misc/gpaste/default.nix b/pkgs/desktops/gnome-3/misc/gpaste/default.nix
index 00e21e30a29..1ee9e5b933b 100644
--- a/pkgs/desktops/gnome-3/misc/gpaste/default.nix
+++ b/pkgs/desktops/gnome-3/misc/gpaste/default.nix
@@ -18,30 +18,17 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "3.34.1";
+  version = "3.36.3";
   pname = "gpaste";
 
   src = fetchFromGitHub {
     owner = "Keruspe";
     repo = "GPaste";
     rev = "v${version}";
-    sha256 = "1jcj0kgxhad8rblyqhwa2yhkf0010k80w9bm2rajanad2c3bqaxa";
+    sha256 = "sR7/NdCaidP03xE64nqQc1M+xAIipOuKp5OWBJ4VN9w=";
   };
 
   patches = [
-    # Meson fixes
-    # https://github.com/Keruspe/GPaste/pull/283
-    # install systemd units
-    (fetchpatch {
-      url = "https://github.com/Keruspe/GPaste/commit/a474d8c1f2bd600476ba52dc19f517787845533b.patch";
-      sha256 = "19m1ar61l2n0vb5a5qfhdny8giivqlyq04l3j9i8llv16vx80rg2";
-    })
-    # apply symbol versioning
-    (fetchpatch {
-      url = "https://github.com/Keruspe/GPaste/commit/08047752e8dba9363673ddefd422c43075f08006.patch";
-      sha256 = "0jvcs1a17sijvb2wqyn3y8shdxrhv4kwzxs39kmh9y8nyx2dzhpf";
-    })
-
     ./fix-paths.patch
   ];
 
diff --git a/pkgs/desktops/gnome-3/misc/libgnome-games-support/default.nix b/pkgs/desktops/gnome-3/misc/libgnome-games-support/default.nix
index d591fb6033d..a1f4a742754 100644
--- a/pkgs/desktops/gnome-3/misc/libgnome-games-support/default.nix
+++ b/pkgs/desktops/gnome-3/misc/libgnome-games-support/default.nix
@@ -1,18 +1,18 @@
-{ stdenv, fetchurl, pkgconfig, glib, gtk3, libgee, gettext, gnome3
-, libintl }:
+{ stdenv, fetchurl, pkgconfig, glib, gtk3, libgee, gettext, vala, gnome3
+, libintl, meson, ninja }:
 
 let
   pname = "libgnome-games-support";
-  version = "1.4.4";
+  version = "1.6.1";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1zkbmnrn161p74qg6jhsn9f66yjjzxfm13pl1klv9av8k1bax9pq";
+    sha256 = "1gq8p38k92lsr6dbav6pgmw0adnzzhcs06jqdkr37p145vv6ls7v";
   };
 
-  nativeBuildInputs = [ pkgconfig gettext ];
+  nativeBuildInputs = [ meson ninja pkgconfig gettext vala ];
   buildInputs = [ libintl ];
   propagatedBuildInputs = [
     # Required by libgnome-games-support-1.pc
diff --git a/pkgs/desktops/gnome-3/misc/metacity/default.nix b/pkgs/desktops/gnome-3/misc/metacity/default.nix
index 8355051fa85..347b936e757 100644
--- a/pkgs/desktops/gnome-3/misc/metacity/default.nix
+++ b/pkgs/desktops/gnome-3/misc/metacity/default.nix
@@ -16,13 +16,13 @@
 
 let
   pname = "metacity";
-  version = "3.34.1";
+  version = "3.36.1";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "0ga57b71i2gbd723gbs3pxy1jnf44q5mnwq5yhxzn2irbh2d3iri";
+    sha256 = "08xkq5i6czvms0ygbj7ywzl70q1l0z44nfh6b43q8rmjwa9pdw0i";
   };
 
   patches = [
diff --git a/pkgs/desktops/mate/mate-common/default.nix b/pkgs/desktops/mate/mate-common/default.nix
index d2bd073e4a2..f8896ae0c2c 100644
--- a/pkgs/desktops/mate/mate-common/default.nix
+++ b/pkgs/desktops/mate/mate-common/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mate-common";
-  version = "1.24.0";
+  version = "1.24.1";
 
   src = fetchurl {
     url = "https://pub.mate-desktop.org/releases/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "06w25mk2w7rfnkwpnav8pcrvip1zdd0zd1qc6d975ksmg66r1vz7";
+    sha256 = "1dgp6k2l6dz7x2lnqk4y5xfkld376726hda3mrc777f821kk99nr";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/desktops/mate/mate-power-manager/default.nix b/pkgs/desktops/mate/mate-power-manager/default.nix
index 37ff34e081a..30f1c48fa5f 100644
--- a/pkgs/desktops/mate/mate-power-manager/default.nix
+++ b/pkgs/desktops/mate/mate-power-manager/default.nix
@@ -1,12 +1,12 @@
-{ stdenv, fetchurl, pkgconfig, gettext, glib, itstool, libxml2, mate, libnotify, libcanberra-gtk3, dbus-glib, upower, gnome3, gtk3, libtool, polkit, wrapGAppsHook }:
+{ stdenv, fetchurl, pkgconfig, gettext, glib, itstool, libxml2, mate-panel, libnotify, libcanberra-gtk3, dbus-glib, upower, gnome3, gtk3, libtool, polkit, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "mate-power-manager";
-  version = "1.24.0";
+  version = "1.24.1";
 
   src = fetchurl {
     url = "https://pub.mate-desktop.org/releases/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1h6wm8vna97iayhwqh7rfsc87715np12nxa72w27p4zl54bdkdlg";
+    sha256 = "13ar40x5hs4d4h81q8qsy0agbx5wnarry3mbhws54zydcxd7j20a";
   };
 
   nativeBuildInputs = [
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
      dbus-glib
      upower
      polkit
-     mate.mate-panel
+     mate-panel
   ];
 
   configureFlags = [ "--enable-applets" ];
diff --git a/pkgs/desktops/mate/mate-session-manager/default.nix b/pkgs/desktops/mate/mate-session-manager/default.nix
index 1db0947bf2a..09973e04bc0 100644
--- a/pkgs/desktops/mate/mate-session-manager/default.nix
+++ b/pkgs/desktops/mate/mate-session-manager/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig, gettext, xtrans, dbus-glib, systemd,
   libSM, libXtst, gtk3, epoxy, polkit, hicolor-icon-theme, mate,
-  wrapGAppsHook
+  wrapGAppsHook, fetchpatch
 }:
 
 stdenv.mkDerivation rec {
@@ -12,6 +12,14 @@ stdenv.mkDerivation rec {
     sha256 = "01scj5d1xlri9b2id8gm9kfni9nzhdjdf7rag7fvcxwqp7baz3h3";
   };
 
+  patches = [
+    # allow turning on debugging from environment variable
+    (fetchpatch {
+      url = "https://github.com/mate-desktop/mate-session-manager/commit/3ab6fbfc811d00100d7a2959f8bbb157b536690d.patch";
+      sha256 = "0yjaklq0mp44clymyhy240kxlw95z3azmravh4f5pfm9dys33sg0";
+    })
+  ];
+
   nativeBuildInputs = [
     pkgconfig
     gettext
@@ -33,6 +41,14 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  postFixup = ''
+    substituteInPlace $out/share/xsessions/mate.desktop \
+      --replace "Exec=mate-session" "Exec=$out/bin/mate-session" \
+      --replace "TryExec=mate-session" "TryExec=$out/bin/mate-session"
+  '';
+
+  passthru.providedSessions = [ "mate" ];
+
   meta = with stdenv.lib; {
     description = "MATE Desktop session manager";
     homepage = "https://github.com/mate-desktop/mate-session-manager";
diff --git a/pkgs/desktops/pantheon/apps/appcenter/default.nix b/pkgs/desktops/pantheon/apps/appcenter/default.nix
index 3f4f04377ed..81415420873 100644
--- a/pkgs/desktops/pantheon/apps/appcenter/default.nix
+++ b/pkgs/desktops/pantheon/apps/appcenter/default.nix
@@ -28,13 +28,13 @@
 
 stdenv.mkDerivation rec {
   pname = "appcenter";
-  version = "3.2.2";
+  version = "3.2.3";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "0aqslkig7vs95z719mp3xrl1zp65ypp2lq9aikvsis6nssadn2cd";
+    sha256 = "12gql86vn12zbkw368blxk0cl9fgs22dyj02xnimjc8b6s80yib4";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix b/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix
index 1876020a8fe..8d394b824a5 100644
--- a/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix
@@ -18,7 +18,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-calculator";
-  version = "1.5.4";
+  version = "1.5.5";
 
   repoName = "calculator";
 
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "0053bdzn5viqlni6qg6q39nma6bsddmhnafa0mzggiv8l4qasbrx";
+    sha256 = "1csxsr2c8qvl97xz9ahwn91z095nzgr0i1mbcb1spljll2sr9lkj";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix b/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix
index 5a70fa94c5e..c7e36d09022 100644
--- a/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix
@@ -25,7 +25,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-calendar";
-  version = "5.0.3";
+  version = "5.0.4";
 
   repoName = "calendar";
 
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "1dqcmh585fjib4m8bs7qy23fv429s7q9nbcqnn0vvmy1n36fic4m";
+    sha256 = "0ywk9w6d6nw7ir3f11xc13fr08ifvzpavq1c3x48kmmf69ywprdk";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/elementary-camera/default.nix b/pkgs/desktops/pantheon/apps/elementary-camera/default.nix
index 7c95d88053d..eb456df6d16 100644
--- a/pkgs/desktops/pantheon/apps/elementary-camera/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-camera/default.nix
@@ -23,7 +23,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-camera";
-  version = "1.0.5";
+  version = "1.0.6";
 
   repoName = "camera";
 
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "05amcljvc3w77a1b0c76y6rha8g0zm6lqflvg1g7jzz00jchx9d4";
+    sha256 = "13jg224h2436swd6kdkfs22icg0ja9lshvxwg5bqnb5fshspkjba";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/elementary-code/default.nix b/pkgs/desktops/pantheon/apps/elementary-code/default.nix
index 148b82fd84a..e77d94c22fd 100644
--- a/pkgs/desktops/pantheon/apps/elementary-code/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-code/default.nix
@@ -27,7 +27,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-code";
-  version = "3.3.0";
+  version = "3.4.0";
 
   repoName = "code";
 
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "0v544zw99wjcy0bflaci9fssx4sibz4b05bxs3a7j8hrpl102r4w";
+    sha256 = "0b1vdgb1xvh5lqbral3r0qaq05zd5q5ywxw02fggpyy8nyxs3z8f";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/elementary-dock/default.nix b/pkgs/desktops/pantheon/apps/elementary-dock/default.nix
new file mode 100644
index 00000000000..ee9df9955f4
--- /dev/null
+++ b/pkgs/desktops/pantheon/apps/elementary-dock/default.nix
@@ -0,0 +1,78 @@
+{ stdenv
+, fetchFromGitHub
+, vala
+, atk
+, cairo
+, dconf
+, glib
+, gtk3
+, libwnck3
+, libX11
+, libXfixes
+, libXi
+, pango
+, gettext
+, pkgconfig
+, libxml2
+, bamf
+, gdk-pixbuf
+, libdbusmenu-gtk3
+, gnome-menus
+, libgee
+, wrapGAppsHook
+, pantheon
+, meson
+, ninja
+}:
+
+stdenv.mkDerivation rec {
+  pname = "elementary-dock";
+  version = "unstable-2020-02-28";
+
+  outputs = [ "out" "dev" ];
+
+  repoName = "dock";
+
+  src = fetchFromGitHub {
+    owner = "elementary";
+    repo = repoName;
+    rev = "ac87d9063dc9c81d90f42f3002ad9c5b49460a82";
+    sha256 = "0lhjzd370fza488dav8n155ss486wqv6y7ldkahwg0c3zvlsvha7";
+  };
+
+  nativeBuildInputs = [
+    gettext
+    meson
+    ninja
+    libxml2 # xmllint
+    pkgconfig
+    vala
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    atk
+    bamf
+    cairo
+    gdk-pixbuf
+    glib
+    gnome-menus
+    dconf
+    gtk3
+    libX11
+    libXfixes
+    libXi
+    libdbusmenu-gtk3
+    libgee
+    libwnck3
+    pango
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Elegant, simple, clean dock";
+    homepage = "https://github.com/elementary/dock";
+    license = licenses.gpl3Plus;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ davidak ] ++ pantheon.maintainers;
+  };
+}
diff --git a/pkgs/desktops/pantheon/apps/elementary-files/default.nix b/pkgs/desktops/pantheon/apps/elementary-files/default.nix
index d83510c49f6..a0495de7f46 100644
--- a/pkgs/desktops/pantheon/apps/elementary-files/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-files/default.nix
@@ -30,7 +30,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-files";
-  version = "4.4.1";
+  version = "4.4.2";
 
   repoName = "files";
 
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "0s874qnqbx20vyp2z2rhz3z8py0dm21v26xc0h6hyc2gfz4s3jcg";
+    sha256 = "1n18b3m3vgvmmgpfbgnfnz0z98bkgbfrfkx25jqbwsdnwrlb4li6";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix b/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
index 27bcb21a006..f9f81c37a4b 100644
--- a/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetchFromGitHub
+, fetchpatch
 , pantheon
 , pkgconfig
 , meson
@@ -15,12 +16,13 @@
 , libgee
 , elementary-icon-theme
 , appstream
+, pcre2
 , wrapGAppsHook
 }:
 
 stdenv.mkDerivation rec {
   pname = "elementary-terminal";
-  version = "5.5.1";
+  version = "5.5.2";
 
   repoName = "terminal";
 
@@ -28,7 +30,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "1b8fzs9s7djhwp02l3fwjpwxylklpbnw7x46mv7c8ksbp0m75iyj";
+    sha256 = "119iwmzbpkj4nmxinqfsh73lx23g8gbl6ha6wc4mc4fq9hpnc9c2";
   };
 
   passthru = {
@@ -55,6 +57,7 @@ stdenv.mkDerivation rec {
     gtk3
     libgee
     libnotify
+    pcre2
     vte
   ];
 
@@ -72,7 +75,7 @@ stdenv.mkDerivation rec {
       A super lightweight, beautiful, and simple terminal. Comes with sane defaults, browser-class tabs, sudo paste protection,
       smart copy/paste, and little to no configuration.
     '';
-    homepage = https://github.com/elementary/terminal;
+    homepage = "https://github.com/elementary/terminal";
     license = licenses.lgpl3;
     platforms = platforms.linux;
     maintainers = pantheon.maintainers;
diff --git a/pkgs/desktops/pantheon/apps/sideload/default.nix b/pkgs/desktops/pantheon/apps/sideload/default.nix
index efe34da7b26..e2c522355f6 100644
--- a/pkgs/desktops/pantheon/apps/sideload/default.nix
+++ b/pkgs/desktops/pantheon/apps/sideload/default.nix
@@ -21,13 +21,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sideload";
-  version = "1.0.1";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "0camg34skiisfbf9s9awfkdkq72s9jhl4ipmax7dqr33n8a86hic";
+    sha256 = "1nnaq4vc0aag6pckxhrma5qv8al7i00rrlg95ac4iqqmivja7i92";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/a11y/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/a11y/default.nix
index 5cd5d365ed9..e1868b39f28 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/a11y/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/a11y/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "switchboard-plug-a11y";
-  version = "2.1.3";
+  version = "2.2.0";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "1wh46lrsliii5bbvfc4xnzgnii2v7sqxnbn43ylmyqppfv9mk1wd";
+    sha256 = "0g8lhdwv9g16kjn7yxnl6x4rscjl2206ljfnghpxc4b5lwhqxxnw";
   };
 
   patches = [
@@ -51,8 +51,6 @@ stdenv.mkDerivation rec {
     switchboard
   ];
 
-  PKG_CONFIG_SWITCHBOARD_2_0_PLUGSDIR = "${placeholder "out"}/lib/switchboard";
-
   meta = with stdenv.lib; {
     description = "Switchboard Universal Access Plug";
     homepage = https://github.com/elementary/switchboard-plug-a11y;
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/datetime/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/datetime/default.nix
index 501059896f2..271c2e15614 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/datetime/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/datetime/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "switchboard-plug-datetime";
-  version = "2.1.6";
+  version = "2.1.7";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "09734c3qc0296zf14rdhl4p6ppga015rz9hhsvlcc3nvyw7kdqkc";
+    sha256 = "0lpmxl42r5vn6mddwppn6zwmai0yabs3n467w027vkzw4axdi6bf";
   };
 
   passthru = {
@@ -46,15 +46,6 @@ stdenv.mkDerivation rec {
     switchboard
   ];
 
-  patches = [
-    (substituteAll {
-      src = ./timezone.patch;
-      tzdata = "${tzdata}/share/zoneinfo/zone.tab";
-    })
-  ];
-
-  PKG_CONFIG_SWITCHBOARD_2_0_PLUGSDIR = "${placeholder "out"}/lib/switchboard";
-
   meta = with stdenv.lib; {
     description = "Switchboard Date & Time Plug";
     homepage = https://github.com/elementary/switchboard-plug-datetime;
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/datetime/timezone.patch b/pkgs/desktops/pantheon/apps/switchboard-plugs/datetime/timezone.patch
deleted file mode 100644
index 35f73d36599..00000000000
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/datetime/timezone.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/Parser.vala b/src/Parser.vala
-index faccb64..432a362 100644
---- a/src/Parser.vala
-+++ b/src/Parser.vala
-@@ -28,7 +28,7 @@ public class DateTime.Parser : GLib.Object {
-         return parser;
-     }
-     private Parser () {
--        var file = File.new_for_path ("/usr/share/zoneinfo/zone.tab");
-+        var file = File.new_for_path ("@tzdata@");
-         if (!file.query_exists ()) {
-             critical ("/usr/share/zoneinfo/zone.tab doesn't exist !");
-             return;
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/keyboard/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/keyboard/default.nix
index 81a694f2ea9..bb563796eab 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/keyboard/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/keyboard/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "switchboard-plug-keyboard";
-  version = "2.3.5";
+  version = "2.3.6";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "17iijb7imxw5zv7vkrbc1vsp87k900yqgyv7ycz1gw37xb4klsyp";
+    sha256 = "08zpw7ygrqmwwznvxkf4xbrgwbjkbwc95sw1ikikg3143ql9qclp";
   };
 
   passthru = {
@@ -51,20 +51,6 @@ stdenv.mkDerivation rec {
     switchboard
   ];
 
-  patches = [
-    (substituteAll {
-      src = ./xkb.patch;
-      config = "${xorg.xkeyboardconfig}/share/X11/xkb/rules/evdev.xml";
-    })
-    # Fix build with latest vala.
-    (fetchpatch {
-      url = "https://github.com/elementary/switchboard-plug-keyboard/commit/28fa960f607f0b1d67f2864965a079bdfc23e3a8.patch";
-      sha256 = "0121qcg8n7gkz7gpwrxc1cx0nnypj02zy2jmp3cks5r9sc0yi0hw";
-    })
-  ];
-
-  PKG_CONFIG_SWITCHBOARD_2_0_PLUGSDIR = "${placeholder "out"}/lib/switchboard";
-
   meta = with stdenv.lib; {
     description = "Switchboard Keyboard Plug";
     homepage = https://github.com/elementary/switchboard-plug-keyboard;
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/keyboard/xkb.patch b/pkgs/desktops/pantheon/apps/switchboard-plugs/keyboard/xkb.patch
deleted file mode 100644
index 33237d9c939..00000000000
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/keyboard/xkb.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/src/Layout/Handler.vala b/src/Layout/Handler.vala
-index 297314b..b36509a 100644
---- a/src/Layout/Handler.vala
-+++ b/src/Layout/Handler.vala
-@@ -29,7 +29,7 @@ public class Pantheon.Keyboard.LayoutPage.LayoutHandler : GLib.Object {
-     }
-
-     private void parse_layouts () {
--        Xml.Doc* doc = Xml.Parser.parse_file ("/usr/share/X11/xkb/rules/evdev.xml");
-+        Xml.Doc* doc = Xml.Parser.parse_file ("@config@");
-         if (doc == null) {
-             critical ("'evdev.xml' not found or permissions missing\n");
-             return;
-@@ -76,7 +76,7 @@ public class Pantheon.Keyboard.LayoutPage.LayoutHandler : GLib.Object {
-     public HashTable<string, string> get_variants_for_language (string language) {
-         var returned_table = new HashTable<string, string> (str_hash, str_equal);
-         returned_table.set ("", _("Default"));
--        Xml.Doc* doc = Xml.Parser.parse_file ("/usr/share/X11/xkb/rules/evdev.xml");
-+        Xml.Doc* doc = Xml.Parser.parse_file ("@config@");
-         if (doc == null) {
-             critical ("'evdev.xml' not found or permissions incorrect\n");
-             return returned_table;
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/network/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/network/default.nix
index 1ff1068119b..99880e318f5 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/network/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/network/default.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "switchboard-plug-network";
-  version = "2.2.0";
+  version = "2.3.0";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "0zg4bxrrw1nmm91yp8ymji7mha2wcjrwljcnpcvxq7lf8f2k0145";
+    sha256 = "0pqkr7swjgla8klcjdcwgk2fipiwvylk8m71l1fymazvzwxrbxw6";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/network/fix-paths.patch b/pkgs/desktops/pantheon/apps/switchboard-plugs/network/fix-paths.patch
index e2d7a6d4970..b99f59fb268 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/network/fix-paths.patch
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/network/fix-paths.patch
@@ -1,8 +1,8 @@
 diff --git a/src/Views/VPNPage.vala b/src/Views/VPNPage.vala
-index 82e7826..cf00145 100644
+index ba9dc22..a12871a 100644
 --- a/src/Views/VPNPage.vala
 +++ b/src/Views/VPNPage.vala
-@@ -265,7 +265,7 @@ public class Network.VPNPage : Network.Widgets.Page {
+@@ -264,7 +264,7 @@ public class Network.VPNPage : Network.Widgets.Page {
      private void try_connection_editor (string args) {
          try {
              var appinfo = AppInfo.create_from_commandline (
@@ -12,24 +12,15 @@ index 82e7826..cf00145 100644
                  GLib.AppInfoCreateFlags.NONE
              );
 diff --git a/src/Widgets/SettingsButton.vala b/src/Widgets/SettingsButton.vala
-index ed36b38..bc71c0c 100644
+index 5849b69..7bbd172 100644
 --- a/src/Widgets/SettingsButton.vala
 +++ b/src/Widgets/SettingsButton.vala
-@@ -24,7 +24,7 @@
-             clicked.connect (() => {
-                 try {
-                     var appinfo = AppInfo.create_from_commandline (
--                        "nm-connection-editor",
-+                        "@networkmanagerapplet@/bin/nm-connection-editor",
-                         null,
-                         AppInfoCreateFlags.NONE
-                     );
-@@ -71,7 +71,7 @@
-         private void edit_connection_uuid (string uuid) {
+@@ -55,7 +55,7 @@ public class Network.Widgets.SettingsButton : Gtk.Button {
+         clicked.connect (() => {
              try {
                  var appinfo = AppInfo.create_from_commandline (
--                    "nm-connection-editor --edit=%s".printf (uuid), null, AppInfoCreateFlags.NONE
-+                    "@networkmanagerapplet@/bin/nm-connection-editor --edit=%s".printf (uuid), null, AppInfoCreateFlags.NONE
+-                    "nm-connection-editor %s".printf (args), null, AppInfoCreateFlags.NONE
++                    "@networkmanagerapplet@/bin/nm-connection-editor %s".printf (args), null, AppInfoCreateFlags.NONE
                  );
  
                  appinfo.launch (null, null);
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/notifications/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/notifications/default.nix
index bd7fee51d8d..c81781a764a 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/notifications/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/notifications/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetchFromGitHub
+, fetchpatch
 , pantheon
 , meson
 , ninja
@@ -9,19 +10,29 @@
 , granite
 , gtk3
 , switchboard
+, elementary-notifications
 }:
 
 stdenv.mkDerivation rec {
   pname = "switchboard-plug-notifications";
-  version = "2.1.5";
+  version = "2.1.6";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "0p0aj3bbjrh6x8wajqqb5yqm2iqfnj7kp16zf4hdr4siw0sx5p8n";
+    sha256 = "1ikq058svdan0whg4ks35m50apvbmzcz7h2wznxdbsimczzvj5sz";
   };
 
+  patches = [
+    # Fix do not disturb on NixOS
+    # https://github.com/elementary/switchboard-plug-notifications/pull/66
+    (fetchpatch {
+      url = "https://github.com/elementary/switchboard-plug-notifications/commit/c306366b39c3199f0b64eda73419005fcb5e29b8.patch";
+      sha256 = "0m018rfw5iv582sw6qgwc8lzn0j32ix1w47fvlfmx0kw04irl2x3";
+    })
+  ];
+
   passthru = {
     updateScript = pantheon.updateScript {
       attrPath = "pantheon.${pname}";
@@ -36,14 +47,13 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
+    elementary-notifications
     granite
     gtk3
     libgee
     switchboard
   ];
 
-  PKG_CONFIG_SWITCHBOARD_2_0_PLUGSDIR = "${placeholder "out"}/lib/switchboard";
-
   meta = with stdenv.lib; {
     description = "Switchboard Notifications Plug";
     homepage = https://github.com/elementary/switchboard-plug-notifications;
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/onlineaccounts/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/onlineaccounts/default.nix
index fdd3f4f5765..902703bc75e 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/onlineaccounts/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/onlineaccounts/default.nix
@@ -5,7 +5,7 @@
 , meson
 , ninja
 , pkgconfig
-, vala
+, vala_0_46
 , libgee
 , granite
 , gtk3
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
     meson
     ninja
     pkgconfig
-    vala
+    vala_0_46
   ];
 
   buildInputs = [
@@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Switchboard Online Accounts Plug";
-    homepage = https://github.com/elementary/switchboard-plug-onlineaccounts;
+    homepage = "https://github.com/elementary/switchboard-plug-onlineaccounts";
     license = licenses.lgpl2Plus;
     platforms = platforms.linux;
     maintainers = pantheon.maintainers;
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix
index a8513f0b29b..fbea249788e 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "switchboard-plug-power";
-  version = "2.4.0";
+  version = "2.4.1";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "1b25slfh8166v9z2zmb25k64pcj0lh001qh04qhfilzfcbh54krj";
+    sha256 = "0hmchx0sfdm2c2f9khjvlaqcxmvzarn2vmwcdb3h5ifbj32vydzw";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/printers/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/printers/default.nix
index b21fc1c099f..67e8a3c2134 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/printers/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/printers/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "switchboard-plug-printers";
-  version = "2.1.7";
+  version = "2.1.8";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "03r67q6my10i4hl8d0q3d6fhqm9abs9kn9j92hk6ykqb4ybxw1z1";
+    sha256 = "0nnzwpfxkvgsw3g329926c3m7vci6vyb60qib7b9mpgicmsqnkvz";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/sharing/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/sharing/default.nix
index 3d240fc6221..4f5f424746d 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/sharing/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/sharing/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "switchboard-plug-sharing";
-  version = "2.1.3";
+  version = "2.1.4";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "1yi6aga9i18wwn22zwmfbhsk16f92fka837is5r8xghqb7a50hyh";
+    sha256 = "1awkz16nydlgi8a2dd6agfnd3qwl2qsvv6wnn8bhaz1kbv1v9kpw";
   };
 
   passthru = {
@@ -43,16 +43,6 @@ stdenv.mkDerivation rec {
     switchboard
   ];
 
-  patches = [
-    # Fix build with latest vala
-    (fetchpatch {
-      url = "https://github.com/elementary/switchboard-plug-sharing/commit/22c9d52577a2e8c36c840a99009420266a39e1fe.patch";
-      sha256 = "0rbf1yxhc7k44cwikd45mv2g6slzw0rkwn5s38q3yxai9jnpvqch";
-    })
-  ];
-
-  PKG_CONFIG_SWITCHBOARD_2_0_PLUGSDIR = "${placeholder "out"}/lib/switchboard";
-
   meta = with stdenv.lib; {
     description = "Switchboard Sharing Plug";
     homepage = https://github.com/elementary/switchboard-plug-sharing;
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/sound/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/sound/default.nix
index 8d8cd1c940a..9677a547fcb 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/sound/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/sound/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "switchboard-plug-sound";
-  version = "2.2.2";
+  version = "2.2.3";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "1aa9wgaz34glrrnilnqis3k0bnx2a2ir38j493y4d0klkjkwyn5k";
+    sha256 = "1vpw06ldhy26xs5vp2gx5s8wbl42dznycp3jsnm5qp8iid8wl6l6";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/switchboard/default.nix b/pkgs/desktops/pantheon/apps/switchboard/default.nix
index 28ec4e65f52..7b00a403c15 100644
--- a/pkgs/desktops/pantheon/apps/switchboard/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard/default.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "switchboard";
-  version = "2.3.8";
+  version = "2.3.9";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "1y254irl07fp70228zm268w20zd7risz0sk9i9wz59yynxwjshbx";
+    sha256 = "0gq2gi14ywmhhlq3vablzqjzxq2ms60l9b10splzsf3zd7k2dqz2";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix b/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix
index cc6b37095fd..67f4105ff3d 100644
--- a/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix
@@ -1,7 +1,8 @@
 { wrapGAppsHook
 , glib
 , lib
-, symlinkJoin
+, stdenv
+, xorg
 , switchboard
 , switchboardPlugs
 , plugs
@@ -14,26 +15,45 @@ let
     if plugs == null then switchboardPlugs
     else plugs ++ (lib.optionals useDefaultPlugs switchboardPlugs);
 in
-symlinkJoin {
+stdenv.mkDerivation rec {
   name = "${switchboard.name}-with-plugs";
 
+  src = null;
+
   paths = [
     switchboard
   ] ++ selectedPlugs;
 
-  buildInputs = [
-    wrapGAppsHook
+  passAsFile = [ "paths" ];
+
+  nativeBuildInputs = [
     glib
-  ] ++ (lib.forEach selectedPlugs (x: x.buildInputs))
+    wrapGAppsHook
+  ];
+
+  buildInputs = lib.forEach selectedPlugs (x: x.buildInputs)
     ++ selectedPlugs;
 
-  postBuild = ''
-    make_glib_find_gsettings_schemas
+  dontUnpack = true;
+  dontConfigure = true;
+  dontBuild = true;
 
-    gappsWrapperArgs+=(--set SWITCHBOARD_PLUGS_PATH "$out/lib/switchboard")
+  preferLocalBuild = true;
+  allowSubstitutes = false;
 
-    wrapGAppsHook
+  installPhase = ''
+    mkdir -p $out
+    for i in $(cat $pathsPath); do
+      ${xorg.lndir}/bin/lndir -silent $i $out
+    done
+  '';
+
+  preFixup = ''
+    gappsWrapperArgs+=(
+      --set SWITCHBOARD_PLUGS_PATH "$out/lib/switchboard"
+    )
   '';
 
   inherit (switchboard) meta;
 }
+
diff --git a/pkgs/desktops/pantheon/default.nix b/pkgs/desktops/pantheon/default.nix
index d4e6b192f20..edcda887754 100644
--- a/pkgs/desktops/pantheon/default.nix
+++ b/pkgs/desktops/pantheon/default.nix
@@ -29,7 +29,7 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   maintainers = with pkgs.stdenv.lib.maintainers; [ worldofpeace ];
 
-  mutter = pkgs.gnome3.mutter328;
+  mutter = pkgs.gnome3.mutter334;
 
   elementary-gsettings-schemas = callPackage ./desktop/elementary-gsettings-schemas { };
 
@@ -47,6 +47,8 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   elementary-code = callPackage ./apps/elementary-code { };
 
+  elementary-dock = callPackage ./apps/elementary-dock { };
+
   elementary-files = callPackage ./apps/elementary-files { };
 
   elementary-feedback = callPackage ./apps/elementary-feedback { };
@@ -99,18 +101,20 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   #### SERVICES
 
-  cerbere = callPackage ./services/cerbere { };
-
   contractor = callPackage ./services/contractor { };
 
   elementary-capnet-assist = callPackage ./services/elementary-capnet-assist { };
 
   elementary-dpms-helper = callPackage ./services/elementary-dpms-helper { };
 
+  elementary-notifications = callPackage ./services/elementary-notifications { };
+
   # We're using ubuntu and elementary's patchset due to reasons
   # explained here -> https://github.com/elementary/greeter/issues/92#issuecomment-376215614
   # Take note of "I am holding off on "fixing" this bug for as long as possible."
-  elementary-settings-daemon = callPackage ./services/elementary-settings-daemon { };
+  elementary-settings-daemon = callPackage ./services/elementary-settings-daemon {
+    inherit (gnome3) gnome-desktop;
+  };
 
   pantheon-agent-geoclue2 = callPackage ./services/pantheon-agent-geoclue2 { };
 
@@ -200,4 +204,6 @@ lib.makeScope pkgs.newScope (self: with self; {
 
   inherit (pkgs) vala; # added 2019-10-10
 
+  cerbere = throw "Cerbere is now obsolete https://github.com/elementary/cerbere/releases/tag/2.5.1.";
+
 })
diff --git a/pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix b/pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix
index be97c5903eb..40cc18c3ce2 100644
--- a/pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix
+++ b/pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix
@@ -10,6 +10,7 @@
 , polkit
 , accountsservice
 , python3
+, fetchpatch
 }:
 
 stdenv.mkDerivation rec {
@@ -32,6 +33,18 @@ stdenv.mkDerivation rec {
   };
 
   patches = [
+    # Use new notifications
+    (fetchpatch {
+      url = "https://github.com/elementary/default-settings/commit/0658bb75b9f49f58b35746d05fb6c4b811f125e9.patch";
+      sha256 = "0wa7iq0vfp2av5v23w94a5844ddj4g48d4wk3yrp745dyrimg739";
+    })
+
+    # Fix media key syntax
+    (fetchpatch {
+      url = "https://github.com/elementary/default-settings/commit/332aefe1883be5dfe90920e165c39e331a53b2ea.patch";
+      sha256 = "0ypcaga55pw58l30srq3ga1mhz2w6hkwanv41jjr6g3ia9jvq69n";
+    })
+
     # https://github.com/elementary/default-settings/pull/119
     ./0001-Build-with-Meson.patch
   ];
diff --git a/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix b/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix
index 21698bed22d..1a268c35fa2 100644
--- a/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix
+++ b/pkgs/desktops/pantheon/desktop/elementary-greeter/default.nix
@@ -28,7 +28,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-greeter";
-  version = "5.0.2";
+  version = "5.0.3";
 
   repoName = "greeter";
 
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "0557lr8czqwjrm39ykfacqw5x7nng7fmf1gxkif70xg7dk3lc7gd";
+    sha256 = "1zbfcdgjn57r8pz01xrz6kk8rmviq133snz9f1vqhjdsznk82w5i";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix b/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix
index 38e57539de4..2580907a592 100644
--- a/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix
+++ b/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix
@@ -36,7 +36,8 @@ runCommand "elementary-gsettings-desktop-schemas" {}
      schema_dir=$out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas
 
      mkdir -p $schema_dir
-     cp -rf ${glib.getSchemaPath gsettings-desktop-schemas}/*.xml $schema_dir
+
+     cp -rf ${glib.getSchemaPath gala}/*.gschema.override $schema_dir
 
      ${concatMapStrings (pkg: "cp -rf ${glib.getSchemaPath pkg}/*.xml $schema_dir\n") gsettingsOverridePackages}
 
diff --git a/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix b/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix
index 06b5183c1e0..2056c73a97e 100644
--- a/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix
+++ b/pkgs/desktops/pantheon/desktop/elementary-onboarding/default.nix
@@ -20,7 +20,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-onboarding";
-  version = "1.1.0";
+  version = "1.2.0";
 
   repoName = "onboarding";
 
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "17fw95qg7j0mvam90jrvr77hw2ipxb2lkw0xxql1lzwvdx1h0r2k";
+    sha256 = "0yxafz7jlzj8gsbp6m72q4zbcvm1ch2y4fibj9cymjvz2i0izhba";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/desktop/elementary-session-settings/default.nix b/pkgs/desktops/pantheon/desktop/elementary-session-settings/default.nix
index 58acdd12147..c22444422be 100644
--- a/pkgs/desktops/pantheon/desktop/elementary-session-settings/default.nix
+++ b/pkgs/desktops/pantheon/desktop/elementary-session-settings/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetchFromGitHub
+, fetchpatch
 , substituteAll
 , writeScript
 , pantheon
@@ -15,7 +16,7 @@
 , writeText
 , meson
 , ninja
-, git
+, pkg-config
 }:
 
 let
@@ -69,24 +70,34 @@ in
 
 stdenv.mkDerivation rec {
   pname = "elementary-session-settings";
-  version = "5.0.3";
+  version = "unstable-2019-11-12";
 
   repoName = "session-settings";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = repoName;
-    rev = version;
-    sha256 = "1vrjm7bklkfv0dyafm312v4hxzy6lb7p1ny4ijkn48kr719gc71k";
+    rev = "f9d5afed16ce447cf6ae3c2d1c1db5eece84daca";
+    sha256 = "0n1m41aapr58rb1ffvfkjq6c6w3f0ynjzzhja50s4di98p4m7y0q";
   };
 
-  postPatch = ''
-    ${git}/bin/git apply --verbose ${./meson.patch}
-  '';
+  patches = [
+    # Map Pantheon required components by g-s-d versions
+    # https://github.com/elementary/session-settings/pull/23
+    (fetchpatch {
+      url = "https://github.com/elementary/session-settings/commit/39918f4ec64fa9ed5affa109d6a692b97ae4ff01.patch";
+      sha256 = "0v2kqcsibymnslnnw4v67yh098znsrhrcycgxkw8vymvwlinc502";
+    })
+  ];
 
   nativeBuildInputs = [
     meson
     ninja
+    pkg-config
+  ];
+
+  buildInputs = [
+    elementary-settings-daemon
   ];
 
   mesonFlags = [
diff --git a/pkgs/desktops/pantheon/desktop/elementary-session-settings/meson.patch b/pkgs/desktops/pantheon/desktop/elementary-session-settings/meson.patch
deleted file mode 100644
index 39d15565661..00000000000
--- a/pkgs/desktops/pantheon/desktop/elementary-session-settings/meson.patch
+++ /dev/null
@@ -1,272 +0,0 @@
-From 0a20ad6a31c74f4f96e9ed3613ec6c16a94ede39 Mon Sep 17 00:00:00 2001
-From: worldofpeace <worldofpeace@protonmail.ch>
-Date: Thu, 8 Aug 2019 11:25:37 -0400
-Subject: [PATCH] Build with Meson (#13)
-
----
- applications/meson.build                       |  4 ++++
- ...ettingsDaemon.A11ySettings-pantheon.desktop |  0
- ...e.SettingsDaemon.Clipboard-pantheon.desktop |  0
- ...gnome.SettingsDaemon.Color-pantheon.desktop |  0
- ...me.SettingsDaemon.Datetime-pantheon.desktop |  0
- ...ettingsDaemon.Housekeeping-pantheon.desktop |  0
- ...me.SettingsDaemon.Keyboard-pantheon.desktop |  0
- ...e.SettingsDaemon.MediaKeys-pantheon.desktop |  0
- ...gnome.SettingsDaemon.Mouse-pantheon.desktop |  0
- ...gnome.SettingsDaemon.Power-pantheon.desktop |  0
- ...sDaemon.PrintNotifications-pantheon.desktop |  0
- ...nome.SettingsDaemon.Rfkill-pantheon.desktop |  0
- ...ome.SettingsDaemon.Sharing-pantheon.desktop |  0
- ...e.SettingsDaemon.Smartcard-pantheon.desktop |  0
- ...gnome.SettingsDaemon.Sound-pantheon.desktop |  0
- ...gnome.SettingsDaemon.Wacom-pantheon.desktop |  0
- ...e.SettingsDaemon.XSettings-pantheon.desktop |  0
- autostart/meson.build                          | 18 ++++++++++++++++++
- .../gnome-keyring-gpg-pantheon.desktop         |  0
- .../gnome-keyring-pkcs11-pantheon.desktop      |  0
- .../gnome-keyring-secrets-pantheon.desktop     |  0
- .../gnome-keyring-ssh-pantheon.desktop         |  0
- .../onboard-autostart-pantheon.desktop         |  0
- .../orca-autostart-pantheon.desktop            |  0
- .../user-dirs-update-gtk-pantheon.desktop      |  0
- gnome-session/meson.build                      | 11 +++++++++++
- .../{pantheon.session => pantheon.session.in}  |  2 +-
- meson.build                                    | 14 ++++++++++++++
- meson_options.txt                              | 11 +++++++++++
- xsessions/meson.build                          |  4 ++++
- 30 files changed, 63 insertions(+), 1 deletion(-)
- create mode 100644 applications/meson.build
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.A11ySettings-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.Clipboard-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.Color-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.Datetime-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.Housekeeping-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.Keyboard-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.MediaKeys-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.Mouse-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.Power-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.PrintNotifications-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.Rfkill-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.Sharing-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.Smartcard-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.Sound-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.Wacom-pantheon.desktop (100%)
- rename autostart/{ => gsd}/org.gnome.SettingsDaemon.XSettings-pantheon.desktop (100%)
- create mode 100644 autostart/meson.build
- rename autostart/{ => ubuntu}/gnome-keyring-gpg-pantheon.desktop (100%)
- rename autostart/{ => ubuntu}/gnome-keyring-pkcs11-pantheon.desktop (100%)
- rename autostart/{ => ubuntu}/gnome-keyring-secrets-pantheon.desktop (100%)
- rename autostart/{ => ubuntu}/gnome-keyring-ssh-pantheon.desktop (100%)
- rename autostart/{ => ubuntu}/onboard-autostart-pantheon.desktop (100%)
- rename autostart/{ => ubuntu}/orca-autostart-pantheon.desktop (100%)
- rename autostart/{ => ubuntu}/user-dirs-update-gtk-pantheon.desktop (100%)
- create mode 100644 gnome-session/meson.build
- rename gnome-session/{pantheon.session => pantheon.session.in} (94%)
- create mode 100644 meson.build
- create mode 100644 meson_options.txt
- create mode 100644 xsessions/meson.build
-
-diff --git a/applications/meson.build b/applications/meson.build
-new file mode 100644
-index 0000000..d03b92b
---- /dev/null
-+++ b/applications/meson.build
-@@ -0,0 +1,4 @@
-+install_data(
-+    'defaults.list',
-+    install_dir: join_paths(datadir, 'applications')
-+)
-diff --git a/autostart/org.gnome.SettingsDaemon.A11ySettings-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.A11ySettings-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.A11ySettings-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.A11ySettings-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.Clipboard-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.Clipboard-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.Clipboard-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.Clipboard-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.Color-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.Color-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.Color-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.Color-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.Datetime-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.Datetime-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.Datetime-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.Datetime-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.Housekeeping-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.Housekeeping-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.Housekeeping-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.Housekeeping-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.Keyboard-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.Keyboard-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.Keyboard-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.Keyboard-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.MediaKeys-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.MediaKeys-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.MediaKeys-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.MediaKeys-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.Mouse-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.Mouse-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.Mouse-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.Mouse-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.Power-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.Power-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.Power-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.Power-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.PrintNotifications-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.PrintNotifications-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.PrintNotifications-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.PrintNotifications-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.Rfkill-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.Rfkill-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.Rfkill-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.Rfkill-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.Sharing-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.Sharing-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.Sharing-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.Sharing-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.Smartcard-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.Smartcard-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.Smartcard-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.Smartcard-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.Sound-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.Sound-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.Sound-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.Sound-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.Wacom-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.Wacom-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.Wacom-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.Wacom-pantheon.desktop
-diff --git a/autostart/org.gnome.SettingsDaemon.XSettings-pantheon.desktop b/autostart/gsd/org.gnome.SettingsDaemon.XSettings-pantheon.desktop
-similarity index 100%
-rename from autostart/org.gnome.SettingsDaemon.XSettings-pantheon.desktop
-rename to autostart/gsd/org.gnome.SettingsDaemon.XSettings-pantheon.desktop
-diff --git a/autostart/meson.build b/autostart/meson.build
-new file mode 100644
-index 0000000..265088b
---- /dev/null
-+++ b/autostart/meson.build
-@@ -0,0 +1,18 @@
-+autostartdir = join_paths(get_option('sysconfdir'), 'xdg', 'autostart')
-+
-+if get_option('patched-gsd-autostarts')
-+    install_subdir(
-+        'gsd',
-+        install_dir: autostartdir,
-+        strip_directory: true
-+    )
-+endif
-+
-+
-+if get_option('patched-ubuntu-autostarts')
-+    install_subdir(
-+        'ubuntu',
-+        install_dir: autostartdir,
-+        strip_directory: true
-+    )
-+endif
-diff --git a/autostart/gnome-keyring-gpg-pantheon.desktop b/autostart/ubuntu/gnome-keyring-gpg-pantheon.desktop
-similarity index 100%
-rename from autostart/gnome-keyring-gpg-pantheon.desktop
-rename to autostart/ubuntu/gnome-keyring-gpg-pantheon.desktop
-diff --git a/autostart/gnome-keyring-pkcs11-pantheon.desktop b/autostart/ubuntu/gnome-keyring-pkcs11-pantheon.desktop
-similarity index 100%
-rename from autostart/gnome-keyring-pkcs11-pantheon.desktop
-rename to autostart/ubuntu/gnome-keyring-pkcs11-pantheon.desktop
-diff --git a/autostart/gnome-keyring-secrets-pantheon.desktop b/autostart/ubuntu/gnome-keyring-secrets-pantheon.desktop
-similarity index 100%
-rename from autostart/gnome-keyring-secrets-pantheon.desktop
-rename to autostart/ubuntu/gnome-keyring-secrets-pantheon.desktop
-diff --git a/autostart/gnome-keyring-ssh-pantheon.desktop b/autostart/ubuntu/gnome-keyring-ssh-pantheon.desktop
-similarity index 100%
-rename from autostart/gnome-keyring-ssh-pantheon.desktop
-rename to autostart/ubuntu/gnome-keyring-ssh-pantheon.desktop
-diff --git a/autostart/onboard-autostart-pantheon.desktop b/autostart/ubuntu/onboard-autostart-pantheon.desktop
-similarity index 100%
-rename from autostart/onboard-autostart-pantheon.desktop
-rename to autostart/ubuntu/onboard-autostart-pantheon.desktop
-diff --git a/autostart/orca-autostart-pantheon.desktop b/autostart/ubuntu/orca-autostart-pantheon.desktop
-similarity index 100%
-rename from autostart/orca-autostart-pantheon.desktop
-rename to autostart/ubuntu/orca-autostart-pantheon.desktop
-diff --git a/autostart/user-dirs-update-gtk-pantheon.desktop b/autostart/ubuntu/user-dirs-update-gtk-pantheon.desktop
-similarity index 100%
-rename from autostart/user-dirs-update-gtk-pantheon.desktop
-rename to autostart/ubuntu/user-dirs-update-gtk-pantheon.desktop
-diff --git a/gnome-session/meson.build b/gnome-session/meson.build
-new file mode 100644
-index 0000000..b9245a1
---- /dev/null
-+++ b/gnome-session/meson.build
-@@ -0,0 +1,11 @@
-+fallback_session = get_option('fallback-session')
-+
-+session_configuration = configuration_data()
-+session_configuration.set('FALLBACK_SESSION', fallback_session)
-+
-+pantheon_session = configure_file(
-+  input: 'pantheon.session.in',
-+  output: '@BASENAME@',
-+  configuration: session_configuration,
-+  install_dir: join_paths(datadir, 'gnome-session', 'sessions')
-+)
-diff --git a/gnome-session/pantheon.session b/gnome-session/pantheon.session.in
-similarity index 94%
-rename from gnome-session/pantheon.session
-rename to gnome-session/pantheon.session.in
-index 1626393..7bc1814 100644
---- a/gnome-session/pantheon.session
-+++ b/gnome-session/pantheon.session.in
-@@ -1,5 +1,5 @@
- [GNOME Session]
- Name=Pantheon
- RequiredComponents=gala;gala-daemon;org.gnome.SettingsDaemon.A11ySettings;org.gnome.SettingsDaemon.Clipboard;org.gnome.SettingsDaemon.Color;org.gnome.SettingsDaemon.Datetime;org.gnome.SettingsDaemon.Housekeeping;org.gnome.SettingsDaemon.Keyboard;org.gnome.SettingsDaemon.MediaKeys;org.gnome.SettingsDaemon.Mouse;org.gnome.SettingsDaemon.Power;org.gnome.SettingsDaemon.PrintNotifications;org.gnome.SettingsDaemon.Rfkill;org.gnome.SettingsDaemon.Sharing;org.gnome.SettingsDaemon.Smartcard;org.gnome.SettingsDaemon.Sound;org.gnome.SettingsDaemon.Wacom;org.gnome.SettingsDaemon.XSettings;
--FallbackSession=ubuntu
-+FallbackSession=@FALLBACK_SESSION@
- DesktopName=Pantheon
-diff --git a/meson.build b/meson.build
-new file mode 100644
-index 0000000..a7d3195
---- /dev/null
-+++ b/meson.build
-@@ -0,0 +1,14 @@
-+project('elementary-session-settings',
-+        version: '5.0.3',
-+        default_options: 'sysconfdir=/etc')
-+
-+prefix = get_option('prefix')
-+datadir = join_paths(prefix, get_option('datadir'))
-+
-+if get_option('defaults-list')
-+    subdir('applications')
-+endif
-+
-+subdir('autostart')
-+subdir('gnome-session')
-+subdir('xsessions')
-diff --git a/meson_options.txt b/meson_options.txt
-new file mode 100644
-index 0000000..4c5ac2d
---- /dev/null
-+++ b/meson_options.txt
-@@ -0,0 +1,11 @@
-+option('defaults-list', type : 'boolean', value: true,
-+       description : 'Install defaults.list')
-+
-+option('patched-gsd-autostarts', type : 'boolean', value: true,
-+       description : 'Install patched GNOME Settings Daemon autostarts')
-+
-+option('patched-ubuntu-autostarts', type : 'boolean', value: true,
-+       description : 'Install patched Ubuntu autostarts')
-+
-+option('fallback-session', type : 'string', value: 'ubuntu',
-+       description : 'Fallback session to use for Pantheon')
-diff --git a/xsessions/meson.build b/xsessions/meson.build
-new file mode 100644
-index 0000000..d144291
---- /dev/null
-+++ b/xsessions/meson.build
-@@ -0,0 +1,4 @@
-+install_data(
-+    'pantheon.desktop',
-+    install_dir: join_paths(datadir, 'xsessions')
-+)
diff --git a/pkgs/desktops/pantheon/desktop/elementary-shortcut-overlay/default.nix b/pkgs/desktops/pantheon/desktop/elementary-shortcut-overlay/default.nix
index 2ba5f4becc1..2ddfcf23c6a 100644
--- a/pkgs/desktops/pantheon/desktop/elementary-shortcut-overlay/default.nix
+++ b/pkgs/desktops/pantheon/desktop/elementary-shortcut-overlay/default.nix
@@ -17,7 +17,7 @@
 
 stdenv.mkDerivation rec {
   pname = "elementary-shortcut-overlay";
-  version = "1.1.0";
+  version = "1.1.1";
 
   repoName = "shortcut-overlay";
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = repoName;
     rev = version;
-    sha256 = "10s44x5qln3asrdr6v5b3v92prh8rfhv96dbm73zhifm2jjm22g8";
+    sha256 = "03wnc3vfnrkm5i7h370n7h2mbcmaxnhynmjs37q63vq6vq7agldb";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/desktop/gala/default.nix b/pkgs/desktops/pantheon/desktop/gala/default.nix
index 5791fb5c58f..cbe870af8e4 100644
--- a/pkgs/desktops/pantheon/desktop/gala/default.nix
+++ b/pkgs/desktops/pantheon/desktop/gala/default.nix
@@ -26,13 +26,13 @@
 
 stdenv.mkDerivation rec {
   pname = "gala";
-  version = "3.2.0";
+  version = "3.3.0";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "1vf55ls3h20zpf0yxb206cijq8nkf89z2lmhccb4i1g2zajd31ix";
+    sha256 = "02g6x190lylng8d07pwx2bqcc71rq48f0dxh30mgndfii6k21qgs";
   };
 
   passthru = {
@@ -70,6 +70,7 @@ stdenv.mkDerivation rec {
 
   patches = [
     ./plugins-dir.patch
+    ./use-new-notifications-default.patch
   ];
 
   postPatch = ''
diff --git a/pkgs/desktops/pantheon/desktop/gala/plugins-dir.patch b/pkgs/desktops/pantheon/desktop/gala/plugins-dir.patch
index e83308ea552..f08652e9f63 100644
--- a/pkgs/desktops/pantheon/desktop/gala/plugins-dir.patch
+++ b/pkgs/desktops/pantheon/desktop/gala/plugins-dir.patch
@@ -1,22 +1,20 @@
 diff --git a/meson.build b/meson.build
-index 6b20a60..205699b 100644
+index 78113d6..926596c 100644
 --- a/meson.build
 +++ b/meson.build
-@@ -38,7 +38,7 @@ conf.set_quoted('PACKAGE_VERSION', gala_version)
+@@ -24,13 +24,14 @@ vapi_dir = meson.current_source_dir() / 'vapi'
+
+ data_dir = join_paths(get_option('prefix'), get_option('datadir'))
+ plugins_dir = join_paths(get_option('prefix'), get_option('libdir'), meson.project_name(), 'plugins')
++plugins_dir_for_build = join_paths('/run/current-system/sw/lib/', meson.project_name(), 'plugins')
+ pkgdata_dir = join_paths(get_option('prefix'), get_option('datadir'), meson.project_name())
+ pkglib_dir = join_paths(get_option('prefix'), get_option('libdir'), meson.project_name())
+
+ conf = configuration_data()
  conf.set_quoted('DATADIR', data_dir)
  conf.set_quoted('PKGDATADIR', pkgdata_dir)
- conf.set_quoted('PKGLIBDIR', pkglib_dir)
--conf.set_quoted('PLUGINSDIR', plugins_dir)
-+conf.set_quoted('PLUGINSDIR',  '/run/current-system/sw/lib/gala/plugins')
- conf.set_quoted('RELEASE_NAME', 'Window Manager.')
+-conf.set_quoted('PLUGINDIR', plugins_dir)
++conf.set_quoted('PLUGINDIR', plugins_dir_for_build)
+ conf.set_quoted('RESOURCEPATH', '/org/pantheon/desktop/gala')
  conf.set_quoted('VERSION', gala_version)
- conf.set_quoted('VERSION_INFO', (is_release ? 'Release' : 'Development'))
-@@ -83,7 +83,7 @@ add_project_arguments([
- 		'-DDATADIR="@0@"'.format(data_dir),
- 		'-DPKGDATADIR="@0@"'.format(pkgdata_dir),
- 		'-DPKGLIBDIR="@0@"'.format(pkglib_dir),
--		'-DPLUGINDIR="@0@"'.format(plugins_dir),
-+		'-DPLUGINDIR="@0@"'.format('/run/current-system/sw/lib/gala/plugins'),
- 		'-DSCHEMA="org.pantheon.desktop.gala"',
- 		'-DRESOURCEPATH="/org/pantheon/desktop/gala"',
-
+ conf.set_quoted('SCHEMA', 'org.pantheon.desktop.gala')
diff --git a/pkgs/desktops/pantheon/desktop/gala/use-new-notifications-default.patch b/pkgs/desktops/pantheon/desktop/gala/use-new-notifications-default.patch
new file mode 100644
index 00000000000..dc256bcff3a
--- /dev/null
+++ b/pkgs/desktops/pantheon/desktop/gala/use-new-notifications-default.patch
@@ -0,0 +1,13 @@
+diff --git a/data/gala.gschema.xml b/data/gala.gschema.xml
+index 8032583..7f4f03c 100644
+--- a/data/gala.gschema.xml
++++ b/data/gala.gschema.xml
+@@ -58,7 +58,7 @@
+ 			<description>If enabled, dropping windows on vertical screen edges maximizes them vertically and resizes them horizontally to cover half of the available area. Dropping windows on the top screen edge maximizes them completely.</description>
+ 		</key>
+ 		<key type="b" name="use-new-notifications">
+-			<default>false</default>
++			<default>true</default>
+ 			<summary>If new notifications should be used</summary>
+ 			<description>If new notifications UI should be used, requires io.elemenetary.notifications to be present and running</description>
+ 		</key>
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix
index f6ff962a944..7194a649d00 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix
@@ -1,6 +1,5 @@
 { stdenv
-, fetchFromGitHub
-, fetchpatch
+, fetchFromGitHub 
 , pantheon
 , pkgconfig
 , meson
@@ -20,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wingpanel-indicator-datetime";
-  version = "2.2.1";
+  version = "2.2.2";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "0y8lfrrkzcj8nw94jqawbxr4jz41ac0z539kkr3n3x0qmx72md2y";
+    sha256 = "0a0pqrpmrdd5pch30lizr9righlc7165z7krmnaxrzd0fvfkbr2h";
   };
 
   passthru = {
@@ -54,14 +53,6 @@ stdenv.mkDerivation rec {
     wingpanel
   ];
 
-  patches = [
-    # Add support for libecal-2.0
-    (fetchpatch {
-      url = "https://github.com/elementary/wingpanel-indicator-datetime/commit/3ccd05d611e6dd5274a03f061ba1b5e13d6fe0cf.patch";
-      sha256 = "011q9b4pjmk4fpq5zscl5r8m4n3jiyx464023h4j7zf8r1070jz6";
-    })
-  ];
-
   postPatch = ''
     chmod +x meson/post_install.py
     patchShebangs meson/post_install.py
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/keyboard/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/keyboard/default.nix
index 66f805b9a49..e6f05a58d76 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/keyboard/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/keyboard/default.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wingpanel-indicator-keyboard";
-  version = "2.2.0";
+  version = "2.2.1";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "0jc12xfaj3micpjssxc7m6hzssvyq26ln5az05x5f1j6v8lccbyn";
+    sha256 = "0q32qc6jh5w0i1ixkl59pys8r3hxmbig8854q7sxi07vlk9g3i7y";
   };
 
   passthru = {
@@ -45,18 +45,16 @@ stdenv.mkDerivation rec {
     gtk3
     libgee
     wingpanel
+    xorg.xkeyboardconfig
   ];
 
   patches = [
     (substituteAll {
       src = ./fix-paths.patch;
-      libgnomekbd_path = "${libgnomekbd}/bin/";
-      config = "${xorg.xkeyboardconfig}/share/X11/xkb/rules/evdev.xml";
+      gkbd_keyboard_display = "${libgnomekbd}/bin/gkbd-keyboard-display";
     })
   ];
 
-  PKG_CONFIG_WINGPANEL_2_0_INDICATORSDIR = "${placeholder "out"}/lib/wingpanel";
-
   meta = with stdenv.lib; {
     description = "Keyboard Indicator for Wingpanel";
     homepage = https://github.com/elementary/wingpanel-indicator-keyboard;
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/keyboard/fix-paths.patch b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/keyboard/fix-paths.patch
index 58e6853e606..4fb6dfac86d 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/keyboard/fix-paths.patch
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/keyboard/fix-paths.patch
@@ -1,5 +1,5 @@
 diff --git a/src/Indicator.vala b/src/Indicator.vala
-index cd7ca49..0bef9c7 100644
+index cd7ca49..7813789 100644
 --- a/src/Indicator.vala
 +++ b/src/Indicator.vala
 @@ -94,7 +94,7 @@ public class Keyboard.Indicator : Wingpanel.Indicator {
@@ -7,20 +7,7 @@ index cd7ca49..0bef9c7 100644
          close ();
  
 -        string command = "gkbd-keyboard-display \"--layout=" + layouts.get_current_with_variant () + "\"";
-+        string command = "@libgnomekbd_path@gkbd-keyboard-display \"--layout=" + layouts.get_current_with_variant () + "\"";
++        string command = "@gkbd_keyboard_display@ \"--layout=" + layouts.get_current_with_variant () + "\"";
  
          try {
              AppInfo.create_from_commandline (command, null, AppInfoCreateFlags.NONE).launch (null, null);
-diff --git a/src/LayoutsManager.vala b/src/LayoutsManager.vala
-index 1bac80e..67df847 100644
---- a/src/LayoutsManager.vala
-+++ b/src/LayoutsManager.vala
-@@ -97,7 +97,7 @@ public class Keyboard.Widgets.LayoutManager : Gtk.ScrolledWindow {
- 
-     public string? get_name_for_xkb_layout (string language, string? variant) {
-         debug ("get_name_for_xkb_layout (%s, %s)", language, variant);
--        Xml.Doc* doc = Xml.Parser.parse_file ("/usr/share/X11/xkb/rules/evdev.xml");
-+        Xml.Doc* doc = Xml.Parser.parse_file ("@config@");
-         if (doc == null) {
-             critical ("'evdev.xml' not found or permissions incorrect\n");
-             return null;
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/network/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/network/default.nix
index cd04e6287b7..c86bf45719e 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/network/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/network/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wingpanel-indicator-network";
-  version = "2.2.2";
+  version = "2.2.3";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "0fch27imk5x4nfx49cwcylkxd7m289rl9niy1vx5kjplhbhyhdq2";
+    sha256 = "17s5fixhwgalgjhrhnb3wh0hdzi17waqcdfw1fx8q4zs78hapjzg";
   };
 
   passthru = {
@@ -46,8 +46,6 @@ stdenv.mkDerivation rec {
     wingpanel
   ];
 
-  PKG_CONFIG_WINGPANEL_2_0_INDICATORSDIR = "${placeholder "out"}/lib/wingpanel";
-
   meta = with stdenv.lib; {
     description = "Network Indicator for Wingpanel";
     homepage = https://github.com/elementary/wingpanel-indicator-network;
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/notifications/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/notifications/default.nix
index e5dabead7c5..3921bc50f76 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/notifications/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/notifications/default.nix
@@ -2,6 +2,7 @@
 , fetchFromGitHub
 , pantheon
 , pkgconfig
+, fetchpatch
 , meson
 , ninja
 , vala
@@ -9,20 +10,29 @@
 , granite
 , wingpanel
 , libgee
-, libwnck3
+, elementary-notifications
 }:
 
 stdenv.mkDerivation rec {
   pname = "wingpanel-indicator-notifications";
-  version = "2.1.3";
+  version = "2.1.4";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "1lx023z7xxlgwh0br48fw5w7xw673p2sqxwl1gz9f54xx7rv81py";
+    sha256 = "0qp13iaf2956ss4d6w6vwnzdvb7izqmyh6xrdii7j8gxxwjd4lxm";
   };
 
+  patches = [
+    # Fix do not disturb on NixOS
+    # https://github.com/elementary/wingpanel-indicator-notifications/pull/110
+    (fetchpatch {
+      url = "https://github.com/elementary/wingpanel-indicator-notifications/commit/02b1e226c0262c1535fdf2b4f1daba6be9084f67.patch";
+      sha256 = "1a5phygygndr28yx8yp0lyk0wxypc5656dpidw1z8x1yd6xysqhy";
+    })
+  ];
+
   passthru = {
     updateScript = pantheon.updateScript {
       attrPath = "pantheon.${pname}";
@@ -37,10 +47,10 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
+    elementary-notifications
     granite
     gtk3
     libgee
-    libwnck3
     wingpanel
   ];
 
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/power/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/power/default.nix
index 12223644971..80dc22b152e 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/power/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/power/default.nix
@@ -17,13 +17,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wingpanel-indicator-power";
-  version = "2.1.4";
+  version = "2.1.5";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "02gp9m9zkmhcl43nz02kjkcim4zm25zab3il8dhwkihh731g1c6j";
+    sha256 = "19zhgzyivf3y416r5xaajx81h87zdhvrrcsagli00gp1f2169q5m";
   };
 
   passthru = {
@@ -50,8 +50,6 @@ stdenv.mkDerivation rec {
     wingpanel
   ];
 
-  PKG_CONFIG_WINGPANEL_2_0_INDICATORSDIR = "${placeholder "out"}/lib/wingpanel";
-
   postPatch = ''
     chmod +x meson/post_install.py
     patchShebangs meson/post_install.py
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/session/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/session/default.nix
index af6155037ef..d26e237b87c 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/session/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/session/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wingpanel-indicator-session";
-  version = "2.2.7";
+  version = "2.2.8";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "0qgb225ldg3qax370z3wvijxmm4bjfqds3r9aqqhlq30599xjhsb";
+    sha256 = "02inp8xdxfx8qxjdf2nazw46ahp1gv3skd922ma6kgx5w4wxh5l8";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/sound/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/sound/default.nix
index ccd233e1a3e..4025c5a767d 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/sound/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/sound/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wingpanel-indicator-sound";
-  version = "2.1.4";
+  version = "2.1.5";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "00r3dqkyp7k34xwn12l0dbzfmz70084lblxchykmk77pgzid2a0b";
+    sha256 = "0nla8qgn5gb1g2gn7c47m9zw42sarjd0030x3h5kckapsbaxknhp";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel/default.nix
index 694166a5d64..b5a5f9395c6 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel/default.nix
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation rec {
   pname = "wingpanel";
-  version = "2.2.6";
+  version = "unstable-2020-04-04";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
-    rev = version;
-    sha256 = "0q5jhg3gpcjfzfi7g33fv8pb916cqsgk6543b82yy97c20902ap9";
+    rev = "366f0f6ffa59f7ee2583d000dd334cb764f9a2b8";
+    sha256 = "172r1k8m1saq80q6g2hxy4ajks8liaw9pl6lixasrzi2hsnrx53h";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix b/pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix
index 596ee816f89..ca887d45dc3 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix
@@ -1,7 +1,8 @@
 { lib
 , wrapGAppsHook
 , glib
-, symlinkJoin
+, stdenv
+, xorg
 , wingpanel
 , wingpanelIndicators
 , switchboard-with-plugs
@@ -15,30 +16,44 @@ let
     if indicators == null then wingpanelIndicators
     else indicators ++ (lib.optionals useDefaultIndicators wingpanelIndicators);
 in
-symlinkJoin {
+stdenv.mkDerivation rec {
   name = "${wingpanel.name}-with-indicators";
 
+  src = null;
+
   paths = [
     wingpanel
   ] ++ selectedIndicators;
 
-  buildInputs = [
+  passAsFile = [ "paths" ];
+
+  nativeBuildInputs = [
     glib
     wrapGAppsHook
-  ] ++ (lib.forEach selectedIndicators (x: x.buildInputs))
+  ];
+
+  buildInputs = lib.forEach selectedIndicators (x: x.buildInputs)
     ++ selectedIndicators;
 
-  # We have to set SWITCHBOARD_PLUGS_PATH because wingpanel-applications-menu
-  # has a plugin to search switchboard settings
-  postBuild = ''
-    make_glib_find_gsettings_schemas
+  dontUnpack = true;
+  dontConfigure = true;
+  dontBuild = true;
+
+  preferLocalBuild = true;
+  allowSubstitutes = false;
 
+  installPhase = ''
+    mkdir -p $out
+    for i in $(cat $pathsPath); do
+      ${xorg.lndir}/bin/lndir -silent $i $out
+    done
+  '';
+
+  preFixup = ''
     gappsWrapperArgs+=(
       --set WINGPANEL_INDICATORS_PATH "$out/lib/wingpanel"
       --set SWITCHBOARD_PLUGS_PATH "${switchboard-with-plugs}/lib/switchboard"
     )
-
-    wrapGAppsHook
   '';
 
   inherit (wingpanel) meta;
diff --git a/pkgs/desktops/pantheon/granite/default.nix b/pkgs/desktops/pantheon/granite/default.nix
index 198be9f3430..b8c9021dd15 100644
--- a/pkgs/desktops/pantheon/granite/default.nix
+++ b/pkgs/desktops/pantheon/granite/default.nix
@@ -16,13 +16,13 @@
 
 stdenv.mkDerivation rec {
   pname = "granite";
-  version = "5.3.0";
+  version = "5.3.1";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "1gvrk8gh959bmq8w0kaym7sx13v763lk8x5hck00msgmyrsarfwa";
+    sha256 = "12f1n07cjlc7czf642ak6964wl4fsgakc39nnmiba22z5aahfpz9";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/services/cerbere/default.nix b/pkgs/desktops/pantheon/services/cerbere/default.nix
deleted file mode 100644
index a911440fa5d..00000000000
--- a/pkgs/desktops/pantheon/services/cerbere/default.nix
+++ /dev/null
@@ -1,58 +0,0 @@
-{ stdenv
-, fetchFromGitHub
-, pantheon
-, pkgconfig
-, meson
-, python3
-, ninja
-, glib
-, libgee
-, vala
-, wrapGAppsHook
-}:
-
-stdenv.mkDerivation rec {
-  pname = "cerbere";
-  version = "2.5.0";
-
-  src = fetchFromGitHub {
-    owner = "elementary";
-    repo = pname;
-    rev = version;
-    sha256 = "12y6gg4vyc1rhdm2c7pr7bgmdrah7ddphyh25fgh3way8l9gh7vw";
-  };
-
-  passthru = {
-    updateScript = pantheon.updateScript {
-      attrPath = "pantheon.${pname}";
-    };
-  };
-
-  nativeBuildInputs = [
-    meson
-    ninja
-    pkgconfig
-    python3
-    vala
-    wrapGAppsHook
-  ];
-
-  buildInputs = [
-    glib
-    libgee
-  ];
-
-  postPatch = ''
-    chmod +x meson/post_install.py
-    patchShebangs meson/post_install.py
-  '';
-
-  meta = with stdenv.lib; {
-    description = "A simple service to ensure uptime of essential processes";
-    homepage = https://github.com/elementary/cerbere;
-    license = licenses.gpl2Plus;
-    platforms = platforms.linux;
-    maintainers = pantheon.maintainers;
-  };
-
-}
diff --git a/pkgs/desktops/pantheon/services/elementary-notifications/default.nix b/pkgs/desktops/pantheon/services/elementary-notifications/default.nix
new file mode 100644
index 00000000000..b90f8c86bf1
--- /dev/null
+++ b/pkgs/desktops/pantheon/services/elementary-notifications/default.nix
@@ -0,0 +1,60 @@
+{ stdenv
+, fetchFromGitHub
+, meson
+, ninja
+, pkg-config
+, vala
+, gtk3
+, glib
+, granite
+, libgee
+, libcanberra-gtk3
+, pantheon
+, python3
+, wrapGAppsHook
+}:
+
+stdenv.mkDerivation rec {
+  pname = "elementary-notifications";
+  version = "unstable-2020-03-31";
+
+  repoName = "notifications";
+
+  src = fetchFromGitHub {
+    owner = "elementary";
+    repo = repoName;
+    rev = "db552b0c3466ba1099c7737c353b7225ab1896cc";
+    sha256 = "1fhf4zx73qka935x5afv6zqsm2l37d1mjbhrbzzzz44dqwa2vp16";
+  };
+
+  nativeBuildInputs = [
+    glib # for glib-compile-schemas
+    meson
+    ninja
+    pkg-config
+    python3
+    vala
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    glib
+    granite
+    gtk3
+    libcanberra-gtk3
+    libgee
+  ];
+
+  postPatch = ''
+    chmod +x meson/post_install.py
+    patchShebangs meson/post_install.py
+  '';
+
+  meta = with stdenv.lib; {
+    description = "GTK notification server for Pantheon";
+    homepage = "https://github.com/elementary/notifications";
+    license = licenses.gpl3Plus;
+    maintainers = pantheon.maintainers;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/pantheon/services/elementary-settings-daemon/default.nix b/pkgs/desktops/pantheon/services/elementary-settings-daemon/default.nix
index 582793ff590..e5aa31ca0fb 100644
--- a/pkgs/desktops/pantheon/services/elementary-settings-daemon/default.nix
+++ b/pkgs/desktops/pantheon/services/elementary-settings-daemon/default.nix
@@ -1,135 +1,105 @@
-{ accountsservice
-, alsaLib
-, colord
-, docbook_xsl
-, fetchgit
+{ stdenv
+, substituteAll
 , fetchurl
-, geoclue2
-, geocode-glib
-, gettext
-, glib
+, fetchgit
+, meson
+, ninja
+, pkgconfig
 , gnome3
-, gsettings-desktop-schemas
+, perl
+, gettext
 , gtk3
+, glib
+, libnotify
+, libgnomekbd
 , lcms2
+, libpulseaudio
+, alsaLib
 , libcanberra-gtk3
-, libgnomekbd
-, libgudev
+, upower
+, colord
 , libgweather
-, libnotify
-, libpulseaudio
+, polkit
+, gsettings-desktop-schemas
+, geoclue2
+, systemd
+, libgudev
 , libwacom
-, libxml2
 , libxslt
-, meson
-, mousetweaks
+, libxml2
+, modemmanager
 , networkmanager
-, ninja
-, nss
-, pantheon
-, perl
-, pkgconfig
-, polkit
+, gnome-desktop
+, geocode-glib
+, docbook_xsl
+, accountsservice
+, wrapGAppsHook
 , python3
-, stdenv
-, substituteAll
-, systemd
 , tzdata
-, upower
-, libXtst
-, wrapGAppsHook
+, nss
+, gcr
+, pantheon
 }:
 
 stdenv.mkDerivation rec {
   pname = "elementary-settings-daemon";
-  version = "3.30.2";
+  version = "3.34.1";
 
   repoName = "gnome-settings-daemon";
 
-  src = fetchurl {
-    url = "mirror://gnome/sources/${repoName}/${stdenv.lib.versions.majorMinor version}/${repoName}-${version}.tar.xz";
-    sha256 = "0c663csa3gnsr6wm0xfll6aani45snkdj7zjwjfzcwfh8w4a3z12";
-  };
-
-  # Source for ubuntu's patchset
-  src2 = fetchgit {
+  src = fetchgit {
     url = "https://git.launchpad.net/~ubuntu-desktop/ubuntu/+source/${repoName}";
-    rev = "refs/tags/ubuntu/${version}-1ubuntu1";
-    sha256 = "02awkhw6jqm7yh812mw0nsdmsljfi8ksz8mvd2qpns5pcv002g2c";
+    rev = "refs/tags/ubuntu/${version}-1ubuntu2";
+    sha256 = "0w0dsbzif7v0gk61rs9g20ldlimbdwb5yvlfdc568yyx5z643jbv";
   };
 
   # We've omitted the 53_sync_input_sources_to_accountsservice patch because it breaks the build.
   # See: https://gist.github.com/worldofpeace/2f152a20b7c47895bb93239fce1c9f52
   #
   # Also omit ubuntu_calculator_snap.patch as that's obviously not useful here.
-  patches = let patchPath = "${src2}/debian/patches"; in [
+  patches = let patchPath = "${src}/debian/patches"; in [
     (substituteAll {
       src = ./fix-paths.patch;
-      inherit tzdata mousetweaks;
+      inherit tzdata;
     })
     ./global-backlight-helper.patch
     "${patchPath}/45_suppress-printer-may-not-be-connected-notification.patch"
+    #"${patchPath}/53_sync_input_sources_to_accountsservice.patch"
     "${patchPath}/64_restore_terminal_keyboard_shortcut_schema.patch"
     "${patchPath}/correct_logout_action.patch"
     "${patchPath}/ubuntu-lid-close-suspend.patch"
-    "${patchPath}/revert-wacom-migration.patch"
     "${patchPath}/revert-gsettings-removals.patch"
     "${patchPath}/revert-mediakeys-dbus-interface-drop.patch"
-    "${patchPath}/ubuntu_ibus_configs.patch"
-    (fetchurl {
-      url = "https://github.com/elementary/os-patches/raw/6975d1c254cb6ab913b8e2396877203aea8eaa65/debian/patches/elementary-dpms.patch";
-      sha256 = "0kh508ppiv4nvkg30gmw85cljlfq1bvkzhvf1iaxw0snb0mwgsxi";
-    })
+    #"${patchPath}/ubuntu_ibus_configs.patch"
+    # https://github.com/elementary/os-patches/blob/6975d1c254cb6ab913b8e2396877203aea8eaa65/debian/patches/elementary-dpms.patch
+    ./elementary-dpms.patch
   ];
 
-  postPatch = ''
-    for f in gnome-settings-daemon/codegen.py plugins/power/gsd-power-constants-update.pl meson_post_install.py; do
-      chmod +x $f
-      patchShebangs $f
-    done
-  '';
-
-  postFixup = ''
-    for autostart in $(grep -rl "OnlyShowIn=GNOME;" $out/etc/xdg/autostart)
-    do
-      echo "Patching OnlyShowIn to Pantheon in: $autostart"
-      sed -i "s,OnlyShowIn=GNOME;,OnlyShowIn=Pantheon;," $autostart
-    done
-
-    # This breaks lightlocker https://github.com/elementary/session-settings/commit/b0e7a2867608c3a3916f9e4e21a68264a20e44f8
-    # TODO: shouldn't be neeed for the 5.1 greeter (awaiting release)
-    rm $out/etc/xdg/autostart/org.gnome.SettingsDaemon.ScreensaverProxy.desktop
-
-    # So the polkit policy can reference /run/current-system/sw/bin/elementary-settings-daemon/gsd-backlight-helper
-    mkdir -p $out/bin/elementary-settings-daemon
-    ln -s $out/libexec/gsd-backlight-helper $out/bin/elementary-settings-daemon/gsd-backlight-helper
-  '';
-
   nativeBuildInputs = [
-    docbook_xsl
-    gettext
-    libxml2
-    libxslt
     meson
     ninja
-    perl
     pkgconfig
-    python3
+    perl
+    gettext
+    libxml2
+    libxslt
+    docbook_xsl
     wrapGAppsHook
+    python3
   ];
 
   buildInputs = [
     accountsservice
     alsaLib
     colord
+    gcr
     geoclue2
     geocode-glib
     glib
-    gnome3.gnome-desktop
+    gnome-desktop
     gsettings-desktop-schemas
     gtk3
     lcms2
-    libXtst
     libcanberra-gtk3
     libgnomekbd # for org.gnome.libgnomekbd.keyboard schema
     libgudev
@@ -137,6 +107,7 @@ stdenv.mkDerivation rec {
     libnotify
     libpulseaudio
     libwacom
+    modemmanager
     networkmanager
     nss
     polkit
@@ -152,6 +123,29 @@ stdenv.mkDerivation rec {
     # we're using plain
   NIX_CFLAGS_COMPILE = "-DG_DISABLE_CAST_CHECKS";
 
+  postPatch = ''
+    for f in gnome-settings-daemon/codegen.py plugins/power/gsd-power-constants-update.pl meson_post_install.py; do
+      chmod +x $f
+      patchShebangs $f
+    done
+  '';
+
+  postFixup = ''
+    for autostart in $(grep -rl "OnlyShowIn=GNOME;" $out/etc/xdg/autostart)
+    do
+      echo "Patching OnlyShowIn to Pantheon in: $autostart"
+      sed -i "s,OnlyShowIn=GNOME;,OnlyShowIn=Pantheon;," $autostart
+    done
+
+    # This breaks lightlocker https://github.com/elementary/session-settings/commit/b0e7a2867608c3a3916f9e4e21a68264a20e44f8
+    # TODO: shouldn't be neeed for the 5.1 greeter (awaiting release)
+    rm $out/etc/xdg/autostart/org.gnome.SettingsDaemon.ScreensaverProxy.desktop
+
+    # So the polkit policy can reference /run/current-system/sw/bin/elementary-settings-daemon/gsd-backlight-helper
+    mkdir -p $out/bin/elementary-settings-daemon
+    ln -s $out/libexec/gsd-backlight-helper $out/bin/elementary-settings-daemon/gsd-backlight-helper
+  '';
+
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = repoName;
diff --git a/pkgs/desktops/pantheon/services/elementary-settings-daemon/elementary-dpms.patch b/pkgs/desktops/pantheon/services/elementary-settings-daemon/elementary-dpms.patch
new file mode 100644
index 00000000000..14d056ceca2
--- /dev/null
+++ b/pkgs/desktops/pantheon/services/elementary-settings-daemon/elementary-dpms.patch
@@ -0,0 +1,84 @@
+diff --git a/data/org.gnome.settings-daemon.plugins.power.gschema.xml.in b/data/org.gnome.settings-daemon.plugins.power.gschema.xml.in
+index ec805d8a..cf0d6793 100644
+--- a/data/org.gnome.settings-daemon.plugins.power.gschema.xml.in
++++ b/data/org.gnome.settings-daemon.plugins.power.gschema.xml.in
+@@ -11,6 +11,11 @@
+       <summary>Activation of this plugin</summary>
+       <description>Whether this plugin would be activated by unity-settings-daemon or not</description>
+     </key>
++    <key name="manage-dpms-defaults" type="b">
++      <default>false</default>
++      <summary>Reset X DPMS values</summary>
++      <description>Whether DPMS values will be adjusted by gnome-settings-daemon</description>
++    </key>
+     <key name="idle-brightness" type="i">
+       <default>30</default>
+       <summary>The brightness of the screen when idle</summary>
+diff --git a/plugins/power/gpm-common.c b/plugins/power/gpm-common.c
+index a7ca87fb..a56a7cdc 100644
+--- a/plugins/power/gpm-common.c
++++ b/plugins/power/gpm-common.c
+@@ -280,6 +280,18 @@ disable_builtin_screensaver (gpointer unused)
+         return TRUE;
+ }
+ 
++gboolean
++manage_dpms (void)
++{
++        GSettings *settings;
++        gboolean manage_dpms_defaults;
++
++        settings = g_settings_new ("org.gnome.settings-daemon.plugins.power");
++        manage_dpms_defaults = g_settings_get_boolean (settings, "manage-dpms-defaults");
++        g_object_unref (settings);
++        return manage_dpms_defaults;
++}
++
+ guint
+ gsd_power_enable_screensaver_watchdog (void)
+ {
+@@ -290,7 +302,7 @@ gsd_power_enable_screensaver_watchdog (void)
+          * way. The defaults are now applied in Fedora 20 from
+          * being "0" by default to being "600" by default */
+         gdk_x11_display_error_trap_push (gdk_display_get_default ());
+-        if (DPMSQueryExtension(GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), &dummy, &dummy))
++        if (manage_dpms () && DPMSQueryExtension(GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), &dummy, &dummy))
+                 DPMSSetTimeouts (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), 0, 0, 0);
+         gdk_x11_display_error_trap_pop_ignored (gdk_display_get_default ());
+         id = g_timeout_add_seconds (XSCREENSAVER_WATCHDOG_TIMEOUT,
+diff --git a/plugins/power/gpm-common.h b/plugins/power/gpm-common.h
+index 88a8e00e..af106479 100644
+--- a/plugins/power/gpm-common.h
++++ b/plugins/power/gpm-common.h
+@@ -34,6 +34,7 @@ gchar           *gpm_get_timestring                     (guint           time);
+ gboolean         gsd_power_is_hardware_a_vm             (void);
+ guint            gsd_power_enable_screensaver_watchdog  (void);
+ void             reset_idletime                         (void);
++gboolean         manage_dpms                            (void);
+ 
+ /* Backlight helpers */
+ 
+diff --git a/plugins/power/gsd-power-manager.c b/plugins/power/gsd-power-manager.c
+index c500fa38..445496ee 100644
+--- a/plugins/power/gsd-power-manager.c
++++ b/plugins/power/gsd-power-manager.c
+@@ -1033,6 +1033,9 @@ backlight_enable (GsdPowerManager *manager)
+         gboolean ret;
+         GError *error = NULL;
+ 
++        if (!(manage_dpms ()))
++                return;
++
+         iio_proxy_claim_light (manager, TRUE);
+         ret = gnome_rr_screen_set_dpms_mode (manager->rr_screen,
+                                              GNOME_RR_DPMS_ON,
+@@ -1052,6 +1055,9 @@ backlight_disable (GsdPowerManager *manager)
+         gboolean ret;
+         GError *error = NULL;
+ 
++        if (!(manage_dpms ()))
++                return;
++
+         iio_proxy_claim_light (manager, FALSE);
+         ret = gnome_rr_screen_set_dpms_mode (manager->rr_screen,
+                                              GNOME_RR_DPMS_OFF,
diff --git a/pkgs/desktops/pantheon/services/elementary-settings-daemon/fix-paths.patch b/pkgs/desktops/pantheon/services/elementary-settings-daemon/fix-paths.patch
index 272656fae78..2229302cab7 100644
--- a/pkgs/desktops/pantheon/services/elementary-settings-daemon/fix-paths.patch
+++ b/pkgs/desktops/pantheon/services/elementary-settings-daemon/fix-paths.patch
@@ -13,14 +13,3 @@
  
  typedef struct _TzDB TzDB;
  typedef struct _TzLocation TzLocation;
---- a/plugins/mouse/gsd-mouse-manager.c
-+++ b/plugins/mouse/gsd-mouse-manager.c
-@@ -118,7 +118,7 @@ set_mousetweaks_daemon (GsdMouseManager *manager,
-         gboolean run_daemon = dwell_click_enabled || secondary_click_enabled;
-
-         if (run_daemon || manager->priv->mousetweaks_daemon_running)
--                comm = g_strdup_printf ("mousetweaks %s",
-+                comm = g_strdup_printf ("@mousetweaks@/bin/mousetweaks %s",
-                                         run_daemon ? "" : "-s");
-         else
-                 return;
diff --git a/pkgs/desktops/pantheon/services/elementary-settings-daemon/global-backlight-helper.patch b/pkgs/desktops/pantheon/services/elementary-settings-daemon/global-backlight-helper.patch
index c073b23e6b9..dcdc83934ba 100644
--- a/pkgs/desktops/pantheon/services/elementary-settings-daemon/global-backlight-helper.patch
+++ b/pkgs/desktops/pantheon/services/elementary-settings-daemon/global-backlight-helper.patch
@@ -1,18 +1,18 @@
-diff --git a/plugins/power/gpm-common.c b/plugins/power/gpm-common.c
-index e83f1549..15890053 100644
---- a/plugins/power/gpm-common.c
-+++ b/plugins/power/gpm-common.c
-@@ -452,7 +452,7 @@ run_backlight_helper (enum BacklightHelperCommand   command,
-         gchar *argv[5] = { 0 };
- 
-         argv[0] = "pkexec";
--        argv[1] = LIBEXECDIR "/gsd-backlight-helper";
-+        argv[1] = "/run/current-system/sw/bin/elementary-settings-daemon/gsd-backlight-helper";
-         argv[2] = helper_args[command];
-         argv[3] = value;
- 
+diff --git a/plugins/power/gsd-backlight.c b/plugins/power/gsd-backlight.c
+index d7d10fd2..5619d6ad 100644
+--- a/plugins/power/gsd-backlight.c
++++ b/plugins/power/gsd-backlight.c
+@@ -358,7 +358,7 @@ gsd_backlight_run_set_helper (GsdBacklight *backlight, GTask *task)
+                 proc = g_subprocess_new (G_SUBPROCESS_FLAGS_STDOUT_SILENCE,
+                                          &error,
+                                          "pkexec",
+-                                         LIBEXECDIR "/gsd-backlight-helper",
++                                         "/run/current-system/sw/bin/elementary-settings-daemon/gsd-backlight-helper",
+                                          g_udev_device_get_sysfs_path (backlight->udev_device),
+                                          data->value_str, NULL);
+         } else {
 diff --git a/plugins/power/org.gnome.settings-daemon.plugins.power.policy.in.in b/plugins/power/org.gnome.settings-daemon.plugins.power.policy.in.in
-index f16300f8..f19bba3e 100644
+index f16300f8..79d6bd17 100644
 --- a/plugins/power/org.gnome.settings-daemon.plugins.power.policy.in.in
 +++ b/plugins/power/org.gnome.settings-daemon.plugins.power.policy.in.in
 @@ -25,7 +25,7 @@
@@ -22,5 +22,5 @@ index f16300f8..f19bba3e 100644
 -    <annotate key="org.freedesktop.policykit.exec.path">@libexecdir@/gsd-backlight-helper</annotate>
 +    <annotate key="org.freedesktop.policykit.exec.path">/run/current-system/sw/bin/elementary-settings-daemon/gsd-backlight-helper</annotate>
    </action>
- 
+
  </policyconfig>
diff --git a/pkgs/desktops/plasma-5/breeze-plymouth/default.nix b/pkgs/desktops/plasma-5/breeze-plymouth/default.nix
index 5b6abddbcda..770e549fc2c 100644
--- a/pkgs/desktops/plasma-5/breeze-plymouth/default.nix
+++ b/pkgs/desktops/plasma-5/breeze-plymouth/default.nix
@@ -26,8 +26,8 @@ in
 
 mkDerivation {
   name = "breeze-plymouth";
-  nativeBuildInputs = [ extra-cmake-modules ];
-  buildInputs = [ plymouth ] ++ lib.optionals (logoFile != null) [ imagemagick netpbm perl ];
+  nativeBuildInputs = [ extra-cmake-modules ] ++ lib.optionals (logoFile != null) [ imagemagick netpbm perl ];
+  buildInputs = [ plymouth ];
   patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
   cmakeFlags = []
     ++ lib.optional (osName      != null) "-DDISTRO_NAME=${osName}"
diff --git a/pkgs/desktops/plasma-5/kscreen-417316.patch b/pkgs/desktops/plasma-5/kscreen-417316.patch
new file mode 100644
index 00000000000..92b347e2dbf
--- /dev/null
+++ b/pkgs/desktops/plasma-5/kscreen-417316.patch
@@ -0,0 +1,76 @@
+https://phabricator.kde.org/file/data/dyr2qr4wrhxg4eahkgd3/PHID-FILE-7d4og3zr4mk53u6lzkk2/D27442.diff
+https://bugs.kde.org/show_bug.cgi?id=417316
+
+diff -ru kscreen-5.17.5-orig/kcm/package/contents/ui/main.qml kscreen-5.17.5/kcm/package/contents/ui/main.qml
+--- kscreen-5.17.5-orig/kcm/package/contents/ui/main.qml	2020-01-07 16:28:39.000000000 +0100
++++ kscreen-5.17.5/kcm/package/contents/ui/main.qml	2020-04-03 17:54:26.097809557 +0200
+@@ -24,8 +24,8 @@
+ KCM.SimpleKCM {
+     id: root
+ 
+-    implicitWidth: units.gridUnit * 30
+-    implicitHeight: units.gridUnit * 38
++    implicitWidth: Kirigami.Units.gridUnit * 32
++    implicitHeight: Kirigami.Units.gridUnit * 38
+ 
+     property int selectedOutput: 0
+ 
+@@ -113,7 +113,7 @@
+             id: screen
+ 
+             Layout.alignment: Qt.AlignHCenter
+-            Layout.preferredWidth: Math.max(root.width * 0.8, units.gridUnit * 26)
++            Layout.preferredWidth: Math.max(root.width * 0.8, Kirigami.Units.gridUnit * 26)
+             Layout.topMargin: Kirigami.Units.smallSpacing
+             Layout.bottomMargin: Kirigami.Units.largeSpacing * 2
+ 
+diff -ru kscreen-5.17.5-orig/kcm/package/contents/ui/Output.qml kscreen-5.17.5/kcm/package/contents/ui/Output.qml
+--- kscreen-5.17.5-orig/kcm/package/contents/ui/Output.qml	2020-01-07 16:28:39.000000000 +0100
++++ kscreen-5.17.5/kcm/package/contents/ui/Output.qml	2020-04-03 17:53:22.491686708 +0200
+@@ -19,6 +19,7 @@
+ import QtQuick.Layouts 1.1
+ import QtQuick.Controls 2.3 as Controls
+ import QtGraphicalEffects 1.0
++import org.kde.kirigami 2.4 as Kirigami
+ 
+ Rectangle {
+     id: output
+@@ -77,7 +78,7 @@
+ 
+             Controls.Label {
+                 Layout.fillWidth: true
+-                Layout.margins: units.smallSpacing
++                Layout.margins: Kirigami.Units.smallSpacing
+ 
+                 text: model.display
+                 wrapMode: Text.Wrap
+@@ -87,7 +88,7 @@
+ 
+             Controls.Label {
+                 Layout.fillWidth: true
+-                Layout.bottomMargin: units.smallSpacing
++                Layout.bottomMargin: Kirigami.Units.smallSpacing
+ 
+                 text: "(" + model.size.width + "x" + model.size.height + ")"
+                 horizontalAlignment: Text.AlignHCenter
+diff -ru kscreen-5.17.5-orig/kcm/package/contents/ui/Screen.qml kscreen-5.17.5/kcm/package/contents/ui/Screen.qml
+--- kscreen-5.17.5-orig/kcm/package/contents/ui/Screen.qml	2020-01-07 16:28:39.000000000 +0100
++++ kscreen-5.17.5/kcm/package/contents/ui/Screen.qml	2020-04-03 17:53:22.491686708 +0200
+@@ -45,7 +45,7 @@
+     property int xOffset: (width - totalSize.width / relativeFactor) / 2;
+     property int yOffset: (height - totalSize.height / relativeFactor) / 2;
+ 
+-    implicitHeight: Math.max(root.height * 0.4, units.gridUnit * 13)
++    implicitHeight: Math.max(root.height * 0.4, Kirigami.Units.gridUnit * 13)
+ 
+     Component.onCompleted: background.visible = true;
+ 
+@@ -54,7 +54,7 @@
+         anchors {
+             bottom: parent.bottom
+             horizontalCenter: parent.horizontalCenter
+-            margins: units.smallSpacing
++            margins: Kirigami.Units.smallSpacing
+         }
+         spacing: units.smallSpacing
+         Controls.Button {
diff --git a/pkgs/desktops/plasma-5/kscreen.nix b/pkgs/desktops/plasma-5/kscreen.nix
index d46d48b9c5b..2f37c4212da 100644
--- a/pkgs/desktops/plasma-5/kscreen.nix
+++ b/pkgs/desktops/plasma-5/kscreen.nix
@@ -8,6 +8,7 @@
 
 mkDerivation {
   name = "kscreen";
+  patches = [ ./kscreen-417316.patch ];
   nativeBuildInputs = [ extra-cmake-modules ];
   buildInputs = [
     kconfig kcmutils kconfigwidgets kdbusaddons kglobalaccel ki18n
diff --git a/pkgs/desktops/plasma-5/kwallet-pam.nix b/pkgs/desktops/plasma-5/kwallet-pam.nix
index 7ddd6e2abb7..590c523e9d7 100644
--- a/pkgs/desktops/plasma-5/kwallet-pam.nix
+++ b/pkgs/desktops/plasma-5/kwallet-pam.nix
@@ -7,8 +7,15 @@ mkDerivation {
   postPatch = ''
     sed -i pam_kwallet_init -e "s|socat|${lib.getBin socat}/bin/socat|"
   '';
+
+  # We get a crash when QT_PLUGIN_PATH is more than 1000 characters.
+  # pam_kwallet_init passes its environment to kwalletd5, but
+  # wrapQtApps gives our environment a huge QT_PLUGIN_PATH value. We
+  # are able to unset it here since kwalletd5 will have its own
+  # QT_PLUGIN_PATH.
   postFixup = ''
-    wrapQtApp $out/libexec/pam_kwallet_init
+    wrapProgram $out/libexec/pam_kwallet_init --unset QT_PLUGIN_PATH
   '';
+
   dontWrapQtApps = true;
 }
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-cpugraph-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-cpugraph-plugin.nix
index ef7f7e58020..321e4792e4b 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-cpugraph-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-cpugraph-plugin.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ intltool glib exo libXtst xorgproto libxfce4util libxfce4ui xfce4-panel xfconf gtk2 hicolor-icon-theme ];
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "CPU graph show for Xfce panel";
     platforms = platforms.linux;
     maintainers = [ maintainers.AndersonTorres ];
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-dict-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-dict-plugin.nix
index 3abeb74a435..d5982ea3c12 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-dict-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-dict-plugin.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf gtk2 ];
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "Dictionary plugin for Xfce panel";
     platforms = platforms.linux;
     maintainers = [ maintainers.AndersonTorres ];
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-dockbarx-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-dockbarx-plugin.nix
index b33ba7770be..db74da2939d 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-dockbarx-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-dockbarx-plugin.nix
@@ -1,4 +1,4 @@
-{ stdenv, pkgconfig, fetchFromGitHub, python2, bash, vala
+{ stdenv, pkgconfig, fetchFromGitHub, python2, bash, vala_0_46
 , dockbarx, gtk2, xfce, pythonPackages, wafHook }:
 
 stdenv.mkDerivation rec {
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   pythonPath = [ dockbarx ];
 
   nativeBuildInputs = [ pkgconfig wafHook ];
-  buildInputs = [ python2 vala gtk2 pythonPackages.wrapPython ]
+  buildInputs = [ python2 vala_0_46 gtk2 pythonPackages.wrapPython ]
     ++ (with xfce; [ libxfce4util xfce4-panel xfconf xfce4-dev-tools ])
     ++ pythonPath;
 
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/TiZ-EX1/xfce4-dockbarx-plugin;
+    homepage = "https://github.com/TiZ-EX1/xfce4-dockbarx-plugin";
     description = "A plugins to embed DockbarX into xfce4-panel";
     license = licenses.mit;
     platforms = platforms.linux;
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-embed-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-embed-plugin.nix
index e6d1f6da26b..94c26f9e1b2 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-embed-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-embed-plugin.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf gtk2 ];
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "Embed arbitrary app windows on Xfce panel";
     platforms = platforms.linux;
     maintainers = [ maintainers.AndersonTorres ];
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-eyes-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-eyes-plugin.nix
index 03e5a222967..1932a9e9968 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-eyes-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-eyes-plugin.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf gtk2 ];
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "Eyes following you!";
     platforms = platforms.linux;
     maintainers = [ maintainers.AndersonTorres ];
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-fsguard-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-fsguard-plugin.nix
index ee663aa71ca..54bb4817d7e 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-fsguard-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-fsguard-plugin.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf gtk2 ];
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "Filesystem monitor";
     platforms = platforms.linux;
     maintainers = [ maintainers.AndersonTorres ];
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-genmon-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-genmon-plugin.nix
index 193d27af98a..dd9827dcc5a 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-genmon-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-genmon-plugin.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf gtk2 ];
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "Cyclically spawns a command and captures its output";
     platforms = platforms.linux;
     maintainers = [ maintainers.AndersonTorres ];
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin.nix
index 2782decf6c4..40810abfc07 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-hardware-monitor-plugin.nix
@@ -7,8 +7,8 @@ stdenv.mkDerivation rec {
   version = "1.6.0";
 
   src = fetchurl {
-    url = "https://git.xfce.org/panel-plugins/${pname}/snapshot/${pname}-${version}.tar.bz2";
-    sha256 = "0xg5har11fk1wmdymydxlbk1z8aa39j8k0p4gzw2iqslv3n0zf7b";
+    url = "https://git.xfce.org/archive/${pname}/snapshot/${pname}-${version}.tar.gz";
+    sha256 = "11k7m41jxkaqmpp5njkixw60q517xnw923mz34dnm1llx9ilvfk8";
   };
 
   nativeBuildInputs = [
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${pname}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}";
     description = "Hardware monitor plugin for the XFCE4 panel";
     license = stdenv.lib.licenses.gpl3;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix
index e9d2eb590be..058f2591716 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-mailwatch-plugin.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     xfconf gtk2 exo gnutls libgcrypt ];
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "Mailwatch plugin for Xfce panel";
     platforms = platforms.linux;
     maintainers = [ ];
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix
index b909540144a..b936d2e441c 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-mpc-plugin.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     xfconf gtk2 exo ];
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "MPD plugin for Xfce panel";
     platforms = platforms.linux;
     maintainers = [ ];
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-notes-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-notes-plugin.nix
index 2876c1b1f7d..516d86f56ab 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-notes-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-notes-plugin.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel xfconf gtk2 libunique ];
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "Sticky notes plugin for Xfce panel";
     platforms = platforms.linux;
     maintainers = [ maintainers.AndersonTorres ];
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin.nix
index 2e7233e6cdb..56cad888168 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-sensors-plugin.nix
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${pname}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${pname}";
     description = "A panel plug-in for different sensors using acpi, lm_sensors and hddtemp";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix
index 5575962ab77..95fb9358f94 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-systemload-plugin.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ intltool libxfce4util libxfce4ui xfce4-panel gtk2 ];
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "System load plugin for Xfce panel";
     platforms = platforms.linux;
     maintainers = [ maintainers.AndersonTorres ];
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix
index 4eddfe8df57..4070156c223 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-timer-plugin.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   hardeningDisable = [ "format" ];
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "A simple XFCE panel plugin that lets the user run an alarm at a specified time or at the end of a specified countdown period";
     platforms = platforms.linux;
     license = licenses.gpl2;
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin.nix
index 5ab311ef16f..0914c4cb7d9 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-weather-plugin.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "Weather plugin for the Xfce desktop environment";
     license = stdenv.lib.licenses.gpl2Plus;
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin/default.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin/default.nix
index ef47d37e5ef..884b8ee3a29 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin/default.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-whiskermenu-plugin/default.nix
@@ -3,9 +3,9 @@
 mkXfceDerivation rec {
   category = "panel-plugins";
   pname = "xfce4-whiskermenu-plugin";
-  version = "2.3.3";
+  version = "2.4.3";
   rev = "v${version}";
-  sha256 = "0agh0a5srsy6vi6r50ak9rb42r7vcnfv6nfvg4qbqi77yc44yqdb";
+  sha256 = "1cs3fps1bj0dd5az7fwrvw1xl3y621qk4dma3n73p7rr19j7fpsn";
 
   nativeBuildInputs = [ cmake ];
 
diff --git a/pkgs/desktops/xfce/panel-plugins/xfce4-windowck-plugin.nix b/pkgs/desktops/xfce/panel-plugins/xfce4-windowck-plugin.nix
index 8798851579d..eba7be91ef9 100644
--- a/pkgs/desktops/xfce/panel-plugins/xfce4-windowck-plugin.nix
+++ b/pkgs/desktops/xfce/panel-plugins/xfce4-windowck-plugin.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = "http://goodies.xfce.org/projects/panel-plugins/${p_name}";
+    homepage = "https://goodies.xfce.org/projects/panel-plugins/${p_name}";
     description = "Set of two plugins which allows you to put the maximized window title and windows buttons on the panel";
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
diff --git a/pkgs/development/compilers/acme/default.nix b/pkgs/development/compilers/acme/default.nix
new file mode 100644
index 00000000000..c5a997ad75b
--- /dev/null
+++ b/pkgs/development/compilers/acme/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchsvn }:
+
+stdenv.mkDerivation rec {
+  pname = "acme";
+  version = "120";
+
+  src = fetchsvn {
+    url = "svn://svn.code.sf.net/p/acme-crossass/code-0/trunk";
+    rev = version;
+    sha256 = "0w17b8f8bis22m6l5bg8qg8nniy20f8yg2xmzjipblmc39vpv6s2";
+  };
+
+  sourceRoot = "code-0-r${src.rev}/src";
+
+  makeFlags = [ "BINDIR=$(out)/bin" ];
+
+  postPatch = ''
+    substituteInPlace Makefile \
+      --replace "= gcc" "?= gcc"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A multi-platform cross assembler for 6502/6510/65816 CPUs.";
+    homepage = "https://sourceforge.net/projects/acme-crossass/";
+    license = licenses.gpl2Plus;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ OPNA2608 ];
+  };
+}
diff --git a/pkgs/development/compilers/as31/default.nix b/pkgs/development/compilers/as31/default.nix
deleted file mode 100644
index b70fde00e15..00000000000
--- a/pkgs/development/compilers/as31/default.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ stdenv, fetchpatch, fetchurl, yacc }:
-
-let
-
-  version = "2.3.1";
-
-in stdenv.mkDerivation {
-  pname = "as31";
-  inherit version;
-  src = fetchurl {
-    name = "as31-${version}.tar.gz"; # Nix doesn't like the colons in the URL
-    url = "http://wiki.erazor-zone.de/_media/wiki:projects:linux:as31:as31-${version}.tar.gz";
-    sha256 = "0mbk6z7z03xb0r0ccyzlgkjdjmdzknck4yxxmgr9k7v8f5c348fd";
-  };
-
-  buildInputs = [ yacc ];
-
-  patches = [
-    (fetchpatch {
-       name = "CVE-2012-0808.patch";
-       url = "https://bugs.debian.org/cgi-bin/bugreport.cgi?att=1;bug=655496;filename=as31-mkstemps.patch;msg=5";
-       sha256 = "0iia4wa8m141bwz4588yxb1dp2qwhapcii382sncm6jvwyngwh21";
-     })
-  ];
-
-  preConfigure = ''
-    chmod +x ./configure
-  '';
-
-  postConfigure = ''
-    rm as31/parser.c
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://wiki.erazor-zone.de/wiki:projects:linux:as31;
-    description = "An 8031/8051 assembler by Ken Stauffer and Theo Deraadt which produces a variety of object code output formats";
-    maintainers = with maintainers; [ aneeshusa ];
-    platforms = with platforms; unix;
-  };
-}
diff --git a/pkgs/development/compilers/closure/default.nix b/pkgs/development/compilers/closure/default.nix
index 0efdabcde2e..5204932448b 100644
--- a/pkgs/development/compilers/closure/default.nix
+++ b/pkgs/development/compilers/closure/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "closure-compiler";
-  version = "20200224";
+  version = "20200315";
 
   src = fetchurl {
     url = "https://dl.google.com/closure-compiler/compiler-${version}.tar.gz";
-    sha256 = "0qlnpnd64rrlyz7ybdnp7zk5ns2s0071zs1fcrcq9ba2lnhfbmmb";
+    sha256 = "0akif1wgsyyqrfkidkwhw47dsx471h3b4zsjhnh4rf6kv7by3q65";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/development/compilers/compcert/default.nix b/pkgs/development/compilers/compcert/default.nix
index 3a6c5e9c2c7..1665061125d 100644
--- a/pkgs/development/compilers/compcert/default.nix
+++ b/pkgs/development/compilers/compcert/default.nix
@@ -12,13 +12,13 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "compcert";
-  version = "3.6";
+  version = "3.7";
 
   src = fetchFromGitHub {
     owner = "AbsInt";
     repo = "CompCert";
     rev = "v${version}";
-    sha256 = "1k9xhj7fgllhf7bn7rp3w6zfvs4clglnc4w39zp4678hrwvdcpha";
+    sha256 = "1h4zhk9rrqki193nxs9vjvya7nl9yxjcf07hfqb6g77riy1vd2jr";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/compilers/computecpp/default.nix b/pkgs/development/compilers/computecpp/default.nix
index 65cfcaa7ff6..36b71f3f38a 100644
--- a/pkgs/development/compilers/computecpp/default.nix
+++ b/pkgs/development/compilers/computecpp/default.nix
@@ -10,11 +10,11 @@
 
 stdenv.mkDerivation rec {
   pname = "computecpp";
-  version = "1.2.0";
+  version = "1.3.0";
 
   src = fetchzip {
     url = "https://computecpp.codeplay.com/downloads/computecpp-ce/${version}/ubuntu-16.04-64bit.tar.gz";
-    sha256 = "191kwvzxfg1sbaq6aw6f84chi7bhsibb2a63zsyz3gz8m0c0syr5";
+    sha256 = "1q6gqjpzz4a260gsd6mm1iv4z8ar3vxaypmgdwl8pb4i7kg6ykaz";
     stripRoot = true;
   };
 
diff --git a/pkgs/development/compilers/elm/default.nix b/pkgs/development/compilers/elm/default.nix
index fa9f72ebd04..3e2d3ce2ad2 100644
--- a/pkgs/development/compilers/elm/default.nix
+++ b/pkgs/development/compilers/elm/default.nix
@@ -52,14 +52,6 @@ let
             }));
 
             elm-instrument = justStaticExecutables (overrideCabal (self.callPackage ./packages/elm-instrument.nix {}) (drv: {
-              patches = [(
-                # GHC 8.8.1 and Cabal >= 1.25.0 support
-                # https://github.com/zwilias/elm-instrument/pull/3
-                fetchpatch {
-                  url = "https://github.com/turboMaCk/elm-instrument/commit/4272db2aea742c8b54509e536fa4f35d04f95da5.patch";
-                  sha256 = "1d1lc43lp3x5jfhlyb1b7na7nj1g1i1vc1np26pcisg9c2s7gjz6";
-                }
-              )];
               prePatch = ''
                 sed "s/desc <-.*/let desc = \"${drv.version}\"/g" Setup.hs --in-place
               '';
diff --git a/pkgs/development/compilers/elm/packages/elm-instrument.nix b/pkgs/development/compilers/elm/packages/elm-instrument.nix
index bd769016227..54077994fbd 100644
--- a/pkgs/development/compilers/elm/packages/elm-instrument.nix
+++ b/pkgs/development/compilers/elm/packages/elm-instrument.nix
@@ -3,15 +3,15 @@
 , fetchgit, filepath, free, HUnit, indents, json, mtl
 , optparse-applicative, parsec, process, QuickCheck, quickcheck-io
 , split, stdenv, tasty, tasty-golden, tasty-hunit, tasty-quickcheck
-, text, elm
+, text
 }:
 mkDerivation {
   pname = "elm-instrument";
   version = "0.0.7";
   src = fetchgit {
-    url = "https://github.com/zwilias/elm-instrument.git";
-    sha256 = "14yfzwsyvgc6rzn19sdmwk2mc1vma9hcljnmjnmlig8mp0271v56";
-    rev = "31b527e405a6afdb25bb87ad7bd14f979e65cff7";
+    url = "https://github.com/zwilias/elm-instrument";
+    sha256 = "167d7l2547zxdj7i60r6vazznd9ichwc0bqckh3vrh46glkz06jv";
+    rev = "63e15bb5ec5f812e248e61b6944189fa4a0aee4e";
     fetchSubmodules = true;
   };
   isLibrary = true;
diff --git a/pkgs/development/compilers/flutter/default.nix b/pkgs/development/compilers/flutter/default.nix
new file mode 100644
index 00000000000..afc8fbd7f49
--- /dev/null
+++ b/pkgs/development/compilers/flutter/default.nix
@@ -0,0 +1,31 @@
+{ callPackage }:
+
+let
+  mkFlutter = opts: callPackage (import ./flutter.nix opts) { };
+  getPatches = dir:
+    let files = builtins.attrNames (builtins.readDir dir);
+    in map (f: dir + ("/" + f)) files;
+in {
+  stable = mkFlutter {
+    pname = "flutter";
+    channel = "stable";
+    version = "1.12.13+hotfix.9";
+    sha256Hash = "1ql3zvmmk5zk47y30lajxaam04q6vr373dayq15jv4vpc0fzif1y";
+    patches = getPatches ./patches/stable;
+  };
+  beta = mkFlutter {
+    pname = "flutter-beta";
+    channel = "beta";
+    version = "1.15.17";
+    sha256Hash = "0iil6y6y477dhjgzx54ab5m9nj0jg4xl8x4zzd9iwh8m756r7qsd";
+    patches = getPatches ./patches/beta;
+  };
+  dev = mkFlutter rec {
+    pname = "flutter-dev";
+    channel = "dev";
+    version = "1.17.0-dev.5.0";
+    filename = "flutter_linux_${version}-${channel}.tar.xz";
+    sha256Hash = "0ks2jf2bd42y2jsc91p33r57q7j3m94d8ihkmlxzwi53x1mwp0pk";
+    patches = getPatches ./patches/beta;
+  };
+}
diff --git a/pkgs/development/compilers/flutter/flutter.nix b/pkgs/development/compilers/flutter/flutter.nix
new file mode 100644
index 00000000000..fad2a646a16
--- /dev/null
+++ b/pkgs/development/compilers/flutter/flutter.nix
@@ -0,0 +1,129 @@
+{ channel, pname, version, sha256Hash, patches
+, filename ? "flutter_linux_v${version}-${channel}.tar.xz" }:
+
+{ bash, buildFHSUserEnv, cacert, coreutils, git, makeWrapper, runCommand, stdenv
+, fetchurl, alsaLib, dbus, expat, libpulseaudio, libuuid, libX11, libxcb
+, libXcomposite, libXcursor, libXdamage, libXfixes, libGL, nspr, nss, systemd }:
+
+let
+  drvName = "flutter-${channel}-${version}";
+  flutter = stdenv.mkDerivation {
+    name = "${drvName}-unwrapped";
+
+    src = fetchurl {
+      url =
+        "https://storage.googleapis.com/flutter_infra/releases/${channel}/linux/${filename}";
+      sha256 = sha256Hash;
+    };
+
+    buildInputs = [ makeWrapper git ];
+
+    inherit patches;
+
+    postPatch = ''
+      patchShebangs --build ./bin/
+      find ./bin/ -executable -type f -exec patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) {} \;
+    '';
+
+    buildPhase = ''
+      FLUTTER_ROOT=$(pwd)
+      FLUTTER_TOOLS_DIR="$FLUTTER_ROOT/packages/flutter_tools"
+      SNAPSHOT_PATH="$FLUTTER_ROOT/bin/cache/flutter_tools.snapshot"
+      STAMP_PATH="$FLUTTER_ROOT/bin/cache/flutter_tools.stamp"
+      SCRIPT_PATH="$FLUTTER_TOOLS_DIR/bin/flutter_tools.dart"
+      DART_SDK_PATH="$FLUTTER_ROOT/bin/cache/dart-sdk"
+
+      DART="$DART_SDK_PATH/bin/dart"
+      PUB="$DART_SDK_PATH/bin/pub"
+
+      HOME=../.. # required for pub upgrade --offline, ~/.pub-cache
+                 # path is relative otherwise it's replaced by /build/flutter
+
+      (cd "$FLUTTER_TOOLS_DIR" && "$PUB" upgrade --offline)
+
+      local revision="$(cd "$FLUTTER_ROOT"; git rev-parse HEAD)"
+      "$DART" --snapshot="$SNAPSHOT_PATH" --packages="$FLUTTER_TOOLS_DIR/.packages" "$SCRIPT_PATH"
+      echo "$revision" > "$STAMP_PATH"
+      echo -n "${version}" > version
+
+      rm -rf bin/cache/{artifacts,downloads}
+      rm -f  bin/cache/*.stamp
+    '';
+
+    installPhase = ''
+      mkdir -p $out
+      cp -r . $out
+    '';
+  };
+
+  # Wrap flutter inside an fhs user env to allow execution of binary,
+  # like adb from $ANDROID_HOME or java from android-studio.
+  fhsEnv = buildFHSUserEnv {
+    name = "${drvName}-fhs-env";
+    multiPkgs = pkgs: [
+      # Flutter only use these certificates
+      (runCommand "fedoracert" { } ''
+        mkdir -p $out/etc/pki/tls/
+        ln -s ${cacert}/etc/ssl/certs $out/etc/pki/tls/certs
+      '')
+      pkgs.zlib
+    ];
+    targetPkgs = pkgs:
+      with pkgs; [
+        bash
+        curl
+        git
+        unzip
+        which
+        xz
+
+        # flutter test requires this lib
+        libGLU
+
+        # for android emulator
+        alsaLib
+        dbus
+        expat
+        libpulseaudio
+        libuuid
+        libX11
+        libxcb
+        libXcomposite
+        libXcursor
+        libXdamage
+        libXfixes
+        libGL
+        nspr
+        nss
+        systemd
+      ];
+  };
+
+in runCommand drvName {
+  startScript = ''
+    #!${bash}/bin/bash
+    export PUB_CACHE=''${PUB_CACHE:-"$HOME/.pub-cache"}
+    export ANDROID_EMULATOR_USE_SYSTEM_LIBS=1
+    ${fhsEnv}/bin/${drvName}-fhs-env ${flutter}/bin/flutter --no-version-check "$@"
+  '';
+  preferLocalBuild = true;
+  allowSubstitutes = false;
+  passthru = { unwrapped = flutter; };
+  meta = with stdenv.lib; {
+    description =
+      "Flutter is Google's SDK for building mobile, web and desktop with Dart.";
+    longDescription = ''
+      Flutter is Google’s UI toolkit for building beautiful,
+      natively compiled applications for mobile, web, and desktop from a single codebase.
+    '';
+    homepage = "https://flutter.dev";
+    license = licenses.bsd3;
+    platforms = [ "x86_64-linux" ];
+    maintainers = with maintainers; [ babariviere ];
+  };
+} ''
+  mkdir -p $out/bin
+
+  echo -n "$startScript" > $out/bin/${pname}
+  chmod +x $out/bin/${pname}
+''
diff --git a/pkgs/development/compilers/flutter/patches/beta/disable-auto-update.patch b/pkgs/development/compilers/flutter/patches/beta/disable-auto-update.patch
new file mode 100644
index 00000000000..42c09c805cb
--- /dev/null
+++ b/pkgs/development/compilers/flutter/patches/beta/disable-auto-update.patch
@@ -0,0 +1,31 @@
+diff --git a/bin/flutter b/bin/flutter
+index e0c18e235..2c3fb7ddd 100755
+--- a/bin/flutter
++++ b/bin/flutter
+@@ -185,8 +185,6 @@ fi
+ # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS"
+ # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432"
+ 
+-(upgrade_flutter) 3< "$PROG_NAME"
+-
+ # FLUTTER_TOOL_ARGS isn't quoted below, because it is meant to be considered as
+ # separate space-separated args.
+ "$DART" --packages="$FLUTTER_TOOLS_DIR/.packages" $FLUTTER_TOOL_ARGS "$SNAPSHOT_PATH" "$@"
+diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
+index 99455ae64..f5b0cb59c 100644
+--- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
++++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
+@@ -301,13 +301,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
+         }
+ 
+         _checkFlutterCopy();
+-        try {
+-          await globals.flutterVersion.ensureVersionFile();
+-        } on FileSystemException catch (e) {
+-          globals.printError('Failed to write the version file to the artifact cache: "$e".');
+-          globals.printError('Please ensure you have permissions in the artifact cache directory.');
+-          throwToolExit('Failed to write the version file');
+-        }
+         final bool machineFlag = topLevelResults['machine'] as bool;
+         if (topLevelResults.command?.name != 'upgrade' && topLevelResults['version-check'] as bool && !machineFlag) {
+           await globals.flutterVersion.checkFlutterVersionFreshness();
diff --git a/pkgs/development/compilers/flutter/patches/beta/move-cache.patch b/pkgs/development/compilers/flutter/patches/beta/move-cache.patch
new file mode 100644
index 00000000000..4672d4c625d
--- /dev/null
+++ b/pkgs/development/compilers/flutter/patches/beta/move-cache.patch
@@ -0,0 +1,63 @@
+diff --git a/dev/devicelab/lib/framework/runner.dart b/dev/devicelab/lib/framework/runner.dart
+index 8e511eefd..fbc7d6ac3 100644
+--- a/dev/devicelab/lib/framework/runner.dart
++++ b/dev/devicelab/lib/framework/runner.dart
+@@ -126,7 +126,7 @@ Future<void> cleanupSystem() async {
+     print('\nTelling Gradle to shut down (JAVA_HOME=$javaHome)');
+     final String gradlewBinaryName = Platform.isWindows ? 'gradlew.bat' : 'gradlew';
+     final Directory tempDir = Directory.systemTemp.createTempSync('flutter_devicelab_shutdown_gradle.');
+-    recursiveCopy(Directory(path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'gradle_wrapper')), tempDir);
++    recursiveCopy(Directory(path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'gradle_wrapper')), tempDir);
+     copy(File(path.join(path.join(flutterDirectory.path, 'packages', 'flutter_tools'), 'templates', 'app', 'android.tmpl', 'gradle', 'wrapper', 'gradle-wrapper.properties')), Directory(path.join(tempDir.path, 'gradle', 'wrapper')));
+     if (!Platform.isWindows) {
+       await exec(
+diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart
+index 79b06949f..9040ba0a8 100644
+--- a/packages/flutter_tools/lib/src/asset.dart
++++ b/packages/flutter_tools/lib/src/asset.dart
+@@ -6,6 +6,7 @@ import 'dart:async';
+ 
+ import 'package:yaml/yaml.dart';
+ 
++import 'base/common.dart';
+ import 'base/context.dart';
+ import 'base/file_system.dart';
+ import 'base/utils.dart';
+@@ -325,7 +326,7 @@ List<_Asset> _getMaterialAssets(String fontSet) {
+     for (final Map<dynamic, dynamic> font in family['fonts']) {
+       final Uri entryUri = globals.fs.path.toUri(font['asset'] as String);
+       result.add(_Asset(
+-        baseDir: globals.fs.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'),
++        baseDir: globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'),
+         relativeUri: Uri(path: entryUri.pathSegments.last),
+         entryUri: entryUri,
+       ));
+diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart
+index 715189938..5afb2a0db 100644
+--- a/packages/flutter_tools/lib/src/cache.dart
++++ b/packages/flutter_tools/lib/src/cache.dart
+@@ -189,8 +189,14 @@ class Cache {
+       return;
+     }
+     assert(_lock == null);
++
++    final Directory dir = globals.fs.directory(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter'));
++    if (!dir.existsSync()) {
++      dir.createSync(recursive: true);
++      globals.os.chmod(dir, '755');
++    }
+     final File lockFile =
+-        globals.fs.file(globals.fs.path.join(flutterRoot, 'bin', 'cache', 'lockfile'));
++        globals.fs.file(globals.fs.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter', 'lockfile'));
+     try {
+       _lock = lockFile.openSync(mode: FileMode.write);
+     } on FileSystemException catch (e) {
+@@ -290,7 +296,7 @@ class Cache {
+     if (_rootOverride != null) {
+       return _fileSystem.directory(_fileSystem.path.join(_rootOverride.path, 'bin', 'cache'));
+     } else {
+-      return _fileSystem.directory(_fileSystem.path.join(flutterRoot, 'bin', 'cache'));
++      return _fileSystem.directory(_fileSystem.path.join(globals.fsUtils.homeDirPath, '.cache', 'flutter'));
+     }
+   }
+ 
diff --git a/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch b/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch
new file mode 100644
index 00000000000..16fe504595f
--- /dev/null
+++ b/pkgs/development/compilers/flutter/patches/stable/disable-auto-update.patch
@@ -0,0 +1,31 @@
+diff --git a/bin/flutter b/bin/flutter
+index 3955f8f39..1e7573d30 100755
+--- a/bin/flutter
++++ b/bin/flutter
+@@ -185,8 +185,6 @@ fi
+ # FLUTTER_TOOL_ARGS="--enable-asserts $FLUTTER_TOOL_ARGS"
+ # FLUTTER_TOOL_ARGS="$FLUTTER_TOOL_ARGS --observe=65432"
+ 
+-(upgrade_flutter) 3< "$PROG_NAME"
+-
+ # FLUTTER_TOOL_ARGS isn't quoted below, because it is meant to be considered as
+ # separate space-separated args.
+ "$DART" --packages="$FLUTTER_TOOLS_DIR/.packages" $FLUTTER_TOOL_ARGS "$SNAPSHOT_PATH" "$@"
+diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
+index 5e45819d9..ab748b059 100644
+--- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
++++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
+@@ -377,13 +377,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
+         }
+ 
+         _checkFlutterCopy();
+-        try {
+-          await FlutterVersion.instance.ensureVersionFile();
+-        } on FileSystemException catch (e) {
+-          printError('Failed to write the version file to the artifact cache: "$e".');
+-          printError('Please ensure you have permissions in the artifact cache directory.');
+-          throwToolExit('Failed to write the version file');
+-        }
+         if (topLevelResults.command?.name != 'upgrade' && topLevelResults['version-check'] as bool) {
+           await FlutterVersion.instance.checkFlutterVersionFreshness();
+         }
diff --git a/pkgs/development/compilers/flutter/patches/stable/move-cache.patch b/pkgs/development/compilers/flutter/patches/stable/move-cache.patch
new file mode 100644
index 00000000000..e5719a2867f
--- /dev/null
+++ b/pkgs/development/compilers/flutter/patches/stable/move-cache.patch
@@ -0,0 +1,63 @@
+diff --git a/dev/devicelab/lib/framework/runner.dart b/dev/devicelab/lib/framework/runner.dart
+index 9fae74726..d88d6ecbb 100644
+--- a/dev/devicelab/lib/framework/runner.dart
++++ b/dev/devicelab/lib/framework/runner.dart
+@@ -126,7 +126,7 @@ Future<void> cleanupSystem() async {
+     print('\nTelling Gradle to shut down (JAVA_HOME=$javaHome)');
+     final String gradlewBinaryName = Platform.isWindows ? 'gradlew.bat' : 'gradlew';
+     final Directory tempDir = Directory.systemTemp.createTempSync('flutter_devicelab_shutdown_gradle.');
+-    recursiveCopy(Directory(path.join(flutterDirectory.path, 'bin', 'cache', 'artifacts', 'gradle_wrapper')), tempDir);
++    recursiveCopy(Directory(path.join(homeDirPath, '.cache', 'flutter', 'artifacts', 'gradle_wrapper')), tempDir);
+     copy(File(path.join(path.join(flutterDirectory.path, 'packages', 'flutter_tools'), 'templates', 'app', 'android.tmpl', 'gradle', 'wrapper', 'gradle-wrapper.properties')), Directory(path.join(tempDir.path, 'gradle', 'wrapper')));
+     if (!Platform.isWindows) {
+       await exec(
+diff --git a/packages/flutter_tools/lib/src/asset.dart b/packages/flutter_tools/lib/src/asset.dart
+index e6216c737..5ab497092 100644
+--- a/packages/flutter_tools/lib/src/asset.dart
++++ b/packages/flutter_tools/lib/src/asset.dart
+@@ -6,6 +6,7 @@ import 'dart:async';
+ 
+ import 'package:yaml/yaml.dart';
+ 
++import 'base/common.dart';
+ import 'base/context.dart';
+ import 'base/file_system.dart';
+ import 'base/platform.dart';
+@@ -326,7 +327,7 @@ List<_Asset> _getMaterialAssets(String fontSet) {
+     for (Map<dynamic, dynamic> font in family['fonts']) {
+       final Uri entryUri = fs.path.toUri(font['asset'] as String);
+       result.add(_Asset(
+-        baseDir: fs.path.join(Cache.flutterRoot, 'bin', 'cache', 'artifacts', 'material_fonts'),
++        baseDir: fs.path.join(homeDirPath, '.cache', 'flutter', 'artifacts', 'material_fonts'),
+         relativeUri: Uri(path: entryUri.pathSegments.last),
+         entryUri: entryUri,
+       ));
+diff --git a/packages/flutter_tools/lib/src/cache.dart b/packages/flutter_tools/lib/src/cache.dart
+index 5e1950b56..45585f9c0 100644
+--- a/packages/flutter_tools/lib/src/cache.dart
++++ b/packages/flutter_tools/lib/src/cache.dart
+@@ -164,8 +164,14 @@ class Cache {
+       return;
+     }
+     assert(_lock == null);
++
++    final Directory dir = fs.directory(fs.path.join(homeDirPath, '.cache', 'flutter'));
++    if (!dir.existsSync()) {
++      dir.createSync(recursive: true);
++      os.chmod(dir, '755');
++    }
+     final File lockFile =
+-        fs.file(fs.path.join(flutterRoot, 'bin', 'cache', 'lockfile'));
++        fs.file(fs.path.join(homeDirPath, '.cache', 'flutter', 'lockfile'));
+     try {
+       _lock = lockFile.openSync(mode: FileMode.write);
+     } on FileSystemException catch (e) {
+@@ -239,7 +245,7 @@ class Cache {
+     if (_rootOverride != null) {
+       return fs.directory(fs.path.join(_rootOverride.path, 'bin', 'cache'));
+     } else {
+-      return fs.directory(fs.path.join(flutterRoot, 'bin', 'cache'));
++      return fs.directory(fs.path.join(homeDirPath, '.cache', 'flutter'));
+     }
+   }
+ 
diff --git a/pkgs/development/compilers/fpc/binary.nix b/pkgs/development/compilers/fpc/binary.nix
index cf13ab6f595..f160150d8b5 100644
--- a/pkgs/development/compilers/fpc/binary.nix
+++ b/pkgs/development/compilers/fpc/binary.nix
@@ -1,18 +1,18 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation {
-  name = "fpc-2.6.0-binary";
+  name = "fpc-3.0.0-binary";
 
   src =
     if stdenv.hostPlatform.system == "i686-linux" then
       fetchurl {
-        url = "mirror://sourceforge/project/freepascal/Linux/2.6.0/fpc-2.6.0.i386-linux.tar";
-        sha256 = "08yklvrfxvk59bxsd4rh1i6s3cjn0q06dzjs94h9fbq3n1qd5zdf";
+        url = "mirror://sourceforge/project/freepascal/Linux/3.0.0/fpc-3.0.0.i386-linux.tar";
+        sha256 = "0h3f1dgs1zsx7vvk9kg67anjvgw5sslfbmjblif7ishbcp3k3g5k";
       }
     else if stdenv.hostPlatform.system == "x86_64-linux" then
       fetchurl {
-        url = "mirror://sourceforge/project/freepascal/Linux/2.6.0/fpc-2.6.0.x86_64-linux.tar";
-        sha256 = "0k9vi75k39y735fng4jc2vppdywp82j4qhzn7x4r6qjkad64d8lx";
+        url = "mirror://sourceforge/project/freepascal/Linux/3.0.0/fpc-3.0.0.x86_64-linux.tar";
+        sha256 = "1m2xx3nda45cb3zidbjgdr8kddd19zk0khvp7xxdlclszkqscln9";
       }
     else throw "Not supported on ${stdenv.hostPlatform.system}.";
 
diff --git a/pkgs/development/compilers/fpc/default.nix b/pkgs/development/compilers/fpc/default.nix
index 7bddafc6ff5..a3f5e30aea8 100644
--- a/pkgs/development/compilers/fpc/default.nix
+++ b/pkgs/development/compilers/fpc/default.nix
@@ -3,20 +3,22 @@
 let startFPC = import ./binary.nix { inherit stdenv fetchurl; }; in
 
 stdenv.mkDerivation rec {
-  version = "3.0.0";
+  version = "3.0.4";
   pname = "fpc";
 
   src = fetchurl {
     url = "mirror://sourceforge/freepascal/fpcbuild-${version}.tar.gz";
-    sha256 = "1v40bjp0kvsi8y0mndqvvhnsqjfssl2w6wpfww51j4rxblfkp4fm";
+    sha256 = "0xjyhlhz846jbnp12y68c7nq4xmp4i65akfbrjyf3r62ybk18rgn";
   };
 
   buildInputs = [ startFPC gawk ];
+  glibc = stdenv.cc.libc.out;
 
   preConfigure =
     if stdenv.hostPlatform.system == "i686-linux" || stdenv.hostPlatform.system == "x86_64-linux" then ''
       sed -e "s@'/lib/ld-linux[^']*'@'''@" -i fpcsrc/compiler/systems/t_linux.pas
       sed -e "s@'/lib64/ld-linux[^']*'@'''@" -i fpcsrc/compiler/systems/t_linux.pas
+      sed -e "s@/lib64[^']*@${glibc}/lib@" -i fpcsrc/compiler/systems/t_linux.pas
     '' else "";
 
   makeFlags = [ "NOGDB=1" "FPC=${startFPC}/bin/fpc" ];
diff --git a/pkgs/development/compilers/fpc/lazarus.nix b/pkgs/development/compilers/fpc/lazarus.nix
index 1b3f4d168ee..faf04085999 100644
--- a/pkgs/development/compilers/fpc/lazarus.nix
+++ b/pkgs/development/compilers/fpc/lazarus.nix
@@ -4,11 +4,11 @@
 }:
 stdenv.mkDerivation rec {
   pname = "lazarus";
-  version = "1.8.4";
+  version = "2.0.6";
 
   src = fetchurl {
     url = "mirror://sourceforge/lazarus/Lazarus%20Zip%20_%20GZip/Lazarus%20${version}/lazarus-${version}.tar.gz";
-    sha256 = "1s8hdip973fc1lynklddl0mvg2jd2lzkfk8hzb8jlchs6jn0362s";
+    sha256 = "0v1ax6039nm2bksh646znrkah20ak2zmhaz5p3mz2p60y2qazkc2";
   };
 
   buildInputs = [
diff --git a/pkgs/development/compilers/gcc/9/default.nix b/pkgs/development/compilers/gcc/9/default.nix
index f660a59a790..46918b1f0a1 100644
--- a/pkgs/development/compilers/gcc/9/default.nix
+++ b/pkgs/development/compilers/gcc/9/default.nix
@@ -43,7 +43,7 @@ with stdenv.lib;
 with builtins;
 
 let majorVersion = "9";
-    version = "${majorVersion}.2.0";
+    version = "${majorVersion}.3.0";
 
     inherit (stdenv) buildPlatform hostPlatform targetPlatform;
 
@@ -76,7 +76,7 @@ stdenv.mkDerivation ({
 
   src = fetchurl {
     url = "mirror://gcc/releases/gcc-${version}/gcc-${version}.tar.xz";
-    sha256 = "01mj3yk7z49i49168hg2cg7qs4bsccrrnv7pjmbdlf8j2a7z0vpa";
+    sha256 = "1la2yy27ziasyf0jvzk58y1i5b5bq2h176qil550bxhifs39gqbi";
   };
 
   inherit patches;
@@ -245,12 +245,6 @@ stdenv.mkDerivation ({
 
   inherit (stdenv) is64bit;
 
-  # In this particular combination it stopped creating lib output at all.
-  # TODO: perhaps find a better fix?  (ideally understand what's going on)
-  postFixup = if crossStageStatic && targetPlatform.isMusl && targetPlatform.is32bit
-    then ''mkdir "$lib"''
-    else null;
-
   meta = {
     homepage = https://gcc.gnu.org/;
     license = stdenv.lib.licenses.gpl3Plus;  # runtime support libraries are typically LGPLv3+
diff --git a/pkgs/development/compilers/gcc/builder.sh b/pkgs/development/compilers/gcc/builder.sh
index b153687980a..22a21e5b25c 100644
--- a/pkgs/development/compilers/gcc/builder.sh
+++ b/pkgs/development/compilers/gcc/builder.sh
@@ -201,11 +201,11 @@ postConfigure() {
 
 
 preInstall() {
+    mkdir -p "$out/${targetConfig}/lib"
+    mkdir -p "$lib/${targetConfig}/lib"
     # Make ‘lib64’ symlinks to ‘lib’.
     if [ -n "$is64bit" -a -z "$enableMultilib" ]; then
-        mkdir -p "$out/${targetConfig}/lib"
         ln -s lib "$out/${targetConfig}/lib64"
-        mkdir -p "$lib/${targetConfig}/lib"
         ln -s lib "$lib/${targetConfig}/lib64"
     fi
 }
diff --git a/pkgs/development/compilers/ghc/8.10.1.nix b/pkgs/development/compilers/ghc/8.10.1.nix
index bd67fae158a..9198d08cef4 100644
--- a/pkgs/development/compilers/ghc/8.10.1.nix
+++ b/pkgs/development/compilers/ghc/8.10.1.nix
@@ -88,12 +88,12 @@ let
 
 in
 stdenv.mkDerivation (rec {
-  version = "8.10.0.20200123";
+  version = "8.10.1";
   name = "${targetPrefix}ghc-${version}";
 
   src = fetchurl {
-    url = "https://downloads.haskell.org/ghc/8.10.1-rc1/ghc-${version}-src.tar.xz";
-    sha256 = "162s5g33s918i12qfcqdj5wanc10xg07g5lq3gpm5j7c1v0y1zrf";
+    url = "https://downloads.haskell.org/ghc/8.10.1/ghc-${version}-src.tar.xz";
+    sha256 = "1xgdl6ig5jzli3bg054vfryfkg0y6wggf68g66c32sr67bw0ffsf";
   };
 
   enableParallelBuilding = true;
@@ -149,15 +149,21 @@ stdenv.mkDerivation (rec {
   # TODO(@Ericson2314): Always pass "--target" and always prefix.
   configurePlatforms = [ "build" "host" ]
     ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
+
   # `--with` flags for libraries needed for RTS linker
   configureFlags = [
     "--datadir=$doc/share/doc/ghc"
     "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
-  ] ++ stdenv.lib.optionals (libffi != null) ["--with-system-libffi" "--with-ffi-includes=${targetPackages.libffi.dev}/include" "--with-ffi-libraries=${targetPackages.libffi.out}/lib"
+  ] ++ stdenv.lib.optionals (libffi != null) [
+    "--with-system-libffi"
+    "--with-ffi-includes=${targetPackages.libffi.dev}/include"
+    "--with-ffi-libraries=${targetPackages.libffi.out}/lib"
   ] ++ stdenv.lib.optional (targetPlatform == hostPlatform && !enableIntegerSimple) [
-    "--with-gmp-includes=${targetPackages.gmp.dev}/include" "--with-gmp-libraries=${targetPackages.gmp.out}/lib"
+    "--with-gmp-includes=${targetPackages.gmp.dev}/include"
+    "--with-gmp-libraries=${targetPackages.gmp.out}/lib"
   ] ++ stdenv.lib.optional (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
-    "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
+    "--with-iconv-includes=${libiconv}/include"
+    "--with-iconv-libraries=${libiconv}/lib"
   ] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [
     "--enable-bootstrap-with-devel-snapshot"
   ] ++ stdenv.lib.optionals useLdGold [
diff --git a/pkgs/development/compilers/ghc/8.2.2-binary.nix b/pkgs/development/compilers/ghc/8.2.2-binary.nix
index 1f24b9a1ff2..9f546bcb541 100644
--- a/pkgs/development/compilers/ghc/8.2.2-binary.nix
+++ b/pkgs/development/compilers/ghc/8.2.2-binary.nix
@@ -1,12 +1,15 @@
 { stdenv, substituteAll
 , fetchurl, perl, gcc, llvm
 , ncurses5, gmp, glibc, libiconv
+, llvmPackages
 }:
 
 # Prebuilt only does native
 assert stdenv.targetPlatform == stdenv.hostPlatform;
 
 let
+  useLLVM = !stdenv.targetPlatform.isx86;
+
   libPath = stdenv.lib.makeLibraryPath ([
     ncurses5 gmp
   ] ++ stdenv.lib.optional (stdenv.hostPlatform.isDarwin) libiconv);
@@ -53,7 +56,7 @@ stdenv.mkDerivation rec {
     or (throw "cannot bootstrap GHC on this platform"));
 
   nativeBuildInputs = [ perl ];
-  buildInputs = stdenv.lib.optionals (stdenv.targetPlatform.isAarch32 || stdenv.targetPlatform.isAarch64) [ llvm ];
+  propagatedBuildInputs = stdenv.lib.optionals useLLVM [ llvmPackages.llvm ];
 
   # Cannot patchelf beforehand due to relative RPATHs that anticipate
   # the final install location/
diff --git a/pkgs/development/compilers/ghc/8.4.4.nix b/pkgs/development/compilers/ghc/8.4.4.nix
index 4bebd63956e..57d6a108de0 100644
--- a/pkgs/development/compilers/ghc/8.4.4.nix
+++ b/pkgs/development/compilers/ghc/8.4.4.nix
@@ -96,7 +96,7 @@ stdenv.mkDerivation (rec {
   outputs = [ "out" "doc" ];
 
   patches = [(fetchpatch {
-    url = "https://git.haskell.org/hsc2hs.git/patch/738f3666c878ee9e79c3d5e819ef8b3460288edf";
+    url = "https://github.com/haskell/hsc2hs/commit/738f3666c878ee9e79c3d5e819ef8b3460288edf.diff";
     sha256 = "0plzsbfaq6vb1023lsarrjglwgr9chld4q3m99rcfzx0yx5mibp3";
     extraPrefix = "utils/hsc2hs/";
     stripLen = 1;
@@ -112,7 +112,7 @@ stdenv.mkDerivation (rec {
     })
     ++ stdenv.lib.optional stdenv.isDarwin ./backport-dylib-command-size-limit.patch
     ++ stdenv.lib.optional (targetPlatform.isAarch32 || targetPlatform.isAarch64) (fetchpatch {
-      url = "https://git.haskell.org/ghc.git/patch/d8495549ba9d194815c2d0eaee6797fc7c00756a";
+      url = "https://github.com/ghc/ghc/commit/d8495549ba9d194815c2d0eaee6797fc7c00756a.diff";
       sha256 = "1yjcma507c609bcim4rnxq0gaj2dg4d001jklmbpbqpzqzxkn5sz";
     });
 
diff --git a/pkgs/development/compilers/ghc/8.6.3-binary.nix b/pkgs/development/compilers/ghc/8.6.5-binary.nix
index fe576186b0e..97793d91289 100644
--- a/pkgs/development/compilers/ghc/8.6.3-binary.nix
+++ b/pkgs/development/compilers/ghc/8.6.5-binary.nix
@@ -1,12 +1,15 @@
 { stdenv
 , fetchurl, perl, gcc
 , ncurses5, gmp, glibc, libiconv
+, llvmPackages
 }:
 
 # Prebuilt only does native
 assert stdenv.targetPlatform == stdenv.hostPlatform;
 
 let
+  useLLVM = !stdenv.targetPlatform.isx86;
+
   libPath = stdenv.lib.makeLibraryPath ([
     ncurses5 gmp
   ] ++ stdenv.lib.optional (stdenv.hostPlatform.isDarwin) libiconv);
@@ -24,27 +27,33 @@ let
 in
 
 stdenv.mkDerivation rec {
-  version = "8.6.3";
+  version = "8.6.5";
 
   name = "ghc-${version}-binary";
 
+  # https://downloads.haskell.org/~ghc/8.6.5/
   src = fetchurl ({
     i686-linux = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-i386-deb8-linux.tar.xz";
-      sha256 = "0bw8a7fxcbskf93rb4m542ff66vrmx5i5kj77qx37cbhijx70w5m";
+      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-i386-deb9-linux.tar.xz";
+      sha256 = "1p2h29qghql19ajk755xa0yxkn85slbds8m9n5196ris743vkp8w";
     };
     x86_64-linux = {
-      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-x86_64-deb8-linux.tar.xz";
-      sha256 = "1m9gaga2pzi2cx5gvasg0rx1dlvr68gmi20l67652kag6xjsa719";
+      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-x86_64-deb9-linux.tar.xz";
+      sha256 = "1pqlx6rdjs2110g0y1i9f8x18lmdizibjqd15f5xahcz39hgaxdw";
+    };
+    aarch64-linux = {
+      url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-aarch64-ubuntu18.04-linux.tar.xz";
+      sha256 = "11n7l2a36i5vxzzp85la2555q4m34l747g0pnmd81cp46y85hlhq";
     };
     x86_64-darwin = {
       url = "http://haskell.org/ghc/dist/${version}/ghc-${version}-x86_64-apple-darwin.tar.xz";
-      sha256 = "1hbzk57v45176kxcx848p5jn5p1xbp2129ramkbzsk6plyhnkl3r";
+      sha256 = "0s9188vhhgf23q3rjarwhbr524z6h2qga5xaaa2pma03sfqvvhfz";
     };
   }.${stdenv.hostPlatform.system}
     or (throw "cannot bootstrap GHC on this platform"));
 
   nativeBuildInputs = [ perl ];
+  propagatedBuildInputs = stdenv.lib.optionals useLLVM [ llvmPackages.llvm ];
 
   # Cannot patchelf beforehand due to relative RPATHs that anticipate
   # the final install location/
@@ -168,5 +177,5 @@ stdenv.mkDerivation rec {
   };
 
   meta.license = stdenv.lib.licenses.bsd3;
-  meta.platforms = ["x86_64-linux" "i686-linux" "x86_64-darwin"];
+  meta.platforms = ["x86_64-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
 }
diff --git a/pkgs/development/compilers/go/1.12.nix b/pkgs/development/compilers/go/1.12.nix
index 35bcfa36e99..3b4091bf114 100644
--- a/pkgs/development/compilers/go/1.12.nix
+++ b/pkgs/development/compilers/go/1.12.nix
@@ -43,8 +43,7 @@ stdenv.mkDerivation rec {
     ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ]
     ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
 
-
-  propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ];
+  depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ];
 
   hardeningDisable = [ "all" ];
 
diff --git a/pkgs/development/compilers/go/1.13.nix b/pkgs/development/compilers/go/1.13.nix
index aa881273032..36345bb0dab 100644
--- a/pkgs/development/compilers/go/1.13.nix
+++ b/pkgs/development/compilers/go/1.13.nix
@@ -43,8 +43,7 @@ stdenv.mkDerivation rec {
     ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ]
     ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
 
-
-  propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ];
+  depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ];
 
   hardeningDisable = [ "all" ];
 
diff --git a/pkgs/development/compilers/go/1.14.nix b/pkgs/development/compilers/go/1.14.nix
index 3651b936116..b8038a5d9dd 100644
--- a/pkgs/development/compilers/go/1.14.nix
+++ b/pkgs/development/compilers/go/1.14.nix
@@ -43,8 +43,7 @@ stdenv.mkDerivation rec {
     ++ optionals stdenv.isLinux [ stdenv.cc.libc.out ]
     ++ optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
 
-
-  propagatedBuildInputs = optionals stdenv.isDarwin [ Security Foundation ];
+  depsTargetTargetPropagated = optionals stdenv.isDarwin [ Security Foundation ];
 
   hardeningDisable = [ "all" ];
 
diff --git a/pkgs/development/compilers/go/1.4.nix b/pkgs/development/compilers/go/1.4.nix
index 0dd852a1ef1..c3c46de1fce 100644
--- a/pkgs/development/compilers/go/1.4.nix
+++ b/pkgs/development/compilers/go/1.4.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ pcre ];
-  propagatedBuildInputs = lib.optional stdenv.isDarwin Security;
+  depsTargetTargetPropagated = lib.optional stdenv.isDarwin Security;
 
   hardeningDisable = [ "all" ];
 
diff --git a/pkgs/development/compilers/intel-graphics-compiler/default.nix b/pkgs/development/compilers/intel-graphics-compiler/default.nix
index 3e10041c5c8..92b312ba19e 100644
--- a/pkgs/development/compilers/intel-graphics-compiler/default.nix
+++ b/pkgs/development/compilers/intel-graphics-compiler/default.nix
@@ -24,13 +24,13 @@ in
 
 stdenv.mkDerivation rec {
   pname = "intel-graphics-compiler";
-  version = "1.0.3151";
+  version = "1.0.3627";
 
   src = fetchFromGitHub {
     owner = "intel";
     repo = "intel-graphics-compiler";
     rev = "igc-${version}";
-    sha256 = "1c2ll563a2j4sv3r468i4lv158hkzywnyajyk7iyin7bhqhm2vzf";
+    sha256 = "1x9fjvf7rbhil09am2v9j2jhwysdvwgshf9zidbirjgfrqn573h8";
   };
 
   nativeBuildInputs = [ clang cmake bison flex llvm python ];
diff --git a/pkgs/development/compilers/jwasm/default.nix b/pkgs/development/compilers/jwasm/default.nix
index a9613de91eb..8ce55c75795 100644
--- a/pkgs/development/compilers/jwasm/default.nix
+++ b/pkgs/development/compilers/jwasm/default.nix
@@ -2,24 +2,30 @@
 , cmake }:
 
 with stdenv.lib;
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   pname = "jwasm";
-  version = "git-2017-11-22";
+  version = "2.13";
 
   src = fetchFromGitHub {
     owner = "JWasm";
     repo  = "JWasm";
-    rev    = "26f97c8b5c9d9341ec45538701116fa3649b7766";
+    rev = version;
     sha256 = "0m972pc8vk8s9yv1pi85fsjgm6hj24gab7nalw2q04l0359nqi7w";
   };
 
   nativeBuildInputs = [ cmake ];
 
-  installPhase = "mkdir -p $out/bin ; cp jwasm $out/bin/";
+  installPhase = ''
+    install -Dpm755 jwasm -t $out/bin/
+    install -Dpm644 $src/History.txt  $src/Readme.txt \
+                    $src/Doc/enh.txt $src/Doc/fixes.txt \
+                    $src/Doc/gencode.txt $src/Doc/overview.txt \
+                    -t $out/share/doc/jwasm/
+  '';
 
   meta = {
     description = "A MASM-compatible x86 assembler";
-    homepage = http://jwasm.github.io/;
+    homepage = "http://jwasm.github.io/";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ AndersonTorres ];
     platforms = platforms.darwin ++ platforms.linux;
diff --git a/pkgs/development/compilers/kotlin/default.nix b/pkgs/development/compilers/kotlin/default.nix
index 9a124ad8477..d4f37d4f5cc 100644
--- a/pkgs/development/compilers/kotlin/default.nix
+++ b/pkgs/development/compilers/kotlin/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, makeWrapper, jre, unzip }:
 
 let
-  version = "1.3.70";
+  version = "1.3.71";
 in stdenv.mkDerivation {
   inherit version;
   pname = "kotlin";
 
   src = fetchurl {
     url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip";
-    sha256 = "1iw9pjacjdhhvriaz2kzf677csq2nfx66k5cickk79h7ywppi7bh";
+    sha256 = "0jp7z2lys02d0wmycdlfg9c08ji4qvjaz2wzvrxjyvcwv7d7gnvs";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/pkgs/development/compilers/ldc/default.nix b/pkgs/development/compilers/ldc/default.nix
index c397d02038d..7ed716bf866 100644
--- a/pkgs/development/compilers/ldc/default.nix
+++ b/pkgs/development/compilers/ldc/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, cmake, ninja, llvm_5, llvm_8, curl, tzdata
-, python, libconfig, lit, gdb, unzip, darwin, bash
+, libconfig, lit, gdb, unzip, darwin, bash
 , callPackage, makeWrapper, runCommand, targetPackages
 , bootstrapVersion ? false
 , version ? "1.17.0"
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake ninja makeWrapper unzip ]
     ++ stdenv.lib.optionals (!bootstrapVersion) [
-      bootstrapLdc python lit
+      bootstrapLdc lit lit.python
     ]
     ++ stdenv.lib.optional (!bootstrapVersion && stdenv.hostPlatform.isDarwin)
       # https://github.com/NixOS/nixpkgs/issues/57120
diff --git a/pkgs/development/compilers/llvm/10/clang/default.nix b/pkgs/development/compilers/llvm/10/clang/default.nix
index dfdc9f74e15..61008b5c12a 100644
--- a/pkgs/development/compilers/llvm/10/clang/default.nix
+++ b/pkgs/development/compilers/llvm/10/clang/default.nix
@@ -8,7 +8,7 @@ let
     pname = "clang";
     inherit version;
 
-    src = fetch "clang" "0ap63qhz0j6m63l4njwp055xni4s71dsxqi1w5d2p93hbswaiiw2";
+    src = fetch "clang" "08fbxa2a0kr3ni35ckppj0kyvlcyaywrhpqwcdrdy0z900mhcnw8";
 
     unpackPhase = ''
       unpackFile $src
diff --git a/pkgs/development/compilers/llvm/10/compiler-rt.nix b/pkgs/development/compilers/llvm/10/compiler-rt.nix
index 8c870a610cc..02bbc17c967 100644
--- a/pkgs/development/compilers/llvm/10/compiler-rt.nix
+++ b/pkgs/development/compilers/llvm/10/compiler-rt.nix
@@ -2,7 +2,7 @@
 stdenv.mkDerivation rec {
   pname = "compiler-rt";
   inherit version;
-  src = fetch pname "1g067yx8qz0bmf00b2xqjqaayqj2xvrjp9smms3a16syj9m0hfri";
+  src = fetch pname "0x9c531k6ww21s2mkdwqx1vbdjmx6d4wmfb8gdbj0wqa796sczba";
 
   nativeBuildInputs = [ cmake python3 llvm ];
   buildInputs = stdenv.lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
diff --git a/pkgs/development/compilers/llvm/10/default.nix b/pkgs/development/compilers/llvm/10/default.nix
index 574ab5ec4e7..462f246b89d 100644
--- a/pkgs/development/compilers/llvm/10/default.nix
+++ b/pkgs/development/compilers/llvm/10/default.nix
@@ -6,15 +6,14 @@
 
 let
   release_version = "10.0.0";
-  candidate = "rc5";
-  version = "10.0.0${candidate}"; # differentiating these is important for rc's
+  version = release_version; # differentiating these (variables) is important for rc's
 
   fetch = name: sha256: fetchurl {
-    url = "https://prereleases.llvm.org/${release_version}/${candidate}/${name}-${version}.src.tar.xz";
+    url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-${release_version}/${name}-${version}.src.tar.xz";
     inherit sha256;
   };
 
-  clang-tools-extra_src = fetch "clang-tools-extra" "0x23q70c0xcwdhj0d66nisr8rqq69qcshrbb4si9pxfsm0zs9h3i";
+  clang-tools-extra_src = fetch "clang-tools-extra" "074ija5s2jsdn0k035r2dzmryjmqxdnyg4xwvaqych2bazv8rpxc";
 
   tools = stdenv.lib.makeExtensible (tools: let
     callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
diff --git a/pkgs/development/compilers/llvm/10/libc++/default.nix b/pkgs/development/compilers/llvm/10/libc++/default.nix
index 18eae91d340..9e3529a046f 100644
--- a/pkgs/development/compilers/llvm/10/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/10/libc++/default.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   pname = "libc++";
   inherit version;
 
-  src = fetch "libcxx" "0qw85sy3y1mcdrj8yd1j1gmskh0vs4xdgrx80niigizhr7030vxs";
+  src = fetch "libcxx" "1isnj78diknh0nvd73mlq8p8g209f9bab2mbysq826bg2wzql3r7";
 
   postUnpack = ''
     unpackFile ${libcxxabi.src}
diff --git a/pkgs/development/compilers/llvm/10/libc++abi.nix b/pkgs/development/compilers/llvm/10/libc++abi.nix
index ba51f0f33f1..b58c12bd9ab 100644
--- a/pkgs/development/compilers/llvm/10/libc++abi.nix
+++ b/pkgs/development/compilers/llvm/10/libc++abi.nix
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
   pname = "libc++abi";
   inherit version;
 
-  src = fetch "libcxxabi" "15iclzxjqfjynqxjg8dahyr0gfg83blv9dm7z9hq5ipxw8x2sglf";
+  src = fetch "libcxxabi" "1q8lrbh68a9v4lr88b8xsjpmwx5z96sa5wnkb92xx7ccm1ssq6z7";
 
   nativeBuildInputs = [ cmake ];
   buildInputs = stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
diff --git a/pkgs/development/compilers/llvm/10/libunwind.nix b/pkgs/development/compilers/llvm/10/libunwind.nix
index 6016d0536bf..4e55b28c243 100644
--- a/pkgs/development/compilers/llvm/10/libunwind.nix
+++ b/pkgs/development/compilers/llvm/10/libunwind.nix
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
   pname = "libunwind";
   inherit version;
 
-  src = fetch pname "12c2fh63afav8rfmplfs628r74ksfs8fjls655rwjsrg1hk0gy3l";
+  src = fetch pname "09n66dl9cc17d81qflj5h1l4garmhvzfi2lhcb7rx00l8z65xp09";
 
   nativeBuildInputs = [ cmake ];
 
diff --git a/pkgs/development/compilers/llvm/10/lld.nix b/pkgs/development/compilers/llvm/10/lld.nix
index ab2dd8caee8..4bde3d74636 100644
--- a/pkgs/development/compilers/llvm/10/lld.nix
+++ b/pkgs/development/compilers/llvm/10/lld.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   pname = "lld";
   inherit version;
 
-  src = fetch pname "08zg546872b432qrx49i7k1c2vdq9yjvc7gnrvy2nywv0d2qf9nc";
+  src = fetch pname "026pwcbczcg0j5c9h7hxxrn3ki81ia9m9sfn0sy0bvzffv2xg85r";
 
   nativeBuildInputs = [ cmake ];
   buildInputs = [ llvm libxml2 ];
diff --git a/pkgs/development/compilers/llvm/10/lldb.nix b/pkgs/development/compilers/llvm/10/lldb.nix
index 12cb43bc504..46c991de817 100644
--- a/pkgs/development/compilers/llvm/10/lldb.nix
+++ b/pkgs/development/compilers/llvm/10/lldb.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation (rec {
   pname = "lldb";
   inherit version;
 
-  src = fetch pname "0swv16n7gm12f399f7hxai1jh89s14h3yg7cci10yaiibpvwk73x";
+  src = fetch pname "0ddikvc0kbqlqvsypsm9nhfwmyw4prp4rv49f0bgacyh5ssgq7yx";
 
   patches = [ ./lldb-procfs.patch ];
 
diff --git a/pkgs/development/compilers/llvm/10/llvm.nix b/pkgs/development/compilers/llvm/10/llvm.nix
index 0405958070a..73265419cfb 100644
--- a/pkgs/development/compilers/llvm/10/llvm.nix
+++ b/pkgs/development/compilers/llvm/10/llvm.nix
@@ -31,8 +31,8 @@ in stdenv.mkDerivation (rec {
   pname = "llvm";
   inherit version;
 
-  src = fetch pname "1abfi0zqbcwxf68dk00szpjxkcd44589va243af8sg97hljq6709";
-  polly_src = fetch "polly" "1fzg5934km69rwam6vgznk0p4slzhr0icwmj3jibw3p93ppa8k9r";
+  src = fetch pname "1pwgm6cr0xr5a0hrbqs1zvsvvjvy0yq1y47c96804wcs795s90yz";
+  polly_src = fetch "polly" "15sd3dq0w60jsb76pis09lkagj5iy43h9hg4kd9gx5l8cbnsdyrm";
 
   unpackPhase = ''
     unpackFile $src
diff --git a/pkgs/development/compilers/llvm/10/openmp.nix b/pkgs/development/compilers/llvm/10/openmp.nix
index 1cdd4cc9bba..4dd45ba94e6 100644
--- a/pkgs/development/compilers/llvm/10/openmp.nix
+++ b/pkgs/development/compilers/llvm/10/openmp.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   pname = "openmp";
   inherit version;
 
-  src = fetch pname "0swif1plz7drjha6rdw02b60symsz95w62wxpiygbpdwsmhbbgam";
+  src = fetch pname "1ymd13gj07x0b0vxziygm0p41vrq6nsgx837jqg9ll6h8ndg57rv";
 
   nativeBuildInputs = [ cmake perl ];
   buildInputs = [ llvm ];
diff --git a/pkgs/development/compilers/matter-compiler/Gemfile.lock b/pkgs/development/compilers/matter-compiler/Gemfile.lock
index ab1833b3cfe..230b99d91a6 100644
--- a/pkgs/development/compilers/matter-compiler/Gemfile.lock
+++ b/pkgs/development/compilers/matter-compiler/Gemfile.lock
@@ -10,4 +10,4 @@ DEPENDENCIES
   matter_compiler
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/compilers/nextpnr/default.nix b/pkgs/development/compilers/nextpnr/default.nix
index afd08f6e96e..b0fbc2eb8d1 100644
--- a/pkgs/development/compilers/nextpnr/default.nix
+++ b/pkgs/development/compilers/nextpnr/default.nix
@@ -14,14 +14,14 @@ let
 in
 with stdenv; mkDerivation rec {
   pname = "nextpnr";
-  version = "2020.02.04";
+  version = "2020.03.25";
 
   srcs = [
     (fetchFromGitHub {
       owner  = "YosysHQ";
       repo   = "nextpnr";
-      rev    = "ca733561873cd54be047ae30a94efcd71b3f8be5";
-      sha256 = "176drrq6w53qbwmnksa1b22w9qz3gd1db9hy2lyv8svbcdxd9qwp";
+      rev    = "a3ede0293a50c910e7d96319b2084d50f2501a6b";
+      sha256 = "0ikfjva4gqmlx6y7mjamg03ad7x9gnz32ahqv798ynd87svq10aq";
       name   = "nextpnr";
     })
     (fetchFromGitHub {
diff --git a/pkgs/development/compilers/nim/default.nix b/pkgs/development/compilers/nim/default.nix
index 316ddbfcb60..53854d4fa35 100644
--- a/pkgs/development/compilers/nim/default.nix
+++ b/pkgs/development/compilers/nim/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   pname = "nim";
-  version = "1.0.6";
+  version = "1.2.0";
 
   src = fetchurl {
     url = "https://nim-lang.org/download/${pname}-${version}.tar.xz";
-    sha256 = "1cv6bxc7w21455c0pv0r2h64ljyzw266jsk1fsgiiyk2rx8mfkhk";
+    sha256 = "TpRYOjc5ZYIYBeZl4KBfUvthCRZnbtsJFIlBQVY3xXU=";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/ocaml/4.09.nix b/pkgs/development/compilers/ocaml/4.09.nix
index 4b56d82eba5..a093a244641 100644
--- a/pkgs/development/compilers/ocaml/4.09.nix
+++ b/pkgs/development/compilers/ocaml/4.09.nix
@@ -1,6 +1,9 @@
 import ./generic.nix {
   major_version = "4";
   minor_version = "09";
-  patch_version = "0";
-  sha256 = "1v3z5ar326f3hzvpfljg4xj8b9lmbrl53fn57yih1bkbx3gr3yzj";
+  patch_version = "1";
+  sha256 = "1aq5505lpa39garky2icgfv4c7ylpx3j623cz9bsz5c466d2kqls";
+
+  # Breaks build with Clang
+  hardeningDisable = [ "strictoverflow" ];
 }
diff --git a/pkgs/development/compilers/purescript/psc-package/default.nix b/pkgs/development/compilers/purescript/psc-package/default.nix
index 908a8e943e7..0bebd5d2f50 100644
--- a/pkgs/development/compilers/purescript/psc-package/default.nix
+++ b/pkgs/development/compilers/purescript/psc-package/default.nix
@@ -1,27 +1,61 @@
-{ haskellPackages, mkDerivation, fetchFromGitHub, lib }:
+# Based on https://github.com/justinwoo/easy-purescript-nix/blob/master/psc-package-simple.nix
+{ stdenv, lib, fetchurl, gmp, zlib, libiconv, darwin, installShellFiles }:
 
-with lib;
+let
+  dynamic-linker = stdenv.cc.bintools.dynamicLinker;
+
+in
+stdenv.mkDerivation rec {
+  pname = "psc-package-simple";
 
-mkDerivation rec {
-  pname = "psc-package";
   version = "0.6.2";
 
-  src = fetchFromGitHub {
-    owner = "purescript";
-    repo = pname;
-    rev = "v${version}";
-    sha256 = "0536mijma61khldnpbdviq2vvpfzzz7w8bxr59mvr19i10njdq0y";
+  src = if stdenv.isDarwin
+  then fetchurl {
+    url = "https://github.com/purescript/psc-package/releases/download/v0.6.2/macos.tar.gz";
+    sha256 = "17dh3bc5b6ahfyx0pi6n9qnrhsyi83qdynnca6k1kamxwjimpcq1";
+  }
+  else fetchurl {
+    url = "https://github.com/purescript/psc-package/releases/download/v0.6.2/linux64.tar.gz";
+    sha256 = "1zvay9q3xj6yd76w6qyb9la4jaj9zvpf4dp78xcznfqbnbhm1a54";
   };
 
-  isLibrary = false;
-  isExecutable = true;
+  buildInputs = [ gmp zlib ];
+  nativeBuildInputs = [ installShellFiles ];
+
+  libPath = lib.makeLibraryPath buildInputs;
+
+  dontStrip = true;
+
+  installPhase = ''
+    mkdir -p $out/bin
 
-  executableHaskellDepends = with haskellPackages; [
-    aeson aeson-pretty either errors optparse-applicative
-    system-filepath turtle
-  ];
+    PSC_PACKAGE=$out/bin/psc-package
 
-  description = "A package manager for PureScript based on package sets";
-  license = licenses.bsd3;
-  maintainers = with lib.maintainers; [ Profpatsch ];
+    install -D -m555 -T psc-package $PSC_PACKAGE
+    chmod u+w $PSC_PACKAGE
+  '' + lib.optionalString stdenv.isDarwin ''
+    install_name_tool \
+      -change /usr/lib/libSystem.B.dylib ${darwin.Libsystem}/lib/libSystem.B.dylib \
+      -change /usr/lib/libiconv.2.dylib ${libiconv}/libiconv.2.dylib \
+      $PSC_PACKAGE
+  '' + lib.optionalString (!stdenv.isDarwin) ''
+    patchelf --interpreter ${dynamic-linker} --set-rpath ${libPath} $PSC_PACKAGE
+  '' + ''
+    chmod u-w $PSC_PACKAGE
+
+    $PSC_PACKAGE --bash-completion-script $PSC_PACKAGE > psc-package.bash
+    $PSC_PACKAGE --fish-completion-script $PSC_PACKAGE > psc-package.fish
+    $PSC_PACKAGE --zsh-completion-script $PSC_PACKAGE > _psc-package
+    installShellCompletion \
+      psc-package.{bash,fish} \
+      --zsh _psc-package
+  '';
+
+  meta = with lib; {
+    description = "A package manager for PureScript based on package sets";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ Profpatsch ];
+    platforms = [ "x86_64-darwin" "x86_64-linux" ];
+  };
 }
diff --git a/pkgs/development/compilers/purescript/purescript/default.nix b/pkgs/development/compilers/purescript/purescript/default.nix
index d1797a448ad..6f61068738a 100644
--- a/pkgs/development/compilers/purescript/purescript/default.nix
+++ b/pkgs/development/compilers/purescript/purescript/default.nix
@@ -57,7 +57,7 @@ in stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A strongly-typed functional programming language that compiles to JavaScript";
-    homepage = http://www.purescript.org/;
+    homepage = "https://www.purescript.org/";
     license = licenses.bsd3;
     maintainers = [ maintainers.justinwoo maintainers.mbbx6spp ];
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
diff --git a/pkgs/development/compilers/reason/default.nix b/pkgs/development/compilers/reason/default.nix
index ef27fc41b07..94ed520ee6c 100644
--- a/pkgs/development/compilers/reason/default.nix
+++ b/pkgs/development/compilers/reason/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "ocaml${ocaml.version}-reason-${version}";
-  version = "3.5.4";
+  version = "3.6.0";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = "reason";
-    rev = "e3287476e5c3f0cbcd9dc7ab18d290f81f4afa0c";
-    sha256 = "02p5d1x6lr7jp9mvgvsas3nnq3a97chxp5q6rl07n5qm61d5b4dl";
+    rev = "2860cc274b1b5b76a71d0e5190bf67a133d6f809";
+    sha256 = "05wcg0gfln85spjfgsij818h2sp4y6s8bvdcwmzv0r8jblr8402b";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/compilers/rgbds/default.nix b/pkgs/development/compilers/rgbds/default.nix
index bf2594b9bf4..52d388beaed 100644
--- a/pkgs/development/compilers/rgbds/default.nix
+++ b/pkgs/development/compilers/rgbds/default.nix
@@ -6,18 +6,18 @@
 
 stdenv.mkDerivation rec {
   pname = "rgbds";
-  version = "0.3.9";
+  version = "0.3.10";
   src = fetchFromGitHub {
     owner = "rednex";
     repo = "rgbds";
     rev = "v${version}";
-    sha256 = "0pzd9ig3ahpgq7jbj82grllxx1v01d620insr2m8h0c6jj25n5hv";
+    sha256 = "0752fbffxgxyf3jw2iij88l05dqhppgcxy7dvk82hp4wdg4cflpq";
   };
   nativeBuildInputs = [ bison flex pkg-config libpng ];
   installFlags = [ "PREFIX=\${out}" ];
 
   meta = with stdenv.lib; {
-    homepage = https://rednex.github.io/rgbds/;
+    homepage = "https://rednex.github.io/rgbds/";
     description = "A free assembler/linker package for the Game Boy and Game Boy Color";
     license = licenses.mit;
     longDescription =
diff --git a/pkgs/development/compilers/rust/0001-Allow-getting-no_std-from-the-config-file.patch b/pkgs/development/compilers/rust/0001-Allow-getting-no_std-from-the-config-file.patch
new file mode 100644
index 00000000000..0b9359221a7
--- /dev/null
+++ b/pkgs/development/compilers/rust/0001-Allow-getting-no_std-from-the-config-file.patch
@@ -0,0 +1,52 @@
+From 036c87c82793f1da9f98445e8e27462cc19bbe0a Mon Sep 17 00:00:00 2001
+From: John Ericson <John.Ericson@Obsidian.Systems>
+Date: Sat, 22 Feb 2020 14:38:38 -0500
+Subject: [PATCH] Allow getting `no_std` from the config file
+
+Currently, it is only set correctly in the sanity checking implicit
+default fallback code. Having a config file at all will for force
+`no_std = false`.
+---
+ src/bootstrap/config.rs | 3 +++
+ src/bootstrap/sanity.rs | 4 +---
+ 2 files changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/src/bootstrap/config.rs b/src/bootstrap/config.rs
+index 110c8b844d5..83a6934d477 100644
+--- a/src/bootstrap/config.rs
++++ b/src/bootstrap/config.rs
+@@ -350,6 +350,7 @@ struct TomlTarget {
+     musl_root: Option<String>,
+     wasi_root: Option<String>,
+     qemu_rootfs: Option<String>,
++    no_std: Option<bool>,
+ }
+ 
+ impl Config {
+@@ -610,6 +611,8 @@ impl Config {
+                 target.musl_root = cfg.musl_root.clone().map(PathBuf::from);
+                 target.wasi_root = cfg.wasi_root.clone().map(PathBuf::from);
+                 target.qemu_rootfs = cfg.qemu_rootfs.clone().map(PathBuf::from);
++                target.no_std
++                    = cfg.no_std.unwrap_or(triple.contains("-none-") || triple.contains("nvptx"));
+ 
+                 config.target_config.insert(INTERNER.intern_string(triple.clone()), target);
+             }
+diff --git a/src/bootstrap/sanity.rs b/src/bootstrap/sanity.rs
+index 8ff7056e628..76e721ed8e3 100644
+--- a/src/bootstrap/sanity.rs
++++ b/src/bootstrap/sanity.rs
+@@ -194,9 +194,7 @@ pub fn check(build: &mut Build) {
+ 
+         if target.contains("-none-") || target.contains("nvptx") {
+             if build.no_std(*target).is_none() {
+-                let target = build.config.target_config.entry(target.clone()).or_default();
+-
+-                target.no_std = true;
++                build.config.target_config.entry(target.clone()).or_default();
+             }
+ 
+             if build.no_std(*target) == Some(false) {
+-- 
+2.24.1
+
diff --git a/pkgs/development/compilers/rust/1_41_0.nix b/pkgs/development/compilers/rust/1_41_0.nix
deleted file mode 100644
index b73d9b8ef26..00000000000
--- a/pkgs/development/compilers/rust/1_41_0.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-# New rust versions should first go to staging.
-# Things to check after updating:
-# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin:
-#    i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github
-#    This testing can be also done by other volunteers as part of the pull
-#    request review, in case platforms cannot be covered.
-# 2. The LLVM version used for building should match with rust upstream.
-# 3. Firefox and Thunderbird should still build on x86_64-linux.
-
-{ stdenv, lib
-, buildPackages
-, newScope, callPackage
-, CoreFoundation, Security
-, llvmPackages_5
-, pkgsBuildTarget, pkgsBuildBuild
-, fetchpatch
-} @ args:
-
-import ./default.nix {
-  rustcVersion = "1.41.0";
-  rustcSha256 = "0jypz2mrzac41sj0zh07yd1z36g2s2rvgsb8g624sk4l14n84ijm";
-
-  # Note: the version MUST be one version prior to the version we're
-  # building
-  bootstrapVersion = "1.40.0";
-
-  # fetch hashes by running `print-hashes.sh 1.40.0`
-  bootstrapHashes = {
-    i686-unknown-linux-gnu = "d050d3a1c7c45ba9c50817d45bf6d7dd06e1a4d934f633c8096b7db6ae27adc1";
-    x86_64-unknown-linux-gnu = "fc91f8b4bd18314e83a617f2389189fc7959146b7177b773370d62592d4b07d0";
-    arm-unknown-linux-gnueabihf = "4be9949c4d3c572b69b1df61c3506a3a3ac044851f025d38599612e7caa933c5";
-    armv7-unknown-linux-gnueabihf = "ebfe3978e12ffe34276272ee6d0703786249a9be80ca50617709cbfdab557306";
-    aarch64-unknown-linux-gnu = "639271f59766d291ebdade6050e7d05d61cb5c822a3ef9a1e2ab185fed68d729";
-    i686-apple-darwin = "ea189b1fb0bfda367cde6d43c18863ab4c64ffca04265e5746bf412a186fe1a2";
-    x86_64-apple-darwin = "749ca5e0b94550369cc998416b8854c13157f5d11d35e9b3276064b6766bcb83";
-  };
-
-  selectRustPackage = pkgs: pkgs.rust_1_41_0;
-
-  rustcPatches = [
-    (fetchpatch {
-      url = "https://github.com/QuiltOS/rust/commit/f1803452b9e95bfdbc3b8763138b9f92c7d12b46.diff";
-      sha256 = "1mzxaj46bq7ll617wg0mqnbnwr1da3hd4pbap8bjwhs3kfqnr7kk";
-    })
-  ];
-}
-
-(builtins.removeAttrs args [ "fetchpatch" ])
diff --git a/pkgs/development/compilers/rust/1_42.nix b/pkgs/development/compilers/rust/1_42.nix
new file mode 100644
index 00000000000..8717aaf76a2
--- /dev/null
+++ b/pkgs/development/compilers/rust/1_42.nix
@@ -0,0 +1,44 @@
+# New rust versions should first go to staging.
+# Things to check after updating:
+# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin:
+#    i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github
+#    This testing can be also done by other volunteers as part of the pull
+#    request review, in case platforms cannot be covered.
+# 2. The LLVM version used for building should match with rust upstream.
+# 3. Firefox and Thunderbird should still build on x86_64-linux.
+
+{ stdenv, lib
+, buildPackages
+, newScope, callPackage
+, CoreFoundation, Security
+, llvmPackages_5
+, pkgsBuildTarget, pkgsBuildBuild
+} @ args:
+
+import ./default.nix {
+  rustcVersion = "1.42.0";
+  rustcSha256 = "0x9lxs82may6c0iln0b908cxyn1cv7h03n5cmbx3j1bas4qzks6j";
+
+  # Note: the version MUST be one version prior to the version we're
+  # building
+  bootstrapVersion = "1.41.0";
+
+  # fetch hashes by running `print-hashes.sh 1.42.0`
+  bootstrapHashes = {
+    i686-unknown-linux-gnu = "a93a34f9cf3d35de2496352cb615b42b792eb09db3149b3a278efd2c58fa7897";
+    x86_64-unknown-linux-gnu = "343ba8ef7397eab7b3bb2382e5e4cb08835a87bff5c8074382c0b6930a41948b";
+    arm-unknown-linux-gnueabihf = "d0b33fcc97eeb96d716b30573c7e66affdf9077ecdecb30df2498b49f8284047";
+    armv7-unknown-linux-gnueabihf = "3c8e787fb4f4f304a065e78c38010f0b5722d809f9dafb0e904084bf0f54f7be";
+    aarch64-unknown-linux-gnu = "79ddfb5e2563d0ee09a567fbbe121a2aed3c3bc61255b2787f2dd42183a10f27";
+    i686-apple-darwin = "628134b3fbaf5c0e7a25bd9a2b8d25f6e68bb256c8b04a3332ec979f5a1cd339";
+    x86_64-apple-darwin = "b6504003ab70b11f278e0243a43ba9d6bf75e8ad6819b4058a2b6e3991cc8d7a";
+  };
+
+  selectRustPackage = pkgs: pkgs.rust_1_42;
+
+  rustcPatches = [
+    ./0001-Allow-getting-no_std-from-the-config-file.patch
+  ];
+}
+
+(builtins.removeAttrs args [ "fetchpatch" ])
diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix
index 6498c34ce8b..40de5f61e03 100644
--- a/pkgs/development/compilers/rust/rustc.nix
+++ b/pkgs/development/compilers/rust/rustc.nix
@@ -1,6 +1,6 @@
 { stdenv, removeReferencesTo, pkgsBuildBuild, pkgsBuildHost, pkgsBuildTarget
 , fetchurl, file, python3
-, llvm_9, darwin, git, cmake, rust, rustPlatform
+, llvm_9, darwin, cmake, rust, rustPlatform
 , pkgconfig, openssl
 , which, libffi
 , withBundledLLVM ? false
@@ -125,7 +125,7 @@ in stdenv.mkDerivation rec {
   dontUseCmakeConfigure = true;
 
   nativeBuildInputs = [
-    file python3 rustPlatform.rust.rustc git cmake
+    file python3 rustPlatform.rust.rustc cmake
     which libffi removeReferencesTo pkgconfig
   ];
 
diff --git a/pkgs/development/compilers/vala/default.nix b/pkgs/development/compilers/vala/default.nix
index d84503caa60..792b8d9ea62 100644
--- a/pkgs/development/compilers/vala/default.nix
+++ b/pkgs/development/compilers/vala/default.nix
@@ -36,6 +36,8 @@ let
 
         "0.46" = ./disable-graphviz-0.46.1.patch;
 
+        "0.48" = ./disable-graphviz-0.46.1.patch;
+
       }.${lib.versions.majorMinor version} or (throw "no graphviz patch for this version of vala");
 
     disableGraphviz = lib.versionAtLeast version "0.38" && !withGraphviz;
@@ -120,5 +122,10 @@ in rec {
     sha256 = "07fv895sp9wq74b20qig7hic0r4ynrr5pfaqba02r44xb794fy0s";
   };
 
-  vala = vala_0_46;
+  vala_0_48 = generic {
+    version = "0.48.1";
+    sha256 = "61c5TAqQj/Y2I9F54J+h6dazjTHH61l9MCFInyl+cdQ=";
+  };
+
+  vala = vala_0_48;
 }
diff --git a/pkgs/development/compilers/yosys/default.nix b/pkgs/development/compilers/yosys/default.nix
index 5e26e37b443..3a54d42498c 100644
--- a/pkgs/development/compilers/yosys/default.nix
+++ b/pkgs/development/compilers/yosys/default.nix
@@ -15,13 +15,13 @@
 
 stdenv.mkDerivation rec {
   pname   = "yosys";
-  version = "2020.03.16";
+  version = "2020.03.24";
 
   src = fetchFromGitHub {
     owner  = "YosysHQ";
     repo   = "yosys";
-    rev    = "ed4fa19ba2812c286562baf26bbbcb49afad83bc";
-    sha256 = "1sza5ng0q8dy6p4hks9b2db129xjcid9n6l8aglf2cj5ks82k5nv";
+    rev    = "c9555c9adeba886a308c60615ac794ec20d9276e";
+    sha256 = "1fh118fv06jyfmkx6zy0w2k0rjj22m0ffyll3k5giaw8zzaf0j3a";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/zasm/default.nix b/pkgs/development/compilers/zasm/default.nix
new file mode 100644
index 00000000000..174092496ba
--- /dev/null
+++ b/pkgs/development/compilers/zasm/default.nix
@@ -0,0 +1,44 @@
+{ fetchFromGitHub, zlib, stdenv }:
+let
+  libs-src = fetchFromGitHub {
+    owner = "megatokio";
+    repo = "Libraries";
+    rev = "97ea480051b106e83a086dd42583dfd3e9d458a1";
+    sha256 = "1kqmjb9660mnb0r18s1grrrisx6b73ijsinlyr97vz6992jd5dzh";
+  };
+in
+stdenv.mkDerivation {
+  pname = "zasm";
+  version = "4.2.6";
+  src = fetchFromGitHub {
+    owner = "megatokio";
+    repo = "zasm";
+    rev = "f1424add17a5514895a598d6b5e3982579961519";
+    sha256 = "1kqnqdqp2bfsazs6vfx2aiqanxxagn8plx8g6rc11vmr8yqnnpks";
+  };
+
+  buildInputs = [ zlib ];
+
+  configurePhase = ''
+    ln -sf ${libs-src} Libraries
+  '';
+
+  buildPhase = ''
+    cd Linux
+    make
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    mv zasm $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Z80 / 8080 assembler (for unix-style OS)";
+    homepage = "https://k1.spdns.de/Develop/Projects/zasm/Distributions/";
+    license = licenses.bsd2;
+    maintainers = [ maintainers.turbomack ];
+    platforms = platforms.linux;
+    badPlatforms = platforms.aarch64;
+  };
+}
diff --git a/pkgs/development/coq-modules/coqhammer/default.nix b/pkgs/development/coq-modules/coqhammer/default.nix
index 83a505017fb..7d9ec5e7312 100644
--- a/pkgs/development/coq-modules/coqhammer/default.nix
+++ b/pkgs/development/coq-modules/coqhammer/default.nix
@@ -3,17 +3,25 @@
 let
   params = {
     "8.8" = {
+      version = "1.1";
       sha256 = "0ms086wp4jmrzyglb8wymchzyflflk01nsfsk4r6qv8rrx81nx9h";
+      buildInputs = [ coq.ocamlPackages.camlp5 ];
     };
     "8.9" = {
-      sha256 = "0hmqwsry8ldg4g4hhwg4b84dgzibpdrg1wwsajhlyqfx3fb3n3b5";
+      version = "1.1.1";
+      sha256 = "1knjmz4hr8vlp103j8n4fyb2lfxysnm512gh3m2kp85n6as6fvb9";
+      buildInputs = [ coq.ocamlPackages.camlp5 ];
+    };
+    "8.10" = {
+      version = "1.1.1";
+      sha256 = "0b6r7bsygl1axbqybkhkr7zlwcd51ski5ql52994klrrxvjd58df";
     };
   };
   param = params.${coq.coq-version};
 in
 
 stdenv.mkDerivation rec {
-  version = "1.1";
+  inherit (param) version;
   name = "coq${coq.coq-version}-coqhammer-${version}";
 
   src = fetchFromGitHub {
@@ -31,8 +39,8 @@ stdenv.mkDerivation rec {
   '';
 
   buildInputs = [ coq ] ++ (with coq.ocamlPackages; [
-    ocaml findlib camlp5
-  ]);
+    ocaml findlib
+  ]) ++ (param.buildInputs or []);
 
   preInstall = ''
     mkdir -p $out/bin
diff --git a/pkgs/development/coq-modules/paramcoq/default.nix b/pkgs/development/coq-modules/paramcoq/default.nix
index a57d1bc9088..67e420b4e89 100644
--- a/pkgs/development/coq-modules/paramcoq/default.nix
+++ b/pkgs/development/coq-modules/paramcoq/default.nix
@@ -3,33 +3,40 @@
 let params =
   {
     "8.7" = {
-      version = "1.1.1+coq8.7";
-      sha256 = "1i7b5pkx46zf9il2xikbp3rhpnh3wdfbhw5yxcf9yk28ky9s0a0l";
+      sha256 = "09n0ky7ldb24by7yf5j3hv410h85x50ksilf7qacl7xglj4gy5hj";
+      buildInputs = [ coq.ocamlPackages.camlp5 ];
     };
     "8.8" = {
-      version = "1.1.1";
-      sha256 = "0b07zvgm9cx6j2d9631zmqjs6sf30kiqg6k15xk3km7n80d53wfh";
+      sha256 = "0rc4lshqvnfdsph98gnscvpmlirs9wx91qcvffggg73xw0p1g9s0";
+      buildInputs = [ coq.ocamlPackages.camlp5 ];
     };
     "8.9" = {
-      version = "1.1.1+coq8.9";
-      sha256 = "002xabhjlph394vydw3dx8ipv5ry2nq3py4440bk9a18ljx0w6ll";
+      sha256 = "1jjzgpff09xjn9kgp7w69r096jkj0x2ksng3pawrmhmn7clwivbk";
+      buildInputs = [ coq.ocamlPackages.camlp5 ];
+    };
+    "8.10" = {
+      sha256 = "1lq1mw15w4yky79qg3rm0mpzqi2ir51b6ak04ismrdr7ixky49y8";
+    };
+    "8.11" = {
+      sha256 = "09c6813988nvq4fpa45s33k70plnhxsblhm7cxxkg0i37mhvigsa";
     };
   };
   param = params.${coq.coq-version};
 in
 
 stdenv.mkDerivation rec {
-  inherit (param) version;
+  version = "1.1.2";
   name = "coq${coq.coq-version}-paramcoq-${version}";
   src = fetchFromGitHub {
     owner = "coq-community";
     repo = "paramcoq";
-    rev = "v${version}";
+    rev = "v${version}+coq${coq.coq-version}";
     inherit (param) sha256;
   };
 
   buildInputs = [ coq ]
-  ++ (with coq.ocamlPackages; [ ocaml findlib camlp5 ])
+  ++ (with coq.ocamlPackages; [ ocaml findlib ])
+  ++ (param.buildInputs or [])
   ;
 
   installFlags = [ "COQLIB=$(out)/lib/coq/${coq.coq-version}/" ];
diff --git a/pkgs/development/go-packages/generic/default.nix b/pkgs/development/go-packages/generic/default.nix
index 2de234c9a1e..388280a905f 100644
--- a/pkgs/development/go-packages/generic/default.nix
+++ b/pkgs/development/go-packages/generic/default.nix
@@ -214,6 +214,8 @@ let
       find $bin/bin -type f -exec ${removeExpr removeReferences} '{}' + || true
     '';
 
+    strictDeps = true;
+
     shellHook = ''
       d=$(mktemp -d "--suffix=-$name")
     '' + toString (map (dep: ''
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index afa3c533894..9ecf7e3bd1f 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -37,9 +37,6 @@ self: super: {
   # compiled on Linux. We provide the name to avoid evaluation errors.
   unbuildable = throw "package depends on meta package 'unbuildable'";
 
-  # The test suite depends on old versions of tasty and QuickCheck.
-  hackage-security = dontCheck super.hackage-security;
-
   # enable using a local hoogle with extra packagages in the database
   # nix-shell -p "haskellPackages.hoogleLocal { packages = with haskellPackages; [ mtl lens ]; }"
   # $ hoogle server
@@ -86,7 +83,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 = "0y2qcjahi705c6nnypqpa5w3bzyzk4kqvbwfnpiaxzk5vna589gg";
+      sha256 = "1jjw6ar8ddcncwzksyx2xky50sm2jg1zjr7iiqk0vn8qq0fn2gwy";
     };
   }).override {
     dbus = if pkgs.stdenv.isLinux then self.dbus else null;
@@ -326,6 +323,7 @@ self: super: {
   hs2048 = dontCheck super.hs2048;
   hsbencher = dontCheck super.hsbencher;
   hsexif = dontCheck super.hsexif;
+  hspec-core = if pkgs.stdenv.isi686 then dontCheck super.hspec-core else super.hspec-core; # tests rely on `Int` being 64-bit; https://github.com/hspec/hspec/issues/431
   hspec-server = dontCheck super.hspec-server;
   HTF = dontCheck super.HTF;
   htsn = dontCheck super.htsn;
@@ -359,7 +357,6 @@ self: super: {
   optional = dontCheck super.optional;
   orgmode-parse = dontCheck super.orgmode-parse;
   os-release = dontCheck super.os-release;
-  pandoc-crossref = dontCheck super.pandoc-crossref;  # (most likely change when no longer 0.3.2.1) https://github.com/lierdakil/pandoc-crossref/issues/199
   persistent-redis = dontCheck super.persistent-redis;
   pipes-extra = dontCheck super.pipes-extra;
   pipes-websockets = dontCheck super.pipes-websockets;
@@ -1192,10 +1189,10 @@ self: super: {
   });
 
   # Remove unecessary constraint:
-  # https://github.com/agrafix/superbuffer/pull/2
-  superbuffer = overrideCabal super.superbuffer (drv: {
+  # https://github.com/haskell-infra/hackage-trustees/issues/258
+  data-accessor-template = overrideCabal super.data-accessor-template (drv: {
     postPatch = ''
-      sed -i 's#QuickCheck < 2.10#QuickCheck < 2.13#' superbuffer.cabal
+      sed -i 's#template-haskell >=2.11 && <2.15#template-haskell#' data-accessor-template.cabal
     '';
   });
 
@@ -1344,7 +1341,7 @@ self: super: {
   });
 
   # cabal-fmt requires Cabal3
-  cabal-fmt = super.cabal-fmt.override { Cabal = self.Cabal_3_0_0_0; };
+  cabal-fmt = super.cabal-fmt.override { Cabal = self.Cabal_3_2_0_0; };
 
   # Several gtk2hs-provided packages at v0.13.8.0 fail to build on Darwin
   # until we pick up https://github.com/gtk2hs/gtk2hs/pull/293 so apply that
@@ -1463,6 +1460,11 @@ self: super: {
   # haskell-ci-0.8 needs cabal-install-parsers ==0.1, but we have 0.2.
   haskell-ci = doJailbreak super.haskell-ci;
 
+  # Needs the latest version of vty.
+  matterhorn = super.matterhorn.overrideScope (self: super: {
+    vty = self.vty_5_28_2;
+  });
+
   persistent-mysql = dontCheck super.persistent-mysql;
 
   # Fix EdisonAPI and EdisonCore for GHC 8.8:
@@ -1488,4 +1490,16 @@ self: super: {
   # Needs a version that's newer than LTS-15.x provides.
   weeder = super.weeder.override { generic-lens = self.generic-lens_2_0_0_0;  };
 
+  polysemy-plugin = super.polysemy-plugin.override {
+    # polysemy-plugin 0.2.5.0 has constraint ghc-tcplugins-extra (==0.3.*)
+    # This upstream issue is relevant:
+    # https://github.com/polysemy-research/polysemy/issues/322
+    ghc-tcplugins-extra = self.ghc-tcplugins-extra_0_3_2;
+    # version of Polysemy the plugin goes with
+    polysemy = self.polysemy_1_3_0_0;
+  };
+
+  # Fixed at head, but hasn't cut a release in awhile.
+  darcs = doJailbreak super.darcs;
+
 } // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
index 045c5dc1e5b..ce52ccb1169 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.2.x.nix
@@ -44,7 +44,7 @@ self: super: {
   text = self.text_1_2_4_0;
 
   # Needs Cabal 3.0.x.
-  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_0_0_0; };
+  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_2_0_0; };
 
   # https://github.com/bmillwood/applicative-quoters/issues/6
   applicative-quoters = appendPatch super.applicative-quoters (pkgs.fetchpatch {
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
index c4c5ed9422f..785bab743a4 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
@@ -40,9 +40,9 @@ self: super: {
   unix = null;
   xhtml = null;
 
-  # Needs Cabal 3.0.x.
-  cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_0_0_0; });
-  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_0_0_0; };
+  # Needs Cabal 3.2.x.
+  cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_2_0_0; });
+  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_2_0_0; };
 
   # Restricts aeson to <1.4
   # https://github.com/purescript/purescript/pull/3537
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
index 915f7b3e635..ff69c809288 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.6.x.nix
@@ -42,8 +42,8 @@ self: super: {
   xhtml = null;
 
   # Needs Cabal 3.0.x.
-  cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_0_0_0; });
-  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_0_0_0; };
+  cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_2_0_0; });
+  jailbreak-cabal = super.jailbreak-cabal.override { Cabal = self.Cabal_3_2_0_0; };
 
   # https://github.com/tibbe/unordered-containers/issues/214
   unordered-containers = dontCheck super.unordered-containers;
@@ -76,13 +76,10 @@ self: super: {
 
   # cabal2nix needs the latest version of Cabal, and the one
   # hackage-db uses must match, so take the latest
-  cabal2nix = super.cabal2nix.overrideScope (self: super: {
-    Cabal = self.Cabal_3_0_0_0;
-    hackage-db = self.hackage-db_2_1_0;
-  });
+  cabal2nix = super.cabal2nix.overrideScope (self: super: { Cabal = self.Cabal_3_2_0_0; });
 
   # cabal2spec needs a recent version of Cabal
-  cabal2spec = super.cabal2spec.overrideScope (self: super: { Cabal = self.Cabal_3_0_0_0; });
+  cabal2spec = super.cabal2spec.overrideScope (self: super: { Cabal = self.Cabal_3_2_0_0; });
 
   # Builds only with ghc-8.8.x and beyond.
   policeman = markBroken super.policeman;
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
index 1b5f64bea6b..8b38f8cef74 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
@@ -41,10 +41,13 @@ self: super: {
   unix = null;
   xhtml = null;
 
+  # These builds need Cabal 3.2.x.
+  cabal2spec = super.cabal2spec.override { Cabal = self.Cabal_3_2_0_0; };
+  cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_3_2_0_0; });
+
   # Ignore overly restrictive upper version bounds.
   aeson-diff = doJailbreak super.aeson-diff;
   async = doJailbreak super.async;
-  cabal-install = doJailbreak super.cabal-install;
   ChasingBottoms = doJailbreak super.ChasingBottoms;
   chell = doJailbreak super.chell;
   cryptohash-sha256 = doJailbreak super.cryptohash-sha256;
@@ -72,12 +75,6 @@ self: super: {
   time-compat = doJailbreak super.time-compat;
   http-media = doJailbreak super.http-media;
   servant-server = doJailbreak super.servant-server;
-
-  # These packages don't work and need patching and/or an update.
-  hackage-security = appendPatch (doJailbreak super.hackage-security) (pkgs.fetchpatch {
-    url = "https://raw.githubusercontent.com/hvr/head.hackage/master/patches/hackage-security-0.5.3.0.patch";
-    sha256 = "0l8x0pbsn18fj5ak5q0g5rva4xw1s9yc4d86a1pfyaz467b9i5a4";
-  });
   foundation = dontCheck super.foundation;
   vault = dontHaddock super.vault;
 
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index f0717b3514f..2f6a0b8978d 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -69,14 +69,10 @@ core-packages:
 default-package-overrides:
   # This was only intended for ghc-7.0.4, and has very old deps, one hidden behind a flag
   - MissingH ==1.4.2.0
-  # for cabal-install-3.0.0.0
-  - hackage-security >=0.5.2.2 && <0.6
-  # pandoc-2.9 does not accept the 0.3 version yet
-  - doclayout < 0.3
   # gi-gdkx11-4.x requires gtk-4.x, which is still under development and
   # not yet available in Nixpkgs
   - gi-gdkx11 < 4
-  # LTS Haskell 15.4
+  # LTS Haskell 15.6
   - abstract-deque ==0.3
   - abstract-par ==0.3.3
   - AC-Angle ==1.0
@@ -88,7 +84,7 @@ default-package-overrides:
   - adjunctions ==4.4
   - adler32 ==0.1.2.0
   - advent-of-code-api ==0.2.7.0
-  - aeson ==1.4.6.0
+  - aeson ==1.4.7.1
   - aeson-attoparsec ==0.0.0
   - aeson-better-errors ==0.9.1.0
   - aeson-casing ==0.2.0.0
@@ -238,7 +234,7 @@ default-package-overrides:
   - asif ==6.0.4
   - asn1-encoding ==0.9.6
   - asn1-parse ==0.9.5
-  - asn1-types ==0.3.3
+  - asn1-types ==0.3.4
   - assert-failure ==0.1.2.2
   - assoc ==1.0.1
   - astro ==0.4.2.1
@@ -250,7 +246,7 @@ default-package-overrides:
   - atom-basic ==0.2.5
   - atomic-primops ==0.8.3
   - atomic-write ==0.2.0.7
-  - attoparsec ==0.13.2.3
+  - attoparsec ==0.13.2.4
   - attoparsec-base64 ==0.0.0
   - attoparsec-binary ==0.2
   - attoparsec-expr ==0.1.1.2
@@ -267,7 +263,7 @@ default-package-overrides:
   - auto-update ==0.1.6
   - avers ==0.0.17.1
   - avro ==0.4.7.0
-  - aws-cloudfront-signed-cookies ==0.2.0.1
+  - aws-cloudfront-signed-cookies ==0.2.0.4
   - base16-bytestring ==0.1.1.6
   - base32string ==0.9.1
   - base58string ==0.10.0
@@ -314,7 +310,7 @@ default-package-overrides:
   - bits ==0.5.2
   - bitset-word8 ==0.1.1.1
   - bits-extra ==0.0.1.5
-  - bitvec ==1.0.2.0
+  - bitvec ==1.0.3.0
   - blake2 ==0.3.0
   - blanks ==0.3.0
   - blas-carray ==0.1.0.1
@@ -323,7 +319,7 @@ default-package-overrides:
   - blaze-bootstrap ==0.1.0.1
   - blaze-builder ==0.4.1.0
   - blaze-html ==0.9.1.2
-  - blaze-markup ==0.8.2.3
+  - blaze-markup ==0.8.2.4
   - blaze-svg ==0.3.6.1
   - blaze-textual ==0.2.1.0
   - bmp ==1.2.6.3
@@ -342,10 +338,10 @@ default-package-overrides:
   - boundingboxes ==0.2.3
   - bower-json ==1.0.0.1
   - boxes ==0.1.5
-  - brick ==0.52
+  - brick ==0.52.1
   - brittany ==0.12.1.1
   - bsb-http-chunked ==0.0.0.4
-  - bson ==0.4.0.0
+  - bson ==0.4.0.1
   - btrfs ==0.2.0.0
   - buffer-builder ==0.2.4.7
   - buffer-pipe ==0.0
@@ -406,10 +402,10 @@ default-package-overrides:
   - Chart ==1.9.3
   - Chart-diagrams ==1.9.3
   - chaselev-deque ==0.5.0.5
-  - ChasingBottoms ==1.3.1.7
-  - checkers ==0.5.4
+  - ChasingBottoms ==1.3.1.8
+  - checkers ==0.5.5
   - checksum ==0.0
-  - chimera ==0.3.0.0
+  - chimera ==0.3.1.0
   - choice ==0.2.2
   - chronologique ==0.3.1.1
   - chronos ==1.1
@@ -448,6 +444,7 @@ default-package-overrides:
   - colorful-monoids ==0.2.1.2
   - colorize-haskell ==1.0.1
   - colour ==2.3.5
+  - colourista ==0.0.0.0
   - combinatorial ==0.1.0.1
   - comfort-array ==0.4
   - comfort-graph ==0.0.3.1
@@ -466,11 +463,11 @@ default-package-overrides:
   - concurrent-output ==1.10.11
   - concurrent-split ==0.0.1.1
   - cond ==0.4.1.1
-  - conduit ==1.3.1.2
+  - conduit ==1.3.2
   - conduit-algorithms ==0.0.11.0
   - conduit-combinators ==1.3.0
   - conduit-concurrent-map ==0.1.1
-  - conduit-extra ==1.3.4
+  - conduit-extra ==1.3.5
   - conduit-parse ==0.2.1.0
   - conduit-zstd ==0.0.1.1
   - conferer ==0.2.0.0
@@ -577,7 +574,7 @@ default-package-overrides:
   - data-tree-print ==0.1.0.2
   - dataurl ==0.1.0.0
   - DAV ==1.3.4
-  - dbus ==1.2.12
+  - dbus ==1.2.13
   - debian-build ==0.10.2.0
   - debug-trace-var ==0.2.0
   - dec ==0.0.3
@@ -617,7 +614,7 @@ default-package-overrides:
   - distributed-closure ==0.4.2.0
   - distribution-opensuse ==1.1.1
   - distributive ==0.6.1
-  - dl-fedora ==0.7.3
+  - dl-fedora ==0.7.4
   - dlist ==0.8.0.7
   - dlist-instances ==0.1.1.1
   - dlist-nonempty ==0.1.1
@@ -625,7 +622,7 @@ default-package-overrides:
   - dockerfile ==0.2.0
   - doclayout ==0.2.0.1
   - doctemplates ==0.8
-  - doctest ==0.16.2
+  - doctest ==0.16.3
   - doctest-discover ==0.2.0.0
   - doctest-driver-gen ==0.3.0.2
   - doldol ==0.4.1.2
@@ -680,12 +677,12 @@ default-package-overrides:
   - epub-metadata ==4.5
   - eq ==4.2
   - equal-files ==0.0.5.3
-  - equational-reasoning ==0.6.0.1
+  - equational-reasoning ==0.6.0.2
   - erf ==2.0.0.0
   - errors ==2.3.0
   - errors-ext ==0.4.2
   - ersatz ==0.4.8
-  - esqueleto ==3.3.1.1
+  - esqueleto ==3.3.3.0
   - etc ==0.4.1.0
   - eventful-core ==0.2.0
   - eventful-test-helpers ==0.2.0
@@ -703,8 +700,8 @@ default-package-overrides:
   - expiring-cache-map ==0.0.6.1
   - explicit-exception ==0.1.10
   - exp-pairs ==0.2.0.0
-  - express ==0.1.2
-  - extended-reals ==0.2.3.0
+  - express ==0.1.3
+  - extended-reals ==0.2.4.0
   - extensible-effects ==5.0.0.1
   - extensible-exceptions ==0.1.1.4
   - extra ==1.6.21
@@ -721,7 +718,7 @@ default-package-overrides:
   - feature-flags ==0.1.0.1
   - fedora-dists ==1.1.2
   - fedora-haskell-tools ==0.9
-  - feed ==1.3.0.0
+  - feed ==1.3.0.1
   - FenwickTree ==0.1.2.1
   - fft ==0.1.8.6
   - fgl ==5.7.0.2
@@ -739,9 +736,9 @@ default-package-overrides:
   - finite-typelits ==0.1.4.2
   - first-class-families ==0.7.0.0
   - first-class-patterns ==0.3.2.5
-  - fitspec ==0.4.7
+  - fitspec ==0.4.8
   - fixed ==0.3
-  - fixed-length ==0.2.1
+  - fixed-length ==0.2.2
   - fixed-vector ==1.2.0.0
   - fixed-vector-hetero ==0.5.0.0
   - flac ==0.2.0
@@ -803,10 +800,10 @@ default-package-overrides:
   - generic-lens ==1.2.0.1
   - generic-monoid ==0.1.0.0
   - GenericPretty ==1.2.2
-  - generic-random ==1.3.0.0
-  - generics-sop ==0.5.0.0
-  - generics-sop-lens ==0.2
-  - genvalidity ==0.10.0.1
+  - generic-random ==1.3.0.1
+  - generics-sop ==0.5.1.0
+  - generics-sop-lens ==0.2.0.1
+  - genvalidity ==0.10.0.2
   - genvalidity-aeson ==0.3.0.0
   - genvalidity-bytestring ==0.5.0.1
   - genvalidity-containers ==0.8.0.2
@@ -834,12 +831,12 @@ default-package-overrides:
   - ghc-compact ==0.1.0.0
   - ghc-core ==0.5.6
   - ghc-exactprint ==0.6.2
-  - ghcid ==0.8.3
+  - ghcid ==0.8.5
   - ghci-hexcalc ==0.1.1.0
   - ghcjs-codemirror ==0.0.0.2
   - ghc-lib ==8.8.3.20200224
   - ghc-lib-parser ==8.8.3.20200224
-  - ghc-lib-parser-ex ==8.8.5.6
+  - ghc-lib-parser-ex ==8.8.5.8
   - ghc-paths ==0.1.0.12
   - ghc-prof ==1.4.1.6
   - ghc-source-gen ==0.3.0.0
@@ -892,7 +889,7 @@ default-package-overrides:
   - graph-wrapper ==0.2.6.0
   - gravatar ==0.8.0
   - greskell ==1.0.0.1
-  - greskell-core ==0.1.3.1
+  - greskell-core ==0.1.3.2
   - greskell-websocket ==0.1.2.1
   - groom ==0.1.2.1
   - group-by-date ==0.1.0.3
@@ -918,7 +915,7 @@ default-package-overrides:
   - haskell-lexer ==1.1
   - haskell-lsp ==0.20.0.1
   - haskell-lsp-types ==0.20.0.0
-  - haskell-names ==0.9.7
+  - haskell-names ==0.9.8
   - haskell-src ==1.0.3.1
   - haskell-src-exts ==1.22.0
   - haskell-src-exts-util ==0.2.5
@@ -926,7 +923,7 @@ default-package-overrides:
   - haskey-btree ==0.3.0.1
   - haskoin-core ==0.10.1
   - haskoin-node ==0.9.16
-  - hasql ==1.4.1
+  - hasql ==1.4.2
   - hasql-optparse-applicative ==0.3.0.5
   - hasql-pool ==0.5.1
   - hasql-transaction ==1.0.0.1
@@ -934,7 +931,7 @@ default-package-overrides:
   - HaXml ==1.25.5
   - haxr ==3000.11.4
   - hdaemonize ==0.5.6
-  - headroom ==0.1.2.0
+  - headroom ==0.1.3.0
   - heap ==1.0.4
   - heaps ==0.3.6.1
   - heart-core ==0.1.1
@@ -943,7 +940,7 @@ default-package-overrides:
   - hedgehog-corpus ==0.2.0
   - hedgehog-fn ==1.0
   - hedgehog-quickcheck ==0.1.1
-  - hedis ==0.12.11
+  - hedis ==0.12.13
   - here ==1.2.13
   - heredoc ==0.2.0.0
   - heterocephalus ==1.0.5.3
@@ -985,7 +982,7 @@ default-package-overrides:
   - hreader-lens ==0.1.3.0
   - hruby ==0.3.8
   - hs-bibutils ==6.8.0.0
-  - hsc2hs ==0.68.6
+  - hsc2hs ==0.68.7
   - hscolour ==1.24.4
   - hsdns ==1.8
   - hsebaysdk ==0.4.0.0
@@ -1014,7 +1011,7 @@ default-package-overrides:
   - hspec-expectations-pretty-diff ==0.7.2.5
   - hspec-golden ==0.1.0.1
   - hspec-golden-aeson ==0.7.0.0
-  - hspec-leancheck ==0.0.3
+  - hspec-leancheck ==0.0.4
   - hspec-megaparsec ==2.1.0
   - hspec-meta ==2.6.0
   - hspec-need-env ==0.1.0.4
@@ -1150,7 +1147,7 @@ default-package-overrides:
   - io-streams-haproxy ==1.0.1.0
   - ip ==1.7.1
   - ip6addr ==1.0.1
-  - iproute ==1.7.8
+  - iproute ==1.7.9
   - IPv6Addr ==1.1.3
   - ipynb ==0.1
   - ipython-kernel ==0.10.1.0
@@ -1206,7 +1203,7 @@ default-package-overrides:
   - language-c-quote ==0.12.2.1
   - language-haskell-extract ==0.2.4
   - language-java ==0.2.9
-  - language-javascript ==0.7.0.0
+  - language-javascript ==0.7.1.0
   - language-protobuf ==1.0.1
   - language-puppet ==1.4.6.2
   - lapack-carray ==0.0.3
@@ -1220,7 +1217,7 @@ default-package-overrides:
   - lazy-csv ==0.5.1
   - lazyio ==0.1.0.4
   - lca ==0.3.1
-  - leancheck ==0.9.1
+  - leancheck ==0.9.3
   - leancheck-instances ==0.0.3
   - leapseconds-announced ==2017.1.0.1
   - learn-physics ==0.6.5
@@ -1272,7 +1269,7 @@ default-package-overrides:
   - loopbreaker ==0.1.1.1
   - lrucache ==1.2.0.1
   - lrucaching ==0.3.3
-  - lsp-test ==0.10.1.0
+  - lsp-test ==0.10.2.0
   - lucid ==2.9.12
   - lucid-extras ==0.2.2
   - lzma ==0.0.0.3
@@ -1469,7 +1466,7 @@ default-package-overrides:
   - once ==0.4
   - one-liner ==1.0
   - one-liner-instances ==0.1.2.1
-  - OneTuple ==0.2.2
+  - OneTuple ==0.2.2.1
   - Only ==0.1
   - oo-prototypes ==0.1.0.0
   - opaleye ==0.6.7004.1
@@ -1654,7 +1651,7 @@ default-package-overrides:
   - purescript-bridge ==0.13.0.0
   - pushbullet-types ==0.4.1.0
   - pusher-http-haskell ==1.5.1.11
-  - PyF ==0.9.0.0
+  - PyF ==0.9.0.1
   - qchas ==1.1.0.1
   - qm-interpolated-string ==0.3.0.0
   - qrcode-core ==0.9.2
@@ -1727,16 +1724,16 @@ default-package-overrides:
   - reinterpret-cast ==0.1.0
   - relapse ==1.0.0.0
   - relational-query ==0.12.2.2
-  - relational-schemas ==0.1.7.0
+  - relational-schemas ==0.1.8.0
   - relude ==0.6.0.0
   - renderable ==0.2.0.1
-  - replace-attoparsec ==1.2.0.0
+  - replace-attoparsec ==1.2.1.0
   - replace-megaparsec ==1.2.1.0
   - repline ==0.2.2.0
   - req ==3.1.0
   - req-conduit ==1.0.0
   - rerebase ==1.4.1
-  - resolv ==0.1.1.3
+  - resolv ==0.1.2.0
   - resource-pool ==0.2.3.2
   - resourcet ==1.2.3
   - result ==0.2.6.0
@@ -1770,7 +1767,7 @@ default-package-overrides:
   - safe-json ==1.1.0
   - safe-money ==0.9
   - SafeSemaphore ==0.10.1
-  - salak ==0.3.5.3
+  - salak ==0.3.6
   - salak-yaml ==0.3.5.3
   - saltine ==0.1.1.0
   - salve ==1.0.8
@@ -1848,7 +1845,7 @@ default-package-overrides:
   - serversession ==1.0.1
   - serversession-frontend-wai ==1.0
   - ses-html ==0.4.0.0
-  - set-cover ==0.1
+  - set-cover ==0.1.1
   - setenv ==0.1.1.3
   - setlocale ==1.0.0.9
   - SHA ==1.6.4.4
@@ -1868,7 +1865,7 @@ default-package-overrides:
   - simple-affine-space ==0.1
   - simple-cabal ==0.1.1
   - simple-cmd ==0.2.1
-  - simple-cmd-args ==0.1.5
+  - simple-cmd-args ==0.1.6
   - simple-log ==0.9.12
   - simple-reflect ==0.3.3
   - simple-sendfile ==0.2.30
@@ -1878,7 +1875,7 @@ default-package-overrides:
   - simplistic-generics ==0.1.0.0
   - since ==0.0.0
   - singleton-bool ==0.1.5
-  - singleton-nats ==0.4.3
+  - singleton-nats ==0.4.4
   - singletons ==2.6
   - singletons-presburger ==0.3.0.0
   - siphash ==1.0.3
@@ -1901,7 +1898,7 @@ default-package-overrides:
   - soap-tls ==0.1.1.4
   - socks ==0.6.1
   - some ==1.0.1
-  - sop-core ==0.5.0.0
+  - sop-core ==0.5.0.1
   - sort ==1.0.0.0
   - sorted-list ==0.2.1.0
   - sourcemap ==0.1.6
@@ -1939,7 +1936,7 @@ default-package-overrides:
   - stm-split ==0.0.2.1
   - stopwatch ==0.1.0.6
   - storable-complex ==0.2.3.0
-  - storable-record ==0.0.4.1
+  - storable-record ==0.0.5
   - storable-tuple ==0.0.3.3
   - storablevector ==0.2.13
   - stratosphere ==0.49.0
@@ -2093,7 +2090,7 @@ default-package-overrides:
   - timezone-series ==0.1.9
   - tinylog ==0.15.0
   - titlecase ==1.0.1
-  - tldr ==0.6.2
+  - tldr ==0.6.4
   - tls ==1.5.4
   - tls-debug ==0.4.8
   - tls-session-manager ==0.0.4
@@ -2102,7 +2099,7 @@ default-package-overrides:
   - tmp-postgres ==1.34.1.0
   - tomland ==1.2.1.0
   - tonalude ==0.1.1.0
-  - topograph ==1
+  - topograph ==1.0.0.1
   - torsor ==0.1
   - tostring ==0.2.1.1
   - tracing ==0.0.4.0
@@ -2125,7 +2122,7 @@ default-package-overrides:
   - tuples-homogenous-h98 ==0.1.1.0
   - tuple-sop ==0.3.1.0
   - tuple-th ==0.2.5
-  - turtle ==1.5.17
+  - turtle ==1.5.18
   - TypeCompose ==0.9.14
   - typed-process ==0.2.6.0
   - typed-uuid ==0.0.0.2
@@ -2179,7 +2176,7 @@ default-package-overrides:
   - unix-time ==0.4.7
   - unliftio ==0.2.12.1
   - unliftio-core ==0.1.2.0
-  - unliftio-pool ==0.2.1.0
+  - unliftio-pool ==0.2.1.1
   - unlit ==0.4.0.0
   - unordered-containers ==0.2.10.0
   - unordered-intmap ==0.1.1
@@ -2194,7 +2191,7 @@ default-package-overrides:
   - utf8-light ==0.4.2
   - utf8-string ==1.0.1.1
   - util ==0.1.17.1
-  - utility-ht ==0.0.14
+  - utility-ht ==0.0.15
   - uuid ==1.3.13
   - uuid-types ==1.0.3
   - validation ==1.1
@@ -2261,7 +2258,7 @@ default-package-overrides:
   - websockets ==0.12.7.0
   - websockets-snap ==0.10.3.1
   - weigh ==0.0.16
-  - wide-word ==0.1.1.0
+  - wide-word ==0.1.1.1
   - wikicfp-scraper ==0.1.0.11
   - wild-bind ==0.1.2.5
   - wild-bind-x11 ==0.2.0.9
@@ -2320,7 +2317,7 @@ default-package-overrides:
   - xxhash-ffi ==0.2.0.0
   - yaml ==0.11.3.0
   - yesod ==1.6.0.1
-  - yesod-auth ==1.6.9
+  - yesod-auth ==1.6.10
   - yesod-auth-hashdb ==1.7.1.2
   - yesod-bin ==1.6.0.4
   - yesod-core ==1.6.17.3
@@ -2373,6 +2370,7 @@ extra-packages:
   - dhall == 1.29.0                     # required for spago 0.14.0.
   - doctemplates == 0.8                 # required by pandoc-2.9.x
   - generic-deriving == 1.10.5.*        # new versions don't compile with GHC 7.10.x
+  - ghc-tcplugins-extra ==0.3.2         # required for polysemy-plugin 0.2.5.0
   - gloss < 1.9.3                       # new versions don't compile with GHC 7.8.x
   - haddock == 2.22.*                   # required on GHC 8.0.x
   - haddock-api == 2.22.*               # required on GHC 7.8.x
@@ -2456,7 +2454,10 @@ package-maintainers:
     # - pipes-mongodb
     - streaming-wai
   kiwi:
-    # - glirc
+    - glirc
+    - matterhorn
+    - mattermost-api
+    - mattermost-api-qc
     - Unique
   psibi:
     - path-pieces
@@ -2466,12 +2467,16 @@ package-maintainers:
     - shakespeare
   abbradar:
     - Agda
+  roberth:
+    - arion-compose
   cdepillabout:
     - pretty-simple
     - spago
     - termonad
   rkrzr:
     - icepeak
+  terlar:
+    - nix-diff
 
 unsupported-platforms:
   alsa-mixer:                                   [ x86_64-darwin ]
@@ -2677,7 +2682,6 @@ broken-packages:
   - adaptive-containers
   - adaptive-tuple
   - adb
-  - adblock2privoxy
   - adhoc-network
   - adict
   - adobe-swatch-exchange
@@ -2733,12 +2737,10 @@ broken-packages:
   - aivika-distributed
   - ajhc
   - AlanDeniseEricLauren
-  - alarmclock
   - alerta
   - alex-prelude
   - alfred
   - alga
-  - algebra-checkers
   - algebra-dag
   - algebra-sql
   - algebraic
@@ -2787,7 +2789,6 @@ broken-packages:
   - animate-frames
   - animate-preview
   - animate-sdl2
-  - anki-tools
   - annah
   - Annotations
   - anonymous-sums
@@ -2860,7 +2861,6 @@ broken-packages:
   - arguedit
   - ariadne
   - arion
-  - arion-compose
   - armada
   - armor
   - arpa
@@ -2879,9 +2879,7 @@ broken-packages:
   - artery
   - artifact
   - asap
-  - ascetic
   - ascii
-  - ascii-cows
   - ascii-flatten
   - ascii-string
   - ascii-table
@@ -2979,7 +2977,6 @@ broken-packages:
   - aws-kinesis-client
   - aws-kinesis-reshard
   - aws-lambda
-  - aws-lambda-haskell-runtime
   - aws-mfa-credentials
   - aws-performance-tests
   - aws-route53
@@ -3019,7 +3016,6 @@ broken-packages:
   - bamstats
   - Bang
   - bank-holiday-usa
-  - bank-holidays-england
   - banwords
   - barchart
   - barcodes-code128
@@ -3028,7 +3024,6 @@ broken-packages:
   - barrie
   - barrier
   - barrier-monad
-  - base-compat-migrate
   - base-feature-macros
   - base-generics
   - base-io-access
@@ -3109,7 +3104,6 @@ broken-packages:
   - binary-search
   - binary-streams
   - binary-strict
-  - binary-tagged
   - binary-typed
   - bind-marshal
   - BinderAnn
@@ -3361,7 +3355,6 @@ broken-packages:
   - cabal-dependency-licenses
   - cabal-dev
   - cabal-dir
-  - cabal-file-th
   - cabal-ghc-dynflags
   - cabal-ghci
   - cabal-graphdeps
@@ -3380,7 +3373,6 @@ broken-packages:
   - cabal-sort
   - cabal-src
   - cabal-test
-  - cabal-toolkit
   - cabal-upload
   - cabal2arch
   - cabal2doap
@@ -3426,7 +3418,6 @@ broken-packages:
   - cao
   - cap
   - Capabilities
-  - capability
   - capnp
   - capped-list
   - capri
@@ -3440,7 +3431,6 @@ broken-packages:
   - carte
   - cartel
   - Cartesian
-  - cas-store
   - casa-abbreviations-and-acronyms
   - casadi-bindings
   - casadi-bindings-control
@@ -3506,12 +3496,12 @@ broken-packages:
   - cgrep
   - chalkboard
   - chalkboard-viewer
-  - character-cases
   - charade
   - chart-cli
   - Chart-fltkhs
   - chart-histogram
   - Chart-simple
+  - chart-svg
   - chart-unit
   - chatter
   - chatty-text
@@ -3569,8 +3559,6 @@ broken-packages:
   - clarifai
   - CLASE
   - clash
-  - clash-ghc
-  - clash-lib
   - clash-multisignal
   - Clash-Royale-Hack-Cheats
   - clash-systemverilog
@@ -3595,7 +3583,6 @@ broken-packages:
   - clckwrks-theme-clckwrks
   - clckwrks-theme-geo-bootstrap
   - Clean
-  - clean-home
   - clean-unions
   - cless
   - clevercss
@@ -3657,7 +3644,6 @@ broken-packages:
   - codemonitor
   - codepad
   - codeworld-api
-  - codex
   - codo-notation
   - coin
   - coinbase-exchange
@@ -3740,7 +3726,6 @@ broken-packages:
   - concurrent-buffer
   - Concurrent-Cache
   - concurrent-machines
-  - concurrent-resource-map
   - concurrent-state
   - concurrent-utilities
   - Concurrential
@@ -3767,7 +3752,6 @@ broken-packages:
   - conferer-provider-dhall
   - conferer-provider-yaml
   - conferer-snap
-  - confetti
   - conffmt
   - confide
   - config-parser
@@ -3779,7 +3763,6 @@ broken-packages:
   - configuration
   - configuration-tools
   - configurator-ng
-  - configurator-pg
   - confsolve
   - congruence-relation
   - conjure
@@ -3869,7 +3852,6 @@ broken-packages:
   - cparsing
   - CPBrainfuck
   - cpio-conduit
-  - cpkg
   - CPL
   - cplusplus-th
   - cprng-aes-effect
@@ -3969,7 +3951,6 @@ broken-packages:
   - Dao
   - dao
   - dapi
-  - darcs
   - darcs-benchmark
   - darcs-beta
   - darcs-buildpackage
@@ -3988,14 +3969,12 @@ broken-packages:
   - dash-haskell
   - data-accessor-monads-fd
   - data-accessor-monads-tf
-  - data-accessor-template
   - data-aviary
   - data-base
   - data-basic
   - data-category
   - data-check
   - data-combinator-gen
-  - data-compat
   - data-concurrent-queue
   - data-construction
   - data-cycle
@@ -4018,8 +3997,6 @@ broken-packages:
   - data-lens-ixset
   - data-lens-template
   - data-map-multikey
-  - data-msgpack
-  - data-msgpack-types
   - data-nat
   - data-object
   - data-object-json
@@ -4133,7 +4110,6 @@ broken-packages:
   - dependent-monoidal-map
   - dependent-state
   - dependent-sum-aeson-orphans
-  - dependent-sum-template
   - depends
   - dephd
   - deptrack-core
@@ -4146,13 +4122,11 @@ broken-packages:
   - derive-gadt
   - derive-IG
   - derive-monoid
-  - derive-storable-plugin
   - derive-topdown
   - derive-trie
   - derp-lib
   - describe
   - descript-lang
-  - desert
   - deterministic-game-engine
   - detour-via-uom
   - deunicode
@@ -4187,7 +4161,6 @@ broken-packages:
   - diagrams-wx
   - dialogflow-fulfillment
   - dib
-  - dice
   - dice-entropy-conduit
   - dice2tex
   - dicom
@@ -4230,7 +4203,6 @@ broken-packages:
   - dirtree
   - discogs-haskell
   - discord-gateway
-  - discord-haskell
   - discord-hs
   - discord-rest
   - discord-types
@@ -4415,35 +4387,27 @@ broken-packages:
   - effect-monad
   - effect-stack
   - effin
-  - egison-pattern-src-th-mode
   - egison-quote
   - ehaskell
   - ehs
   - eibd-client-simple
   - eigen
   - Eight-Ball-Pool-Hack-Cheats
-  - either-list-functions
   - either-unwrap
   - EitherT
-  - ekg
   - ekg-bosun
   - ekg-carbon
-  - ekg-cloudwatch
   - ekg-elastic
   - ekg-elasticsearch
-  - ekg-influxdb
-  - ekg-json
   - ekg-log
   - ekg-push
   - ekg-rrd
-  - ekg-statsd
   - ekg-wai
   - elerea-examples
   - elevator
   - elision
   - elm-street
   - elm-websocket
-  - elsa
   - elynx-seq
   - elynx-tools
   - elynx-tree
@@ -4697,14 +4661,12 @@ broken-packages:
   - fibon
   - ficketed
   - fields
-  - fields-json
   - FieldTrip
   - fieldwise
   - fig
   - file-collection
   - file-command-qq
   - file-location
-  - file-modules
   - filediff
   - FileManip
   - FileManipCompat
@@ -4794,7 +4756,6 @@ broken-packages:
   - FModExRaw
   - fmt-for-rio
   - fn-extra
-  - Focus
   - foldl-incremental
   - foldl-statistics
   - foldl-transduce
@@ -5050,6 +5011,7 @@ broken-packages:
   - ghc-srcspan-plugin
   - ghc-syb
   - ghc-syb-utils
+  - ghc-tags-core
   - ghc-tags-plugin
   - ghc-time-alloc-prof
   - ghc-usage
@@ -5140,7 +5102,6 @@ broken-packages:
   - gli
   - glicko
   - glider-nlp
-  - glirc
   - GLMatrix
   - glob-posix
   - global
@@ -5160,10 +5121,6 @@ broken-packages:
   - gloss-sodium
   - glpk-hs
   - glue
-  - glue-common
-  - glue-core
-  - glue-ekg
-  - glue-example
   - GLUtil
   - gmap
   - gmndl
@@ -5220,8 +5177,6 @@ broken-packages:
   - gps2htmlReport
   - GPX
   - gpx-conduit
-  - grab
-  - grab-form
   - graceful
   - grafana
   - graflog
@@ -5295,11 +5250,9 @@ broken-packages:
   - gsl-random-fu
   - gstorable
   - gstreamer
-  - gt-tools
   - GTALib
   - gtfs
   - gtfs-realtime
-  - gtk-jsinput
   - gtk-serialized-event
   - gtk-toy
   - gtk2hs-hello
@@ -5399,7 +5352,6 @@ broken-packages:
   - hakyll-R
   - hakyll-series
   - hakyll-shortcode
-  - hakyll-shortcut-links
   - hakyll-typescript
   - hal
   - halberd
@@ -5487,8 +5439,6 @@ broken-packages:
   - harvest-api
   - has
   - has-th
-  - hasbolt
-  - hasbolt-extras
   - HasCacBDD
   - hascar
   - hascas
@@ -5510,7 +5460,6 @@ broken-packages:
   - haskarrow
   - haskbot-core
   - haskdeep
-  - haskdogs
   - haskeem
   - haskeline-class
   - haskelisp
@@ -5556,10 +5505,8 @@ broken-packages:
   - haskell-src-exts-prisms
   - haskell-src-exts-qq
   - haskell-src-exts-sc
-  - haskell-src-exts-simple
   - haskell-src-meta-mwotton
   - haskell-stack-trace-plugin
-  - haskell-to-elm
   - haskell-token-utils
   - haskell-tools-ast
   - haskell-tools-ast-fromghc
@@ -5678,7 +5625,6 @@ broken-packages:
   - haste-lib
   - haste-markup
   - haste-prim
-  - Hastodon
   - Hate
   - hatex-guide
   - HaTeX-meta
@@ -5755,7 +5701,6 @@ broken-packages:
   - HDRUtils
   - headed-megaparsec
   - headergen
-  - headroom
   - heapsort
   - heart-app
   - heart-core
@@ -5780,7 +5725,6 @@ broken-packages:
   - hedis-pile
   - hedis-simple
   - hedis-tags
-  - hedn
   - hedn-functor
   - hedra
   - hein
@@ -5992,7 +5936,6 @@ broken-packages:
   - hmumps
   - hnetcdf
   - hnix
-  - hnix-store-core
   - hnix-store-remote
   - HNM
   - hnormalise
@@ -6041,7 +5984,6 @@ broken-packages:
   - hoodle-types
   - hoogle-index
   - hooks-dir
-  - hookup
   - hoopl
   - hoovie
   - hopencc
@@ -6141,7 +6083,6 @@ broken-packages:
   - hs-re
   - hs-rs-notify
   - hs-scrape
-  - hs-server-starter
   - hs-snowtify
   - hs-twitter
   - hs-twitterarchiver
@@ -6150,7 +6091,6 @@ broken-packages:
   - hs2bf
   - Hs2lib
   - hs2ps
-  - hS3
   - hsaml2
   - hsay
   - hsbackup
@@ -6201,7 +6141,6 @@ broken-packages:
   - hsgnutls
   - hsgnutls-yj
   - hsgsom
-  - HSH
   - HsHaruPDF
   - HSHHelpers
   - HsHTSLib
@@ -6240,13 +6179,11 @@ broken-packages:
   - hspec-expectations-pretty
   - hspec-experimental
   - hspec-hashable
-  - hspec-hedgehog
   - hspec-jenkins
   - hspec-monad-control
   - hspec-pg-transact
   - hspec-setup
   - hspec-shouldbe
-  - hspec-snap
   - hspec-structured-formatter
   - hspec-test-sandbox
   - hspec-webdriver
@@ -6277,6 +6214,7 @@ broken-packages:
   - hssqlppp
   - hssqlppp-th
   - HsSVN
+  - hstar
   - hstatistics
   - hstats
   - hstatsd
@@ -6298,7 +6236,6 @@ broken-packages:
   - hsXenCtrl
   - hsyscall
   - hsyslog-tcp
-  - hsyslog-udp
   - hszephyr
   - HTab
   - hTalos
@@ -6342,7 +6279,6 @@ broken-packages:
   - http-response-decoder
   - http-server
   - http-shed
-  - http-trace
   - http-wget
   - http2-client
   - http2-client-exe
@@ -6455,7 +6391,6 @@ broken-packages:
   - identifiers
   - idiii
   - idna2008
-  - idringen
   - idris
   - IDynamic
   - ieee-utils
@@ -6552,7 +6487,6 @@ broken-packages:
   - InternedData
   - internetmarke
   - intero
-  - interp
   - interpol
   - interpolatedstring-qq
   - interpolatedstring-qq-mwotton
@@ -6637,7 +6571,6 @@ broken-packages:
   - ivy-web
   - ixdopp
   - ixmonad
-  - ixset-typed
   - ixshader
   - iyql
   - j2hs
@@ -6693,7 +6626,6 @@ broken-packages:
   - json-assertions
   - json-ast-json-encoder
   - json-ast-quickcheck
-  - json-autotype
   - json-b
   - json-builder
   - json-bytes-builder
@@ -6896,7 +6828,6 @@ broken-packages:
   - language-csharp
   - language-css
   - language-dart
-  - language-docker
   - language-dockerfile
   - language-ecmascript-analysis
   - language-eiffel
@@ -6937,7 +6868,6 @@ broken-packages:
   - latest-npm-version
   - latex-formulae-hakyll
   - latex-formulae-pandoc
-  - latex-live-snippets
   - LATS
   - launchdarkly-server-sdk
   - launchpad-control
@@ -6969,7 +6899,6 @@ broken-packages:
   - learn
   - learn-physics-examples
   - Learning
-  - learning-hmm
   - leetify
   - legion
   - legion-discovery
@@ -7004,7 +6933,6 @@ broken-packages:
   - lhe
   - lhs2TeX-hl
   - lhslatex
-  - libarchive
   - LibClang
   - libconfig
   - libcspm
@@ -7036,7 +6964,6 @@ broken-packages:
   - libxslt
   - licensor
   - lie
-  - life-sync
   - lifted-base-tf
   - lifted-protolude
   - lifted-stm
@@ -7118,6 +7045,7 @@ broken-packages:
   - llvm-base-types
   - llvm-base-util
   - llvm-data-interop
+  - llvm-dsl
   - llvm-extension
   - llvm-extra
   - llvm-ffi
@@ -7137,8 +7065,6 @@ broken-packages:
   - lmonad-yesod
   - load-balancing
   - load-font
-  - loc
-  - loc-test
   - local-address
   - local-search
   - localize
@@ -7150,7 +7076,6 @@ broken-packages:
   - log-elasticsearch
   - log-postgres
   - log-utils
-  - log-warper
   - log2json
   - logentries
   - logger
@@ -7224,7 +7149,6 @@ broken-packages:
   - lxd-client
   - lye
   - Lykah
-  - lz4-bytes
   - lz4-conduit
   - lzma-enumerator
   - lzma-streams
@@ -7256,7 +7180,6 @@ broken-packages:
   - mahoro
   - maid
   - mail-pool
-  - mailbox-count
   - mailchimp
   - mailchimp-subscribe
   - MailchimpSimple
@@ -7316,14 +7239,10 @@ broken-packages:
   - math-metric
   - mathblog
   - mathflow
-  - mathista
   - mathlink
   - matrix-as-xyz
   - matrix-market
   - matsuri
-  - matterhorn
-  - mattermost-api
-  - mattermost-api-qc
   - maude
   - maxent
   - maxent-learner-hw
@@ -7336,7 +7255,6 @@ broken-packages:
   - MazesOfMonad
   - MBot
   - mbox-tools
-  - mbtiles
   - mbug
   - MC-Fold-DP
   - mcl
@@ -7424,7 +7342,6 @@ broken-packages:
   - miku
   - milena
   - mime-directory
-  - min-max-pqueue
   - minecraft-data
   - minesweeper
   - miniforth
@@ -7439,7 +7356,6 @@ broken-packages:
   - minst-idx
   - mios
   - mirror-tweet
-  - misfortune
   - miso-action-logger
   - miso-examples
   - miss
@@ -7492,7 +7408,6 @@ broken-packages:
   - monad-logger-syslog
   - monad-lrs
   - monad-mersenne-random
-  - monad-metrics
   - monad-metrics-extensible
   - monad-mock
   - monad-open
@@ -7554,7 +7469,6 @@ broken-packages:
   - monus
   - monzo
   - moo
-  - moonshine
   - morfette
   - morfeusz
   - morley
@@ -7621,7 +7535,6 @@ broken-packages:
   - multibase
   - multifocal
   - multihash
-  - multihash-cryptonite
   - multihash-serialise
   - multilinear
   - multilinear-io
@@ -7689,7 +7602,6 @@ broken-packages:
   - n-tuple
   - n2o-protocols
   - n2o-web
-  - nagios-perfdata
   - nagios-plugin-ekg
   - nakadi-client
   - named-lock
@@ -7722,7 +7634,6 @@ broken-packages:
   - needle
   - neet
   - nehe-tuts
-  - neil
   - neither
   - neko-lib
   - Neks
@@ -7771,7 +7682,6 @@ broken-packages:
   - network-hans
   - network-house
   - network-interfacerequest
-  - network-messagepack-rpc
   - network-messagepack-rpc-websocket
   - network-minihttp
   - network-msgpack-rpc
@@ -7821,7 +7731,6 @@ broken-packages:
   - nitro
   - nix-delegate
   - nix-deploy
-  - nix-diff
   - nix-eval
   - nix-freeze-tree
   - nix-tools
@@ -7990,7 +7899,6 @@ broken-packages:
   - ordrea
   - organize-imports
   - orgmode
-  - orgstat
   - origami
   - orizentic
   - OrPatterns
@@ -8007,7 +7915,6 @@ broken-packages:
   - OTP
   - otp-authenticator
   - ottparse-pretty
-  - outsort
   - overload
   - overloaded-records
   - overture
@@ -8033,7 +7940,6 @@ broken-packages:
   - pam
   - pan-os-syslog
   - panda
-  - pandoc-crossref
   - pandoc-emphasize-code
   - pandoc-filter-graphviz
   - pandoc-include
@@ -8099,13 +8005,10 @@ broken-packages:
   - parser-helper
   - parser241
   - parsergen
-  - parsers-megaparsec
   - parsestar
   - parsimony
-  - parsix
   - partage
   - partial-lens
-  - partial-order
   - partial-records
   - partial-semigroup
   - partial-semigroup-hedgehog
@@ -8197,7 +8100,6 @@ broken-packages:
   - persistent-redis
   - persistent-relational-record
   - persistent-template-classy
-  - persistent-typed-db
   - persistent-vector
   - persistent-zookeeper
   - persona
@@ -8216,7 +8118,6 @@ broken-packages:
   - phasechange
   - phaser
   - phoityne
-  - phoityne-vscode
   - phone-numbers
   - phone-push
   - phooey
@@ -8258,7 +8159,6 @@ broken-packages:
   - pipes-conduit
   - pipes-core
   - pipes-courier
-  - pipes-csv
   - pipes-errors
   - pipes-extra
   - pipes-files
@@ -8337,11 +8237,9 @@ broken-packages:
   - polydata
   - polydata-core
   - polynomial
-  - polysemy-plugin
   - polysemy-RandomFu
   - polysemy-zoo
   - polyseq
-  - polysoup
   - polytypeable
   - polytypeable-utils
   - pomodoro
@@ -8647,17 +8545,12 @@ broken-packages:
   - random-derive
   - random-eff
   - random-effin
-  - random-extras
-  - random-fu
-  - random-fu-multivariate
   - random-hypergeometric
   - random-stream
   - RandomDotOrg
-  - Randometer
   - Range
   - range-space
   - rangemin
-  - rank-product
   - rank1dynamic
   - Ranka
   - rapid
@@ -8746,8 +8639,6 @@ broken-packages:
   - Referees
   - references
   - refh
-  - refined
-  - refined-http-api-data
   - reflection-extras
   - reflex
   - reflex-animation
@@ -8850,7 +8741,6 @@ broken-packages:
   - req-conduit
   - req-oauth2
   - req-url-extra
-  - reqcatcher
   - request-monad
   - require
   - reserve
@@ -8874,7 +8764,6 @@ broken-packages:
   - rest-types
   - rest-wai
   - restful-snap
-  - restless-git
   - restricted-workers
   - restyle
   - rethinkdb
@@ -8903,7 +8792,6 @@ broken-packages:
   - rib
   - ribbit
   - RichConditional
-  - richreports
   - ridley
   - ridley-extras
   - riemann
@@ -8989,7 +8877,6 @@ broken-packages:
   - rungekutta
   - runmany
   - runtime-arbitrary
-  - rvar
   - rws
   - RxHaskell
   - s-expression
@@ -9000,10 +8887,8 @@ broken-packages:
   - safe-failure-cme
   - safe-freeze
   - safe-globals
-  - safe-json
   - safe-lazy-io
   - safe-length
-  - safe-money-xmlbf
   - safe-plugins
   - safe-printf
   - safecopy-migrate
@@ -9169,7 +9054,6 @@ broken-packages:
   - servant-db-postgresql
   - servant-dhall
   - servant-ede
-  - servant-ekg
   - servant-errors
   - servant-examples
   - servant-exceptions
@@ -9203,15 +9087,12 @@ broken-packages:
   - servant-scotty
   - servant-server-namedargs
   - servant-smsc-ru
-  - servant-snap
   - servant-streaming
   - servant-streaming-client
   - servant-streaming-docs
   - servant-streaming-server
   - servant-swagger-tags
-  - servant-to-elm
   - servant-waargonaut
-  - servant-xml
   - servant-zeppelin
   - servant-zeppelin-client
   - servant-zeppelin-server
@@ -9220,7 +9101,6 @@ broken-packages:
   - serversession-backend-acid-state
   - serversession-backend-persistent
   - serversession-backend-redis
-  - serversession-frontend-snap
   - serversession-frontend-yesod
   - services
   - ses-html-snaplet
@@ -9231,7 +9111,6 @@ broken-packages:
   - set-of
   - set-with
   - setdown
-  - setgame
   - setoid
   - setters
   - sexp
@@ -9356,7 +9235,6 @@ broken-packages:
   - siphon
   - siren-json
   - sirkel
-  - sitepipe
   - sixfiguregroup
   - sized-grid
   - sized-types
@@ -9368,7 +9246,6 @@ broken-packages:
   - skeletons
   - skell
   - skemmtun
-  - skews
   - skulk
   - skylark-client
   - skylighting-lucid
@@ -9377,7 +9254,6 @@ broken-packages:
   - slack-notify-haskell
   - slack-web
   - slave-thread
-  - slice-cpp-gen
   - sliceofpy
   - slidemews
   - Slides
@@ -9440,7 +9316,6 @@ broken-packages:
   - snaplet-customauth
   - snaplet-environments
   - snaplet-fay
-  - snaplet-ghcjs
   - snaplet-hasql
   - snaplet-haxl
   - snaplet-hdbc
@@ -9485,7 +9360,6 @@ broken-packages:
   - snowflake-server
   - snowtify
   - Snusmumrik
-  - soap-openssl
   - SoccerFun
   - SoccerFunGL
   - socket-activation
@@ -9549,7 +9423,6 @@ broken-packages:
   - spiros
   - splay
   - splaytree
-  - spline3
   - splines
   - split-morphism
   - splitter
@@ -9608,7 +9481,6 @@ broken-packages:
   - stack-prism
   - stack-run
   - stack-run-auto
-  - stack-tag
   - stack-type
   - stack-wrapper
   - stack2cabal
@@ -9639,10 +9511,8 @@ broken-packages:
   - stateWriter
   - static-canvas
   - static-closure
-  - static-resources
   - static-tensor
   - static-text
-  - staticanalysis
   - statistics-dirichlet
   - statistics-fusion
   - statistics-hypergeometric-genvar
@@ -9850,7 +9720,6 @@ broken-packages:
   - tagsoup-parsec
   - tagsoup-selection
   - tagstream-conduit
-  - tai
   - tai64
   - takahashi
   - Takusen
@@ -9907,7 +9776,6 @@ broken-packages:
   - template-yj
   - templateify
   - templatepg
-  - tempo
   - tempodb
   - temporal-csound
   - tempus
@@ -9957,7 +9825,6 @@ broken-packages:
   - text-containers
   - text-format
   - text-format-heavy
-  - text-format-simple
   - text-generic-pretty
   - text-icu-normalized
   - text-lens
@@ -9969,7 +9836,6 @@ broken-packages:
   - text-plus
   - text-position
   - text-register-machine
-  - text-replace
   - text-time
   - text-trie
   - text-utf8
@@ -9989,7 +9855,6 @@ broken-packages:
   - th-dict-discovery
   - th-fold
   - th-format
-  - th-instance-reification
   - th-instances
   - th-kinds
   - th-kinds-fork
@@ -10010,7 +9875,6 @@ broken-packages:
   - Thingie
   - thorn
   - threadmanager
-  - threadscope
   - threepenny-editors
   - threepenny-gui-contextmenu
   - threepenny-gui-flexbox
@@ -10056,7 +9920,6 @@ broken-packages:
   - timeseries
   - timespan
   - timeutils
-  - timezone-olson-th
   - timezone-unix
   - tintin
   - tiny-scheduler
@@ -10109,6 +9972,7 @@ broken-packages:
   - touched
   - Tournament
   - toxcore
+  - toxcore-c
   - toxiproxy-haskell
   - toysolver
   - tpar
@@ -10157,17 +10021,6 @@ broken-packages:
   - treap
   - tree-monad
   - tree-render-text
-  - tree-sitter
-  - tree-sitter-go
-  - tree-sitter-haskell
-  - tree-sitter-java
-  - tree-sitter-json
-  - tree-sitter-php
-  - tree-sitter-python
-  - tree-sitter-ql
-  - tree-sitter-ruby
-  - tree-sitter-tsx
-  - tree-sitter-typescript
   - tree-traversals
   - TreeCounter
   - treemap-html
@@ -10266,7 +10119,6 @@ broken-packages:
   - type-tree
   - typeable-th
   - TypeClass
-  - typed-spreadsheet
   - typed-streams
   - typed-wire
   - typedflow
@@ -10327,7 +10179,6 @@ broken-packages:
   - uniquely-represented-sets
   - units-attoparsec
   - unittyped
-  - unity-testresult-parser
   - unitym-yesod
   - universal-binary
   - universe-th
@@ -10385,7 +10236,6 @@ broken-packages:
   - usb-id-database
   - usb-iteratee
   - usb-safe
-  - useragents
   - users-mysql-haskell
   - users-persistent
   - utc
@@ -10422,7 +10272,6 @@ broken-packages:
   - validate-input
   - validated-types
   - Validation
-  - validation-selective
   - validations
   - validationt
   - value-supply
@@ -10472,7 +10321,6 @@ broken-packages:
   - verifiable-expressions
   - verify
   - verilog
-  - verismith
   - versioning
   - versioning-servant
   - vflow-types
@@ -10548,7 +10396,6 @@ broken-packages:
   - wai-middleware-etag
   - wai-middleware-headers
   - wai-middleware-hmac-client
-  - wai-middleware-metrics
   - wai-middleware-preprocessor
   - wai-middleware-rollbar
   - wai-middleware-route
@@ -10590,7 +10437,6 @@ broken-packages:
   - weather-api
   - web-css
   - web-encodings
-  - web-fpco
   - web-inv-route
   - web-mongrel2
   - web-output
@@ -10639,7 +10485,6 @@ broken-packages:
   - whiskers
   - whitespace
   - whois
-  - wholepixels
   - why3
   - WikimediaParser
   - wikipedia4epub
@@ -10670,7 +10515,6 @@ broken-packages:
   - word2vec-model
   - WordAlignment
   - wordify
-  - wordlist
   - WordNet
   - WordNet-ghc74
   - wordpass
@@ -10697,7 +10541,6 @@ broken-packages:
   - wsdl
   - wsedit
   - wshterm
-  - wss-client
   - wtk
   - wtk-gtk
   - wu-wei
@@ -10764,9 +10607,6 @@ broken-packages:
   - xml-tydom-core
   - xml2json
   - xml2x
-  - xmlbf
-  - xmlbf-xeno
-  - xmlbf-xmlhtml
   - XmlHtmlWriter
   - xmltv
   - XMMS
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index ff1c01aa8e8..4aa3327e2b4 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -572,17 +572,34 @@ self: super: builtins.intersectAttrs super {
   # The test-suite requires a running PostgreSQL server.
   Frames-beam = dontCheck super.Frames-beam;
 
-  futhark = if pkgs.stdenv.isDarwin then super.futhark else with pkgs;
-    let path = stdenv.lib.makeBinPath [ gcc ];
-    in overrideCabal (addBuildTool super.futhark makeWrapper) (_drv: {
-      postInstall = ''
-        wrapProgram $out/bin/futhark \
-          --prefix PATH : "${path}" \
-          --set NIX_CC_WRAPPER_x86_64_unknown_linux_gnu_TARGET_HOST 1 \
-          --set NIX_CFLAGS_COMPILE "-I${opencl-headers}/include" \
-          --set NIX_CFLAGS_LINK "-L${ocl-icd}/lib"
-      '';
-    });
+  # * Compile manpages (which are in RST and are compiled with Sphinx).
+  #
+  # * Wrap so that binary can find GCC and OpenCL headers (dubious if
+  #   a good idea).
+  futhark = with pkgs;
+    let maybeWrap =
+          if pkgs.stdenv.isDarwin then ""
+          else
+            let path = stdenv.lib.makeBinPath [ gcc ];
+            in ''
+            wrapProgram $out/bin/futhark \
+              --prefix PATH : "${path}" \
+              --set NIX_CC_WRAPPER_x86_64_unknown_linux_gnu_TARGET_HOST 1 \
+              --set NIX_CFLAGS_COMPILE "-I${opencl-headers}/include" \
+              --set NIX_CFLAGS_LINK "-L${ocl-icd}/lib"
+            '';
+    in overrideCabal (addBuildTools super.futhark [makeWrapper python37Packages.sphinx])
+      (_drv: {
+        postBuild = (_drv.postBuild or "") + ''
+        make -C docs man
+        '';
+
+        postInstall = (_drv.postInstall or "") + ''
+        mkdir -p $out/share/man/man1
+        mv docs/_build/man/*.1 $out/share/man/man1/
+        ''
+        + maybeWrap;
+      });
 
   git-annex = with pkgs;
     if (!stdenv.isLinux) then
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 5d7e04c7135..1a9e75a37cd 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -2722,7 +2722,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "Cabal_3_0_0_0" = callPackage
+  "Cabal_3_2_0_0" = callPackage
     ({ mkDerivation, array, base, base-compat, base-orphans, binary
      , bytestring, containers, deepseq, Diff, directory, filepath
      , integer-logarithms, mtl, optparse-applicative, parsec, pretty
@@ -2732,8 +2732,8 @@ self: {
      }:
      mkDerivation {
        pname = "Cabal";
-       version = "3.0.0.0";
-       sha256 = "11yjd0cmqngi1yr7v0dr55n59rq78kk6121sr44abha0swkfqhsi";
+       version = "3.2.0.0";
+       sha256 = "0vz6bl1ia7wjc62sj5iw5jhigdwfz6yz01mripjcymv4qrbkl1gj";
        setupHaskellDepends = [ mtl parsec ];
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq directory filepath
@@ -3090,8 +3090,8 @@ self: {
      }:
      mkDerivation {
        pname = "ChasingBottoms";
-       version = "1.3.1.7";
-       sha256 = "0ziiqfsvv1ypdra6kd0bhbsl852i0wqn43jkfii38yl879cdacan";
+       version = "1.3.1.8";
+       sha256 = "1madbhhxi5awh74q0z2mx1la5jbkvx26zvhl4x8237sjzs0k51wx";
        libraryHaskellDepends = [
          base containers mtl QuickCheck random syb
        ];
@@ -6108,8 +6108,6 @@ self: {
        libraryHaskellDepends = [ base MissingH split ];
        description = "Tools for focusing in on locations within numbers";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "Folly" = callPackage
@@ -7199,6 +7197,17 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "Gleam" = callPackage
+    ({ mkDerivation, base, mtl, split, threepenny-gui }:
+     mkDerivation {
+       pname = "Gleam";
+       version = "0.1.0.0";
+       sha256 = "0j822hblrd0p343w9ds0fa75s3grgpiyv180hsw3ld3pj30fcc8b";
+       libraryHaskellDepends = [ base mtl split threepenny-gui ];
+       description = "HTML Canvas graphics, animations and simulations";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "Glob" = callPackage
     ({ mkDerivation, base, containers, directory, dlist, filepath
      , HUnit, QuickCheck, test-framework, test-framework-hunit
@@ -9129,8 +9138,6 @@ self: {
        ];
        description = "Library to mix shell scripting with Haskell programs";
        license = "LGPL";
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "HSHHelpers" = callPackage
@@ -9326,6 +9333,8 @@ self: {
        pname = "HTTP";
        version = "4000.3.14";
        sha256 = "0yv8mbjicpl7l2017c4dhm49117lblgwpy1llv368wci1vrxf0m6";
+       revision = "1";
+       editedCabalFile = "1inz9grpl9605bbymy6n5y4as54mlykbsiw8wpm5gl6qvxgrf69w";
        libraryHaskellDepends = [
          array base bytestring mtl network network-uri parsec time
        ];
@@ -9578,8 +9587,8 @@ self: {
      }:
      mkDerivation {
        pname = "HaTeX";
-       version = "3.22.1.0";
-       sha256 = "1an10gxrhb6kxrp2hgmya6bx06xmr6y4dhvz5wnz6jqavnv2mmwh";
+       version = "3.22.2.0";
+       sha256 = "0l2csqvyxl399p6jmp8nkabsn8bh4k94wblh7qbn13q8zrmzmmzp";
        libraryHaskellDepends = [
          base bibtex bytestring containers hashable matrix parsec
          prettyprinter QuickCheck text transformers
@@ -10098,8 +10107,6 @@ self: {
        ];
        description = "mastodon client module for Haskell";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "Hate" = callPackage
@@ -10688,6 +10695,21 @@ self: {
        license = stdenv.lib.licenses.publicDomain;
      }) {inherit (pkgs) openssl;};
 
+  "HsOpenSSL_0_11_4_18" = callPackage
+    ({ mkDerivation, base, bytestring, Cabal, network, openssl, time }:
+     mkDerivation {
+       pname = "HsOpenSSL";
+       version = "0.11.4.18";
+       sha256 = "1nz4d6pwcnv775ncyg85ckx8kkzj2y3h17i40jc0yna8ai7driyx";
+       setupHaskellDepends = [ base Cabal ];
+       libraryHaskellDepends = [ base bytestring network time ];
+       librarySystemDepends = [ openssl ];
+       testHaskellDepends = [ base bytestring ];
+       description = "Partial OpenSSL binding for Haskell";
+       license = stdenv.lib.licenses.publicDomain;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) openssl;};
+
   "HsOpenSSL-x509-system" = callPackage
     ({ mkDerivation, base, bytestring, HsOpenSSL, unix }:
      mkDerivation {
@@ -10799,6 +10821,8 @@ self: {
        pname = "HsYAML";
        version = "0.2.1.0";
        sha256 = "10qzhsg789h37q22hm9p27dx4rhbykcbxp7p3pvkws8fr7ajgxv0";
+       revision = "1";
+       editedCabalFile = "0bfwdwwj5wgqrrbw1cwaxwxy9970dzln7w20f21mlg2l374wnqvf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -10820,6 +10844,8 @@ self: {
        pname = "HsYAML-aeson";
        version = "0.2.0.0";
        sha256 = "12sxww260pc0bbpiyirm7911haxhljdi2f08a9ddpbgw8d5n7ffg";
+       revision = "1";
+       editedCabalFile = "1454jwcjaala8drxn7x765bqnzivdys99nl95mbd3yv2c6s1173g";
        libraryHaskellDepends = [
          aeson base bytestring containers HsYAML mtl scientific text
          unordered-containers vector
@@ -11656,8 +11682,8 @@ self: {
        pname = "JuicyPixels-scale-dct";
        version = "0.1.2";
        sha256 = "04rhrmjnh12hh2nz04k245avgdcwqfyjnsbpcrz8j9328j41nf7p";
-       revision = "4";
-       editedCabalFile = "0r6v9iv7fkslznn6fw2132j1gpxk9dyccdg8r5qj2vvsrbp0dpjf";
+       revision = "5";
+       editedCabalFile = "0aar0h109fiy6pads3rlmhjsaj5528yn4zay5ps0zf8yb9dyd82s";
        libraryHaskellDepends = [
          base base-compat carray fft JuicyPixels
        ];
@@ -14720,10 +14746,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "OneTuple";
-       version = "0.2.2";
-       sha256 = "1p14cvjk3rgfc0xxcn7ffaajd2ii1ljnlayil2yyzgdwhlj70bnq";
-       revision = "3";
-       editedCabalFile = "0m3a9fj2h0v529q3i1kq1jfbdj68wxsmhq65hgx2rwjpgb8cqf0z";
+       version = "0.2.2.1";
+       sha256 = "15ls6kkf953288q7rsc49bvw467ll4nq28hvsgbaazdn7hf75ixc";
        libraryHaskellDepends = [ base ];
        description = "Singleton Tuple";
        license = stdenv.lib.licenses.bsd3;
@@ -16052,8 +16076,8 @@ self: {
      }:
      mkDerivation {
        pname = "PyF";
-       version = "0.9.0.0";
-       sha256 = "0jf8nzdq8jpw8pkcvy31fjg44bdlrbjl7ssj9kcqcn314yszanhw";
+       version = "0.9.0.1";
+       sha256 = "00pmpm2g7161bksc1l5clkghi0sbzh8y0f6xd52gwx9h6zxacns3";
        libraryHaskellDepends = [
          base containers haskell-src-exts haskell-src-meta megaparsec mtl
          template-haskell text
@@ -16204,6 +16228,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "QuickCheck_2_14" = callPackage
+    ({ mkDerivation, base, containers, deepseq, process, random
+     , splitmix, template-haskell, transformers
+     }:
+     mkDerivation {
+       pname = "QuickCheck";
+       version = "2.14";
+       sha256 = "0jiqdk8ma8m68vg6vbxd0s1x0djmfjn1zm06masz7x8rzc3i9gjj";
+       libraryHaskellDepends = [
+         base containers deepseq random splitmix template-haskell
+         transformers
+       ];
+       testHaskellDepends = [ base deepseq process ];
+       description = "Automatic testing of Haskell programs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "QuickCheck-GenT" = callPackage
     ({ mkDerivation, base, mtl, QuickCheck, random }:
      mkDerivation {
@@ -16679,8 +16721,6 @@ self: {
        executableHaskellDepends = [ base random-fu ];
        description = "Randomness intuition trainer";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "Range" = callPackage
@@ -16767,6 +16807,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "Rasterific_0_7_5_2" = callPackage
+    ({ mkDerivation, base, bytestring, containers, dlist, FontyFruity
+     , free, JuicyPixels, mtl, primitive, transformers, vector
+     , vector-algorithms
+     }:
+     mkDerivation {
+       pname = "Rasterific";
+       version = "0.7.5.2";
+       sha256 = "0f2qskrkxpj728zplrjz3j6h5cxwqvr0qi3614krjgcx69iym3sx";
+       libraryHaskellDepends = [
+         base bytestring containers dlist FontyFruity free JuicyPixels mtl
+         primitive transformers vector vector-algorithms
+       ];
+       description = "A pure haskell drawing engine";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ReadArgs" = callPackage
     ({ mkDerivation, base, hspec, system-filepath, text }:
      mkDerivation {
@@ -20218,8 +20276,8 @@ self: {
     ({ mkDerivation, base, bytestring, containers, parseargs }:
      mkDerivation {
        pname = "WAVE";
-       version = "0.1.4";
-       sha256 = "1zr2sw3m0pwbn5qfxhgf8195f4pjj3azc2w849l0cdi3znvmlxih";
+       version = "0.1.6";
+       sha256 = "1jm0zs4v38agy0rinlxkgx5zgdy0qizy2nb73wfzprk5kka5kn37";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring ];
@@ -22424,13 +22482,14 @@ self: {
      }) {};
 
   "acme-dont" = callPackage
-    ({ mkDerivation, base }:
+    ({ mkDerivation, base, tasty, tasty-hunit }:
      mkDerivation {
        pname = "acme-dont";
-       version = "1.1";
-       sha256 = "1kj3qjgn1rz093050z49w3js4is9p0g9pk5g7d7wvg28hpzk28n3";
+       version = "1.2";
+       sha256 = "0pi5xdbsbbrl6g23v41505vgzv5mr6l9r9iwv6l2gg6vzmsk42r7";
        libraryHaskellDepends = [ base ];
-       description = "A don't construct";
+       testHaskellDepends = [ base tasty tasty-hunit ];
+       description = "A \"don't\" construct";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
@@ -23142,8 +23201,6 @@ self: {
        ];
        description = "Convert adblock config files to privoxy format";
        license = stdenv.lib.licenses.gpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "addLicenseInfo" = callPackage
@@ -23424,38 +23481,6 @@ self: {
      }) {};
 
   "aeson" = callPackage
-    ({ mkDerivation, attoparsec, base, base-compat, base-orphans
-     , base16-bytestring, bytestring, containers, deepseq, Diff
-     , directory, dlist, filepath, generic-deriving, ghc-prim, hashable
-     , hashable-time, integer-logarithms, primitive, QuickCheck
-     , quickcheck-instances, scientific, tagged, tasty, tasty-golden
-     , tasty-hunit, tasty-quickcheck, template-haskell, text
-     , th-abstraction, time, time-compat, unordered-containers
-     , uuid-types, vector
-     }:
-     mkDerivation {
-       pname = "aeson";
-       version = "1.4.6.0";
-       sha256 = "12s8nfsady47zlz94f7m978irwwj0l0v2x41hk8w1i14wb3b4gwj";
-       libraryHaskellDepends = [
-         attoparsec base base-compat bytestring containers deepseq dlist
-         ghc-prim hashable primitive scientific tagged template-haskell text
-         th-abstraction time time-compat unordered-containers uuid-types
-         vector
-       ];
-       testHaskellDepends = [
-         attoparsec base base-compat base-orphans base16-bytestring
-         bytestring containers Diff directory dlist filepath
-         generic-deriving ghc-prim hashable hashable-time integer-logarithms
-         QuickCheck quickcheck-instances scientific tagged tasty
-         tasty-golden tasty-hunit tasty-quickcheck template-haskell text
-         time time-compat unordered-containers uuid-types vector
-       ];
-       description = "Fast JSON parsing and encoding";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "aeson_1_4_7_0" = callPackage
     ({ mkDerivation, attoparsec, base, base-compat
      , base-compat-batteries, base-orphans, base16-bytestring
      , bytestring, containers, deepseq, Diff, directory, dlist, filepath
@@ -23467,8 +23492,10 @@ self: {
      }:
      mkDerivation {
        pname = "aeson";
-       version = "1.4.7.0";
-       sha256 = "15ykkxa636jnx1zcyq4yxgjz78m5fp315gg0llbjf44jk4fbhndh";
+       version = "1.4.7.1";
+       sha256 = "1502yjw4y5ggp1gmrx0d3pcgrx3zhwbmcz4jb4fcignrbxjldrq7";
+       revision = "1";
+       editedCabalFile = "1fih6nmhvg0dvhngk2bjsr9s0804lgng971qz4fjl4mpb7cjz3bd";
        libraryHaskellDepends = [
          attoparsec base base-compat-batteries bytestring containers deepseq
          dlist ghc-prim hashable primitive scientific tagged
@@ -23485,7 +23512,6 @@ self: {
        ];
        description = "Fast JSON parsing and encoding";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "aeson-applicative" = callPackage
@@ -23605,8 +23631,8 @@ self: {
        pname = "aeson-compat";
        version = "0.3.9";
        sha256 = "1j13gykv4ryvmr14w5blz0nnpdb4p0hpa27wahw3mhb1lwdr8hz0";
-       revision = "2";
-       editedCabalFile = "1y07skwfg22z37fvjmqcpcl1yz1kx2zn4zz3n1bfghk7740c4gyd";
+       revision = "3";
+       editedCabalFile = "1fnahwplqcnv9m4kcf8i588ankafd2125ch71027plciqxxwid70";
        libraryHaskellDepends = [
          aeson attoparsec attoparsec-iso8601 base base-compat bytestring
          containers exceptions hashable scientific tagged text time
@@ -24163,6 +24189,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "aeson-schemas_1_1_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, first-class-families
+     , megaparsec, QuickCheck, raw-strings-qq, tasty, tasty-golden
+     , tasty-hunit, tasty-quickcheck, template-haskell, text
+     , th-test-utils, unordered-containers
+     }:
+     mkDerivation {
+       pname = "aeson-schemas";
+       version = "1.1.0";
+       sha256 = "1w01mdixja6f8176ra0lrkhbrr68hcsiib7sq8sdfh1rsx3hsn62";
+       libraryHaskellDepends = [
+         aeson base bytestring first-class-families megaparsec
+         template-haskell text unordered-containers
+       ];
+       testHaskellDepends = [
+         aeson base bytestring first-class-families megaparsec QuickCheck
+         raw-strings-qq tasty tasty-golden tasty-hunit tasty-quickcheck
+         template-haskell text th-test-utils unordered-containers
+       ];
+       description = "Easily consume JSON data on-demand with type-safety";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "aeson-serialize" = callPackage
     ({ mkDerivation, aeson, base, cereal, hspec, HUnit }:
      mkDerivation {
@@ -24306,16 +24356,17 @@ self: {
      }) {};
 
   "aeson-value-parser" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, bytestring, hashable, mtl
-     , scientific, text, transformers, unordered-containers, vector
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, hashable
+     , megaparsec, mtl, scientific, text, text-builder, transformers
+     , unordered-containers, vector
      }:
      mkDerivation {
        pname = "aeson-value-parser";
-       version = "0.18";
-       sha256 = "1n288jb8ksjb6psgal4q6p7ad13sdak3llk54nc0gg5w2r20x634";
+       version = "0.19";
+       sha256 = "1v8s1f0zxhvf0r0cr800x363361g7il2wmbah04kr1vl376ydcjy";
        libraryHaskellDepends = [
-         aeson attoparsec base bytestring hashable mtl scientific text
-         transformers unordered-containers vector
+         aeson attoparsec base bytestring hashable megaparsec mtl scientific
+         text text-builder transformers unordered-containers vector
        ];
        description = "API for parsing \"aeson\" JSON tree into Haskell types";
        license = stdenv.lib.licenses.mit;
@@ -24983,8 +25034,6 @@ self: {
        ];
        description = "Wake up and perform an action at a certain time";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "alea" = callPackage
@@ -25196,8 +25245,6 @@ self: {
        ];
        description = "Model and test API surfaces algebraically";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "algebra-dag" = callPackage
@@ -25913,8 +25960,8 @@ self: {
        pname = "amazonka";
        version = "1.6.1";
        sha256 = "104ifvmwdc1w3y42qcbq57v579zcnmlfv3f0bsazbcqdxnvr9dzd";
-       revision = "1";
-       editedCabalFile = "0xn4wy5gb1h4f4wd2h5ic17nb6ilikmsp1qip6xxc3img5rmaqyq";
+       revision = "2";
+       editedCabalFile = "171rp3cbgy58lps437c1jfpmi4xsp0z4pral7jh3mybn73l672zm";
        libraryHaskellDepends = [
          amazonka-core base bytestring conduit conduit-extra directory
          exceptions http-client http-conduit http-types ini mmorph
@@ -28890,8 +28937,6 @@ self: {
        executableHaskellDepends = [ base data-default ];
        description = "Tools for interacting with Anki database";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "annah" = callPackage
@@ -29720,6 +29765,18 @@ self: {
        broken = true;
      }) {};
 
+  "aop-prelude" = callPackage
+    ({ mkDerivation, base, ghc-prim }:
+     mkDerivation {
+       pname = "aop-prelude";
+       version = "0.1.0.0";
+       sha256 = "0jgv33h50mb5i0fignmxngijcrv59wnnljnf1idrf7n57kgrrjlg";
+       libraryHaskellDepends = [ base ghc-prim ];
+       testHaskellDepends = [ base ghc-prim ];
+       description = "prelude for Algebra of Programming";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "aos-signature" = callPackage
     ({ mkDerivation, base, bytestring, cryptonite, memory, mtl
      , protolude, QuickCheck, random, tasty, tasty-hunit
@@ -31129,8 +31186,8 @@ self: {
      }:
      mkDerivation {
        pname = "archive-libarchive";
-       version = "0.2.2.2";
-       sha256 = "12a7rvzbywz5kh403q0q612z1f2arb74jgjx9qk1vdhiyasgwnkh";
+       version = "1.0.0.0";
+       sha256 = "0pqq76gnk6y71c5wwjhq99y2695v6bfyzjb8gakp6h3jivcpd2gb";
        libraryHaskellDepends = [
          base bytestring composition-prelude libarchive
        ];
@@ -31147,8 +31204,8 @@ self: {
      }:
      mkDerivation {
        pname = "archive-sig";
-       version = "0.2.3.0";
-       sha256 = "0zpi4kqd4g298xlcmsk30kpahmlfgmxany3mny1zpzd8968qn5za";
+       version = "1.0.0.0";
+       sha256 = "1n8b10l5fq11kvph6j3qysm4ih6yi02167hixx98sa5c6bgba5z5";
        libraryHaskellDepends = [
          base bytestring composition-prelude dir-traverse
        ];
@@ -31177,8 +31234,8 @@ self: {
      }:
      mkDerivation {
        pname = "archive-tar-bytestring";
-       version = "0.1.0.0";
-       sha256 = "0s1x4krnjdf1gq0f1krqdhxjkz4yanl5ayr0mdg6bcprlpzf3ib9";
+       version = "1.0.0.0";
+       sha256 = "0gda7vpzjxsi8qidzqz1967a3nbap8m52f4ncfj8ph6kwh3pw2zb";
        libraryHaskellDepends = [
          base bytestring composition-prelude tar-bytestring text unix
        ];
@@ -31491,8 +31548,8 @@ self: {
      }:
      mkDerivation {
        pname = "arion-compose";
-       version = "0.1.1.0";
-       sha256 = "0d90m39gir2371wgjkkmb7yrqr92zncjr6naz68r64a9mq38ga90";
+       version = "0.1.1.1";
+       sha256 = "0qi9mj67j3kq02psm3qa855rk0hpz2pvfa7ggx4jhzqnf60xd9ph";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -31510,8 +31567,7 @@ self: {
        ];
        description = "Run docker-compose with help from Nix/NixOS";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
+       maintainers = with stdenv.lib.maintainers; [ roberth ];
      }) {};
 
   "arith-encode" = callPackage
@@ -32078,8 +32134,6 @@ self: {
        libraryHaskellDepends = [ base MissingH ];
        description = "Generic markup builder";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "ascii" = callPackage
@@ -32126,8 +32180,6 @@ self: {
        libraryHaskellDepends = [ base random-extras random-fu text ];
        description = "A collection of ASCII cows. Moo.";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "ascii-flatten" = callPackage
@@ -32470,8 +32522,8 @@ self: {
     ({ mkDerivation, base, bytestring, hourglass, memory }:
      mkDerivation {
        pname = "asn1-types";
-       version = "0.3.3";
-       sha256 = "162lacdl9jr42pdhaj9hxqlba6hjxm6g866anna74q6v3cvw5ssp";
+       version = "0.3.4";
+       sha256 = "1a119qxhxhr0yn37r26dkydm6g5kykdkx98ghb59i4ipa6i95vkq";
        libraryHaskellDepends = [ base bytestring hourglass memory ];
        description = "ASN.1 types";
        license = stdenv.lib.licenses.bsd3;
@@ -32495,12 +32547,12 @@ self: {
      }) {};
 
   "aspell-pipe" = callPackage
-    ({ mkDerivation, base, process, text }:
+    ({ mkDerivation, async, base, process, text }:
      mkDerivation {
        pname = "aspell-pipe";
-       version = "0.3";
-       sha256 = "1jl332g0v3zsjx4c340y5cw8rfpi527gki86y14zps6rb9b9nvzi";
-       libraryHaskellDepends = [ base process text ];
+       version = "0.4";
+       sha256 = "0vwav0xdrsb9kww7p1z63wifxd5bfd247vdqscf2amkdgm5k716m";
+       libraryHaskellDepends = [ async base process text ];
        description = "Pipe-based interface to the Aspell program";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -32619,6 +32671,8 @@ self: {
        pname = "assoc";
        version = "1.0.1";
        sha256 = "1m9n4vp190bvn2wcrd4ggfwa9pi93jp0zgx02mdgywn2zfidw020";
+       revision = "1";
+       editedCabalFile = "1q6sc9v79p2pdm7aa6mfbn824vc01wj267saf2gp86b3wzgp0mrh";
        libraryHaskellDepends = [ base bifunctors tagged ];
        description = "swap and assoc: Symmetric and Semigroupy Bifunctors";
        license = stdenv.lib.licenses.bsd3;
@@ -32837,6 +32891,8 @@ self: {
        pname = "async";
        version = "2.2.2";
        sha256 = "1zxvfcyy4sg8lmzphi5dgnavksj5pav6rbvd5kc48lf4hanb2jjb";
+       revision = "1";
+       editedCabalFile = "1kg9xmby0wkx31998h2r43yr8bl1aixk6025zqigz9vdhmkc2y51";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base hashable stm ];
@@ -33611,10 +33667,8 @@ self: {
      }:
      mkDerivation {
        pname = "attoparsec";
-       version = "0.13.2.3";
-       sha256 = "1ngjn9h5n0vyki0m2jir4mg85875ysswy9hznpmj1r856mqwc6ix";
-       revision = "1";
-       editedCabalFile = "164n392qrgyb8mg3xxaxym0ffvqyjr4ny4lfrr81y7hk3947yw9q";
+       version = "0.13.2.4";
+       sha256 = "1cpgxc17lh4lnpblb3cimpq4ka23bf89q6yvd0jwk7klw5nwsrms";
        libraryHaskellDepends = [
          array base bytestring containers deepseq scientific text
          transformers
@@ -34641,6 +34695,44 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "avro_0_5_1_0" = callPackage
+    ({ mkDerivation, aeson, array, base, base16-bytestring, bifunctors
+     , binary, bytestring, containers, data-binary-ieee754, deepseq
+     , directory, doctest, doctest-discover, extra, fail, gauge
+     , generic-lens, HasBigDecimal, hashable, hedgehog, hspec
+     , hspec-discover, hw-hspec-hedgehog, lens, lens-aeson, mtl
+     , QuickCheck, random, raw-strings-qq, scientific, semigroups
+     , tagged, template-haskell, text, tf-random, time, transformers
+     , unordered-containers, uuid, vector, zlib
+     }:
+     mkDerivation {
+       pname = "avro";
+       version = "0.5.1.0";
+       sha256 = "0yhv29ahwbj97l30knaid8l6v1n9k3ayv67qfkchd2m6qhzm7ns5";
+       libraryHaskellDepends = [
+         aeson array base base16-bytestring bifunctors binary bytestring
+         containers data-binary-ieee754 deepseq fail HasBigDecimal hashable
+         mtl raw-strings-qq scientific semigroups tagged template-haskell
+         text tf-random time unordered-containers uuid vector zlib
+       ];
+       testHaskellDepends = [
+         aeson array base base16-bytestring bifunctors binary bytestring
+         containers directory doctest doctest-discover extra fail
+         generic-lens HasBigDecimal hashable hedgehog hspec
+         hw-hspec-hedgehog lens lens-aeson mtl QuickCheck raw-strings-qq
+         scientific semigroups tagged text tf-random time transformers
+         unordered-containers uuid vector zlib
+       ];
+       testToolDepends = [ doctest-discover hspec-discover ];
+       benchmarkHaskellDepends = [
+         aeson base binary bytestring containers deepseq gauge hashable mtl
+         random raw-strings-qq text transformers unordered-containers vector
+       ];
+       description = "Avro serialization support for Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "avro-piper" = callPackage
     ({ mkDerivation, aeson, avro, base, bytestring, conduit
      , conduit-combinators, conduit-extra, hedgehog, hspec
@@ -34797,31 +34889,6 @@ self: {
      }:
      mkDerivation {
        pname = "aws-cloudfront-signed-cookies";
-       version = "0.2.0.1";
-       sha256 = "1yk40n6gjs72pyi6yjwhqj0dngqc4b74rpg0ji61852nbb0snl28";
-       revision = "3";
-       editedCabalFile = "1v0bbyskwbawfhaji3s63hjrzwsi2bb7l8g6yxdp02bp6zb92757";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson aeson-pretty asn1-encoding asn1-types base base64-bytestring
-         bytestring cookie cryptonite lens lens-aeson optparse-applicative
-         pem text time unordered-containers vector
-       ];
-       executableHaskellDepends = [ base ];
-       testHaskellDepends = [ base hedgehog neat-interpolation ];
-       description = "Generate signed cookies for AWS CloudFront";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "aws-cloudfront-signed-cookies_0_2_0_4" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, asn1-encoding, asn1-types
-     , base, base64-bytestring, bytestring, cookie, cryptonite, hedgehog
-     , lens, lens-aeson, neat-interpolation, optparse-applicative, pem
-     , text, time, unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "aws-cloudfront-signed-cookies";
        version = "0.2.0.4";
        sha256 = "0j40760k1ackwhsy279ir8jybnvis5m56i5hy3rppjybhjiyyd4v";
        isLibrary = true;
@@ -34835,7 +34902,6 @@ self: {
        testHaskellDepends = [ base hedgehog neat-interpolation ];
        description = "Generate signed cookies for AWS CloudFront";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "aws-cloudfront-signer" = callPackage
@@ -35170,8 +35236,8 @@ self: {
      }:
      mkDerivation {
        pname = "aws-lambda-haskell-runtime";
-       version = "2.0.3";
-       sha256 = "1ycqwmpgqzdb8kz3w6yzf44id32pc3vin1w3j0klzzg2k51l4nnr";
+       version = "2.0.4";
+       sha256 = "0gzg1g5669lr7p5sg22r6b952c7pn39rjr9y0ss77jvl7klhykr8";
        libraryHaskellDepends = [
          aeson base bytestring http-client http-types path path-io
          safe-exceptions-checked template-haskell text
@@ -35179,8 +35245,6 @@ self: {
        testHaskellDepends = [ base hspec ];
        description = "Haskell runtime for AWS Lambda";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "aws-lambda-runtime" = callPackage
@@ -36170,8 +36234,6 @@ self: {
        testHaskellDepends = [ base containers hspec QuickCheck time ];
        description = "Calculation of bank holidays in England and Wales";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "banwords" = callPackage
@@ -36402,16 +36464,14 @@ self: {
     ({ mkDerivation, base, base-compat }:
      mkDerivation {
        pname = "base-compat-migrate";
-       version = "0.2.0.0";
-       sha256 = "0xc9fjdv4bx5isw39l9aknvwvi46zpc4930wxvsx0v4qa8yhfpaa";
+       version = "0.2.0.1";
+       sha256 = "18nyacdji89ys6h7hw28b6rz6p9gkasd4c0l7awz79wp0w8a0cdm";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base base-compat ];
        doHaddock = false;
        description = "Helps migrating projects to base-compat(-batteries)";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "base-encoding" = callPackage
@@ -36525,8 +36585,8 @@ self: {
      }:
      mkDerivation {
        pname = "base16";
-       version = "0.1.2.1";
-       sha256 = "1dqkqyyqdym48fh59zz3jyvhbbc70q37fvx2zv80cmysa929d1fr";
+       version = "0.2.0.0";
+       sha256 = "0j4mk7w8bg3q3ln5lcffdvaz36frizzq82z05l699y5g25abzrx4";
        libraryHaskellDepends = [ base bytestring text ];
        testHaskellDepends = [
          base base16-bytestring bytestring memory random-bytestring tasty
@@ -36557,8 +36617,8 @@ self: {
      }:
      mkDerivation {
        pname = "base16-lens";
-       version = "0.1.0.0";
-       sha256 = "17cckwpl3c7bf6jj8l1jbwpb0hlsqp7iv3mllb59gp38nfdn51rd";
+       version = "0.1.2.0";
+       sha256 = "1mgy1adhlw2sra8lfc2cklfn9w7jj2f9pilifnnfk2jq6hwalpn8";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [ base base16 bytestring lens text ];
        testHaskellDepends = [ base doctest lens ];
@@ -36779,8 +36839,8 @@ self: {
        pname = "base64-bytestring-type";
        version = "1.0.1";
        sha256 = "03kq4rjj6by02rf3hg815jfdqpdk0xygm5f46r2pn8mb99yd01zn";
-       revision = "3";
-       editedCabalFile = "0gqyij803y0shpc5knljbffss6c1pbdanfzwlws01vkl4y10sfja";
+       revision = "4";
+       editedCabalFile = "0w7pzjyyhan42zbk8mn9dw1hzjcr0nv9nhpi4hs7s16d6cc80qwa";
        libraryHaskellDepends = [
          aeson base base-compat base64-bytestring binary bytestring cereal
          deepseq hashable http-api-data QuickCheck serialise text
@@ -38625,6 +38685,8 @@ self: {
        pname = "bin";
        version = "0.1";
        sha256 = "008i0yxvg9v05gby6ysq3f7ygh125p9xa5vwrcrbq5xw79igyzq5";
+       revision = "2";
+       editedCabalFile = "1zmzi566syvrm9bk0mxj3dycd3i4b33018c644qxdqdb00mlvayh";
        libraryHaskellDepends = [
          base dec deepseq fin hashable QuickCheck
        ];
@@ -38851,10 +38913,8 @@ self: {
      }:
      mkDerivation {
        pname = "binary-instances";
-       version = "1";
-       sha256 = "07y9582vsw94ks8whkd3dcmf4wdwlq8riyk2shmxxprkq0gsv3z0";
-       revision = "2";
-       editedCabalFile = "0yawdwm086gk51y5s5zbybiwiv386cx8xyj6kcgj9wwdidcnaxdi";
+       version = "1.0.0.1";
+       sha256 = "0f8ilzpwj7gbyvlswlkd48dzpj9m13ipinw55lvjag0ir52idk9a";
        libraryHaskellDepends = [
          aeson base binary binary-orphans case-insensitive hashable
          scientific tagged text text-binary time-compat unordered-containers
@@ -38906,8 +38966,8 @@ self: {
        pname = "binary-orphans";
        version = "1.0.1";
        sha256 = "0gbmn5rpvyxhw5bxjmxwld6918lslv03b2f6hshssaw1il5x86j3";
-       revision = "3";
-       editedCabalFile = "1s3bk63x2rxwk611jbvpvvgrq1k7k0gd9q105cqxcbcih396ac0s";
+       revision = "4";
+       editedCabalFile = "07jwyndphnfr20ihagncpl8rr7i62hxf0b9m2bdahyzvz0yzdsl2";
        libraryHaskellDepends = [ base binary transformers ];
        testHaskellDepends = [
          base binary QuickCheck quickcheck-instances tagged tasty
@@ -39136,8 +39196,6 @@ self: {
        ];
        description = "Tagged binary serialisation";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "binary-tree" = callPackage
@@ -41200,8 +41258,8 @@ self: {
      }:
      mkDerivation {
        pname = "bitvec";
-       version = "1.0.2.0";
-       sha256 = "0ciri2zaifrli1zas0z75vdx97sns1fdvmghx9mlx8pi875f6b85";
+       version = "1.0.3.0";
+       sha256 = "0s3gdh2rgz9wdnin5h2yhvnr8gy3sgcl9sbb1k4069ap4svrg8hd";
        libraryHaskellDepends = [
          base deepseq ghc-prim integer-gmp primitive vector
        ];
@@ -41849,8 +41907,8 @@ self: {
      }:
      mkDerivation {
        pname = "blaze-markup";
-       version = "0.8.2.3";
-       sha256 = "1g9m7ansj7fdyzhz1wqkbzn5amjm50vjgjdwkbjc5qqhagnv1y3j";
+       version = "0.8.2.4";
+       sha256 = "0xb2hd5n6ymax6yw5hyi05lgllq5ldw28mgfxjpljrws9m8i078w";
        libraryHaskellDepends = [ base blaze-builder bytestring text ];
        testHaskellDepends = [
          base blaze-builder bytestring containers HUnit QuickCheck tasty
@@ -43091,6 +43149,8 @@ self: {
        pname = "boring";
        version = "0.1.3";
        sha256 = "1fljlkzc5016xbq9jykh0wr1mbyfcikh818pp54djws5vm66hh6d";
+       revision = "1";
+       editedCabalFile = "1gn2f035fmn2l56a507x080cl1apddszhlsf6lriwyass4v58mfl";
        libraryHaskellDepends = [
          adjunctions base base-compat bin constraints dec fin generics-sop
          ral singleton-bool streams tagged transformers transformers-compat
@@ -43206,8 +43266,8 @@ self: {
        pname = "bound-extras";
        version = "0.0.1";
        sha256 = "0f49yqz5s5h4f3m3i7kpm2fqnd42nl4dbl24lvm6z3nb8qrx6ynq";
-       revision = "2";
-       editedCabalFile = "1a88bxgz9r1v6lqkab12ljw3vknx7sgi6vi3fsqli8ji2ajfn5k1";
+       revision = "3";
+       editedCabalFile = "10vv6dsfia3fdclvnhp8q76s3zgmxwzi4bvvii6g6ic8wid6asvg";
        libraryHaskellDepends = [
          base bound deepseq hashable transformers
        ];
@@ -43315,23 +43375,24 @@ self: {
   "box" = callPackage
     ({ mkDerivation, async, attoparsec, base, concurrency
      , contravariant, dejafu, doctest, exceptions, foldl, generic-lens
-     , lens, mtl, pipes, profunctors, random, streaming, text, time
-     , transformers, transformers-base
+     , lens, managed, mtl, pipes, profunctors, protolude, random
+     , streaming, text, time, transformers, transformers-base
+     , typed-process, websockets
      }:
      mkDerivation {
        pname = "box";
-       version = "0.2.0";
-       sha256 = "0100vq8fb2lihnas6cqrigrrndzj48icsl56kdyi6vvkr9aclzm2";
+       version = "0.3.0";
+       sha256 = "1xm4dd2h8fylfadfb4gsw1vs2a5l5ngjz956zh5cnm0rdma63j14";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          async attoparsec base concurrency contravariant exceptions foldl
          lens pipes profunctors streaming text time transformers
-         transformers-base
+         transformers-base typed-process
        ];
        executableHaskellDepends = [
-         base concurrency dejafu generic-lens lens mtl random streaming text
-         transformers
+         base concurrency dejafu generic-lens lens managed mtl protolude
+         random streaming text transformers websockets
        ];
        testHaskellDepends = [ base doctest ];
        description = "boxes";
@@ -43544,8 +43605,8 @@ self: {
      }:
      mkDerivation {
        pname = "brick";
-       version = "0.52";
-       sha256 = "10734nqmmix3ddab30a02dn9sma2aywg358q156b392g0nxzv39n";
+       version = "0.52.1";
+       sha256 = "1jqs75k7r98c6k8d14arhiz49xy7k0jaymlmijx0pma3yrha90pl";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -43983,8 +44044,8 @@ self: {
        pname = "brotli";
        version = "0.0.0.0";
        sha256 = "1l9qiw5cl0k1rcnqnj9pb7vgj1b06wckkk5i73nqr15ixgcjmr9j";
-       revision = "1";
-       editedCabalFile = "0fw26rv8i9zz4qyr32paz2y0psdppdaz427jp8mpbanwmg763024";
+       revision = "2";
+       editedCabalFile = "0iny0gbb5b3a8n8rpriz7620fnhw70c0pgl615s4b1rhrnj87wrb";
        libraryHaskellDepends = [ base bytestring transformers ];
        libraryPkgconfigDepends = [ libbrotlidec libbrotlienc ];
        testHaskellDepends = [
@@ -44099,8 +44160,8 @@ self: {
      }:
      mkDerivation {
        pname = "bson";
-       version = "0.4.0.0";
-       sha256 = "0fcwqxzh678j48b04rbk7jwbnpp4859w389fb0fl7d5hvvw9kj19";
+       version = "0.4.0.1";
+       sha256 = "1xmxhq1f8v00mbq2l1sb7akzhy0gd9wcylkanpizn68wczqkdi3b";
        libraryHaskellDepends = [
          base binary bytestring cryptohash-md5 data-binary-ieee754 mtl
          network text time
@@ -44400,8 +44461,8 @@ self: {
      }:
      mkDerivation {
        pname = "buffet";
-       version = "0.3.0";
-       sha256 = "1dsnbx148yrqikqx9qfxivz52szlqaah7q6dg80m87g997x428m7";
+       version = "0.4.0";
+       sha256 = "04q4k7bfbh41jg869w71wv4idlxbpf48cz2sg5m3ds66wknnhqwq";
        isLibrary = false;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -45825,10 +45886,8 @@ self: {
     ({ mkDerivation, base, bytestring, composition-prelude, lens }:
      mkDerivation {
        pname = "bzip-signature";
-       version = "0.1.2.0";
-       sha256 = "077bwh3rwig9rml5pz49m4rxbn0j9q6cv7zlc5xlhkmw6plwg4ps";
-       revision = "1";
-       editedCabalFile = "003197s08saac5azpwc4vqvs65244pvp019j9lhr76my6a98iz0f";
+       version = "0.2.0.0";
+       sha256 = "1d2k6dv2wakq51z365s37hn1k1zs785z3f01b90x2dcg6y1xgln7";
        libraryHaskellDepends = [
          base bytestring composition-prelude lens
        ];
@@ -46227,8 +46286,8 @@ self: {
      }:
      mkDerivation {
        pname = "cabal-cache";
-       version = "1.0.1.5";
-       sha256 = "0bzxpr1lalj3i4qickxpch3ky5d686k1rdba2aymhcr8g89l4m0m";
+       version = "1.0.1.8";
+       sha256 = "0yxq73bdw1ai0yv54prcxpm1ygkpa8m0jnznwm975b82qlmplynw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -46410,16 +46469,14 @@ self: {
      }:
      mkDerivation {
        pname = "cabal-file-th";
-       version = "0.2.6";
-       sha256 = "0kam97xbmsn0alqyw709fpvj7j5dhdi90n98dmg1sfr5i54gh1nw";
+       version = "0.2.7";
+       sha256 = "1pp8jk7k8nbvhy6vaxsqa7cd321yw1a3685n4fbhgb096hkrldkl";
        libraryHaskellDepends = [
          base Cabal directory pretty template-haskell
        ];
        testHaskellDepends = [ base Cabal ];
        description = "Template Haskell expressions for reading fields from a project's cabal file";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "cabal-flatpak" = callPackage
@@ -46446,6 +46503,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "cabal-flatpak_0_1_0_1" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, base, bytestring, cabal-plan
+     , containers, cryptohash-sha256, http-client, http-client-tls
+     , http-types, optparse-applicative, pathtype, shell-utility, tar
+     , text, utility-ht, zlib
+     }:
+     mkDerivation {
+       pname = "cabal-flatpak";
+       version = "0.1.0.1";
+       sha256 = "12jyzbh4xhqj6rhg9n2za5r8n4j6zdw3x5ixdh5xvw4wivfxqxq9";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         aeson aeson-pretty base bytestring cabal-plan containers
+         cryptohash-sha256 http-client http-client-tls http-types
+         optparse-applicative pathtype shell-utility tar text utility-ht
+         zlib
+       ];
+       description = "Generate a FlatPak manifest from a Cabal package description";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "cabal-fmt" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, directory
      , filepath, mtl, optparse-applicative, parsec, pretty, process
@@ -46580,21 +46660,23 @@ self: {
     ({ mkDerivation, array, async, base, base16-bytestring, binary
      , bytestring, Cabal, containers, cryptohash-sha256, deepseq
      , directory, echo, edit-distance, filepath, hackage-security
-     , hashable, HTTP, mtl, network, network-uri, parsec, pretty
-     , process, random, resolv, stm, tar, text, time, unix, zlib
+     , hashable, HTTP, lukko, mtl, network, network-uri, parsec, pretty
+     , process, random, resolv, stm, tar, text, time, transformers, unix
+     , zlib
      }:
      mkDerivation {
        pname = "cabal-install";
-       version = "3.0.0.0";
-       sha256 = "1wda29ifkn50376jidj6ihfk60a64y0bsd7lh3yw15py7a2sfcm4";
+       version = "3.2.0.0";
+       sha256 = "1c0cc256bha97aj7l0lf76l5swlnmwcqppiz8l4cl5xgba4mwmd0";
        isLibrary = false;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal filepath process ];
        executableHaskellDepends = [
          array async base base16-bytestring binary bytestring Cabal
          containers cryptohash-sha256 deepseq directory echo edit-distance
-         filepath hackage-security hashable HTTP mtl network network-uri
-         parsec pretty process random resolv stm tar text time unix zlib
+         filepath hackage-security hashable HTTP lukko mtl network
+         network-uri parsec pretty process random resolv stm tar text time
+         transformers unix zlib
        ];
        doCheck = false;
        postInstall = ''
@@ -47033,15 +47115,13 @@ self: {
      }:
      mkDerivation {
        pname = "cabal-toolkit";
-       version = "0.0.6";
-       sha256 = "0r42hvlzykmas03smsxz8484gnc1r1pan66rcv8ihibj0zw42qb4";
+       version = "0.0.7";
+       sha256 = "08im4qqrg3ribbh6rg2rk7jynnjwjgaysfvgbamanjdwqldjwx7f";
        libraryHaskellDepends = [
          base binary bytestring Cabal containers ghc template-haskell
        ];
        description = "Helper functions for writing custom Setup.hs scripts.";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "cabal-uninstall" = callPackage
@@ -47189,8 +47269,8 @@ self: {
      }:
      mkDerivation {
        pname = "cabal2spec";
-       version = "2.5";
-       sha256 = "1z6sxjgsbp0gz6rv9camkbmnazj3gn5j4wsxmmwpchv0n6vmcmzw";
+       version = "2.6";
+       sha256 = "173qiqpzcvihdv0jd0z15wgxzars0kybcyhxprmypk232c9pa48v";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base Cabal filepath time ];
@@ -48294,8 +48374,6 @@ self: {
        ];
        description = "Extensional capabilities and deriving combinators";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "capataz" = callPackage
@@ -48623,8 +48701,6 @@ self: {
        ];
        description = "A content-addressed storage";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "casa-abbreviations-and-acronyms" = callPackage
@@ -49162,6 +49238,8 @@ self: {
        pname = "cassava";
        version = "0.5.2.0";
        sha256 = "01h1zrdqb313cjd4rqm1107azzx4czqi018c2djf66a5i7ajl3dk";
+       revision = "1";
+       editedCabalFile = "1ph8rf91z4nf1ryrh9s4gd1kq98jlgk2manwddkpch8k0n9xvfk4";
        configureFlags = [ "-f-bytestring--lt-0_10_4" ];
        libraryHaskellDepends = [
          array attoparsec base bytestring containers deepseq hashable Only
@@ -50596,8 +50674,8 @@ self: {
      }:
      mkDerivation {
        pname = "character-cases";
-       version = "0.1.0.0";
-       sha256 = "1383g5fwy11h43268609n9dmvp0wqwgycn9ly8c7g8h4qpyckh38";
+       version = "0.1.0.3";
+       sha256 = "05vpi3q44ywljkbxrcx9xqxsw86dxh2ipcsbfmn55d9vkl901hry";
        libraryHaskellDepends = [
          base containers here megaparsec prettyprinter template-haskell
        ];
@@ -50605,10 +50683,8 @@ self: {
          base containers doctest Glob here megaparsec prettyprinter
          template-haskell
        ];
-       description = "Exposes subspecies types of Char. And naming cases. e.g. meaning of [a-z], [A-Z], [0-9], PascalCase, camelCase, and sneak_case.";
+       description = "Exposes subspecies types of Char. And naming cases.";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "charade" = callPackage
@@ -50709,6 +50785,36 @@ self: {
        broken = true;
      }) {};
 
+  "chart-svg" = callPackage
+    ({ mkDerivation, attoparsec, base, bifunctors, colour, containers
+     , foldl, generic-lens, javascript-bridge, JuicyPixels, lens, lucid
+     , lucid-svg, numhask-space, palette, pretty-simple, protolude
+     , scientific, scotty, tagsoup, text, text-format, time
+     , transformers, unordered-containers, wai-middleware-static
+     , web-rep
+     }:
+     mkDerivation {
+       pname = "chart-svg";
+       version = "0.0.1";
+       sha256 = "1mdvqvj5bj04vgfl7wv64kbx096hrlhwr78jxg2mdnhhzr4xciq6";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         attoparsec base bifunctors colour foldl generic-lens JuicyPixels
+         lens lucid lucid-svg numhask-space palette pretty-simple protolude
+         scientific tagsoup text text-format time transformers web-rep
+       ];
+       executableHaskellDepends = [
+         base bifunctors containers generic-lens javascript-bridge lens
+         lucid-svg numhask-space protolude scotty text transformers
+         unordered-containers wai-middleware-static web-rep
+       ];
+       description = "See readme.md";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "chart-unit" = callPackage
     ({ mkDerivation, base, colour, data-default, diagrams-lib
      , diagrams-svg, doctest, foldl, formatting, generic-lens, lens
@@ -50878,6 +50984,8 @@ self: {
        pname = "cheapskate";
        version = "0.1.1.2";
        sha256 = "17n6laihqrjn62l8qw4565nf77zkvrl68bjmc3vzr4ckqfblhdzd";
+       revision = "1";
+       editedCabalFile = "15hdlp062gv8x7giwcfbj1kfmhpj1bg7y2w4wr2yl436haxkrbmq";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -50999,19 +51107,6 @@ self: {
     ({ mkDerivation, array, base, QuickCheck, random, semigroupoids }:
      mkDerivation {
        pname = "checkers";
-       version = "0.5.4";
-       sha256 = "09g1430hjqxy01w0rgp0d03z2y8nw2zjyvfxs0kl9j0gyv57a10v";
-       libraryHaskellDepends = [
-         array base QuickCheck random semigroupoids
-       ];
-       description = "Check properties on standard classes and data structures";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "checkers_0_5_5" = callPackage
-    ({ mkDerivation, array, base, QuickCheck, random, semigroupoids }:
-     mkDerivation {
-       pname = "checkers";
        version = "0.5.5";
        sha256 = "1g16603803xzz73md1azlcpd6xz7gkwjpy66l638v6lvipdl9hr9";
        libraryHaskellDepends = [
@@ -51019,7 +51114,6 @@ self: {
        ];
        description = "Check properties on standard classes and data structures";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "checkmate" = callPackage
@@ -51202,18 +51296,22 @@ self: {
      }) {};
 
   "chimera" = callPackage
-    ({ mkDerivation, base, QuickCheck, tasty, tasty-hunit
-     , tasty-quickcheck, tasty-smallcheck, vector
+    ({ mkDerivation, adjunctions, base, distributive, gauge, mtl
+     , QuickCheck, random, tasty, tasty-hunit, tasty-quickcheck
+     , tasty-smallcheck, vector
      }:
      mkDerivation {
        pname = "chimera";
-       version = "0.3.0.0";
-       sha256 = "0zdfh9vmhy006n6vkpkvycl5m90z1w8060dzvi0p28z7lhffb2ld";
-       libraryHaskellDepends = [ base vector ];
+       version = "0.3.1.0";
+       sha256 = "09dk9x2har2k6apm1wlm2k5k97jf3qxy4rzx94rbfmhs5fhz0i99";
+       libraryHaskellDepends = [
+         adjunctions base distributive mtl vector
+       ];
        testHaskellDepends = [
          base QuickCheck tasty tasty-hunit tasty-quickcheck tasty-smallcheck
          vector
        ];
+       benchmarkHaskellDepends = [ base gauge mtl random ];
        description = "Lazy infinite streams with O(1) indexing";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -51618,6 +51716,8 @@ self: {
        pname = "chs-cabal";
        version = "0.1.1.0";
        sha256 = "0zan47md9zivzc1gd1j1g0200n8d0ffx4dcmkd9vriqjsdwhqvl5";
+       revision = "1";
+       editedCabalFile = "04fh1g2wfm69hz1hjg4ds2c3npdx6z2mgwddlkqr2sdbnngnmv10";
        libraryHaskellDepends = [ base Cabal chs-deps ];
        description = "Cabal with c2hs dependencies";
        license = stdenv.lib.licenses.bsd3;
@@ -52516,8 +52616,6 @@ self: {
        executableHaskellDepends = [ base ];
        description = "CAES Language for Synchronous Hardware";
        license = stdenv.lib.licenses.bsd2;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "clash-lib" = callPackage
@@ -52551,8 +52649,6 @@ self: {
        ];
        description = "CAES Language for Synchronous Hardware - As a Library";
        license = stdenv.lib.licenses.bsd2;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "clash-multisignal" = callPackage
@@ -53163,8 +53259,6 @@ self: {
        ];
        description = "Keep your home dir clean by finding old conf files";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "clean-unions" = callPackage
@@ -54546,8 +54640,8 @@ self: {
      }:
      mkDerivation {
        pname = "cobot";
-       version = "0.1.1.0";
-       sha256 = "17cl8dh4y7wyas6afslb1d27ibjc2633dcyx6pc6zng2p36m83l9";
+       version = "0.1.1.1";
+       sha256 = "12bq23am5q0cb58sgifdihc53rwg91m1wvkyr06nkjddh8vgfc3g";
        libraryHaskellDepends = [
          array base bytestring containers deepseq lens linear megaparsec mtl
          split template-haskell text
@@ -54572,8 +54666,8 @@ self: {
      }:
      mkDerivation {
        pname = "cobot-io";
-       version = "0.1.2.8";
-       sha256 = "1snq2ypf7blknhpv86xq1n7f6a9pifd77yylsirqj358j590c4i6";
+       version = "0.1.3.1";
+       sha256 = "1b64ixkcagcx8d7y5nym9njllndbbb108cp1k31qr4p6yijyw15m";
        libraryHaskellDepends = [
          array attoparsec base binary bytestring containers data-msgpack
          deepseq http-conduit hyraxAbif lens linear mtl split text vector
@@ -54850,8 +54944,6 @@ self: {
        ];
        description = "A ctags file generator for cabal project dependencies";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "codo-notation" = callPackage
@@ -56780,8 +56872,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "composition-prelude";
-       version = "2.0.5.0";
-       sha256 = "1iiqv3wkkqijdg9nxmc8c539wflc5yhp9b9d0g5nfkg01s376c98";
+       version = "3.0.0.0";
+       sha256 = "14dpxpcbpchlppx64k3i7rwq94f1x4vvnd0d6bnwfcpw46hbjlsl";
        libraryHaskellDepends = [ base ];
        description = "Higher-order function combinators";
        license = stdenv.lib.licenses.bsd3;
@@ -57471,8 +57563,6 @@ self: {
        testHaskellDepends = [ base containers random stm ];
        description = "Concurrent resource map";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "concurrent-rpc" = callPackage
@@ -57728,34 +57818,6 @@ self: {
      }:
      mkDerivation {
        pname = "conduit";
-       version = "1.3.1.2";
-       sha256 = "12c21vrij63z60y3xd0dkg0da8sdhfq6nj5s3p5qknys5klwpqkq";
-       libraryHaskellDepends = [
-         base bytestring directory exceptions filepath mono-traversable mtl
-         primitive resourcet text transformers unix unliftio-core vector
-       ];
-       testHaskellDepends = [
-         base bytestring containers directory exceptions filepath hspec
-         mono-traversable mtl QuickCheck resourcet safe silently split text
-         transformers unliftio vector
-       ];
-       benchmarkHaskellDepends = [
-         base containers deepseq gauge hspec kan-extensions mwc-random
-         transformers vector
-       ];
-       description = "Streaming data processing library";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "conduit_1_3_2" = callPackage
-    ({ mkDerivation, base, bytestring, containers, deepseq, directory
-     , exceptions, filepath, gauge, hspec, kan-extensions
-     , mono-traversable, mtl, mwc-random, primitive, QuickCheck
-     , resourcet, safe, silently, split, text, transformers, unix
-     , unliftio, unliftio-core, vector
-     }:
-     mkDerivation {
-       pname = "conduit";
        version = "1.3.2";
        sha256 = "0vmcyi3f280b6ll6pcyma4aqrl6m69n6y6x7wplxgsmxz5q7kng3";
        libraryHaskellDepends = [
@@ -57773,7 +57835,6 @@ self: {
        ];
        description = "Streaming data processing library";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "conduit-algorithms" = callPackage
@@ -57972,34 +58033,6 @@ self: {
      }:
      mkDerivation {
        pname = "conduit-extra";
-       version = "1.3.4";
-       sha256 = "1d853d39vj5pb8yxfcsnjwdzqzkm34ixzbnba8bslpihb7182wxi";
-       libraryHaskellDepends = [
-         async attoparsec base bytestring conduit directory filepath network
-         primitive process resourcet stm streaming-commons text transformers
-         typed-process unliftio-core
-       ];
-       testHaskellDepends = [
-         async attoparsec base bytestring bytestring-builder conduit
-         directory exceptions filepath hspec process QuickCheck resourcet
-         stm streaming-commons text transformers transformers-base
-       ];
-       benchmarkHaskellDepends = [
-         base bytestring bytestring-builder conduit gauge transformers
-       ];
-       description = "Batteries included conduit: adapters for common libraries";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "conduit-extra_1_3_5" = callPackage
-    ({ mkDerivation, async, attoparsec, base, bytestring
-     , bytestring-builder, conduit, directory, exceptions, filepath
-     , gauge, hspec, network, primitive, process, QuickCheck, resourcet
-     , stm, streaming-commons, text, transformers, transformers-base
-     , typed-process, unliftio-core
-     }:
-     mkDerivation {
-       pname = "conduit-extra";
        version = "1.3.5";
        sha256 = "1n8js1y1rdswvp0bkjmmz19fag19bdxgwsrqz93yc09w43p8sr4a";
        libraryHaskellDepends = [
@@ -58017,7 +58050,6 @@ self: {
        ];
        description = "Batteries included conduit: adapters for common libraries";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "conduit-find" = callPackage
@@ -58564,8 +58596,6 @@ self: {
        ];
        description = "A simple config file swapping tool";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "conffmt" = callPackage
@@ -58666,6 +58696,8 @@ self: {
        pname = "config-schema";
        version = "1.2.0.0";
        sha256 = "0lz9y2qnjc576mbl3qnhyf4c1y5f71q7f5jgv8rj7vsg855q99hm";
+       revision = "1";
+       editedCabalFile = "1hlk2syn4z5zzvdc8nr3wprdpbmcjyp77spdzvyma626931m8p3a";
        libraryHaskellDepends = [
          base config-value containers free kan-extensions pretty
          semigroupoids text transformers
@@ -58698,8 +58730,8 @@ self: {
        pname = "config-value";
        version = "0.7.0.1";
        sha256 = "0r7qylqmdvif75ylb0d0zryl2ghxl3ip9a2jhyq70aqxwdjh18g4";
-       revision = "1";
-       editedCabalFile = "10rdyg984dkd0xq9z54300wkkgl7zfj4l8bi4vlplvw6jh65v36c";
+       revision = "2";
+       editedCabalFile = "1kwn53qb7hzjgkk9fh8mabyhxjm5rkw9qapk16isx1s4vns8x9l6";
        libraryHaskellDepends = [ array base pretty text ];
        libraryToolDepends = [ alex happy ];
        testHaskellDepends = [ base text ];
@@ -58713,6 +58745,8 @@ self: {
        pname = "config-value-getopt";
        version = "0.1.1.1";
        sha256 = "103afdadsh7vqfam61mixk0l2fxy41m0451bl2hl2djs3acj60b2";
+       revision = "1";
+       editedCabalFile = "1b5wfbqjjx6y8ll5h3vp2cmcdrcnjd3295y8ykd25yjx6f3swsja";
        libraryHaskellDepends = [ base config-value text ];
        description = "Interface between config-value and System.GetOpt";
        license = stdenv.lib.licenses.mit;
@@ -58882,8 +58916,6 @@ self: {
        ];
        description = "Reduced parser for configurator-ng config files";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "confsolve" = callPackage
@@ -60449,8 +60481,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-c99";
-       version = "3.1.1";
-       sha256 = "0hja6fp7n4zrhm73fvjkisspc7cyp53blhn4maqis8lw27svjq66";
+       version = "3.1.2";
+       sha256 = "1mxkn9mvcxlycrrha023nppn8005n26mqhklcw2hf8l3aq2ij7mf";
        libraryHaskellDepends = [
          base containers copilot-core directory filepath language-c99
          language-c99-simple language-c99-util mtl pretty
@@ -61137,8 +61169,8 @@ self: {
      }:
      mkDerivation {
        pname = "cpkg";
-       version = "0.2.4.6";
-       sha256 = "0ll0qxn7s29ys8w71dvfz3qy0f5rzihz0q3axg1g73pmhqbxqi2m";
+       version = "0.2.5.0";
+       sha256 = "0h2h19qld1n26vap7vmcf8fzpjgdryjd09qf0ky5smhcqq81kyrj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -61155,8 +61187,6 @@ self: {
        testHaskellDepends = [ base hspec hspec-megaparsec megaparsec ];
        description = "Build tool for C";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "cplex-hs" = callPackage
@@ -61224,6 +61254,21 @@ self: {
        license = "LGPL";
      }) {};
 
+  "cpphs_1_20_9_1" = callPackage
+    ({ mkDerivation, base, directory, polyparse, time }:
+     mkDerivation {
+       pname = "cpphs";
+       version = "1.20.9.1";
+       sha256 = "17wi7fma2qaqdm1hwgaam3fd140v9bpa8ky0wg708h1pqc5v2nbz";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base directory polyparse time ];
+       executableHaskellDepends = [ base directory polyparse time ];
+       description = "A liberalised re-implementation of cpp, the C pre-processor";
+       license = "LGPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "cprng-aes" = callPackage
     ({ mkDerivation, base, byteable, bytestring, cipher-aes, criterion
      , crypto-random, mtl
@@ -62268,6 +62313,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "cron_0_7_0" = callPackage
+    ({ mkDerivation, attoparsec, base, criterion, data-default-class
+     , hedgehog, mtl, mtl-compat, old-locale, semigroups, tasty
+     , tasty-hedgehog, tasty-hunit, text, time, transformers-compat
+     }:
+     mkDerivation {
+       pname = "cron";
+       version = "0.7.0";
+       sha256 = "0f8jb2pxy89hkdnm20yz88b3j3vgh1a9c1dxiym3150izp34ikd5";
+       libraryHaskellDepends = [
+         attoparsec base data-default-class mtl mtl-compat old-locale
+         semigroups text time
+       ];
+       testHaskellDepends = [
+         attoparsec base hedgehog semigroups tasty tasty-hedgehog
+         tasty-hunit text time transformers-compat
+       ];
+       benchmarkHaskellDepends = [ attoparsec base criterion text time ];
+       description = "Cron datatypes and Attoparsec parser";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "cron-compat" = callPackage
     ({ mkDerivation, attoparsec, base, cron, derive, hspec
      , hspec-expectations, mtl, mtl-compat, old-locale, QuickCheck, text
@@ -62333,8 +62401,8 @@ self: {
        pname = "crypt-sha512";
        version = "0";
        sha256 = "1wsma9frdrn39i506zydlzlk1ir6jh1pidqfjms8rwqjpx965gn2";
-       revision = "3";
-       editedCabalFile = "1l8glrv7bhdi0p1m1xq9majlbh8n9agai9d4mldzi5bnp5m5b79q";
+       revision = "4";
+       editedCabalFile = "0a4282bhh21l7vk79hpgcz7kj9n05r0ilgdksjkimkydg7sxgldb";
        libraryHaskellDepends = [
          attoparsec base bytestring cryptohash-sha512
        ];
@@ -62764,8 +62832,8 @@ self: {
      }:
      mkDerivation {
        pname = "cryptoconditions";
-       version = "0.2.4";
-       sha256 = "1mbi3h21xfzsripixkvakw4kp36n8jzwsyajjxwllq3nxq3lwgp0";
+       version = "0.2.5";
+       sha256 = "0p4y5irjqvd79qr1gq5v57pnyg1z4vm9pmlv9dx3v59vakz0yfcf";
        libraryHaskellDepends = [
          aeson asn1-encoding asn1-parse asn1-types base base64-bytestring
          bytestring containers cryptonite memory text
@@ -62862,8 +62930,8 @@ self: {
        pname = "cryptohash-sha1";
        version = "0.11.100.1";
        sha256 = "1aqdxdhxhl9jldh951djpwxx8z7gzaqspxl7iwpl84i5ahrsyy9w";
-       revision = "4";
-       editedCabalFile = "0qb2wasfc4dpf6f9ahvhlv8njb3p3p9iwblg4032ssi95cg85718";
+       revision = "5";
+       editedCabalFile = "1qay4qlvmwpllsqn1yd8gyraifx5ydl4chgg3dj4gzgmi36i9n0l";
        libraryHaskellDepends = [ base bytestring ];
        testHaskellDepends = [
          base base16-bytestring bytestring SHA tasty tasty-hunit
@@ -62882,8 +62950,8 @@ self: {
        pname = "cryptohash-sha256";
        version = "0.11.101.0";
        sha256 = "1p85vajcgw9hmq8zsz9krzx0vxh7aggwbg5w9ws8w97avcsn8xaj";
-       revision = "3";
-       editedCabalFile = "1arhz4y792kx439s2zv9x291gvvl2zxcfx9sq0nxsjlz7c3hpyp1";
+       revision = "4";
+       editedCabalFile = "00p6sx2n1pzykm3my68hjfk8l66g66rh7inrfcnkd5mhilqdcqxr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring ];
@@ -63336,6 +63404,44 @@ self: {
        broken = true;
      }) {};
 
+  "css-easings" = callPackage
+    ({ mkDerivation, aeson, base, blaze-markup, data-default
+     , QuickCheck, scientific, shakespeare, text
+     }:
+     mkDerivation {
+       pname = "css-easings";
+       version = "0.2.0.0";
+       sha256 = "0i969cp4j154ddq7x2821p53qh8dnsr7f74rsdi4y9rbbls1fnpv";
+       libraryHaskellDepends = [
+         aeson base blaze-markup data-default QuickCheck scientific
+         shakespeare text
+       ];
+       description = "Defining and manipulating css easing strings";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "css-selectors" = callPackage
+    ({ mkDerivation, aeson, alex, array, base, blaze-markup
+     , data-default, Decimal, happy, QuickCheck, shakespeare
+     , template-haskell, test-framework, test-framework-quickcheck2
+     , text
+     }:
+     mkDerivation {
+       pname = "css-selectors";
+       version = "0.2.0.0";
+       sha256 = "1wyc06f14nj5v5ysjly3jimja3y47pvnm8vm2knlw3sli1h0pgxi";
+       libraryHaskellDepends = [
+         aeson array base blaze-markup data-default Decimal QuickCheck
+         shakespeare template-haskell text
+       ];
+       libraryToolDepends = [ alex happy ];
+       testHaskellDepends = [
+         base QuickCheck test-framework test-framework-quickcheck2 text
+       ];
+       description = "Parsing, rendering and manipulating css selectors in Haskell";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "css-syntax" = callPackage
     ({ mkDerivation, base, criterion, deepseq, directory, hspec
      , QuickCheck, scientific, text
@@ -64386,8 +64492,8 @@ self: {
     ({ mkDerivation, base, doctest, template-haskell }:
      mkDerivation {
        pname = "d10";
-       version = "0.2.1.0";
-       sha256 = "0dbz1lil7qm0qnn1y5kakh6nyyc3jkv00125vfp9nk2n25yckb9z";
+       version = "0.2.1.2";
+       sha256 = "1y1rqx02qycw01921rrgd6daq91hnbzy35cflbl94maylvi3ryjk";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base doctest ];
        description = "Digits 0-9";
@@ -64627,8 +64733,6 @@ self: {
        '';
        description = "a distributed, interactive, smart revision control system";
        license = stdenv.lib.licenses.gpl2;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) curl;};
 
   "darcs-benchmark" = callPackage
@@ -65072,8 +65176,6 @@ self: {
        ];
        description = "Utilities for accessing and manipulating fields of records";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-accessor-transformers" = callPackage
@@ -65228,6 +65330,8 @@ self: {
        pname = "data-clist";
        version = "0.1.2.3";
        sha256 = "1mwfhnmvi3vicyjzl33m6pcipi2v887zazyqxygq258ndd010s9m";
+       revision = "1";
+       editedCabalFile = "13hg7a3d4ky8b765dl03ryxg28lq8iaqj5ky3j51r0i1i4f2a9hy";
        libraryHaskellDepends = [ base deepseq QuickCheck ];
        description = "Simple functional ring type";
        license = stdenv.lib.licenses.bsd3;
@@ -65255,8 +65359,6 @@ self: {
        libraryHaskellDepends = [ base constraints ];
        description = "Define Backwards Compatibility Schemes for Arbitrary Data";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-concurrent-queue" = callPackage
@@ -65579,6 +65681,8 @@ self: {
        pname = "data-dword";
        version = "0.3.1.3";
        sha256 = "1l4g8xbsix6xqljadfq49rs39m2lsbrfz4i7l80q0yhafbm4ax8b";
+       revision = "1";
+       editedCabalFile = "0gz9pqbi47f4dhn2c9v7y9nzgprbkbp9pd2vq5kpzj18hf53bvdm";
        libraryHaskellDepends = [
          base data-bword ghc-prim hashable template-haskell
        ];
@@ -66162,8 +66266,6 @@ self: {
        ];
        description = "A Haskell implementation of MessagePack";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-msgpack-types" = callPackage
@@ -66181,8 +66283,6 @@ self: {
        testHaskellDepends = [ base hspec QuickCheck ];
        description = "A Haskell implementation of MessagePack";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "data-named" = callPackage
@@ -66876,22 +66976,27 @@ self: {
      }) {};
 
   "datafix" = callPackage
-    ({ mkDerivation, base, Cabal, cabal-toolkit, containers, criterion
-     , deepseq, directory, doctest, filepath, ghc, ghc-paths, Glob
-     , lattices, pomaps, primitive, QuickCheck, tasty, tasty-hunit
-     , tasty-smallcheck, text, transformers, turtle, vector
+    ({ mkDerivation, base, Cabal, cabal-doctest, cabal-toolkit
+     , containers, criterion, deepseq, directory, doctest, filepath, ghc
+     , ghc-paths, lattices, pomaps, primitive, QuickCheck, tasty
+     , tasty-hunit, tasty-smallcheck, text, transformers, turtle, vector
      }:
      mkDerivation {
        pname = "datafix";
-       version = "0.0.0.2";
-       sha256 = "0z13m81cl3dnkzrl9fym9mf269lhyw4039fkqpijs024pwbvp0ni";
-       setupHaskellDepends = [ base Cabal cabal-toolkit ];
+       version = "0.0.1.0";
+       sha256 = "1rp3lwrqd8ghmjbqk22sb4mfhl13swm3vij28l5ygj2f3sb8x2zi";
+       revision = "1";
+       editedCabalFile = "0gx0knrmljam25wz2b0zpn33bw2bxfmcwq8ilxr9j8ndqxy36n6n";
+       isLibrary = true;
+       isExecutable = true;
+       setupHaskellDepends = [ base Cabal cabal-doctest cabal-toolkit ];
        libraryHaskellDepends = [
          base containers lattices pomaps primitive transformers vector
        ];
+       executableHaskellDepends = [ base containers ];
        testHaskellDepends = [
          base Cabal cabal-toolkit containers directory doctest filepath ghc
-         ghc-paths Glob lattices primitive QuickCheck tasty tasty-hunit
+         ghc-paths lattices primitive QuickCheck tasty tasty-hunit
          tasty-smallcheck text transformers turtle
        ];
        benchmarkHaskellDepends = [
@@ -67382,8 +67487,8 @@ self: {
      }:
      mkDerivation {
        pname = "dbus";
-       version = "1.2.12";
-       sha256 = "19gc1cmz8g5fmqks5rj5fwg9ihd5ras180jdv2wfgilrlrjxvx84";
+       version = "1.2.13";
+       sha256 = "0v5f2n00v1lsfkjz2isgdx4sfyg2cf9ik0nda3j13xh749bgqh38";
        libraryHaskellDepends = [
          base bytestring cereal conduit containers deepseq exceptions
          filepath lens network parsec random split template-haskell text
@@ -68172,8 +68277,8 @@ self: {
        pname = "dec";
        version = "0.0.3";
        sha256 = "1y8bvlm2371dq2v0jv1srki98nbhbz091wh0g2x58wz78h971f6r";
-       revision = "1";
-       editedCabalFile = "09dkybwqmayf2a1sn94vmmma2xfvf07bw7grhcyjm7lq9jpxv8y0";
+       revision = "2";
+       editedCabalFile = "1v5f5yby0cld1ziqqgkcx8b50qkpviplspm82a6wl7lw28cjm0hs";
        libraryHaskellDepends = [ base ];
        description = "Decidable propositions";
        license = stdenv.lib.licenses.bsd3;
@@ -68982,8 +69087,8 @@ self: {
      }:
      mkDerivation {
        pname = "dependent-map";
-       version = "0.3";
-       sha256 = "1azy6yrnd0adga4z2mlp9knbp55xhlj4v9c3rb2lr1sd2l8cgf80";
+       version = "0.4.0.0";
+       sha256 = "0b0zhyl3wkl4kkrxvq7vwjz3gn0ndxjjgyw9cky8a6xyv190pkjk";
        libraryHaskellDepends = [
          base constraints-extras containers dependent-sum
        ];
@@ -69024,12 +69129,12 @@ self: {
      }) {};
 
   "dependent-sum" = callPackage
-    ({ mkDerivation, base, constraints-extras }:
+    ({ mkDerivation, base, constraints-extras, some }:
      mkDerivation {
        pname = "dependent-sum";
-       version = "0.6.2.0";
-       sha256 = "17xj5mfrqbhf614z25l2km5grhrxh1rfhb8h8g677sv2xgxrv82d";
-       libraryHaskellDepends = [ base constraints-extras ];
+       version = "0.7.1.0";
+       sha256 = "0aj63gvak0y4mgxndykqfg5w958hf7lp5blml2z647rjgy85bjw1";
+       libraryHaskellDepends = [ base constraints-extras some ];
        description = "Dependent sum type";
        license = stdenv.lib.licenses.publicDomain;
      }) {};
@@ -69058,16 +69163,14 @@ self: {
      }:
      mkDerivation {
        pname = "dependent-sum-template";
-       version = "0.1.0.0";
-       sha256 = "07z95f27jpdb8y01f904z0fi6kjllsbcm2zg0k1v9y8c6rwavw0f";
+       version = "0.1.0.3";
+       sha256 = "1px4dj0czdsg4lx4c09v1pil4zifrvpsndhq0hp1hrlrzb9igsy8";
        libraryHaskellDepends = [
          base dependent-sum template-haskell th-extras
        ];
        testHaskellDepends = [ base constraints-extras dependent-sum ];
        description = "Template Haskell code to generate instances of classes in dependent-sum package";
        license = stdenv.lib.licenses.publicDomain;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "depends" = callPackage
@@ -69323,23 +69426,21 @@ self: {
 
   "derive-storable-plugin" = callPackage
     ({ mkDerivation, base, criterion, deepseq, derive-storable, ghc
-     , ghc-paths, ghci, hspec, QuickCheck
+     , ghci, hspec, QuickCheck
      }:
      mkDerivation {
        pname = "derive-storable-plugin";
-       version = "0.2.2.0";
-       sha256 = "0rpwiwwz24j9bq07d89ndp61f95hjy7am2q72jxb0by7pzpy9xw0";
+       version = "0.2.3.0";
+       sha256 = "0yr9s33drw5l4ckqipqpmgrsrnm18yr4742mmyjqm3x7wai7d99q";
        libraryHaskellDepends = [ base derive-storable ghc ghci ];
        testHaskellDepends = [
-         base derive-storable ghc ghc-paths ghci hspec QuickCheck
+         base derive-storable ghc ghci hspec QuickCheck
        ];
        benchmarkHaskellDepends = [
          base criterion deepseq derive-storable
        ];
        description = "GHC core plugin supporting the derive-storable package";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "derive-topdown" = callPackage
@@ -69575,8 +69676,6 @@ self: {
        testHaskellDepends = [ base hspec ];
        description = "a simple build tool for OCaml projects";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "despair" = callPackage
@@ -69935,6 +70034,58 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "dhall_1_31_1" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, ansi-terminal, atomic-write
+     , base, bytestring, case-insensitive, cborg, cborg-json, containers
+     , contravariant, cryptonite, data-fix, deepseq, Diff, directory
+     , doctest, dotgen, either, exceptions, filepath, foldl, gauge
+     , generic-random, hashable, haskeline, http-client, http-client-tls
+     , http-types, lens-family-core, megaparsec, memory, mockery, mtl
+     , network-uri, optparse-applicative, parser-combinators, parsers
+     , pretty-simple, prettyprinter, prettyprinter-ansi-terminal
+     , profunctors, QuickCheck, quickcheck-instances, repline
+     , scientific, semigroups, serialise, special-values, spoon, tasty
+     , tasty-expected-failure, tasty-hunit, tasty-quickcheck
+     , template-haskell, text, text-manipulate, th-lift-instances
+     , transformers, transformers-compat, turtle, unordered-containers
+     , uri-encode, vector
+     }:
+     mkDerivation {
+       pname = "dhall";
+       version = "1.31.1";
+       sha256 = "18v7vvcbcm9s7slh6h43rj9yakkkxwnwgj6kv84i6qzd2j7d80mc";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson aeson-pretty ansi-terminal atomic-write base bytestring
+         case-insensitive cborg cborg-json containers contravariant
+         cryptonite data-fix deepseq Diff directory dotgen either exceptions
+         filepath hashable haskeline http-client http-client-tls http-types
+         lens-family-core megaparsec memory mtl network-uri
+         optparse-applicative parser-combinators parsers pretty-simple
+         prettyprinter prettyprinter-ansi-terminal profunctors repline
+         scientific serialise template-haskell text text-manipulate
+         th-lift-instances transformers transformers-compat
+         unordered-containers uri-encode vector
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base bytestring cborg containers data-fix deepseq directory doctest
+         either filepath foldl generic-random lens-family-core megaparsec
+         mockery prettyprinter QuickCheck quickcheck-instances scientific
+         semigroups serialise special-values spoon tasty
+         tasty-expected-failure tasty-hunit tasty-quickcheck
+         template-haskell text transformers turtle unordered-containers
+         vector
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring containers directory gauge serialise text
+       ];
+       description = "A configuration language guaranteed to terminate";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "dhall-bash" = callPackage
     ({ mkDerivation, base, bytestring, containers, dhall
      , neat-interpolation, optparse-generic, shell-escape, text
@@ -69956,6 +70107,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "dhall-bash_1_0_29" = callPackage
+    ({ mkDerivation, base, bytestring, containers, dhall
+     , neat-interpolation, optparse-generic, shell-escape, text
+     }:
+     mkDerivation {
+       pname = "dhall-bash";
+       version = "1.0.29";
+       sha256 = "0hmhk2lmqr1szrjx1kqa3zlylcblwigi6lqmkqnh0z1dh3kc1a1w";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring containers dhall neat-interpolation shell-escape
+         text
+       ];
+       executableHaskellDepends = [
+         base bytestring dhall optparse-generic text
+       ];
+       description = "Compile Dhall to Bash";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "dhall-check" = callPackage
     ({ mkDerivation, base, containers, dhall, directory, filepath
      , fsnotify, text, trifecta
@@ -70040,6 +70213,36 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "dhall-json_1_6_3" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, aeson-yaml, ansi-terminal
+     , base, bytestring, containers, dhall, exceptions, filepath
+     , optparse-applicative, prettyprinter, prettyprinter-ansi-terminal
+     , scientific, tasty, tasty-hunit, text, unordered-containers
+     , vector
+     }:
+     mkDerivation {
+       pname = "dhall-json";
+       version = "1.6.3";
+       sha256 = "1dm6lrn8nd29c8d1sp1l3jnxfxkhhqpvinrgn1hm0lcp3jgzchbb";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson aeson-pretty aeson-yaml base bytestring containers dhall
+         exceptions filepath optparse-applicative prettyprinter scientific
+         text unordered-containers vector
+       ];
+       executableHaskellDepends = [
+         aeson aeson-pretty ansi-terminal base bytestring dhall exceptions
+         optparse-applicative prettyprinter prettyprinter-ansi-terminal text
+       ];
+       testHaskellDepends = [
+         aeson base bytestring dhall tasty tasty-hunit text
+       ];
+       description = "Convert between Dhall and JSON or YAML";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "dhall-lex" = callPackage
     ({ mkDerivation, alex, array, base, bytestring, criterion, deepseq
      , hspec, hspec-dirstream, scientific
@@ -70069,8 +70272,8 @@ self: {
      }:
      mkDerivation {
        pname = "dhall-lsp-server";
-       version = "1.0.5";
-       sha256 = "1lrx0grpgzi8iv9pskn3dk0ill3x542afmz9v1h96fvb20nmknp8";
+       version = "1.0.6";
+       sha256 = "1pbxzs9axnbwqfgdz44cbaabq9v10jsk752ix8i0cz1vmwyrcnlv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -70096,8 +70299,8 @@ self: {
      }:
      mkDerivation {
        pname = "dhall-nix";
-       version = "1.1.12";
-       sha256 = "1hpy3nwn1as92v6r1qh4dp6gn9x404a8ynz1gkldcp6izyiri82h";
+       version = "1.1.13";
+       sha256 = "0sdnrhr9f29ds4zdj2qs123k44vg15r8kn8w2zwkmdabilzlgg9k";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -70191,6 +70394,36 @@ self: {
        broken = true;
      }) {};
 
+  "dhall-yaml_1_0_3" = callPackage
+    ({ mkDerivation, aeson, ansi-terminal, base, bytestring, dhall
+     , dhall-json, exceptions, HsYAML, HsYAML-aeson
+     , optparse-applicative, prettyprinter, prettyprinter-ansi-terminal
+     , tasty, tasty-expected-failure, tasty-hunit, text, vector
+     }:
+     mkDerivation {
+       pname = "dhall-yaml";
+       version = "1.0.3";
+       sha256 = "1lnxp2wqbgzg5f2kadhnbd8i5zgwy3g1nz17mmbdqwlx30p4scdn";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring dhall dhall-json HsYAML HsYAML-aeson
+         optparse-applicative text vector
+       ];
+       executableHaskellDepends = [
+         aeson ansi-terminal base bytestring dhall dhall-json exceptions
+         optparse-applicative prettyprinter prettyprinter-ansi-terminal text
+       ];
+       testHaskellDepends = [
+         base bytestring dhall dhall-json tasty tasty-expected-failure
+         tasty-hunit text
+       ];
+       description = "Convert between Dhall and YAML";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "dhcp-lease-parser" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, chronos, ip, tasty
      , tasty-hunit, text
@@ -70970,8 +71203,6 @@ self: {
        libraryHaskellDepends = [ base parsec random-fu transformers ];
        description = "Simplistic D&D style dice-rolling system";
        license = stdenv.lib.licenses.publicDomain;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "dice-entropy-conduit" = callPackage
@@ -71587,6 +71818,8 @@ self: {
        pname = "digraph";
        version = "0.1.0.2";
        sha256 = "1kkvihqg3rhhsqz25yq7np211813kf3xqqi27lpdf1kdmq8vvf80";
+       revision = "1";
+       editedCabalFile = "0q9q9xr765ym535mwh3ji94y23mr9fxmrcwij439n6rgr4spwqi5";
        libraryHaskellDepends = [
          base containers deepseq hashable massiv mwc-random streaming
          transformers unordered-containers
@@ -71975,12 +72208,12 @@ self: {
        broken = true;
      }) {};
 
-  "directory_1_3_6_0" = callPackage
+  "directory_1_3_6_1" = callPackage
     ({ mkDerivation, base, filepath, time, unix }:
      mkDerivation {
        pname = "directory";
-       version = "1.3.6.0";
-       sha256 = "1fxgha63sw3zc3hv4qswk595alxkhl4nikip9ab46ni4m83hyvmf";
+       version = "1.3.6.1";
+       sha256 = "00cr2sshzjmn57rpvjj8wvgr60x2mk8c7w1nd40wxqs8s9xaa1bi";
        libraryHaskellDepends = [ base filepath time unix ];
        testHaskellDepends = [ base filepath time unix ];
        description = "Platform-agnostic library for filesystem operations";
@@ -72185,8 +72418,8 @@ self: {
      }:
      mkDerivation {
        pname = "discord-haskell";
-       version = "1.4.0";
-       sha256 = "1011zrn5axjm44zmnj21q3w33pwwkciici2zf2sqz2plvkxn4c1w";
+       version = "1.5.0";
+       sha256 = "1449ap68c917z1318wg67cv7yk7cmfr61m0ikbf132gzsfyx69kv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -72198,8 +72431,6 @@ self: {
        executableHaskellDepends = [ base text ];
        description = "Write bots for Discord in Haskell";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "discord-hs" = callPackage
@@ -73396,28 +73627,6 @@ self: {
      }:
      mkDerivation {
        pname = "dl-fedora";
-       version = "0.7.3";
-       sha256 = "095wmsflwm4wqlvk2h7s64nqacha8did10av9n52pj3kcwczqx2i";
-       isLibrary = false;
-       isExecutable = true;
-       executableHaskellDepends = [
-         base bytestring directory filepath http-directory http-types
-         optparse-applicative regex-posix simple-cmd simple-cmd-args text
-         time unix xdg-userdirs
-       ];
-       description = "Fedora image download tool";
-       license = stdenv.lib.licenses.gpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
-     }) {};
-
-  "dl-fedora_0_7_4" = callPackage
-    ({ mkDerivation, base, bytestring, directory, filepath
-     , http-directory, http-types, optparse-applicative, regex-posix
-     , simple-cmd, simple-cmd-args, text, time, unix, xdg-userdirs
-     }:
-     mkDerivation {
-       pname = "dl-fedora";
        version = "0.7.4";
        sha256 = "092fmla7a0xbnfac6izcj08wsyxbd04n23cjy33c132lqhs5k6w5";
        isLibrary = false;
@@ -73445,6 +73654,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "dlist_0_8_0_8" = callPackage
+    ({ mkDerivation, base, Cabal, deepseq, QuickCheck }:
+     mkDerivation {
+       pname = "dlist";
+       version = "0.8.0.8";
+       sha256 = "0va9xk8g2iag24x042q3w6z77xdqd91112kh0piq8cwd0qccyabi";
+       libraryHaskellDepends = [ base deepseq ];
+       testHaskellDepends = [ base Cabal QuickCheck ];
+       description = "Difference lists";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "dlist-instances" = callPackage
     ({ mkDerivation, base, dlist, semigroups }:
      mkDerivation {
@@ -73465,8 +73687,8 @@ self: {
        pname = "dlist-nonempty";
        version = "0.1.1";
        sha256 = "0csbspdy43pzvasb5mhs5pz2f49ws78pi253cx7pp84wjx6ads20";
-       revision = "7";
-       editedCabalFile = "0cp5v4zfkx7mz8cc8hgjx0v0a37y4fnld3r59i6mb00ilzrh1nhk";
+       revision = "8";
+       editedCabalFile = "134fcrv7lmbhzmgp07vp3fdjbbjrkkracvjf6ma5k2fwcw0wfkff";
        libraryHaskellDepends = [
          base base-compat deepseq dlist semigroupoids
        ];
@@ -73735,8 +73957,8 @@ self: {
      }:
      mkDerivation {
        pname = "dobutokO2";
-       version = "0.15.1.0";
-       sha256 = "1r2zwwcbkm07g1lrypdg3aj4qhyy3g7fds042i4l5abs045aqa2l";
+       version = "0.22.1.0";
+       sha256 = "1mx1q8z5a950ji8nnmw2jcarqadlkm58qszzyz0hh31rni26p1k5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -74069,13 +74291,14 @@ self: {
 
   "doctest" = callPackage
     ({ mkDerivation, base, base-compat, code-page, deepseq, directory
-     , filepath, ghc, ghc-paths, hspec, HUnit, mockery, process
-     , QuickCheck, setenv, silently, stringbuilder, syb, transformers
+     , filepath, ghc, ghc-paths, hspec, hspec-core, HUnit, mockery
+     , process, QuickCheck, setenv, silently, stringbuilder, syb
+     , transformers
      }:
      mkDerivation {
        pname = "doctest";
-       version = "0.16.2";
-       sha256 = "0lk4cjfzi5bx2snfzw1zi06li0gvgz3ckfh2kwa98l7nxfdl39ag";
+       version = "0.16.3";
+       sha256 = "1y1l7aa80qkib1z8lsizgg7fpfdmdwhxvi5m255a42jdkjgn5sfg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -74088,7 +74311,7 @@ self: {
        ];
        testHaskellDepends = [
          base base-compat code-page deepseq directory filepath ghc ghc-paths
-         hspec HUnit mockery process QuickCheck setenv silently
+         hspec hspec-core HUnit mockery process QuickCheck setenv silently
          stringbuilder syb transformers
        ];
        description = "Test interactive Haskell examples";
@@ -75198,8 +75421,8 @@ self: {
      }:
      mkDerivation {
        pname = "drone";
-       version = "1.0.1";
-       sha256 = "1qhgikixnzsqyywxnrgl2099klcxk17djbbz23hxvxmibay1pm8w";
+       version = "1.1.0";
+       sha256 = "0c0xinvr36mmwk9kl970ya53w4z4v6scpxxa9i3lwjjnkcadp9kp";
        libraryHaskellDepends = [
          base bytestring containers extensible formatting microlens req text
        ];
@@ -76742,11 +76965,11 @@ self: {
      }:
      mkDerivation {
        pname = "eccrypto";
-       version = "0.2.1";
-       sha256 = "181c8avf0k8377n0z8qm3v7dnqg01z1gp5zwhcrk8khb3h4d4rp7";
+       version = "0.2.2";
+       sha256 = "1avzxzzlhldpjp6k14jirx3ws5818bpsip9p0wj6kl1g3ii7ydjz";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         base bytestring cryptohash-sha512 integer-gmp random
+         base bytestring cryptohash-sha512 integer-gmp
        ];
        testHaskellDepends = [ base base16-bytestring bytestring Cabal ];
        benchmarkHaskellDepends = [ base bytestring criterion random ];
@@ -76758,8 +76981,8 @@ self: {
     ({ mkDerivation, base, bytestring, eccrypto }:
      mkDerivation {
        pname = "eccrypto-ed25519-bindings";
-       version = "0.1.1.0";
-       sha256 = "1yzalib6a5h7k7bhc9kzr2lqhd928yva3j2mxynx3lmw26jc5r17";
+       version = "0.1.2.0";
+       sha256 = "1j2h568k2j8kpclvam3hghi13ddyas5d7c8nf469gwr80wmnyqxs";
        libraryHaskellDepends = [ base bytestring eccrypto ];
        description = "provides \"ed25519\" API using \"eccrypto\"";
        license = stdenv.lib.licenses.bsd3;
@@ -77442,8 +77665,6 @@ self: {
        testToolDepends = [ tasty-discover ];
        description = "Parser and pretty printer for Egison pattern expressions to use with TH";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "egison-quote" = callPackage
@@ -77583,6 +77804,8 @@ self: {
        pname = "either";
        version = "5.0.1.1";
        sha256 = "09yzki8ss56xhy9vggdw1rls86b2kf55hjl5wi0vbv02d8fxahq2";
+       revision = "1";
+       editedCabalFile = "03bgnq55lc6f1nx4p662gidfsyyfm3xm4fi84h77wnsppxrpa5j1";
        libraryHaskellDepends = [
          base bifunctors mtl profunctors semigroupoids
        ];
@@ -77615,8 +77838,6 @@ self: {
        testHaskellDepends = [ base doctest ];
        description = "Functions involving lists of Either";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "either-unwrap" = callPackage
@@ -77661,8 +77882,6 @@ self: {
        ];
        description = "Remote monitoring of processes";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "ekg-bosun" = callPackage
@@ -77717,8 +77936,6 @@ self: {
        ];
        description = "An ekg backend for Amazon Cloudwatch";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "ekg-core" = callPackage
@@ -77788,8 +78005,6 @@ self: {
        ];
        description = "An EKG backend to send statistics to influxdb";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "ekg-json" = callPackage
@@ -77806,8 +78021,6 @@ self: {
        ];
        description = "JSON encoding of ekg metrics";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "ekg-log" = callPackage
@@ -77903,8 +78116,6 @@ self: {
        ];
        description = "Push metrics to statsd";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "ekg-wai" = callPackage
@@ -78050,6 +78261,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "eliminators_0_7" = callPackage
+    ({ mkDerivation, base, extra, hspec, hspec-discover, singleton-nats
+     , singletons, template-haskell, th-abstraction, th-desugar
+     }:
+     mkDerivation {
+       pname = "eliminators";
+       version = "0.7";
+       sha256 = "1h3h0f7s0gjbza7lij8y2pg5hl6zrf8cqslh5f0hpwnfxh3yls6v";
+       libraryHaskellDepends = [
+         base extra singleton-nats singletons template-haskell
+         th-abstraction th-desugar
+       ];
+       testHaskellDepends = [ base hspec singleton-nats singletons ];
+       testToolDepends = [ hspec-discover ];
+       description = "Dependently typed elimination functions using singletons";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "elision" = callPackage
     ({ mkDerivation, base, profunctors }:
      mkDerivation {
@@ -78579,8 +78809,6 @@ self: {
        testHaskellDepends = [ base directory filepath tasty tasty-hunit ];
        description = "A tiny language for understanding the lambda-calculus";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "elynx-seq" = callPackage
@@ -79348,8 +79576,8 @@ self: {
      }:
      mkDerivation {
        pname = "enum-text";
-       version = "0.5.1.0";
-       sha256 = "0v48hmxbpzjpclg1q0avrc1dp4giglbxy2rkqnbj4f0sprp03kff";
+       version = "0.5.2.1";
+       sha256 = "16wvizrbf6n2i0s4318065i39qhp94p6jy4vappd05mlmmwiccam";
        libraryHaskellDepends = [
          array base bytestring fmt hashable possibly text time
          unordered-containers
@@ -79931,8 +80159,8 @@ self: {
      }:
      mkDerivation {
        pname = "equational-reasoning";
-       version = "0.6.0.1";
-       sha256 = "0al3ms7gxd1ws8bs694h7ka2rg9kn3v36qgwrxm2hq4ys80y7r65";
+       version = "0.6.0.2";
+       sha256 = "0zahv50jnbaaiwa7gy7w901fyqjk816gcd3fx9km0nacsjrgal4v";
        libraryHaskellDepends = [
          base containers template-haskell th-desugar th-extras void
        ];
@@ -80562,8 +80790,8 @@ self: {
      }:
      mkDerivation {
        pname = "esqueleto";
-       version = "3.3.1.1";
-       sha256 = "1qi28ma8j5kfygjxnixlazxsyrkdqv8ljz3icwqi5dlscsnj6v3v";
+       version = "3.3.3.0";
+       sha256 = "19zzqmaciski4ara41djkh1df17nzqw2nfwzc81zv6d3pylaznq1";
        libraryHaskellDepends = [
          aeson attoparsec base blaze-html bytestring conduit containers
          monad-logger persistent resourcet tagged text time transformers
@@ -81449,8 +81677,8 @@ self: {
      }:
      mkDerivation {
        pname = "eventlog2html";
-       version = "0.6.0";
-       sha256 = "06v2g84hxcc7w4idhkfdix3c2yk9qdx91ys83abn7z7jjc24x2hs";
+       version = "0.7.0";
+       sha256 = "045ihz620xv6qhic3vy257g59l1ly2sld6dcnq28xblsf461krv1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -81598,8 +81826,8 @@ self: {
      }:
      mkDerivation {
        pname = "eventstore";
-       version = "1.4.0";
-       sha256 = "0p7xfvdm4bjdp23f1ikfyq1gbylxav6b3wmbxhmscmzai396al12";
+       version = "1.4.1";
+       sha256 = "1d8lai7ra0r8mlfwnyvf9bhx7n4y9qzvj1sc96x3fh8xf79qd8mj";
        libraryHaskellDepends = [
          aeson array base bifunctors bytestring cereal clock connection
          containers dns dotnet-timespan exceptions fast-logger hashable
@@ -81902,6 +82130,8 @@ self: {
        pname = "exceptions";
        version = "0.10.4";
        sha256 = "1kw4pmx7j7zwbdwm0dyn9rcs6kp4byfxy48861yxdz6gam1zn2sd";
+       revision = "1";
+       editedCabalFile = "0b5m01nmaqzvvm1d07b3dnmcn47pmy943lydb2m7ibhilqkfya8p";
        libraryHaskellDepends = [
          base mtl stm template-haskell transformers
        ];
@@ -82631,8 +82861,8 @@ self: {
     ({ mkDerivation, base, leancheck, template-haskell }:
      mkDerivation {
        pname = "express";
-       version = "0.1.2";
-       sha256 = "0i6dh1kpadhh4faanmkszdq1bbsdyl2ngbyrwv7pb8kb3wqc4y6y";
+       version = "0.1.3";
+       sha256 = "09g7i6x553gv5jkhbn5ffsrxznx8g4b3fcn1gibwyh380pbss8x1";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base leancheck ];
        benchmarkHaskellDepends = [ base leancheck ];
@@ -82699,8 +82929,8 @@ self: {
      }:
      mkDerivation {
        pname = "expresso";
-       version = "0.1.2.2";
-       sha256 = "1fa37bqyw8zlva3z6sj10sp4r7sslh4xakrmr7d5diqynyrgdjax";
+       version = "0.1.2.3";
+       sha256 = "1kbvwd51whmqgis8c4adl5mdbjpcvzm9ya6jb3ka9w8ciiyh80v8";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -82796,10 +83026,8 @@ self: {
      }:
      mkDerivation {
        pname = "extended-reals";
-       version = "0.2.3.0";
-       sha256 = "170nxxza6lkczh05qi2qxr8nbr3gmdjpfvl1m703gjq9xwrwg2kw";
-       revision = "4";
-       editedCabalFile = "1gzi55w9kpfg51njyi3a28n7nc64chzgnv76m3xyrz7z0gbri93q";
+       version = "0.2.4.0";
+       sha256 = "19df7zlm8kisihmnpg3ni5qg4p0vkilsny0ngch0b8b0pr56cb0c";
        libraryHaskellDepends = [ base deepseq hashable ];
        testHaskellDepends = [
          base deepseq HUnit QuickCheck tasty tasty-hunit tasty-quickcheck
@@ -84040,8 +84268,8 @@ self: {
      }:
      mkDerivation {
        pname = "fay";
-       version = "0.24.0.5";
-       sha256 = "05wm3zp41xgx0s9p0wmy9rqk9ii6wcxsr3jrcqqrnlpbp90dwfxx";
+       version = "0.24.1.0";
+       sha256 = "0cihrggbxmjfz34kbf7nbzn20v2sapfjql6hc5m68rbiiysb8jk3";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -84381,8 +84609,8 @@ self: {
     ({ mkDerivation, base, doctest, first-class-families, Glob }:
      mkDerivation {
        pname = "fcf-containers";
-       version = "0.4.0";
-       sha256 = "1qdcp2mympq8w49j9dfrl5sdkyhiyg3p8nr8568x12ham0jpar9l";
+       version = "0.5.0";
+       sha256 = "0j4ij4iw5axjp56zhxb3kn6ls1l8m2ckqx6620y1yjhz3ja608f2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base first-class-families ];
@@ -84692,8 +84920,8 @@ self: {
      }:
      mkDerivation {
        pname = "feed";
-       version = "1.3.0.0";
-       sha256 = "19xqkx8ars0sjana18m34d7qg9l0qbg1i3v14a5rqabdppzcfrp2";
+       version = "1.3.0.1";
+       sha256 = "0fdylvbrjlshgx398xpxx3y7mnrmpi1l2534mcv299afpm91yqcj";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          base base-compat bytestring old-locale old-time safe text time
@@ -85335,8 +85563,8 @@ self: {
        pname = "ffunctor";
        version = "1.2.0";
        sha256 = "0rq60a7ximvqdxqvijw1isd1d5gwqbjagmws91y0jvxlwmsgzf6w";
-       revision = "1";
-       editedCabalFile = "0biwzy37ig69s7l4x2cp0p71w3fn1azfd81vsj39fzn4kpcrpgld";
+       revision = "2";
+       editedCabalFile = "1mwddp63jdgfzhdcyqs77nv5lsbaw4gj63gcihimfmj5qxlx7zpk";
        libraryHaskellDepends = [ base transformers ];
        testHaskellDepends = [
          aeson base exceptions generic-lens http-client mtl servant
@@ -85503,8 +85731,6 @@ self: {
        ];
        description = "Abusing monadic syntax JSON objects generation";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "fieldwise" = callPackage
@@ -85590,8 +85816,8 @@ self: {
        pname = "file-embed-lzma";
        version = "0";
        sha256 = "0xqcgx4ysyjqrygnfabs169y4w986kwzvsaqh64h7x3wfi7z8v78";
-       revision = "4";
-       editedCabalFile = "19z355zylpsqsfihldbda6lwrdj5divfhhnc24ryzvi384dw74lx";
+       revision = "5";
+       editedCabalFile = "1rkya7m491b3asfhpygwz97gzfh46f9h1bi6b4isbslpj50k2h6l";
        libraryHaskellDepends = [
          base base-compat bytestring directory filepath lzma
          template-haskell text th-lift-instances transformers
@@ -85658,8 +85884,23 @@ self: {
        ];
        description = "Takes a Haskell source-code file and outputs its modules";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
+     }) {};
+
+  "file-path-th" = callPackage
+    ({ mkDerivation, base, directory, file-embed, filepath
+     , template-haskell
+     }:
+     mkDerivation {
+       pname = "file-path-th";
+       version = "0.1.0.0";
+       sha256 = "15v2jlif4qrzl3xqkicqd71rx7n9916zip44yk0j7gsnyrwrr7p5";
+       revision = "1";
+       editedCabalFile = "0v1hfgw2sqscbxlzidqzdljz92mihydk765370sq6hmjiw98a5fk";
+       libraryHaskellDepends = [
+         base directory file-embed filepath template-haskell
+       ];
+       description = "Template Haskell utilities for filepaths";
+       license = stdenv.lib.licenses.mit;
      }) {};
 
   "file-templates" = callPackage
@@ -85898,8 +86139,8 @@ self: {
        pname = "filesystem-abstractions";
        version = "0";
        sha256 = "1qrxc8q10fqd7b0ss84nykz8vmyjwwxw5ywxp11xabad966shl18";
-       revision = "1";
-       editedCabalFile = "0qfkiify5jgclzdz2gyml5d7rn0vinilwxgfvk0h7743lj2vj167";
+       revision = "2";
+       editedCabalFile = "1mj9ipsycs70jdgi722z04cvw7va09cr7fv78w9995pdf2n33gl0";
        libraryHaskellDepends = [
          base bytestring list-tries posix-paths semigroups
        ];
@@ -86025,6 +86266,8 @@ self: {
        pname = "fin";
        version = "0.1.1";
        sha256 = "0zwc8x2ilbk1bhsk85brf6g300cx4w2j3602gjh6rv900961gqri";
+       revision = "2";
+       editedCabalFile = "1x446k44pci81dakzd98vrj6amj10xkb05k7g2qwk0ir1hdj5sfz";
        libraryHaskellDepends = [ base dec deepseq hashable QuickCheck ];
        testHaskellDepends = [ base inspection-testing tagged ];
        description = "Nat and Fin: peano naturals and finite numbers";
@@ -86535,8 +86778,8 @@ self: {
      }:
      mkDerivation {
        pname = "fitspec";
-       version = "0.4.7";
-       sha256 = "0ski62ndgl5ay9kbgx2v590pvfsn0wn0cx9h70fhvcrlsam01p5q";
+       version = "0.4.8";
+       sha256 = "01xfchs98xy5436kchzysnvwgm00s2srsn5xyxx3r04pzzb5cbd9";
        libraryHaskellDepends = [
          base cmdargs leancheck template-haskell
        ];
@@ -86613,8 +86856,8 @@ self: {
      }:
      mkDerivation {
        pname = "fixed-length";
-       version = "0.2.1";
-       sha256 = "0jabfv9ga94maw35a7xdw5lwi55d7z92nn2zs2c8z3jk0a4bcld1";
+       version = "0.2.2";
+       sha256 = "1bx46n11k9dpr5hhfhxiwdd5npaqf9xwvqvjd0nlbylfmsmgd14y";
        libraryHaskellDepends = [
          base non-empty storable-record tfp utility-ht
        ];
@@ -90192,6 +90435,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "freetype2_0_2_0" = callPackage
+    ({ mkDerivation, base, template-haskell }:
+     mkDerivation {
+       pname = "freetype2";
+       version = "0.2.0";
+       sha256 = "1fdzhm6lcb6bxgza5z41925a75xdi19lwqw6vas1s2y130x3zfam";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base template-haskell ];
+       description = "Haskell bindings for FreeType 2 library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "french-cards" = callPackage
     ({ mkDerivation, base, hspec, HUnit }:
      mkDerivation {
@@ -90362,8 +90620,8 @@ self: {
     ({ mkDerivation, array, base, containers, fail, mtl, semigroups }:
      mkDerivation {
        pname = "frisby";
-       version = "0.2.3";
-       sha256 = "1bcdrjvd6cpq1361m8ipf1z6yp3gqiaixkl8gxgmg6ky1lsiljhn";
+       version = "0.2.4";
+       sha256 = "02dywihwkyk80viny3lq213qia2ksaylk7gphjiq0jzx9smswgyb";
        libraryHaskellDepends = [
          array base containers fail mtl semigroups
        ];
@@ -90404,8 +90662,8 @@ self: {
      }:
      mkDerivation {
        pname = "front";
-       version = "0.0.0.5";
-       sha256 = "0gn5lrh817r9ky8j4kzrqdlisiy85gr6v7nyd2sj1psa8syrjfzk";
+       version = "0.0.0.6";
+       sha256 = "0380d9c9mv8jp04igjm4h9njijgc18x34xg13d5pgm7f5yz8aipk";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -91623,6 +91881,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "fused-effects-readline" = callPackage
+    ({ mkDerivation, base, directory, filepath, fused-effects
+     , haskeline, prettyprinter, prettyprinter-ansi-terminal
+     , terminal-size, transformers
+     }:
+     mkDerivation {
+       pname = "fused-effects-readline";
+       version = "0.0.0.0";
+       sha256 = "089f6b3y48ymhd45x1rxmimrwjygkjk3ykhz6nx7cf235d3cg83l";
+       libraryHaskellDepends = [
+         base directory filepath fused-effects haskeline prettyprinter
+         prettyprinter-ansi-terminal terminal-size transformers
+       ];
+       testHaskellDepends = [ base ];
+       description = "A readline-like effect and carrier for fused-effects";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "fused-effects-resumable" = callPackage
     ({ mkDerivation, base, deepseq, fused-effects, transformers }:
      mkDerivation {
@@ -91709,8 +91985,8 @@ self: {
      }:
      mkDerivation {
        pname = "futhark";
-       version = "0.15.1";
-       sha256 = "181kgqbdqxcim16ld68wx09lr4gh0j9440lnn2lyzrzmn8a9567w";
+       version = "0.15.3";
+       sha256 = "067hzxvvkkz0d9sg67pswi6k061ri314vw4j979skhjibfb7g0hx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -92581,6 +92857,20 @@ self: {
        broken = true;
      }) {};
 
+  "gdelt" = callPackage
+    ({ mkDerivation, base, bytestring, hspec, megaparsec, QuickCheck
+     , text, time
+     }:
+     mkDerivation {
+       pname = "gdelt";
+       version = "0.1.0.0";
+       sha256 = "0p19363bqqyqw2lmxym1jwr6l6gr1q4ck1xp776b4xmx6drm5h09";
+       libraryHaskellDepends = [ base bytestring megaparsec text time ];
+       testHaskellDepends = [ base hspec megaparsec QuickCheck text ];
+       description = "GDELT V2 (Global Database of Events, Language, and Tone)";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "gdiff" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -93162,21 +93452,21 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "generic-data_0_8_1_0" = callPackage
+  "generic-data_0_8_2_0" = callPackage
     ({ mkDerivation, base, base-orphans, contravariant, criterion
-     , deepseq, doctest, generic-lens, Glob, one-liner, QuickCheck
-     , show-combinators, tasty, tasty-hunit
+     , deepseq, doctest, generic-lens, ghc-boot-th, Glob, one-liner
+     , QuickCheck, show-combinators, tasty, tasty-hunit
      }:
      mkDerivation {
        pname = "generic-data";
-       version = "0.8.1.0";
-       sha256 = "0hrrqxvax365yg3y7pv6k6v9x86a7hj3b85kmzky2q6f7vvqfkfb";
+       version = "0.8.2.0";
+       sha256 = "03ix1zc47baqjvwi3xqsbhbb9wrfiamlbjmahcakp2jbzmx2vy6l";
        libraryHaskellDepends = [
-         base base-orphans contravariant show-combinators
+         base base-orphans contravariant ghc-boot-th show-combinators
        ];
        testHaskellDepends = [
-         base doctest generic-lens Glob one-liner QuickCheck tasty
-         tasty-hunit
+         base doctest generic-lens Glob one-liner QuickCheck
+         show-combinators tasty tasty-hunit
        ];
        benchmarkHaskellDepends = [ base criterion deepseq ];
        description = "Deriving instances with GHC.Generics and related utilities";
@@ -93335,6 +93625,8 @@ self: {
        pname = "generic-lens-lite";
        version = "0.1";
        sha256 = "07z00phy6h50bb4axlr57kin9l5fygi4q4j33rj5180ai2cbcpc6";
+       revision = "1";
+       editedCabalFile = "1gbl0kmc77yjvn63cgdsifhzyd54g1v1qq1pjsrhhn0hb4c8jszz";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base ];
        description = "Monomorphic field lens like with generic-lens";
@@ -93420,6 +93712,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "generic-override" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "generic-override";
+       version = "0.0.0.0";
+       sha256 = "13v5zrhhzjzm4fib5zjsp4sf1hhgx9450mmy4v12h7bgljz8xfd5";
+       libraryHaskellDepends = [ base ];
+       description = "Provides functionality for overriding instances for generic derivation";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "generic-override-aeson" = callPackage
+    ({ mkDerivation, aeson, base, generic-override, hspec, text }:
+     mkDerivation {
+       pname = "generic-override-aeson";
+       version = "0.0.0.0";
+       sha256 = "02xwssk7158k7hhh170knxn7f2s7slcp4sy7a4b3w4cn1r016bhz";
+       libraryHaskellDepends = [ aeson base generic-override ];
+       testHaskellDepends = [ aeson base generic-override hspec text ];
+       description = "Provides orphan instances necessary for integrating generic-override and aeson";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "generic-pretty" = callPackage
     ({ mkDerivation, ansi-wl-pprint, base, bytestring, containers
      , tasty, tasty-hunit, text, vector
@@ -93441,14 +93756,16 @@ self: {
      }) {};
 
   "generic-random" = callPackage
-    ({ mkDerivation, base, deepseq, QuickCheck }:
+    ({ mkDerivation, base, deepseq, inspection-testing, QuickCheck }:
      mkDerivation {
        pname = "generic-random";
-       version = "1.3.0.0";
-       sha256 = "1z62lvb0zjdy5ass2cvj442w0cbk0zi4cx6n4qm2ai4sbmgh5hzk";
+       version = "1.3.0.1";
+       sha256 = "0d9w7xcmsb31b95fr9d5jwbsajcl1yi4347dlbw4bybil2vjwd7k";
        libraryHaskellDepends = [ base QuickCheck ];
-       testHaskellDepends = [ base deepseq QuickCheck ];
-       description = "Generic random generators";
+       testHaskellDepends = [
+         base deepseq inspection-testing QuickCheck
+       ];
+       description = "Generic random generators for QuickCheck";
        license = stdenv.lib.licenses.mit;
      }) {};
 
@@ -93597,16 +93914,14 @@ self: {
 
   "generics-sop" = callPackage
     ({ mkDerivation, base, criterion, deepseq, ghc-prim, sop-core
-     , template-haskell
+     , template-haskell, th-abstraction
      }:
      mkDerivation {
        pname = "generics-sop";
-       version = "0.5.0.0";
-       sha256 = "18dkdain2g46b1637f3pbv0fkzg4b1a8frm16hfqvhpfk46i7rzc";
-       revision = "1";
-       editedCabalFile = "10zfjhcipm77zfx32ls7bc8vk3affa5v7cyphwpw93d6sfqc9wym";
+       version = "0.5.1.0";
+       sha256 = "0g0z0k5bnw3whfj3qswzhadrhg85jfn491s30cgai0ijfjm5gipa";
        libraryHaskellDepends = [
-         base ghc-prim sop-core template-haskell
+         base ghc-prim sop-core template-haskell th-abstraction
        ];
        testHaskellDepends = [ base ];
        benchmarkHaskellDepends = [
@@ -93620,10 +93935,8 @@ self: {
     ({ mkDerivation, base, generics-sop, lens }:
      mkDerivation {
        pname = "generics-sop-lens";
-       version = "0.2";
-       sha256 = "0cm3xnz5h1pxhvbgl8mm16fg8y339m6wvm6nlqmsm0jh37gvqc2a";
-       revision = "1";
-       editedCabalFile = "1ghgh91wd764firxc2s083jzr38w51fg0ry2b7s1wn71mnvzb893";
+       version = "0.2.0.1";
+       sha256 = "1yl74pz6r2zf9sspzbqg6xvr6k9b5irq3c3pjrf5ih6hfrz4k1ks";
        libraryHaskellDepends = [ base generics-sop lens ];
        description = "Lenses for types in generics-sop";
        license = stdenv.lib.licenses.bsd3;
@@ -93812,10 +94125,8 @@ self: {
     ({ mkDerivation, base, mtl, template-haskell }:
      mkDerivation {
        pname = "geniplate-mirror";
-       version = "0.7.6";
-       sha256 = "1y0m0bw5zpm1y1y6d9qmxj3swl8j8hlw1shxbr5awycf6k884ssb";
-       revision = "2";
-       editedCabalFile = "03fg4vfm1wgq4mylggawdx0bfvbbjmdn700sqx7v3hk1bx0kjfzh";
+       version = "0.7.7";
+       sha256 = "08w4rslxzv6z85qzam1yazjb6vrzcr55vsjjyjgsi86pb1a8hr3b";
        libraryHaskellDepends = [ base mtl template-haskell ];
        description = "Use Template Haskell to generate Uniplate-like functions";
        license = stdenv.lib.licenses.bsd3;
@@ -93877,27 +94188,12 @@ self: {
      }:
      mkDerivation {
        pname = "genvalidity";
-       version = "0.10.0.1";
-       sha256 = "0zyg3a0gqcdhdqy8w8ydqpcq7k6vbsb77v2dw31j2yfss1av4q2x";
-       libraryHaskellDepends = [ base QuickCheck random validity ];
-       testHaskellDepends = [ base hspec hspec-core QuickCheck ];
-       description = "Testing utilities for the validity library";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "genvalidity_0_10_0_2" = callPackage
-    ({ mkDerivation, base, hspec, hspec-core, QuickCheck, random
-     , validity
-     }:
-     mkDerivation {
-       pname = "genvalidity";
        version = "0.10.0.2";
        sha256 = "1k6pba9zal7385838b9w9ybhk5742jwfy8bqa921zi08mv7vgqlp";
        libraryHaskellDepends = [ base QuickCheck random validity ];
        testHaskellDepends = [ base hspec hspec-core QuickCheck ];
        description = "Testing utilities for the validity library";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "genvalidity-aeson" = callPackage
@@ -94512,6 +94808,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "geojson_4_0_2" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, deepseq
+     , hlint, lens, scientific, semigroups, tasty, tasty-hspec
+     , tasty-quickcheck, text, transformers, validation, vector
+     }:
+     mkDerivation {
+       pname = "geojson";
+       version = "4.0.2";
+       sha256 = "0csbg4pdh686bxk689968bi94njx78iv1sm5g6lp915pg6cfnd66";
+       libraryHaskellDepends = [
+         aeson base containers deepseq lens scientific semigroups text
+         transformers validation vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers hlint tasty tasty-hspec
+         tasty-quickcheck text validation
+       ];
+       description = "A thin GeoJSON Layer above the aeson library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "geojson-types" = callPackage
     ({ mkDerivation, aeson, base, bson, bytestring, lens, text }:
      mkDerivation {
@@ -94810,12 +95128,12 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-check";
-       version = "0.1.0.2";
-       sha256 = "0xxx1n3xwzfkpbhn2k6s63h8idqy8s15fvy4hbnfkk5fz6mwgvdz";
+       version = "0.1.0.3";
+       sha256 = "1zrlnk3gzdb96592is2krk8qpk386bib0bpgw47yqj8qfcxqf76v";
        libraryHaskellDepends = [
          base ghc ghc-paths template-haskell transformers
        ];
-       description = "detect mismatches between compile-time and run-time versions of the ghc api";
+       description = "Detect mismatches between compile-time and run-time versions of the ghc api";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
@@ -95066,6 +95384,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ghc-exactprint_0_6_3" = callPackage
+    ({ mkDerivation, base, bytestring, containers, Diff, directory
+     , filemanip, filepath, free, ghc, ghc-boot, ghc-paths, HUnit, mtl
+     , silently, syb
+     }:
+     mkDerivation {
+       pname = "ghc-exactprint";
+       version = "0.6.3";
+       sha256 = "0da4gkirill2rpxr9gl4cbcwpp4a16z9bdgyv5nkdps3msh93214";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring containers directory filepath free ghc ghc-boot
+         ghc-paths mtl syb
+       ];
+       testHaskellDepends = [
+         base bytestring containers Diff directory filemanip filepath ghc
+         ghc-boot ghc-paths HUnit mtl silently syb
+       ];
+       description = "ExactPrint for GHC";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ghc-gc-tune" = callPackage
     ({ mkDerivation, base, directory, filepath, process }:
      mkDerivation {
@@ -95215,6 +95557,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ghc-lib_8_10_1_20200324" = callPackage
+    ({ mkDerivation, alex, array, base, binary, bytestring, containers
+     , deepseq, directory, filepath, ghc-lib-parser, ghc-prim, happy
+     , hpc, pretty, process, time, transformers, unix
+     }:
+     mkDerivation {
+       pname = "ghc-lib";
+       version = "8.10.1.20200324";
+       sha256 = "09d0254ic650n9h6j863xl3cvd506ww84369qdszxwkizlzk7gr3";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         array base binary bytestring containers deepseq directory filepath
+         ghc-lib-parser ghc-prim hpc pretty process time transformers unix
+       ];
+       libraryToolDepends = [ alex happy ];
+       description = "The GHC API, decoupled from GHC versions";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ghc-lib-parser" = callPackage
     ({ mkDerivation, alex, array, base, binary, bytestring, containers
      , deepseq, directory, filepath, ghc-prim, happy, hpc, pretty
@@ -95234,6 +95596,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ghc-lib-parser_8_10_1_20200324" = callPackage
+    ({ mkDerivation, alex, array, base, binary, bytestring, containers
+     , deepseq, directory, filepath, ghc-prim, happy, hpc, pretty
+     , process, time, transformers, unix
+     }:
+     mkDerivation {
+       pname = "ghc-lib-parser";
+       version = "8.10.1.20200324";
+       sha256 = "0i3ab7a2xq8pjd94kfyrlnp9wnjfkl0qi74zb1m23l6k5zm4g9y8";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         array base binary bytestring containers deepseq directory filepath
+         ghc-prim hpc pretty process time transformers unix
+       ];
+       libraryToolDepends = [ alex happy ];
+       description = "The GHC API, decoupled from GHC versions";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ghc-lib-parser-ex" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, extra
      , filepath, ghc, ghc-boot, ghc-boot-th, tasty, tasty-hunit
@@ -95241,8 +95623,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-lib-parser-ex";
-       version = "8.8.5.6";
-       sha256 = "0jwndkf7idpf09zrj4i4x1vsyfpm0vf85vlh00qp0z3avqcxsf2m";
+       version = "8.8.5.8";
+       sha256 = "1mw1ym5bn39z7lqmxnhhkfqb0kbxddabkafw025wgs54knsghvmk";
        libraryHaskellDepends = [
          base bytestring containers extra ghc ghc-boot ghc-boot-th uniplate
        ];
@@ -95253,20 +95635,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "ghc-lib-parser-ex_8_8_5_8" = callPackage
+  "ghc-lib-parser-ex_8_10_0_2" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, extra
-     , filepath, ghc, ghc-boot, ghc-boot-th, tasty, tasty-hunit
-     , uniplate
+     , filepath, ghc-lib-parser, tasty, tasty-hunit, uniplate
      }:
      mkDerivation {
        pname = "ghc-lib-parser-ex";
-       version = "8.8.5.8";
-       sha256 = "1mw1ym5bn39z7lqmxnhhkfqb0kbxddabkafw025wgs54knsghvmk";
+       version = "8.10.0.2";
+       sha256 = "17khl1ma4q1k16wya96nq8i805b8jkg8spjlrac5273icc550qn2";
        libraryHaskellDepends = [
-         base bytestring containers extra ghc ghc-boot ghc-boot-th uniplate
+         base bytestring containers ghc-lib-parser uniplate
        ];
        testHaskellDepends = [
-         base directory extra filepath ghc ghc-boot-th tasty tasty-hunit
+         base directory extra filepath ghc-lib-parser tasty tasty-hunit
        ];
        description = "Algorithms on GHC parse trees";
        license = stdenv.lib.licenses.bsd3;
@@ -95691,29 +96072,69 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "ghc-tags-plugin" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, directory, filelock
-     , filepath, ghc, lattices, QuickCheck, quickcheck-instances, tasty
-     , tasty-golden, tasty-quickcheck, text
+  "ghc-tags-core" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, criterion, deepseq
+     , directory, filepath, ghc, lattices, mtl, pipes, pipes-attoparsec
+     , pipes-bytestring, pipes-text, QuickCheck, quickcheck-instances
+     , tasty, tasty-golden, tasty-quickcheck, text, transformers
      }:
      mkDerivation {
-       pname = "ghc-tags-plugin";
-       version = "0.1.5.0";
-       sha256 = "065i5xdf5i0xxj8q2aah2p9n30n65w0r60rfd49bih1iisfk0ljn";
+       pname = "ghc-tags-core";
+       version = "0.1.0.0";
+       sha256 = "0agn5601fwq4nr2k6xya0lmwm4hw63rvmpi4rk0jr362vn7d219n";
        libraryHaskellDepends = [
-         attoparsec base bytestring directory filelock filepath ghc text
+         attoparsec base bytestring directory filepath ghc mtl pipes
+         pipes-attoparsec pipes-bytestring pipes-text text transformers
        ];
        testHaskellDepends = [
-         attoparsec base bytestring lattices QuickCheck quickcheck-instances
-         tasty tasty-golden tasty-quickcheck text
+         attoparsec base bytestring directory filepath lattices mtl pipes
+         QuickCheck quickcheck-instances tasty tasty-golden tasty-quickcheck
+         text
        ];
-       doHaddock = false;
-       description = "A compiler plugin which generates tags file from GHC syntax tree";
+       benchmarkHaskellDepends = [
+         base bytestring criterion deepseq mtl pipes pipes-attoparsec
+         pipes-bytestring pipes-text text
+       ];
+       description = "a library to work with tags created from Haskell parsed tree";
+       license = stdenv.lib.licenses.mpl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "ghc-tags-plugin" = callPackage
+    ({ mkDerivation, base, bytestring, directory, filepath, ghc
+     , ghc-tags-core, mtl, optparse-applicative, pipes, pipes-attoparsec
+     , pipes-bytestring, pipes-safe, pipes-text, text
+     }:
+     mkDerivation {
+       pname = "ghc-tags-plugin";
+       version = "0.1.6.0";
+       sha256 = "148whav3lpkglgfk51az3f3cfnp50psnznrw0a7mdbqxmkhfb41i";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring directory filepath ghc ghc-tags-core mtl
+         optparse-applicative pipes pipes-attoparsec pipes-bytestring
+         pipes-safe pipes-text text
+       ];
+       description = "A compiler plugin which generates tags file from GHC parsed syntax tree";
        license = stdenv.lib.licenses.mpl20;
        hydraPlatforms = stdenv.lib.platforms.none;
        broken = true;
      }) {};
 
+  "ghc-tcplugins-extra_0_3_2" = callPackage
+    ({ mkDerivation, base, ghc }:
+     mkDerivation {
+       pname = "ghc-tcplugins-extra";
+       version = "0.3.2";
+       sha256 = "13qhwjbhyi3nrjdvc0fdgxf4kz55my541mz2j3sndpxsmbymqs3m";
+       libraryHaskellDepends = [ base ghc ];
+       description = "Utilities for writing GHC type-checker plugins";
+       license = stdenv.lib.licenses.bsd2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ghc-tcplugins-extra" = callPackage
     ({ mkDerivation, base, ghc }:
      mkDerivation {
@@ -95914,8 +96335,8 @@ self: {
     ({ mkDerivation, base, directory, ghc, time }:
      mkDerivation {
        pname = "ghcflags";
-       version = "1.0.2";
-       sha256 = "17j7bkx7ki5vqr0a3vl0f0v4l9cz2q7lm9xpkj3144y9sqmiqzy3";
+       version = "1.0.3";
+       sha256 = "1xsfznfypgmv67qdxm8zvl8n84hj47akjn9fsdi66b8flbx8c0gm";
        libraryHaskellDepends = [ base directory ghc time ];
        description = "Dump the ghc flags during compilation";
        license = stdenv.lib.licenses.bsd2;
@@ -96095,32 +96516,6 @@ self: {
      }:
      mkDerivation {
        pname = "ghcid";
-       version = "0.8.3";
-       sha256 = "1b8a8mx6z2ridw79gijjv90b2jgk0qrncvg0sjbmvyyyajx1h5f7";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         ansi-terminal base cmdargs directory extra filepath process time
-       ];
-       executableHaskellDepends = [
-         ansi-terminal base cmdargs containers directory extra filepath
-         fsnotify process terminal-size time unix
-       ];
-       testHaskellDepends = [
-         ansi-terminal base cmdargs containers directory extra filepath
-         fsnotify process tasty tasty-hunit terminal-size time unix
-       ];
-       description = "GHCi based bare bones IDE";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "ghcid_0_8_5" = callPackage
-    ({ mkDerivation, ansi-terminal, base, cmdargs, containers
-     , directory, extra, filepath, fsnotify, process, tasty, tasty-hunit
-     , terminal-size, time, unix
-     }:
-     mkDerivation {
-       pname = "ghcid";
        version = "0.8.5";
        sha256 = "15zj78wasix4yz8mxx5hl6x1gj364vsbwn5arp7sbq13rywhs2qy";
        isLibrary = true;
@@ -96138,7 +96533,6 @@ self: {
        ];
        description = "GHCi based bare bones IDE";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "ghcide" = callPackage
@@ -97837,8 +98231,8 @@ self: {
      }:
      mkDerivation {
        pname = "git-annex";
-       version = "8.20200309";
-       sha256 = "1yjb01jh5rccqg44nqh4iyxmbpkcpm6m82lnw7s0s2vizj8891p5";
+       version = "8.20200330";
+       sha256 = "0xy0ld7kr4cfdl4g4yzvrzl5r60dcj33cxm28a4qz6nqm2yhd4sv";
        configureFlags = [
          "-fassistant" "-f-benchmark" "-fdbus" "-f-debuglocks" "-fmagicmime"
          "-fnetworkbsd" "-fpairing" "-fproduction" "-fs3" "-ftorrentparser"
@@ -98337,6 +98731,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "githash_0_1_4_0" = callPackage
+    ({ mkDerivation, base, bytestring, directory, filepath, hspec
+     , process, template-haskell, temporary, unliftio
+     }:
+     mkDerivation {
+       pname = "githash";
+       version = "0.1.4.0";
+       sha256 = "0rsz230srhszwybg5a40vhzzp9z0r4yvdz4xg2hwwwphmbi8pfy3";
+       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 = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "github" = callPackage
     ({ mkDerivation, aeson, base, base-compat, base16-bytestring
      , binary, binary-instances, bytestring, containers, cryptohash-sha1
@@ -98994,8 +99408,8 @@ self: {
     ({ mkDerivation, base, hspec }:
      mkDerivation {
        pname = "gjk";
-       version = "0.0.0.1";
-       sha256 = "0kqhvich6slcihxg64nwrg1zk9nnpymi7nqrnlmn71flzw6w27ca";
+       version = "0.0.0.2";
+       sha256 = "11ncqhq0q5bl38a0j813y3hjhijz14r0h6npzy441frk8wg1s8lh";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base hspec ];
        description = "Gilbert-Johnson-Keerthi (GJK) collision detection algorithm";
@@ -99383,8 +99797,7 @@ self: {
        testHaskellDepends = [ base HUnit ];
        description = "Console IRC client";
        license = stdenv.lib.licenses.isc;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
+       maintainers = with stdenv.lib.maintainers; [ kiwi ];
      }) {};
 
   "gll" = callPackage
@@ -99816,8 +100229,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Make better services and clients";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "glue-core" = callPackage
@@ -99842,8 +100253,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Make better services and clients";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "glue-ekg" = callPackage
@@ -99868,8 +100277,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Make better services and clients";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "glue-example" = callPackage
@@ -99890,8 +100297,6 @@ self: {
        ];
        description = "Make better services and clients";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "gluturtle" = callPackage
@@ -102936,6 +103341,31 @@ self: {
        broken = true;
      }) {};
 
+  "gopro-plus" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, exceptions
+     , filepath, generic-deriving, HUnit, lens, lens-aeson, mtl, random
+     , retry, tasty, tasty-hunit, tasty-quickcheck, text, time
+     , transformers, unix, unliftio, unordered-containers, vector, wreq
+     }:
+     mkDerivation {
+       pname = "gopro-plus";
+       version = "0.3.0.0";
+       sha256 = "16fk23q5qz6c4bjhbm8xcnkdckyk5ziz4gky9x1vndk5wxm2srr1";
+       libraryHaskellDepends = [
+         aeson base bytestring containers exceptions filepath
+         generic-deriving lens lens-aeson mtl random retry text time
+         transformers unix unliftio unordered-containers vector wreq
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers exceptions filepath
+         generic-deriving HUnit lens lens-aeson mtl random retry tasty
+         tasty-hunit tasty-quickcheck text time transformers unix unliftio
+         unordered-containers vector wreq
+       ];
+       description = "GoPro Plus Client API";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "gore-and-ash" = callPackage
     ({ mkDerivation, base, containers, deepseq, exceptions, hashable
      , linear, mtl, parallel, profunctors, random, semigroups, time
@@ -103326,8 +103756,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion ];
        description = "Applicative non-linear consumption";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "grab-form" = callPackage
@@ -103340,8 +103768,6 @@ self: {
        testHaskellDepends = [ base containers hedgehog text ];
        description = "Applicative parsers for form parameter lists";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "graceful" = callPackage
@@ -104464,8 +104890,8 @@ self: {
      }:
      mkDerivation {
        pname = "greskell-core";
-       version = "0.1.3.1";
-       sha256 = "0jp6xzr601y6ngngbra0z2v99jxgp6y88dq4kb8fh25phyajzlmw";
+       version = "0.1.3.2";
+       sha256 = "149xqjhjjbwmsikdacpbhcd188c1rg0vj1szwwwrsadcagc793ky";
        libraryHaskellDepends = [
          aeson base containers hashable scientific semigroups text
          unordered-containers uuid vector
@@ -105308,8 +105734,6 @@ self: {
        ];
        description = "Console and GUI interface for Google Translate service";
        license = "GPL";
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "gtfs" = callPackage
@@ -105387,8 +105811,6 @@ self: {
        libraryHaskellDepends = [ base gtk json transformers ];
        description = "A simple custom form widget for gtk which allows inputing of JSON values";
        license = stdenv.lib.licenses.gpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "gtk-largeTreeStore" = callPackage
@@ -106441,8 +106863,6 @@ self: {
        ];
        description = "Interface to Amazon's Simple Storage Service (S3)";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "hScraper" = callPackage
@@ -107227,33 +107647,6 @@ self: {
      }) {};
 
   "hackage-security" = callPackage
-    ({ mkDerivation, base, base16-bytestring, base64-bytestring
-     , bytestring, Cabal, containers, cryptohash-sha256, directory
-     , ed25519, filepath, ghc-prim, mtl, network, network-uri, parsec
-     , pretty, QuickCheck, tar, tasty, tasty-hunit, tasty-quickcheck
-     , template-haskell, temporary, time, transformers, zlib
-     }:
-     mkDerivation {
-       pname = "hackage-security";
-       version = "0.5.3.0";
-       sha256 = "08bwawc7ramgdh54vcly2m9pvfchp0ahhs8117jajni6x4bnx66v";
-       revision = "6";
-       editedCabalFile = "1xs2nkzlvkdz8g27yzfxbjdbdadfmgiydnlpn5dm77cg18r495ay";
-       libraryHaskellDepends = [
-         base base16-bytestring base64-bytestring bytestring Cabal
-         containers cryptohash-sha256 directory ed25519 filepath ghc-prim
-         mtl network network-uri parsec pretty tar template-haskell time
-         transformers zlib
-       ];
-       testHaskellDepends = [
-         base bytestring Cabal containers network-uri QuickCheck tar tasty
-         tasty-hunit tasty-quickcheck temporary time zlib
-       ];
-       description = "Hackage security library";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "hackage-security_0_6_0_0" = callPackage
     ({ mkDerivation, aeson, base, base16-bytestring, base64-bytestring
      , bytestring, Cabal, containers, cryptohash-sha256, directory
      , ed25519, filepath, ghc-prim, lukko, mtl, network, network-uri
@@ -107280,7 +107673,6 @@ self: {
        ];
        description = "Hackage security library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hackage-security-HTTP" = callPackage
@@ -107579,8 +107971,8 @@ self: {
     ({ mkDerivation, base, filepath, haddock-api }:
      mkDerivation {
        pname = "haddock";
-       version = "2.23.0";
-       sha256 = "1f7n4l1kkq1msl8csnvzg2xh3i5a056dzmcf40gib0im91wcwl0x";
+       version = "2.23.1";
+       sha256 = "129lwai4609f910h7yhmmm1rbqzjla9rcg5dpzqihydsjyw5ii1s";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [ base haddock-api ];
@@ -107624,8 +108016,8 @@ self: {
      }:
      mkDerivation {
        pname = "haddock-api";
-       version = "2.23.0";
-       sha256 = "0fbk458qr7iw1j8vh6455n2819c0pfdw1m3gy1y3fs6fdpj9qbjj";
+       version = "2.23.1";
+       sha256 = "14dl17ajlr8354rmc49w4fsqxmrn0dl7wps3r4iipms5nhj5bm3d";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          array base bytestring containers deepseq directory filepath ghc
@@ -107830,6 +108222,20 @@ self: {
        broken = true;
      }) {};
 
+  "hadoop-streaming" = callPackage
+    ({ mkDerivation, base, conduit, extra, hspec, hspec-discover, text
+     }:
+     mkDerivation {
+       pname = "hadoop-streaming";
+       version = "0.1.0.0";
+       sha256 = "0nbmq0lb2dydc47x4i3gvbwyy216dzwcvirpsra06dcz2yi3vkmm";
+       libraryHaskellDepends = [ base conduit extra text ];
+       testHaskellDepends = [ base conduit extra hspec text ];
+       testToolDepends = [ hspec-discover ];
+       description = "A simple Hadoop streaming library";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hadoop-tools" = callPackage
     ({ mkDerivation, attoparsec, base, boxes, bytestring, clock
      , configurator, exceptions, filepath, hadoop-rpc, old-locale
@@ -108643,8 +109049,6 @@ self: {
        testHaskellDepends = [ base hspec mtl pandoc text ];
        description = "Use shortcut-links in markdown file for Hakyll";
        license = stdenv.lib.licenses.mpl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "hakyll-typescript" = callPackage
@@ -109097,8 +109501,8 @@ self: {
     ({ mkDerivation, base, containers, random }:
      mkDerivation {
        pname = "hanabi-dealer";
-       version = "0.7.1.1";
-       sha256 = "1agh5sq0hj9r55w3k529jcar66p4vih54j5w3h28chm34n9k6qa2";
+       version = "0.7.2.0";
+       sha256 = "0w54ybsd7hkykifw0nsgr3mdss7945y76rbjmlk7zl9lqi780ia7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers random ];
@@ -109357,14 +109761,14 @@ self: {
      }:
      mkDerivation {
        pname = "hapistrano";
-       version = "0.3.10.0";
-       sha256 = "0kw98zcqp6b4j0i2nbd487i2icq12r3sqi8w9gjjqj5fhzsa7sja";
+       version = "0.4.0.1";
+       sha256 = "08zjj506rs9124xvc78y4jm4baxmnyh005sbk6k4gpnnc0qagxz4";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson ansi-terminal base filepath formatting gitrev mtl path
-         process stm time transformers typed-process
+         process stm time transformers typed-process yaml
        ];
        executableHaskellDepends = [
          aeson async base formatting gitrev optparse-applicative path
@@ -109372,7 +109776,7 @@ self: {
        ];
        testHaskellDepends = [
          base directory filepath hspec mtl path path-io process QuickCheck
-         silently temporary
+         silently temporary yaml
        ];
        testToolDepends = [ hspec-discover ];
        description = "A deployment library for Haskell applications";
@@ -110580,8 +110984,6 @@ self: {
        ];
        description = "Haskell driver for Neo4j 3+ (BOLT protocol)";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "hasbolt-extras" = callPackage
@@ -110607,8 +111009,6 @@ self: {
        testHaskellDepends = [ base doctest ];
        description = "Extras for hasbolt library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "hascal" = callPackage
@@ -110816,6 +111216,8 @@ self: {
        pname = "hashable";
        version = "1.3.0.0";
        sha256 = "1d4sn4xjf0swrfg8pl93ipavbj12ch3a9aykhkl6mjnczc9m8bl2";
+       revision = "1";
+       editedCabalFile = "1c8z7vxlh4whpm1ag4xp6wknnaal28cl4dqdan9rw1c1g10g2w2c";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -110894,8 +111296,8 @@ self: {
        pname = "hashable-time";
        version = "0.2.0.2";
        sha256 = "1q7y4plqqwy5286hhx2fygn12h8lqk0y047b597sbdckskxzfqgs";
-       revision = "2";
-       editedCabalFile = "006phc5y9rrvsshdcmjmhxzxh8dpgs685mpqbkjm9c40xb1ydjbz";
+       revision = "3";
+       editedCabalFile = "1dr7ak803ngrhpv43dy25jm18gfzn02gzd3hm31dzcjv3mxsmbrk";
        libraryHaskellDepends = [ base hashable time ];
        description = "Hashable instances for Data.Time";
        license = stdenv.lib.licenses.bsd3;
@@ -111287,8 +111689,6 @@ self: {
        ];
        description = "Generate tags file for Haskell project and its nearest deps";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskeem" = callPackage
@@ -112111,6 +112511,36 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "haskell-lsp_0_21_0_0" = callPackage
+    ({ mkDerivation, aeson, async, attoparsec, base, bytestring
+     , containers, data-default, directory, filepath, hashable
+     , haskell-lsp-types, hslogger, hspec, hspec-discover, lens, mtl
+     , network-uri, QuickCheck, quickcheck-instances, rope-utf16-splay
+     , sorted-list, stm, temporary, text, time, unordered-containers
+     }:
+     mkDerivation {
+       pname = "haskell-lsp";
+       version = "0.21.0.0";
+       sha256 = "0ic9gn5ww8vxmvidj28msark0nybj7fj1j5xsykiac5cgiy5ysnv";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson async attoparsec base bytestring containers data-default
+         directory filepath hashable haskell-lsp-types hslogger lens mtl
+         network-uri rope-utf16-splay sorted-list stm temporary text time
+         unordered-containers
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers data-default directory filepath
+         hashable hspec lens network-uri QuickCheck quickcheck-instances
+         rope-utf16-splay sorted-list stm text unordered-containers
+       ];
+       testToolDepends = [ hspec-discover ];
+       description = "Haskell library for the Microsoft Language Server Protocol";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-lsp-client" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
      , haskell-lsp, lens, process, text, unix
@@ -112150,6 +112580,24 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "haskell-lsp-types_0_21_0_0" = callPackage
+    ({ mkDerivation, aeson, base, binary, bytestring, data-default
+     , deepseq, filepath, hashable, lens, network-uri, scientific, text
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "haskell-lsp-types";
+       version = "0.21.0.0";
+       sha256 = "0x5xhn9vy09r0r76wvmzp6nh23y4p2kgm35p8qqqgvnx6w5cvi92";
+       libraryHaskellDepends = [
+         aeson base binary bytestring data-default deepseq filepath hashable
+         lens network-uri scientific text unordered-containers
+       ];
+       description = "Haskell library for the Microsoft Language Server Protocol, data types";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-menu" = callPackage
     ({ mkDerivation, base, containers }:
      mkDerivation {
@@ -112234,8 +112682,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-names";
-       version = "0.9.7";
-       sha256 = "1ad0kdp4a9gq10g9flmmjn0ibfaipq2qnrz5a13r1mgyb6skzc5j";
+       version = "0.9.8";
+       sha256 = "1s4pyqrjhq9x4zxq0vh02qr86kw5fk854wfwkryqyzkylr83dv4r";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base bytestring containers data-lens-light filepath
@@ -112736,8 +113184,6 @@ self: {
        libraryHaskellDepends = [ base haskell-src-exts ];
        description = "A simplified view on the haskell-src-exts AST";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-src-exts-util" = callPackage
@@ -112847,8 +113293,6 @@ self: {
        ];
        description = "Generate Elm types and JSON encoders and decoders from Haskell types";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "haskell-token-utils" = callPackage
@@ -115141,8 +115585,8 @@ self: {
      }:
      mkDerivation {
        pname = "hasql";
-       version = "1.4.1";
-       sha256 = "0qypisbyyk9xq3g0av4vphi4k9r0jm8c16crc5wbqvalxaxrj2wc";
+       version = "1.4.2";
+       sha256 = "0n617bh0achqwybngppz6inj7y5fv42zi0dxlyal3d9zbrgsljfw";
        libraryHaskellDepends = [
          attoparsec base base-prelude bytestring bytestring-strict-builder
          contravariant contravariant-extras dlist hashable hashtables
@@ -115460,8 +115904,8 @@ self: {
      }:
      mkDerivation {
        pname = "hasql-th";
-       version = "0.4.0.5";
-       sha256 = "1gc11n2g07cqipcvm779wwm36mfjjbnwg9n1ch7cldlg1wsr6m6n";
+       version = "0.4.0.6";
+       sha256 = "0s9c2aa0mpxiqsvpaf3l5k2gqchrjv4x9jpjmw7v3ywnv9pcxpkf";
        libraryHaskellDepends = [
          base bytestring case-insensitive containers contravariant
          fast-builder foldl hashable hasql headed-megaparsec megaparsec
@@ -117235,8 +117679,8 @@ self: {
      }:
      mkDerivation {
        pname = "headroom";
-       version = "0.1.2.0";
-       sha256 = "0xf657k22bpyx45x0bxljv19adb2qwfv2a5724dsnmvndyvn9kxy";
+       version = "0.1.3.0";
+       sha256 = "0c680vr2kjlx9l9zh6v22jjfgxrwxh9icg1psjxrjfl9zi9kqfb9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -117250,8 +117694,6 @@ self: {
        ];
        description = "License Header Manager";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "heap" = callPackage
@@ -117801,18 +118243,19 @@ self: {
 
   "hedis" = callPackage
     ({ mkDerivation, async, base, bytestring, bytestring-lexing
-     , deepseq, doctest, errors, HTTP, HUnit, mtl, network, network-uri
-     , resource-pool, scanner, stm, test-framework, test-framework-hunit
-     , text, time, tls, unordered-containers, vector
+     , deepseq, doctest, errors, exceptions, HTTP, HUnit, mtl, network
+     , network-uri, resource-pool, scanner, stm, test-framework
+     , test-framework-hunit, text, time, tls, unordered-containers
+     , vector
      }:
      mkDerivation {
        pname = "hedis";
-       version = "0.12.11";
-       sha256 = "1n83zwg011n9w2v1zz4mwpms9jh3c8mk700zya4as1jg83748xww";
+       version = "0.12.13";
+       sha256 = "1axsv81r1q393m178x89km49pi7w7dci0l48cnjdskdz99jwvywq";
        libraryHaskellDepends = [
-         async base bytestring bytestring-lexing deepseq errors HTTP mtl
-         network network-uri resource-pool scanner stm text time tls
-         unordered-containers vector
+         async base bytestring bytestring-lexing deepseq errors exceptions
+         HTTP mtl network network-uri resource-pool scanner stm text time
+         tls unordered-containers vector
        ];
        testHaskellDepends = [
          async base bytestring doctest HUnit mtl stm test-framework
@@ -117943,10 +118386,8 @@ self: {
      }:
      mkDerivation {
        pname = "hedn";
-       version = "0.3.0.0";
-       sha256 = "1gx8bw2l1qpb4jgh5d1zzgfm2rnwavg5shmp4wq2mqrih11r3f3y";
-       revision = "1";
-       editedCabalFile = "1bpd4dd8afccj2bakqqbimmd3ja9i21q9k98vmzw37ishbd3xync";
+       version = "0.3.0.1";
+       sha256 = "02pwwxdgw3kkqwckap9mf015bbd27mgblfz7k4y63v0gppw6fqm7";
        libraryHaskellDepends = [
          base containers deepseq deriving-compat megaparsec
          parser-combinators prettyprinter scientific template-haskell text
@@ -117957,8 +118398,6 @@ self: {
        ];
        description = "EDN parsing and encoding";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "hedn-functor" = callPackage
@@ -122380,8 +122819,8 @@ self: {
     ({ mkDerivation, base, Cabal, directory, hspec, libsass }:
      mkDerivation {
        pname = "hlibsass";
-       version = "0.1.8.1";
-       sha256 = "050z6i29v410shjsskr26sna491ldg23if1nr0808xp94xgfif16";
+       version = "0.1.9.0";
+       sha256 = "14rcg48hlbpz4vjk7ydhf58wgnbgsa61q6s7h0n80ak8ih63jdcx";
        configureFlags = [ "-fexternallibsass" ];
        setupHaskellDepends = [ base Cabal directory ];
        libraryHaskellDepends = [ base ];
@@ -123370,8 +123809,6 @@ self: {
        testToolDepends = [ tasty-discover ];
        description = "Core effects for interacting with the Nix store";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "hnix-store-remote" = callPackage
@@ -123775,8 +124212,8 @@ self: {
      }:
      mkDerivation {
        pname = "hoggl";
-       version = "0.2.0.0";
-       sha256 = "0kblkirivnw3ylaifdpa8acy2armxxkl9hbqymg2qfiiwnbgg2wh";
+       version = "0.2.0.1";
+       sha256 = "1l42s17kq78lba60l2gv1ig2sxb8mfywxm0md27jp5v6s4bqc7jy";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -123785,8 +124222,8 @@ self: {
          unordered-containers
        ];
        executableHaskellDepends = [
-         base either http-client http-client-tls optparse-applicative
-         servant-client text time transformers
+         base either formatting http-client http-client-tls
+         optparse-applicative servant-client text time transformers
        ];
        description = "Bindings to the Toggl.com REST API";
        license = stdenv.lib.licenses.bsd3;
@@ -124491,13 +124928,13 @@ self: {
        pname = "hookup";
        version = "0.3.1.0";
        sha256 = "0dyx0zgxis4viqgdkky25q93vh3z551m7nssjfr15rqj25w8zb5y";
+       revision = "1";
+       editedCabalFile = "0r92s1dz7bzm2p5wpdqfkmpgzfh3xgyan82b4rkpmq8m888z74w9";
        libraryHaskellDepends = [
          attoparsec base bytestring HsOpenSSL HsOpenSSL-x509-system network
        ];
        description = "Abstraction over creating network connections with SOCKS5 and TLS";
        license = stdenv.lib.licenses.isc;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "hoopl" = callPackage
@@ -124726,8 +125163,8 @@ self: {
      }:
      mkDerivation {
        pname = "hoppy-generator";
-       version = "0.7.0";
-       sha256 = "0v21a3nwk94ggrk8fyjmlb93rnrsh7s3xbqnk1p236h0gycsh1q3";
+       version = "0.7.1";
+       sha256 = "1fhqlckfznmd5dhzsxgm40lynm790j8g4srf6y3g632dv7lccjwn";
        libraryHaskellDepends = [
          base bytestring containers directory filepath haskell-src mtl
          process temporary text
@@ -124755,8 +125192,8 @@ self: {
     ({ mkDerivation, base, filepath, haskell-src, hoppy-generator }:
      mkDerivation {
        pname = "hoppy-std";
-       version = "0.7.0";
-       sha256 = "0yr73dalwljp23ls9za07cnabs65aypgbrjjv76zhxbsqqcc82a3";
+       version = "0.7.1";
+       sha256 = "1y7xi347xq60p66avxgjyzxn9q7amjg1s43b9fln4v8f9ca0pwn7";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          base filepath haskell-src hoppy-generator
@@ -125794,8 +126231,8 @@ self: {
      }:
      mkDerivation {
        pname = "hpqtypes";
-       version = "1.8.0.1";
-       sha256 = "1zn6qzpxvpdiim12lma7viq96j3jadvlcw188iknjqyn15kri9my";
+       version = "1.9.0.0";
+       sha256 = "17w916p4gfzflgvd35d5nxzfch82bwyranvlv28j2qz3dvk15ymn";
        setupHaskellDepends = [ base Cabal directory filepath ];
        libraryHaskellDepends = [
          aeson async base bytestring containers exceptions lifted-base
@@ -127009,8 +127446,6 @@ self: {
        testHaskellDepends = [ base HUnit network temporary unix ];
        description = "Write a server supporting Server::Starter's protocol in Haskell";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "hs-snowtify" = callPackage
@@ -127032,15 +127467,17 @@ self: {
      }) {};
 
   "hs-speedscope" = callPackage
-    ({ mkDerivation, aeson, base, extra, ghc-events, text, vector }:
+    ({ mkDerivation, aeson, base, extra, ghc-events
+     , optparse-applicative, text, vector
+     }:
      mkDerivation {
        pname = "hs-speedscope";
-       version = "0.1.1.0";
-       sha256 = "0dldhndlags3ig991yvddfaw472cjwfy9dz3i12hq5ny6s9qz8qa";
+       version = "0.2";
+       sha256 = "119s4da40zjf42s7fyjm4b78vciiv5r2f67l8ki9gqr933ir6mpb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base extra ghc-events text vector
+         aeson base extra ghc-events optparse-applicative text vector
        ];
        executableHaskellDepends = [ base ];
        description = "Convert an eventlog into the speedscope json format";
@@ -127376,6 +127813,8 @@ self: {
        pname = "hsass";
        version = "0.8.0";
        sha256 = "1bnjvj6dpmcbpkbi4g5m5hvr0w5rmd7y5zkiwbqc8n9y4l2dkd5g";
+       revision = "1";
+       editedCabalFile = "0d085g21zvawl2jv6ap5fyk70c9igbjiwknvk1mgdydxbm1kvyq5";
        libraryHaskellDepends = [
          base bytestring data-default-class filepath hlibsass monad-loops
          transformers
@@ -127532,8 +127971,8 @@ self: {
      }:
      mkDerivation {
        pname = "hsc2hs";
-       version = "0.68.6";
-       sha256 = "1clj6bgs9vmiv3mjzp82lvyyik5zr5411nxab7hydbrgq94pbk70";
+       version = "0.68.7";
+       sha256 = "0jl94cr2jhjmvz7l9idpr352vwxlsanyiq7ya1vvrlry3vj1aygx";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -128209,8 +128648,8 @@ self: {
      }:
      mkDerivation {
        pname = "hsdev";
-       version = "0.3.3.6";
-       sha256 = "0j2qi1gw7rpb23bkj4557kg2d47b8kgrd8vr2qnld90h9p8jnzqm";
+       version = "0.3.3.8";
+       sha256 = "01dagwpg70h9af5kzr2f19qsvy4h5cx5rjdrcq0r36fbmdkbza2z";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -128408,10 +128847,8 @@ self: {
      }:
      mkDerivation {
        pname = "hsexif";
-       version = "0.6.1.6";
-       sha256 = "0pdm0v3xz308yzdhc646bbkwj156llf9g17c2y74x339xk6i8zhg";
-       revision = "1";
-       editedCabalFile = "1dgcgsmx0k5p3ibfv3n5k0c5p1is2m5zfsd2s6nc6d0pz34d4wl9";
+       version = "0.6.1.8";
+       sha256 = "1c44j9qnld5lg8zcw3pyh56fk0r62g76qmma790mcvy4sbrcz102";
        libraryHaskellDepends = [
          base binary bytestring containers iconv text time
        ];
@@ -128655,8 +129092,8 @@ self: {
      }:
      mkDerivation {
        pname = "hsinspect";
-       version = "0.0.11";
-       sha256 = "03537zzxaxrcw6lv9vr5b0j1k6w97xxfavj8n3vv0rxjy3xsj54j";
+       version = "0.0.12";
+       sha256 = "12s6f5f26wzp5adwdpy15235v1nclw12ypp9ginxrm68a65qy4lk";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -128865,6 +129302,30 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {inherit (pkgs) lua5_3;};
 
+  "hslua_1_1_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, criterion, deepseq
+     , exceptions, lua5_3, mtl, QuickCheck, quickcheck-instances, tasty
+     , tasty-hunit, tasty-quickcheck, text
+     }:
+     mkDerivation {
+       pname = "hslua";
+       version = "1.1.0";
+       sha256 = "04xf5xp5iyf6y0das661pbzw6z2zx63phidg9mqhwbn79wk2mwwh";
+       configureFlags = [ "-fsystem-lua" "-f-use-pkgconfig" ];
+       libraryHaskellDepends = [
+         base bytestring containers exceptions mtl text
+       ];
+       librarySystemDepends = [ lua5_3 ];
+       testHaskellDepends = [
+         base bytestring containers exceptions mtl QuickCheck
+         quickcheck-instances tasty tasty-hunit tasty-quickcheck text
+       ];
+       benchmarkHaskellDepends = [ base bytestring criterion deepseq ];
+       description = "Bindings to Lua, an embeddable scripting language";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) lua5_3;};
+
   "hslua-aeson" = callPackage
     ({ mkDerivation, aeson, base, bytestring, hashable, hslua, hspec
      , HUnit, ieee754, QuickCheck, quickcheck-instances, scientific
@@ -129581,8 +130042,6 @@ self: {
        testHaskellDepends = [ base hedgehog hspec ];
        description = "Integrate Hedgehog and Hspec!";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "hspec-jenkins" = callPackage
@@ -129615,8 +130074,8 @@ self: {
     ({ mkDerivation, base, hspec, hspec-core, HUnit, leancheck }:
      mkDerivation {
        pname = "hspec-leancheck";
-       version = "0.0.3";
-       sha256 = "0lnqk4dkzqlzrq2hb72yv8xbbnps4bmjqz1qy9q47r8nrac8xpiq";
+       version = "0.0.4";
+       sha256 = "06amq8467wv2jkx9f4pif0z5rgvj35hdp1yffqkxyxh65148prcb";
        libraryHaskellDepends = [ base hspec hspec-core HUnit leancheck ];
        testHaskellDepends = [ base hspec leancheck ];
        description = "LeanCheck support for the Hspec test framework";
@@ -129860,8 +130319,6 @@ self: {
        ];
        description = "A library for testing with Hspec and the Snap Web Framework";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "hspec-stack-rerun" = callPackage
@@ -130478,6 +130935,27 @@ self: {
        broken = true;
      }) {};
 
+  "hstar" = callPackage
+    ({ mkDerivation, archive-libarchive, archive-sig, base, bytestring
+     , bz2, cpphs, lz4-hs, lzlib, lzma, optparse-applicative, zlib, zstd
+     }:
+     mkDerivation {
+       pname = "hstar";
+       version = "0.1.0.0";
+       sha256 = "0li4bvh92ijw5prwyrhcmrvi989w3b343yfbxjdhzqkwvpbp98ag";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         archive-libarchive archive-sig base bytestring bz2 lz4-hs lzlib
+         lzma optparse-applicative zlib zstd
+       ];
+       executableToolDepends = [ cpphs ];
+       description = "Haskell version of tar CLI utility";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "hstatistics" = callPackage
     ({ mkDerivation, array, base, hmatrix, hmatrix-gsl-stats, random
      , vector
@@ -130893,8 +131371,6 @@ self: {
        testHaskellDepends = [ base hspec time ];
        description = "Log to syslog over a network via UDP";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "hszephyr" = callPackage
@@ -131578,6 +132054,8 @@ self: {
        pname = "http-api-data";
        version = "0.4.1.1";
        sha256 = "1s93m2vh4c1p073xasvknnj3czbf8xsyg48kyznr4jwfhzi17anh";
+       revision = "1";
+       editedCabalFile = "1dshqb1140nj4h8d750s97gmzb2rk0ppr1rakvqxy1r79mg3m2wr";
        libraryHaskellDepends = [
          attoparsec attoparsec-iso8601 base base-compat bytestring
          containers cookie hashable http-types tagged text time-compat
@@ -132573,8 +133051,6 @@ self: {
        executableHaskellDepends = [ base ];
        description = "Tracking http redirects";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "http-types" = callPackage
@@ -132639,6 +133115,38 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "http2_2_0_4" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, array, base
+     , base16-bytestring, bytestring, case-insensitive, containers
+     , directory, doctest, filepath, gauge, Glob, heaps, hspec
+     , http-types, mwc-random, network, network-byte-order, psqueues
+     , stm, text, time-manager, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "http2";
+       version = "2.0.4";
+       sha256 = "0rqfx6vvcrlic4sw5xlqzk3xvdsbw13d0ymppx8yjhkkzign6227";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array base bytestring case-insensitive containers http-types
+         network network-byte-order psqueues stm time-manager
+       ];
+       testHaskellDepends = [
+         aeson aeson-pretty array base base16-bytestring bytestring
+         case-insensitive containers directory doctest filepath Glob hspec
+         http-types network network-byte-order psqueues stm text
+         time-manager unordered-containers vector
+       ];
+       benchmarkHaskellDepends = [
+         array base bytestring case-insensitive containers gauge heaps
+         mwc-random network-byte-order psqueues stm
+       ];
+       description = "HTTP/2 library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "http2-client" = callPackage
     ({ mkDerivation, async, base, bytestring, containers, deepseq
      , http2, lifted-async, lifted-base, mtl, network, stm, time, tls
@@ -133374,17 +133882,18 @@ self: {
      }) {};
 
   "hurl" = callPackage
-    ({ mkDerivation, base, base64-bytestring, bytestring, directory
-     , filepath, http-client, http-client-tls, http-types, network-uri
-     , process, text
+    ({ mkDerivation, base, base64-bytestring, bytestring, containers
+     , directory, filepath, http-client, http-client-tls, http-types
+     , network-uri, process, text, xml-conduit, zlib
      }:
      mkDerivation {
        pname = "hurl";
-       version = "1.2.0.0";
-       sha256 = "07abw78ds4fb4y8c7x94fpwcab58b2k613b3dk8hh9qqplhgl8ms";
+       version = "1.3.0.0";
+       sha256 = "1fb70wsqpy5jq5w8vrd0qszrpg670mfh25kw4ldapiw652az7w69";
        libraryHaskellDepends = [
-         base base64-bytestring bytestring directory filepath http-client
-         http-client-tls http-types network-uri process text
+         base base64-bytestring bytestring containers directory filepath
+         http-client http-client-tls http-types network-uri process text
+         xml-conduit zlib
        ];
        description = "Haskell URL resolver";
        license = stdenv.lib.licenses.gpl3;
@@ -133555,14 +134064,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hvega_0_7_0_0" = callPackage
+  "hvega_0_7_0_1" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, containers
      , filepath, tasty, tasty-golden, text, unordered-containers
      }:
      mkDerivation {
        pname = "hvega";
-       version = "0.7.0.0";
-       sha256 = "0kj40mm5d809adblk74h0k57qqpk8jxl5bhildasjzjfmmr4spax";
+       version = "0.7.0.1";
+       sha256 = "16s58m7kk72hr52k9gci17ac5k38r1zy08wll2frzjxissgza4cj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ aeson base text unordered-containers ];
@@ -133869,6 +134378,8 @@ self: {
        pname = "hw-excess";
        version = "0.2.2.3";
        sha256 = "1rlw53nbhjdvjqb1f0kacnmiiwhx04az6p4mf0iv5fwxcjh94q2r";
+       revision = "1";
+       editedCabalFile = "1bll4amizah25w4c6xplndig77hd6jh65q6zjyr5x4vr11vg6xbx";
        libraryHaskellDepends = [
          base hw-bits hw-prim hw-rankselect-base safe vector
        ];
@@ -133910,6 +134421,8 @@ self: {
        pname = "hw-fingertree-strict";
        version = "0.1.1.3";
        sha256 = "1fy492nl10a7p9a0b0jrqj1yiar8wir2g3qms2mmd814brbfkm80";
+       revision = "1";
+       editedCabalFile = "1s7fcimgyf0vskkkms371icazjkkmscv9bkz2ysdhx708bza96v5";
        libraryHaskellDepends = [ base deepseq ];
        testHaskellDepends = [
          base hedgehog hspec HUnit hw-hspec-hedgehog QuickCheck
@@ -133976,6 +134489,8 @@ self: {
        pname = "hw-ip";
        version = "2.4.1.0";
        sha256 = "1zjl078xzing927fwwpck36ib8z5aggpi7g0z5gnhxd8isgqs6zh";
+       revision = "1";
+       editedCabalFile = "1dg3aa6wavdr3vh7va3yx3j272pb4zw48rm7r5a6xv6xrrd01a33";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -134160,8 +134675,8 @@ self: {
      }:
      mkDerivation {
        pname = "hw-kafka-avro";
-       version = "4.0.1";
-       sha256 = "1x0mq3sn05iwrn444kzyl66056xm8203hq0ajx9f8r85faq3v1ir";
+       version = "5.0.0";
+       sha256 = "1j2al3xmymjzqc6009wm83b3bpddgshsmrlgp5129801bssc8s5w";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -134305,6 +134820,8 @@ self: {
        pname = "hw-prim";
        version = "0.6.2.40";
        sha256 = "0vm5mcnlb5yas2z7rvzd1kzv39d3qw4bkrkfmv0i7vsdg33yb3fd";
+       revision = "1";
+       editedCabalFile = "04pzny5b3hk8jjzh89bgz01hdc5z3ygn6a8pw81xky4m1gw7jc6b";
        libraryHaskellDepends = [
          base bytestring deepseq ghc-prim mmap semigroups transformers
          unliftio-core vector
@@ -134354,6 +134871,8 @@ self: {
        pname = "hw-rankselect";
        version = "0.13.3.2";
        sha256 = "1p4b5nm8mgxlc7p5gcwh6dy85xgydpbw999zv27755dbfcv9nk4v";
+       revision = "1";
+       editedCabalFile = "1byrp7zda5pxcd22jwsb16gr6kw1w7j1d7xyyn67c14fm3vym1mr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -134388,6 +134907,8 @@ self: {
        pname = "hw-rankselect-base";
        version = "0.3.3.0";
        sha256 = "17h4kmi9zcgm4sdpbmqh6rzygz7w0v95lfc6rmhc9a8bmmg30i5b";
+       revision = "1";
+       editedCabalFile = "03svpzjia8mbgy33lhmjhwpd6yq0n97l3fkmfnpyi3blc3yb3bd0";
        libraryHaskellDepends = [
          base bits-extra bitvec hw-bits hw-int hw-prim hw-string-parse
          vector
@@ -134444,6 +134965,8 @@ self: {
        pname = "hw-streams";
        version = "0.0.0.12";
        sha256 = "087sn4gxhf29vg9ydx8sfq33q16cz6cmda5r63k9xdki4ba761m4";
+       revision = "1";
+       editedCabalFile = "1y5sw9mgkxwvgf91hl22p3q5kxy99phwfmx2lh87339w7d5bjdbw";
        libraryHaskellDepends = [
          base bytestring ghc-prim hw-bits hw-prim mmap primitive semigroups
          transformers vector
@@ -136485,8 +137008,6 @@ self: {
        testHaskellDepends = [ base hspec ];
        description = "A project manage tool for Idris";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "idris" = callPackage
@@ -137435,20 +137956,17 @@ self: {
     ({ mkDerivation, aeson, async, atom-conduit, base-noprelude, binary
      , blaze-html, blaze-markup, bytestring, case-insensitive, conduit
      , connection, containers, dhall, directory, fast-logger, filepath
-     , hashable, HaskellNet, HaskellNet-SSL, http-client
-     , http-client-tls, http-types, microlens, mime-mail, monad-time
-     , msgpack, network, opml-conduit, optparse-applicative
-     , prettyprinter, prettyprinter-ansi-terminal, refined, relude
-     , rss-conduit, safe-exceptions, stm, stm-chans
+     , hashable, http-client, http-client-tls, http-types, microlens
+     , mime-mail, monad-time, msgpack, opml-conduit
+     , optparse-applicative, prettyprinter, prettyprinter-ansi-terminal
+     , refined, relude, rss-conduit, safe-exceptions, stm, stm-chans
      , streaming-bytestring, streaming-with, text, time, timerep, tls
      , typed-process, uri-bytestring, xml-conduit, xml-types
      }:
      mkDerivation {
        pname = "imm";
-       version = "1.7.0.0";
-       sha256 = "0slgfg4ay8j1kcvskl60gd2xbwllxcip6104wg36hcmb1symgdf1";
-       revision = "1";
-       editedCabalFile = "0hy3lbpn839yjplmn8w4ihlgyyirzi4j8qzwih5k5h98bd4d5nzf";
+       version = "1.8.0.0";
+       sha256 = "09948024zkjhdza100bi441xl2h8sd5b9gzki0l51dsm27phfk23";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -137462,12 +137980,11 @@ self: {
        executableHaskellDepends = [
          aeson async atom-conduit base-noprelude blaze-html blaze-markup
          bytestring case-insensitive conduit connection containers dhall
-         directory fast-logger filepath HaskellNet HaskellNet-SSL
-         http-client http-client-tls mime-mail msgpack network opml-conduit
-         optparse-applicative prettyprinter prettyprinter-ansi-terminal
-         refined relude rss-conduit safe-exceptions stm stm-chans
-         streaming-bytestring streaming-with text time typed-process
-         uri-bytestring xml-conduit xml-types
+         directory fast-logger filepath http-client http-client-tls
+         mime-mail msgpack opml-conduit optparse-applicative prettyprinter
+         prettyprinter-ansi-terminal refined relude rss-conduit
+         safe-exceptions stm stm-chans streaming-bytestring streaming-with
+         text time typed-process uri-bytestring xml-conduit xml-types
        ];
        description = "Execute arbitrary callbacks for each element of RSS/Atom feeds";
        license = stdenv.lib.licenses.cc0;
@@ -138471,6 +138988,34 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "influxdb_1_7_1_3" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, Cabal
+     , cabal-doctest, clock, containers, doctest, foldl, http-client
+     , http-types, lens, network, optional-args, raw-strings-qq
+     , scientific, tagged, tasty, tasty-hunit, template-haskell, text
+     , time, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "influxdb";
+       version = "1.7.1.3";
+       sha256 = "079f8xwhnzbdzjy0kbhsaklplp0d0nb9gxc193g9nl6v299zb8gv";
+       isLibrary = true;
+       isExecutable = true;
+       setupHaskellDepends = [ base Cabal cabal-doctest ];
+       libraryHaskellDepends = [
+         aeson attoparsec base bytestring clock containers foldl http-client
+         http-types lens network optional-args scientific tagged text time
+         unordered-containers vector
+       ];
+       testHaskellDepends = [
+         base containers doctest raw-strings-qq tasty tasty-hunit
+         template-haskell time
+       ];
+       description = "Haskell client library for InfluxDB";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "informative" = callPackage
     ({ mkDerivation, base, containers, csv, highlighting-kate
      , http-conduit, monad-logger, pandoc, persistent
@@ -139180,6 +139725,8 @@ self: {
        pname = "intcode";
        version = "0.3.0.0";
        sha256 = "0qcws15hn03wnsv1rg93sw9zhwsyvwpiafrmwnyv9v990qap1x8y";
+       revision = "1";
+       editedCabalFile = "1ad9fm65l8rnkm7236ak7v9j7hvj1jswwdcaw0xcsn9znn4xawl0";
        libraryHaskellDepends = [ base containers primitive ];
        testHaskellDepends = [ base containers doctest primitive ];
        description = "Advent of Code 2019 intcode interpreter";
@@ -139508,8 +140055,6 @@ self: {
        ];
        description = "Tracery-like randomized text interpolation";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "interpol" = callPackage
@@ -140543,25 +141088,6 @@ self: {
      }) {};
 
   "iproute" = callPackage
-    ({ mkDerivation, appar, base, byteorder, containers, doctest, hspec
-     , network, QuickCheck, safe
-     }:
-     mkDerivation {
-       pname = "iproute";
-       version = "1.7.8";
-       sha256 = "0k2qzdw36qp9qs2j0bxsn95ymk3wpjvw6s5c1535aw677gw19bad";
-       libraryHaskellDepends = [
-         appar base byteorder containers network
-       ];
-       testHaskellDepends = [
-         appar base byteorder containers doctest hspec network QuickCheck
-         safe
-       ];
-       description = "IP Routing Table";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "iproute_1_7_9" = callPackage
     ({ mkDerivation, appar, base, byteorder, bytestring, containers
      , doctest, hspec, network, QuickCheck, safe
      }:
@@ -140578,7 +141104,6 @@ self: {
        ];
        description = "IP Routing Table";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "iptables-helpers" = callPackage
@@ -140757,6 +141282,8 @@ self: {
        pname = "irc-core";
        version = "2.7.2";
        sha256 = "1gpd28lxhqj2xj75nyyififn9434imvm0vqvx7zdw44fvg75lqyq";
+       revision = "1";
+       editedCabalFile = "1xkvy5igrx4ri8gmmwzxs2mq7ih57gps8a592ya6bv1crrm45cy2";
        libraryHaskellDepends = [
          attoparsec base base64-bytestring bytestring hashable primitive
          text time vector
@@ -141966,8 +142493,6 @@ self: {
        ];
        description = "Efficient relational queries on Haskell sets";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "ixshader" = callPackage
@@ -142688,12 +143213,12 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "jira-wiki-markup_1_1_3" = callPackage
+  "jira-wiki-markup_1_2_0" = callPackage
     ({ mkDerivation, base, mtl, parsec, tasty, tasty-hunit, text }:
      mkDerivation {
        pname = "jira-wiki-markup";
-       version = "1.1.3";
-       sha256 = "1hr67awpl1zpwp53x9b6ix4gdfq8r77r9wnm44qc9q91q8i872wv";
+       version = "1.2.0";
+       sha256 = "10ywmldxwwcl9n5xm5745xc979fbrz6b7vxq08n4vi2yrkkh04nb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base mtl parsec text ];
@@ -143373,15 +143898,15 @@ self: {
 
   "json-api-lib" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, containers
-     , data-default, hspec, hspec-discover, lens, lens-aeson, text
-     , unordered-containers, uri-encode
+     , data-default, deepseq, hspec, hspec-discover, lens, lens-aeson
+     , text, unordered-containers, uri-encode
      }:
      mkDerivation {
        pname = "json-api-lib";
-       version = "0.1.2.0";
-       sha256 = "0qq34fw7b6kv4ywv7bzpsahn7b8mdn42cwwkhgqazsdf7wx72qqy";
+       version = "0.2.0.0";
+       sha256 = "0cay3yrzfbd0vnfq1a2f74nnqwbiwribhnfy90nhvbi6dxxp14a1";
        libraryHaskellDepends = [
-         aeson base containers data-default lens lens-aeson text
+         aeson base containers data-default deepseq lens lens-aeson text
          unordered-containers uri-encode
        ];
        testHaskellDepends = [
@@ -143461,22 +143986,23 @@ self: {
      }) {};
 
   "json-autotype" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, containers, directory
-     , filepath, GenericPretty, hashable, json-alt, lens, mtl
-     , optparse-applicative, pretty, process, QuickCheck, scientific
-     , smallcheck, template-haskell, text, uniplate
-     , unordered-containers, vector, yaml
+    ({ mkDerivation, aeson, base, bytestring, containers, data-default
+     , directory, filepath, GenericPretty, hashable, json-alt, lens, mtl
+     , optparse-applicative, pretty, process, QuickCheck
+     , run-haskell-module, scientific, smallcheck, template-haskell
+     , text, uniplate, unordered-containers, vector, yaml
      }:
      mkDerivation {
        pname = "json-autotype";
-       version = "3.0.1";
-       sha256 = "0nir4nx4wchl10zs753a3ayg9lgixg2ap3liwz9xpz191c8rkbka";
+       version = "3.0.5";
+       sha256 = "0kvbx4iyhh2r0abnswbvf862xfj08jlgvdd21xiz4zpnp2d1fx0h";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base containers filepath GenericPretty hashable json-alt lens
-         mtl pretty process QuickCheck scientific smallcheck
-         template-haskell text uniplate unordered-containers vector
+         aeson base containers data-default filepath GenericPretty hashable
+         json-alt lens mtl pretty process QuickCheck run-haskell-module
+         scientific smallcheck template-haskell text uniplate
+         unordered-containers vector
        ];
        executableHaskellDepends = [
          aeson base bytestring containers filepath GenericPretty hashable
@@ -143491,8 +144017,6 @@ self: {
        ];
        description = "Automatic type declaration for JSON input data";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "json-b" = callPackage
@@ -145287,6 +145811,42 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "katip_0_8_4_0" = callPackage
+    ({ mkDerivation, aeson, async, auto-update, base, blaze-builder
+     , bytestring, containers, criterion, deepseq, directory, either
+     , filepath, hostname, microlens, microlens-th, monad-control, mtl
+     , old-locale, quickcheck-instances, regex-tdfa, resourcet
+     , safe-exceptions, scientific, semigroups, stm, string-conv, tasty
+     , tasty-golden, tasty-hunit, tasty-quickcheck, template-haskell
+     , text, time, time-locale-compat, transformers, transformers-base
+     , transformers-compat, unix, unliftio-core, unordered-containers
+     }:
+     mkDerivation {
+       pname = "katip";
+       version = "0.8.4.0";
+       sha256 = "0hkhvkdyk4m5pdr0yj1lbdwqvrfr7sq49jw683mk0lxjlyc39xm6";
+       libraryHaskellDepends = [
+         aeson async auto-update base bytestring containers either hostname
+         microlens microlens-th monad-control mtl old-locale resourcet
+         safe-exceptions scientific semigroups stm string-conv
+         template-haskell text time transformers transformers-base
+         transformers-compat unix unliftio-core unordered-containers
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers directory microlens
+         quickcheck-instances regex-tdfa safe-exceptions stm tasty
+         tasty-golden tasty-hunit tasty-quickcheck template-haskell text
+         time time-locale-compat unordered-containers
+       ];
+       benchmarkHaskellDepends = [
+         aeson async base blaze-builder criterion deepseq directory filepath
+         safe-exceptions text time transformers unix
+       ];
+       description = "A structured logging framework";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "katip-datadog" = callPackage
     ({ mkDerivation, aeson, async, attoparsec, base, binary, bytestring
      , conduit, conduit-extra, connection, containers, katip, network
@@ -146577,8 +147137,8 @@ self: {
        pname = "kleene";
        version = "0.1";
        sha256 = "00w1gywdhqyy2k3y238gfjs9h2w4pjanmi45bna5lj215n0jb0hg";
-       revision = "2";
-       editedCabalFile = "1kiaxmxhlv1pczw8bg5vhcbyxgl87qs5bgcdaipd29ml0z7sncsd";
+       revision = "3";
+       editedCabalFile = "1bx73d86qhki4bvqckhv7nrvn06rha6x231fqjms2a7a9zpv47bm";
        libraryHaskellDepends = [
          attoparsec base base-compat bytestring containers lattices MemoTrie
          QuickCheck range-set-list regex-applicative semigroupoids
@@ -146655,19 +147215,22 @@ self: {
      }) {};
 
   "knead" = callPackage
-    ({ mkDerivation, base, bool8, comfort-array, llvm-extra, llvm-tf
-     , prelude-compat, storable-enum, storable-record, storable-tuple
-     , tagged, tfp, transformers, utility-ht
+    ({ mkDerivation, base, bool8, comfort-array, fixed-length, llvm-dsl
+     , llvm-extra, llvm-tf, prelude-compat, QuickCheck, storable-enum
+     , storable-record, tagged, tfp, transformers, utility-ht
      }:
      mkDerivation {
        pname = "knead";
-       version = "0.4.2";
-       sha256 = "03chikfkzlvabz2vmjpmd5mmk0a7gdnkzbgv635w3gdrpdpm8n31";
+       version = "0.5";
+       sha256 = "07j0sw10qs0zpz5hgxmrhs3rrwhnxf6441jasyagl96724svxq21";
        libraryHaskellDepends = [
-         base bool8 comfort-array llvm-extra llvm-tf prelude-compat
-         storable-enum storable-record storable-tuple tagged tfp
+         base bool8 comfort-array fixed-length llvm-dsl llvm-extra llvm-tf
+         prelude-compat storable-enum storable-record tagged tfp
          transformers utility-ht
        ];
+       testHaskellDepends = [
+         base comfort-array llvm-extra llvm-tf QuickCheck tfp utility-ht
+       ];
        description = "Repa-like array processing using LLVM JIT";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -147674,8 +148237,8 @@ self: {
        pname = "lambdabot-core";
        version = "5.2";
        sha256 = "1wh87wwb8hk3hn2lmdqi1hv77qbdmwqcwjslichygmvac8fjhjss";
-       revision = "2";
-       editedCabalFile = "1khn1j3z7mkzggp7s35p0dixsj81yljfrf5r9d289dvy1dip8akf";
+       revision = "3";
+       editedCabalFile = "182bhiwvbpadwwf3h9fpfsjwcsb0fkfzr57fvpl0k6w7msqn32rp";
        libraryHaskellDepends = [
          base binary bytestring containers dependent-map dependent-sum
          dependent-sum-template directory edit-distance filepath haskeline
@@ -148324,8 +148887,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-ats";
-       version = "1.7.10.0";
-       sha256 = "1xixsf3n8ld1fjd96qvvvrmrmypd7idyb7syih09f8gq80jkaw5g";
+       version = "1.7.10.1";
+       sha256 = "19m9qalh9xiaw6n60zbhs8yqhd0acq08bkx42i44vfmm0917jys3";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          ansi-wl-pprint array base composition-prelude containers deepseq
@@ -148358,6 +148921,25 @@ self: {
        license = stdenv.lib.licenses.asl20;
      }) {};
 
+  "language-avro_0_1_3_1" = callPackage
+    ({ mkDerivation, avro, base, containers, directory, filepath, hspec
+     , hspec-megaparsec, megaparsec, text, vector
+     }:
+     mkDerivation {
+       pname = "language-avro";
+       version = "0.1.3.1";
+       sha256 = "0b54041z1sfrd7fck975i8d69agxij6jml6mxlcr41y7ywvizq0l";
+       libraryHaskellDepends = [
+         avro base containers directory filepath megaparsec text vector
+       ];
+       testHaskellDepends = [
+         avro base hspec hspec-megaparsec megaparsec text vector
+       ];
+       description = "Language definition and parser for AVRO files";
+       license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "language-bash" = callPackage
     ({ mkDerivation, base, directory, filepath, parsec, prettyprinter
      , process, QuickCheck, tasty, tasty-expected-failure, tasty-golden
@@ -148611,8 +149193,6 @@ self: {
        ];
        description = "Dockerfile parser, pretty-printer and embedded DSL";
        license = stdenv.lib.licenses.gpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "language-dockerfile" = callPackage
@@ -148669,8 +149249,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-ecmascript";
-       version = "0.19.0.1";
-       sha256 = "1jh5ksx5hh2q9b134rfmcpz4i1j6fsfyqzk4yh8yn635kwa86jhr";
+       version = "0.19.1.0";
+       sha256 = "0kk5zk9lr6kvpkz4ihw8ww4j03m899i0af6yhf4q3r7r4d1yq22s";
        libraryHaskellDepends = [
          ansi-wl-pprint base charset containers data-default-class Diff mtl
          parsec QuickCheck template-haskell uniplate
@@ -148821,6 +149401,8 @@ self: {
        pname = "language-haskell-extract";
        version = "0.2.4";
        sha256 = "1nxcs7g8a1sp91bzpy4cj6s31k5pvc3gvig04cbrggv5cvjidnhl";
+       revision = "1";
+       editedCabalFile = "1chx4g8ngb1hpyh3r9rbl8rkjkm67klms4wmw3p1g2llg47vvqip";
        libraryHaskellDepends = [ base regex-posix template-haskell ];
        description = "Module to automatically extract functions from the local code";
        license = stdenv.lib.licenses.bsd3;
@@ -148897,8 +149479,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-javascript";
-       version = "0.7.0.0";
-       sha256 = "15bpqpkjf2y3fk8wff9zlnkpsjc63bnbvhlkxrs9alj0bikq17nk";
+       version = "0.7.1.0";
+       sha256 = "0s6igb54cxm2jywgc3sq53f52gcsc39wd3g78yisfzvl9jm3d86i";
        libraryHaskellDepends = [
          array base blaze-builder bytestring containers mtl text utf8-string
        ];
@@ -149841,8 +150423,6 @@ self: {
        ];
        description = "Automatically inline Haskell snippets into LaTeX documents";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "latex-svg-hakyll" = callPackage
@@ -149906,6 +150486,8 @@ self: {
        pname = "lattices";
        version = "2.0.2";
        sha256 = "108rhpax72j6xdl0yqdmg7n32l1j805861f3q9wd3jh8nc67avix";
+       revision = "2";
+       editedCabalFile = "122mrj3b15jv1bjmzc8k37dkc2gy05hg550gia09n7j7n76v0h7i";
        libraryHaskellDepends = [
          base base-compat containers deepseq hashable integer-logarithms
          QuickCheck semigroupoids tagged transformers universe-base
@@ -149930,8 +150512,8 @@ self: {
      }:
      mkDerivation {
        pname = "launchdarkly-server-sdk";
-       version = "1.0.2";
-       sha256 = "1psm449p7fsh4b5mf7y7dlgh44za1fhf0cbn0qya1j4imy3x673b";
+       version = "1.0.3";
+       sha256 = "1xiy76ahwl83fmpj522nzrp9i7rvvn9xjjj6wzrl3vhbjdbmq4m5";
        libraryHaskellDepends = [
          aeson attoparsec base base16-bytestring bytestring
          bytestring-conversion clock containers cryptohash exceptions extra
@@ -150561,8 +151143,8 @@ self: {
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "leancheck";
-       version = "0.9.1";
-       sha256 = "03n9apqkfs8vjm0s1ajfpg02zsvdm091di0860gyqa58cd3qbkdb";
+       version = "0.9.3";
+       sha256 = "14wi7h07pipd56grhaqmhb8wmr52llgd3xb7fm8hi9fb1sfzmvg0";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base ];
        description = "Enumerative property-based testing";
@@ -150733,8 +151315,6 @@ self: {
        ];
        description = "Yet another library for hidden Markov models";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "leetify" = callPackage
@@ -151342,8 +151922,8 @@ self: {
        pname = "lens-properties";
        version = "4.11.1";
        sha256 = "1caciyn75na3f25q9qxjl7ibjam22xlhl5k2pqfiak10lxsmnz2g";
-       revision = "3";
-       editedCabalFile = "1ll8j0zymxnr2xxp2h1aaqfcwd6ihjdllk5b7q02r5kw2b8a266b";
+       revision = "4";
+       editedCabalFile = "1ky3xzh3cgam5ncx7n25xbll7vqw3x7vyhprfmxm34pshkxbrjh7";
        libraryHaskellDepends = [ base lens QuickCheck transformers ];
        description = "QuickCheck properties for lens";
        license = stdenv.lib.licenses.bsd3;
@@ -151436,6 +152016,17 @@ self: {
        broken = true;
      }) {};
 
+  "lens-th-rewrite" = callPackage
+    ({ mkDerivation, base, ghc, lens }:
+     mkDerivation {
+       pname = "lens-th-rewrite";
+       version = "0.1.0.0";
+       sha256 = "08nk7fglx1751zak82h8w0ld3lplzaghxraqwqrkvj39gwm4mqgx";
+       libraryHaskellDepends = [ base ghc lens ];
+       description = "Rewrites Template Haskell splices using the API";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "lens-time" = callPackage
     ({ mkDerivation, base, lens, time }:
      mkDerivation {
@@ -151960,8 +152551,8 @@ self: {
      }:
      mkDerivation {
        pname = "libarchive";
-       version = "2.2.4.0";
-       sha256 = "05d16ckk6iaj75zarqq6hjjmmb2xdd62hcyidfya3jfkw74zh1rp";
+       version = "2.2.5.0";
+       sha256 = "0vsrjkg4ijk63rgsl7cqdi1inpnv7ballrg5c5pgrrapwxfb5v4x";
        setupHaskellDepends = [ base Cabal chs-cabal ];
        libraryHaskellDepends = [
          base bytestring composition-prelude deepseq dlist filepath mtl
@@ -151979,8 +152570,6 @@ self: {
        ];
        description = "Haskell interface to libarchive";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {inherit (pkgs) libarchive;};
 
   "libarchive-conduit" = callPackage
@@ -152923,32 +153512,29 @@ self: {
      }) {};
 
   "life-sync" = callPackage
-    ({ mkDerivation, ansi-terminal, base-noprelude, bytestring
-     , containers, exceptions, filepath, fmt, hedgehog
-     , microlens-platform, optparse-applicative, path, path-io, process
-     , relude, tasty, tasty-discover, tasty-hedgehog, text, tomland
+    ({ mkDerivation, base, bytestring, colourista, containers
+     , exceptions, filepath, hedgehog, hspec, hspec-hedgehog
+     , optparse-applicative, path, path-io, process, relude, shellmet
+     , text, tomland, validation-selective
      }:
      mkDerivation {
        pname = "life-sync";
-       version = "1.0.1";
-       sha256 = "1p7vnbk6xsa2963wc77cjjc5bbnrswzh27nw1zra09405yd21yf0";
+       version = "1.1.0.0";
+       sha256 = "0l56n4dhg6p4lw7i7jjq747qv7r6fr0k2gdabwkbbb2qhsviw162";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         ansi-terminal base-noprelude bytestring containers exceptions fmt
-         microlens-platform path path-io process relude text tomland
-       ];
-       executableHaskellDepends = [
-         base-noprelude containers optparse-applicative path
+         base bytestring colourista containers exceptions
+         optparse-applicative path path-io process relude shellmet text
+         tomland validation-selective
        ];
+       executableHaskellDepends = [ base relude ];
        testHaskellDepends = [
-         base-noprelude containers filepath hedgehog path tasty
-         tasty-hedgehog
+         base containers filepath hedgehog hspec hspec-hedgehog path relude
+         text
        ];
-       testToolDepends = [ tasty-discover ];
-       license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
+       description = "Synchronize personal configs across multiple machines";
+       license = stdenv.lib.licenses.mpl20;
      }) {};
 
   "lift-generics" = callPackage
@@ -153002,6 +153588,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "lifted-async_0_10_0_6" = callPackage
+    ({ mkDerivation, async, base, constraints, criterion, deepseq
+     , HUnit, lifted-base, monad-control, mtl, tasty
+     , tasty-expected-failure, tasty-hunit, tasty-th, transformers-base
+     }:
+     mkDerivation {
+       pname = "lifted-async";
+       version = "0.10.0.6";
+       sha256 = "1nnhb9sdn5ilwzdrzk9hfchcgvk3kb28fciriqhhxzi2qqzmdxbj";
+       libraryHaskellDepends = [
+         async base constraints lifted-base monad-control transformers-base
+       ];
+       testHaskellDepends = [
+         async base HUnit lifted-base monad-control mtl tasty
+         tasty-expected-failure tasty-hunit tasty-th
+       ];
+       benchmarkHaskellDepends = [ async base criterion deepseq ];
+       description = "Run lifted IO operations asynchronously and wait for their results";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "lifted-base" = callPackage
     ({ mkDerivation, base, criterion, HUnit, monad-control, monad-peel
      , test-framework, test-framework-hunit, transformers
@@ -153694,8 +154302,8 @@ self: {
      }:
      mkDerivation {
        pname = "linear-tests";
-       version = "0.1.1.0";
-       sha256 = "0qndn8svhynvis1a69p7sircp8sd56hmk9gd4crcadiy8nf99227";
+       version = "0.1.2.0";
+       sha256 = "1l87lwbbmzq3qpf20zxq10ss1zdym87gq8kpim3ym0259ak4w89r";
        libraryHaskellDepends = [ base lens linear QuickCheck ];
        testHaskellDepends = [
          base hspec hspec-core lens linear QuickCheck
@@ -155169,6 +155777,25 @@ self: {
        broken = true;
      }) {};
 
+  "llvm-dsl" = callPackage
+    ({ mkDerivation, base, bool8, llvm-extra, llvm-tf, numeric-prelude
+     , prelude-compat, storable-enum, storable-record, tfp, transformers
+     , utility-ht
+     }:
+     mkDerivation {
+       pname = "llvm-dsl";
+       version = "0.0";
+       sha256 = "0ij2y3q8c46z731b1hlqcjgrkmzsj066mnb0rpnwkn70caai3vz8";
+       libraryHaskellDepends = [
+         base bool8 llvm-extra llvm-tf numeric-prelude prelude-compat
+         storable-enum storable-record tfp transformers utility-ht
+       ];
+       description = "Support for writing an EDSL with LLVM-JIT as target";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "llvm-extension" = callPackage
     ({ mkDerivation, base, containers, cpuid, llvm-extra, llvm-tf
      , non-empty, prelude-compat, tfp, transformers, unsafe, utility-ht
@@ -155190,21 +155817,25 @@ self: {
      }) {};
 
   "llvm-extra" = callPackage
-    ({ mkDerivation, base, bool8, containers, enumset, llvm-tf
-     , non-empty, prelude-compat, QuickCheck, storable-enum, tagged, tfp
-     , transformers, utility-ht
+    ({ mkDerivation, base, base-orphans, bool8, containers, enumset
+     , fixed-length, llvm-tf, non-empty, prelude-compat, QuickCheck
+     , storable-enum, storable-record, tagged, tfp, transformers
+     , utility-ht
      }:
      mkDerivation {
        pname = "llvm-extra";
-       version = "0.9.1";
-       sha256 = "0wxs8ki3l5fyijdv7z0xyrikx4whazyxv69ly0x98ag25l5fxwyi";
+       version = "0.10";
+       sha256 = "0g2872wl1gmdlw3gdimcb1wcdsckjwjlk1ciwz8sy0rx9v3kif1m";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bool8 containers enumset llvm-tf non-empty prelude-compat
-         storable-enum tagged tfp transformers utility-ht
+         base base-orphans bool8 containers enumset fixed-length llvm-tf
+         non-empty prelude-compat storable-enum storable-record tagged tfp
+         transformers utility-ht
+       ];
+       testHaskellDepends = [
+         base llvm-tf QuickCheck storable-record tfp utility-ht
        ];
-       testHaskellDepends = [ base llvm-tf QuickCheck tfp utility-ht ];
        doHaddock = false;
        description = "Utility functions for the llvm interface";
        license = stdenv.lib.licenses.bsd3;
@@ -155216,8 +155847,8 @@ self: {
     ({ mkDerivation, base, enumset, LLVM }:
      mkDerivation {
        pname = "llvm-ffi";
-       version = "9.1.0";
-       sha256 = "1nfgh56wrlw13w0an9vyp78ahz2lp0yy0v7yqh1zr22a0mnwnq3s";
+       version = "9.1.0.1";
+       sha256 = "19bj8gkzmzg3khnj1pnksc789p1hls0ji48kvwp72zbhhzgpr75d";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base enumset ];
@@ -155477,14 +156108,16 @@ self: {
      }:
      mkDerivation {
        pname = "llvm-tf";
-       version = "9.1.1";
-       sha256 = "089pq0n3qj3df74g25jkn64byfb4g9f3di1h2fmps8n0yhr8qz3j";
+       version = "9.2";
+       sha256 = "1p4r9m1svp6k235r0azx6dkpdarakgy3420z3kk06bdiy1m2jk1s";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base containers enumset fixed-length llvm-ffi non-empty QuickCheck
          semigroups storable-record tfp transformers utility-ht
        ];
+       testHaskellDepends = [ base QuickCheck tfp utility-ht ];
+       doHaddock = false;
        description = "Bindings to the LLVM compiler toolkit using type families";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -155681,8 +156314,6 @@ self: {
        testHaskellDepends = [ base containers doctest hedgehog ];
        description = "Types representing line and column positions and ranges in text files";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "loc-test" = callPackage
@@ -155694,8 +156325,6 @@ self: {
        libraryHaskellDepends = [ base containers hedgehog loc ];
        description = "Test-related utilities related to the /loc/ package";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "local-address" = callPackage
@@ -155954,6 +156583,8 @@ self: {
        pname = "log-base";
        version = "0.8.0.0";
        sha256 = "15539v6y6s46kgb86ns13rh17c1qnidwdajk26yaxyqky58yx2m6";
+       revision = "1";
+       editedCabalFile = "0kdkvyw39ywly1qv1l0sq5qzr1akigl8410vr647hy2cn46anva0";
        libraryHaskellDepends = [
          aeson aeson-pretty base bytestring deepseq exceptions mmorph
          monad-control monad-time mtl semigroups stm text time
@@ -156125,8 +156756,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Flexible, configurable, monadic and pretty logging";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "log2json" = callPackage
@@ -157197,8 +157826,8 @@ self: {
        pname = "lrucaching";
        version = "0.3.3";
        sha256 = "192a2zap1bmxa2y48n48rmngf18fr8k0az4a230hziv3g795yzma";
-       revision = "9";
-       editedCabalFile = "0rzrj9ziwly33lhkamf9rkrc3jqhid3adl0dv9621n4zzd6dnkb6";
+       revision = "10";
+       editedCabalFile = "1yzmwvwzby4dx896jlgznlpigqlsl475a57l1npjz0rimlqr71w6";
        libraryHaskellDepends = [
          base base-compat deepseq hashable psqueues vector
        ];
@@ -157257,8 +157886,8 @@ self: {
      }:
      mkDerivation {
        pname = "lsp-test";
-       version = "0.10.1.0";
-       sha256 = "1f1ab7gn5bgdlhlayrrrhk6d8iyf971pia6hb23jjyqz9j0vl7ac";
+       version = "0.10.2.0";
+       sha256 = "1khqdgc90k9ya58nxsb6dggyyjdp5q9m4bgxmkg15l6qh6mw9zqp";
        libraryHaskellDepends = [
          aeson aeson-pretty ansi-terminal async base bytestring conduit
          conduit-parse containers data-default Diff directory filepath
@@ -157656,8 +158285,8 @@ self: {
      }:
      mkDerivation {
        pname = "lukko";
-       version = "0.1.1.1";
-       sha256 = "13wf2vgi3bq48h757qs0zi1sxa6ip9pk8fxfiq7qrrb9p5silcpj";
+       version = "0.1.1.2";
+       sha256 = "1lh7cv0fqbrn8sf54xz74wq991bl8p67jcyq4ing3khcvh9x2yca";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [
          async base bytestring filepath singleton-bool tasty
@@ -157934,8 +158563,6 @@ self: {
        ];
        description = "Bindings to LZ4";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "lz4-conduit" = callPackage
@@ -157969,8 +158596,8 @@ self: {
      }:
      mkDerivation {
        pname = "lz4-hs";
-       version = "0.1.3.0";
-       sha256 = "0yx1njh0zwk2qk99ip1f2wlcy3ql35piqbvd6dppr2hwnm5bh1mk";
+       version = "0.1.4.0";
+       sha256 = "1biwiqc43wd2njfinrpfzg7pglsrcb2xjhvrm62ida04djrh8s4y";
        libraryHaskellDepends = [ base bytestring ];
        libraryToolDepends = [ c2hs ];
        testHaskellDepends = [ base bytestring tasty tasty-hunit ];
@@ -158020,8 +158647,8 @@ self: {
        pname = "lzma";
        version = "0.0.0.3";
        sha256 = "0i416gqi8j55nd1pqbkxvf3f6hn6fjys6gq98lkkxphva71j30xg";
-       revision = "4";
-       editedCabalFile = "0f3zrjq4zxwacmlc934y873pvlqpmmcmhzhp34d8pvhi5c7dg47j";
+       revision = "5";
+       editedCabalFile = "1m1a3w8cjqz8h4iibkgykzgmrmkxxgz9sm0zn52dbvczdiqbs5y5";
        libraryHaskellDepends = [ base bytestring ];
        librarySystemDepends = [ lzma ];
        testHaskellDepends = [
@@ -158806,8 +159433,6 @@ self: {
        ];
        description = "Count mailboxes in a SQL database";
        license = stdenv.lib.licenses.agpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "mailchimp" = callPackage
@@ -160126,6 +160751,8 @@ self: {
        pname = "marshal-contt";
        version = "0.2.0.0";
        sha256 = "1dv2jl7gm3b3kcchgwz4v6rch5w50ak43gc6fjvpms81xkdjfzmb";
+       revision = "1";
+       editedCabalFile = "1cfkcb3zpddikzg610zbrwr00vn3y8sakr3m8vis5cw25hxra1c0";
        libraryHaskellDepends = [
          base bytestring kan-extensions lens mtl
        ];
@@ -160529,8 +161156,8 @@ self: {
      }:
      mkDerivation {
        pname = "math-grads";
-       version = "0.1.6.4";
-       sha256 = "018h2pczvdxvmws9sjihmyg396dvgd4a038jmi8z42rp1dgbql1r";
+       version = "0.1.6.7";
+       sha256 = "15dxw679hxkkqdj3yzv49r32a8jll9xj8s8fqmvnyqwzw4lx50qy";
        libraryHaskellDepends = [
          aeson array base bimap containers ilist lens linear matrix mtl
          random vector
@@ -160668,8 +161295,6 @@ self: {
        testHaskellDepends = [ base hspec parsec ];
        description = "A small programming language for numerical computing";
        license = stdenv.lib.licenses.publicDomain;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "mathlink" = callPackage
@@ -160822,15 +161447,16 @@ self: {
      }) {};
 
   "matrix-sized" = callPackage
-    ({ mkDerivation, base, binary, bytestring, deepseq, primitive
-     , singletons, vector
+    ({ mkDerivation, base, primitive, singletons, tasty
+     , tasty-quickcheck, vector
      }:
      mkDerivation {
        pname = "matrix-sized";
-       version = "0.0.2";
-       sha256 = "1sp9d3pfkq80klwryvggjf76hm4y9qqair3cppvgnp06kn99k1z1";
-       libraryHaskellDepends = [
-         base binary bytestring deepseq primitive singletons vector
+       version = "0.0.3";
+       sha256 = "1c43cgcw43y777l1wfkdagkis5sbb79fdwhckzwx11av6br02x5g";
+       libraryHaskellDepends = [ base primitive singletons vector ];
+       testHaskellDepends = [
+         base primitive singletons tasty tasty-quickcheck vector
        ];
        description = "Haskell matrix library with interface to C++ linear algebra libraries";
        license = stdenv.lib.licenses.bsd3;
@@ -160901,7 +161527,7 @@ self: {
      , brick, brick-skylighting, bytestring, cheapskate, checkers
      , config-ini, connection, containers, data-clist, directory
      , filepath, gitrev, hashable, Hclip, mattermost-api
-     , mattermost-api-qc, microlens-platform, mtl, process
+     , mattermost-api-qc, microlens-platform, mtl, network-uri, process
      , quickcheck-text, random, semigroups, skylighting-core, stm
      , stm-delay, strict, string-conversions, tasty, tasty-hunit
      , tasty-quickcheck, temporary, text, text-zipper, time
@@ -160911,8 +161537,8 @@ self: {
      }:
      mkDerivation {
        pname = "matterhorn";
-       version = "50200.7.0";
-       sha256 = "08ynlxqdb2mr7si0q7747pd1x9v9s7jmq2q75bqhzl44rpjhh4dv";
+       version = "50200.8.0";
+       sha256 = "05fkhizjj5vvrsz7db8s7ig36ym02n6mndwaay0md8s7fghjwfiw";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -160920,10 +161546,11 @@ self: {
          aeson aspell-pipe async base base-compat brick brick-skylighting
          bytestring cheapskate config-ini connection containers data-clist
          directory filepath gitrev hashable Hclip mattermost-api
-         microlens-platform mtl process random semigroups skylighting-core
-         stm stm-delay strict temporary text text-zipper time timezone-olson
-         timezone-series transformers unix unordered-containers utf8-string
-         uuid vector vty word-wrap xdg-basedir
+         microlens-platform mtl network-uri process random semigroups
+         skylighting-core stm stm-delay strict temporary text text-zipper
+         time timezone-olson timezone-series transformers unix
+         unordered-containers utf8-string uuid vector vty word-wrap
+         xdg-basedir
        ];
        testHaskellDepends = [
          base base-compat brick bytestring cheapskate checkers config-ini
@@ -160936,28 +161563,28 @@ self: {
        ];
        description = "Terminal client for the Mattermost chat system";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
+       maintainers = with stdenv.lib.maintainers; [ kiwi ];
      }) {};
 
   "mattermost-api" = callPackage
     ({ mkDerivation, aeson, base, binary, bytestring, connection
      , containers, gitrev, hashable, HTTP, http-media, HUnit, memory
-     , microlens, microlens-th, mtl, network-uri, pretty-show, process
-     , resource-pool, split, stm, tasty, tasty-hunit, template-haskell
-     , text, time, unordered-containers, websockets
+     , microlens, microlens-th, modern-uri, mtl, network-uri
+     , pretty-show, process, resource-pool, split, stm, tasty
+     , tasty-hunit, template-haskell, text, time, unordered-containers
+     , websockets
      }:
      mkDerivation {
        pname = "mattermost-api";
-       version = "50200.4.0";
-       sha256 = "0nl3xsw90rg08hmipr0d80h7ss68mlyaawagkiv2gj4qjlb2lqcn";
+       version = "50200.5.0";
+       sha256 = "0hfwc85qhz1klwr4baabcrv6n7imfj3xz809dddy2hdfav0y9qgg";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson base binary bytestring connection containers gitrev hashable
-         HTTP http-media memory microlens microlens-th network-uri
-         pretty-show process resource-pool split stm template-haskell text
-         time unordered-containers websockets
+         HTTP http-media memory microlens microlens-th modern-uri
+         network-uri pretty-show process resource-pool split stm
+         template-haskell text time unordered-containers websockets
        ];
        testHaskellDepends = [
          aeson base containers HUnit mtl pretty-show stm tasty tasty-hunit
@@ -160965,8 +161592,7 @@ self: {
        ];
        description = "Client API for Mattermost chat system";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
+       maintainers = with stdenv.lib.maintainers; [ kiwi ];
      }) {};
 
   "mattermost-api-qc" = callPackage
@@ -160975,15 +161601,14 @@ self: {
      }:
      mkDerivation {
        pname = "mattermost-api-qc";
-       version = "50200.4.0";
-       sha256 = "1lxr3xfvc4qg1n1wxqz1bv4ac12xiwnk79i53w2gx2xks6rdpibj";
+       version = "50200.5.0";
+       sha256 = "0gzjzfzfipvpk61zilxw9a1xsgm10lrsl26rvr4h4gjw6mws7bg8";
        libraryHaskellDepends = [
          base containers mattermost-api QuickCheck text time
        ];
        description = "QuickCheck instances for the Mattermost client API library";
        license = stdenv.lib.licenses.isc;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
+       maintainers = with stdenv.lib.maintainers; [ kiwi ];
      }) {};
 
   "maude" = callPackage
@@ -161207,8 +161832,6 @@ self: {
        testHaskellDepends = [ base HUnit ];
        description = "Haskell MBTiles client";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "mbug" = callPackage
@@ -161783,6 +162406,8 @@ self: {
        pname = "megaparsec-tests";
        version = "8.0.0";
        sha256 = "1l71s16fhl2054myj02fnnjr71pfypjvwxd0hxzf83zwmqnv558f";
+       revision = "1";
+       editedCabalFile = "1hawpdlx2nwyi5s06vh5lvccyjzsxzns02mhggzy0kb33xb9c818";
        libraryHaskellDepends = [
          base bytestring containers hspec hspec-expectations
          hspec-megaparsec megaparsec mtl QuickCheck text transformers
@@ -162375,6 +163000,8 @@ self: {
        pname = "merkle-log";
        version = "0.1.0.0";
        sha256 = "07q0ifgwq8agwm62k1k83sdrln4zbj6ln90nw9p9g3pgxnp3inia";
+       revision = "1";
+       editedCabalFile = "1vrzsflvmx0mrsdb7i7pbz4d74k6yjccrb7979yw0r91qhmzlcir";
        libraryHaskellDepends = [
          base bytestring cryptonite deepseq exceptions memory text
        ];
@@ -162868,8 +163495,8 @@ self: {
        pname = "microaeson";
        version = "0.1.0.0";
        sha256 = "1hbpyz6p9snnd85h2y0pdqp20svxrggavbv0q8z33sc5i4p8b7iz";
-       revision = "2";
-       editedCabalFile = "1n3jhbwic8c2pa6dcz36a6fgna4b854ml5d5n8qzzhjshb0v60ri";
+       revision = "3";
+       editedCabalFile = "09fbsmxlhcjazd99r05n1cla9akficbnfylszg9jkpic7g0p5pa3";
        libraryHaskellDepends = [
          array base bytestring containers deepseq text
        ];
@@ -162884,6 +163511,18 @@ self: {
        broken = true;
      }) {};
 
+  "microbase" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "microbase";
+       version = "4.14.0.0.2";
+       sha256 = "11w2nscia78cw9pccf9ibcn0i3yfykwfvhzhn0x0xy5lav69p01q";
+       libraryHaskellDepends = [ base ];
+       doHaddock = false;
+       description = "A minimal base to work around GHC bugs";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "microbench" = callPackage
     ({ mkDerivation, base, time }:
      mkDerivation {
@@ -163172,8 +163811,8 @@ self: {
        pname = "microstache";
        version = "1.0.1.1";
        sha256 = "0851sqr1ppdj6m822635pa3j6qzdf25gyrhkjs25zdry6518bsax";
-       revision = "5";
-       editedCabalFile = "1dr1yqn42j6im1x333rpsqj57nhmagmhwkdfwx832cdsw9ry2gjz";
+       revision = "6";
+       editedCabalFile = "054ny1rsqz682k4x36dqj6wqbj6arwxp75xpsss8lc7j145d0qn3";
        libraryHaskellDepends = [
          aeson base bytestring containers deepseq directory filepath parsec
          text transformers unordered-containers vector
@@ -163657,8 +164296,6 @@ self: {
        ];
        description = "Double-ended priority queues";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "minecraft" = callPackage
@@ -164186,8 +164823,6 @@ self: {
        executableHaskellDepends = [ monad-loops regex-base regex-pcre ];
        description = "fortune-mod clone";
        license = stdenv.lib.licenses.publicDomain;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "mismi-core" = callPackage
@@ -164314,6 +164949,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "miso_1_5_0_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, http-api-data
+     , http-types, lucid, network-uri, servant, servant-lucid, text
+     , transformers, vector
+     }:
+     mkDerivation {
+       pname = "miso";
+       version = "1.5.0.0";
+       sha256 = "08843wyd41hs38vrixcfdnmar9vkvayk11323kav4qq85s3yhsd3";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers http-api-data http-types lucid
+         network-uri servant servant-lucid text transformers vector
+       ];
+       description = "A tasty Haskell front-end framework";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "miso-action-logger" = callPackage
     ({ mkDerivation, aeson, base, ghcjs-base, miso }:
      mkDerivation {
@@ -164331,8 +164986,8 @@ self: {
     ({ mkDerivation }:
      mkDerivation {
        pname = "miso-examples";
-       version = "1.3.0.0";
-       sha256 = "1nwiznlhvnr7jcaqp1w0l2wwci9jbs56jrdiz79mpxrqq79h1icg";
+       version = "1.5.0.0";
+       sha256 = "0k0rf7kb65nqckmz8gc27rssnn3ja0nswmrbslfmm0nz7293jaiw";
        isLibrary = false;
        isExecutable = true;
        description = "A tasty Haskell front-end framework";
@@ -164827,15 +165482,17 @@ self: {
      }) {};
 
   "mmsyn7l" = callPackage
-    ({ mkDerivation, base, mmsyn2, mmsyn7ukr, vector }:
+    ({ mkDerivation, base, directory, mmsyn2, mmsyn7ukr, vector }:
      mkDerivation {
        pname = "mmsyn7l";
-       version = "0.3.2.0";
-       sha256 = "0h3j7y6k9zagw0djj8hrnlhfdqg60hb52h9xb3ni326ijshw2qil";
+       version = "0.4.2.0";
+       sha256 = "1dpilwaffrkihfgbpq7p1095qpx9qgcpzbs8q3kld948hliihix7";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [ base mmsyn2 mmsyn7ukr vector ];
-       executableHaskellDepends = [ base mmsyn2 mmsyn7ukr vector ];
+       libraryHaskellDepends = [ base directory mmsyn2 mmsyn7ukr vector ];
+       executableHaskellDepends = [
+         base directory mmsyn2 mmsyn7ukr vector
+       ];
        description = "Modifies the amplitudes of the Ukrainian sounds representations created by mmsyn7ukr package";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -165517,15 +166174,15 @@ self: {
      }) {};
 
   "monad-choice" = callPackage
-    ({ mkDerivation, base, invariant, MonadRandom, mtl, transformers }:
+    ({ mkDerivation, base, contravariant, invariant, MonadRandom, mtl
+     , primitive, transformers
+     }:
      mkDerivation {
        pname = "monad-choice";
-       version = "0.1.0.0";
-       sha256 = "0vhfiqrnkfhqkhnh9h4npl3rfam321iikabr3przywfcfd4gap4z";
-       revision = "3";
-       editedCabalFile = "055zzzz9ag1wb79bjx0wg59plajym156hz0bh0lq4ndvn4k7sxay";
+       version = "0.2.0.0";
+       sha256 = "1ryakbs6ydgdfvz067jw6a2aqg566pynwyibxl6qi77ywwahqlvk";
        libraryHaskellDepends = [
-         base invariant MonadRandom mtl transformers
+         base contravariant invariant MonadRandom mtl primitive transformers
        ];
        description = "Monad, monad transformer, and typeclass representing choices";
        license = stdenv.lib.licenses.agpl3;
@@ -165539,8 +166196,8 @@ self: {
        pname = "monad-chronicle";
        version = "1";
        sha256 = "03x19683pm99zcw7gkipmdkrqwaspcyvy7yv68nlh6g4swl31a0l";
-       revision = "1";
-       editedCabalFile = "059qa4kb6x3vqw0pahbkp3i6v33cyaiizzkgxd1n36l9ybchwr4l";
+       revision = "2";
+       editedCabalFile = "0ajjcv8h6104k2xlzlqkhvy7hmv6p4ldca3jdsa9ns38sxy8j6ld";
        libraryHaskellDepends = [
          base data-default-class mtl semigroupoids these transformers
          transformers-compat
@@ -166081,8 +166738,6 @@ self: {
        testHaskellDepends = [ base ];
        description = "A convenient wrapper around EKG metrics";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "monad-metrics-extensible" = callPackage
@@ -167525,8 +168180,6 @@ self: {
        ];
        description = "A web service framework for Haskell, similar in purpose to dropwizard";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "more-containers" = callPackage
@@ -168090,31 +168743,25 @@ self: {
      }) {inherit (pkgs) mpg123;};
 
   "mpi-hs" = callPackage
-    ({ mkDerivation, base, binary, bytestring, c2hs, cereal, criterion
-     , monad-loops, openmpi, store
-     }:
+    ({ mkDerivation, base, bytestring, c2hs, monad-loops, mpich }:
      mkDerivation {
        pname = "mpi-hs";
-       version = "0.5.3.0";
-       sha256 = "0z2m4xfk0w1zx29jb27xb6hs01xid0ghv93yhqx7zwiw01815krk";
+       version = "0.7.1.0";
+       sha256 = "1xja12laj9pznwkgllgn2126g0izgv7mp267jv0ihlzy4yv2ps8m";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [
-         base binary bytestring cereal monad-loops store
-       ];
-       librarySystemDepends = [ openmpi ];
+       libraryHaskellDepends = [ base bytestring monad-loops ];
+       librarySystemDepends = [ mpich ];
        libraryToolDepends = [ c2hs ];
-       executableHaskellDepends = [ base binary ];
-       executableSystemDepends = [ openmpi ];
+       executableHaskellDepends = [ base ];
+       executableSystemDepends = [ mpich ];
        testHaskellDepends = [ base monad-loops ];
-       testSystemDepends = [ openmpi ];
-       benchmarkHaskellDepends = [ base criterion ];
-       benchmarkSystemDepends = [ openmpi ];
+       testSystemDepends = [ mpich ];
        description = "MPI bindings for Haskell";
        license = stdenv.lib.licenses.asl20;
        hydraPlatforms = stdenv.lib.platforms.none;
        broken = true;
-     }) {inherit (pkgs) openmpi;};
+     }) {inherit (pkgs) mpich;};
 
   "mplayer-spot" = callPackage
     ({ mkDerivation, async, attoparsec, base, bytestring, conduit
@@ -168320,8 +168967,8 @@ self: {
     ({ mkDerivation, base, hspec }:
      mkDerivation {
        pname = "mr-env";
-       version = "0.1.0.1";
-       sha256 = "102m1gqjcscwf620jpaz1i7hg73ikd19an2wjgnfpfrlzw83xgd6";
+       version = "0.1.0.2";
+       sha256 = "1bw0ga59lf1crhjx4hlmsnzllsf3nfwzzsfcll0xf04fkj0jgxlg";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base hspec ];
        description = "A simple way to read environment variables in Haskell";
@@ -168443,6 +169090,32 @@ self: {
        broken = true;
      }) {};
 
+  "msgpack-binary" = callPackage
+    ({ mkDerivation, base, binary, bytestring, containers, criterion
+     , data-binary-ieee754, deepseq, groom, hashable, hspec
+     , msgpack-types, QuickCheck, text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "msgpack-binary";
+       version = "0.0.14";
+       sha256 = "1pf0fzxkrd2f1jzm3mkybayd94pxq28a49nvjzx8i2lxrdmynkp6";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base binary bytestring data-binary-ieee754 msgpack-types text
+       ];
+       executableHaskellDepends = [ base bytestring groom ];
+       testHaskellDepends = [
+         base bytestring containers hashable hspec msgpack-types QuickCheck
+         text unordered-containers vector
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring criterion deepseq QuickCheck
+       ];
+       description = "A Haskell implementation of MessagePack";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "msgpack-idl" = callPackage
     ({ mkDerivation, base, blaze-builder, bytestring, cmdargs
      , containers, directory, filepath, hspec, msgpack, peggy
@@ -168488,6 +169161,48 @@ self: {
        broken = true;
      }) {};
 
+  "msgpack-rpc-conduit" = callPackage
+    ({ mkDerivation, async, base, binary, binary-conduit, bytestring
+     , conduit, conduit-extra, data-default-class
+     , data-default-instances-base, exceptions, hspec, monad-control
+     , msgpack-binary, msgpack-types, mtl, network, text, unliftio-core
+     }:
+     mkDerivation {
+       pname = "msgpack-rpc-conduit";
+       version = "0.0.6";
+       sha256 = "000aycbvxac4li8rxqxmj3a020fwl08wnq01fv8jdlx3qg7k57hf";
+       libraryHaskellDepends = [
+         base binary binary-conduit bytestring conduit conduit-extra
+         data-default-class data-default-instances-base exceptions
+         monad-control msgpack-binary msgpack-types mtl network text
+         unliftio-core
+       ];
+       testHaskellDepends = [ async base bytestring hspec mtl network ];
+       description = "A MessagePack-RPC Implementation";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "msgpack-types" = callPackage
+    ({ mkDerivation, base, bytestring, containers, deepseq
+     , generic-arbitrary, hashable, hspec, QuickCheck, text
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "msgpack-types";
+       version = "0.0.4";
+       sha256 = "076szvjs80a765c72prjp73416gyq70b4k1319qfl339sa8lz1ky";
+       libraryHaskellDepends = [
+         base bytestring containers deepseq hashable QuickCheck text
+         unordered-containers vector
+       ];
+       testHaskellDepends = [
+         base bytestring containers deepseq generic-arbitrary hashable hspec
+         QuickCheck text unordered-containers vector
+       ];
+       description = "A Haskell implementation of MessagePack";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "msh" = callPackage
     ({ mkDerivation, base, containers, haskell-src-exts
      , haskell-src-meta, lens, mtl, parsec, template-haskell, text
@@ -169321,8 +170036,6 @@ self: {
        testHaskellDepends = [ base cryptonite doctest hedgehog ];
        description = "Self-identifying hashes, implementation of <https://github.com/multiformats/multihash>";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "multihash-serialise" = callPackage
@@ -170153,8 +170866,8 @@ self: {
      }:
      mkDerivation {
        pname = "musicScroll";
-       version = "0.2.0.0";
-       sha256 = "1iv80yhal5f8klsc095yabq7402w45j8lb0g64avdyp2zy569vmx";
+       version = "0.2.2.0";
+       sha256 = "1r1n22g98sqi8hnrkwb6cyv805ggq8770iwa4bzwiq7a59x3rlm6";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -171228,8 +171941,6 @@ self: {
        ];
        description = "Parse Nagios performance data";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "nagios-plugin-ekg" = callPackage
@@ -172163,8 +172874,6 @@ self: {
        ];
        description = "General tools for Neil";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "neither" = callPackage
@@ -172511,16 +173220,16 @@ self: {
      }:
      mkDerivation {
        pname = "net-spider";
-       version = "0.4.1.0";
-       sha256 = "09ww6ya4h7j8vd9j18492qx6x0y1aqmis271smrb45mylj4hsaqb";
+       version = "0.4.2.0";
+       sha256 = "1jpqkwgi13a0hw99andw6f8jsq8isqsqlqjc42bapy97wxba2bii";
        libraryHaskellDepends = [
          aeson base containers data-interval extended-reals greskell
          greskell-websocket hashable monad-logger regex-applicative
          safe-exceptions scientific text time unordered-containers vector
        ];
        testHaskellDepends = [
-         aeson base bytestring doctest doctest-discover hspec text time
-         vector
+         aeson base bytestring doctest doctest-discover greskell hashable
+         hspec text time vector
        ];
        description = "A graph database middleware to maintain a time-varying graph";
        license = stdenv.lib.licenses.bsd3;
@@ -173586,8 +174295,6 @@ self: {
        ];
        description = "MessagePack RPC";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "network-messagepack-rpc-websocket" = callPackage
@@ -174673,19 +175380,20 @@ self: {
 
   "ngx-export-tools-extra" = callPackage
     ({ mkDerivation, aeson, ansi-wl-pprint, base, base64, bytestring
-     , containers, ede, enclosed-exceptions, http-client, http-types
-     , ngx-export, ngx-export-tools, snap-core, snap-server
-     , template-haskell, text, time, unordered-containers
+     , case-insensitive, containers, ede, enclosed-exceptions
+     , http-client, http-types, ngx-export, ngx-export-tools, snap-core
+     , snap-server, template-haskell, text, time, trifecta
+     , unordered-containers
      }:
      mkDerivation {
        pname = "ngx-export-tools-extra";
-       version = "0.2.1.0";
-       sha256 = "0xka55h7c5zqyb8nj1pyq0iq50yfwy4p6fspya1zbi0yjblnxnsa";
+       version = "0.3.2.1";
+       sha256 = "0dc7g592xcby4ycq7y19879xz83kq1d5vjh7d9ymgfmxa3nl1hrk";
        libraryHaskellDepends = [
-         aeson ansi-wl-pprint base base64 bytestring containers ede
-         enclosed-exceptions http-client http-types ngx-export
-         ngx-export-tools snap-core snap-server template-haskell text time
-         unordered-containers
+         aeson ansi-wl-pprint base base64 bytestring case-insensitive
+         containers ede enclosed-exceptions http-client http-types
+         ngx-export ngx-export-tools snap-core snap-server template-haskell
+         text time trifecta unordered-containers
        ];
        description = "More extra tools for Nginx haskell module";
        license = stdenv.lib.licenses.bsd3;
@@ -175021,8 +175729,7 @@ self: {
        ];
        description = "Explain why two Nix derivations differ";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
+       maintainers = with stdenv.lib.maintainers; [ terlar ];
      }) {};
 
   "nix-eval" = callPackage
@@ -176831,8 +177538,8 @@ self: {
      }:
      mkDerivation {
        pname = "numhask-space";
-       version = "0.3.0";
-       sha256 = "0j75qig7smx2lnl6drmsj2zs4zg6rw9vvcb1d0cjv47haw9xgz62";
+       version = "0.3.1";
+       sha256 = "0phvn46cnf2ffia703k3lsxv32n8mzcjx1szm9qic1nd6k8wrnv7";
        libraryHaskellDepends = [
          adjunctions base containers distributive foldl lattices
          semigroupoids tdigest text time
@@ -177787,8 +178494,8 @@ self: {
      }:
      mkDerivation {
        pname = "oidc-client";
-       version = "0.5.0.0";
-       sha256 = "09ykb49qzg0hpkjgylmilvy9dkcsxlv1lxrp0mwqamq4vxkm2wz3";
+       version = "0.5.1.0";
+       sha256 = "1qp69bdfam86y90vrm3z1nlk4kh03pnyzc5k06w9xvaq6i0965z6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -178802,6 +179509,31 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "openid-connect" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, case-insensitive, cookie
+     , cryptonite, http-client, http-types, jose, lens, memory, mtl
+     , network-uri, tasty, tasty-hunit, text, time, unordered-containers
+     }:
+     mkDerivation {
+       pname = "openid-connect";
+       version = "0.1.0.0";
+       sha256 = "12qp155dazycypv0fvw8mbh3rl5j5ybd2vyfga8wi55n16v1w8mv";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring case-insensitive cookie cryptonite
+         http-client http-types jose lens memory mtl network-uri text time
+         unordered-containers
+       ];
+       testHaskellDepends = [
+         aeson base bytestring case-insensitive cookie cryptonite
+         http-client http-types jose lens memory mtl network-uri tasty
+         tasty-hunit text time unordered-containers
+       ];
+       description = "An OpenID Connect library that does all the heavy lifting for you";
+       license = stdenv.lib.licenses.bsd2;
+     }) {};
+
   "openpgp" = callPackage
     ({ mkDerivation, base, binary, bytestring, bzlib, HUnit, QuickCheck
      , quickcheck-instances, test-framework, test-framework-hunit
@@ -179537,6 +180269,8 @@ self: {
        pname = "optics-core";
        version = "0.2";
        sha256 = "19hsax8wxxgr28rjz6p9afb06f338xnyvws7salmm1dsik1ghzr8";
+       revision = "1";
+       editedCabalFile = "1sghrm6xyflzkv350phcm344ljv82wk2vjnwhwyvcqwirkwg8rk9";
        libraryHaskellDepends = [
          array base containers indexed-profunctors transformers
        ];
@@ -179770,6 +180504,8 @@ self: {
        pname = "optparse-applicative";
        version = "0.15.1.0";
        sha256 = "1ws6y3b3f6hsgv0ff0yp6lw4hba1rps4dnvry3yllng0s5gngcsd";
+       revision = "1";
+       editedCabalFile = "0zmhqkd96v2z1ilhqdkd9z4jgsnsxb8yi2479ind8m5zm9363zr9";
        libraryHaskellDepends = [
          ansi-wl-pprint base process transformers transformers-compat
        ];
@@ -180129,8 +180865,8 @@ self: {
      }:
      mkDerivation {
        pname = "org-mode-lucid";
-       version = "1.2.0";
-       sha256 = "1y7dxm3g7jzq7y45z1d4k1j4rsfjdg4l8gk1ykn5frigwf01vwkf";
+       version = "1.3.0";
+       sha256 = "0a6iy2x0k9r3072zx0sf4k27xnihwckyd1h2pcqd61sxkgf3qkn3";
        libraryHaskellDepends = [
          base containers hashable lucid org-mode text
        ];
@@ -180240,8 +180976,6 @@ self: {
        ];
        description = "Statistics visualizer for org-mode";
        license = stdenv.lib.licenses.gpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "origami" = callPackage
@@ -180587,8 +181321,6 @@ self: {
        ];
        description = "External sorting package based on Conduit";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "overhang" = callPackage
@@ -181305,50 +182037,53 @@ self: {
        maintainers = with stdenv.lib.maintainers; [ peti ];
      }) {};
 
-  "pandoc_2_9_2" = callPackage
-    ({ mkDerivation, aeson, aeson-pretty, attoparsec, base
-     , base64-bytestring, binary, blaze-html, blaze-markup, bytestring
-     , case-insensitive, cmark-gfm, containers, criterion, data-default
-     , deepseq, Diff, directory, doclayout, doctemplates, emojis
-     , exceptions, executable-path, filepath, Glob, haddock-library
-     , hslua, 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-golden
-     , tasty-hunit, tasty-lua, tasty-quickcheck, temporary, texmath
-     , text, text-conversions, time, unicode-transforms, unix
-     , unordered-containers, vector, weigh, xml, zip-archive, zlib
+  "pandoc_2_9_2_1" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, attoparsec, base-compat
+     , base-noprelude, base64-bytestring, binary, blaze-html
+     , blaze-markup, bytestring, case-insensitive, cmark-gfm, containers
+     , criterion, data-default, deepseq, Diff, directory, doclayout
+     , doctemplates, emojis, exceptions, executable-path, filepath, Glob
+     , haddock-library, hslua, 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-golden, tasty-hunit, tasty-lua
+     , tasty-quickcheck, temporary, texmath, text, text-conversions
+     , time, unicode-transforms, unix, unordered-containers, vector
+     , weigh, xml, zip-archive, zlib
      }:
      mkDerivation {
        pname = "pandoc";
-       version = "2.9.2";
-       sha256 = "1f9wbwzv6c3dlsn15iydh921icjqj7kjgrb726kqmj5gmaypc39j";
+       version = "2.9.2.1";
+       sha256 = "0myz7firqkx4k0vrsd62j443gvm2pk09bi69c8qdbdzq5hvkavf2";
        configureFlags = [ "-fhttps" "-f-trypandoc" ];
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         aeson aeson-pretty attoparsec base base64-bytestring binary
-         blaze-html blaze-markup bytestring case-insensitive cmark-gfm
-         containers data-default deepseq directory doclayout doctemplates
-         emojis exceptions filepath Glob haddock-library hslua
-         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-transforms
-         unix unordered-containers vector xml zip-archive zlib
+         aeson aeson-pretty attoparsec base-compat base-noprelude
+         base64-bytestring binary blaze-html blaze-markup bytestring
+         case-insensitive cmark-gfm containers data-default deepseq
+         directory doclayout doctemplates emojis exceptions filepath Glob
+         haddock-library hslua 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-transforms unix unordered-containers vector xml zip-archive
+         zlib
        ];
-       executableHaskellDepends = [ base ];
+       executableHaskellDepends = [ base-compat base-noprelude ];
        testHaskellDepends = [
-         base base64-bytestring bytestring containers Diff directory
-         doctemplates executable-path filepath Glob hslua mtl pandoc-types
-         process QuickCheck tasty tasty-golden tasty-hunit tasty-lua
-         tasty-quickcheck temporary text time xml zip-archive
+         base-compat base-noprelude base64-bytestring bytestring containers
+         Diff directory doctemplates executable-path filepath Glob hslua mtl
+         pandoc-types process QuickCheck tasty tasty-golden tasty-hunit
+         tasty-lua tasty-quickcheck temporary text time xml zip-archive
        ];
        benchmarkHaskellDepends = [
-         base bytestring containers criterion mtl text time weigh
+         base-compat base-noprelude bytestring containers criterion mtl text
+         time weigh
        ];
        postInstall = ''
          mkdir -p $out/share/man/man1
@@ -181482,8 +182217,6 @@ self: {
        ];
        description = "Pandoc filter for cross-references";
        license = stdenv.lib.licenses.gpl2;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "pandoc-csv2table" = callPackage
@@ -181679,8 +182412,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc-placetable";
-       version = "0.5.1";
-       sha256 = "0zfqmsq86jvwm4kpjb02whcdxk5xpgaj1sbdh471kr2vz8q4p112";
+       version = "0.6";
+       sha256 = "0jcnf4lv4sszkbnsbvj21zi0xf9vplbpk9yavhz1b62m61xp76pg";
        configureFlags = [ "-finlinemarkdown" ];
        isLibrary = false;
        isExecutable = true;
@@ -181878,8 +182611,8 @@ self: {
     ({ mkDerivation }:
      mkDerivation {
        pname = "pandora";
-       version = "0.2.3";
-       sha256 = "1sk8hhw3ad0jb2ik787pqjgaprd78k7qc0m0chcji3z5bprxp1cw";
+       version = "0.2.5";
+       sha256 = "1nj56liyyrgmng4290p19zf89c3lyi6pzqjrqr4bfc0gmmkm4719";
        description = "A box of patterns and paradigms";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -182690,8 +183423,8 @@ self: {
        pname = "parallel";
        version = "3.2.2.0";
        sha256 = "1xkfi96w6yfpppd0nw1rnszdxmvifwzm699ilv6332ra3akm610p";
-       revision = "1";
-       editedCabalFile = "0a3kn7arck8f2gwm8cwfkplsw4q9v9j6ifbhj1l3bmclmkwcckcj";
+       revision = "2";
+       editedCabalFile = "0shw96f4fc3vbr2vrnsk794qcsxyv3ra3snhw4wng81rkapp54y6";
        libraryHaskellDepends = [ array base containers deepseq ghc-prim ];
        description = "Parallel programming library";
        license = stdenv.lib.licenses.bsd3;
@@ -183051,6 +183784,8 @@ self: {
        pname = "parsec";
        version = "3.1.14.0";
        sha256 = "132waj2cpn892midbhpkfmb74qq83v0zv29v885frlp1gvh94b67";
+       revision = "1";
+       editedCabalFile = "0dhg5xwqnig83hbkpawqi1k2prrps7jhkj4gb3ccram2drfmb933";
        libraryHaskellDepends = [ base bytestring mtl text ];
        testHaskellDepends = [
          base HUnit mtl test-framework test-framework-hunit
@@ -183327,6 +184062,8 @@ self: {
        pname = "parser-combinators-tests";
        version = "1.2.1";
        sha256 = "0iy4iajpjka1diy660x3mvmh8kldwf3svwdmvlxh26dsqy2s8sx8";
+       revision = "1";
+       editedCabalFile = "07isz6d136dkbr1aykznfi3dr3dp18x14548af207rd29x51g0di";
        isLibrary = false;
        isExecutable = false;
        testHaskellDepends = [
@@ -183432,8 +184169,6 @@ self: {
        ];
        description = "`parsers` instances for Megaparsec";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "parsestar" = callPackage
@@ -183492,8 +184227,6 @@ self: {
        ];
        description = "Parser combinators with slicing, error recovery, and syntax highlighting";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "partage" = callPackage
@@ -183581,8 +184314,6 @@ self: {
        ];
        description = "Provides typeclass suitable for types admitting a partial order";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "partial-records" = callPackage
@@ -183602,8 +184333,8 @@ self: {
     ({ mkDerivation, base, doctest, hedgehog }:
      mkDerivation {
        pname = "partial-semigroup";
-       version = "0.5.1.1";
-       sha256 = "1n0nr7yprkg9ca86yd1w8d42zqjjdf6k7bbk818kfwbh72csxl0q";
+       version = "0.5.1.4";
+       sha256 = "1szzggr0j52cn6n7j288kh5rma6g8vpjr4dwfmwrhz2jsn4ag9hh";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base doctest hedgehog ];
        description = "A partial binary associative operator";
@@ -183616,8 +184347,8 @@ self: {
     ({ mkDerivation, base, hedgehog, partial-semigroup }:
      mkDerivation {
        pname = "partial-semigroup-hedgehog";
-       version = "0.6.0.1";
-       sha256 = "0wn5gdgjza17qhxqmkp8mkj77ky2q39xs1gpjx4nrs5af34pavpy";
+       version = "0.6.0.4";
+       sha256 = "0ijmaj8zkcqikm2jr749n8pqcbf2g05bqpdmvljd1q18vydwxx6q";
        libraryHaskellDepends = [ base hedgehog partial-semigroup ];
        description = "Property testing for partial semigroups using Hedgehog";
        license = stdenv.lib.licenses.asl20;
@@ -183928,29 +184659,25 @@ self: {
      }) {};
 
   "patch-image" = callPackage
-    ({ mkDerivation, accelerate, accelerate-arithmetic
-     , accelerate-cufft, accelerate-fourier, accelerate-io
-     , accelerate-llvm-ptx, accelerate-utility, array, base, bool8
-     , bytestring, Cabal, carray, cassava, comfort-array, containers
-     , dsp, enumset, explicit-exception, fft, filepath, gnuplot
-     , JuicyPixels, knead, llvm-extra, llvm-tf, non-empty, pqueue
-     , prelude-compat, semigroups, storable-complex, storable-tuple, tfp
-     , unordered-containers, utility-ht, vector
+    ({ mkDerivation, array, base, bool8, bytestring, carray, cassava
+     , comfort-array, containers, dsp, enumset, explicit-exception, fft
+     , filepath, JuicyPixels, knead, llvm-extra, llvm-tf, non-empty
+     , pqueue, prelude-compat, semigroups, shell-utility
+     , storable-complex, storable-record, tfp, unordered-containers
+     , utility-ht, vector
      }:
      mkDerivation {
        pname = "patch-image";
-       version = "0.3.3";
-       sha256 = "0jm723xrbiwpq7sci67z0vilsv8a8i2ndm795ssyqkgqm7g1psby";
+       version = "0.3.3.1";
+       sha256 = "0nvp2y2f5cb29vzk2a9bvr3mgf17j70ir0nhb648pzfa0h1xj76k";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         accelerate accelerate-arithmetic accelerate-cufft
-         accelerate-fourier accelerate-io accelerate-llvm-ptx
-         accelerate-utility array base bool8 bytestring Cabal carray cassava
-         comfort-array containers dsp enumset explicit-exception fft
-         filepath gnuplot JuicyPixels knead llvm-extra llvm-tf non-empty
-         pqueue prelude-compat semigroups storable-complex storable-tuple
-         tfp unordered-containers utility-ht vector
+         array base bool8 bytestring carray cassava comfort-array containers
+         dsp enumset explicit-exception fft filepath JuicyPixels knead
+         llvm-extra llvm-tf non-empty pqueue prelude-compat semigroups
+         shell-utility storable-complex storable-record tfp
+         unordered-containers utility-ht vector
        ];
        description = "Compose a big image from overlapping parts";
        license = stdenv.lib.licenses.bsd3;
@@ -184059,8 +184786,8 @@ self: {
     ({ mkDerivation, base, bytestring, path, safe-exceptions, text }:
      mkDerivation {
        pname = "path-text-utf8";
-       version = "0.0.1.2";
-       sha256 = "1z8wyjsr7mgl120ayfl520i6p6s961380b1xy63zl7qp4cnnbhpn";
+       version = "0.0.1.4";
+       sha256 = "1nc9favrfr5xxk45rq77zf574m79p5qv3lrngl8yfxdzhbi4q8ld";
        libraryHaskellDepends = [
          base bytestring path safe-exceptions text
        ];
@@ -185405,8 +186132,8 @@ self: {
        pname = "perfect-vector-shuffle";
        version = "0.1.1.1";
        sha256 = "1z4iv4sv9ld0gvdfa46ll5bsbxi9lckh69paip1c5ijcg78vy5y0";
-       revision = "1";
-       editedCabalFile = "1pnxrzncwi5qmmyjimjdjhgh65n9kxs663b356rnpdf7brc5bxa0";
+       revision = "3";
+       editedCabalFile = "1qqfab4jm304wcqgng2fmbwsckhyfyimkbwldc6nisxp7sfp2pz0";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -185835,6 +186562,17 @@ self: {
        broken = true;
      }) {};
 
+  "persistent-generic" = callPackage
+    ({ mkDerivation, base, persistent, text }:
+     mkDerivation {
+       pname = "persistent-generic";
+       version = "0.1.0.0";
+       sha256 = "1a9h7dfj9v47di4pwg3fwzwa550fh8wj2ri1w2kd8xbw9xym5kqk";
+       libraryHaskellDepends = [ base persistent text ];
+       description = "Derive Persistent classes generically";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "persistent-hssqlppp" = callPackage
     ({ mkDerivation, base, bytestring, hssqlppp, monad-control, mtl
      , persistent, persistent-template, template-haskell, text, th-lift
@@ -185936,8 +186674,8 @@ self: {
      }:
      mkDerivation {
        pname = "persistent-mongoDB";
-       version = "2.9.0.2";
-       sha256 = "0q78y1ydsvm0jrsi211zq789vy50czhskwq13plv6l2h4860917v";
+       version = "2.10.0.0";
+       sha256 = "1z895y21raak3x9qw05hgif5qyvr6c7pkc59wzg7irk8mxijyf4n";
        libraryHaskellDepends = [
          aeson base bson bytestring cereal conduit http-api-data mongoDB
          network path-pieces persistent resource-pool resourcet text time
@@ -186392,8 +187130,6 @@ self: {
        ];
        description = "Type safe access to multiple database schemata";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "persistent-vector" = callPackage
@@ -186919,8 +187655,6 @@ self: {
        ];
        description = "Haskell Debug Adapter for Visual Studio Code";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "phone-metadata" = callPackage
@@ -188156,8 +188890,6 @@ self: {
        ];
        description = "Fast, streaming csv parser";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "pipes-errors" = callPackage
@@ -189677,8 +190409,8 @@ self: {
      }:
      mkDerivation {
        pname = "ploton";
-       version = "1.1.3.0";
-       sha256 = "1bq2qnzlms6j6hl7d728h5mc672h0lpbxcxfh2bz327nhhqid3hn";
+       version = "1.2.0.0";
+       sha256 = "0qzi5vdn8j4s2338x2m7mbw2n10bdplm1ki3q841acwixh9rr4ak";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -190491,6 +191223,8 @@ self: {
        pname = "polyparse";
        version = "1.13";
        sha256 = "0yvhg718dlksiw3v27m2d8m1sn4r4f5s0p56zq3lynhy1sc74k0w";
+       revision = "1";
+       editedCabalFile = "09jcn26py3lkjn3lvxgry86bad8xb8cwl3avxymqmf7b181krfb8";
        libraryHaskellDepends = [ base bytestring text ];
        description = "A variety of alternative parser combinator libraries";
        license = "LGPL";
@@ -190612,8 +191346,6 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "Disambiguate obvious uses of effects";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "polysemy-zoo" = callPackage
@@ -190676,8 +191408,6 @@ self: {
        ];
        description = "Online XML parsing with polyparse and tagsoup";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "polytypeable" = callPackage
@@ -190725,8 +191455,8 @@ self: {
      }:
      mkDerivation {
        pname = "pomaps";
-       version = "0.1.0.0";
-       sha256 = "0vacywl9yg5dyayf34k5sxnf35x0hxwh0dsdglqk243hf9lrd0wz";
+       version = "0.2.0.0";
+       sha256 = "1a3vf0r69263gpq1aass2x5wcmgrfk16pnsf4wsvrnka5lgnsijp";
        libraryHaskellDepends = [
          base containers deepseq ghc-prim lattices
        ];
@@ -191772,8 +192502,8 @@ self: {
        pname = "postgresql-libpq";
        version = "0.9.4.2";
        sha256 = "1y86kysakfcf3zq252yl2llrx3765vxvkdwda4q5ql7ikv3m786f";
-       revision = "1";
-       editedCabalFile = "0hilyfb2gjh471ia2g8mwjs56ykrgl0qd06vpigwhc493ia7a9mv";
+       revision = "2";
+       editedCabalFile = "1i0z3c0d657050kfggr5z8y4hmcqkckm2x1gn3fjbdzyx3p1rcaa";
        setupHaskellDepends = [ base Cabal ];
        libraryHaskellDepends = [ base bytestring unix ];
        librarySystemDepends = [ postgresql ];
@@ -191957,8 +192687,8 @@ self: {
        pname = "postgresql-simple";
        version = "0.6.2";
        sha256 = "15pkflx48mgv4fjmnagyfh06q065k8m8c98bysc3gm6m4srz5ypv";
-       revision = "2";
-       editedCabalFile = "1rlawj79mfff915bz5fr62g5ig4pfh77m30xrq8q71s6ql0ly4bj";
+       revision = "3";
+       editedCabalFile = "0wngpd4187sfz2jhpnnrycfvpd1irz2m798p515mn1ryg1ywmhbr";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring bytestring-builder
          case-insensitive containers hashable Only postgresql-libpq
@@ -192147,8 +192877,8 @@ self: {
        pname = "postgresql-simple-url";
        version = "0.2.1.0";
        sha256 = "1jg9gvpidrfy2hqixwqsym1l1mnkafmxwq58jpbzdmrbvryga1qk";
-       revision = "2";
-       editedCabalFile = "1nb1ks6hdfn16389f2yhf37qhjqd2y5wjc1dcp9bjhzd787z7ypr";
+       revision = "3";
+       editedCabalFile = "02l1g5jiw6idnnax7q2lzayjycgi029pv41njdmwdch57k59vai5";
        libraryHaskellDepends = [
          base network-uri postgresql-simple split
        ];
@@ -193317,22 +194047,29 @@ self: {
   "preql" = callPackage
     ({ mkDerivation, aeson, alex, array, base, binary-parser
      , bytestring, bytestring-strict-builder, contravariant, free, happy
-     , mtl, postgresql-binary, postgresql-libpq, postgresql-simple, syb
-     , template-haskell, text, th-lift-instances, time, transformers
-     , uuid, vector
+     , mtl, postgresql-binary, postgresql-libpq, scientific, tasty
+     , tasty-hunit, template-haskell, text, th-lift-instances, time
+     , transformers, uuid, vector
      }:
      mkDerivation {
        pname = "preql";
-       version = "0.1";
-       sha256 = "1a5b45vplknan61l0p68559pg7la89ly97mzbqxb5j6v3cifgmcg";
+       version = "0.2";
+       sha256 = "062px686v2rlpc2bplva900vk35k7hdvxrpjj9dfkj02knqmjxi7";
        libraryHaskellDepends = [
          aeson array base binary-parser bytestring bytestring-strict-builder
          contravariant free mtl postgresql-binary postgresql-libpq
-         postgresql-simple syb template-haskell text th-lift-instances time
+         scientific template-haskell text th-lift-instances time
          transformers uuid vector
        ];
        libraryToolDepends = [ alex happy ];
-       description = "experiments with SQL";
+       testHaskellDepends = [
+         aeson array base binary-parser bytestring bytestring-strict-builder
+         contravariant free mtl postgresql-binary postgresql-libpq
+         scientific tasty tasty-hunit template-haskell text
+         th-lift-instances time transformers uuid vector
+       ];
+       testToolDepends = [ alex happy ];
+       description = "safe PostgreSQL queries using Quasiquoters";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
@@ -193861,6 +194598,17 @@ self: {
        broken = true;
      }) {};
 
+  "prim" = callPackage
+    ({ mkDerivation, ghc-prim }:
+     mkDerivation {
+       pname = "prim";
+       version = "0.1.0.1";
+       sha256 = "01h93hrlmz3aps1xic8arkh7s28jnch5b47lpn4rxazi0fr8pgdw";
+       libraryHaskellDepends = [ ghc-prim ];
+       description = "An ergonomic but conservative interface to ghc-prim";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "prim-array" = callPackage
     ({ mkDerivation, base, ghc-prim, primitive, semigroups }:
      mkDerivation {
@@ -194872,8 +195620,8 @@ self: {
        pname = "product-profunctors";
        version = "0.10.0.0";
        sha256 = "0s0ssl2900r16992mgl0idkryg3l7psp8nljyg9brr7fqa3pd3dd";
-       revision = "3";
-       editedCabalFile = "09czbjfn7kwg18726401dhlpkd5gibkk96wzczn9lngpl730jhm9";
+       revision = "4";
+       editedCabalFile = "0vf9w949qfi6p1nqr0cxb9shxdz15mmrd8r0w4gxid56fjc2kaia";
        libraryHaskellDepends = [
          base bifunctors contravariant profunctors tagged template-haskell
        ];
@@ -195688,21 +196436,22 @@ self: {
      }) {};
 
   "prosidy" = callPackage
-    ({ mkDerivation, aeson, aeson-diff, aeson-pretty, base, binary
-     , bytestring, containers, contravariant, deepseq, directory
-     , filepath, hashable, megaparsec, profunctors, tagged, tasty
-     , tasty-ant-xml, tasty-golden, tasty-hunit, tasty-quickcheck, text
-     , transformers, unordered-containers, vector
+    ({ mkDerivation, aeson, aeson-diff, aeson-pretty, base
+     , base-compat-batteries, binary, bytestring, containers, deepseq
+     , directory, filepath, hashable, megaparsec, prettyprinter
+     , profunctors, tagged, tasty, tasty-ant-xml, tasty-golden
+     , tasty-hunit, tasty-quickcheck, text, transformers
+     , unordered-containers, vector
      }:
      mkDerivation {
        pname = "prosidy";
-       version = "1.6.0.1";
-       sha256 = "1yd36sjs342may33fbrpzgaghql03wjgprbllkms8pr6d16z8m49";
+       version = "1.6.0.2";
+       sha256 = "1961zr94cn6vza66ndd3hjh3ksm5c70bc2nr33nhvyna9q9hzs5w";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         aeson base binary bytestring containers contravariant deepseq
-         hashable megaparsec profunctors tagged text transformers
-         unordered-containers vector
+         aeson base base-compat-batteries binary bytestring containers
+         deepseq hashable megaparsec prettyprinter profunctors tagged text
+         transformers unordered-containers vector
        ];
        testHaskellDepends = [
          aeson aeson-diff aeson-pretty base bytestring containers directory
@@ -197724,8 +198473,8 @@ self: {
      }:
      mkDerivation {
        pname = "pvar";
-       version = "0.1.1.0";
-       sha256 = "1fzcv2bzm9hf879a6vcgcsmyjn4fhpl9smz8phi6bq1acfzkg026";
+       version = "0.2.0.0";
+       sha256 = "183pc9xk4b62rrmchzqxi1wvys8k118zi7060wr0xm2azn7wny6h";
        libraryHaskellDepends = [ base deepseq primitive ];
        testHaskellDepends = [
          async base deepseq genvalidity hspec primitive QuickCheck
@@ -198438,6 +199187,27 @@ self: {
        broken = true;
      }) {};
 
+  "quarantimer" = callPackage
+    ({ mkDerivation, aeson, async, base, bytestring, directory
+     , filepath, lucid, process, sandi, servant, servant-client
+     , servant-lucid, servant-multipart, servant-server, stm, text, time
+     , uuid, wai, wai-extra, warp, warp-tls
+     }:
+     mkDerivation {
+       pname = "quarantimer";
+       version = "1.20200326";
+       sha256 = "1q0rraxq1gv86chi64ijxxkx4dm8w9v2610wj58315bap3d3m91c";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         aeson async base bytestring directory filepath lucid process sandi
+         servant servant-client servant-lucid servant-multipart
+         servant-server stm text time uuid wai wai-extra warp warp-tls
+       ];
+       description = "Coronavirus quarantine timer web app for your things";
+       license = stdenv.lib.licenses.bsd2;
+     }) {};
+
   "qudb" = callPackage
     ({ mkDerivation, alex, array, base, bytestring, directory, happy
      , mtl, snappy
@@ -198853,8 +199623,8 @@ self: {
        pname = "quickcheck-instances";
        version = "0.3.22";
        sha256 = "14asr9r7da3w7p4hjj51w2yb002nz8x0np8hdz9z4yjvi60vyrax";
-       revision = "2";
-       editedCabalFile = "1ia5fjhpg7rz793552v88gv2iqx7hl9mi2g09m0llasy1cpzc9jr";
+       revision = "4";
+       editedCabalFile = "0wx4jcmiv6f3iwc92wf4l2j9025bv4997rn2ycl08ld585m1xlgv";
        libraryHaskellDepends = [
          array base base-compat bytestring case-insensitive containers
          hashable old-time QuickCheck scientific splitmix tagged text time
@@ -200130,6 +200900,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "rainbox_0_26_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, lens, QuickCheck
+     , rainbow, tasty, tasty-quickcheck, text
+     }:
+     mkDerivation {
+       pname = "rainbox";
+       version = "0.26.0.0";
+       sha256 = "07hh904p0mlc3iww184849yps80kwrhdna9nr840m2qyd81m37d1";
+       libraryHaskellDepends = [
+         base bytestring containers lens rainbow text
+       ];
+       testHaskellDepends = [
+         base bytestring containers lens QuickCheck rainbow tasty
+         tasty-quickcheck text
+       ];
+       description = "Two-dimensional box pretty printing, with colors";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "rake" = callPackage
     ({ mkDerivation, base, containers, text }:
      mkDerivation {
@@ -200225,6 +201015,8 @@ self: {
        pname = "ral";
        version = "0.1";
        sha256 = "0h8jqaapagrp9faixq817lib8l4nq4ycjj6ppl1ra8llnfsz5304";
+       revision = "2";
+       editedCabalFile = "0a3ryzcmjgyp64f8s2pl95pkz8zddq9qsn76dlimg23gczf1cql4";
        libraryHaskellDepends = [
          adjunctions base bin deepseq distributive fin hashable QuickCheck
          semigroupoids
@@ -200240,6 +201032,8 @@ self: {
        pname = "ral-lens";
        version = "0.1";
        sha256 = "0hm8mzj51hdql8rp3v0yvmcvmgha4ys8zsgbbx93mlp2b4rfhzpv";
+       revision = "1";
+       editedCabalFile = "0j7lxlbj2klhcx12xixp3glhbvc9k1pccaiqm2kqr5l3lkrcnirv";
        libraryHaskellDepends = [ base bin fin lens ral ];
        description = "Length-indexed random access lists: lens utilities";
        license = stdenv.lib.licenses.gpl2Plus;
@@ -200510,8 +201304,6 @@ self: {
        ];
        description = "Additional functions for random values";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "random-fu" = callPackage
@@ -200529,8 +201321,6 @@ self: {
        ];
        description = "Random number generation";
        license = stdenv.lib.licenses.publicDomain;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "random-fu-multivariate" = callPackage
@@ -200543,8 +201333,6 @@ self: {
        testHaskellDepends = [ base ];
        description = "Multivariate distributions for random-fu";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "random-hypergeometric" = callPackage
@@ -200752,6 +201540,8 @@ self: {
        pname = "range-set-list";
        version = "0.1.3.1";
        sha256 = "0m8c8qhpk9vaykqfy6gsv1csmvdclm27zv9l56ipv152k75xks0j";
+       revision = "1";
+       editedCabalFile = "0ma1gxmk2in2fj4rxhwshy2zq690ylw1zz0c9cnyin8mxkp96inc";
        libraryHaskellDepends = [ base containers deepseq hashable ];
        testHaskellDepends = [
          base containers deepseq hashable tasty tasty-quickcheck
@@ -200822,8 +201612,6 @@ self: {
        ];
        description = "Find the rank product of a data set";
        license = stdenv.lib.licenses.gpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "rank1dynamic" = callPackage
@@ -202314,20 +203102,21 @@ self: {
      }) {};
 
   "readme-lhs" = callPackage
-    ({ mkDerivation, base, containers, doctest, pandoc, pandoc-types
-     , protolude, text, transformers
+    ({ mkDerivation, attoparsec, base, blaze-html, containers, doctest
+     , foldl, pandoc, pandoc-types, protolude, text, transformers
      }:
      mkDerivation {
        pname = "readme-lhs";
-       version = "0.3.0";
-       sha256 = "1w113jr7sjmq4wkilwjmcaic6sgxp3vzg67dfs0imbd730xhqda8";
+       version = "0.5.0";
+       sha256 = "01h1zaa14v1hfj7gzm7y1x1rf8mh2w10h1x8k3z3y05kgsfhaspa";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base containers pandoc pandoc-types protolude text transformers
+         attoparsec base blaze-html containers foldl pandoc pandoc-types
+         protolude text transformers
        ];
-       executableHaskellDepends = [ base protolude ];
-       testHaskellDepends = [ base doctest protolude ];
+       executableHaskellDepends = [ base protolude text ];
+       testHaskellDepends = [ base containers doctest ];
        description = "See readme.md";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -202511,7 +203300,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "rebase_1_6_0_1" = callPackage
+  "rebase_1_6_1" = callPackage
     ({ mkDerivation, base, bifunctors, bytestring, comonad, containers
      , contravariant, contravariant-extras, deepseq, dlist, either
      , hashable, mtl, profunctors, scientific, selective, semigroupoids
@@ -202520,8 +203309,8 @@ self: {
      }:
      mkDerivation {
        pname = "rebase";
-       version = "1.6.0.1";
-       sha256 = "0w0vy4y2v09a9v8qjqcxq5nqrdk8c1mw7lak9mwv16j59bcijn0x";
+       version = "1.6.1";
+       sha256 = "020aw7wlgx8nqbq6ara13szgxw2q0n0hx3vrsn2lfp53b2jdsvax";
        libraryHaskellDepends = [
          base bifunctors bytestring comonad containers contravariant
          contravariant-extras deepseq dlist either hashable mtl profunctors
@@ -202607,6 +203396,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "record-dot-preprocessor_0_2_3" = callPackage
+    ({ mkDerivation, base, extra, filepath, ghc, record-hasfield
+     , uniplate
+     }:
+     mkDerivation {
+       pname = "record-dot-preprocessor";
+       version = "0.2.3";
+       sha256 = "0pmy59xihjsn31ahq76cjsla779b4vidzf7m9g4j8z88pk65rk7z";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base extra ghc uniplate ];
+       executableHaskellDepends = [ base extra ];
+       testHaskellDepends = [ base extra filepath record-hasfield ];
+       description = "Preprocessor to allow record.field syntax";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "record-encode" = callPackage
     ({ mkDerivation, base, doctest, generics-sop, hspec, QuickCheck
      , vector
@@ -203308,8 +204115,6 @@ self: {
        testHaskellDepends = [ base doctest QuickCheck ];
        description = "Refinement types with static and runtime checking";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "refined-http-api-data" = callPackage
@@ -203321,8 +204126,6 @@ self: {
        libraryHaskellDepends = [ base http-api-data refined text ];
        description = "http-api-data instances for refined types";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "refinery" = callPackage
@@ -203399,8 +204202,8 @@ self: {
      }:
      mkDerivation {
        pname = "reflex";
-       version = "0.6.4.1";
-       sha256 = "0zm5jgjn4r59h8r0180mkmfnggqv4mgg52vqfwpnz20dv942wzcb";
+       version = "0.7.0.0";
+       sha256 = "107xi9mwz20zcn9s941lfdyx79py3yvqn7117yqa2h7lnimda9fm";
        libraryHaskellDepends = [
          base bifunctors comonad constraints-extras containers data-default
          dependent-map dependent-sum exception-transformers haskell-src-exts
@@ -204174,8 +204977,8 @@ self: {
        pname = "regex-applicative-text";
        version = "0.1.0.1";
        sha256 = "1ng2qhk4mvpzl8fx91ig7ldv09v9aqdsvn6yl9yjapc6h0ghb4xh";
-       revision = "4";
-       editedCabalFile = "0ykzppl1v6k70idjl73m4w161f6lsax89v1gp100y4xgipf3yijj";
+       revision = "5";
+       editedCabalFile = "1jgmhqhlhj9zhxwikmhiq71fj1900iqiyg6r9l5y7xjk7arwscmi";
        libraryHaskellDepends = [ base regex-applicative text ];
        description = "regex-applicative on text";
        license = stdenv.lib.licenses.bsd3;
@@ -204187,6 +204990,8 @@ self: {
        pname = "regex-base";
        version = "0.94.0.0";
        sha256 = "055rlq67xnbqv43fgrlw6d7s8nhyavahrp6blihwjmqizksq47y4";
+       revision = "1";
+       editedCabalFile = "13lnky4ps9as73jqrwz4aqn5sfyrcz2zj2ng52xzz512fv59baj4";
        libraryHaskellDepends = [
          array base bytestring containers mtl text
        ];
@@ -204447,6 +205252,8 @@ self: {
        pname = "regex-posix";
        version = "0.96.0.0";
        sha256 = "08a584jabmmn5gmaqrcar5wsp3qzk0hklldzp2mr2bmvlvqh04r5";
+       revision = "1";
+       editedCabalFile = "1cy39n1928wv55i7k4wm7zd3xijk7p54kbrxxlfzfvgax5k163b9";
        libraryHaskellDepends = [
          array base bytestring containers regex-base
        ];
@@ -204493,6 +205300,8 @@ self: {
        pname = "regex-tdfa";
        version = "1.3.1.0";
        sha256 = "1h1fliv2zjxwmddl9wnn7ckxxpgy1049hdfg6fcknyrr7mw7dhqm";
+       revision = "1";
+       editedCabalFile = "1fhi4g2p29qnnfyb211n62g97qrw3gz1kahca7rlz43all93ihdy";
        libraryHaskellDepends = [
          array base bytestring containers mtl parsec regex-base text
        ];
@@ -205142,18 +205951,19 @@ self: {
      }) {};
 
   "relation" = callPackage
-    ({ mkDerivation, base, containers, hedgehog, hspec, hspec-discover
-     , hw-hspec-hedgehog
+    ({ mkDerivation, base, containers, doctest, doctest-discover
+     , hedgehog, hspec, hspec-discover, hw-hspec-hedgehog
      }:
      mkDerivation {
        pname = "relation";
-       version = "0.5";
-       sha256 = "13vzx6hq7ncd9z05ikvls60xp5dc4f7qb926s8df26zll4ayndlb";
+       version = "0.5.1.0";
+       sha256 = "0hsixpln8wf47cqan8yhx86n1k1vww35l4zzf0bjarqazd060pyv";
        libraryHaskellDepends = [ base containers ];
        testHaskellDepends = [
-         base containers hedgehog hspec hw-hspec-hedgehog
+         base containers doctest doctest-discover hedgehog hspec
+         hw-hspec-hedgehog
        ];
-       testToolDepends = [ hspec-discover ];
+       testToolDepends = [ doctest-discover hspec-discover ];
        description = "A data structure representing Relations on Sets";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -205292,21 +206102,6 @@ self: {
 
   "relational-schemas" = callPackage
     ({ mkDerivation, base, bytestring, containers, relational-query
-     , template-haskell, time
-     }:
-     mkDerivation {
-       pname = "relational-schemas";
-       version = "0.1.7.0";
-       sha256 = "1yhgn2sjq7530s31fyyaxms5vnqwl03pwvsn0sm8f6yyzjvwm38b";
-       libraryHaskellDepends = [
-         base bytestring containers relational-query template-haskell time
-       ];
-       description = "RDBMSs' schema templates for relational-query";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "relational-schemas_0_1_8_0" = callPackage
-    ({ mkDerivation, base, bytestring, containers, relational-query
      , sql-words, template-haskell, time
      }:
      mkDerivation {
@@ -205319,7 +206114,6 @@ self: {
        ];
        description = "RDBMSs' schema templates for relational-query";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "relative-date" = callPackage
@@ -205729,8 +206523,8 @@ self: {
        pname = "repa";
        version = "3.4.1.4";
        sha256 = "17m3wl4hvf04fxwm4fflhnv41yl9bm263hnbpxc8x6xqwifplq23";
-       revision = "3";
-       editedCabalFile = "17hxj42cm82sac42by78jgbjjn5r3qv7n4919llaq17a2k1np0sw";
+       revision = "4";
+       editedCabalFile = "0bay8j0fm7l2nhrbdvy9fvrb6hgkrk5qx9y03az2kakvjdc4gvvh";
        libraryHaskellDepends = [
          base bytestring ghc-prim QuickCheck template-haskell vector
        ];
@@ -206056,8 +206850,8 @@ self: {
      }:
      mkDerivation {
        pname = "replace-attoparsec";
-       version = "1.2.0.0";
-       sha256 = "0b3f3i4vhnn4d71bsjjdrspca20nk52wn8a6dnanf53x408jfkay";
+       version = "1.2.1.0";
+       sha256 = "0i88mylhbm3hx7rj59ms125xnzinxrcjv98df73xzzz54cjf123j";
        libraryHaskellDepends = [ attoparsec base bytestring text ];
        testHaskellDepends = [
          attoparsec base bytestring Cabal parsers text
@@ -206066,6 +206860,22 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
+  "replace-attoparsec_1_2_2_0" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, Cabal, parsers, text
+     }:
+     mkDerivation {
+       pname = "replace-attoparsec";
+       version = "1.2.2.0";
+       sha256 = "1byrd62j7aafjn959xciam6s17zjvrisfi6q4y6ndvla77rg09cm";
+       libraryHaskellDepends = [ attoparsec base bytestring text ];
+       testHaskellDepends = [
+         attoparsec base bytestring Cabal parsers text
+       ];
+       description = "Find, replace, and edit text patterns with Attoparsec parsers (instead of regex)";
+       license = stdenv.lib.licenses.bsd2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "replace-megaparsec" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, megaparsec, text }:
      mkDerivation {
@@ -206078,15 +206888,15 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
-  "replace-megaparsec_1_3_1_0" = callPackage
+  "replace-megaparsec_1_3_2_0" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, megaparsec, text }:
      mkDerivation {
        pname = "replace-megaparsec";
-       version = "1.3.1.0";
-       sha256 = "074vbw5gc3sg2qsj9zlcjdgzdjc8yxa369dvx2w2adl0jv4dk5ib";
+       version = "1.3.2.0";
+       sha256 = "0bhxjk2yc0h49i9b8irszhgg5041s63clrrcrd6l58s2nmfr3zw5";
        libraryHaskellDepends = [ base bytestring megaparsec text ];
        testHaskellDepends = [ base bytestring Cabal megaparsec text ];
-       description = "Find, replace, and edit text patterns with Megaparsec parsers";
+       description = "Find, replace, and edit text patterns with Megaparsec parsers (instead of regex)";
        license = stdenv.lib.licenses.bsd2;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -206159,6 +206969,23 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "repline_0_3_0_0" = callPackage
+    ({ mkDerivation, base, containers, exceptions, haskeline, mtl
+     , process
+     }:
+     mkDerivation {
+       pname = "repline";
+       version = "0.3.0.0";
+       sha256 = "0niihfyggg2qisadg7w49cr5k5qyyynia93iip0ng2bbmzwi88g8";
+       libraryHaskellDepends = [
+         base containers exceptions haskeline mtl process
+       ];
+       testHaskellDepends = [ base containers mtl process ];
+       description = "Haskeline wrapper for GHCi-like REPL interfaces";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "repo-based-blog" = callPackage
     ({ mkDerivation, base, blaze-html, containers, data-default
      , directory, dyre, filepath, filestore, hspec, hspec-discover
@@ -206409,8 +207236,6 @@ self: {
        ];
        description = "A local http server to catch the HTTP redirect";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "request-monad" = callPackage
@@ -206467,6 +207292,8 @@ self: {
        pname = "rere";
        version = "0.1";
        sha256 = "0hskndalxqmlwscvacqmp7gbp8m75a8hnvbifw0hw7hhszlf0yac";
+       revision = "1";
+       editedCabalFile = "0k2fcc94dlcf33by0zcqk01i9k2g8x4j8rnlpfmabld9dvf5cjwg";
        libraryHaskellDepends = [
          base containers fin parsec QuickCheck transformers vec
        ];
@@ -206493,12 +207320,12 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "rerebase_1_6_0_1" = callPackage
+  "rerebase_1_6_1" = callPackage
     ({ mkDerivation, rebase }:
      mkDerivation {
        pname = "rerebase";
-       version = "1.6.0.1";
-       sha256 = "07ddcmm2yx71nvgcbj87skrx5pfzsqhi87dxn7vv41ssibv714fk";
+       version = "1.6.1";
+       sha256 = "0lyi925jk6jbi3qc5xmv61ag07ff9d3xxmf9hfjlblqw2y9fsy93";
        libraryHaskellDepends = [ rebase ];
        description = "Reexports from \"base\" with a bunch of other standard libraries";
        license = stdenv.lib.licenses.mit;
@@ -206622,8 +207449,8 @@ self: {
      }:
      mkDerivation {
        pname = "resolv";
-       version = "0.1.1.3";
-       sha256 = "10y9x63m2w87qfmx9fxjfliq9881cp1x8zkf94sb0hq52rgxd3r4";
+       version = "0.1.2.0";
+       sha256 = "0wa6wsh6i52q4ah2z0hgzlks325kigch4yniz0y15nw4skxbm8l1";
        libraryHaskellDepends = [
          base base16-bytestring binary bytestring containers
        ];
@@ -207082,8 +207909,6 @@ self: {
        ];
        description = "Easy Git repository serialization";
        license = stdenv.lib.licenses.gpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "restricted-workers" = callPackage
@@ -207248,10 +208073,8 @@ self: {
      }:
      mkDerivation {
        pname = "retrie";
-       version = "0.1.0.0";
-       sha256 = "0x8mc4w6w1pr8k9cmhnb4wad2brqj37qfhkg1vm47zmv3r5sza3s";
-       revision = "1";
-       editedCabalFile = "1gxd78fpn7pw30k0p70vgrr82qcbq4397fk41c4i7rb7m0y4kk3j";
+       version = "0.1.0.1";
+       sha256 = "01giwrn6cxkpcjflarpphyvbz6japjq6xjilpg29wfq40c64nzyn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -207976,8 +208799,6 @@ self: {
        libraryHaskellDepends = [ ascetic base MissingH ];
        description = "Integrated pretty-printing and error/static analysis reporting";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "ridley" = callPackage
@@ -208166,6 +208987,32 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "rio_0_1_15_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, deepseq, directory
+     , exceptions, filepath, hashable, hspec, microlens, mtl, primitive
+     , process, QuickCheck, text, time, typed-process, unix, unliftio
+     , unliftio-core, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "rio";
+       version = "0.1.15.0";
+       sha256 = "0171sgxysksyhpcnpqrlawp1zrb279a0lr9bp5j5f4g0ak59h4p6";
+       libraryHaskellDepends = [
+         base bytestring containers deepseq directory exceptions filepath
+         hashable microlens mtl primitive process text time typed-process
+         unix unliftio unliftio-core unordered-containers vector
+       ];
+       testHaskellDepends = [
+         base bytestring containers deepseq directory exceptions filepath
+         hashable hspec microlens mtl primitive process QuickCheck text time
+         typed-process unix unliftio unliftio-core unordered-containers
+         vector
+       ];
+       description = "A standard library for Haskell";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "rio-orphans" = callPackage
     ({ mkDerivation, base, exceptions, fast-logger, hspec
      , monad-control, monad-logger, resourcet, rio, transformers-base
@@ -210084,6 +210931,17 @@ self: {
        broken = true;
      }) {};
 
+  "run-haskell-module" = callPackage
+    ({ mkDerivation, base, data-default, filepath, process }:
+     mkDerivation {
+       pname = "run-haskell-module";
+       version = "0.0.2";
+       sha256 = "1ra8rv7cbsj1x8vfd3sbynd7a73v9arfimzcfhg9j6blqcii2i2d";
+       libraryHaskellDepends = [ base data-default filepath process ];
+       description = "Running newly generated Haskell source module";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "run-st" = callPackage
     ({ mkDerivation, base, primitive, primitive-unlifted }:
      mkDerivation {
@@ -210198,8 +211056,6 @@ self: {
        ];
        description = "Random Variables";
        license = stdenv.lib.licenses.publicDomain;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "rwlock" = callPackage
@@ -210492,8 +211348,6 @@ self: {
        ];
        description = "Automatic JSON format versioning";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "safe-lazy-io" = callPackage
@@ -210635,8 +211489,6 @@ self: {
        ];
        description = "Instances from the xmlbf library for the safe-money library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "safe-plugins" = callPackage
@@ -210906,6 +211758,25 @@ self: {
        broken = true;
      }) {};
 
+  "sak" = callPackage
+    ({ mkDerivation, base, bytestring, bz2, cpphs, directory, filepath
+     , lz4-hs, lzlib, lzma, optparse-applicative, zlib, zstd
+     }:
+     mkDerivation {
+       pname = "sak";
+       version = "0.1.1.0";
+       sha256 = "0k40jkdg2029h549zgkq4ciayx162lb280l4lkna47dd3r5mf3xd";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base bytestring bz2 directory filepath lz4-hs lzlib lzma
+         optparse-applicative zlib zstd
+       ];
+       executableToolDepends = [ cpphs ];
+       description = "Compression command-line tool";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "sakuraio-platform" = callPackage
     ({ mkDerivation, aeson, base, bytestring, hspec, time
      , unordered-containers
@@ -210934,37 +211805,10 @@ self: {
      }:
      mkDerivation {
        pname = "salak";
-       version = "0.3.5.3";
-       sha256 = "0k6z2vjxg6za6rfhx1xgjdck7ainnsbhrvzav2ngwpvy8li5g02b";
-       revision = "1";
-       editedCabalFile = "138c763crbfipcb9ss1lk3wx3482nm2v4zbm3k88h6jszxhmxvav";
-       libraryHaskellDepends = [
-         base bytestring containers data-default directory dlist exceptions
-         filepath hashable heaps megaparsec mtl scientific text time
-         unliftio-core unordered-containers
-       ];
-       testHaskellDepends = [
-         base hspec mtl QuickCheck random scientific text
-         unordered-containers
-       ];
-       testToolDepends = [ hspec-discover ];
-       benchmarkHaskellDepends = [
-         base criterion data-default mtl text time
-       ];
-       description = "Configuration (re)Loader and Parser";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "salak_0_3_6" = callPackage
-    ({ mkDerivation, base, bytestring, containers, criterion
-     , data-default, directory, dlist, exceptions, filepath, hashable
-     , heaps, hspec, hspec-discover, megaparsec, mtl, QuickCheck, random
-     , scientific, text, time, unliftio-core, unordered-containers
-     }:
-     mkDerivation {
-       pname = "salak";
        version = "0.3.6";
        sha256 = "00qyd09az0ldfidfgcki8z3r9gcpxmss3iyr99as5bky29rlz9n3";
+       revision = "1";
+       editedCabalFile = "1ra0bbk3xkfsy5p78q57abjwmn95kmfjpvsldm4s1455bg2yhi26";
        libraryHaskellDepends = [
          base bytestring containers data-default directory dlist exceptions
          filepath hashable heaps megaparsec mtl scientific text time
@@ -210980,7 +211824,6 @@ self: {
        ];
        description = "Configuration (re)Loader and Parser";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "salak-toml" = callPackage
@@ -211015,6 +211858,8 @@ self: {
        pname = "salak-yaml";
        version = "0.3.5.3";
        sha256 = "07wcwld58bdr8n5fdfq98x6c1xdr8rrx919y4f9y7abdnc4aj000";
+       revision = "1";
+       editedCabalFile = "0x1wkd2yqmgd0lxy45d3w8p53ms942am14flc0m2jz6dk9vi3k7a";
        libraryHaskellDepends = [ base conduit libyaml salak text ];
        testHaskellDepends = [
          base conduit exceptions hspec libyaml mtl QuickCheck salak text
@@ -212221,15 +213066,17 @@ self: {
      }) {};
 
   "schema" = callPackage
-    ({ mkDerivation, base, hspec, QuickCheck }:
+    ({ mkDerivation, base, groom, hspec, msgpack-binary, QuickCheck }:
      mkDerivation {
        pname = "schema";
-       version = "0.0.1";
-       sha256 = "0357j9xn0rw427x2f5pqkzmya9scyqwz3ksn4lyryzvmm9p6lii7";
+       version = "0.0.2";
+       sha256 = "0wzihrcjx6bha6yibsghcl0l3r3bwcsmnidbm072c16sppbglbqh";
        libraryHaskellDepends = [ base ];
-       testHaskellDepends = [ base hspec QuickCheck ];
+       testHaskellDepends = [
+         base groom hspec msgpack-binary QuickCheck
+       ];
        description = "Encoding-independent schemas for Haskell data types";
-       license = stdenv.lib.licenses.agpl3;
+       license = stdenv.lib.licenses.gpl3;
      }) {};
 
   "schemas" = callPackage
@@ -212434,33 +213281,33 @@ self: {
      }) {};
 
   "scidb-hquery" = callPackage
-    ({ mkDerivation, alex, array, base, base-compat, BNFC, bytestring
-     , Cabal, connection, cryptonite, data-default-class, directory
-     , exceptions, filepath, happy, haskeline, hostname-validate, HTTP
-     , http-client, http-client-tls, http-conduit, http-types, memory
-     , mtl, network, process, regex, safe, split, terminal-size, text
-     , tls, x509-store
+    ({ mkDerivation, alex, array, base, BNFC, bytestring, Cabal
+     , connection, cryptonite, data-default-class, directory, exceptions
+     , filepath, happy, haskeline, hostname-validate, HTTP, http-client
+     , http-client-tls, http-conduit, http-types, memory, mtl, network
+     , process, regex, safe, split, terminal-size, text, tls, x509-store
      }:
      mkDerivation {
        pname = "scidb-hquery";
-       version = "2.8.0.436";
-       sha256 = "0mkicmfvwc7xg37d46s7xrcsdaff09v7x86npd1bgv1k60m4c8gq";
+       version = "2.8.0.437";
+       sha256 = "1nxcxfr55rf6ds0hvgbnss5hjf059rdd7y613yc485w8bfmv5cil";
+       revision = "1";
+       editedCabalFile = "1xbiiaa5rj5nc4if69d97f5spbrsa8jv1mhcrgjkwff6a879274q";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal filepath ];
        libraryHaskellDepends = [
-         array base base-compat bytestring connection cryptonite
-         data-default-class exceptions haskeline hostname-validate HTTP
-         http-client http-client-tls http-conduit http-types memory mtl
-         network process regex safe split terminal-size text tls x509-store
+         array base bytestring connection cryptonite data-default-class
+         exceptions haskeline hostname-validate HTTP http-client
+         http-client-tls http-conduit http-types memory mtl network process
+         regex safe split terminal-size text tls x509-store
        ];
        libraryToolDepends = [ alex BNFC happy ];
        executableHaskellDepends = [
-         array base base-compat bytestring connection cryptonite
-         data-default-class directory exceptions filepath haskeline
-         hostname-validate HTTP http-client http-client-tls http-conduit
-         http-types memory mtl network process regex safe split
-         terminal-size text tls x509-store
+         array base bytestring connection cryptonite data-default-class
+         directory exceptions filepath haskeline hostname-validate HTTP
+         http-client http-client-tls http-conduit http-types memory mtl
+         network process regex safe split terminal-size text tls x509-store
        ];
        description = "Haskell query for SciDB via shim";
        license = stdenv.lib.licenses.gpl3;
@@ -214009,14 +214856,14 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "selective_0_4" = callPackage
+  "selective_0_4_1" = callPackage
     ({ mkDerivation, base, containers, mtl, QuickCheck, tasty
      , tasty-expected-failure, tasty-quickcheck, transformers
      }:
      mkDerivation {
        pname = "selective";
-       version = "0.4";
-       sha256 = "0kwf6s21gc64nl04rvaydz838kjf7b7xgw1vvyvr44mf36ggcv2p";
+       version = "0.4.1";
+       sha256 = "1pwbfayh4s6afhkgyvyq187m4vcnyvy3frb1zxjs7xjb2sxp9r80";
        libraryHaskellDepends = [ base containers transformers ];
        testHaskellDepends = [
          base containers mtl QuickCheck tasty tasty-expected-failure
@@ -214144,8 +214991,8 @@ self: {
      }:
      mkDerivation {
        pname = "semantic-source";
-       version = "0.0.2.0";
-       sha256 = "072iax2d2nhskpmm754ii28qdfvxrbwpvgix0igrrfaa52pcw286";
+       version = "0.1.0.0";
+       sha256 = "179rxsn1cyh77yn7vzmii38ipgcjpavlyf5xbx4j8zzgh1jklmc5";
        libraryHaskellDepends = [
          aeson base bytestring containers deepseq generic-monoid hashable
          lingo pathtype semilattices text
@@ -214219,6 +215066,8 @@ self: {
        pname = "semialign";
        version = "1.1";
        sha256 = "1n47w9c6i6azb4w65rzhci00v6p9c0s1w1givd2q3smkgyziiqpk";
+       revision = "1";
+       editedCabalFile = "0rfnjzbzzclzh2a1m5wpzzsqf8hrkrqnc90pflshb40i7rwkm6xf";
        libraryHaskellDepends = [
          base base-compat containers hashable semigroupoids tagged these
          transformers unordered-containers vector
@@ -214253,6 +215102,8 @@ self: {
        pname = "semialign-indexed";
        version = "1.1";
        sha256 = "1b6amfhwk968ah56w8vala3hbpzf9mfza2ajhdnvzcdiyqyxvwb0";
+       revision = "1";
+       editedCabalFile = "1g7b15xki938vljmkcwnz1hvqfp77ja39cxnfnwd5j507a0qp800";
        libraryHaskellDepends = [
          base containers hashable lens semialign these unordered-containers
          vector
@@ -216085,8 +216936,6 @@ self: {
        ];
        description = "Helpers for using ekg with servant";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-elm" = callPackage
@@ -217351,8 +218200,6 @@ self: {
        ];
        description = "A family of combinators for defining webservices APIs and serving them";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-stache" = callPackage
@@ -217717,8 +218564,6 @@ self: {
        ];
        description = "Automatically generate Elm clients for Servant APIs";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-tracing" = callPackage
@@ -217812,8 +218657,6 @@ self: {
        ];
        description = "Servant support for the XML Content-Type";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "servant-yaml" = callPackage
@@ -218077,8 +218920,6 @@ self: {
        ];
        description = "Snap bindings for serversession";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "serversession-frontend-wai" = callPackage
@@ -218274,8 +219115,8 @@ self: {
      }:
      mkDerivation {
        pname = "set-cover";
-       version = "0.1";
-       sha256 = "1yidgc1nbhbkxpchd96vzfgkk95hdwgpvd9ys2b4xw2m1zyzi1kb";
+       version = "0.1.1";
+       sha256 = "04jjcmjll0azz24rx91p0dp5b8ya5jc0qacr21764ri1dbkfflgw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -218387,16 +219228,14 @@ self: {
        pname = "setgame";
        version = "1.1";
        sha256 = "1hr2kb4d7m22d48gh74h5z8c6shkprincf0qb9wc2fq2hj7c3c1l";
-       revision = "1";
-       editedCabalFile = "1shkmfmjnvc47gy9ck6knf94571if4qjm92c1p8kji9v0n24yzfw";
+       revision = "2";
+       editedCabalFile = "0cb1vajyh3fxrkq97cvlkvpskgrnn4zs2gk8al9dcnn3dq0j3v58";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base random vty ];
        executableHaskellDepends = [ base ];
        description = "A console interface to the game of Set";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "setlocale" = callPackage
@@ -218989,15 +219828,15 @@ self: {
      }) {};
 
   "shake-bindist" = callPackage
-    ({ mkDerivation, archive-sig, base, bytestring, bz2, lzlib, shake
-     , zlib, zstd
+    ({ mkDerivation, archive-sig, base, bytestring, bz2, lzlib, lzma
+     , shake, zlib, zstd
      }:
      mkDerivation {
        pname = "shake-bindist";
-       version = "1.0.0.0";
-       sha256 = "0fzq62a8rjh9jc9dc7rfi6ypp0fax7fhlf632a30mrbpk1hqyfz8";
+       version = "1.0.1.0";
+       sha256 = "0rlbn367czab885l44k698wiyavs0jf1rbzn4hk48mfhqxpcihky";
        libraryHaskellDepends = [
-         archive-sig base bytestring bz2 lzlib shake zlib zstd
+         archive-sig base bytestring bz2 lzlib lzma shake zlib zstd
        ];
        description = "Rules for binary distributions";
        license = stdenv.lib.licenses.bsd3;
@@ -219691,6 +220530,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "shell-utility_0_1" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "shell-utility";
+       version = "0.1";
+       sha256 = "1n15v0avvkxvczmyjc6g4z9axr5c61n8jlpa1cm4xr3qk7spm1mi";
+       libraryHaskellDepends = [ base ];
+       description = "Utility functions for writing command-line programs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "shellish" = callPackage
     ({ mkDerivation, base, bytestring, directory, filepath, mtl
      , process, strict, time, unix-compat
@@ -220159,6 +221010,19 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "show-combinators_0_2_0_0" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "show-combinators";
+       version = "0.2.0.0";
+       sha256 = "07ds87ldl9165hj3k5h84iawc6vqlbggni3dg1nhbxww1spxn0n9";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base ];
+       description = "Combinators to write Show instances";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "show-please" = callPackage
     ({ mkDerivation, base, mtl, parsec, template-haskell, th-orphans
      , time
@@ -220770,8 +221634,8 @@ self: {
     ({ mkDerivation, base, optparse-applicative }:
      mkDerivation {
        pname = "simple-cmd-args";
-       version = "0.1.5";
-       sha256 = "097b8qv0755p0iq6bcw6ndvvvv017x9hgf6l2zvb3sgqdg9wlj88";
+       version = "0.1.6";
+       sha256 = "18dikz7hy61wgrbpgnxmgfp1i485hkhgrdnqbkzl2mrmmjn8p1zd";
        libraryHaskellDepends = [ base optparse-applicative ];
        description = "Simple command args parsing and execution";
        license = stdenv.lib.licenses.bsd3;
@@ -221801,8 +222665,8 @@ self: {
        pname = "singleton-bool";
        version = "0.1.5";
        sha256 = "17w9vv6arn7vvc7kykqcx81q2364ji43khrryl27r1cjx9yxapa0";
-       revision = "1";
-       editedCabalFile = "1g2dchvp5clg3hfdrp7hf5pbl9kcyhqhnqxqxd7n861nfd661wqd";
+       revision = "2";
+       editedCabalFile = "118j0h29nqg2acqbzif2ffqnanjbwnqmv2kch9z7xiwqkz6iq8an";
        libraryHaskellDepends = [ base dec ];
        description = "Type level booleans";
        license = stdenv.lib.licenses.bsd3;
@@ -221825,8 +222689,8 @@ self: {
     ({ mkDerivation, base, singletons }:
      mkDerivation {
        pname = "singleton-nats";
-       version = "0.4.3";
-       sha256 = "0xj5w6dszm832y90qxmwqnyiwpav30q199cjcdbdxr7q1d4klszi";
+       version = "0.4.4";
+       sha256 = "14am0aggfrnd2w5g8cjljx0vmmrhy6r36xpkfrxpralhkr7h52m8";
        libraryHaskellDepends = [ base singletons ];
        description = "Unary natural numbers relying on the singletons infrastructure";
        license = stdenv.lib.licenses.bsd3;
@@ -221866,6 +222730,32 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "singletons_2_7" = callPackage
+    ({ mkDerivation, base, bytestring, Cabal, containers, deepseq
+     , directory, filepath, ghc-boot-th, mtl, pretty, process, syb
+     , tasty, tasty-golden, template-haskell, text, th-desugar
+     , transformers, turtle
+     }:
+     mkDerivation {
+       pname = "singletons";
+       version = "2.7";
+       sha256 = "0az22as3rbzkfzv6a4m779qgibwah5r77l0zdgml9x7ajpkdcaz1";
+       revision = "1";
+       editedCabalFile = "18vd0jnr3skf2fmj13g06gjjzgmw5rnsjqwivsmqs3pkfv9qi3sm";
+       setupHaskellDepends = [ base Cabal directory filepath ];
+       libraryHaskellDepends = [
+         base containers ghc-boot-th mtl pretty syb template-haskell text
+         th-desugar transformers
+       ];
+       testHaskellDepends = [
+         base bytestring deepseq filepath process tasty tasty-golden text
+         turtle
+       ];
+       description = "A framework for generating singleton types";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "singletons-presburger" = callPackage
     ({ mkDerivation, base, ghc, ghc-typelits-presburger, reflection
      , singletons
@@ -222068,8 +222958,6 @@ self: {
        ];
        description = "A simple to understand static site generator";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "sixfiguregroup" = callPackage
@@ -222374,8 +223262,6 @@ self: {
        ];
        description = "A very quick-and-dirty WebSocket server";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "skip-list" = callPackage
@@ -222459,6 +223345,24 @@ self: {
        license = stdenv.lib.licenses.gpl2;
      }) {};
 
+  "skylighting_0_8_3_4" = callPackage
+    ({ mkDerivation, base, binary, bytestring, containers
+     , skylighting-core
+     }:
+     mkDerivation {
+       pname = "skylighting";
+       version = "0.8.3.4";
+       sha256 = "1fqjz2s8i9i235mrp4364ycidax2zl7xrgcahsqpbr4cx7vgy9qz";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base binary bytestring containers skylighting-core
+       ];
+       description = "syntax highlighting library";
+       license = stdenv.lib.licenses.gpl2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "skylighting-core" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, attoparsec, base
      , base64-bytestring, binary, blaze-html, bytestring
@@ -222491,6 +223395,39 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "skylighting-core_0_8_3_4" = callPackage
+    ({ mkDerivation, aeson, ansi-terminal, attoparsec, base
+     , base64-bytestring, binary, blaze-html, bytestring
+     , case-insensitive, colour, containers, criterion, Diff, directory
+     , filepath, HUnit, hxt, mtl, pretty-show, QuickCheck, random
+     , regex-pcre-builtin, safe, tasty, tasty-golden, tasty-hunit
+     , tasty-quickcheck, text, transformers, utf8-string
+     }:
+     mkDerivation {
+       pname = "skylighting-core";
+       version = "0.8.3.4";
+       sha256 = "0jcryl83873jjn6lximl1pnshf84nlln1hdvrdcybhrpjyd56qdc";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson ansi-terminal attoparsec base base64-bytestring binary
+         blaze-html bytestring case-insensitive colour containers directory
+         filepath hxt mtl regex-pcre-builtin safe text transformers
+         utf8-string
+       ];
+       testHaskellDepends = [
+         aeson base bytestring containers Diff directory filepath HUnit
+         pretty-show QuickCheck random tasty tasty-golden tasty-hunit
+         tasty-quickcheck text
+       ];
+       benchmarkHaskellDepends = [
+         base containers criterion directory filepath text
+       ];
+       description = "syntax highlighting library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "skylighting-extensions" = callPackage
     ({ mkDerivation, base, containers, skylighting, skylighting-modding
      , text
@@ -222756,8 +223693,6 @@ self: {
        ];
        description = "Generate C++ skeletons from slice files";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "sliceofpy" = callPackage
@@ -223246,6 +224181,31 @@ self: {
        broken = true;
      }) {};
 
+  "smarties" = callPackage
+    ({ mkDerivation, base, haskeline, hspec, ilist, microlens
+     , microlens-th, MonadRandom, mtl, QuickCheck, random, text, vector
+     }:
+     mkDerivation {
+       pname = "smarties";
+       version = "1.2.1";
+       sha256 = "0560d49crj5s9xpj8sk552qdqm19grj87lyqif0dxypc7qpn3dc8";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base microlens microlens-th MonadRandom mtl QuickCheck random text
+       ];
+       executableHaskellDepends = [
+         base haskeline ilist microlens microlens-th MonadRandom mtl
+         QuickCheck random text vector
+       ];
+       testHaskellDepends = [
+         base hspec microlens microlens-th MonadRandom mtl QuickCheck random
+         text
+       ];
+       description = "Haskell Behavior Tree Library";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "smartword" = callPackage
     ({ mkDerivation, base, haskell98, pretty, unix, utf8-string }:
      mkDerivation {
@@ -224350,8 +225310,6 @@ self: {
        ];
        description = "Serve javascript files compiled with GHCJS";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "snaplet-hasql" = callPackage
@@ -225343,8 +226301,6 @@ self: {
        ];
        description = "TLS-enabled SOAP transport (using openssl bindings)";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "soap-tls" = callPackage
@@ -225762,6 +226718,8 @@ self: {
        pname = "some";
        version = "1.0.1";
        sha256 = "13dpvxswjcsmic8h2vayp77qzl820gg4g29g5n2xcja8gnzjkkii";
+       revision = "1";
+       editedCabalFile = "0gpr24rf427l82d8gb3x97yj03vc2v8ky3b6m1gb4j3g4yvvmr96";
        libraryHaskellDepends = [ base deepseq ];
        testHaskellDepends = [ base ];
        description = "Existential type: Some";
@@ -225794,8 +226752,8 @@ self: {
     ({ mkDerivation, base, deepseq }:
      mkDerivation {
        pname = "sop-core";
-       version = "0.5.0.0";
-       sha256 = "12zqdr0g4s3fr6710ngph0fr06lbc12c849izcl4cjj4g9w3v3zz";
+       version = "0.5.0.1";
+       sha256 = "1c4xk4bw1ij4gpgy35iv08bhcxhv1siy55qnvp2xd6wcc3qnghys";
        libraryHaskellDepends = [ base deepseq ];
        description = "True Sums of Products";
        license = stdenv.lib.licenses.bsd3;
@@ -226526,8 +227484,8 @@ self: {
      }:
      mkDerivation {
        pname = "spdx";
-       version = "1.0.0.1";
-       sha256 = "00j0dqx9hrlpqy1jml85nykg0xl108q45ljan385bzb5nnap36l6";
+       version = "1.0.0.2";
+       sha256 = "0aydw4gwhvy45jgk038jnzhzgq8ijg16fk48appn67jn1c3yi0xj";
        libraryHaskellDepends = [ base Cabal containers transformers ];
        testHaskellDepends = [
          base base-compat Cabal tasty tasty-quickcheck
@@ -227015,8 +227973,6 @@ self: {
        ];
        description = "A parallel implementation of the Sorokina/Zeilfelder spline scheme";
        license = stdenv.lib.licenses.agpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "splines" = callPackage
@@ -227761,20 +228717,21 @@ self: {
      , network-uri, pretty, process, process-extras, pureMD5, QuickCheck
      , random, safecopy, show-combinators, show-please, syb
      , template-haskell, text, th-lift, th-lift-instances, th-orphans
-     , time, unix, Unixutils, userid, uuid, uuid-orphans, uuid-types
-     , zlib
+     , time, transformers, unexceptionalio-trans, unix, Unixutils
+     , userid, uuid, uuid-orphans, uuid-types, zlib
      }:
      mkDerivation {
        pname = "sr-extra";
-       version = "1.64";
-       sha256 = "18yrl19dzjwfp56xam7m4d61wrxl224lz8jhi198j78pq6b4d1vl";
+       version = "1.72.3";
+       sha256 = "0jm7r0lxcwppc85rpyasq6grqqkcwhxs0clwyasicqklkcx2l5xw";
        libraryHaskellDepends = [
          base bytestring bzlib Cabal cereal containers Diff directory
          exceptions fgl filemanip filepath generic-data hslogger HUnit lens
          ListLike mmorph mtl network-uri pretty process process-extras
          pureMD5 QuickCheck random safecopy show-combinators show-please syb
          template-haskell text th-lift th-lift-instances th-orphans time
-         unix Unixutils userid uuid uuid-orphans uuid-types zlib
+         transformers unexceptionalio-trans unix Unixutils userid uuid
+         uuid-orphans uuid-types zlib
        ];
        description = "Module limbo";
        license = stdenv.lib.licenses.bsd3;
@@ -228489,8 +229446,6 @@ self: {
        ];
        description = "Create etags for Haskell projects based on Stack snapshots";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "stack-templatizer" = callPackage
@@ -229405,8 +230360,6 @@ self: {
        ];
        description = "JavaScript and Css files concat for http optimization. Now with LESS support.";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "static-tensor" = callPackage
@@ -229466,8 +230419,6 @@ self: {
        libraryHaskellDepends = [ base MissingH ];
        description = "Reusable static analysis interfaces and modules";
        license = stdenv.lib.licenses.gpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "statistics" = callPackage
@@ -229694,8 +230645,8 @@ self: {
      }:
      mkDerivation {
        pname = "staversion";
-       version = "0.2.3.3";
-       sha256 = "1mrd2w1a1nxi4k5lwav6hk8wphfk2j519hwdscj5855a9kk9piba";
+       version = "0.2.3.4";
+       sha256 = "0b3hkk6m2wpcyj1zkl3az4v2m9cb7djxk7iz00rxz5j13ngxgfci";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -229969,8 +230920,8 @@ self: {
        pname = "step-function";
        version = "0.2";
        sha256 = "1mg7zqqs32zdh1x1738kk0yydyksbhx3y3x8n31f7byk5fvzqq6j";
-       revision = "3";
-       editedCabalFile = "0aa7x22n5ylvryd7bm1j9s12k5xcp9fp5fz9qy03hjicxzlhm07a";
+       revision = "4";
+       editedCabalFile = "0zxjrsa54g65p7kf5mfpjb897d1add2dfp5dm4xfs5321rs31knv";
        libraryHaskellDepends = [
          base base-compat-batteries containers deepseq QuickCheck
        ];
@@ -230544,8 +231495,8 @@ self: {
     ({ mkDerivation, base, semigroups, transformers, utility-ht }:
      mkDerivation {
        pname = "storable-record";
-       version = "0.0.4.1";
-       sha256 = "1waj81810ywbrzizifsrjd0n3803scl8sr248z9nlrc94fz8vg58";
+       version = "0.0.5";
+       sha256 = "17nf0bx3g169cpslf8prr5h5lvxl389m23rbsyb3kdai45fibpwf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -230780,15 +231731,15 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "stratosphere_0_50_0" = callPackage
+  "stratosphere_0_51_0" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, containers
      , hashable, hspec, hspec-discover, lens, template-haskell, text
      , unordered-containers
      }:
      mkDerivation {
        pname = "stratosphere";
-       version = "0.50.0";
-       sha256 = "0nxvrfi3jp0p874gkj25rdlfsb2rskp82bz58c0rply0s5rivlfl";
+       version = "0.51.0";
+       sha256 = "053q621zw2c0nf08qc232mnh1cn4qxyzshayis6siqabdnjlqnk2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -232879,19 +233830,20 @@ self: {
      }) {};
 
   "stylist" = callPackage
-    ({ mkDerivation, base, css-syntax, hashable, hspec, network-uri
-     , QuickCheck, scientific, text, unordered-containers
+    ({ mkDerivation, async, base, css-syntax, hashable, hspec
+     , network-uri, QuickCheck, scientific, text, unordered-containers
      }:
      mkDerivation {
        pname = "stylist";
-       version = "1.1.1.0";
-       sha256 = "0adcw26540a8srlmypjdv41icw5d3j3i2q6i7j92hhssj642bfw4";
+       version = "1.2.0.0";
+       sha256 = "1b3kz8kp2dda4f0vghbaxc6y29r39k197fzphy4av8p6vxgp2ka0";
        libraryHaskellDepends = [
-         base css-syntax hashable network-uri text unordered-containers
+         async base css-syntax hashable network-uri text
+         unordered-containers
        ];
        testHaskellDepends = [
-         base css-syntax hashable hspec network-uri QuickCheck scientific
-         text unordered-containers
+         async base css-syntax hashable hspec network-uri QuickCheck
+         scientific text unordered-containers
        ];
        description = "Apply CSS styles to a document tree";
        license = stdenv.lib.licenses.mit;
@@ -233263,26 +234215,28 @@ self: {
      }) {};
 
   "summoner" = callPackage
-    ({ mkDerivation, aeson, ansi-terminal, base, bytestring, containers
-     , directory, filepath, generic-deriving, gitrev, hedgehog, hspec
-     , neat-interpolation, optparse-applicative, process, relude
-     , shellmet, text, time, tomland, tree-diff
+    ({ mkDerivation, aeson, base, bytestring, colourista, containers
+     , directory, filepath, generic-data, gitrev, hedgehog, hspec
+     , hspec-hedgehog, neat-interpolation, optparse-applicative, process
+     , relude, shellmet, text, time, tomland, tree-diff
+     , validation-selective
      }:
      mkDerivation {
        pname = "summoner";
-       version = "1.4.0.0";
-       sha256 = "0niakfpnk86n69n7kazlv2z00g211b9lgp2b8qphlr4xyz3b7fn0";
+       version = "2.0.0.0";
+       sha256 = "0cphigybxmvh2ff62b100hywqgln6fhsl68yp2049g4wnmvfzgjf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson ansi-terminal base bytestring containers directory filepath
-         generic-deriving gitrev neat-interpolation optparse-applicative
-         process relude shellmet text time tomland
+         aeson base bytestring colourista containers directory filepath
+         generic-data gitrev neat-interpolation optparse-applicative process
+         relude shellmet text time tomland validation-selective
        ];
        executableHaskellDepends = [ base relude ];
        testHaskellDepends = [
-         base directory filepath hedgehog hspec neat-interpolation relude
-         text tomland tree-diff
+         base directory filepath hedgehog hspec hspec-hedgehog
+         neat-interpolation relude text tomland tree-diff
+         validation-selective
        ];
        description = "Tool for scaffolding fully configured batteries-included production-level Haskell projects";
        license = stdenv.lib.licenses.mpl20;
@@ -233292,17 +234246,17 @@ self: {
 
   "summoner-tui" = callPackage
     ({ mkDerivation, base, brick, directory, filepath, microlens
-     , microlens-th, relude, summoner, text, vty
+     , microlens-th, relude, summoner, text, validation-selective, vty
      }:
      mkDerivation {
        pname = "summoner-tui";
-       version = "1.4.0.0";
-       sha256 = "0vz4nd5wwjdk8n9n1lwa5b8xs863fkkcq56rwy0fifp1xr4184si";
+       version = "2.0.0.0";
+       sha256 = "1cgwdfbw55xvmw3k8cbwlcf8773mz1rlsvnf1slsk8kn91irhs9g";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base brick directory filepath microlens microlens-th relude
-         summoner text vty
+         summoner text validation-selective vty
        ];
        executableHaskellDepends = [ base relude ];
        description = "Tool for scaffolding fully configured batteries-included production-level Haskell projects using TUI";
@@ -235224,22 +236178,22 @@ self: {
      }) {UniqueLogicNP = null;};
 
   "synthesizer-llvm" = callPackage
-    ({ mkDerivation, base, containers, event-list, llvm-extra, llvm-tf
-     , midi, non-empty, non-negative, numeric-prelude, pathtype
+    ({ mkDerivation, base, containers, event-list, llvm-dsl, llvm-extra
+     , llvm-tf, midi, non-empty, non-negative, numeric-prelude, pathtype
      , QuickCheck, random, semigroups, sox, storable-record
-     , storable-tuple, storablevector, synthesizer-core
-     , synthesizer-midi, tfp, transformers, unsafe, utility-ht, vault
+     , storablevector, synthesizer-core, synthesizer-midi, tfp
+     , transformers, unsafe, utility-ht, vault
      }:
      mkDerivation {
        pname = "synthesizer-llvm";
-       version = "0.8.3";
-       sha256 = "1ff56jrk2a3hppw9s1iv167926vcmd9p51mzav73kkaxni1n6hry";
+       version = "0.9";
+       sha256 = "0bqncysaq164235792657yyf1ngkr7gm9vkzkbiqy6f7g7a62shd";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base containers event-list llvm-extra llvm-tf midi non-empty
-         non-negative numeric-prelude pathtype random semigroups sox
-         storable-record storable-tuple storablevector synthesizer-core
+         base containers event-list llvm-dsl llvm-extra llvm-tf midi
+         non-empty non-negative numeric-prelude pathtype random semigroups
+         sox storable-record storablevector synthesizer-core
          synthesizer-midi tfp transformers unsafe utility-ht vault
        ];
        testHaskellDepends = [
@@ -236455,8 +237409,6 @@ self: {
        ];
        description = "Support library to enable TAI usage on systems with time kept in UTC";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tai64" = callPackage
@@ -236767,8 +237719,8 @@ self: {
        pname = "tar";
        version = "0.5.1.1";
        sha256 = "1ppim7cgmn7ng8zbdrwkxhhizc30h15h1c9cdlzamc5jcagl915k";
-       revision = "1";
-       editedCabalFile = "1ni8zym7k6f1hg6wfvnnf3xcs2ar3z8xaabkgjg8q329arjcm8wp";
+       revision = "2";
+       editedCabalFile = "131f369a2vjzr26r7f2c2p534xvyw0s7cvgvih2ck56lqha58wbs";
        libraryHaskellDepends = [
          array base bytestring containers deepseq directory filepath time
        ];
@@ -236792,8 +237744,8 @@ self: {
      }:
      mkDerivation {
        pname = "tar-bytestring";
-       version = "0.6.3.0";
-       sha256 = "18c5493zwwbri2m50a2najbxaqnprxwng48kdcap7qppbvdmra66";
+       version = "0.6.3.1";
+       sha256 = "09hmsgbjsk2ddnl9hfmhq1l274r7ay2fzs4rmqgs6x09q1kc5i5p";
        libraryHaskellDepends = [
          array base bytestring containers deepseq hpath-directory
          hpath-filepath hpath-posix safe-exceptions these time unix word8
@@ -237034,6 +237986,8 @@ self: {
        pname = "taskwarrior";
        version = "0.1.2.2";
        sha256 = "0iy2fxgxhjdhi62zbd7iwbvblgr9shlqwg4a92k7b3cd9mqwskv6";
+       revision = "1";
+       editedCabalFile = "0fyidh845imi20r9h5sh4nvhnzylj5wg1rkfp9zpml7ifvpv609v";
        libraryHaskellDepends = [
          aeson base bytestring process random text time unordered-containers
          uuid
@@ -237146,6 +238100,8 @@ self: {
        pname = "tasty-expected-failure";
        version = "0.11.1.2";
        sha256 = "175gdk1mkslcwjxajkbl4zmaigzf8h4svzd7va5qb519y0dxk28n";
+       revision = "1";
+       editedCabalFile = "1r367zar3gdad99nh53z7pr1qcw640pkcdv8zgl1b162ds3sv6zz";
        libraryHaskellDepends = [ base tagged tasty ];
        description = "Mark tasty tests as failure expected";
        license = stdenv.lib.licenses.mit;
@@ -237608,8 +238564,8 @@ self: {
        pname = "tasty-test-vector";
        version = "0";
        sha256 = "1kgz9mp1h391rqj9n78bfvxl8pd3bxanbnwkc5l9gvlygly3fz8j";
-       revision = "1";
-       editedCabalFile = "13z7fj49hsxs79brh0jrncx5qcqicgzcif9gnbx8y3hbh6qw4bv0";
+       revision = "2";
+       editedCabalFile = "131ldlbp4ji1m8wayl8h28ykcda29bsvifa3mw8513mnqnndgahc";
        libraryHaskellDepends = [ base tasty ];
        description = "Test vector support for tasty";
        license = stdenv.lib.licenses.bsd3;
@@ -238412,8 +239368,6 @@ self: {
        testHaskellDepends = [ base ];
        description = "Command-line tool to log time-tracking information into JIRA Tempo plugin";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tempodb" = callPackage
@@ -238868,6 +239822,8 @@ self: {
        pname = "tensors";
        version = "0.1.4";
        sha256 = "1wiq38px85ypnfpvbr3hcawrag457z0jvd4jr1bh7jf6qw6jqpfn";
+       revision = "1";
+       editedCabalFile = "0a96iw75ylygbjdlab5dj3dkkqamd2k1g2nfy6w7ly6j7rq6f84p";
        libraryHaskellDepends = [ base deepseq vector ];
        testHaskellDepends = [
          base deepseq hspec QuickCheck reflection vector
@@ -239365,8 +240321,8 @@ self: {
        pname = "test-framework-quickcheck2";
        version = "0.3.0.5";
        sha256 = "0ngf9vvby4nrdf1i7dxf5m9jn0g2pkq32w48xdr92n9hxka7ixn9";
-       revision = "1";
-       editedCabalFile = "1vmpk70h1594h9s216d3ngkb399fpny1d3sh4gg0vrc75p4as68d";
+       revision = "2";
+       editedCabalFile = "1apgf91van2070m6jhj9w3h2xmr42r4kk0da9crq9994hd8zwny2";
        libraryHaskellDepends = [
          base extensible-exceptions QuickCheck random test-framework
        ];
@@ -240163,8 +241119,6 @@ self: {
        libraryHaskellDepends = [ base MissingH ];
        description = "Simple text formatting library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "text-generic-pretty" = callPackage
@@ -240593,8 +241547,6 @@ self: {
        testHaskellDepends = [ base hedgehog neat-interpolation text ];
        description = "Simple text replacements from a list of search/replace pairs";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "text-short" = callPackage
@@ -240606,8 +241558,8 @@ self: {
        pname = "text-short";
        version = "0.1.3";
        sha256 = "0xyrxlb602z8bc9sr2y1fag0x56a20yj5qrkvy7iwc6hnznrynxz";
-       revision = "1";
-       editedCabalFile = "0lb4papn54fbgjdqj4ladaf5q12dhlwkg5z2vc5qxlh35x82sw4a";
+       revision = "2";
+       editedCabalFile = "17cb7p0qywf2dsrq3g8qb3ssknd9wl5k0nc2pxz9gc3l8rxpkw51";
        libraryHaskellDepends = [
          base binary bytestring deepseq ghc-prim hashable text
        ];
@@ -240631,6 +241583,8 @@ self: {
        pname = "text-show";
        version = "3.8.5";
        sha256 = "0xc2269v0bfcvlwm60l2zs6l6lwljfnq5n05n9kp580qybvynzjg";
+       revision = "2";
+       editedCabalFile = "13s8jn3vaza5103596bq4gash6h2yykzkm8ixf17d2869xg61x1y";
        libraryHaskellDepends = [
          array base base-compat-batteries bifunctors bytestring
          bytestring-builder containers generic-deriving ghc-boot-th ghc-prim
@@ -240662,8 +241616,8 @@ self: {
        pname = "text-show-instances";
        version = "3.8.3";
        sha256 = "11v335p3wzf9ijqlkls5mk4m16dfak8fckn4gj7mahs8c7l9lm5d";
-       revision = "2";
-       editedCabalFile = "001xn2aq5k8hhn5iwhmxv1s3mnxyg630klmmdhbp3lxdb2yq8rha";
+       revision = "4";
+       editedCabalFile = "0qdnzgwnpgizdm0bvmdwhdf0hwg0kabjswkmnhijkac688rkw1m2";
        libraryHaskellDepends = [
          base base-compat-batteries bifunctors binary containers directory
          ghc-boot-th haskeline hpc old-locale old-time pretty random
@@ -241173,6 +242127,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "th-desugar_1_11" = callPackage
+    ({ mkDerivation, base, containers, fail, ghc-prim, hspec, HUnit
+     , mtl, ordered-containers, semigroups, syb, template-haskell
+     , th-abstraction, th-lift, th-orphans, transformers-compat
+     }:
+     mkDerivation {
+       pname = "th-desugar";
+       version = "1.11";
+       sha256 = "0ap8dk1a1wl62ggqkg9rb7vna131drrjcd2hn5dw7mwnbc1rxqhl";
+       libraryHaskellDepends = [
+         base containers fail ghc-prim mtl ordered-containers semigroups syb
+         template-haskell th-abstraction th-lift th-orphans
+         transformers-compat
+       ];
+       testHaskellDepends = [
+         base containers hspec HUnit mtl syb template-haskell th-lift
+         th-orphans
+       ];
+       description = "Functions to desugar Template Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "th-dict-discovery" = callPackage
     ({ mkDerivation, base, constraints, template-haskell }:
      mkDerivation {
@@ -241211,6 +242188,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "th-expand-syns_0_4_6_0" = callPackage
+    ({ mkDerivation, base, containers, syb, template-haskell }:
+     mkDerivation {
+       pname = "th-expand-syns";
+       version = "0.4.6.0";
+       sha256 = "1dz8bl4yb6sis74knmvqxa21y9yws9l8gafzsi0chaqx15b5asxj";
+       libraryHaskellDepends = [ base containers syb template-haskell ];
+       testHaskellDepends = [ base template-haskell ];
+       description = "Expands type synonyms in Template Haskell ASTs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "th-extras" = callPackage
     ({ mkDerivation, base, syb, template-haskell }:
      mkDerivation {
@@ -241271,8 +242261,8 @@ self: {
      }:
      mkDerivation {
        pname = "th-instance-reification";
-       version = "0.1.5";
-       sha256 = "0ssnd45bvz4k0fajc3xlqy7iq92rm0pjn3wwl4brnvaf7l1180q4";
+       version = "0.1.5.1";
+       sha256 = "0jafxmd767z52my86dh1dk89h6wx2qf11vx4yk9qw563a7xzv6rm";
        libraryHaskellDepends = [
          base containers list-extras template-haskell th-expand-syns
        ];
@@ -241282,8 +242272,6 @@ self: {
        ];
        description = "Fixed versions of instances reification functions";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "th-instances" = callPackage
@@ -241592,8 +242580,8 @@ self: {
      }:
      mkDerivation {
        pname = "th-utilities";
-       version = "0.2.3.1";
-       sha256 = "1sy3bgwc85zw999cya92xsp9jllclwbzw9fmjmhqi4r5kj2gyk96";
+       version = "0.2.4.0";
+       sha256 = "1c3idsx9fyh9n4d969mibxsyfb2nmivwm65zap3hyl40bnldc39l";
        libraryHaskellDepends = [
          base bytestring containers directory filepath primitive syb
          template-haskell text th-orphans
@@ -241783,8 +242771,8 @@ self: {
        pname = "these";
        version = "1.0.1";
        sha256 = "1k0pi65g7cm9hzdw6my6bzz2zvddkmj1qs45ymqmi316bpiixk3r";
-       revision = "1";
-       editedCabalFile = "0923r86fnmgpx0msm68aszirh2n19nn5bccgjxfh2146jw4z7w3z";
+       revision = "3";
+       editedCabalFile = "1z6aqz41m1cdm5q5y4jj4fl9j1qcvi32d08r2a103x5ndhf8151q";
        libraryHaskellDepends = [
          aeson assoc base base-compat binary deepseq hashable QuickCheck
          semigroupoids unordered-containers
@@ -241799,8 +242787,8 @@ self: {
        pname = "these-lens";
        version = "1";
        sha256 = "144ly13qng95mwnfis8dm7n3843z3w2vp4212qawbpw8hw921c7y";
-       revision = "1";
-       editedCabalFile = "1lrpq5a8ldddmsi7ckaqinamn2f7kkijq5jq05yzdx818b2563wn";
+       revision = "2";
+       editedCabalFile = "0krnf1arsr05ygqcpfd7p34k7319fwjbg59fqhilrjl6jzzpyaka";
        libraryHaskellDepends = [ base base-compat lens these ];
        description = "Lenses for These";
        license = stdenv.lib.licenses.bsd3;
@@ -242081,8 +243069,6 @@ self: {
        ];
        description = "A graphical tool for profiling parallel Haskell programs";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "threefish" = callPackage
@@ -242937,8 +243923,8 @@ self: {
        pname = "time-parsers";
        version = "0.1.2.1";
        sha256 = "102k6l9888kbgng045jk170qjbmdnwv2lbzlc12ncybfk2yk7wdv";
-       revision = "1";
-       editedCabalFile = "00063s6a75sy9fjg5507yix0wizdfx5vangn3yfmfvh3wgw8yj8c";
+       revision = "2";
+       editedCabalFile = "10bawg6cwfwm31fcs63z8imd1cdl1wq8syn669yfkycrk77wfkli";
        libraryHaskellDepends = [ base parsers template-haskell time ];
        testHaskellDepends = [
          attoparsec base bifunctors parsec parsers tasty tasty-hunit
@@ -243540,8 +244526,6 @@ self: {
        ];
        description = "Load TimeZoneSeries from an Olson file at compile time";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "timezone-series" = callPackage
@@ -243926,8 +244910,8 @@ self: {
      }:
      mkDerivation {
        pname = "tldr";
-       version = "0.6.2";
-       sha256 = "13m88za5pfal00kldqjgag232k563y168ri84acdim8km62b861z";
+       version = "0.6.4";
+       sha256 = "0gg9zplk8widfiwm5q1pi7fl45hby68c3ljm8p4livrp72s10f9d";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -244561,8 +245545,8 @@ self: {
        pname = "toml-parser";
        version = "0.1.0.0";
        sha256 = "0p1nl3009qlcqn4jjggbm1v719a6bswklkyjb3plm0cz3bsyr0fs";
-       revision = "2";
-       editedCabalFile = "02vblwkja1in6fi3zbvxmw6k1c0zny9jljiis0krvn94h2rdflwd";
+       revision = "3";
+       editedCabalFile = "1hls6xw2c7379m1x92da91v7mv1ysdsj6shi1nslfq5xgm53bw14";
        libraryHaskellDepends = [ array base text time ];
        libraryToolDepends = [ alex happy ];
        description = "Parser for the TOML configuration language";
@@ -244910,10 +245894,8 @@ self: {
      }:
      mkDerivation {
        pname = "topograph";
-       version = "1";
-       sha256 = "0vm7ja5f677lpphfmggx68h144k0fzj0n6r6ypf5474da405xad7";
-       revision = "2";
-       editedCabalFile = "0sci2p1spsh7as4n7mp1hb4pwiq4wd69p60c71kwx56wpwiglp9i";
+       version = "1.0.0.1";
+       sha256 = "1sd2gyirkdgwcll76zxw954wdsyxzajn59xa9zk55fbrsm6w24cv";
        libraryHaskellDepends = [
          base base-compat base-orphans containers vector
        ];
@@ -245082,6 +246064,33 @@ self: {
        broken = true;
      }) {toxcore = null;};
 
+  "toxcore-c" = callPackage
+    ({ mkDerivation, base, base16-bytestring, bytestring
+     , bytestring-arbitrary, data-default-class, directory, hspec
+     , QuickCheck, saltine, toxcore
+     }:
+     mkDerivation {
+       pname = "toxcore-c";
+       version = "0.2.11";
+       sha256 = "1fgz30y867lw9d6pmssi75k1prlfgrlpfa9qzqkm52mra2r5d2mb";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base bytestring data-default-class ];
+       librarySystemDepends = [ toxcore ];
+       executableHaskellDepends = [
+         base base16-bytestring bytestring directory
+       ];
+       executableSystemDepends = [ toxcore ];
+       testHaskellDepends = [
+         base base16-bytestring bytestring bytestring-arbitrary
+         data-default-class hspec QuickCheck saltine
+       ];
+       description = "Haskell bindings to the C reference implementation of Tox";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {toxcore = null;};
+
   "toxiproxy-haskell" = callPackage
     ({ mkDerivation, aeson, base, containers, hspec, http-client
      , process, servant, servant-client, silently, text, time
@@ -246348,22 +247357,20 @@ self: {
 
   "tree-sitter" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
-     , filepath, fused-effects, hedgehog, semantic-source, split
-     , template-haskell, text, unordered-containers
+     , filepath, fused-effects, hedgehog, split, template-haskell, text
+     , unordered-containers
      }:
      mkDerivation {
        pname = "tree-sitter";
-       version = "0.9.0.0";
-       sha256 = "12mjscpibhh15jiqcplnj2m4gxd4ym4xbbji96l5zwpzmd2x4bjb";
+       version = "0.9.0.1";
+       sha256 = "1khkc2v87i9vgbakc3gh1rmrakz43n4lglx50vvckp192in4svzm";
        libraryHaskellDepends = [
          aeson base bytestring containers directory filepath fused-effects
-         semantic-source split template-haskell text unordered-containers
+         split template-haskell text unordered-containers
        ];
        testHaskellDepends = [ base hedgehog ];
        description = "Unstable bindings for the tree-sitter parsing library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tree-sitter-go" = callPackage
@@ -246376,8 +247383,6 @@ self: {
        libraryHaskellDepends = [ base tree-sitter ];
        description = "Tree-sitter grammar/parser for Go";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tree-sitter-haskell" = callPackage
@@ -246391,8 +247396,6 @@ self: {
        libraryHaskellDepends = [ base tree-sitter ];
        description = "Tree-sitter grammar/parser for Haskell (with GHC extensions)";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tree-sitter-java" = callPackage
@@ -246405,8 +247408,6 @@ self: {
        libraryHaskellDepends = [ base tree-sitter ];
        description = "Tree-sitter grammar/parser for Java";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tree-sitter-json" = callPackage
@@ -246419,8 +247420,6 @@ self: {
        libraryHaskellDepends = [ base tree-sitter ];
        description = "Tree-sitter grammar/parser for JSON";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tree-sitter-php" = callPackage
@@ -246433,8 +247432,6 @@ self: {
        libraryHaskellDepends = [ base tree-sitter ];
        description = "Tree-sitter grammar/parser for PHP";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tree-sitter-python" = callPackage
@@ -246447,22 +247444,18 @@ self: {
        libraryHaskellDepends = [ base tree-sitter ];
        description = "Tree-sitter grammar/parser for Python";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tree-sitter-ql" = callPackage
     ({ mkDerivation, base, tree-sitter }:
      mkDerivation {
        pname = "tree-sitter-ql";
-       version = "0.1.0.1";
-       sha256 = "07k5vxkwy2l49f1gyvqasqva41n1h4xz381rmy1dd0625mshyvs2";
+       version = "0.1.0.3";
+       sha256 = "0sxfjkdbajk3q5qpy0y51q1srvp3lnch1jvypppcz3ria59svhzx";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [ base tree-sitter ];
        description = "Tree-sitter grammar/parser for QL";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tree-sitter-ruby" = callPackage
@@ -246475,8 +247468,6 @@ self: {
        libraryHaskellDepends = [ base tree-sitter ];
        description = "Tree-sitter grammar/parser for Ruby";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tree-sitter-tsx" = callPackage
@@ -246489,8 +247480,6 @@ self: {
        libraryHaskellDepends = [ base tree-sitter ];
        description = "Tree-sitter grammar/parser for TSX";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tree-sitter-typescript" = callPackage
@@ -246503,8 +247492,6 @@ self: {
        libraryHaskellDepends = [ base tree-sitter ];
        description = "Tree-sitter grammar/parser for TypeScript";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "tree-traversals" = callPackage
@@ -246697,8 +247684,8 @@ self: {
        pname = "trie-simple";
        version = "0.4.1.1";
        sha256 = "0h3wfq4fjakkwvrv35l25709xv528h1c08cr754gvk4l8vqnk6k7";
-       revision = "1";
-       editedCabalFile = "09kzna10hdf2qjialdg6rql0w55si9db7sjd89l661sgidlbq7y0";
+       revision = "2";
+       editedCabalFile = "1v3aiqn3c91md7y0wqcdvafy1fwjr8hfsg17ykqr1si8ax6hy5j0";
        libraryHaskellDepends = [ base containers deepseq mtl ];
        testHaskellDepends = [ base containers hspec QuickCheck vector ];
        benchmarkHaskellDepends = [
@@ -247701,8 +248688,8 @@ self: {
      }:
      mkDerivation {
        pname = "turtle";
-       version = "1.5.17";
-       sha256 = "0chj4issjbkdkj1jbcpi8v104784qnzvkq81a4wcdijk09biphq7";
+       version = "1.5.18";
+       sha256 = "0xdkn6vhmir7sxazi5sxrgvwsi8zqyqbcyvjnqvckz0ac5d8zj68";
        libraryHaskellDepends = [
          ansi-wl-pprint async base bytestring clock containers directory
          exceptions foldl hostname managed optional-args
@@ -247804,6 +248791,8 @@ self: {
        pname = "tweet-hs";
        version = "1.0.2.1";
        sha256 = "0b277whd3jywb6w0gkaijmzadpwabmyxvxyg6fmsysq1kp3isrnm";
+       revision = "1";
+       editedCabalFile = "0ca923bxx8aj6qzm0nvxvh1zmzqw34jv4xmnrjy1lfyndg0qg9vj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -248304,8 +249293,8 @@ self: {
      }:
      mkDerivation {
        pname = "twitter-types";
-       version = "0.10.0";
-       sha256 = "0a2wgidg5dk3cxszb0q07cg0sywqgyxl5scswlr91yjvmjmlnkby";
+       version = "0.10.1";
+       sha256 = "0rz4xq66fckvd6q7qlsz2bgi1df95cs5mksihzjcq9x2axvsz632";
        libraryHaskellDepends = [
          aeson base text time unordered-containers
        ];
@@ -249283,8 +250272,6 @@ self: {
        executableHaskellDepends = [ base diagrams-lib text ];
        description = "Typed and composable spreadsheets";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "typed-streams" = callPackage
@@ -251269,8 +252256,6 @@ self: {
          semigroups split text
        ];
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "unitym" = callPackage
@@ -251368,8 +252353,8 @@ self: {
        pname = "universe-base";
        version = "1.1.1";
        sha256 = "1a6yyvrzkz7jnjz4lyp8aw0r5hci1nx8c06v3dicgfqs3frk1v8x";
-       revision = "1";
-       editedCabalFile = "1l6vxapfjhm5mb6w25ah8sl78hdw1ia5s18cf40lm0vzb6ip4bkk";
+       revision = "2";
+       editedCabalFile = "0601hqv5h2274i11j1ai2yqb7zk2fkqkiqlpwnq5awbgdkwb10i8";
        libraryHaskellDepends = [ base containers tagged transformers ];
        testHaskellDepends = [ base containers QuickCheck ];
        description = "A class for finite and recursively enumerable types";
@@ -251382,8 +252367,8 @@ self: {
      }:
      mkDerivation {
        pname = "universe-dependent-sum";
-       version = "1.2";
-       sha256 = "1xjw6mhlj1vyw6m4b4j0k81p86hls9031sfv59zgiq5y0ngm1f07";
+       version = "1.2.0.1";
+       sha256 = "0002wc68z803jys90s7sdh5nzdx1dk2jl49d19sjylk1cf18n5fi";
        libraryHaskellDepends = [
          base dependent-sum some universe-base universe-some
        ];
@@ -251412,6 +252397,8 @@ self: {
        pname = "universe-instances-extended";
        version = "1.1.1";
        sha256 = "1ppklq2rjcryld9d9kdzz55vfllfpxxgsvvkhpd1jrvhyj51yahh";
+       revision = "1";
+       editedCabalFile = "0g3qpvgw304yml1n9ly78qrsrrw53f6zpkciyk1xc0nmlm0dkwih";
        libraryHaskellDepends = [
          adjunctions base comonad containers contravariant universe-base
        ];
@@ -251438,8 +252425,8 @@ self: {
        pname = "universe-reverse-instances";
        version = "1.1";
        sha256 = "0pdmv146ap0dh38mxhjf11jx3fbr9im7mc0zxb3bsnwpfrv1kfqd";
-       revision = "2";
-       editedCabalFile = "1ls6hss9mrdk535k9ssy4lv01gbw11pbqiikpv2m8sjmh65fjilx";
+       revision = "3";
+       editedCabalFile = "1zkpcipbzhxricr94pkhn4cqmjcnsxx301kxarx798qr9il37qzw";
        libraryHaskellDepends = [ base containers universe-base ];
        description = "Instances of standard classes that are made possible by enumerations";
        license = stdenv.lib.licenses.bsd3;
@@ -251453,6 +252440,8 @@ self: {
        pname = "universe-some";
        version = "1.2";
        sha256 = "1c9pdk682xdzscq77c006x052c9jizpgja3xk0ym8n421h0k8zlh";
+       revision = "1";
+       editedCabalFile = "1rx1cw40clsla3sixm0gzdbni9f13ngncl02fm9fl8kgf23w9q73";
        libraryHaskellDepends = [
          base some template-haskell th-abstraction transformers
          universe-base
@@ -251753,6 +252742,8 @@ self: {
        pname = "unliftio-core";
        version = "0.2.0.1";
        sha256 = "16i97jax8rys57l0g0qswfwxh1cl5bgw2lw525rm6bzajw90v7wi";
+       revision = "1";
+       editedCabalFile = "16k5fxlm9xpbd0ca861nmhb1j2ahyid02m1vbg1vzb5ckbm48glv";
        libraryHaskellDepends = [ base transformers ];
        description = "The MonadUnliftIO typeclass for unlifting monads to IO";
        license = stdenv.lib.licenses.mit;
@@ -251765,21 +252756,6 @@ self: {
      }:
      mkDerivation {
        pname = "unliftio-pool";
-       version = "0.2.1.0";
-       sha256 = "0qhgiym7slz3n68py4izs52wfhs5d7nyxzwnj8q86rvkvy6lfm5v";
-       libraryHaskellDepends = [
-         base resource-pool time transformers unliftio-core
-       ];
-       description = "Data.Pool generalized to MonadUnliftIO.";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "unliftio-pool_0_2_1_1" = callPackage
-    ({ mkDerivation, base, resource-pool, time, transformers
-     , unliftio-core
-     }:
-     mkDerivation {
-       pname = "unliftio-pool";
        version = "0.2.1.1";
        sha256 = "0hxxngldp4zr55qv67gf62a87yxr1f0xfyh4gfzr45q62mscs8xv";
        libraryHaskellDepends = [
@@ -251787,7 +252763,6 @@ self: {
        ];
        description = "Data.Pool generalized to MonadUnliftIO.";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "unliftio-streams" = callPackage
@@ -252943,8 +253918,6 @@ self: {
        executableHaskellDepends = [ base random-fu text ];
        description = "A collection of user agents";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "userid" = callPackage
@@ -253262,8 +254235,8 @@ self: {
     ({ mkDerivation, base, QuickCheck }:
      mkDerivation {
        pname = "utility-ht";
-       version = "0.0.14";
-       sha256 = "1a7bgk7wv7sqbxbiv7kankiimr3wij7zdm7s83zwsf886ghyxhk9";
+       version = "0.0.15";
+       sha256 = "148gdz6pbl1i5qjvjrq5576pg58anmh18xha37n9fncjy36pjp44";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base QuickCheck ];
        description = "Various small helper functions for Lists, Maybes, Tuples, Functions";
@@ -253968,8 +254941,6 @@ self: {
        ];
        description = "Lighweight pure data validation based on Applicative and Selective functors";
        license = stdenv.lib.licenses.mpl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "validations" = callPackage
@@ -254613,6 +255584,8 @@ self: {
        pname = "vec";
        version = "0.3";
        sha256 = "0r2jk3jqwn0r4wnpgc8k8i664g3rrs6dkyfsysysn4w10j22j5sr";
+       revision = "2";
+       editedCabalFile = "0v9m2x1p1395dqf0g2agfgmlx6w1dak2fr50hh6aahjk4y0jp30j";
        libraryHaskellDepends = [
          adjunctions base deepseq distributive fin hashable QuickCheck
          semigroupoids transformers
@@ -254631,6 +255604,8 @@ self: {
        pname = "vec-lens";
        version = "0.3";
        sha256 = "0i08p7rfmivf03mir7hcbkr7rarji95icsyvi6diclav1jd6fa7q";
+       revision = "1";
+       editedCabalFile = "0grj1abb7gjbzw06672464r75wjnmra9d12yvlmdm1qyj9zya0ph";
        libraryHaskellDepends = [ base fin lens vec ];
        description = "Vec: length-indexed (sized) list: lens support";
        license = stdenv.lib.licenses.bsd3;
@@ -254765,8 +255740,8 @@ self: {
        pname = "vector-binary-instances";
        version = "0.2.5.1";
        sha256 = "04n5cqm1v95pw1bp68l9drjkxqiy2vswxdq0fy1rqcgxisgvji9r";
-       revision = "1";
-       editedCabalFile = "1p7cbxdpix0rakvggnnb06kcrb787fyyqlzric6i4s3rn34547q8";
+       revision = "2";
+       editedCabalFile = "0ia9i7q7jrk3ab3nq2368glr69vl6fwvh42zlwvdmxn4xd861qfx";
        libraryHaskellDepends = [ base binary vector ];
        testHaskellDepends = [ base binary tasty tasty-quickcheck vector ];
        benchmarkHaskellDepends = [
@@ -255189,6 +256164,8 @@ self: {
        pname = "vector-th-unbox";
        version = "0.2.1.7";
        sha256 = "0q8dqnbv1c2gi7jjdhqj14abj1vik23ki6lq4iz2sz18yc7q69fi";
+       revision = "1";
+       editedCabalFile = "11qhhir9cdy3x7pd0z0xk8vi4nzr9fn9q3ggwbhhc43jglngw1x7";
        libraryHaskellDepends = [ base template-haskell vector ];
        testHaskellDepends = [ base data-default vector ];
        description = "Deriver for Data.Vector.Unboxed using Template Haskell";
@@ -255447,8 +256424,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion lens ];
        description = "Random verilog generation and simulator testing";
        license = stdenv.lib.licenses.gpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "versioning" = callPackage
@@ -256140,6 +257115,17 @@ self: {
        broken = true;
      }) {};
 
+  "vitrea" = callPackage
+    ({ mkDerivation, base, mtl, profunctors }:
+     mkDerivation {
+       pname = "vitrea";
+       version = "0.1.0.0";
+       sha256 = "0f7rwww8gcfg6q0xq6z8c3010gx0vxr0v6yf143qxqjx02f93d1p";
+       libraryHaskellDepends = [ base mtl profunctors ];
+       description = "Profunctor optics via the profunctor representation theorem";
+       license = stdenv.lib.licenses.gpl3Plus;
+     }) {};
+
   "vivid" = callPackage
     ({ mkDerivation, base, binary, bytestring, containers, directory
      , filepath, hashable, MonadRandom, mtl, network, process, random
@@ -256451,7 +257437,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "vty_5_28_1" = callPackage
+  "vty_5_28_2" = callPackage
     ({ mkDerivation, ansi-terminal, base, binary, blaze-builder
      , bytestring, Cabal, containers, deepseq, directory, filepath
      , hashable, HUnit, microlens, microlens-mtl, microlens-th, mtl
@@ -256462,8 +257448,8 @@ self: {
      }:
      mkDerivation {
        pname = "vty";
-       version = "5.28.1";
-       sha256 = "0hshmpa3n6936527wimxf3vi5v6gddp09kxjjmcxjwq39h9a640y";
+       version = "5.28.2";
+       sha256 = "0jfiha8hwpdpnz4i7d94dsgcrfd20y0kjp9crn3ds2jx8kln1prv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -256561,12 +257547,18 @@ self: {
      }) {};
 
   "vulkan" = callPackage
-    ({ mkDerivation, base, cpphs, vector-sized, vulkan }:
+    ({ mkDerivation, base, bytestring, transformers, vector
+     , vector-sized, vulkan
+     }:
      mkDerivation {
        pname = "vulkan";
-       version = "2.1.0.0";
-       sha256 = "1w19ip6qc5qbscp06a2b58x9yhjc98naaq1gxymk7gs3iagylrzq";
-       libraryHaskellDepends = [ base cpphs vector-sized ];
+       version = "3.0.0.0";
+       sha256 = "1kz0b5kn6dm70i1php7aywjsamjn4ymka87j7c4md93gy9z20ia5";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring transformers vector vector-sized
+       ];
        librarySystemDepends = [ vulkan ];
        description = "Bindings to the Vulkan graphics API";
        license = stdenv.lib.licenses.bsd3;
@@ -257785,8 +258777,6 @@ self: {
        ];
        description = "A WAI middleware to collect EKG request metrics";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "wai-middleware-preprocessor" = callPackage
@@ -258641,8 +259631,8 @@ self: {
      }:
      mkDerivation {
        pname = "warp-grpc";
-       version = "0.4.0.0";
-       sha256 = "1isi0xd6vvavvr4m3gfiqj2cmmpa3jn9py61m0ksrarxwmsw8s1g";
+       version = "0.4.0.1";
+       sha256 = "0dajbs3gxibnllzs134wa7vqclnyfj2r3hc70dci51wgnmi4b7xr";
        libraryHaskellDepends = [
          async base binary bytestring case-insensitive http-types http2
          http2-grpc-types unliftio-core wai warp warp-tls
@@ -259043,8 +260033,6 @@ self: {
        ];
        description = "Wrappers for web frameworks to ease usage with the FP Complete environment";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "web-inv-route" = callPackage
@@ -259175,16 +260163,16 @@ self: {
      }:
      mkDerivation {
        pname = "web-rep";
-       version = "0.3.0";
-       sha256 = "1qfgs3jb146a37zpsgcl2vc4k6p9h1mqhhkgrcq386x535v2ivmq";
+       version = "0.3.1";
+       sha256 = "03rm0qa9y43fd9mbaix4vhrsjk6vdkd6yqji7d5m89q3j0xamm3v";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson attoparsec base bifunctors box clay foldl generic-lens
          interpolatedstring-perl6 javascript-bridge JuicyPixels
-         language-javascript lens lucid lucid-svg mmorph mtl
-         optparse-generic scotty streaming text text-format transformers
-         unordered-containers wai wai-extra wai-middleware-static
+         language-javascript lens lucid lucid-svg mmorph mtl scotty
+         streaming text text-format transformers unordered-containers
+         wai-middleware-static
        ];
        executableHaskellDepends = [
          attoparsec base box lens lucid optparse-generic scotty text wai
@@ -260481,8 +261469,6 @@ self: {
          random-fu random-shuffle random-source relude temporary time
        ];
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "why3" = callPackage
@@ -260511,8 +261497,8 @@ self: {
      }:
      mkDerivation {
        pname = "wide-word";
-       version = "0.1.1.0";
-       sha256 = "101a2irkgsz9264zj9vdwbkycf25phsf1kbhh6nrx8mh9207aaiw";
+       version = "0.1.1.1";
+       sha256 = "19mxi6mfri4q96lqh3zllmacaln2wdp0ipzmhk7v9xqbphpfjrfj";
        libraryHaskellDepends = [ base deepseq primitive ];
        testHaskellDepends = [
          base bytestring ghc-prim hedgehog primitive QuickCheck
@@ -261006,6 +261992,8 @@ self: {
        pname = "wizards";
        version = "1.0.3";
        sha256 = "1clvbd1ckhvy29qrbmpkn7bya7300fq6znnps23nn3nxyrxhsr85";
+       revision = "1";
+       editedCabalFile = "095qd17zrdhqmcvmslbyzfa5sh9glvvsnsvnlz31gzsmi8nnsgim";
        libraryHaskellDepends = [
          base containers control-monad-free haskeline mtl transformers
        ];
@@ -261041,8 +262029,8 @@ self: {
      }:
      mkDerivation {
        pname = "wkt-geom";
-       version = "0.0.10";
-       sha256 = "10hzfa063sp2f4v3ki7322x74iqn8wan0klalhddqfr554j3b1g5";
+       version = "0.0.11";
+       sha256 = "19mcfs9php03g3kb7pgfxcpilvmq5bxbyfkx59mk41nx6f0jfl0d";
        libraryHaskellDepends = [
          base base16-bytestring binary bytestring containers geojson
          scientific trifecta utf8-string vector
@@ -261519,8 +262507,6 @@ self: {
        ];
        description = "Command-line tool to get random words";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "wordpass" = callPackage
@@ -262299,8 +263285,6 @@ self: {
        testHaskellDepends = [ base bytestring envy hspec skews text ];
        description = "A-little-higher-level WebSocket client";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "wtk" = callPackage
@@ -263638,8 +264622,8 @@ self: {
      }:
      mkDerivation {
        pname = "xml-conduit-stylist";
-       version = "1.0.1.0";
-       sha256 = "1csa940r6a63i01khcm89lvhp7m6dyxpnljn6l6m105z7jfvvy8r";
+       version = "1.1.0.0";
+       sha256 = "0bj6mcd4k6wlrzizf3j2mnmbbl624k0xcsfrz9c3wpvdxb9iyqsr";
        libraryHaskellDepends = [
          base containers css-syntax network-uri stylist text
          unordered-containers xml-conduit
@@ -264171,8 +265155,6 @@ self: {
        ];
        description = "XML back and forth! Parser, renderer, ToXml, FromXml, fixpoints";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "xmlbf-xeno" = callPackage
@@ -264193,8 +265175,6 @@ self: {
        ];
        description = "xeno backend support for the xmlbf library";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "xmlbf-xmlhtml" = callPackage
@@ -264216,8 +265196,6 @@ self: {
        ];
        description = "xmlhtml backend support for the xmlbf library";
        license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-       broken = true;
      }) {};
 
   "xmlgen" = callPackage
@@ -266369,8 +267347,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-auth";
-       version = "1.6.9";
-       sha256 = "0x843l5z03a563i8nc2x9c6afw213chblm7ldd7yxn5g110h5ybx";
+       version = "1.6.10";
+       sha256 = "0nfrq61dqifzbnqx8m62j1q6nmlj04mis864yg2k36mra9njap27";
        libraryHaskellDepends = [
          aeson authenticate base base16-bytestring base64-bytestring binary
          blaze-builder blaze-html blaze-markup bytestring conduit
@@ -266970,6 +267948,44 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "yesod-core_1_6_18" = callPackage
+    ({ mkDerivation, aeson, async, auto-update, base, blaze-html
+     , blaze-markup, bytestring, case-insensitive, cereal, clientsession
+     , conduit, conduit-extra, containers, cookie, deepseq, fast-logger
+     , gauge, hspec, hspec-expectations, http-types, HUnit, memory
+     , monad-logger, mtl, network, parsec, path-pieces, primitive
+     , random, resourcet, shakespeare, streaming-commons
+     , template-haskell, text, time, transformers, unix-compat, unliftio
+     , unordered-containers, vector, wai, wai-extra, wai-logger, warp
+     , word8
+     }:
+     mkDerivation {
+       pname = "yesod-core";
+       version = "1.6.18";
+       sha256 = "1hm0frswqcj34scvapszdryjfmnrqq5fhf5hv7qcz8sj3qf46zkd";
+       libraryHaskellDepends = [
+         aeson auto-update base blaze-html blaze-markup bytestring
+         case-insensitive cereal clientsession conduit conduit-extra
+         containers cookie deepseq fast-logger http-types memory
+         monad-logger mtl parsec path-pieces primitive random resourcet
+         shakespeare template-haskell text time transformers unix-compat
+         unliftio unordered-containers vector wai wai-extra wai-logger warp
+         word8
+       ];
+       testHaskellDepends = [
+         async base bytestring clientsession conduit conduit-extra
+         containers cookie hspec hspec-expectations http-types HUnit network
+         path-pieces random resourcet shakespeare streaming-commons
+         template-haskell text transformers unliftio wai wai-extra warp
+       ];
+       benchmarkHaskellDepends = [
+         base blaze-html bytestring gauge shakespeare text
+       ];
+       description = "Creation of type-safe, RESTful web applications";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "yesod-crud" = callPackage
     ({ mkDerivation, base, classy-prelude, containers, MissingH
      , monad-control, persistent, random, safe, stm, uuid, yesod-core
@@ -270312,6 +271328,8 @@ self: {
        pname = "zlib";
        version = "0.6.2.1";
        sha256 = "1l11jraslcrp9d4wnhwfyhwk4fsiq1aq8i6vj81vcq1m2zzi1y7h";
+       revision = "1";
+       editedCabalFile = "0i9g71jvdw22bi9bi8dm5khwzcsv6cv8yadmf7afklg4xigxykfk";
        libraryHaskellDepends = [ base bytestring ];
        librarySystemDepends = [ zlib ];
        testHaskellDepends = [
diff --git a/pkgs/development/interpreters/clojure/babashka.nix b/pkgs/development/interpreters/clojure/babashka.nix
new file mode 100644
index 00000000000..db849bb542d
--- /dev/null
+++ b/pkgs/development/interpreters/clojure/babashka.nix
@@ -0,0 +1,82 @@
+{ stdenv, fetchurl, graalvm8 }:
+
+with stdenv.lib;
+stdenv.mkDerivation rec {
+  pname = "babashka";
+  version = "0.0.78";
+
+  reflectionJson = fetchurl {
+    name = "reflection.json";
+    url = "https://github.com/borkdude/${pname}/releases/download/v${version}/${pname}-${version}-reflection.json";
+    sha256 = "1m1nwdxjsc6bkdzkbsll316ly0c3qxaimjzyfph1220irjxnm7xf";
+  };
+
+  src = fetchurl {
+    url = "https://github.com/borkdude/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar";
+    sha256 = "01w990zk5qjrbnc846snh6na002kdyrlrfnqwg03ibx20g3mr7if";
+  };
+
+  dontUnpack = true;
+
+  buildInputs = [ graalvm8 ];
+
+  buildPhase = ''
+    native-image \
+      -jar ${src} \
+      -H:Name=bb \
+      -H:+ReportExceptionStackTraces \
+      -J-Dclojure.spec.skip-macros=true \
+      -J-Dclojure.compiler.direct-linking=true \
+      "-H:IncludeResources=BABASHKA_VERSION" \
+      "-H:IncludeResources=SCI_VERSION" \
+      -H:ReflectionConfigurationFiles=${reflectionJson} \
+      --initialize-at-run-time=java.lang.Math\$RandomNumberGeneratorHolder \
+      --initialize-at-build-time \
+      -H:Log=registerResource: \
+      -H:EnableURLProtocols=http,https \
+      --enable-all-security-services \
+      -H:+JNI \
+      --verbose \
+      --no-fallback \
+      --no-server \
+      --report-unsupported-elements-at-runtime \
+      "-J-Xmx3g"
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp bb $out/bin/bb
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A Clojure babushka for the grey areas of Bash";
+    longDescription = ''
+      The main idea behind babashka is to leverage Clojure in places where you 
+      would be using bash otherwise.
+
+      As one user described it:
+
+          I’m quite at home in Bash most of the time, but there’s a substantial 
+          grey area of things that are too complicated to be simple in bash, but 
+          too simple to be worth writing a clj/s script for. Babashka really 
+          seems to hit the sweet spot for those cases.
+
+    Goals:
+
+    - Low latency Clojure scripting alternative to JVM Clojure.
+    - Easy installation: grab the self-contained binary and run. No JVM needed.
+    - Familiarity and portability:
+      - Scripts should be compatible with JVM Clojure as much as possible
+      - Scripts should be platform-independent as much as possible. Babashka 
+        offers support for linux, macOS and Windows.
+    - Allow interop with commonly used classes like java.io.File and System
+    - Multi-threading support (pmap, future, core.async)
+    - Batteries included (tools.cli, cheshire, ...)
+    - Library support via popular tools like the clojure CLI
+    '';
+    homepage = "https://github.com/borkdude/babashka";
+    license = licenses.epl10;
+    platforms = graalvm8.meta.platforms;
+    maintainers = with maintainers; [ bhougland DerGuteMoritz jlesquembre ];
+  };
+}
diff --git a/pkgs/development/interpreters/clojurescript/lumo/default.nix b/pkgs/development/interpreters/clojurescript/lumo/default.nix
index d6252a7506a..122831e80cc 100644
--- a/pkgs/development/interpreters/clojurescript/lumo/default.nix
+++ b/pkgs/development/interpreters/clojurescript/lumo/default.nix
@@ -279,7 +279,7 @@ stdenv.mkDerivation {
       Thanks to V8's custom startup snapshots, Lumo starts up instantaneously,
       making it the fastest Clojure REPL in existence.
     '';
-    homepage = https://github.com/anmonteiro/lumo;
+    homepage = "https://github.com/anmonteiro/lumo";
     license = stdenv.lib.licenses.epl10;
     maintainers = [ stdenv.lib.maintainers.hlolli ];
     platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
diff --git a/pkgs/development/interpreters/erlang/R22.nix b/pkgs/development/interpreters/erlang/R22.nix
index 88fe21453a8..7596ad9e2f1 100644
--- a/pkgs/development/interpreters/erlang/R22.nix
+++ b/pkgs/development/interpreters/erlang/R22.nix
@@ -3,8 +3,8 @@
 # How to obtain `sha256`:
 # nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz
 mkDerivation {
-  version = "22.1.7";
-  sha256 = "18aqy2s8nqd82v4lzzxknrwjva8mv1y2hvai9cakz5nkyd3vwq62";
+  version = "22.3";
+  sha256 = "0srbyncgnr1kp0rrviq14ia3h795b3gk0iws5ishv6rphcq1rs27";
 
   prePatch = ''
     substituteInPlace make/configure.in --replace '`sw_vers -productVersion`' "''${MACOSX_DEPLOYMENT_TARGET:-10.12}"
diff --git a/pkgs/development/interpreters/groovy/default.nix b/pkgs/development/interpreters/groovy/default.nix
index e1d404a6b15..1572f5e4be2 100644
--- a/pkgs/development/interpreters/groovy/default.nix
+++ b/pkgs/development/interpreters/groovy/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "groovy";
-  version = "3.0.0";
+  version = "3.0.2";
 
   src = fetchurl {
     url = "http://dl.bintray.com/groovy/maven/apache-groovy-binary-${version}.zip";
-    sha256 = "10nn04hfky4x75nss33vvslw958pjvhw35lcfb3lxvaifqg23cpl";
+    sha256 = "1ddw3fqrmwh4w6z6xgck4jhmq33rwgbmpjw07g12ri1vgw4xks9w";
   };
 
   buildInputs = [ unzip makeWrapper ];
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An agile dynamic language for the Java Platform";
-    homepage = http://groovy-lang.org/;
+    homepage = "http://groovy-lang.org/";
     license = licenses.asl20;
     maintainers = with maintainers; [ pSub ];
     platforms = with platforms; unix;
diff --git a/pkgs/development/interpreters/janet/default.nix b/pkgs/development/interpreters/janet/default.nix
index 0fc6928c1ab..828cf3a7244 100644
--- a/pkgs/development/interpreters/janet/default.nix
+++ b/pkgs/development/interpreters/janet/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "janet";
-  version = "1.7.0";
+  version = "1.8.1";
 
   src = fetchFromGitHub {
     owner = "janet-lang";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1z7r4ddgwxgxy1pp36p2wchcmzjqfyki3a4kicnr23ldflqv9ycc";
+    sha256 = "1v2kgbx6w1ii83a1c9ridm1i52rmcjb0g1d23fhqn7hya5bwrhr6";
   };
 
   nativeBuildInputs = [ meson ninja ];
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Janet programming language";
-    homepage = https://janet-lang.org/;
+    homepage = "https://janet-lang.org/";
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = with maintainers; [ andrewchambers ];
diff --git a/pkgs/development/interpreters/joker/default.nix b/pkgs/development/interpreters/joker/default.nix
index 1db2dd60197..b176c55cbfd 100644
--- a/pkgs/development/interpreters/joker/default.nix
+++ b/pkgs/development/interpreters/joker/default.nix
@@ -1,19 +1,17 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "joker";
-  version = "0.14.2";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "candid82";
     repo = "joker";
-    sha256 = "1wi80sr8h9fwh4xipff0y6qdzrliwyk2w1bmi33ncykxd9r2g7nk";
+    sha256 = "03lbvxmkn0rr7yv7kj6c4dh4zayiwbhrkqbz2m22dw568rjbp8az";
   };
 
-  modSha256 = "0i16vf7n1xfz5kp9w3fvyc9y9wgz4h396glgpdaznpxjr12rb43j";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "1mylgim9nm0v5wybgzi74nqzmvzwzws0027wzl86dbj5id83ab9v";
 
   preBuild = ''
     go generate ./...
diff --git a/pkgs/development/interpreters/jruby/default.nix b/pkgs/development/interpreters/jruby/default.nix
index 3784b6ab282..79cb1c7154b 100644
--- a/pkgs/development/interpreters/jruby/default.nix
+++ b/pkgs/development/interpreters/jruby/default.nix
@@ -6,11 +6,11 @@ rubyVersion = callPackage ../ruby/ruby-version.nix {} "2" "3" "3" "";
 jruby = stdenv.mkDerivation rec {
   pname = "jruby";
 
-  version = "9.2.11.0";
+  version = "9.2.11.1";
 
   src = fetchurl {
     url = "https://s3.amazonaws.com/jruby.org/downloads/${version}/jruby-bin-${version}.tar.gz";
-    sha256 = "01yzpasnpqqm0vfc0ki8vkxbzijjfws135jw8k0r50b5lahjvs4a";
+    sha256 = "1p4ml5rqidqllc7z85zn2q4pyyih71j0gb71wl43j4v74p44j17i";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/development/interpreters/php/default.nix b/pkgs/development/interpreters/php/default.nix
index 497a1d87f55..1d6576b383c 100644
--- a/pkgs/development/interpreters/php/default.nix
+++ b/pkgs/development/interpreters/php/default.nix
@@ -1,13 +1,9 @@
-# pcre functionality is tested in nixos/tests/php-pcre.nix
-{ config, lib, stdenv, fetchurl
-, autoconf, automake, bison, file, flex, libtool, pkgconfig, re2c
-, libxml2, readline, zlib, curl, postgresql, gettext
-, openssl, pcre, pcre2, sqlite
-, libxslt, bzip2, icu, openldap, cyrus_sasl, unixODBC
-, uwimap, pam, gmp, apacheHttpd, libiconv, systemd, libsodium, html-tidy, libargon2
-, gd, freetype, libXpm, libjpeg, libpng, libwebp
-, libzip, valgrind, oniguruma, symlinkJoin, writeText
-, makeWrapper, callPackage
+# We have tests for PCRE and PHP-FPM in nixos/tests/php/ or
+# both in the same attribute named nixosTests.php
+
+{ callPackage, config, fetchurl, lib, makeWrapper, stdenv, symlinkJoin
+, writeText , autoconf, automake, bison, flex, libtool, pkgconfig, re2c
+, apacheHttpd, libargon2, libxml2, pcre, pcre2 , systemd, valgrind
 }:
 
 let
@@ -15,182 +11,83 @@ let
   { version
   , sha256
   , extraPatches ? []
-  , withSystemd ? config.php.systemd or stdenv.isLinux
-  , imapSupport ? config.php.imap or (!stdenv.isDarwin)
-  , ldapSupport ? config.php.ldap or true
-  , mysqlndSupport ? config.php.mysqlnd or true
-  , mysqliSupport ? (config.php.mysqli or true) && (mysqlndSupport)
-  , pdo_mysqlSupport ? (config.php.pdo_mysql or true) && (mysqlndSupport)
-  , libxml2Support ? config.php.libxml2 or true
-  , apxs2Support ? config.php.apxs2 or (!stdenv.isDarwin)
-  , embedSupport ? config.php.embed or false
-  , bcmathSupport ? config.php.bcmath or true
-  , socketsSupport ? config.php.sockets or true
-  , curlSupport ? config.php.curl or true
-  , gettextSupport ? config.php.gettext or true
-  , pcntlSupport ? config.php.pcntl or true
-  , pdo_odbcSupport ? config.php.pdo_odbc or true
-  , postgresqlSupport ? config.php.postgresql or true
-  , pdo_pgsqlSupport ? config.php.pdo_pgsql or true
-  , readlineSupport ? config.php.readline or true
-  , sqliteSupport ? config.php.sqlite or true
-  , soapSupport ? (config.php.soap or true) && (libxml2Support)
-  , zlibSupport ? config.php.zlib or true
-  , opensslSupport ? config.php.openssl or true
-  , mbstringSupport ? config.php.mbstring or true
-  , gdSupport ? config.php.gd or true
-  , intlSupport ? config.php.intl or true
-  , exifSupport ? config.php.exif or true
-  , xslSupport ? config.php.xsl or false
-  , bz2Support ? config.php.bz2 or false
-  , zipSupport ? config.php.zip or true
-  , ftpSupport ? config.php.ftp or true
-  , fpmSupport ? config.php.fpm or true
-  , gmpSupport ? config.php.gmp or true
-  , ztsSupport ? (config.php.zts or false) || (apxs2Support)
-  , calendarSupport ? config.php.calendar or true
-  , sodiumSupport ? (config.php.sodium or true) && (lib.versionAtLeast version "7.2")
-  , tidySupport ? (config.php.tidy or false)
-  , argon2Support ? (config.php.argon2 or true) && (lib.versionAtLeast version "7.2")
-  , libzipSupport ? (config.php.libzip or true) && (lib.versionAtLeast version "7.2")
-  , phpdbgSupport ? config.php.phpdbg or true
+
+  # Sapi flags
   , cgiSupport ? config.php.cgi or true
   , cliSupport ? config.php.cli or true
+  , fpmSupport ? config.php.fpm or true
+  , pearSupport ? config.php.pear or true
   , pharSupport ? config.php.phar or true
-  , xmlrpcSupport ? (config.php.xmlrpc or false) && (libxml2Support)
+  , phpdbgSupport ? config.php.phpdbg or true
+
+
+  # Misc flags
+  , apxs2Support ? config.php.apxs2 or (!stdenv.isDarwin)
+  , argon2Support ? config.php.argon2 or true
   , cgotoSupport ? config.php.cgoto or false
-  , valgrindSupport ? (config.php.valgrind or true) && (lib.versionAtLeast version "7.2")
+  , embedSupport ? config.php.embed or false
   , ipv6Support ? config.php.ipv6 or true
-  , pearSupport ? (config.php.pear or true) && (libxml2Support)
-  }: stdenv.mkDerivation {
+  , systemdSupport ? config.php.systemd or stdenv.isLinux
+  , valgrindSupport ? config.php.valgrind or true
+  , ztsSupport ? (config.php.zts or false) || (apxs2Support)
+  }: let
+    pcre' = if (lib.versionAtLeast version "7.3") then pcre2 else pcre;
+  in stdenv.mkDerivation {
     pname = "php";
 
     inherit version;
 
     enableParallelBuilding = true;
 
-    nativeBuildInputs = [ autoconf automake bison file flex libtool pkgconfig re2c ];
-
-    buildInputs = [ ]
-      ++ lib.optional (lib.versionOlder version "7.3") pcre
-      ++ lib.optional (lib.versionAtLeast version "7.3") pcre2
-      ++ lib.optional (lib.versionAtLeast version "7.4") oniguruma
-      ++ lib.optional withSystemd systemd
-      ++ lib.optionals imapSupport [ uwimap openssl pam ]
-      ++ lib.optionals curlSupport [ curl openssl ]
-      ++ lib.optionals ldapSupport [ openldap openssl ]
-      ++ lib.optionals gdSupport [ gd freetype libXpm libjpeg libpng libwebp ]
-      ++ lib.optionals opensslSupport [ openssl openssl.dev ]
+    nativeBuildInputs = [ autoconf automake bison flex libtool pkgconfig re2c ];
+
+    buildInputs =
+      # PCRE extension
+      [ pcre' ]
+
+      # Enable sapis
+      ++ lib.optional pearSupport [ libxml2.dev ]
+
+      # Misc deps
       ++ lib.optional apxs2Support apacheHttpd
-      ++ lib.optional (ldapSupport && stdenv.isLinux) cyrus_sasl
-      ++ lib.optional zlibSupport zlib
-      ++ lib.optional libxml2Support libxml2
-      ++ lib.optional readlineSupport readline
-      ++ lib.optional sqliteSupport sqlite
-      ++ lib.optional postgresqlSupport postgresql
-      ++ lib.optional pdo_odbcSupport unixODBC
-      ++ lib.optional pdo_pgsqlSupport postgresql
-      ++ lib.optional gmpSupport gmp
-      ++ lib.optional gettextSupport gettext
-      ++ lib.optional intlSupport icu
-      ++ lib.optional xslSupport libxslt
-      ++ lib.optional bz2Support bzip2
-      ++ lib.optional sodiumSupport libsodium
-      ++ lib.optional tidySupport html-tidy
       ++ lib.optional argon2Support libargon2
-      ++ lib.optional libzipSupport libzip
-      ++ lib.optional valgrindSupport valgrind;
+      ++ lib.optional systemdSupport systemd
+      ++ lib.optional valgrindSupport valgrind
+    ;
 
     CXXFLAGS = lib.optionalString stdenv.cc.isClang "-std=c++11";
 
-    configureFlags = [ "--with-config-file-scan-dir=/etc/php.d" ]
-      ++ lib.optionals (lib.versionOlder version "7.3") [ "--with-pcre-regex=${pcre.dev}" "PCRE_LIBDIR=${pcre}" ]
-      ++ lib.optionals (lib.versions.majorMinor version == "7.3") [ "--with-pcre-regex=${pcre2.dev}" "PCRE_LIBDIR=${pcre2}" ]
-      ++ lib.optionals (lib.versionAtLeast version "7.4") [ "--with-external-pcre=${pcre2.dev}" "PCRE_LIBDIR=${pcre2}" ]
-      ++ lib.optional stdenv.isDarwin "--with-iconv=${libiconv}"
-      ++ lib.optional withSystemd "--with-fpm-systemd"
-      ++ lib.optionals imapSupport [
-        "--with-imap=${uwimap}"
-        "--with-imap-ssl"
-      ]
-      ++ lib.optionals ldapSupport [
-        "--with-ldap=/invalid/path"
-        "LDAP_DIR=${openldap.dev}"
-        "LDAP_INCDIR=${openldap.dev}/include"
-        "LDAP_LIBDIR=${openldap.out}/lib"
-      ]
-      ++ lib.optional (ldapSupport && stdenv.isLinux) "--with-ldap-sasl=${cyrus_sasl.dev}"
-      ++ lib.optional apxs2Support "--with-apxs2=${apacheHttpd.dev}/bin/apxs"
-      ++ lib.optional embedSupport "--enable-embed"
-      ++ lib.optional curlSupport "--with-curl=${curl.dev}"
-      ++ lib.optional zlibSupport "--with-zlib=${zlib.dev}"
-      ++ lib.optional (libxml2Support && (lib.versionOlder version "7.4")) "--with-libxml-dir=${libxml2.dev}"
-      ++ lib.optional (!libxml2Support) [
-        "--disable-dom"
-        (if (lib.versionOlder version "7.4") then "--disable-libxml" else "--without-libxml")
-        "--disable-simplexml"
-        "--disable-xml"
-        "--disable-xmlreader"
-        "--disable-xmlwriter"
-        "--without-pear"
-      ]
-      ++ lib.optional pcntlSupport "--enable-pcntl"
-      ++ lib.optional readlineSupport "--with-readline=${readline.dev}"
-      ++ lib.optional sqliteSupport "--with-pdo-sqlite=${sqlite.dev}"
-      ++ lib.optional postgresqlSupport "--with-pgsql=${postgresql}"
-      ++ lib.optional pdo_odbcSupport "--with-pdo-odbc=unixODBC,${unixODBC}"
-      ++ lib.optional pdo_pgsqlSupport "--with-pdo-pgsql=${postgresql}"
-      ++ lib.optional (pdo_mysqlSupport && mysqlndSupport) "--with-pdo-mysql=mysqlnd"
-      ++ lib.optional (mysqliSupport && mysqlndSupport) "--with-mysqli=mysqlnd"
-      ++ lib.optional (pdo_mysqlSupport || mysqliSupport) "--with-mysql-sock=/run/mysqld/mysqld.sock"
-      ++ lib.optional bcmathSupport "--enable-bcmath"
-      ++ lib.optionals (gdSupport && lib.versionAtLeast version "7.4") [
-        "--enable-gd"
-        "--with-external-gd=${gd.dev}"
-        "--with-webp=${libwebp}"
-        "--with-jpeg=${libjpeg.dev}"
-        "--with-xpm=${libXpm.dev}"
-        "--with-freetype=${freetype.dev}"
-        "--enable-gd-jis-conv"
-      ] ++ lib.optionals (gdSupport && lib.versionOlder version "7.4") [
-        "--with-gd=${gd.dev}"
-        "--with-webp-dir=${libwebp}"
-        "--with-jpeg-dir=${libjpeg.dev}"
-        "--with-png-dir=${libpng.dev}"
-        "--with-freetype-dir=${freetype.dev}"
-        "--with-xpm-dir=${libXpm.dev}"
-        "--enable-gd-jis-conv"
-      ]
-      ++ lib.optional gmpSupport "--with-gmp=${gmp.dev}"
-      ++ lib.optional soapSupport "--enable-soap"
-      ++ lib.optional socketsSupport "--enable-sockets"
-      ++ lib.optional opensslSupport "--with-openssl"
-      ++ lib.optional mbstringSupport "--enable-mbstring"
-      ++ lib.optional gettextSupport "--with-gettext=${gettext}"
-      ++ lib.optional intlSupport "--enable-intl"
-      ++ lib.optional exifSupport "--enable-exif"
-      ++ lib.optional xslSupport "--with-xsl=${libxslt.dev}"
-      ++ lib.optional bz2Support "--with-bz2=${bzip2.dev}"
-      ++ lib.optional (zipSupport && (lib.versionOlder version "7.4")) "--enable-zip"
-      ++ lib.optional (zipSupport && (lib.versionAtLeast version "7.4")) "--with-zip"
-      ++ lib.optional ftpSupport "--enable-ftp"
-      ++ lib.optional fpmSupport "--enable-fpm"
-      ++ lib.optional ztsSupport "--enable-maintainer-zts"
-      ++ lib.optional calendarSupport "--enable-calendar"
-      ++ lib.optional sodiumSupport "--with-sodium=${libsodium.dev}"
-      ++ lib.optional tidySupport "--with-tidy=${html-tidy}"
-      ++ lib.optional argon2Support "--with-password-argon2=${libargon2}"
-      ++ lib.optional (libzipSupport && (lib.versionOlder version "7.4")) "--with-libzip=${libzip.dev}"
-      ++ lib.optional phpdbgSupport "--enable-phpdbg"
-      ++ lib.optional (!phpdbgSupport) "--disable-phpdbg"
+    configureFlags =
+      # Disable all extensions
+      [ "--disable-all" ]
+
+      # PCRE
+      ++ lib.optionals (lib.versionAtLeast version "7.4") [ "--with-external-pcre=${pcre'.dev}" ]
+      ++ lib.optionals (lib.versions.majorMinor version == "7.3") [ "--with-pcre-regex=${pcre'.dev}" ]
+      ++ lib.optionals (lib.versionOlder version "7.3") [ "--with-pcre-regex=${pcre'.dev}" ]
+      ++ [ "PCRE_LIBDIR=${pcre'}" ]
+
+
+      # Enable sapis
       ++ lib.optional (!cgiSupport) "--disable-cgi"
       ++ lib.optional (!cliSupport) "--disable-cli"
-      ++ lib.optional (!pharSupport) "--disable-phar"
-      ++ lib.optional xmlrpcSupport "--with-xmlrpc"
+      ++ lib.optional fpmSupport    "--enable-fpm"
+      ++ lib.optional pearSupport [ "--with-pear=$(out)/lib/php/pear" "--enable-xml" "--with-libxml" ]
+      ++ lib.optional (pearSupport && (lib.versionOlder version "7.4")) "--enable-libxml"
+      ++ lib.optional pharSupport   "--enable-phar"
+      ++ lib.optional phpdbgSupport "--enable-phpdbg"
+
+
+      # Misc flags
+      ++ lib.optional apxs2Support "--with-apxs2=${apacheHttpd.dev}/bin/apxs"
+      ++ lib.optional argon2Support "--with-password-argon2=${libargon2}"
       ++ lib.optional cgotoSupport "--enable-re2c-cgoto"
-      ++ lib.optional valgrindSupport "--with-valgrind=${valgrind.dev}"
+      ++ lib.optional embedSupport "--enable-embed"
       ++ lib.optional (!ipv6Support) "--disable-ipv6"
-      ++ lib.optional (pearSupport && libxml2Support) "--with-pear=$(out)/lib/php/pear";
+      ++ lib.optional systemdSupport "--with-fpm-systemd"
+      ++ lib.optional valgrindSupport "--with-valgrind=${valgrind.dev}"
+      ++ lib.optional ztsSupport "--enable-maintainer-zts"
+    ;
 
     hardeningDisable = [ "bindnow" ];
 
@@ -204,8 +101,6 @@ let
           --replace '@PHP_LDFLAGS@' ""
       done
 
-      substituteInPlace ./build/libtool.m4 --replace /usr/bin/file ${file}/bin/file
-
       export EXTENSION_DIR=$out/lib/php/extensions
 
       ./buildconf --copy --force
@@ -235,6 +130,12 @@ let
       inherit sha256;
     };
 
+    patches = [ ./fix-paths-php7.patch ] ++ extraPatches;
+
+    separateDebugInfo = true;
+
+    outputs = [ "out" "dev" ];
+
     meta = with stdenv.lib; {
       description = "An HTML-embedded scripting language";
       homepage = "https://www.php.net/";
@@ -243,57 +144,121 @@ let
       platforms = platforms.all;
       outputsToInstall = [ "out" "dev" ];
     };
+  };
 
-    patches = [ ./fix-paths-php7.patch ] ++ extraPatches;
+  generic' = { version, sha256, self, selfWithExtensions, ... }@args:
+    let
+      php = generic (builtins.removeAttrs args [ "self" "selfWithExtensions" ]);
 
-    stripDebugList = "bin sbin lib modules";
+      php-packages = (callPackage ../../../top-level/php-packages.nix {
+        php = self;
+        phpWithExtensions = selfWithExtensions;
+      });
 
-    outputs = [ "out" "dev" ];
-  };
+      buildEnv = { extensions ? (_: []), extraConfig ? "" }:
+        let
+          getExtName = ext: lib.removePrefix "php-" (builtins.parseDrvName ext.name).name;
+          enabledExtensions = extensions php-packages.extensions;
 
-  generic' = { version, sha256, ... }@args: let php = generic args; in php.overrideAttrs (_: {
-    passthru.buildEnv = { exts ? (_: []), extraConfig ? "" }: let
-      extraInit = writeText "custom-php.ini" ''
-        ${extraConfig}
-        ${lib.concatMapStringsSep "\n" (ext: let
-          extName = lib.removePrefix "php-" (builtins.parseDrvName ext.name).name;
-          type = "${lib.optionalString (ext.zendExtension or false) "zend_"}extension";
-        in ''
-          ${type}=${ext}/lib/php/extensions/${extName}.so
-        '') (exts (callPackage ../../../top-level/php-packages.nix { inherit php; }))}
-      '';
-    in symlinkJoin {
-      name = "php-custom-${version}";
-      nativeBuildInputs = [ makeWrapper ];
-      paths = [ php ];
-      postBuild = ''
-        wrapProgram $out/bin/php \
-          --add-flags "-c ${extraInit}"
-        wrapProgram $out/bin/php-fpm \
-          --add-flags "-c ${extraInit}"
-      '';
-    };
-  });
+          # Generate extension load configuration snippets from the
+          # extension parameter. This is an attrset suitable for use
+          # with textClosureList, which is used to put the strings in
+          # the right order - if a plugin which is dependent on
+          # another plugin is placed before its dependency, it will
+          # fail to load.
+          extensionTexts =
+            lib.listToAttrs
+              (map (ext:
+                let
+                  extName = getExtName ext;
+                  type = "${lib.optionalString (ext.zendExtension or false) "zend_"}extension";
+                in
+                  lib.nameValuePair extName {
+                    text = "${type}=${ext}/lib/php/extensions/${extName}.so";
+                    deps = lib.optionals (ext ? internalDeps)
+                      (map getExtName ext.internalDeps);
+                  })
+                enabledExtensions);
 
-in {
-  php72 = generic' {
-    version = "7.2.28";
-    sha256 = "18sjvl67z5a2x5s2a36g6ls1r3m4hbrsw52hqr2qsgfvg5dkm5bw";
+          extNames = map getExtName enabledExtensions;
+          extraInit = writeText "custom-php.ini" ''
+            ${lib.concatStringsSep "\n"
+              (lib.textClosureList extensionTexts extNames)}
+            ${extraConfig}
+          '';
+        in
+          symlinkJoin {
+            name = "php-with-extensions-${version}";
+            inherit (php) version;
+            nativeBuildInputs = [ makeWrapper ];
+            passthru = {
+              inherit buildEnv withExtensions enabledExtensions;
+              inherit (php-packages) packages extensions;
+            };
+            paths = [ php ];
+            postBuild = ''
+              cp ${extraInit} $out/lib/custom-php.ini
+
+              wrapProgram $out/bin/php --set PHP_INI_SCAN_DIR $out/lib
+
+              if test -e $out/bin/php-fpm; then
+                 wrapProgram $out/bin/php-fpm --set PHP_INI_SCAN_DIR $out/lib
+              fi
+            '';
+          };
+
+      withExtensions = extensions: buildEnv { inherit extensions; };
+    in
+      php.overrideAttrs (_: {
+        passthru = {
+          enabledExtensions = [];
+          inherit buildEnv withExtensions;
+          inherit (php-packages) packages extensions;
+        };
+      });
+
+  php72base = generic' {
+    version = "7.2.29";
+    sha256 = "08xry2fgqgg8s0ym1hh11wkbr36av3zq1bn4krbciw1b7x8gb8ga";
+    self = php72base;
+    selfWithExtensions = php72;
 
     # https://bugs.php.net/bug.php?id=76826
     extraPatches = lib.optional stdenv.isDarwin ./php72-darwin-isfinite.patch;
   };
 
-  php73 = generic' {
-    version = "7.3.15";
-    sha256 = "0g84hws15s8gh8iq4h6q747dyfazx47vh3da3whz8d80x83ibgld";
+  php73base = generic' {
+    version = "7.3.16";
+    sha256 = "0bh499v9dfgh9k51w4rird1slb9rh9whp5h37fb84c98d992s1xq";
+    self = php73base;
+    selfWithExtensions = php73;
 
     # https://bugs.php.net/bug.php?id=76826
     extraPatches = lib.optional stdenv.isDarwin ./php73-darwin-isfinite.patch;
   };
 
-  php74 = generic' {
-    version = "7.4.3";
-    sha256 = "wVF7pJV4+y3MZMc6Ptx21PxQfEp6xjmYFYTMfTtMbRQ=";
+  php74base = generic' {
+    version = "7.4.4";
+    sha256 = "17w2m4phhpj76x5fx67vgjrlkcczqvky3f5in1kjg2pch90qz3ih";
+    self = php74base;
+    selfWithExtensions = php74;
   };
+
+  defaultPhpExtensions = extensions: with extensions; ([
+    bcmath calendar curl ctype dom exif fileinfo filter ftp gd
+    gettext gmp iconv intl json ldap mbstring mysqli mysqlnd opcache
+    openssl pcntl pdo pdo_mysql pdo_odbc pdo_pgsql pdo_sqlite pgsql
+    posix readline session simplexml sockets soap sodium sqlite3
+    tokenizer xmlreader xmlwriter zip zlib
+  ] ++ lib.optionals (!stdenv.isDarwin) [ imap ]);
+
+  defaultPhpExtensionsWithHash = extensions:
+    (defaultPhpExtensions extensions) ++ [ extensions.hash ];
+
+  php74 = php74base.withExtensions defaultPhpExtensions;
+  php73 = php73base.withExtensions defaultPhpExtensionsWithHash;
+  php72 = php72base.withExtensions defaultPhpExtensionsWithHash;
+
+in {
+  inherit php72base php73base php74base php72 php73 php74;
 }
diff --git a/pkgs/development/interpreters/python/cpython/default.nix b/pkgs/development/interpreters/python/cpython/default.nix
index b778b62f908..abf2e223a4d 100644
--- a/pkgs/development/interpreters/python/cpython/default.nix
+++ b/pkgs/development/interpreters/python/cpython/default.nix
@@ -28,6 +28,8 @@
 , stripTkinter ? false
 , rebuildBytecode ? true
 , stripBytecode ? false
+, includeSiteCustomize ? true
+, static ? false
 }:
 
 assert x11Support -> tcl != null
@@ -130,7 +132,7 @@ in with passthru; stdenv.mkDerivation {
   CPPFLAGS = concatStringsSep " " (map (p: "-I${getDev p}/include") buildInputs);
   LDFLAGS = concatStringsSep " " (map (p: "-L${getLib p}/lib") buildInputs);
   LIBS = "${optionalString (!stdenv.isDarwin) "-lcrypt"} ${optionalString (ncurses != null) "-lncurses"}";
-  NIX_LDFLAGS = optionalString stdenv.isLinux "-lgcc_s";
+  NIX_LDFLAGS = optionalString (stdenv.isLinux && !stdenv.hostPlatform.isMusl) "-lgcc_s" + optionalString stdenv.hostPlatform.isMusl "-lgcc_eh";
   # Determinism: We fix the hashes of str, bytes and datetime objects.
   PYTHONHASHSEED=0;
 
@@ -169,7 +171,7 @@ in with passthru; stdenv.mkDerivation {
     # Never even try to use lchmod on linux,
     # don't rely on detecting glibc-isms.
     "ac_cv_func_lchmod=no"
-  ];
+  ] ++ optional static "LDFLAGS=-static";
 
   preConfigure = ''
     for i in /usr /sw /opt /pkg; do	# improve purity
@@ -237,7 +239,7 @@ in with passthru; stdenv.mkDerivation {
     '' + optionalString stripTests ''
     # Strip tests
     rm -R $out/lib/python*/test $out/lib/python*/**/test{,s}
-    '' + ''
+    '' + optionalString includeSiteCustomize ''
     # Include a sitecustomize.py file
     cp ${../sitecustomize.py} $out/${sitePackages}/sitecustomize.py
     '' + optionalString rebuildBytecode ''
@@ -262,7 +264,7 @@ in with passthru; stdenv.mkDerivation {
   # Enforce that we don't have references to the OpenSSL -dev package, which we
   # explicitly specify in our configure flags above.
   disallowedReferences =
-    stdenv.lib.optionals (openssl != null) [ openssl.dev ]
+    stdenv.lib.optionals (openssl != null && !static) [ openssl.dev ]
     ++ stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
     # Ensure we don't have references to build-time packages.
     # These typically end up in shebangs.
diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix
index 94f04b73f49..099632b1e85 100644
--- a/pkgs/development/interpreters/python/default.nix
+++ b/pkgs/development/interpreters/python/default.nix
@@ -96,10 +96,10 @@ in {
     sourceVersion = {
       major = "3";
       minor = "7";
-      patch = "6";
+      patch = "7";
       suffix = "";
     };
-    sha256 = "0gskry19ylw91p38pdq36qcgk6h3x5i4ia0ik977kw2943kwr8jm";
+    sha256 = "0di1y2cna823qgk6sd2lvpjdm3g2qikdd50i2bjd330dpzqsk806";
     inherit (darwin) configd;
     inherit passthruFun;
   };
@@ -147,6 +147,7 @@ in {
     stripTkinter = true;
     rebuildBytecode = false;
     stripBytecode = true;
+    includeSiteCustomize = false;
   }).overrideAttrs(old: {
     pname = "python3-minimal";
     meta = old.meta // {
diff --git a/pkgs/development/interpreters/python/hooks/default.nix b/pkgs/development/interpreters/python/hooks/default.nix
index 47690320e81..4d736426f3b 100644
--- a/pkgs/development/interpreters/python/hooks/default.nix
+++ b/pkgs/development/interpreters/python/hooks/default.nix
@@ -89,6 +89,14 @@ in rec {
       };
     } ./python-imports-check-hook.sh) {};
 
+  pythonNamespacesHook = callPackage ({}:
+    makeSetupHook {
+      name = "python-namespaces-hook.sh";
+      substitutions = {
+        inherit pythonSitePackages;
+      };
+    } ./python-namespaces-hook.sh) {};
+
   pythonRemoveBinBytecodeHook = callPackage ({ }:
     makeSetupHook {
       name = "python-remove-bin-bytecode-hook";
diff --git a/pkgs/development/interpreters/python/hooks/python-namespaces-hook.sh b/pkgs/development/interpreters/python/hooks/python-namespaces-hook.sh
new file mode 100644
index 00000000000..50f21819d17
--- /dev/null
+++ b/pkgs/development/interpreters/python/hooks/python-namespaces-hook.sh
@@ -0,0 +1,40 @@
+# Clean up __init__.py's found in namespace directories
+echo "Sourcing python-namespaces-hook"
+
+pythonNamespacesHook() {
+    echo "Executing pythonNamespacesHook"
+
+    for namespace in ${pythonNamespaces[@]}; do
+        echo "Enforcing PEP420 namespace: ${namespace}"
+
+        # split namespace into segments. "azure.mgmt" -> "azure mgmt"
+        IFS='.' read -ra pathSegments <<< $namespace
+        constructedPath=$out/@pythonSitePackages@
+
+        # Need to remove the __init__.py at each namespace level
+        # E.g `azure/__init__.py` and `azure/mgmt/__init__.py`
+        # The __pycache__ entry also needs to be removed
+        for pathSegment in ${pathSegments[@]}; do
+            constructedPath=${constructedPath}/${pathSegment}
+            pathToRemove=${constructedPath}/__init__.py
+            pycachePath=${constructedPath}/__pycache__/__init__*
+
+            if [ -f "$pathToRemove" ]; then
+                echo "Removing $pathToRemove"
+                rm "$pathToRemove"
+            fi
+
+            if [ -f "$pycachePath" ]; then
+                echo "Removing $pycachePath"
+                rm "$pycachePath"
+            fi
+        done
+    done
+
+    echo "Finished executing pythonNamespacesHook"
+}
+
+if [ -z "${dontUsePythonNamespacesHook-}" -a -n "${pythonNamespaces-}" ]; then
+    postFixupHooks+=(pythonNamespacesHook)
+fi
+
diff --git a/pkgs/development/interpreters/python/mk-python-derivation.nix b/pkgs/development/interpreters/python/mk-python-derivation.nix
index 180bc63857c..22938a45585 100644
--- a/pkgs/development/interpreters/python/mk-python-derivation.nix
+++ b/pkgs/development/interpreters/python/mk-python-derivation.nix
@@ -16,6 +16,7 @@
 , pipInstallHook
 , pythonCatchConflictsHook
 , pythonImportsCheckHook
+, pythonNamespacesHook
 , pythonRemoveBinBytecodeHook
 , pythonRemoveTestsDirHook
 , setuptoolsBuildHook
@@ -131,6 +132,9 @@ let
   ] ++ lib.optionals (stdenv.buildPlatform == stdenv.hostPlatform) [
     # This is a test, however, it should be ran independent of the checkPhase and checkInputs
     pythonImportsCheckHook
+  ] ++ lib.optionals (python.pythonAtLeast "3.3") [
+    # Optionally enforce PEP420 for python3
+    pythonNamespacesHook
   ] ++ nativeBuildInputs;
 
   buildInputs = buildInputs ++ pythonPath;
diff --git a/pkgs/development/interpreters/python/sitecustomize.py b/pkgs/development/interpreters/python/sitecustomize.py
index e03b244dbc0..72ce951328f 100644
--- a/pkgs/development/interpreters/python/sitecustomize.py
+++ b/pkgs/development/interpreters/python/sitecustomize.py
@@ -21,6 +21,19 @@ paths = os.environ.pop('NIX_PYTHONPATH', None)
 if paths:
     functools.reduce(lambda k, p: site.addsitedir(p, k), paths.split(':'), site._init_pathinfo())
 
-executable = os.environ.pop('NIX_PYTHONEXECUTABLE', None)
-if 'PYTHONEXECUTABLE' not in os.environ and executable:
-    sys.executable = executable
+# Check whether we are in a venv. 
+# Note Python 2 does not support base_prefix so we assume we are not in a venv.
+in_venv = sys.version_info.major == 3 and sys.prefix != sys.base_prefix
+
+if not in_venv:
+    executable = os.environ.pop('NIX_PYTHONEXECUTABLE', None)
+    prefix = os.environ.pop('NIX_PYTHONPREFIX', None)
+
+    if 'PYTHONEXECUTABLE' not in os.environ and executable is not None:
+        sys.executable = executable
+    if prefix is not None:
+        # Because we cannot check with Python 2 whether we are in a venv, 
+        # creating a venv from a Nix env won't work as well with Python 2.
+        # Also, note that sysconfig does not like it when sys.prefix is set to None
+        sys.prefix = sys.exec_prefix = prefix
+        site.PREFIXES.insert(0, prefix)
diff --git a/pkgs/development/interpreters/python/tests.nix b/pkgs/development/interpreters/python/tests.nix
index 37fbe670114..55065c45d57 100644
--- a/pkgs/development/interpreters/python/tests.nix
+++ b/pkgs/development/interpreters/python/tests.nix
@@ -2,6 +2,7 @@
 , runCommand
 , substituteAll
 , lib
+, callPackage
 }:
 
 let
@@ -36,6 +37,7 @@ let
       is_venv = "True";
       is_nixenv = "False";
     };
+
     # Venv built using Python Nix environment (python.buildEnv)
     # TODO: Cannot create venv from a  nix env
     # Error: Command '['/nix/store/ddc8nqx73pda86ibvhzdmvdsqmwnbjf7-python3-3.7.6-venv/bin/python3.7', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.
@@ -49,6 +51,14 @@ let
     # };
   };
 
+  # All PyPy package builds are broken at the moment
+  integrationTests = lib.optionalAttrs (python.isPy3k  && (!python.isPyPy)) rec {
+    # Before the addition of NIX_PYTHONPREFIX mypy was broken with typed packages
+    nix-pythonprefix-mypy = callPackage ./tests/test_nix_pythonprefix {
+      interpreter = python;
+    };
+  };
+
   testfun = name: attrs: runCommand "${python.name}-tests-${name}" ({
     inherit (python) pythonVersion;
   } // attrs) ''
@@ -60,4 +70,4 @@ let
     touch $out/success
   '';
 
-in lib.mapAttrs testfun envs 
\ No newline at end of file
+in lib.mapAttrs testfun envs // integrationTests
diff --git a/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/default.nix b/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/default.nix
new file mode 100644
index 00000000000..05798cbaf1b
--- /dev/null
+++ b/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/default.nix
@@ -0,0 +1,25 @@
+{ interpreter, writeText, runCommandNoCC }:
+
+let
+
+  python = let
+    packageOverrides = self: super: {
+      typeddep = super.callPackage ./typeddep {};
+    };
+  in interpreter.override {inherit packageOverrides; self = python;};
+
+  pythonEnv = python.withPackages(ps: [
+    ps.typeddep
+    ps.mypy
+  ]);
+
+  pythonScript = writeText "myscript.py" ''
+    from typeddep import util
+    s: str = util.echo("hello")
+    print(s)
+  '';
+
+in runCommandNoCC "${interpreter.name}-site-prefix-mypy-test" {} ''
+  ${pythonEnv}/bin/mypy ${pythonScript}
+  touch $out
+''
diff --git a/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/default.nix b/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/default.nix
new file mode 100644
index 00000000000..06219a69fca
--- /dev/null
+++ b/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/default.nix
@@ -0,0 +1,11 @@
+{ buildPythonPackage }:
+
+
+buildPythonPackage {
+
+  pname = "typeddep";
+  version = "1.3.3.7";
+
+  src = ./.;
+
+}
diff --git a/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/setup.py b/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/setup.py
new file mode 100644
index 00000000000..25bac69ea09
--- /dev/null
+++ b/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/setup.py
@@ -0,0 +1,18 @@
+from setuptools import setup
+
+setup(**{
+    'name': 'typeddep',
+    'version': '1.3.3.7',
+    'description': 'Minimal repro to test mypy and site prefixes with Nix',
+    'long_description': None,
+    'author': 'adisbladis',
+    'author_email': 'adisbladis@gmail.com',
+    'maintainer': None,
+    'maintainer_email': None,
+    'url': None,
+    'packages': ['typeddep'],
+    'package_data': {'': ['*']},
+    'install_requires': [],
+    'entry_points': {},
+    'python_requires': '>=3.7,<4.0',
+})
diff --git a/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/typeddep/__init__.py b/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/typeddep/__init__.py
new file mode 100644
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/typeddep/__init__.py
diff --git a/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/typeddep/py.typed b/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/typeddep/py.typed
new file mode 100644
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/typeddep/py.typed
diff --git a/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/typeddep/util.py b/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/typeddep/util.py
new file mode 100644
index 00000000000..c1c3ffe7477
--- /dev/null
+++ b/pkgs/development/interpreters/python/tests/test_nix_pythonprefix/typeddep/typeddep/util.py
@@ -0,0 +1,2 @@
+def echo(s: str) -> str:
+    return s
diff --git a/pkgs/development/interpreters/python/tests/test_python.py b/pkgs/development/interpreters/python/tests/test_python.py
index f631a172ccc..011978c6254 100644
--- a/pkgs/development/interpreters/python/tests/test_python.py
+++ b/pkgs/development/interpreters/python/tests/test_python.py
@@ -27,7 +27,7 @@ class TestCasePython(unittest.TestCase):
     def test_interpreter(self):
         self.assertEqual(sys.executable, INTERPRETER)
 
-    @unittest.skipIf(IS_NIXENV or IS_PYPY, "Prefix is incorrect and needs to be fixed.")
+    @unittest.skipIf(IS_PYPY, "Prefix is incorrect and needs to be fixed.")
     def test_prefix(self):
         self.assertEqual(sys.prefix, ENV)
         self.assertEqual(sys.prefix, sys.exec_prefix)
@@ -35,9 +35,9 @@ class TestCasePython(unittest.TestCase):
     def test_site_prefix(self):
         self.assertTrue(sys.prefix in site.PREFIXES)
 
-    @unittest.skipIf(sys.version_info.major==2, "Python 2 does not have base_prefix")
+    @unittest.skipIf(IS_PYPY or sys.version_info.major==2, "Python 2 does not have base_prefix")
     def test_base_prefix(self):
-        if IS_VENV:
+        if IS_VENV or IS_NIXENV:
             self.assertNotEqual(sys.prefix, sys.base_prefix)
         else:
             self.assertEqual(sys.prefix, sys.base_prefix)
diff --git a/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py b/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py
index 7e0580ce063..b568ee6751d 100755
--- a/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py
+++ b/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py
@@ -315,11 +315,11 @@ def _update(path, target):
         return False
 
 
-def _commit(path, pname, old_version, new_version, **kwargs):
+def _commit(path, pname, old_version, new_version, pkgs_prefix="python: ", **kwargs):
     """Commit result.
     """
 
-    msg = f'python: {pname}: {old_version} -> {new_version}'
+    msg = f'{pkgs_prefix}{pname}: {old_version} -> {new_version}'
 
     try:
         subprocess.check_call([GIT, 'add', path])
@@ -337,6 +337,7 @@ def main():
     parser.add_argument('package', type=str, nargs='+')
     parser.add_argument('--target', type=str, choices=SEMVER.keys(), default='major')
     parser.add_argument('--commit', action='store_true', help='Create a commit for each package update')
+    parser.add_argument('--use-pkgs-prefix', action='store_true', help='Use python3Packages.${pname}: instead of python: ${pname}: when making commits')
 
     args = parser.parse_args()
     target = args.target
@@ -347,17 +348,23 @@ def main():
 
     # Use threads to update packages concurrently
     with Pool() as p:
-        results = list(p.map(lambda pkg: _update(pkg, target), packages))
+        results = list(filter(bool, p.map(lambda pkg: _update(pkg, target), packages)))
 
     logging.info("Finished updating packages.")
 
+    commit_options = {}
+    if args.use_pkgs_prefix:
+        logging.info("Using python3Packages. prefix for commits")
+        commit_options["pkgs_prefix"] = "python3Packages."
+
     # Commits are created sequentially.
     if args.commit:
         logging.info("Committing updates...")
-        list(map(lambda x: _commit(**x), filter(bool, results)))
+        # list forces evaluation
+        list(map(lambda x: _commit(**x, **commit_options), results))
         logging.info("Finished committing updates")
 
-    count = sum(map(bool, results))
+    count = len(results)
     logging.info("{} package(s) updated".format(count))
 
 
diff --git a/pkgs/development/interpreters/python/wrapper.nix b/pkgs/development/interpreters/python/wrapper.nix
index b437584024f..dffad6b98f5 100644
--- a/pkgs/development/interpreters/python/wrapper.nix
+++ b/pkgs/development/interpreters/python/wrapper.nix
@@ -37,7 +37,7 @@ let
             if [ -f "$prg" ]; then
               rm -f "$out/bin/$prg"
               if [ -x "$prg" ]; then
-                makeWrapper "$path/bin/$prg" "$out/bin/$prg" --set NIX_PYTHONEXECUTABLE ${pythonExecutable} --set NIX_PYTHONPATH ${pythonPath} ${if permitUserSite then "" else ''--set PYTHONNOUSERSITE "true"''} ${stdenv.lib.concatStringsSep " " makeWrapperArgs}
+                makeWrapper "$path/bin/$prg" "$out/bin/$prg" --set NIX_PYTHONPREFIX "$out" --set NIX_PYTHONEXECUTABLE ${pythonExecutable} --set NIX_PYTHONPATH ${pythonPath} ${if permitUserSite then "" else ''--set PYTHONNOUSERSITE "true"''} ${stdenv.lib.concatStringsSep " " makeWrapperArgs}
               fi
             fi
           done
diff --git a/pkgs/development/interpreters/racket/default.nix b/pkgs/development/interpreters/racket/default.nix
index 3e9716af550..8e66bf96e8c 100644
--- a/pkgs/development/interpreters/racket/default.nix
+++ b/pkgs/development/interpreters/racket/default.nix
@@ -105,7 +105,7 @@ stdenv.mkDerivation rec {
     homepage = https://racket-lang.org/;
     license = with licenses; [ asl20 /* or */ mit ];
     maintainers = with maintainers; [ kkallio henrytill vrthra ];
-    platforms = [ "x86_64-darwin" "x86_64-linux" ];
+    platforms = [ "x86_64-darwin" "x86_64-linux" "aarch64-linux" ];
     broken = stdenv.isDarwin; # No support yet for setting FFI lookup path
   };
 }
diff --git a/pkgs/development/interpreters/rakudo/default.nix b/pkgs/development/interpreters/rakudo/default.nix
index ca8d2b2b0da..9d0f47d90d2 100644
--- a/pkgs/development/interpreters/rakudo/default.nix
+++ b/pkgs/development/interpreters/rakudo/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "rakudo";
-  version = "2020.02";
+  version = "2020.02.1";
 
   src = fetchurl {
-    url    = "https://github.com/rakudo/rakudo/releases/download/${version}/rakudo-${version}.tar.gz";
-    sha256 = "0yhld3ij4mfa42chkfph7lzcl5q9b613hdjmw9rv46appmxvvmrs";
+    url    = "https://www.rakudo.org/dl/rakudo/rakudo-${version}.tar.gz";
+    sha256 = "1qfaiqfclqd6zz04xl90yiqkvmm610r905nnbd6gszgyq1k77ckv";
   };
 
   buildInputs = [ icu zlib gmp perl ];
diff --git a/pkgs/development/interpreters/rakudo/moarvm.nix b/pkgs/development/interpreters/rakudo/moarvm.nix
index 3c5c5f2a2f2..ade97b56a64 100644
--- a/pkgs/development/interpreters/rakudo/moarvm.nix
+++ b/pkgs/development/interpreters/rakudo/moarvm.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "moarvm";
-  version = "2020.02";
+  version = "2020.02.1";
 
   src = fetchurl {
     url = "https://www.moarvm.org/releases/MoarVM-${version}.tar.gz";
-    sha256 = "1kz97yy357lax7xdz4mnnwswn7axhp14nq0dw3n6xbcpap6m82aw";
+    sha256 = "0cnnyjyci24pbws2cic80xdr7a5g3qvrsi221c6bpbnpkar81jw2";
    };
 
   buildInputs = [ perl ] ++ stdenv.lib.optionals stdenv.isDarwin [ CoreServices ApplicationServices ];
diff --git a/pkgs/development/interpreters/rakudo/nqp.nix b/pkgs/development/interpreters/rakudo/nqp.nix
index 84a214201a0..f12e60b14f0 100644
--- a/pkgs/development/interpreters/rakudo/nqp.nix
+++ b/pkgs/development/interpreters/rakudo/nqp.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "nqp";
-  version = "2020.02";
+  version = "2020.02.1";
 
   src = fetchurl {
     url    = "https://github.com/perl6/nqp/releases/download/${version}/nqp-${version}.tar.gz";
-    sha256 = "0ik3fscywxjx1qxlbjf68msz83alpckzw3myj9jmkalvy8q5v0nk";
+    sha256 = "0zw3g7viyq4n4qwy0laww2mzz6wrzkfcq4fm82scy1mh65r7bdgj";
   };
 
   buildInputs = [ perl ];
diff --git a/pkgs/development/interpreters/ruby/default.nix b/pkgs/development/interpreters/ruby/default.nix
index 8ddd19bb40c..da8d5ce20f4 100644
--- a/pkgs/development/interpreters/ruby/default.nix
+++ b/pkgs/development/interpreters/ruby/default.nix
@@ -224,26 +224,26 @@ let
 
 in {
   ruby_2_5 = generic {
-    version = rubyVersion "2" "5" "7" "";
+    version = rubyVersion "2" "5" "8" "";
     sha256 = {
-      src = "1m6nmnj9shifp8g3yh7aimac01vl035bzcc19x2spdji6ig0sb8b";
-      git = "0wppf82c9ccdbnvj30mppr5a3mc7sxm05diahjdw7hhk29n43knp";
+      src = "16md4jspjwixjlbhx3pnd5iwpca07p23ghkxkqd82sbchw3xy2vc";
+      git = "19gkk3q9l33cwkfsp5k8f8fipq7gkyqkqirm9farbvy425519rv2";
     };
   };
 
   ruby_2_6 = generic {
-    version = rubyVersion "2" "6" "5" "";
+    version = rubyVersion "2" "6" "6" "";
     sha256 = {
-      src = "0zgdrgylq6avbblf78kpaf0k2xnkpc3jng3wkd7x67ycdrqnp5v6";
-      git = "0pay6ic22ag3bnvxffhgwp7z6clkd0p93944a1l4lvc5hxc8v77j";
+      src = "1492x795qzgp3zhpl580kd1sdp50n5hfsmpbfhdsq2rnxwyi8jrn";
+      git = "1jr9v99a7awssqmw7531afbx4a8i9x5yfqyffha545g7r4s7kj50";
     };
   };
 
   ruby_2_7 = generic {
-    version = rubyVersion "2" "7" "0" "";
+    version = rubyVersion "2" "7" "1" "";
     sha256 = {
-      src = "1glc3zpnih6h8mrgfcak0aa7cgmi4zyvxfyi6y2brwg2nn9sm6cc";
-      git = "11iz64k95czs273mb10195d1j75mmbcgddfdx1vay5876ffw81dq";
+      src = "0674x98f542y02r7n2yv2qhmh97blqhi2mvh2dn5f000vlxlh66l";
+      git = "0qk729kr5wm67xmwpljpdprwhp5wvn5y4ikqy00p1zcgwlwdcs33";
     };
   };
 }
diff --git a/pkgs/development/interpreters/ruby/patchsets.nix b/pkgs/development/interpreters/ruby/patchsets.nix
index 4838a1a09e5..b0c26e19e13 100644
--- a/pkgs/development/interpreters/ruby/patchsets.nix
+++ b/pkgs/development/interpreters/ruby/patchsets.nix
@@ -1,21 +1,19 @@
 { patchSet, useRailsExpress, ops, patchLevel, fetchpatch }:
 
 {
-  "2.4.9" = ops useRailsExpress [
-    "${patchSet}/patches/ruby/2.4/head/railsexpress/01-skip-broken-tests.patch"
-    "${patchSet}/patches/ruby/2.4/head/railsexpress/02-improve-gc-stats.patch"
-    "${patchSet}/patches/ruby/2.4/head/railsexpress/03-display-more-detailed-stack-trace.patch"
-  ];
-  "2.5.7" = ops useRailsExpress [
+  "2.5.8" = ops useRailsExpress [
     "${patchSet}/patches/ruby/2.5/head/railsexpress/01-fix-broken-tests-caused-by-ad.patch"
     "${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.5" = ops useRailsExpress [
+  "2.6.6" = 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.0" = ops useRailsExpress [ # no patches yet (2019-12-25)
+  "2.7.1" = 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"
   ];
 }
diff --git a/pkgs/development/interpreters/ruby/rvm-patchsets.nix b/pkgs/development/interpreters/ruby/rvm-patchsets.nix
index 883987683b0..331dda5d050 100644
--- a/pkgs/development/interpreters/ruby/rvm-patchsets.nix
+++ b/pkgs/development/interpreters/ruby/rvm-patchsets.nix
@@ -3,6 +3,6 @@
 fetchFromGitHub {
   owner  = "skaes";
   repo   = "rvm-patchsets";
-  rev    = "58f72dccc8bb4dc9b1035f6af903d21f2465367a";
-  sha256 = "00gbrhvnf05g6zmfim472ld0l1lp100dy4pi3lixm6ry9iw9m4ag";
+  rev    = "6d8888d34a321198f7fd9253343b78c209efb046";
+  sha256 = "0xczl0nng1649km3bcbjn6zrr591l6m2kkwgnknh1fnwmmrdaya7";
 }
diff --git a/pkgs/development/interpreters/spidermonkey/68.nix b/pkgs/development/interpreters/spidermonkey/68.nix
new file mode 100644
index 00000000000..807a26a7b95
--- /dev/null
+++ b/pkgs/development/interpreters/spidermonkey/68.nix
@@ -0,0 +1,95 @@
+{ stdenv, fetchurl, fetchpatch, autoconf213, pkgconfig, perl, python2, python3, zip, buildPackages
+, which, readline, zlib, icu, cargo, rustc, llvmPackages }:
+
+with stdenv.lib;
+
+let
+  python3Env = buildPackages.python3.withPackages (p: [p.six]);
+in stdenv.mkDerivation rec {
+  pname = "spidermonkey";
+  version = "68.4.2";
+
+  src = fetchurl {
+    url = "mirror://mozilla/firefox/releases/${version}esr/source/firefox-${version}esr.source.tar.xz";
+    sha256 = "1x1fglg1b85hb0srd6k7n5svl0nlgdm4njc8q13s2750v5ck4ljx";
+  };
+
+  outputs = [ "out" "dev" ];
+  setOutputFlags = false; # Configure script only understands --includedir
+
+  nativeBuildInputs = [
+    autoconf213
+    pkgconfig
+    perl
+    which
+    python2
+    zip
+    cargo
+    rustc
+    llvmPackages.llvm
+  ];
+
+  buildInputs = [
+    readline
+    zlib
+    icu
+  ];
+
+  preConfigure = ''
+    export CXXFLAGS="-fpermissive"
+    export LIBXUL_DIST=$out
+    export PYTHON3="${python3Env.interpreter}"
+
+    # We can't build in js/src/, so create a build dir
+    mkdir obj
+    cd obj/
+    configureScript=../js/src/configure
+  '';
+
+  configureFlags = [
+    # Reccommended by gjs upstream
+    "--disable-jemalloc"
+    "--enable-unaligned-private-values"
+    "--with-intl-api"
+    "--enable-posix-nspr-emulation"
+    "--with-system-zlib"
+    "--with-system-icu"
+
+    "--with-libclang-path=${llvmPackages.libclang}/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
+    # It turns on -O3 which some gcc version had a problem with:
+    # https://src.fedoraproject.org/rpms/mozjs38/c/761399aba092bcb1299bb4fccfd60f370ab4216e
+    "--enable-optimize"
+    "--enable-release"
+  ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    # Spidermonkey seems to use different host/build terminology for cross
+    # compilation here.
+    "--host=${stdenv.buildPlatform.config}"
+    "--target=${stdenv.hostPlatform.config}"
+  ];
+
+  configurePlatforms = [];
+
+  depsBuildBuild = [ buildPackages.stdenv.cc ];
+
+  # Remove unnecessary static lib
+  preFixup = ''
+    moveToOutput bin/js60-config "$dev"
+    rm $out/lib/libjs_static.ajs
+    ln -s $out/bin/js60 $out/bin/js
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Mozilla's JavaScript engine written in C/C++";
+    homepage = https://developer.mozilla.org/en/SpiderMonkey;
+    license = licenses.gpl2; # TODO: MPL/GPL/LGPL tri-license.
+    maintainers = [ maintainers.abbradar ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/SDL2/default.nix b/pkgs/development/libraries/SDL2/default.nix
index e02ea05a726..d9ace4deddd 100644
--- a/pkgs/development/libraries/SDL2/default.nix
+++ b/pkgs/development/libraries/SDL2/default.nix
@@ -24,11 +24,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "SDL2";
-  version = "2.0.10";
+  version = "2.0.12";
 
   src = fetchurl {
     url = "https://www.libsdl.org/release/${pname}-${version}.tar.gz";
-    sha256 = "0mqxp6w5jhbq6y1j690g9r3gpzwjxh4czaglw8x05l7hl49nqrdl";
+    sha256 = "0qy8wbqvfkb5ps8kxgaaf2zzpkjqbsw712hlp74znbn0jpv6i4il";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/aqbanking/sources.nix b/pkgs/development/libraries/aqbanking/sources.nix
index b410e64d667..8016053c42d 100644
--- a/pkgs/development/libraries/aqbanking/sources.nix
+++ b/pkgs/development/libraries/aqbanking/sources.nix
@@ -7,5 +7,5 @@
   libchipcard.releaseId = "158";
   aqbanking.version = "6.0.2";
   aqbanking.sha256 = "0n41n3yki1wmax4i9wi485g8zqb43z1adywcixzfq9gbdjhz05hx";
-  aqbanking.releaseId = "243";
+  aqbanking.releaseId = "273";
 }
diff --git a/pkgs/development/libraries/aravis/default.nix b/pkgs/development/libraries/aravis/default.nix
index eaeddbcad36..40a96553fbe 100644
--- a/pkgs/development/libraries/aravis/default.nix
+++ b/pkgs/development/libraries/aravis/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, gtk-doc, intltool
-, audit, glib, libusb, libxml2
+, audit, glib, libusb1, libxml2
 , wrapGAppsHook
 , gstreamer ? null
 , gst-plugins-base ? null
@@ -53,7 +53,7 @@ in
 
     buildInputs =
       [ glib libxml2 ]
-      ++ stdenv.lib.optional enableUsb libusb
+      ++ stdenv.lib.optional enableUsb libusb1
       ++ stdenv.lib.optional enablePacketSocket audit
       ++ stdenv.lib.optionals (enableViewer || enableGstPlugin) [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad ]
       ++ stdenv.lib.optionals (enableViewer) [ libnotify gtk3 gnome3.adwaita-icon-theme ];
diff --git a/pkgs/development/libraries/armadillo/default.nix b/pkgs/development/libraries/armadillo/default.nix
index 6c0b3c867a4..f6710d4fc57 100644
--- a/pkgs/development/libraries/armadillo/default.nix
+++ b/pkgs/development/libraries/armadillo/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "armadillo";
-  version = "9.850.1";
+  version = "9.860.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/arma/armadillo-${version}.tar.xz";
-    sha256 = "07y0s87srj2wxbywmnxam9bif0x625n6b8np19832mvsb6wqkhyl";
+    sha256 = "1ab5y4ll6js2w4p9dabj2dmzzc3f8dja8dqsvy40azrvny58h0qn";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "C++ linear algebra library";
-    homepage = http://arma.sourceforge.net;
+    homepage = "http://arma.sourceforge.net";
     license = licenses.asl20;
     platforms = platforms.unix;
     maintainers = with maintainers; [ juliendehos knedlsepp ];
diff --git a/pkgs/development/libraries/aspell/default.nix b/pkgs/development/libraries/aspell/default.nix
index ad0f910dcbf..2dcf80ec30d 100644
--- a/pkgs/development/libraries/aspell/default.nix
+++ b/pkgs/development/libraries/aspell/default.nix
@@ -28,6 +28,7 @@ stdenv.mkDerivation rec {
     patch interfaces/cc/aspell.h < ${./clang.patch}
   '';
 
+  nativeBuildInputs = [ perl ];
   buildInputs = [ perl ];
 
   doCheck = true;
diff --git a/pkgs/development/libraries/at-spi2-core/default.nix b/pkgs/development/libraries/at-spi2-core/default.nix
index cdb172d0d21..93e06e8be70 100644
--- a/pkgs/development/libraries/at-spi2-core/default.nix
+++ b/pkgs/development/libraries/at-spi2-core/default.nix
@@ -20,11 +20,11 @@
 
 stdenv.mkDerivation rec {
   pname = "at-spi2-core";
-  version = "2.34.0";
+  version = "2.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1ihixwhh3c16q6253qj9gf69741rb2pi51822a4rylsfcyywsafn";
+    sha256 = "0nn0lnf07ayysq8c8irmvc91c2dszn04m5qs6jy60g3y1bg5gnl8";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/atk/default.nix b/pkgs/development/libraries/atk/default.nix
index 9e80d4fc6ca..10009c26d82 100644
--- a/pkgs/development/libraries/atk/default.nix
+++ b/pkgs/development/libraries/atk/default.nix
@@ -4,7 +4,7 @@
 
 let
   pname = "atk";
-  version = "2.34.1";
+  version = "2.35.1";
 in
 
 stdenv.mkDerivation rec {
@@ -12,14 +12,14 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1jwp16r6p5z66k4b2v8zlzhyshhwlmyi27ippkrgqr8jsary7w6l";
+    sha256 = "111qajn7kxwmh40drc8i6jc3hnril2rp63n207q92pl47zx614xy";
   };
 
   outputs = [ "out" "dev" ];
 
   buildInputs = stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
 
-  nativeBuildInputs = [ meson ninja pkgconfig gettext gobject-introspection ];
+  nativeBuildInputs = [ meson ninja pkgconfig gettext gobject-introspection glib ];
 
   propagatedBuildInputs = [
     # Required by atk.pc
diff --git a/pkgs/development/libraries/audio/libbass/default.nix b/pkgs/development/libraries/audio/libbass/default.nix
index 3552e335fed..0165e8ea0d3 100644
--- a/pkgs/development/libraries/audio/libbass/default.nix
+++ b/pkgs/development/libraries/audio/libbass/default.nix
@@ -15,7 +15,7 @@ let
         x86_64-linux = "x64/libbass.so";
       };
       urlpath = "bass24-linux.zip";
-      sha256 = "1nyzs08z0djyvz6jx1y9y99y0ksp4sxz9l2x43k1c9irls24xpfy";
+      sha256 = "1z01im0l2ydi608vc0n0c1cfyp1vrh6681zn2zkhg98vvs20y805";
     };
 
     bass_fx = {
diff --git a/pkgs/development/libraries/audio/libinstpatch/default.nix b/pkgs/development/libraries/audio/libinstpatch/default.nix
index d5c15ad3e38..e5f1080631e 100644
--- a/pkgs/development/libraries/audio/libinstpatch/default.nix
+++ b/pkgs/development/libraries/audio/libinstpatch/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libinstpatch";
-  version = "1.1.3";
+  version = "1.1.4";
 
   src = fetchFromGitHub {
     owner = "swami";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0ksilyszcm7mwb6m8qyrgalvh4h2vkyz7wzj0xczcqkj15bcl4lw";
+    sha256 = "1v7mv43xxwrzi3agrc60agcw46jaidr8ql9kkm1w4jxkf4c6z6dz";
   };
 
   nativeBuildInputs = [ cmake pkg-config ];
@@ -20,10 +20,10 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://www.swamiproject.org/;
+    homepage = "http://www.swamiproject.org/";
     description = "MIDI instrument patch files support library";
     license = licenses.lgpl21;
     maintainers = with maintainers; [ orivej ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/audio/vamp-plugin-sdk/default.nix b/pkgs/development/libraries/audio/vamp-plugin-sdk/default.nix
new file mode 100644
index 00000000000..559642e7485
--- /dev/null
+++ b/pkgs/development/libraries/audio/vamp-plugin-sdk/default.nix
@@ -0,0 +1,29 @@
+# set VAMP_PATH ?
+# plugins availible on sourceforge and http://www.vamp-plugins.org/download.html (various licenses)
+
+{ stdenv, fetchFromGitHub, pkgconfig, libsndfile }:
+
+stdenv.mkDerivation rec {
+  pname = "vamp-plugin-sdk";
+  version = "2.9";
+
+  src = fetchFromGitHub {
+    owner = "c4dm";
+    repo = "vamp-plugin-sdk";
+    rev = "vamp-plugin-sdk-v${version}";
+    sha256 = "1ay12gjqp2wzysg9k2qha3gd8sj5rjlfy4hsl923csi4ssiapsh1";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ libsndfile ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Audio processing plugin system for plugins that extract descriptive information from audio data";
+    homepage = https://vamp-plugins.org/;
+    license = licenses.bsd3;
+    maintainers = [ maintainers.goibhniu maintainers.marcweber ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/audio/vamp/default.nix b/pkgs/development/libraries/audio/vamp/default.nix
deleted file mode 100644
index 2ac3115af2a..00000000000
--- a/pkgs/development/libraries/audio/vamp/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-# set VAMP_PATH ?
-# plugins availible on sourceforge and http://www.vamp-plugins.org/download.html (various licenses)
-
-{ stdenv, fetchFromGitHub, pkgconfig, libsndfile }:
-
-{
-
-  vampSDK = stdenv.mkDerivation {
-    name = "vamp-sdk-2.7.1";
-    # version = "2.7.1";
-
-    src = fetchFromGitHub {
-      owner = "c4dm";
-      repo = "vamp-plugin-sdk";
-      rev = "vamp-plugin-sdk-v2.7.1";
-      sha256 = "1ifd6l6b89pg83ss4gld5i72fr0cczjnl2by44z5jnndsg3sklw4";
-    };
-
-  nativeBuildInputs = [ pkgconfig ];
-    buildInputs = [ libsndfile ];
-
-    meta = with stdenv.lib; {
-      description = "Audio processing plugin system for plugins that extract descriptive information from audio data";
-      homepage = https://sourceforge.net/projects/vamp;
-      license = licenses.bsd3;
-      maintainers = [ maintainers.goibhniu maintainers.marcweber ];
-      platforms = platforms.linux;
-    };
-  };
-
-}
diff --git a/pkgs/development/libraries/bctoolbox/default.nix b/pkgs/development/libraries/bctoolbox/default.nix
index 1c81dd608cb..22578dad38d 100644
--- a/pkgs/development/libraries/bctoolbox/default.nix
+++ b/pkgs/development/libraries/bctoolbox/default.nix
@@ -1,27 +1,39 @@
-{ stdenv, fetchFromGitHub, cmake, bcunit, mbedtls }:
+{ bcunit
+, cmake
+, fetchFromGitLab
+, mbedtls
+, stdenv
+}:
 
 stdenv.mkDerivation rec {
   pname = "bctoolbox";
-  version = "0.6.0";
+  version = "4.3.1";
 
   nativeBuildInputs = [ cmake bcunit ];
   buildInputs = [ mbedtls ];
 
-  src = fetchFromGitHub {
-    owner = "BelledonneCommunications";
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
     repo = pname;
     rev = version;
-    sha256 = "1cxx243wyzkd4xnvpyqf97n0rjhfckpvw1vhwnbwshq3q6fra909";
+    sha256 = "1y91jcrma4kjqpm6w5ahlygjsyvx7l8zjrjvq7g2n39jmw175cvs";
   };
 
+  # Do not build static libraries
+  cmakeFlags = [ "-DENABLE_STATIC=NO" ];
+
   NIX_CFLAGS_COMPILE = [ "-Wno-error=stringop-truncation" ];
 
-  meta = {
+  meta = with stdenv.lib; {
     inherit version;
     description = "Utilities library for Linphone";
-    homepage = "https://github.com/BelledonneCommunications/bctoolbox";
-    license = stdenv.lib.licenses.gpl2Plus ;
-    maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
+    homepage = "https://gitlab.linphone.org/BC/public/bctoolbox";
+    # Still using GPLv2 but as the rest of the Linphone projects have switched
+    # to GPLv3, this might too, so check this when bumping the version number.
+    license = licenses.gpl2Plus;
+    maintainers = with maintainers; [ raskin jluttine ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/belcard/default.nix b/pkgs/development/libraries/belcard/default.nix
index aa6cb8513ae..11de0488915 100644
--- a/pkgs/development/libraries/belcard/default.nix
+++ b/pkgs/development/libraries/belcard/default.nix
@@ -1,24 +1,34 @@
-{ stdenv, cmake, fetchFromGitHub, bctoolbox, belr }:
+{ bctoolbox
+, belr
+, cmake
+, fetchFromGitLab
+, stdenv
+}:
 
 stdenv.mkDerivation rec {
-  baseName = "belcard";
-  version = "1.0.2";
-  name = "${baseName}-${version}";
+  pname = "belcard";
+  version = "4.3.1";
 
-  src = fetchFromGitHub {
-    owner = "BelledonneCommunications";
-    repo = baseName;
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
+    repo = pname;
     rev = version;
-    sha256 = "1pwji83vpsdrfma24rnj3rz1x0a0g6zk3v4xjnip7zf2ys3zcnlk";
+    sha256 = "1w6rbp53cwxr00clp957458x27cgc2y9ylwa5mp812qva7zadmfw";
   };
 
   buildInputs = [ bctoolbox belr ];
   nativeBuildInputs = [ cmake ];
 
-  meta = with stdenv.lib;{
-    description = "Belcard is a C++ library to manipulate VCard standard format";
-    homepage = https://github.com/BelledonneCommunications/belcard;
+  # Do not build static libraries
+  cmakeFlags = [ "-DENABLE_STATIC=NO" ];
+
+  meta = with stdenv.lib; {
+    description = "C++ library to manipulate VCard standard format";
+    homepage = "https://gitlab.linphone.org/BC/public/belcard";
     license = licenses.lgpl21;
     platforms = platforms.all;
+    maintainers = with maintainers; [ jluttine ];
   };
 }
diff --git a/pkgs/development/libraries/belle-sip/default.nix b/pkgs/development/libraries/belle-sip/default.nix
index 0d3df37d8e0..a935372656e 100644
--- a/pkgs/development/libraries/belle-sip/default.nix
+++ b/pkgs/development/libraries/belle-sip/default.nix
@@ -1,22 +1,36 @@
-{ stdenv, antlr3_4, libantlr3c, jre, mbedtls, fetchFromGitHub
-  , cmake, zlib, bctoolbox
+{ antlr3_4
+, bctoolbox
+, cmake
+, fetchFromGitLab
+, jre
+, libantlr3c
+, mbedtls
+, stdenv
+, zlib
 }:
 
 stdenv.mkDerivation rec {
   pname = "belle-sip";
-  version = "1.6.3";
-
-  src = fetchFromGitHub {
-    owner = "BelledonneCommunications";
+  # Using master branch for linphone-desktop caused a chain reaction that many
+  # of its dependencies needed to use master branch too.
+  version = "unstable-2020-02-18";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
     repo = pname;
-    rev = version;
-    sha256 = "0q70db1klvhca1af29bm9paka3gyii5hfbzrj4178gclsg7cj8fk";
+    rev = "0dcb13416eae87edf140771b886aedaf6be8cf60";
+    sha256 = "0pzxk8mkkg6zsnmj1bwggbdjv864psx89gglfm51h8s501kg11fv";
   };
 
   nativeBuildInputs = [ jre cmake ];
 
   buildInputs = [ zlib ];
 
+  # Do not build static libraries
+  cmakeFlags = [ "-DENABLE_STATIC=NO" ];
+
   NIX_CFLAGS_COMPILE = toString [
     "-Wno-error=deprecated-declarations"
     "-Wno-error=format-truncation"
@@ -29,9 +43,10 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = false;
 
   meta = with stdenv.lib; {
-    homepage = https://linphone.org/technical-corner/belle-sip;
+    homepage = "https://linphone.org/technical-corner/belle-sip";
     description = "Modern library implementing SIP (RFC 3261) transport, transaction and dialog layers";
-    license = licenses.gpl2;
+    license = licenses.gpl3;
     platforms = platforms.all;
+    maintainers = with maintainers; [ jluttine ];
   };
 }
diff --git a/pkgs/development/libraries/belr/default.nix b/pkgs/development/libraries/belr/default.nix
index f0557b0379f..90067e493a1 100644
--- a/pkgs/development/libraries/belr/default.nix
+++ b/pkgs/development/libraries/belr/default.nix
@@ -1,24 +1,35 @@
-{ stdenv, cmake, fetchFromGitHub, bctoolbox }:
+{ bctoolbox
+, cmake
+, fetchFromGitLab
+, stdenv
+}:
 
 stdenv.mkDerivation rec {
-  baseName = "belr";
-  version = "0.1.3";
-  name = "${baseName}-${version}";
+  pname = "belr";
+  # Using master branch for linphone-desktop caused a chain reaction that many
+  # of its dependencies needed to use master branch too.
+  version = "unstable-2020-03-09";
 
-  src = fetchFromGitHub {
-    owner = "BelledonneCommunications";
-    repo = baseName;
-    rev = version;
-    sha256 = "0mf8lsyq1z3b5p47c00lnwc8n7v9nzs1fd2g9c9hnz6fjd2ka44w";
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
+    repo = pname;
+    rev = "326d030ca9db12525c2a6d2a65f386f36f3c2ed5";
+    sha256 = "1cdblb9smncq3al0crqp5651b02k1g6whlw1ib769p61gad0rs3v";
   };
 
   buildInputs = [ bctoolbox ];
   nativeBuildInputs = [ cmake ];
 
-  meta = with stdenv.lib;{
+  # Do not build static libraries
+  cmakeFlags = [ "-DENABLE_STATIC=NO" ];
+
+  meta = with stdenv.lib; {
     description = "Belr is Belledonne Communications' language recognition library";
-    homepage = https://github.com/BelledonneCommunications/belr;
-    license = licenses.lgpl21;
+    homepage = "https://gitlab.linphone.org/BC/public/belr";
+    license = licenses.gpl3;
     platforms = platforms.all;
+    maintainers = with maintainers; [ jluttine ];
   };
 }
diff --git a/pkgs/development/libraries/boost/1.72.nix b/pkgs/development/libraries/boost/1.72.nix
new file mode 100644
index 00000000000..680afe8bcb8
--- /dev/null
+++ b/pkgs/development/libraries/boost/1.72.nix
@@ -0,0 +1,16 @@
+{ stdenv, callPackage, fetchurl, fetchpatch, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  version = "1.72.0";
+
+  src = fetchurl {
+    #url = "mirror://sourceforge/boost/boost_1_72_0.tar.bz2";
+    urls = [
+      "mirror://sourceforge/boost/boost_1_72_0.tar.bz2"
+      "https://dl.bintray.com/boostorg/release/1.72.0/source/boost_1_72_0.tar.bz2"
+    ];
+    # SHA256 from http://www.boost.org/users/history/version_1_72_0.html
+    sha256 = "59c9b274bc451cf91a9ba1dd2c7fdcaf5d60b1b3aa83f2c9fa143417cc660722";
+  };
+})
+
diff --git a/pkgs/development/libraries/bzrtp/default.nix b/pkgs/development/libraries/bzrtp/default.nix
index b2dc295db5b..2eb5a2dfcff 100644
--- a/pkgs/development/libraries/bzrtp/default.nix
+++ b/pkgs/development/libraries/bzrtp/default.nix
@@ -1,26 +1,38 @@
-{ stdenv, cmake, fetchFromGitHub, bctoolbox, sqlite }:
+{ bctoolbox
+, cmake
+, fetchFromGitLab
+, sqlite
+, stdenv
+}:
 
 stdenv.mkDerivation rec {
-  baseName = "bzrtp";
-  version = "1.0.6";
-  name = "${baseName}-${version}";
+  pname = "bzrtp";
+  version = "4.3.1";
 
-  src = fetchFromGitHub {
-    owner = "BelledonneCommunications";
-    repo = baseName;
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
+    repo = pname;
     rev = version;
-    sha256 = "0438zzxp82bj5fmvqnwlljkgrz9ab5qm5lgpwwgmg1cp78bp2l45";
+    sha256 = "14fqp6r9rf7z6j5phbsrdxlbjak03hs8kb94b6jgcrcdxrxhy3fy";
   };
 
   buildInputs = [ bctoolbox sqlite ];
   nativeBuildInputs = [ cmake ];
 
+  # Do not build static libraries
+  cmakeFlags = [ "-DENABLE_STATIC=NO" ];
+
   NIX_CFLAGS_COMPILE = "-Wno-error=cast-function-type";
 
   meta = with stdenv.lib; {
     description = "BZRTP is an opensource implementation of ZRTP keys exchange protocol";
-    homepage = https://github.com/BelledonneCommunications/bzrtp;
+    homepage = "https://gitlab.linphone.org/BC/public/bzrtp";
+    # They have switched to GPLv3 on git HEAD so probably the next release will
+    # be GPL3.
     license = licenses.lgpl21;
     platforms = platforms.all;
+    maintainers = with maintainers; [ jluttine ];
   };
 }
diff --git a/pkgs/development/libraries/clutter/default.nix b/pkgs/development/libraries/clutter/default.nix
index 32e723671e8..6cb2ac60443 100644
--- a/pkgs/development/libraries/clutter/default.nix
+++ b/pkgs/development/libraries/clutter/default.nix
@@ -5,14 +5,14 @@
 
 let
   pname = "clutter";
-  version = "1.26.2";
+  version = "1.26.4";
 in
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "0mif1qnrpkgxi43h7pimim6w6zwywa16ixcliw0yjm9hk0a368z7";
+    sha256 = "1rn4cd1an6a9dfda884aqpcwcgq8dgydpqvb19nmagw4b70zlj4b";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/cogl/default.nix b/pkgs/development/libraries/cogl/default.nix
index e122c1e7b12..3557f1cf1a2 100644
--- a/pkgs/development/libraries/cogl/default.nix
+++ b/pkgs/development/libraries/cogl/default.nix
@@ -7,11 +7,11 @@ let
   pname = "cogl";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
-  version = "1.22.4";
+  version = "1.22.6";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "1q0drs82a8f6glg1v29bb6g2nf15fw0rvdx3d0rgcgfarfaby5sj";
+    sha256 = "0x8v4n61q89qy27v824bqswpz6bmn801403w2q3pa1lcwk9ln4vd";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/cpp-utilities/default.nix b/pkgs/development/libraries/cpp-utilities/default.nix
index 93ee2ddc704..6453ff2a3e9 100644
--- a/pkgs/development/libraries/cpp-utilities/default.nix
+++ b/pkgs/development/libraries/cpp-utilities/default.nix
@@ -7,25 +7,14 @@
 
 stdenv.mkDerivation rec {
   pname = "cpp-utilities";
-  version = "5.2.0";
+  version = "5.3.0";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0cghk1a0ki1063ci63imakmggwzkky1hx6lhrvc0wjfv754wsklb";
+    sha256 = "1c5rs28pavv8zabprjbd2y1sblgqbbhww07qvairh149rahvxi85";
   };
-  # See https://github.com/Martchus/cpp-utilities/issues/18
-  patches = [
-    (fetchpatch {
-      url = "https://github.com/Martchus/cpp-utilities/commit/b2a2773cdfb2b0017a3fa3d0ed2259a9a5fda666.patch";
-      sha256 = "01js90ba4xxljifncm48zbxmg7mwwz1gla1hn87yzbic47d85hfj";
-    })
-    (fetchpatch {
-      url = "https://github.com/Martchus/cpp-utilities/commit/4dd2179f191d1ace113f26177944684fa1561dc1.patch";
-      sha256 = "0chw33mwsvj7cigd1c4xl2zhpbfsp5rrijdm46qpn78bq70xcz9j";
-    })
-  ];
 
   nativeBuildInputs = [ cmake ];
   checkInputs = [ cppunit ];
diff --git a/pkgs/development/libraries/dconf/default.nix b/pkgs/development/libraries/dconf/default.nix
index 5b37088cd95..a41642745a5 100644
--- a/pkgs/development/libraries/dconf/default.nix
+++ b/pkgs/development/libraries/dconf/default.nix
@@ -1,26 +1,18 @@
 { stdenv, fetchurl, meson, ninja, python3, vala, libxslt, pkgconfig, glib, bash-completion, dbus, gnome3
-, libxml2, gtk-doc, docbook_xsl, docbook_xml_dtd_42, fetchpatch }:
+, libxml2, gtk-doc, docbook_xsl, docbook_xml_dtd_42 }:
 
 let
   pname = "dconf";
 in
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
-  version = "0.34.0";
+  version = "0.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "0lnsl85cp2vpzgp8pkf6l6yd2i3lp02jdvga1icfa78j2smr8fll";
+    sha256 = "0bfs069pjv6lhp7xrzmrhz3876ay2ryqxzc6mlva1hhz34ibprlz";
   };
 
-  patches = [
-    # Fix build with Meson 0.52
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/dconf/commit/cc32667c5d7d9ff95e65cc21f59905d8f9218394.patch";
-      sha256 = "02gfadn34bg818a7vb3crhsiahskiflcvx9l6iqwf1v269q93mr8";
-    })
-  ];
-
   postPatch = ''
     chmod +x meson_post_install.py tests/test-dconf.py
     patchShebangs meson_post_install.py
@@ -29,7 +21,7 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "lib" "dev" "devdoc" ];
 
-  nativeBuildInputs = [ meson ninja vala pkgconfig python3 libxslt libxml2 gtk-doc docbook_xsl docbook_xml_dtd_42 ];
+  nativeBuildInputs = [ meson ninja vala pkgconfig python3 libxslt libxml2 glib gtk-doc docbook_xsl docbook_xml_dtd_42 ];
   buildInputs = [ glib bash-completion dbus ];
 
   mesonFlags = [
@@ -42,7 +34,6 @@ stdenv.mkDerivation rec {
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;
-      attrPath = "gnome3.${pname}";
     };
   };
 
diff --git a/pkgs/development/libraries/exiv2/default.nix b/pkgs/development/libraries/exiv2/default.nix
index dc7610ee178..819f94cc44f 100644
--- a/pkgs/development/libraries/exiv2/default.nix
+++ b/pkgs/development/libraries/exiv2/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetchFromGitHub
+, fetchpatch
 , zlib
 , expat
 , cmake
@@ -23,6 +24,16 @@ stdenv.mkDerivation rec {
     sha256 = "0n8il52yzbmvbkryrl8waz7hd9a2fdkw8zsrmhyh63jlvmmc31gf";
   };
 
+  patches = [
+    # included in next release
+    (fetchpatch {
+      name = "cve-2019-20421.patch";
+      url = "https://github.com/Exiv2/exiv2/commit/a82098f4f90cd86297131b5663c3dec6a34470e8.patch";
+      sha256 = "16r19qb9l5j43ixm5jqid9sdv5brlkk1wq0w79rm5agxq4kblfyc";
+      excludes = [ "tests/bugfixes/github/test_issue_1011.py" "test/data/Jp2Image_readMetadata_loop.poc" ];
+    })
+  ];
+
   cmakeFlags = [
     "-DEXIV2_BUILD_PO=ON"
     "-DEXIV2_BUILD_DOC=ON"
diff --git a/pkgs/development/libraries/faudio/default.nix b/pkgs/development/libraries/faudio/default.nix
index 596de28d2df..f6a7f6c12fb 100644
--- a/pkgs/development/libraries/faudio/default.nix
+++ b/pkgs/development/libraries/faudio/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
 	pname = "faudio";
-  version = "20.03";
+  version = "20.04";
 
   src = fetchFromGitHub {
     owner = "FNA-XNA";
     repo = "FAudio";
     rev = version;
-    sha256 = "0wlbh1py9074896fxa8lcfvjj3l943zz8wjl2rn7g21xf0ar9kyv";
+    sha256 = "0ykc2y1w0wh6s3g9xzk3zqscvdjnf59923zxh2x0whxlcvndab2d";
   };
 
 	nativeBuildInputs = [cmake];
diff --git a/pkgs/development/libraries/fcgi/default.nix b/pkgs/development/libraries/fcgi/default.nix
index 5eb7e3866ce..0f580e3cd2b 100644
--- a/pkgs/development/libraries/fcgi/default.nix
+++ b/pkgs/development/libraries/fcgi/default.nix
@@ -1,24 +1,17 @@
-{ stdenv, fetchurl, fetchpatch }:
+{ stdenv, fetchFromGitHub, fetchpatch, autoreconfHook }:
 
 stdenv.mkDerivation rec {
   pname = "fcgi";
-  version = "2.4.0";
+  version = "2.4.2";
 
-  src = fetchurl {
-    url = "https://launchpad.net/debian/+archive/primary/+files/libfcgi_${version}.orig.tar.gz";
-    #    url = "http://www.fastcgi.com/dist/${name}.tar.gz";
-    sha256 = "1f857wnl1d6jfrgfgfpz3zdaj8fch3vr13mnpcpvy8bang34bz36";
+  src = fetchFromGitHub {
+    owner = "FastCGI-Archives";
+    repo = "fcgi2";
+    rev = version;
+    sha256 = "1jhz6jfwv5kawa8kajvg18nfwc1b30f38zc0lggszd1vcmrwqkz1";
   };
 
-  patches = [
-    ./gcc-4.4.diff
-    (fetchpatch {
-      # Fix a stack-smashing bug:
-      # xhttps://bugs.debian.org/cgi-bin/bugreport.cgi?bug=681591
-      url = "https://bugs.launchpad.net/ubuntu/+source/libfcgi/+bug/933417/+attachment/2745025/+files/poll.patch";
-      sha256 = "0v3gw0smjvrxh1bv3zx9xp633gbv5dd5bcn3ipj6ckqjyv4i6i7m";
-    })
-  ];
+  nativeBuildInputs = [ autoreconfHook ];
 
   postInstall = "ln -s . $out/include/fastcgi";
 
diff --git a/pkgs/development/libraries/flatpak/default.nix b/pkgs/development/libraries/flatpak/default.nix
index 3788974e124..ceca7e24fb6 100644
--- a/pkgs/development/libraries/flatpak/default.nix
+++ b/pkgs/development/libraries/flatpak/default.nix
@@ -54,14 +54,14 @@
 
 stdenv.mkDerivation rec {
   pname = "flatpak";
-  version = "1.6.2";
+  version = "1.6.3";
 
   # TODO: split out lib once we figure out what to do with triggerdir
   outputs = [ "out" "dev" "man" "doc" "installedTests" ];
 
   src = fetchurl {
     url = "https://github.com/flatpak/flatpak/releases/download/${version}/${pname}-${version}.tar.xz";
-    sha256 = "02k9p5n60gz2k85n805n9niic4miw0mfh0i7yk1vrc8vaa5h69wd";
+    sha256 = "17s8nqdxd4xdy7ag9bw06adxccha78jmlsa3zpqnl3qh92pg0hji";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/folks/default.nix b/pkgs/development/libraries/folks/default.nix
index 89b7938de1e..d44f279d8de 100644
--- a/pkgs/development/libraries/folks/default.nix
+++ b/pkgs/development/libraries/folks/default.nix
@@ -32,13 +32,13 @@
 
 stdenv.mkDerivation rec {
   pname = "folks";
-  version = "0.13.2";
+  version = "0.14.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0wq14yjs7m3axziy679a854vc7r7fj1l38p9jnyapb21vswdcqq2";
+    sha256 = "1f9b52vmwnq7s51vj26w2618dn2ph5g12ibbkbyk6fvxcgd7iryn";
   };
 
   mesonFlags = [
diff --git a/pkgs/development/libraries/freenect/default.nix b/pkgs/development/libraries/freenect/default.nix
index 17b2a6b7c99..64c01718542 100644
--- a/pkgs/development/libraries/freenect/default.nix
+++ b/pkgs/development/libraries/freenect/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, cmake, libusb, pkgconfig, freeglut, libGLU, libGL, libXi, libXmu
+{ stdenv, lib, fetchFromGitHub, cmake, libusb1, pkgconfig, freeglut, libGLU, libGL, libXi, libXmu
 , GLUT, Cocoa
  }:
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "1963xndbiwgj01q17zv6xbqlsbhfd236dkbdwkbjw4b0gr8kqzq9";
   };
 
-  buildInputs = [ libusb freeglut libGLU libGL libXi libXmu ]
+  buildInputs = [ libusb1 freeglut libGLU libGL libXi libXmu ]
     ++ lib.optionals stdenv.isDarwin [ GLUT Cocoa ];
 
   nativeBuildInputs = [ cmake pkgconfig ];
diff --git a/pkgs/development/libraries/freetds/default.nix b/pkgs/development/libraries/freetds/default.nix
index 855ca0385df..52c3f047c19 100644
--- a/pkgs/development/libraries/freetds/default.nix
+++ b/pkgs/development/libraries/freetds/default.nix
@@ -8,11 +8,11 @@ assert odbcSupport -> unixODBC != null;
 
 stdenv.mkDerivation rec {
   pname = "freetds";
-  version = "1.1.6";
+  version = "1.1.26";
 
   src = fetchurl {
     url    = "https://www.freetds.org/files/stable/${pname}-${version}.tar.bz2";
-    sha256 = "18rry59npbhxpzjb0l3ib7zlnlzj43srb5adcm65wyklklsh0gn2";
+    sha256 = "1nqxcnf6lax7grsxhajq87h92ngm487nzzz87kkmh1nzk33r7dwd";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/gcr/default.nix b/pkgs/development/libraries/gcr/default.nix
index cf0f22fdd40..f3625a0e355 100644
--- a/pkgs/development/libraries/gcr/default.nix
+++ b/pkgs/development/libraries/gcr/default.nix
@@ -1,6 +1,8 @@
 { stdenv
 , fetchurl
 , pkgconfig
+, meson
+, ninja
 , gettext
 , gnupg
 , p11-kit
@@ -15,30 +17,38 @@
 , vala
 , gnome3
 , python3
+, shared-mime-info
 }:
 
 stdenv.mkDerivation rec {
   pname = "gcr";
-  version = "3.34.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0925snsixzkwh49xiayqmj6fcrmklqk8kyy0jkv7m64h9abm1pr9";
+    sha256 = "00b6bzpr8rj8mvj66r2273r417wg2y21m6n88mhkq9m22z8bxyda";
   };
 
   postPatch = ''
     patchShebangs build/ gcr/fixtures/
+
+    chmod +x meson_post_install.py
+    patchShebangs meson_post_install.py
   '';
 
   outputs = [ "out" "dev" ];
 
   nativeBuildInputs = [
     pkgconfig
+    meson
+    python3
+    ninja
     gettext
     gobject-introspection
     libxslt
     makeWrapper
     vala
+    shared-mime-info
   ];
 
   buildInputs = [
@@ -58,6 +68,10 @@ stdenv.mkDerivation rec {
     python3
   ];
 
+  mesonFlags = [
+    "-Dgtk_doc=false"
+  ];
+
   doCheck = false; # fails 21 out of 603 tests, needs dbus daemon
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/geocode-glib/default.nix b/pkgs/development/libraries/geocode-glib/default.nix
index c1d0d7e8a4f..89c00308dd7 100644
--- a/pkgs/development/libraries/geocode-glib/default.nix
+++ b/pkgs/development/libraries/geocode-glib/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "geocode-glib";
-  version = "3.26.1";
+  version = "3.26.2";
 
   outputs = [ "out" "dev" "devdoc" "installedTests" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/geocode-glib/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "076ydfpyc4n5c9dbqmf26i4pilfi5jpw6cjcgrbgrjbndavnmajv";
+    sha256 = "1l8g0f13xgkrk335afr9w8k46mziwb2jnyhl07jccl5yl37q9zh1";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig gettext gtk-doc docbook_xsl gobject-introspection ];
diff --git a/pkgs/development/libraries/geos/default.nix b/pkgs/development/libraries/geos/default.nix
index e7fce696894..b8e056edb41 100644
--- a/pkgs/development/libraries/geos/default.nix
+++ b/pkgs/development/libraries/geos/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, python }:
 
 stdenv.mkDerivation rec {
-  name = "geos-3.7.3";
+  name = "geos-3.8.0";
 
   src = fetchurl {
     url = "https://download.osgeo.org/geos/${name}.tar.bz2";
-    sha256 = "0znaby3fs3fy7af5njrnmjnfsa80ac97fvamlnjiywddw3j5l0q2";
+    sha256 = "1mb2v9fy1gnbjhcgv0xny11ggfb17vkzsajdyibigwsxr4ylq4cr";
   };
 
   enableParallelBuilding = true;
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "C++ port of the Java Topology Suite (JTS)";
-    homepage = http://geos.refractions.net/;
+    homepage = https://trac.osgeo.org/geos;
     license = licenses.lgpl21;
   };
 }
diff --git a/pkgs/development/libraries/git2/default.nix b/pkgs/development/libraries/git2/default.nix
index 873865cdf83..8d52f190d01 100644
--- a/pkgs/development/libraries/git2/default.nix
+++ b/pkgs/development/libraries/git2/default.nix
@@ -5,14 +5,14 @@
 
 stdenv.mkDerivation rec {
   pname = "libgit2";
-  version = "0.99.0";
+  version = "1.0.0";
   # keep the version in sync with python3.pkgs.pygit2 and libgit2-glib
 
   src = fetchFromGitHub {
     owner = "libgit2";
     repo = "libgit2";
     rev = "v${version}";
-    sha256 = "0qxzv49ip378g1n7hrbifb9c6pys2kj1hnxcafmbb94gj3pgd9kg";
+    sha256 = "06cwrw93ycpfb5kisnsa5nsy95pm11dbh0vvdjg1jn25h9q5d3vc";
   };
 
   cmakeFlags = [
diff --git a/pkgs/development/libraries/gjs/default.nix b/pkgs/development/libraries/gjs/default.nix
index d63c0698127..171016388c1 100644
--- a/pkgs/development/libraries/gjs/default.nix
+++ b/pkgs/development/libraries/gjs/default.nix
@@ -1,11 +1,14 @@
 { fetchurl
+, fetchpatch
 , stdenv
+, meson
+, ninja
 , pkgconfig
 , gnome3
 , gtk3
 , atk
 , gobject-introspection
-, spidermonkey_60
+, spidermonkey_68
 , pango
 , cairo
 , readline
@@ -14,21 +17,29 @@
 , dbus
 , gdk-pixbuf
 , makeWrapper
+, xvfb_run
 , nixosTests
 }:
 
-stdenv.mkDerivation rec {
+let
+  testDeps = [
+    gobject-introspection # for Gio and cairo typelibs
+    gtk3 atk pango.out gdk-pixbuf
+  ];
+in stdenv.mkDerivation rec {
   pname = "gjs";
-  version = "1.58.5";
+  version = "1.64.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gjs/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0fm1szmhdawvgbf9fh6vvkv1fdvbn888fciyi2wkhx48kz09jvg7";
+    sha256 = "0z4qx4s3174b1w5b0slnn6jwpy2c18s4fvx4xii2kflr7s4q7bsm";
   };
 
   outputs = [ "out" "dev" "installedTests" ];
 
   nativeBuildInputs = [
+    meson
+    ninja
     pkgconfig
     makeWrapper
     libxml2 # for xml-stripblanks
@@ -38,30 +49,61 @@ stdenv.mkDerivation rec {
     gobject-introspection
     cairo
     readline
-    spidermonkey_60
+    spidermonkey_68
     dbus # for dbus-run-session
   ];
 
+  checkInputs = [
+    xvfb_run
+  ] ++ testDeps;
+
   propagatedBuildInputs = [
     glib
   ];
 
-  configureFlags = [
-    "--enable-installed-tests"
+  mesonFlags = [
+    "-Dprofiler=disabled"
+    "-Dinstalled_test_prefix=${placeholder "installedTests"}"
+  ];
+
+  patches = [
+    # Hard-code various paths
+    ./fix-paths.patch
+
+    # Allow installing installed tests to a separate output.
+    ./installed-tests-path.patch
   ];
 
+  # Gio test is failing
+  # https://github.com/NixOS/nixpkgs/pull/81626#issuecomment-599325843
+  doCheck = false;
+
   postPatch = ''
-    for f in installed-tests/*.test.in; do
-      substituteInPlace "$f" --subst-var-by pkglibexecdir "$installedTests/libexec/gjs"
-    done
+    substituteInPlace installed-tests/debugger-test.sh --subst-var-by gjsConsole $out/bin/gjs-console
   '';
 
-  postInstall = ''
-    moveToOutput "share/installed-tests" "$installedTests"
-    moveToOutput "libexec/gjs/installed-tests" "$installedTests"
+  preCheck = ''
+    # Our gobject-introspection patches make the shared library paths absolute
+    # in the GIR files. When running tests, the library is not yet installed,
+    # though, so we need to replace the absolute path with a local one during build.
+    # We are using a symlink that will be overridden during installation.
+    mkdir -p $out/lib $installedTests/libexec/gjs/installed-tests
+    ln -s $PWD/libgjs.so.0 $out/lib/libgjs.so.0
+    ln -s $PWD/installed-tests/js/libgimarshallingtests.so $installedTests/libexec/gjs/installed-tests/libgimarshallingtests.so
+    ln -s $PWD/installed-tests/js/libregress.so $installedTests/libexec/gjs/installed-tests/libregress.so
+    ln -s $PWD/installed-tests/js/libwarnlib.so $installedTests/libexec/gjs/installed-tests/libwarnlib.so
+  '';
 
+  postInstall = ''
     wrapProgram "$installedTests/libexec/gjs/installed-tests/minijasmine" \
-      --prefix GI_TYPELIB_PATH : "${stdenv.lib.makeSearchPath "lib/girepository-1.0" [ gtk3 atk pango.out gdk-pixbuf ]}:$installedTests/libexec/gjs/installed-tests"
+      --prefix GI_TYPELIB_PATH : "${stdenv.lib.makeSearchPath "lib/girepository-1.0" testDeps}"
+  '';
+
+  checkPhase = ''
+    runHook preCheck
+    xvfb-run -s '-screen 0 800x600x24' \
+      meson test --print-errorlogs
+    runHook postCheck
   '';
 
   separateDebugInfo = stdenv.isLinux;
diff --git a/pkgs/development/libraries/gjs/fix-paths.patch b/pkgs/development/libraries/gjs/fix-paths.patch
new file mode 100644
index 00000000000..5ca5372ea94
--- /dev/null
+++ b/pkgs/development/libraries/gjs/fix-paths.patch
@@ -0,0 +1,13 @@
+diff --git a/installed-tests/debugger-test.sh b/installed-tests/debugger-test.sh
+index 0d118490..54c5507e 100755
+--- a/installed-tests/debugger-test.sh
++++ b/installed-tests/debugger-test.sh
+@@ -3,7 +3,7 @@
+ if test "$GJS_USE_UNINSTALLED_FILES" = "1"; then
+     gjs="$TOP_BUILDDIR/gjs-console"
+ else
+-    gjs=gjs-console
++    gjs=@gjsConsole@
+ fi
+ 
+ echo 1..1
diff --git a/pkgs/development/libraries/gjs/installed-tests-path.patch b/pkgs/development/libraries/gjs/installed-tests-path.patch
new file mode 100644
index 00000000000..11a39b2dd9a
--- /dev/null
+++ b/pkgs/development/libraries/gjs/installed-tests-path.patch
@@ -0,0 +1,24 @@
+diff --git a/installed-tests/meson.build b/installed-tests/meson.build
+index 294d20c6..1e5029e0 100644
+--- a/installed-tests/meson.build
++++ b/installed-tests/meson.build
+@@ -1,7 +1,7 @@
+ ### Installed tests ############################################################
+ 
+-installed_tests_execdir = get_option('prefix') / pkglibexecdir / 'installed-tests'
+-installed_tests_metadir = abs_datadir / 'installed-tests' / meson.project_name()
++installed_tests_execdir = get_option('installed_test_prefix') / 'libexec' / meson.project_name() / 'installed-tests'
++installed_tests_metadir = get_option('installed_test_prefix') / 'share' / 'installed-tests' / meson.project_name()
+ 
+ # Simple shell script tests #
+ 
+diff --git a/meson_options.txt b/meson_options.txt
+index 66f66024..008687cb 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -25,3 +25,5 @@ option('skip_gtk_tests', type: 'boolean', value: false,
+     description: 'Skip tests that need a display connection')
+ option('verbose_logs', type: 'boolean', value: false,
+     description: 'Enable extra log messages that may decrease performance (not allowed in release builds)')
++option('installed_test_prefix', type: 'string', value: '',
++    description: 'Prefix for installed tests')
diff --git a/pkgs/development/libraries/gl2ps/default.nix b/pkgs/development/libraries/gl2ps/default.nix
index 8b522c6e92b..2ed717a49b8 100644
--- a/pkgs/development/libraries/gl2ps/default.nix
+++ b/pkgs/development/libraries/gl2ps/default.nix
@@ -2,12 +2,12 @@
 , zlib, libGL, libGLU, libpng, freeglut }:
 
 stdenv.mkDerivation rec {
-  version = "1.4.0";
+  version = "1.4.1";
   pname = "gl2ps";
 
   src = fetchurl {
     url = "http://geuz.org/gl2ps/src/${pname}-${version}.tgz";
-    sha256 = "1qpidkz8x3bxqf69hlhyz1m0jmfi9kq24fxsp7rq6wfqzinmxjq3";
+    sha256 = "0fsx5lh9pz1xswr4yng24j4ngiijnanksbgz05bfzkh07m5h6qkk";
   };
 
   buildInputs = [
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://geuz.org/gl2ps;
+    homepage = "http://geuz.org/gl2ps";
     description = "An OpenGL to PostScript printing library";
     platforms = platforms.all;
     license = licenses.lgpl2;
diff --git a/pkgs/development/libraries/glib-networking/default.nix b/pkgs/development/libraries/glib-networking/default.nix
index 86f73e23d50..687852fb181 100644
--- a/pkgs/development/libraries/glib-networking/default.nix
+++ b/pkgs/development/libraries/glib-networking/default.nix
@@ -18,13 +18,13 @@
 
 stdenv.mkDerivation rec {
   pname = "glib-networking";
-  version = "2.62.3";
+  version = "2.64.0";
 
   outputs = [ "out" "installedTests" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1xvzixzwwh8wk8f79qbm2gl7hp3hj1a7skv281v5qsx74dpzi8cc";
+    sha256 = "1fm1462v7z556qivlwflvc3qpz36jwpzqxxvsihh45j7aka2gnjw";
   };
 
   patches = [
diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix
index 6bc5a6c2535..f4f4cefa540 100644
--- a/pkgs/development/libraries/glib/default.nix
+++ b/pkgs/development/libraries/glib/default.nix
@@ -48,11 +48,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "glib";
-  version = "2.62.5";
+  version = "2.64.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/glib/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0bj5hagvfiqcjd20w543pvbnrlqvs8nbxvqjflyvcn36ljpwvldq";
+    sha256 = "1ixvjmsrj45xq9bq3chhj98jhgcsqa08v627mjx6sjxlph1pd5hp";
   };
 
   patches = optionals stdenv.isDarwin [
@@ -62,8 +62,6 @@ stdenv.mkDerivation rec {
     ./gobject_init_on_demand.patch
   ] ++ [
     ./schema-override-variable.patch
-    # Require substituteInPlace in postPatch
-    ./fix-gio-launch-desktop-path.patch
 
     # GLib contains many binaries used for different purposes;
     # we will install them to different outputs:
@@ -126,9 +124,6 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
-    # substitute fix-gio-launch-desktop-path.patch
-    substituteInPlace gio/gdesktopappinfo.c --replace "@bindir@" "$out/bin"
-
     chmod +x gio/tests/gengiotypefuncs.py
     patchShebangs gio/tests/gengiotypefuncs.py
     chmod +x docs/reference/gio/concat-files-helper.py
@@ -148,11 +143,6 @@ stdenv.mkDerivation rec {
     # This file is *included* in gtk3 and would introduce runtime reference via __FILE__.
     sed '1i#line 1 "${pname}-${version}/include/glib-2.0/gobject/gobjectnotifyqueue.c"' \
       -i "$dev"/include/glib-2.0/gobject/gobjectnotifyqueue.c
-  '' + optionalString (!stdenv.isDarwin) ''
-    # Add gio-launch-desktop to $out so we can refer to it from $lib
-    mkdir $out/bin
-    mv "$bin/bin/gio-launch-desktop" "$out/bin/"
-    ln -s "$out/bin/gio-launch-desktop" "$bin/bin/"
   '' + optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
     cp -r ${buildPackages.glib.devdoc} $devdoc
   '';
diff --git a/pkgs/development/libraries/glib/fix-gio-launch-desktop-path.patch b/pkgs/development/libraries/glib/fix-gio-launch-desktop-path.patch
deleted file mode 100644
index 4fdec2dd7e7..00000000000
--- a/pkgs/development/libraries/glib/fix-gio-launch-desktop-path.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/gio/gdesktopappinfo.c
-+++ b/gio/gdesktopappinfo.c
-@@ -2725,7 +2725,7 @@ g_desktop_app_info_launch_uris_with_spawn (GDesktopAppInfo            *info,
- 
-           /* Fall back on usual searching in $PATH */
-           if (tmp == NULL)
--            tmp = "gio-launch-desktop";
-+            tmp = "@bindir@/gio-launch-desktop";
-           g_once_init_leave (&gio_launch_desktop_path, tmp);
-         }
- 
diff --git a/pkgs/development/libraries/gmime/3.nix b/pkgs/development/libraries/gmime/3.nix
index 754d5aa7411..80753823ff1 100644
--- a/pkgs/development/libraries/gmime/3.nix
+++ b/pkgs/development/libraries/gmime/3.nix
@@ -1,20 +1,24 @@
-{ stdenv, fetchurl, pkgconfig, glib, zlib, gnupg, gpgme, libidn2, libunistring, gobject-introspection }:
+{ stdenv, fetchurl, pkgconfig, glib, zlib, gnupg, gpgme, libidn2, libunistring, gobject-introspection
+, vala }:
 
 stdenv.mkDerivation rec {
-  version = "3.2.5";
+  version = "3.2.6";
   pname = "gmime";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gmime/3.2/${pname}-${version}.tar.xz";
-    sha256 = "0ndsg1z1kq4w4caascydvialpyn4rfbjdn7xclzbzhw53x85cxgv";
+    sha256 = "05s7qjrxbj010q016pmdqdq73gz8vl4hv29kwaign0j8gi61kzxb";
   };
 
   outputs = [ "out" "dev" ];
 
-  buildInputs = [ gobject-introspection zlib gpgme libidn2 libunistring ];
+  buildInputs = [ vala gobject-introspection zlib gpgme libidn2 libunistring ];
   nativeBuildInputs = [ pkgconfig ];
   propagatedBuildInputs = [ glib ];
-  configureFlags = [ "--enable-introspection=yes" ];
+  configureFlags = [
+    "--enable-introspection=yes"
+    "--enable-vala=yes"
+  ];
 
   postPatch = ''
     substituteInPlace tests/testsuite.c \
@@ -28,7 +32,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/jstedfast/gmime/;
+    homepage = "https://github.com/jstedfast/gmime/";
     description = "A C/C++ library for creating, editing and parsing MIME messages and structures";
     license = licenses.lgpl21Plus;
     maintainers = with maintainers; [ ];
diff --git a/pkgs/development/libraries/gnome-menus/default.nix b/pkgs/development/libraries/gnome-menus/default.nix
index f6ff3a2ea4a..f8e25640f29 100644
--- a/pkgs/development/libraries/gnome-menus/default.nix
+++ b/pkgs/development/libraries/gnome-menus/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-menus";
-  version = "3.32.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0x2blzqrapmbsbfzxjcdcpa3vkw9hq5k96h9kvjmy9kl415wcl68";
+    sha256 = "07xvaf8s0fiv0035nk8zpzymn5www76w2a1vflrgqmp9plw8yd6r";
   };
 
   makeFlags = [
diff --git a/pkgs/development/libraries/gnome-online-accounts/default.nix b/pkgs/development/libraries/gnome-online-accounts/default.nix
index adbb714c7b2..8631cdee8cf 100644
--- a/pkgs/development/libraries/gnome-online-accounts/default.nix
+++ b/pkgs/development/libraries/gnome-online-accounts/default.nix
@@ -30,7 +30,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gnome-online-accounts";
-  version = "3.34.1";
+  version = "3.36.0";
 
   # https://gitlab.gnome.org/GNOME/gnome-online-accounts/issues/87
   src = fetchFromGitLab {
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
     owner = "GNOME";
     repo = "gnome-online-accounts";
     rev = version;
-    sha256 = "0ry06qw068rqn4y42953kwl6fkxpgfya58y87cd3zink6gj7q0fm";
+    sha256 = "15j3xh93rqjphjw56j00g40m684nr4zy3hs7dsngm6a21l87fkfd";
   };
 
   outputs = [ "out" "man" "dev" "devdoc" ];
@@ -92,7 +92,6 @@ stdenv.mkDerivation rec {
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;
-      attrPath = "gnome3.${pname}";
     };
   };
 
diff --git a/pkgs/development/libraries/gobject-introspection/default.nix b/pkgs/development/libraries/gobject-introspection/default.nix
index 81df734a2ce..f754756f768 100644
--- a/pkgs/development/libraries/gobject-introspection/default.nix
+++ b/pkgs/development/libraries/gobject-introspection/default.nix
@@ -7,17 +7,14 @@
 # it may be worth thinking about using multiple derivation outputs
 # In that case its about 6MB which could be separated
 
-let
-  pname = "gobject-introspection";
-  version = "1.62.0";
-in
 with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
+  pname = "gobject-introspection";
+  version = "1.64.0";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "18lhglg9v6y83lhqzyifc1z0wrlawzrhzzxx0a3h1g7xaz97xvmi";
+    url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+    sha256 = "10pwykfnk7pw8k9k8iz3p72phxvyrh5q4d7gr3ysv08w15immh7a";
   };
 
   outputs = [ "out" "dev" "man" ];
@@ -32,6 +29,8 @@ stdenv.mkDerivation rec {
 
   mesonFlags = [
     "--datadir=${placeholder "dev"}/share"
+    "-Ddoctool=disabled"
+    "-Dcairo=disabled"
   ];
 
   # outputs TODO: share/gobject-introspection-1.0/tests is needed during build
@@ -56,6 +55,19 @@ stdenv.mkDerivation rec {
 
   doCheck = !stdenv.isAarch64;
 
+  preBuild = ''
+    # Our gobject-introspection patches make the shared library paths absolute
+    # in the GIR files. When running tests, the library is not yet installed,
+    # though, so we need to replace the absolute path with a local one during build.
+    # We are using a symlink that we will delete before installation.
+    mkdir -p $out/lib
+    ln -s $PWD/tests/scanner/libregress-1.0${stdenv.targetPlatform.extensions.sharedLibrary} $out/lib/libregress-1.0${stdenv.targetPlatform.extensions.sharedLibrary}
+    cleanLibregressSymlink() {
+      rm $out/lib/libregress-1.0${stdenv.targetPlatform.extensions.sharedLibrary}
+    }
+    preInstallPhases="$preInstallPhases cleanLibregressSymlink"
+  '';
+
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;
diff --git a/pkgs/development/libraries/gpgme/default.nix b/pkgs/development/libraries/gpgme/default.nix
index ed2b5563bd3..9e5ff187ac6 100644
--- a/pkgs/development/libraries/gpgme/default.nix
+++ b/pkgs/development/libraries/gpgme/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, libgpgerror, gnupg, pkgconfig, glib, pth, libassuan
+{ stdenv, fetchurl, fetchpatch, libgpgerror, gnupg, pkgconfig, glib, pth, libassuan
 , file, which, ncurses
 , texinfo
 , buildPackages
@@ -20,6 +20,21 @@ stdenv.mkDerivation rec {
     sha256 = "0imyjfryvvjdbai454p70zcr95m94j9xnzywrlilqdw2fqi0pqy4";
   };
 
+  patches = [
+    # Fix tests with gnupg > 2.2.19
+    # https://dev.gnupg.org/T4820
+    (fetchpatch {
+      name = "cff600f1f65a2164ab25ff2b039cba008776ce62.patch";
+      url = "http://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=patch;h=cff600f1f65a2164ab25ff2b039cba008776ce62";
+      sha256 = "9vB2aTv3zeAQS3UxCDfkRjqUlng8lkcyJPgMzdm+Qzc=";
+    })
+    (fetchpatch {
+      name = "c4cf527ea227edb468a84bf9b8ce996807bd6992.patch";
+      url = "http://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=patch;h=c4cf527ea227edb468a84bf9b8ce996807bd6992";
+      sha256 = "pKL1tvUw7PB2w4FHSt2up4SvpFiprBH6TLdgKxYFC3g=";
+    })
+  ];
+
   outputs = [ "out" "dev" "info" ];
   outputBin = "dev"; # gpgme-config; not so sure about gpgme-tool
 
diff --git a/pkgs/development/libraries/grantlee/5/default.nix b/pkgs/development/libraries/grantlee/5/default.nix
index 45096e031d3..818d3c30de2 100644
--- a/pkgs/development/libraries/grantlee/5/default.nix
+++ b/pkgs/development/libraries/grantlee/5/default.nix
@@ -2,12 +2,12 @@
 
 mkDerivation rec {
   pname = "grantlee";
-  version = "5.1.0";
+  version = "5.2.0";
   grantleePluginPrefix = "lib/grantlee/${lib.versions.majorMinor version}";
 
   src = fetchurl {
     url = "https://github.com/steveire/grantlee/archive/v${version}.tar.gz";
-    sha256 = "1lf9rkv0i0kd7fvpgg5l8jb87zw8dzcwd1liv6hji7g4wlpmfdiq";
+    sha256 = "02lrdbnvaz19hkawbbj2psww1m04qsbhvv172ggpp5bbfkjwx6hk";
     name = "${pname}-${version}.tar.gz";
   };
 
diff --git a/pkgs/development/libraries/grantlee/5/grantlee-cxx11.patch b/pkgs/development/libraries/grantlee/5/grantlee-cxx11.patch
deleted file mode 100644
index d049d6c96f8..00000000000
--- a/pkgs/development/libraries/grantlee/5/grantlee-cxx11.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 3a5fc7662da3261be6496611900c095844e56ab1 Mon Sep 17 00:00:00 2001
-From: Albert Astals Cid <aacid@kde.org>
-Date: Sat, 20 Jul 2019 17:35:30 +0200
-Subject: [PATCH] Fix compile with newer Qt/cmake combination
-
-Without this i get huge errors about Qt needing C++11 support
----
- CMakeLists.txt | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 6d51110..0859788 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -11,6 +11,9 @@ endif()
- 
- project(Grantlee)
- 
-+set (CMAKE_CXX_STANDARD 11)
-+set (CMAKE_CXX_EXTENSIONS OFF)
-+
- # Workaround for http://public.kitware.com/Bug/view.php?id=12301
- if (MINGW)
-   if(NOT CMAKE_BUILD_TYPE)
diff --git a/pkgs/development/libraries/grantlee/5/grantlee-no-canonicalize-filepath.patch b/pkgs/development/libraries/grantlee/5/grantlee-no-canonicalize-filepath.patch
index d78ef74ce35..64eb11c3f15 100644
--- a/pkgs/development/libraries/grantlee/5/grantlee-no-canonicalize-filepath.patch
+++ b/pkgs/development/libraries/grantlee/5/grantlee-no-canonicalize-filepath.patch
@@ -2,17 +2,17 @@ Index: grantlee-5.1.0/templates/lib/templateloader.cpp
 ===================================================================
 --- grantlee-5.1.0.orig/templates/lib/templateloader.cpp
 +++ grantlee-5.1.0/templates/lib/templateloader.cpp
-@@ -141,10 +141,6 @@ Template FileSystemTemplateLoader::loadB
+@@ -142,10 +142,6 @@ Template FileSystemTemplateLoader::loadByName(const QString &fileName,
                       + QLatin1Char('/') + fileName);
      const QFileInfo fi(file);
- 
+
 -    if (file.exists()
 -        && !fi.canonicalFilePath().contains(
--               QDir(d->m_templateDirs.at(i)).canonicalPath()))
+-            QDir(d->m_templateDirs.at(i)).canonicalPath()))
 -      return Template();
      ++i;
    }
- 
+
 @@ -173,11 +169,6 @@ FileSystemTemplateLoader::getMediaUri(co
                       + QLatin1Char('/') + fileName);
  
diff --git a/pkgs/development/libraries/grantlee/5/series b/pkgs/development/libraries/grantlee/5/series
index 19850b2e7e4..9c4015a1c19 100644
--- a/pkgs/development/libraries/grantlee/5/series
+++ b/pkgs/development/libraries/grantlee/5/series
@@ -1,3 +1,2 @@
 grantlee-nix-profiles.patch
 grantlee-no-canonicalize-filepath.patch
-grantlee-cxx11.patch
diff --git a/pkgs/development/libraries/grilo-plugins/default.nix b/pkgs/development/libraries/grilo-plugins/default.nix
index 21530c000da..65be9d27df1 100644
--- a/pkgs/development/libraries/grilo-plugins/default.nix
+++ b/pkgs/development/libraries/grilo-plugins/default.nix
@@ -87,7 +87,6 @@ stdenv.mkDerivation rec {
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;
-      attrPath = "gnome3.${pname}";
       versionPolicy = "none";
     };
   };
diff --git a/pkgs/development/libraries/grpc/default.nix b/pkgs/development/libraries/grpc/default.nix
index 815d3becf6f..8549eeffde6 100644
--- a/pkgs/development/libraries/grpc/default.nix
+++ b/pkgs/development/libraries/grpc/default.nix
@@ -1,13 +1,13 @@
-{ stdenv, fetchFromGitHub, fetchpatch, cmake, zlib, c-ares, pkgconfig, openssl, protobuf, gflags }:
+{ stdenv, fetchFromGitHub, fetchpatch, cmake, zlib, c-ares, pkgconfig, openssl, protobuf, gflags, abseil-cpp }:
 
 stdenv.mkDerivation rec {
-  version = "1.27.1"; # N.B: if you change this, change pythonPackages.grpcio and pythonPackages.grpcio-tools to a matching version too
+  version = "1.28.1"; # N.B: if you change this, change pythonPackages.grpcio and pythonPackages.grpcio-tools to a matching version too
   pname = "grpc";
   src = fetchFromGitHub {
     owner = "grpc";
     repo = "grpc";
     rev = "v${version}";
-    sha256 = "1yvmqxv6pwzbxw3si47x3anvl2pp3qy1acspmz4v60pd188c1fnc";
+    sha256 = "17p3xwz5izlqg5ijnim4asl40pr8yhg9wrrmws4g0dk37nkn1x6p";
     fetchSubmodules = true;
   };
   patches = [
@@ -49,6 +49,8 @@ stdenv.mkDerivation rec {
     description = "The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#)";
     license = licenses.asl20;
     maintainers = [ maintainers.lnl7 maintainers.marsam ];
-    homepage = https://grpc.io/;
+    homepage = "https://grpc.io/";
+    platforms = platforms.all;
+    changelog = "https://github.com/grpc/grpc/releases/tag/v${version}";
   };
 }
diff --git a/pkgs/development/libraries/gsettings-desktop-schemas/default.nix b/pkgs/development/libraries/gsettings-desktop-schemas/default.nix
index ea6e08811af..a23027946a4 100644
--- a/pkgs/development/libraries/gsettings-desktop-schemas/default.nix
+++ b/pkgs/development/libraries/gsettings-desktop-schemas/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gsettings-desktop-schemas";
-  version = "3.34.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gsettings-desktop-schemas/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1bayr76aylawf2fhyjhv9zgk4kpv7ivrrmd80khb0h3h1wk092r8";
+    sha256 = "19hfjqzddkmvxg80v23xpbd1my2pzjalx3d56d2k4dk5521vcjkn";
   };
 
   passthru = {
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ glib gobject-introspection ];
 
-  nativeBuildInputs = [ pkgconfig python3 meson ninja ];
+  nativeBuildInputs = [ pkgconfig python3 meson ninja glib ];
 
   meta = with stdenv.lib; {
     maintainers = gnome3.maintainers;
diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix
index da04f0b05ed..ae5fd753132 100644
--- a/pkgs/development/libraries/gstreamer/bad/default.nix
+++ b/pkgs/development/libraries/gstreamer/bad/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetchurl
+, fetchpatch
 , meson
 , ninja
 , gettext
@@ -96,6 +97,12 @@ in stdenv.mkDerivation rec {
   };
 
   patches = [
+    # Fix build with neon 0.31
+    # https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1165
+    (fetchpatch {
+      url = "https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/commit/f10b424418e448211e3427a76fcd046e157ef0b7.patch";
+      sha256 = "0l1f6kqcl04q7w12a2b4qibcvjz6gqhs0csdv2wbvfd6zndpjm6p";
+    })
     ./fix_pkgconfig_includedir.patch
   ];
 
diff --git a/pkgs/development/libraries/gstreamer/base/default.nix b/pkgs/development/libraries/gstreamer/base/default.nix
index 178f6a1fe89..79405e5077e 100644
--- a/pkgs/development/libraries/gstreamer/base/default.nix
+++ b/pkgs/development/libraries/gstreamer/base/default.nix
@@ -37,6 +37,7 @@
 , enableGl ? (enableX11 || enableWayland || enableCocoa)
 , enableCdparanoia ? (!stdenv.isDarwin)
 , cdparanoia
+, glib
 }:
 
 stdenv.mkDerivation rec {
@@ -60,13 +61,15 @@ stdenv.mkDerivation rec {
     pkgconfig
     python3
     gettext
+    orc
+    glib
     gobject-introspection
 
     # docs
     gtk-doc
     docbook_xsl
     docbook_xml_dtd_43
-  ];
+  ] ++ lib.optional enableWayland wayland;
 
   buildInputs = [
     orc
diff --git a/pkgs/development/libraries/gstreamer/core/default.nix b/pkgs/development/libraries/gstreamer/core/default.nix
index 3dd7a547de9..67a0aa9f3f8 100644
--- a/pkgs/development/libraries/gstreamer/core/default.nix
+++ b/pkgs/development/libraries/gstreamer/core/default.nix
@@ -48,6 +48,7 @@ stdenv.mkDerivation rec {
     flex
     python3
     makeWrapper
+    glib
     gobject-introspection
     bash-completion
 
@@ -57,7 +58,9 @@ stdenv.mkDerivation rec {
     docbook_xml_dtd_43
   ];
 
-  buildInputs = lib.optionals stdenv.isLinux [
+  buildInputs = [
+    bash-completion
+  ] ++ lib.optionals stdenv.isLinux [
     libcap
     libunwind
     elfutils
diff --git a/pkgs/development/libraries/gtk/3.x.nix b/pkgs/development/libraries/gtk/3.x.nix
index 9f381c5ac70..ac5a944334e 100644
--- a/pkgs/development/libraries/gtk/3.x.nix
+++ b/pkgs/development/libraries/gtk/3.x.nix
@@ -70,6 +70,11 @@ stdenv.mkDerivation rec {
       url = "https://bug757142.bugzilla-attachments.gnome.org/attachment.cgi?id=344123";
       sha256 = "0g6fhqcv8spfy3mfmxpyji93k8d4p4q4fz1v9a1c1cgcwkz41d7p";
     })
+    # https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/1528
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/GNOME/gtk/-/commit/3c28751dee115e969a58a733f2f19e71062b9d2d.patch";
+      sha256 = "1rqrmymwd22dsiy7agjw13mcyic3by6020rxyaw7zslnmyzfiwc3";
+    })
     # https://gitlab.gnome.org/GNOME/gtk/merge_requests/1002
     ./patches/01-build-Fix-path-handling-in-pkgconfig.patch
   ] ++ optionals stdenv.isDarwin [
diff --git a/pkgs/development/libraries/gtksourceview/3.x.nix b/pkgs/development/libraries/gtksourceview/3.x.nix
index 1b35221f066..baef8062224 100644
--- a/pkgs/development/libraries/gtksourceview/3.x.nix
+++ b/pkgs/development/libraries/gtksourceview/3.x.nix
@@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = "gtksourceview";
-      attrPath = "gnome3.gtksourceview";
+      attrPath = "gtksourceview3";
     };
   };
 
diff --git a/pkgs/development/libraries/gtksourceview/4.x.nix b/pkgs/development/libraries/gtksourceview/4.x.nix
index d3a7d849062..57ba5a26685 100644
--- a/pkgs/development/libraries/gtksourceview/4.x.nix
+++ b/pkgs/development/libraries/gtksourceview/4.x.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gtksourceview";
-  version = "4.4.0";
+  version = "4.6.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/gtksourceview/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "16k8kqw9w775f1ijsk898hp210an5mv4yfyrmik9m8khxx593nwx";
+    sha256 = "11csdnb5xj1gkn1shynp3jdsfhhi7ks3apgmavfan0p6n85f64sc";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/libraries/gtksourceviewmm/default.nix b/pkgs/development/libraries/gtksourceviewmm/default.nix
index 1b66bfd031f..6b81b7981ee 100644
--- a/pkgs/development/libraries/gtksourceviewmm/default.nix
+++ b/pkgs/development/libraries/gtksourceviewmm/default.nix
@@ -12,7 +12,6 @@ stdenv.mkDerivation rec {
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = "gtksourceviewmm";
-      attrPath = "gnome3.gtksourceviewmm";
       versionPolicy = "none";
     };
   };
diff --git a/pkgs/development/libraries/gvfs/default.nix b/pkgs/development/libraries/gvfs/default.nix
index f8db6f573d9..1caed4cacf7 100644
--- a/pkgs/development/libraries/gvfs/default.nix
+++ b/pkgs/development/libraries/gvfs/default.nix
@@ -41,11 +41,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gvfs";
-  version = "1.42.2";
+  version = "1.44.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0jgrbid8a61hgh05wl8c4f4638x7dffd5vip02jmladxfdszjymm";
+    sha256 = "0ipv0jgzim6glsgizmfjkx0m3gd1l9lr242m0jj6cdmhs52k5vsh";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/http-parser/default.nix b/pkgs/development/libraries/http-parser/default.nix
index 7c3b313dd60..203fcaa19ec 100644
--- a/pkgs/development/libraries/http-parser/default.nix
+++ b/pkgs/development/libraries/http-parser/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub }:
 
 let
-  version = "2.9.3";
+  version = "2.9.4";
 in stdenv.mkDerivation {
   pname = "http-parser";
   inherit version;
@@ -10,7 +10,7 @@ in stdenv.mkDerivation {
     owner = "nodejs";
     repo = "http-parser";
     rev = "v${version}";
-    sha256 = "189zi61vczqgmqjd2myjcjbbi5icrk7ccs0kn6nj8hxqiv5j3811";
+    sha256 = "1vda4dp75pjf5fcph73sy0ifm3xrssrmf927qd1x8g3q46z0cv6c";
   };
 
   NIX_CFLAGS_COMPILE = "-Wno-error";
@@ -22,7 +22,7 @@ in stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "An HTTP message parser written in C";
-    homepage = https://github.com/nodejs/http-parser;
+    homepage = "https://github.com/nodejs/http-parser";
     maintainers = with maintainers; [ matthewbauer ];
     license = licenses.mit;
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/hwloc/default.nix b/pkgs/development/libraries/hwloc/default.nix
index ffa64858b75..35f8a8484e7 100644
--- a/pkgs/development/libraries/hwloc/default.nix
+++ b/pkgs/development/libraries/hwloc/default.nix
@@ -7,7 +7,7 @@ assert x11Support -> libX11 != null && cairo != null;
 with stdenv.lib;
 
 let
-  version = "2.1.0";
+  version = "2.2.0";
   versmm = versions.major version + "." + versions.minor version;
   name = "hwloc-${version}";
 
@@ -16,7 +16,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://www.open-mpi.org/software/hwloc/v${versmm}/downloads/${name}.tar.bz2";
-    sha256 = "0qh8s7pphz0m5cwb7liqmc17xzfs23xhz5wn24r6ikvjyx99fhhr";
+    sha256 = "0li27a3lnmb77qxpijj0kpblz32wmqd3b386sypq8ar7vy9vhw5f";
   };
 
   configureFlags = [
@@ -80,7 +80,7 @@ in stdenv.mkDerivation {
 
     # https://www.open-mpi.org/projects/hwloc/license.php
     license = licenses.bsd3;
-    homepage = https://www.open-mpi.org/projects/hwloc/;
+    homepage = "https://www.open-mpi.org/projects/hwloc/";
     maintainers = with maintainers; [ fpletz markuskowa ];
     platforms = platforms.all;
   };
diff --git a/pkgs/development/libraries/indilib/default.nix b/pkgs/development/libraries/indilib/default.nix
index 5816f044f57..6fe4484e6a3 100644
--- a/pkgs/development/libraries/indilib/default.nix
+++ b/pkgs/development/libraries/indilib/default.nix
@@ -1,5 +1,15 @@
-{ stdenv, fetchurl, cmake, cfitsio, libusb, zlib, boost, libnova
-, curl, libjpeg, gsl }:
+{ stdenv
+, fetchurl
+, cmake
+, cfitsio
+, libusb1
+, zlib
+, boost
+, libnova
+, curl
+, libjpeg
+, gsl
+}:
 
 stdenv.mkDerivation {
   name = "indilib-1.1.0";
@@ -9,13 +19,27 @@ stdenv.mkDerivation {
     sha256 = "1bs6lkwqd4aashg93mqqkc7nrg7fbx9mdw85qs5263jqa6sr780w";
   };
 
-  patches = [ ./udev-dir.patch ] ;
+  patches = [
+    ./udev-dir.patch
+  ];
 
-  buildInputs = [ curl cmake cfitsio libusb zlib boost
-                            libnova libjpeg gsl ];
+  nativeBuildInputs = [
+    cmake
+  ];
+
+  buildInputs = [
+    curl
+    cfitsio
+    libusb1
+    zlib
+    boost
+    libnova
+    libjpeg
+    gsl
+  ];
 
   meta = {
-    homepage = https://www.indilib.org/;
+    homepage = "https://www.indilib.org/";
     license = stdenv.lib.licenses.lgpl2Plus;
     description = "Implementaion of the INDI protocol for POSIX operating systems";
     platforms = stdenv.lib.platforms.unix;
diff --git a/pkgs/development/libraries/intel-gmmlib/default.nix b/pkgs/development/libraries/intel-gmmlib/default.nix
index 4637c8c950f..23b26c9a890 100644
--- a/pkgs/development/libraries/intel-gmmlib/default.nix
+++ b/pkgs/development/libraries/intel-gmmlib/default.nix
@@ -4,19 +4,19 @@
 
 stdenv.mkDerivation rec {
   pname = "intel-gmmlib";
-  version = "19.4.1";
+  version = "20.1.1";
 
   src = fetchFromGitHub {
     owner  = "intel";
     repo   = "gmmlib";
     rev    = "${pname}-${version}";
-    sha256 = "167g5rmrmzmfp4y4vghyxqi4schvvkwax3cvqgniqx8q1ib5l346";
+    sha256 = "0k130yiq8n34ppddpgl7kwq5w2y7n49jxiyk7x52y773m97xd6y1";
   };
 
   nativeBuildInputs = [ cmake ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/intel/gmmlib;
+    homepage = "https://github.com/intel/gmmlib";
     license = licenses.mit;
     description = "Intel Graphics Memory Management Library";
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/development/libraries/java/commons/lang/default.nix b/pkgs/development/libraries/java/commons/lang/default.nix
index 675265ed4e3..96d2a76df01 100644
--- a/pkgs/development/libraries/java/commons/lang/default.nix
+++ b/pkgs/development/libraries/java/commons/lang/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  version = "3.9";
+  version = "3.10";
   pname = "commons-lang";
 
   src = fetchurl {
     url    = "mirror://apache/commons/lang/binaries/commons-lang3-${version}-bin.tar.gz";
-    sha256 = "0l0q1hnicvpbjmxl81ig3rwc212x5sdfnlg3cniwbmnx8fxjgbki";
+    sha256 = "144057jrx1jral6dnnb039h3k8rnrx0nj3ii428s725jfhazg68f";
   };
 
   installPhase = ''
diff --git a/pkgs/development/libraries/json-glib/default.nix b/pkgs/development/libraries/json-glib/default.nix
index 9a18b025fab..f811c0b09f8 100644
--- a/pkgs/development/libraries/json-glib/default.nix
+++ b/pkgs/development/libraries/json-glib/default.nix
@@ -14,7 +14,7 @@ in stdenv.mkDerivation rec {
   };
 
   propagatedBuildInputs = [ glib ];
-  nativeBuildInputs = [ meson ninja pkgconfig gettext gobject-introspection ];
+  nativeBuildInputs = [ meson ninja pkgconfig gettext gobject-introspection glib ];
   buildInputs = stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/kde-frameworks/fetch.sh b/pkgs/development/libraries/kde-frameworks/fetch.sh
index d4fcf620db6..b7e6d781471 100644
--- a/pkgs/development/libraries/kde-frameworks/fetch.sh
+++ b/pkgs/development/libraries/kde-frameworks/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( https://download.kde.org/stable/frameworks/5.66/ )
+WGET_ARGS=( https://download.kde.org/stable/frameworks/5.68/ )
diff --git a/pkgs/development/libraries/kde-frameworks/kcmutils/kcmutils-debug-module-loader.patch b/pkgs/development/libraries/kde-frameworks/kcmutils/kcmutils-debug-module-loader.patch
index 0411755f45a..f966064f929 100644
--- a/pkgs/development/libraries/kde-frameworks/kcmutils/kcmutils-debug-module-loader.patch
+++ b/pkgs/development/libraries/kde-frameworks/kcmutils/kcmutils-debug-module-loader.patch
@@ -2,12 +2,12 @@ Index: kcmutils-5.33.0/src/kcmoduleloader.cpp
 ===================================================================
 --- kcmutils-5.33.0.orig/src/kcmoduleloader.cpp
 +++ kcmutils-5.33.0/src/kcmoduleloader.cpp
-@@ -96,7 +96,7 @@ KCModule *KCModuleLoader::loadModule(con
-             KPluginLoader loader(KPluginLoader::findPlugin(QLatin1String("kcms/") + mod.service()->library()));
-             KPluginFactory* factory = loader.factory();
-             if (!factory) {
--                qWarning() << "Error loading plugin:" << loader.errorString();
-+                qWarning() << "Error loading KCM plugin" << mod.service()->library() << loader.errorString();
-             } else {
-                 KQuickAddons::ConfigModule *cm = factory->create<KQuickAddons::ConfigModule >();
-                 if (!cm) {
+@@ -95,7 +95,7 @@ KCModule *KCModuleLoader::loadModule(const KCModuleInfo &mod, ErrorReporting rep
+         KPluginLoader loader(KPluginLoader::findPlugin(QLatin1String("kcms/") + mod.service()->library()));
+         KPluginFactory* factory = loader.factory();
+         if (!factory) {
+-            qWarning() << "Couldn't load plugin:" << loader.errorString();
++            qWarning() << "Error loading KCM plugin" << mod.service()->library() << loader.errorString();
+         } else {
+             std::unique_ptr<KQuickAddons::ConfigModule> cm(factory->create<KQuickAddons::ConfigModule>(nullptr, args2));
+             if (!cm) {
diff --git a/pkgs/development/libraries/kde-frameworks/srcs.nix b/pkgs/development/libraries/kde-frameworks/srcs.nix
index 2441ff69359..ffea42c130f 100644
--- a/pkgs/development/libraries/kde-frameworks/srcs.nix
+++ b/pkgs/development/libraries/kde-frameworks/srcs.nix
@@ -1,661 +1,662 @@
-# DO NOT EDIT! This file is generated automatically by fetch-kde-qt.sh
+# DO NOT EDIT! This file is generated automatically.
+# Command: ./maintainers/scripts/fetch-kde-qt.sh pkgs/development/libraries/kde-frameworks
 { fetchurl, mirror }:
 
 {
   attica = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/attica-5.66.0.tar.xz";
-      sha256 = "e87ea061d393104804aa65db69ec3489512b472d8fb821c9fc49ffdcb85177fb";
-      name = "attica-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/attica-5.68.0.tar.xz";
+      sha256 = "9b4001a32831c9bae1d44161247acd5e6d3048ca2ece98c2c756c72a1464b9e9";
+      name = "attica-5.68.0.tar.xz";
     };
   };
   baloo = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/baloo-5.66.0.tar.xz";
-      sha256 = "9495869eee72f587efadc8a848c3f76b93a1dcb1914c8e818d7084451107a1f8";
-      name = "baloo-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/baloo-5.68.0.tar.xz";
+      sha256 = "4b599fb279ef92dc4f575847767c370f2633b27e884e372c3f7b92f08917865e";
+      name = "baloo-5.68.0.tar.xz";
     };
   };
   bluez-qt = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/bluez-qt-5.66.0.tar.xz";
-      sha256 = "cc3f3fcc1df87b61480549d658c1a27690661aaa4f22a65552efe3f6bf41c887";
-      name = "bluez-qt-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/bluez-qt-5.68.0.tar.xz";
+      sha256 = "99889cac874820e83a32bee938b6cc8e25dca6a3013d4a589ac7b8f5d32b4224";
+      name = "bluez-qt-5.68.0.tar.xz";
     };
   };
   breeze-icons = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/breeze-icons-5.66.0.tar.xz";
-      sha256 = "445a77204c7d9ac398e7f1d1594cd93e719665c85c7fb9ef71fde1ce68cb64d7";
-      name = "breeze-icons-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/breeze-icons-5.68.0.tar.xz";
+      sha256 = "750fff6560abfa85a2243187d14f1b8f1d3d1c4097d84cbf8c58d2f48102fe8d";
+      name = "breeze-icons-5.68.0.tar.xz";
     };
   };
   extra-cmake-modules = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/extra-cmake-modules-5.66.0.tar.xz";
-      sha256 = "2ff1a4ede28488ea787e742ab37edaacc5f59bf9188476e48f681ce23300b9c4";
-      name = "extra-cmake-modules-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/extra-cmake-modules-5.68.0.tar.xz";
+      sha256 = "4d60869ca96a323b56f00b40c4728a70dfebe2132bbae040442a6a2ef90e2d6e";
+      name = "extra-cmake-modules-5.68.0.tar.xz";
     };
   };
   frameworkintegration = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/frameworkintegration-5.66.0.tar.xz";
-      sha256 = "55c01613436781d74652bef19fc594448cdee4c002d5e1713b583473455f54d8";
-      name = "frameworkintegration-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/frameworkintegration-5.68.0.tar.xz";
+      sha256 = "5bb3c2e56b2c4c41d8a472363f80445fd3fc28656e6a3163d48ed826a133985a";
+      name = "frameworkintegration-5.68.0.tar.xz";
     };
   };
   kactivities = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kactivities-5.66.0.tar.xz";
-      sha256 = "7c37c8f189cb3c9f0cacbcef606562d8bc596e685d2a47bc9994deae6e69f41f";
-      name = "kactivities-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kactivities-5.68.0.tar.xz";
+      sha256 = "1853135feb6adfec252e6fab0b1472450422afd5998a9a31d942e8672fbe7111";
+      name = "kactivities-5.68.0.tar.xz";
     };
   };
   kactivities-stats = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kactivities-stats-5.66.0.tar.xz";
-      sha256 = "567de599a8fd8b6a5304fc1696e24b069b4eaa7bbc643b1e760293d8c1162b73";
-      name = "kactivities-stats-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kactivities-stats-5.68.0.tar.xz";
+      sha256 = "fb645db4685113dfd98834f48d8941529fee53d5e26ec5e36cfee8a9bfae97ae";
+      name = "kactivities-stats-5.68.0.tar.xz";
     };
   };
   kapidox = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kapidox-5.66.0.tar.xz";
-      sha256 = "19af4d93adfa22ff4de832185c1e9191d35039394bb032ee60e33efc5cc456db";
-      name = "kapidox-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kapidox-5.68.0.tar.xz";
+      sha256 = "4f60582cb0771c38733989f192694636b1c93ecae290bfbe551030dd397e976e";
+      name = "kapidox-5.68.0.tar.xz";
     };
   };
   karchive = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/karchive-5.66.0.tar.xz";
-      sha256 = "434f315af624d315b06a35ba5e71e570f36ca454af891833d6e896e42edf23d8";
-      name = "karchive-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/karchive-5.68.0.tar.xz";
+      sha256 = "518f07629d87e5778e1d8ce066f5590941472d9fffa7bd74819759be5c6edf0d";
+      name = "karchive-5.68.0.tar.xz";
     };
   };
   kauth = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kauth-5.66.0.tar.xz";
-      sha256 = "f167ec8f926caf348a161a39e0c0588f517fe3a49ab4f39c1dfa94f47e104414";
-      name = "kauth-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kauth-5.68.0.tar.xz";
+      sha256 = "b9a7cd724709ea188852f7656fbeda2dc3cc40cc5d09573049c2680c0edbd41f";
+      name = "kauth-5.68.0.tar.xz";
     };
   };
   kbookmarks = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kbookmarks-5.66.0.tar.xz";
-      sha256 = "b225463ec0fe2424a1f5e70c83b02e3ece6a3ca80832cd2621732d18d7160a43";
-      name = "kbookmarks-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kbookmarks-5.68.0.tar.xz";
+      sha256 = "80dc06188a5e1d960d46f527bd82d9b79df75a785164fa29a088a7b705abbf84";
+      name = "kbookmarks-5.68.0.tar.xz";
     };
   };
   kcalendarcore = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kcalendarcore-5.66.0.tar.xz";
-      sha256 = "bbdb48c775ccc1e1bdba962b5ccdc0611a2d14523076d33c4507c05db3ab33d3";
-      name = "kcalendarcore-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kcalendarcore-5.68.0.tar.xz";
+      sha256 = "50ffbe4feb9a602c09e130d6f10f0f260fa7625bc266003697895e1d716d6ba9";
+      name = "kcalendarcore-5.68.0.tar.xz";
     };
   };
   kcmutils = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kcmutils-5.66.0.tar.xz";
-      sha256 = "e02dbf996ed93bdc2813a2a64dcb0ddeb54987dd84bbe787bd890b17d57e4a85";
-      name = "kcmutils-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kcmutils-5.68.0.tar.xz";
+      sha256 = "a688d54286fe11b23e11e2100536a513a332d2a7d784fcbebeaccbfb980d83d1";
+      name = "kcmutils-5.68.0.tar.xz";
     };
   };
   kcodecs = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kcodecs-5.66.0.tar.xz";
-      sha256 = "0dcb684ad75374bbab82b90bda20e914cf656bd51a6dff69bbb1bfc650481a05";
-      name = "kcodecs-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kcodecs-5.68.0.tar.xz";
+      sha256 = "5f1e6ae3a51ca817aa0a5082ce4ce5490cb527388ef1888a642fb374c5e2bb48";
+      name = "kcodecs-5.68.0.tar.xz";
     };
   };
   kcompletion = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kcompletion-5.66.0.tar.xz";
-      sha256 = "be5e272e257b9fe5b951d7c596fef7c75b16886e6b1cd5ebff60d87bd6dd495d";
-      name = "kcompletion-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kcompletion-5.68.0.tar.xz";
+      sha256 = "642d68b4c472e11a8861a61238297633be288bfd72c13547707754f1ae2be33a";
+      name = "kcompletion-5.68.0.tar.xz";
     };
   };
   kconfig = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kconfig-5.66.0.tar.xz";
-      sha256 = "c0df73bde40162a5ffc20604c2ad343e71a6df852c3f7b05e70e1464f5f63256";
-      name = "kconfig-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kconfig-5.68.0.tar.xz";
+      sha256 = "c3bf138a7a4d002475f2483987baf40a61cda7d491c3cc292dd2c6da726ee898";
+      name = "kconfig-5.68.0.tar.xz";
     };
   };
   kconfigwidgets = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kconfigwidgets-5.66.0.tar.xz";
-      sha256 = "730834528307c65691d67c901f1c186b49d74ee986ef75e171e867e8751bf10a";
-      name = "kconfigwidgets-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kconfigwidgets-5.68.0.tar.xz";
+      sha256 = "f50421e9dbb6669e8d7c10605f7779ad03f30ea7c9c4451a70a7be66cd9df995";
+      name = "kconfigwidgets-5.68.0.tar.xz";
     };
   };
   kcontacts = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kcontacts-5.66.0.tar.xz";
-      sha256 = "08086f554eb4718e91a9e96d143ba05fc741289928db9bcc21b21ca7125b0017";
-      name = "kcontacts-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kcontacts-5.68.0.tar.xz";
+      sha256 = "532f1e89c7412e971db8c431d627d38144470ddf5c978a7fa9348e418b6cd3c3";
+      name = "kcontacts-5.68.0.tar.xz";
     };
   };
   kcoreaddons = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kcoreaddons-5.66.0.tar.xz";
-      sha256 = "8a8edf566cb08ad83cb17f942eeb8746993249cd0f7679f7eb810201b85e464b";
-      name = "kcoreaddons-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kcoreaddons-5.68.0.tar.xz";
+      sha256 = "c578ae30b4161e45e672d613d2d9c5575a849d21909d9817f90a441044df65d7";
+      name = "kcoreaddons-5.68.0.tar.xz";
     };
   };
   kcrash = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kcrash-5.66.0.tar.xz";
-      sha256 = "5a518059de3f3e85ee7b38a0edf348d097993518ce9b17504470f0d8aad3f2e4";
-      name = "kcrash-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kcrash-5.68.0.tar.xz";
+      sha256 = "60daf2cee87c652619b098b688edce6f993c7960783159cd8be9d9145df29f7f";
+      name = "kcrash-5.68.0.tar.xz";
     };
   };
   kdbusaddons = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kdbusaddons-5.66.0.tar.xz";
-      sha256 = "ee600f15af2fb9a28ad15f7e0689d519211fa63b86f2e6c356bd32530ebdfa46";
-      name = "kdbusaddons-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kdbusaddons-5.68.0.tar.xz";
+      sha256 = "839fe42f9ac8df353f87245110fd7b515a8eb29f0840f54481bd89e5175bf1af";
+      name = "kdbusaddons-5.68.0.tar.xz";
     };
   };
   kdeclarative = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kdeclarative-5.66.0.tar.xz";
-      sha256 = "ed3a334d8bce6d70e68e013d4210bd6e11cb2ebce9ede4c1813f44dada7eca73";
-      name = "kdeclarative-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kdeclarative-5.68.0.tar.xz";
+      sha256 = "96a032bcb360e0ffcfe51d4d2f6153786682c2f967592bffcf15b9e6cd4cd3ae";
+      name = "kdeclarative-5.68.0.tar.xz";
     };
   };
   kded = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kded-5.66.0.tar.xz";
-      sha256 = "52223e641c4e8e3158220ed7b6c48e4c3f3e67f882603ada0e3757b4136255a4";
-      name = "kded-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kded-5.68.0.tar.xz";
+      sha256 = "b03afe48fbdbd7d92c46b3b60bdb4b825f77e1a9d00c16a5f236b24a0135e4b7";
+      name = "kded-5.68.0.tar.xz";
     };
   };
   kdelibs4support = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/portingAids/kdelibs4support-5.66.0.tar.xz";
-      sha256 = "314d0ddb95c024c3d36dd262fcaa9295b462e6430f84b22c82f145029e3b2708";
-      name = "kdelibs4support-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/portingAids/kdelibs4support-5.68.0.tar.xz";
+      sha256 = "2fca7bf9d31b081e7568631b6b6d2f7847068217261e47ef0dea106470c22df1";
+      name = "kdelibs4support-5.68.0.tar.xz";
     };
   };
   kdesignerplugin = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/portingAids/kdesignerplugin-5.66.0.tar.xz";
-      sha256 = "a7f9c530d8c7d214a176ee381541bd45f3a000a3e86404040b11f1394912d40b";
-      name = "kdesignerplugin-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/portingAids/kdesignerplugin-5.68.0.tar.xz";
+      sha256 = "ae433e0eeaf0007312b1f32fc4349cf26c34617a5a9951ae4155c5c4e4009b72";
+      name = "kdesignerplugin-5.68.0.tar.xz";
     };
   };
   kdesu = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kdesu-5.66.0.tar.xz";
-      sha256 = "764d30acb0ef1d609c9454ecabb939bd64a814442e01aba769eba0673b56f88a";
-      name = "kdesu-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kdesu-5.68.0.tar.xz";
+      sha256 = "427ba50bcd14308980cbdfdc77a6b7419277942a42d83da72ff3afbc1ec78903";
+      name = "kdesu-5.68.0.tar.xz";
     };
   };
   kdewebkit = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/portingAids/kdewebkit-5.66.0.tar.xz";
-      sha256 = "f73d2599ce2269eaab45ddc11bdeb49dc887e950ded57454f3fd6499c370a777";
-      name = "kdewebkit-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/portingAids/kdewebkit-5.68.0.tar.xz";
+      sha256 = "181b14bd80e9f34aa2f896d39aca5be91f65d65bfaaf47660e91fdd98b7f36a2";
+      name = "kdewebkit-5.68.0.tar.xz";
     };
   };
   kdnssd = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kdnssd-5.66.0.tar.xz";
-      sha256 = "e280246212329f2834437ea3e84971fc85f3a3e6824963322e1f5de6aa04709c";
-      name = "kdnssd-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kdnssd-5.68.0.tar.xz";
+      sha256 = "3369da85c0088c375f2123a82132fb84490c46ebc8e9cd1253c795ef45fd4403";
+      name = "kdnssd-5.68.0.tar.xz";
     };
   };
   kdoctools = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kdoctools-5.66.0.tar.xz";
-      sha256 = "41e4ca7aceab17919ef4a82ad99606f520ebfe57f30205597b4184f7a3730a7a";
-      name = "kdoctools-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kdoctools-5.68.0.tar.xz";
+      sha256 = "93f5bee9dfaacacacfbeb3e915b192b5e645c1d01057b0cea4081c9ae5285670";
+      name = "kdoctools-5.68.0.tar.xz";
     };
   };
   kemoticons = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kemoticons-5.66.0.tar.xz";
-      sha256 = "dc307192d883108134da104d1507709a3b80c5b5e9984377840bd42d39a431dd";
-      name = "kemoticons-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kemoticons-5.68.0.tar.xz";
+      sha256 = "e03fe81ad34e107dc5fe61f9bf424ecef7716bf8a62f8abb78fd3f6bd6806f56";
+      name = "kemoticons-5.68.0.tar.xz";
     };
   };
   kfilemetadata = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kfilemetadata-5.66.0.tar.xz";
-      sha256 = "d78c2128887591229e6c61c60e77af8647e407d570b07892f5f06ab682f807b9";
-      name = "kfilemetadata-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kfilemetadata-5.68.0.tar.xz";
+      sha256 = "c2a8aee8243efa30fc921b7f50b390b47ee2cf83aa83b125a530a25de6d6fe21";
+      name = "kfilemetadata-5.68.0.tar.xz";
     };
   };
   kglobalaccel = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kglobalaccel-5.66.0.tar.xz";
-      sha256 = "fae805994f946791525da65ca15f93b65b2001241c7539ad04b3aaef937fb1c3";
-      name = "kglobalaccel-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kglobalaccel-5.68.0.tar.xz";
+      sha256 = "2eb710a3f29cbc8b7875fb3e8315d7c8e3b5bb93867e0a34cd5cdbac690bcbbf";
+      name = "kglobalaccel-5.68.0.tar.xz";
     };
   };
   kguiaddons = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kguiaddons-5.66.0.tar.xz";
-      sha256 = "379e5ed87b00d344a13e424e39d97d74d494c503400bcd72df132de74c8cc591";
-      name = "kguiaddons-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kguiaddons-5.68.0.tar.xz";
+      sha256 = "cdbf694e92b47358c2e2c31917bf5f01382042c2cb99b65faf3bc00a0eb52c64";
+      name = "kguiaddons-5.68.0.tar.xz";
     };
   };
   kholidays = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kholidays-5.66.0.tar.xz";
-      sha256 = "2d9bb70fbcb3a45208409228b5e5a88b0cb00fe8f2621e2e938bc77c2df11f02";
-      name = "kholidays-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kholidays-5.68.0.tar.xz";
+      sha256 = "067a544c22f5988cf959a475b66ed62e419b975b3ee22810667a076f3d50dbba";
+      name = "kholidays-5.68.0.tar.xz";
     };
   };
   khtml = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/portingAids/khtml-5.66.0.tar.xz";
-      sha256 = "ee34b082760262fb9b5e287960955075ec72179585e51567350a08bf0b4b7a10";
-      name = "khtml-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/portingAids/khtml-5.68.0.tar.xz";
+      sha256 = "af97da0a5d877c928d98690c3629a8f9788b29b27f583c9e3e26144a6abb9dcc";
+      name = "khtml-5.68.0.tar.xz";
     };
   };
   ki18n = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/ki18n-5.66.0.tar.xz";
-      sha256 = "9622337a513fcb8f0b5100c218b9fa85617f92024e5d7feada6d071f58a329e3";
-      name = "ki18n-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/ki18n-5.68.0.tar.xz";
+      sha256 = "2c59dd55d032c95710e338e376a31bf11d799bceba8ebfdb148c8b77067a1e92";
+      name = "ki18n-5.68.0.tar.xz";
     };
   };
   kiconthemes = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kiconthemes-5.66.0.tar.xz";
-      sha256 = "93fa9b8d0f951c2c9991f366081f98670086f2b66a740d7be95b64c35dff111d";
-      name = "kiconthemes-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kiconthemes-5.68.0.tar.xz";
+      sha256 = "ac3f322f2644dd0468cd2b07cc0c7f853f1ac4bc714fe532bbe92e88141f6729";
+      name = "kiconthemes-5.68.0.tar.xz";
     };
   };
   kidletime = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kidletime-5.66.0.tar.xz";
-      sha256 = "66e891b33ed9026ed6fd211cd1ecf3405255b19d3a58199b87af0b22a40d7185";
-      name = "kidletime-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kidletime-5.68.0.tar.xz";
+      sha256 = "cd6309d403ea36553abc99af4fa7e4ed3f8b3b2c55d14887ef09d68e5627b3e7";
+      name = "kidletime-5.68.0.tar.xz";
     };
   };
   kimageformats = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kimageformats-5.66.0.tar.xz";
-      sha256 = "c3b02befbb03f25deca0c7ffafea8c8a5eb79e21d8e2e566bf6fddf4f8afe04d";
-      name = "kimageformats-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kimageformats-5.68.0.tar.xz";
+      sha256 = "498fab29d19f10f2c91c796134f959b2cf3ce8372087b5eeb62f07e62af85949";
+      name = "kimageformats-5.68.0.tar.xz";
     };
   };
   kinit = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kinit-5.66.0.tar.xz";
-      sha256 = "6d9b6ea1542ff5529fd42f49240be37bbd8a3dfdfe8c45ac980b3c9b3fee650e";
-      name = "kinit-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kinit-5.68.0.tar.xz";
+      sha256 = "fa136996eaaa7d2adb5a341c2b7a1abe86d8139c6f18999e0b0dc0220e512559";
+      name = "kinit-5.68.0.tar.xz";
     };
   };
   kio = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kio-5.66.0.tar.xz";
-      sha256 = "c5350e20474b48c4fc02347186b7e4db24cb7580ba8c0f1e120b302e6b8db17d";
-      name = "kio-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kio-5.68.0.tar.xz";
+      sha256 = "9cc2fb2da84d6661a90eac81eb12c2e37921a5c34cbc1975f48d613e5a9d9eef";
+      name = "kio-5.68.0.tar.xz";
     };
   };
   kirigami2 = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kirigami2-5.66.0.tar.xz";
-      sha256 = "4e4abfeaa5e997de52076786dd0d314f178bc883b1b48a8b2cf37dd5979ac41b";
-      name = "kirigami2-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kirigami2-5.68.0.tar.xz";
+      sha256 = "ad5f78afc916e9cb26f23918a6eb1983d4a57aa7e4f7314a8c23fb81e0fcaf4b";
+      name = "kirigami2-5.68.0.tar.xz";
     };
   };
   kitemmodels = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kitemmodels-5.66.0.tar.xz";
-      sha256 = "5c8bcc36b9c29868ba7fa1ece9b83385379d7fed04937a92454ac94a356b3854";
-      name = "kitemmodels-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kitemmodels-5.68.0.tar.xz";
+      sha256 = "4f435db4362832cf63e49896229affd07f125567931fc499751d37ac3bafb149";
+      name = "kitemmodels-5.68.0.tar.xz";
     };
   };
   kitemviews = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kitemviews-5.66.0.tar.xz";
-      sha256 = "026461fa2e3e0237a56eb18a2817453c788514578f27a4aa0832b85fe98a09ab";
-      name = "kitemviews-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kitemviews-5.68.0.tar.xz";
+      sha256 = "5196885ac42347d67779df61a03d7f9c54f38053ff91348ef6fdc08439b4742f";
+      name = "kitemviews-5.68.0.tar.xz";
     };
   };
   kjobwidgets = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kjobwidgets-5.66.0.tar.xz";
-      sha256 = "34501be3ec85f0e71dba22669b3c862b297606e9bbff9aae466667c7075b6f8d";
-      name = "kjobwidgets-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kjobwidgets-5.68.0.tar.xz";
+      sha256 = "a11ba51ed0ab330f9a921cf0a61e604c27d88c1c2ea477a875bc0a0cd228a292";
+      name = "kjobwidgets-5.68.0.tar.xz";
     };
   };
   kjs = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/portingAids/kjs-5.66.0.tar.xz";
-      sha256 = "9bed62ebf9fba7d986ff7baabf6c4431f02826c9be70beda15cc62c692fb5f7f";
-      name = "kjs-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/portingAids/kjs-5.68.0.tar.xz";
+      sha256 = "18e3d7c667aec21e9e4d0d4730ad32a10475b7db5a574a674a8b90a6f9e0cd0e";
+      name = "kjs-5.68.0.tar.xz";
     };
   };
   kjsembed = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/portingAids/kjsembed-5.66.0.tar.xz";
-      sha256 = "58fe647901b69167b7c66a284c3181c2eda9c3b751548eb43bfe0795d10eb0ce";
-      name = "kjsembed-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/portingAids/kjsembed-5.68.0.tar.xz";
+      sha256 = "e9b9ac63f06447ffc6870806eb1507f0281281bae907fdbae42ee87a2b926db2";
+      name = "kjsembed-5.68.0.tar.xz";
     };
   };
   kmediaplayer = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/portingAids/kmediaplayer-5.66.0.tar.xz";
-      sha256 = "7ec1fea10a1017a0f32183fdc3b2cca38c11273240423ac0d393626436fd4230";
-      name = "kmediaplayer-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/portingAids/kmediaplayer-5.68.0.tar.xz";
+      sha256 = "aa07466ea27b2e042e03d76fe3a23c570ba6521f57a2a51dc0ddf32fc8276db0";
+      name = "kmediaplayer-5.68.0.tar.xz";
     };
   };
   knewstuff = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/knewstuff-5.66.0.tar.xz";
-      sha256 = "acef94661e3a0e42938224c17b90f835d6686d88a25698fe82980d7e1139b1fe";
-      name = "knewstuff-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/knewstuff-5.68.0.tar.xz";
+      sha256 = "f7c13b133f8b87ceece2d33d3f69215912b3b8c1dbb92ac39a1a6a0a42b7c93a";
+      name = "knewstuff-5.68.0.tar.xz";
     };
   };
   knotifications = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/knotifications-5.66.0.tar.xz";
-      sha256 = "aad3697a35109fad49fa286b7837d382599478bac33151cd7991c760866c12c1";
-      name = "knotifications-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/knotifications-5.68.0.tar.xz";
+      sha256 = "646bd3bac073fbf4f19f9047360325c933751d605cf1311f4c922d7457fbda51";
+      name = "knotifications-5.68.0.tar.xz";
     };
   };
   knotifyconfig = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/knotifyconfig-5.66.0.tar.xz";
-      sha256 = "fd9e09b099f49896b5afa6f5663ef82266531ec413d4edeb03ebc768314a37d8";
-      name = "knotifyconfig-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/knotifyconfig-5.68.0.tar.xz";
+      sha256 = "36c7c93964f2b9b584d73de1757f75d6ee8bb29ebe860e8fd6905354d2f10145";
+      name = "knotifyconfig-5.68.0.tar.xz";
     };
   };
   kpackage = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kpackage-5.66.0.tar.xz";
-      sha256 = "ae848a72e789a80d4a9d0346e90cb1038ebc784da6e7ff645411edd878554ab5";
-      name = "kpackage-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kpackage-5.68.0.tar.xz";
+      sha256 = "49727d89f1ca7ee504397d6e8b5cd25c26cd0061596b26d8ab2b64e3987d2d16";
+      name = "kpackage-5.68.0.tar.xz";
     };
   };
   kparts = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kparts-5.66.0.tar.xz";
-      sha256 = "6de2395cd6a9993f216f4dc4718f352bc4cbbd8147734c76be0e1e6149f733d0";
-      name = "kparts-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kparts-5.68.0.tar.xz";
+      sha256 = "fd17d0b0ff41d66c122530bbd8d1187f3271382207f63237ce72147865bf6d29";
+      name = "kparts-5.68.0.tar.xz";
     };
   };
   kpeople = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kpeople-5.66.0.tar.xz";
-      sha256 = "2728f08a9417ceb62aa9fc5a3340aed291aeb8a852e5f6f46c5a23fcc34168ab";
-      name = "kpeople-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kpeople-5.68.0.tar.xz";
+      sha256 = "1cae86d527d650d9fa311f6007cc33b5dcd858bcfe4eb7cae65b5402205c4675";
+      name = "kpeople-5.68.0.tar.xz";
     };
   };
   kplotting = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kplotting-5.66.0.tar.xz";
-      sha256 = "2a4387f748614f005cf67e549b9466c6eed52589ac58297857ba6a0be92c32ee";
-      name = "kplotting-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kplotting-5.68.0.tar.xz";
+      sha256 = "ccae7f90c016a1c517db820f352bb962f600678efdc4ac6b12e33d2c48f5c268";
+      name = "kplotting-5.68.0.tar.xz";
     };
   };
   kpty = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kpty-5.66.0.tar.xz";
-      sha256 = "a7fac6ced7504cec13a6776f0f4ba22db9878e44e2bbf85a219a2590e061c859";
-      name = "kpty-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kpty-5.68.0.tar.xz";
+      sha256 = "35b838cff80311db52d83e1f61bc365277d54929742ee34265f36a12ce7689e3";
+      name = "kpty-5.68.0.tar.xz";
     };
   };
   kquickcharts = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kquickcharts-5.66.0.tar.xz";
-      sha256 = "70fae10b2af1c504e3b166beb0a342cdef0e0f8eb42e53ba88f0e3b174331624";
-      name = "kquickcharts-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kquickcharts-5.68.0.tar.xz";
+      sha256 = "2cfb78bc2a7659a8c4ca6b072ff586c44e6da64e10b84a0fb0c5e3f03c944628";
+      name = "kquickcharts-5.68.0.tar.xz";
     };
   };
   kross = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/portingAids/kross-5.66.0.tar.xz";
-      sha256 = "109159996da54ec52ec8114ff05f88bdee6428e49ca84515ab73c457e0005ebc";
-      name = "kross-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/portingAids/kross-5.68.0.tar.xz";
+      sha256 = "2f5a79a2097f84bfd2033ca183abdbf6626f6e5dc2c6f781c312f15c97dace33";
+      name = "kross-5.68.0.tar.xz";
     };
   };
   krunner = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/krunner-5.66.0.tar.xz";
-      sha256 = "b7d67d61c0b0f96128c143e3d2694dc5ced88a7de73db0f4493f084de9dc9701";
-      name = "krunner-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/krunner-5.68.0.tar.xz";
+      sha256 = "4575ae1d658d32c15f9d57dc30616073e9d143d1a7f9632556906ef10e82e3b8";
+      name = "krunner-5.68.0.tar.xz";
     };
   };
   kservice = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kservice-5.66.0.tar.xz";
-      sha256 = "f1174576f6e3e562d7de65494efc2c1c3ac569c656b8301ffbe34576ea623a6a";
-      name = "kservice-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kservice-5.68.0.tar.xz";
+      sha256 = "c774ce1738081c17e6e105e506aa89c22a9db07e73972d4b18ce733ec8ad0a8a";
+      name = "kservice-5.68.0.tar.xz";
     };
   };
   ktexteditor = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/ktexteditor-5.66.0.tar.xz";
-      sha256 = "9156e5e554b17d73078e4df09ae524a684f6adff8c2bbd40705b67fd30a6cc0b";
-      name = "ktexteditor-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/ktexteditor-5.68.0.tar.xz";
+      sha256 = "dad373d4c136d113cca1ee6d700753563b7348813ff3229db670eedc63980cd6";
+      name = "ktexteditor-5.68.0.tar.xz";
     };
   };
   ktextwidgets = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/ktextwidgets-5.66.0.tar.xz";
-      sha256 = "dcc4595ceeecd3f59236ed303f2a0d61915c88eb36ad040a0562b60fb10cb9a1";
-      name = "ktextwidgets-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/ktextwidgets-5.68.0.tar.xz";
+      sha256 = "23b354469afed21c840ca36e2bb5b2b383ed5c4ec3690bb009e273c39fbe00c0";
+      name = "ktextwidgets-5.68.0.tar.xz";
     };
   };
   kunitconversion = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kunitconversion-5.66.0.tar.xz";
-      sha256 = "82db51b59ffdb5b2e69bc5c6ea54521acbc49ee5601baaf4e43cba50d12b418c";
-      name = "kunitconversion-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kunitconversion-5.68.0.tar.xz";
+      sha256 = "39ec06e2439306ce5b5efe5fe972d201e8c8e5fda634652cdc01c58427574adb";
+      name = "kunitconversion-5.68.0.tar.xz";
     };
   };
   kwallet = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kwallet-5.66.0.tar.xz";
-      sha256 = "6e48070e22a822a4003e1f7a739fe1e335bcf46982cbf4909d23a6e40689a827";
-      name = "kwallet-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kwallet-5.68.0.tar.xz";
+      sha256 = "7524eeffdde3166df182f0dbf0f3f461905547bfd7a06387c7c503cd1ab75ecf";
+      name = "kwallet-5.68.0.tar.xz";
     };
   };
   kwayland = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kwayland-5.66.0.tar.xz";
-      sha256 = "f43231f10a5294f7ac3d43d2b903f1cf9649364782ca55831e0c069a54cc170d";
-      name = "kwayland-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kwayland-5.68.0.tar.xz";
+      sha256 = "7c99bfac8f4bff457a5384c846be776c385649ced76be0f48699c6e12de24e7c";
+      name = "kwayland-5.68.0.tar.xz";
     };
   };
   kwidgetsaddons = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kwidgetsaddons-5.66.0.tar.xz";
-      sha256 = "311d8274469f03b1938da5a4f7ad17c82e3f96bc79ec28624cb748b13403f451";
-      name = "kwidgetsaddons-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kwidgetsaddons-5.68.0.tar.xz";
+      sha256 = "b4ff96b4ec6365e5f9e4da5e651da99be491799a4e6cfd982d0838dda39844ac";
+      name = "kwidgetsaddons-5.68.0.tar.xz";
     };
   };
   kwindowsystem = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kwindowsystem-5.66.0.tar.xz";
-      sha256 = "416e2ba52a8c95a6b161ca306724525c1971723cb12e7d8ad7fa108e0b820f0c";
-      name = "kwindowsystem-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kwindowsystem-5.68.0.tar.xz";
+      sha256 = "859c930a04c2588f792bfb9a28ed40b226db632b15c2851b186301b70d4c825a";
+      name = "kwindowsystem-5.68.0.tar.xz";
     };
   };
   kxmlgui = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kxmlgui-5.66.0.tar.xz";
-      sha256 = "a8f9ed354e30ff1f40306e876d96fcd1fa3a26a8e6acfccdeab8f3437d7231bc";
-      name = "kxmlgui-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kxmlgui-5.68.0.tar.xz";
+      sha256 = "6310e9a725a982d3b70672367c5858727437fe08c8e409458e48b6015c7bf10e";
+      name = "kxmlgui-5.68.0.tar.xz";
     };
   };
   kxmlrpcclient = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/kxmlrpcclient-5.66.0.tar.xz";
-      sha256 = "6b637c138414d93104477034737c9e866d99e43f883a3dfc45d3220df6c21e6c";
-      name = "kxmlrpcclient-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/kxmlrpcclient-5.68.0.tar.xz";
+      sha256 = "e49f2ab649aafb292e01dacefb7b6f28fc596606764bef61e7ce622b67241324";
+      name = "kxmlrpcclient-5.68.0.tar.xz";
     };
   };
   modemmanager-qt = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/modemmanager-qt-5.66.0.tar.xz";
-      sha256 = "50e24894d0243dbd2fc1a44a1e6368e3bb95a20c1ca56106d26752d5854d8be9";
-      name = "modemmanager-qt-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/modemmanager-qt-5.68.0.tar.xz";
+      sha256 = "9c0febf18a04b69e47cffdb4563390a79a4a673da856502cbf50d5c7707670ec";
+      name = "modemmanager-qt-5.68.0.tar.xz";
     };
   };
   networkmanager-qt = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/networkmanager-qt-5.66.0.tar.xz";
-      sha256 = "3089951c69845c4f6d1848bbbaf05116a72d4207a9f2d63b063a76c78549bf45";
-      name = "networkmanager-qt-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/networkmanager-qt-5.68.0.tar.xz";
+      sha256 = "6a9bea5e6d58f5322848114e4e827edadee6b5a890a3549446ff23a568325e2c";
+      name = "networkmanager-qt-5.68.0.tar.xz";
     };
   };
   oxygen-icons5 = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/oxygen-icons5-5.66.0.tar.xz";
-      sha256 = "c6275fdcd4883c143adf4f16450a63dcb8651073a205bd14c599ec6ab638e8ef";
-      name = "oxygen-icons5-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/oxygen-icons5-5.68.0.tar.xz";
+      sha256 = "75a8113e567d8cbba57bda3c8829d116d58ebf6bc5ace88aed7700b28a00c463";
+      name = "oxygen-icons5-5.68.0.tar.xz";
     };
   };
   plasma-framework = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/plasma-framework-5.66.0.tar.xz";
-      sha256 = "3263ccf95a6fcf8fde087d402d89d64c64c0130d4df62b95b860fada13aad419";
-      name = "plasma-framework-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/plasma-framework-5.68.0.tar.xz";
+      sha256 = "d27c7a62231784ecad1246f8a81b02fd6db2e9818244a06650fd6c972a69ea74";
+      name = "plasma-framework-5.68.0.tar.xz";
     };
   };
   prison = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/prison-5.66.0.tar.xz";
-      sha256 = "ff5b4ae32ae44f2aea4b9254afe54af0fc9ea742517116cd2322e1a71a7315ce";
-      name = "prison-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/prison-5.68.0.tar.xz";
+      sha256 = "22e2b8e9ca06e4fb7ab91afeddbaebe6e2b6792bbcd5ba6c440c6fad0df176b7";
+      name = "prison-5.68.0.tar.xz";
     };
   };
   purpose = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/purpose-5.66.0.tar.xz";
-      sha256 = "33b8ec6ede6a1deee6c85e45ebe42aca9a3add7884ee68aa8f1a16ed0637b4db";
-      name = "purpose-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/purpose-5.68.0.tar.xz";
+      sha256 = "c8c8f8244b568e52b4c02b89b71611bb8ba7cd07173645caa022b4bd90b41ab0";
+      name = "purpose-5.68.0.tar.xz";
     };
   };
   qqc2-desktop-style = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/qqc2-desktop-style-5.66.0.tar.xz";
-      sha256 = "49bb518fc9f3c08cb330b1d82cb5c68d9ea358a562c6e460ea06aaaa13812b87";
-      name = "qqc2-desktop-style-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/qqc2-desktop-style-5.68.0.tar.xz";
+      sha256 = "0f522861e5757de6a1205c86a2e5f8d2a7375c96eac1ece95d03a35858dc7b03";
+      name = "qqc2-desktop-style-5.68.0.tar.xz";
     };
   };
   solid = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/solid-5.66.0.tar.xz";
-      sha256 = "78deab8c55c30f2c923795730a9655b4d05a75cd6240bc0caa64104b141a3a39";
-      name = "solid-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/solid-5.68.0.tar.xz";
+      sha256 = "472c1934b3c9cf917f28ac0e5b0864de442b96852744c301d88d8ab7269d74c3";
+      name = "solid-5.68.0.tar.xz";
     };
   };
   sonnet = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/sonnet-5.66.0.tar.xz";
-      sha256 = "5ca700e8e9954b380cc5f4cee0f392888ae240ccd2c4d3a37a2f41f8ac9c8294";
-      name = "sonnet-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/sonnet-5.68.0.tar.xz";
+      sha256 = "079c4f5fcb9fe670e1242b18648e178aaa01eb81dbdfc881805eea1ec585bd67";
+      name = "sonnet-5.68.0.tar.xz";
     };
   };
   syndication = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/syndication-5.66.0.tar.xz";
-      sha256 = "5e6c90360461b820a48069af2838cffbcbedfe8bcd042535823e1cf1b43cd6b7";
-      name = "syndication-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/syndication-5.68.0.tar.xz";
+      sha256 = "0715fc1b7312b5081521b781d0878d88cc70dcb77272ee173cecca03cc221fd3";
+      name = "syndication-5.68.0.tar.xz";
     };
   };
   syntax-highlighting = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/syntax-highlighting-5.66.0.tar.xz";
-      sha256 = "e572719cb64524c6abc476eeccca56f54cb0d7352fc747af3036dbe817566c25";
-      name = "syntax-highlighting-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/syntax-highlighting-5.68.0.tar.xz";
+      sha256 = "a857c743aa60b21eea7e4b986e8b195882aa2c18358412e767e68d93ce35e134";
+      name = "syntax-highlighting-5.68.0.tar.xz";
     };
   };
   threadweaver = {
-    version = "5.66.0";
+    version = "5.68.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.66/threadweaver-5.66.0.tar.xz";
-      sha256 = "a63db1ef8421e68534f5b9891013286fbad2ef8677f28c15ec733f086ae5cee3";
-      name = "threadweaver-5.66.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.68/threadweaver-5.68.0.tar.xz";
+      sha256 = "e28c0bfff375b3e1e9e4eec72f0a804f3f41c4ec5fd59af9b951708d229eff64";
+      name = "threadweaver-5.68.0.tar.xz";
     };
   };
 }
diff --git a/pkgs/development/libraries/kerberos/krb5-Fix-Linux-build-error-with-musl-libc.patch b/pkgs/development/libraries/kerberos/krb5-Fix-Linux-build-error-with-musl-libc.patch
new file mode 100644
index 00000000000..0f33815b6e9
--- /dev/null
+++ b/pkgs/development/libraries/kerberos/krb5-Fix-Linux-build-error-with-musl-libc.patch
@@ -0,0 +1,32 @@
+From cbdbc8d00d31344fafe00e0fdf984e04e631f7c4 Mon Sep 17 00:00:00 2001
+From: TBK <tbk@jjtc.eu>
+Date: Wed, 26 Feb 2020 21:12:45 +0100
+Subject: [PATCH] Fix Linux build error with musl libc
+
+Commit bf5953c549a6d279977df69ffe89b2ba51460eaf caused a build failure
+on non-glibc Linux build environments.  Change the conditionalization
+so that __GLIBC_PREREQ will only be used if it is defined.
+
+[ghudson@mit.edu: simplified conditionals; rewrote commit message]
+
+ticket: 8880 (new)
+tags: pullup
+target_version: 1.18-next
+---
+ src/util/support/plugins.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/src/util/support/plugins.c b/src/util/support/plugins.c
+index 3329db7dc3..1644d16fd0 100644
+--- a/src/util/support/plugins.c
++++ b/src/util/support/plugins.c
+@@ -62,8 +62,7 @@
+  * dlopen() with RTLD_NODELETE, we weren't going to unload the plugin objects
+  * anyway.
+  */
+-#ifdef __linux__
+-#include <features.h>
++#ifdef __GLIBC__PREREQ
+ #if ! __GLIBC_PREREQ(2, 25)
+ #define dlclose(x)
+ #endif
diff --git a/pkgs/development/libraries/kerberos/krb5-Fix-typo-in-musl-build-fix.patch b/pkgs/development/libraries/kerberos/krb5-Fix-typo-in-musl-build-fix.patch
new file mode 100644
index 00000000000..f8718606a7f
--- /dev/null
+++ b/pkgs/development/libraries/kerberos/krb5-Fix-typo-in-musl-build-fix.patch
@@ -0,0 +1,28 @@
+From b009cca2026b615ef5386faa4c0230bc27c4161d Mon Sep 17 00:00:00 2001
+From: Greg Hudson <ghudson@mit.edu>
+Date: Thu, 12 Mar 2020 00:44:10 -0400
+Subject: [PATCH] Fix typo in musl build fix
+
+Commit cbdbc8d00d31344fafe00e0fdf984e04e631f7c4 checked for
+__GLIBC__PREREQ instead of __GLIBC_PREREQ, thus accidentally reverting
+the workaround introduced in commit
+bf5953c549a6d279977df69ffe89b2ba51460eaf.  Fix the typo.
+
+ticket: 8880
+---
+ src/util/support/plugins.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/util/support/plugins.c b/src/util/support/plugins.c
+index 1644d16fd0..1ff10c354d 100644
+--- a/src/util/support/plugins.c
++++ b/src/util/support/plugins.c
+@@ -62,7 +62,7 @@
+  * dlopen() with RTLD_NODELETE, we weren't going to unload the plugin objects
+  * anyway.
+  */
+-#ifdef __GLIBC__PREREQ
++#ifdef __GLIBC_PREREQ
+ #if ! __GLIBC_PREREQ(2, 25)
+ #define dlclose(x)
+ #endif
diff --git a/pkgs/development/libraries/kerberos/krb5.nix b/pkgs/development/libraries/kerberos/krb5.nix
index 42965c0ad07..5ff3f313dcf 100644
--- a/pkgs/development/libraries/kerberos/krb5.nix
+++ b/pkgs/development/libraries/kerberos/krb5.nix
@@ -14,7 +14,7 @@ in
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "${type}krb5-${version}";
-  majorVersion = "1.18";
+  majorVersion = "1.18"; # remove patches below with next upgrade
   version = majorVersion;
 
   src = fetchurl {
@@ -22,6 +22,15 @@ stdenv.mkDerivation rec {
     sha256 = "121c5xsy3x0i4wdkrpw62yhvji6virbh6n30ypazkp0isws3k4bk";
   };
 
+  patches = optionals stdenv.hostPlatform.isMusl [
+    # TODO: Remove with next release > 1.18
+    # Patches to fix musl build with 1.18.
+    # Not using `fetchpatch` for these for now to avoid infinite recursion
+    # errors in downstream projects (unclear if it's a nixpkgs issue so far).
+    ./krb5-Fix-Linux-build-error-with-musl-libc.patch
+    ./krb5-Fix-typo-in-musl-build-fix.patch
+  ];
+
   outputs = [ "out" "dev" ];
 
   configureFlags = [ "--with-tcl=no" "--localstatedir=/var/lib"]
diff --git a/pkgs/development/libraries/khronos-ocl-icd-loader/default.nix b/pkgs/development/libraries/khronos-ocl-icd-loader/default.nix
index a57b103b0d9..3704cbb7794 100644
--- a/pkgs/development/libraries/khronos-ocl-icd-loader/default.nix
+++ b/pkgs/development/libraries/khronos-ocl-icd-loader/default.nix
@@ -1,24 +1,24 @@
-{ stdenv, fetchFromGitHub, opencl-clhpp, cmake, withTracing ? false }:
+{ stdenv, fetchFromGitHub, opencl-headers, cmake, withTracing ? false }:
 
 stdenv.mkDerivation rec {
   name = "khronos-ocl-icd-loader-${version}";
-  version = "6c03f8b";
+  version = "2020.03.13";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "OpenCL-ICD-Loader";
-    rev = "6c03f8b58fafd9dd693eaac826749a5cfad515f8";
-    sha256 = "00icrlc00dpc87prbd2j1350igi9pbgkz27hc3rf73s5994yn86a";
+    rev = "v${version}";
+    sha256 = "0zk6fyfrklx8a848613rfcx0y4yn0dsxkxzzl9pgdh9i6qdfjj9k";
   };
 
   patches = stdenv.lib.lists.optional withTracing ./tracing.patch;
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ opencl-clhpp ];
+  buildInputs = [ opencl-headers ];
 
   meta = with stdenv.lib; {
     description = "Offical Khronos OpenCL ICD Loader";
-    homepage = https://github.com/KhronosGroup/OpenCL-ICD-Loader;
+    homepage = "https://github.com/KhronosGroup/OpenCL-ICD-Loader";
     license = licenses.asl20;
     platforms = platforms.linux;
     maintainers = with maintainers; [ davidtwco ];
diff --git a/pkgs/development/libraries/khronos-ocl-icd-loader/tracing.patch b/pkgs/development/libraries/khronos-ocl-icd-loader/tracing.patch
index 415a1b1dfe4..cef22457e5a 100644
--- a/pkgs/development/libraries/khronos-ocl-icd-loader/tracing.patch
+++ b/pkgs/development/libraries/khronos-ocl-icd-loader/tracing.patch
@@ -1,10 +1,10 @@
 diff --git a/loader/icd.h b/loader/icd.h
-index a1b6969..cf4e272 100644
+index 34751e9..01a33fd 100644
 --- a/loader/icd.h
 +++ b/loader/icd.h
-@@ -122,7 +122,7 @@ void khrIcdContextPropertiesGetPlatform(
+@@ -123,7 +123,7 @@ void khrIcdContextPropertiesGetPlatform(
      cl_platform_id *outPlatform);
-
+ 
  // internal tracing macros
 -#if 0
 +#if 1
diff --git a/pkgs/development/libraries/ldb/default.nix b/pkgs/development/libraries/ldb/default.nix
index 12f7b176bb7..7ee869b53c3 100644
--- a/pkgs/development/libraries/ldb/default.nix
+++ b/pkgs/development/libraries/ldb/default.nix
@@ -1,49 +1,62 @@
-{ stdenv, fetchurl, python, pkgconfig, readline, tdb, talloc, tevent
-, popt, libxslt, docbook_xsl, docbook_xml_dtd_42, cmocka
+{ stdenv
+, fetchurl
+, python3
+, pkg-config
+, readline
+, tdb
+, talloc
+, tevent
+, popt
+, libxslt
+, docbook-xsl-nons
+, docbook_xml_dtd_42
+, cmocka
+, wafHook
 }:
 
 stdenv.mkDerivation rec {
-  name = "ldb-1.3.3";
+  pname = "ldb";
+  version = "2.1.1";
 
   src = fetchurl {
-    url = "mirror://samba/ldb/${name}.tar.gz";
-    sha256 = "14gsrm7dvyjpbpnc60z75j6fz2p187abm2h353lq95kx2bv70c1b"                                                                                                                                                             ;
+    url = "mirror://samba/ldb/${pname}-${version}.tar.gz";
+    sha256 = "jO+y8l/KkT+hinktDvsDrwf4f1uVGkze0DD1uY8lx7A=";
   };
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [
-    python readline tdb talloc tevent popt
-    libxslt docbook_xsl docbook_xml_dtd_42
-    cmocka
+  nativeBuildInputs = [
+    pkg-config
+    python3
+    wafHook
+    libxslt
+    docbook-xsl-nons
+    docbook_xml_dtd_42
   ];
 
-  patches = [
-    # CVE-2019-3824
-    # downloading the patch from debian as they have ported the patch from samba to ldb but otherwise is identical to
-    # https://bugzilla.samba.org/attachment.cgi?id=14857
-    (fetchurl {
-      name = "CVE-2019-3824.patch";
-      url = "https://sources.debian.org/data/main/l/ldb/2:1.1.27-1+deb9u1/debian/patches/CVE-2019-3824-master-v4-5-02.patch";
-      sha256 = "1idnqckvjh18rh9sbq90rr4sxfviha9nd1ca9pd6lai0y6r6q4yd";
-    })
+  buildInputs = [
+    python3
+    readline # required to build python
+    tdb
+    talloc
+    tevent
+    popt
+    cmocka
   ];
 
-  preConfigure = ''
-    sed -i 's,#!/usr/bin/env python,#!${python}/bin/python,g' buildtools/bin/waf
-  '';
+  wafPath = "buildtools/bin/waf";
 
-  configureFlags = [
+  wafConfigureFlags = [
     "--bundled-libraries=NONE"
     "--builtin-libraries=replace"
+    "--without-ldb-lmdb"
   ];
 
   stripDebugList = "bin lib modules";
 
   meta = with stdenv.lib; {
     description = "A LDAP-like embedded database";
-    homepage = https://ldb.samba.org/;
+    homepage = "https://ldb.samba.org/";
     license = licenses.lgpl3Plus;
     platforms = platforms.all;
   };
diff --git a/pkgs/development/libraries/leatherman/default.nix b/pkgs/development/libraries/leatherman/default.nix
index 48735c13ed1..1fab7ee28a8 100644
--- a/pkgs/development/libraries/leatherman/default.nix
+++ b/pkgs/development/libraries/leatherman/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "leatherman";
-  version = "1.10.0";
+  version = "1.11.0";
 
   src = fetchFromGitHub {
-    sha256 = "1kvvqvr0djz4gb770rs5h97zqcymvbzrmsw8kz2icvlmcicm7qd8";
+    sha256 = "1kp35gnph9myqxdxzyj1871ay19nfajxglzwai1gvsnh5840xnxy";
     rev = version;
     repo = "leatherman";
     owner = "puppetlabs";
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/puppetlabs/leatherman/;
+    homepage = "https://github.com/puppetlabs/leatherman/";
     description = "A collection of C++ and CMake utility libraries";
     license = licenses.asl20;
     maintainers = [ maintainers.womfoo ];
diff --git a/pkgs/development/libraries/libaacs/default.nix b/pkgs/development/libraries/libaacs/default.nix
index bda7d560fcd..2b3ef8c99c8 100644
--- a/pkgs/development/libraries/libaacs/default.nix
+++ b/pkgs/development/libraries/libaacs/default.nix
@@ -9,11 +9,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libaacs";
-  version  = "0.9.0";
+  version  = "0.10.0";
 
   src = fetchurl {
     url = "http://get.videolan.org/libaacs/${version}/${pname}-${version}.tar.bz2";
-    sha256 = "1kms92i0c7i1yl659kqjf19lm8172pnpik5lsxp19xphr74vvq27";
+    sha256 = "1zhjdcph8sqx7ak35s22kc736icwq135jlypggkp6vqyyygb3xlk";
   };
 
   buildInputs = [ libgcrypt libgpgerror ];
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ yacc flex ];
 
   meta = with stdenv.lib; {
-    homepage = https://www.videolan.org/developers/libaacs.html;
+    homepage = "https://www.videolan.org/developers/libaacs.html";
     description = "Library to access AACS protected Blu-Ray disks";
     license = licenses.lgpl21;
     maintainers = with maintainers; [ abbradar ];
diff --git a/pkgs/development/libraries/libbluray/default.nix b/pkgs/development/libraries/libbluray/default.nix
index daa349ca630..7bfd9a8a2d0 100644
--- a/pkgs/development/libraries/libbluray/default.nix
+++ b/pkgs/development/libraries/libbluray/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, fontconfig, autoreconfHook
+{ stdenv, fetchurl, pkgconfig, fontconfig, autoreconfHook, DiskArbitration
 , withJava ? false, jdk ? null, ant ? null
 , withAACS ? false, libaacs ? null
 , withBDplus ? false, libbdplus ? null
@@ -19,11 +19,11 @@ assert withFonts -> freetype != null;
 
 stdenv.mkDerivation rec {
   pname = "libbluray";
-  version  = "1.1.2";
+  version  = "1.2.0";
 
   src = fetchurl {
     url = "http://get.videolan.org/libbluray/${version}/${pname}-${version}.tar.bz2";
-    sha256 = "0hhbgkm11fw4pwbrklm76aiy54r6d7hk06yhl2fxq05i74i4bpd3";
+    sha256 = "04bcd53ml0zn8b4f9r1grs0yy20rcirji1v3pxzaf4i5zl3flhfd";
   };
 
   patches = optional withJava ./BDJ-JARFILE-path.patch;
@@ -36,6 +36,7 @@ stdenv.mkDerivation rec {
                 ++ optional withJava jdk
                 ++ optional withMetadata libxml2
                 ++ optional withFonts freetype
+                ++ optional stdenv.isDarwin DiskArbitration
                 ;
 
   propagatedBuildInputs = optional withAACS libaacs;
@@ -56,7 +57,7 @@ stdenv.mkDerivation rec {
                  ;
 
   meta = with stdenv.lib; {
-    homepage = http://www.videolan.org/developers/libbluray.html;
+    homepage = "http://www.videolan.org/developers/libbluray.html";
     description = "Library to access Blu-Ray disks for video playback";
     license = licenses.lgpl21;
     maintainers = with maintainers; [ abbradar ];
diff --git a/pkgs/development/libraries/libcroco/default.nix b/pkgs/development/libraries/libcroco/default.nix
deleted file mode 100644
index 90ed8c6d985..00000000000
--- a/pkgs/development/libraries/libcroco/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, libxml2, glib, gnome3 }:
-
-stdenv.mkDerivation rec {
-  pname = "libcroco";
-  version = "0.6.13";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1m110rbj5d2raxcdp4iz0qp172284945awrsbdlq99ksmqsc4zkn";
-  };
-
-  outputs = [ "out" "dev" ];
-  outputBin = "dev";
-
-  configureFlags = stdenv.lib.optional stdenv.isDarwin "--disable-Bsymbolic";
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libxml2 glib ];
-
-  passthru = {
-    updateScript = gnome3.updateScript {
-      packageName = pname;
-    };
-  };
-
-  meta = with stdenv.lib; {
-    description = "GNOME CSS2 parsing and manipulation toolkit";
-    homepage = https://gitlab.gnome.org/GNOME/libcroco;
-    license = licenses.lgpl2;
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/libdap/default.nix b/pkgs/development/libraries/libdap/default.nix
index baf93894420..4763e5983f9 100644
--- a/pkgs/development/libraries/libdap/default.nix
+++ b/pkgs/development/libraries/libdap/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://www.opendap.org/pub/source/${pname}-${version}.tar.gz";
-    sha256 = "17j6ca2qsp69a91lm11mwbs4l8q13xqcdz60l94avl5krymrqg47";
+    sha256 = "15jysnsmdjs7q4iafb4qzq4b76cfyvmbxgcxnqg4sr0x4bplwfnb";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/libdazzle/default.nix b/pkgs/development/libraries/libdazzle/default.nix
index 173ad6d2e85..19f9a5f889a 100644
--- a/pkgs/development/libraries/libdazzle/default.nix
+++ b/pkgs/development/libraries/libdazzle/default.nix
@@ -3,17 +3,17 @@
 
 stdenv.mkDerivation rec {
   pname = "libdazzle";
-  version = "3.34.1";
+  version = "3.36.0";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "dev";
 
   src = fetchurl {
     url = "mirror://gnome/sources/libdazzle/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "01cmcrd75b7ns7j2b4p6h7pv68vjhkcl9zbvzzx7pf4vknxir61x";
+    sha256 = "0n6r16a07in82cnzw91vl675pbjzbvazkxwbqxq2kihganzipcw2";
   };
 
-  nativeBuildInputs = [ ninja meson pkgconfig vala gobject-introspection libxml2 gtk-doc docbook_xsl docbook_xml_dtd_43 dbus xvfb_run ];
+  nativeBuildInputs = [ ninja meson pkgconfig vala gobject-introspection libxml2 gtk-doc docbook_xsl docbook_xml_dtd_43 dbus xvfb_run glib ];
   buildInputs = [ glib gtk3 ];
 
   mesonFlags = [
diff --git a/pkgs/development/libraries/libdvdnav/default.nix b/pkgs/development/libraries/libdvdnav/default.nix
index 8cca9091734..2afc11c6009 100644
--- a/pkgs/development/libraries/libdvdnav/default.nix
+++ b/pkgs/development/libraries/libdvdnav/default.nix
@@ -2,18 +2,18 @@
 
 stdenv.mkDerivation rec {
   pname = "libdvdnav";
-  version = "6.0.1";
+  version = "6.1.0";
 
   src = fetchurl {
     url = "http://get.videolan.org/libdvdnav/${version}/${pname}-${version}.tar.bz2";
-    sha256 = "0cv7j8irsv1n2dadlnhr6i1b8pann2ah6xpxic41f04my6ba6rp5";
+    sha256 = "0nzf1ir27s5vs1jrisdiw9ag2sc160k3gv7nplv9ypppm5gb35zn";
   };
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [libdvdread];
 
   meta = {
-    homepage = http://dvdnav.mplayerhq.hu/;
+    homepage = "http://dvdnav.mplayerhq.hu/";
     description = "A library that implements DVD navigation features such as DVD menus";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.wmertens ];
diff --git a/pkgs/development/libraries/libdvdread/default.nix b/pkgs/development/libraries/libdvdread/default.nix
index 8266e0f0b6d..c28ca339a65 100644
--- a/pkgs/development/libraries/libdvdread/default.nix
+++ b/pkgs/development/libraries/libdvdread/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libdvdread";
-  version = "6.0.2";
+  version = "6.1.0";
 
   src = fetchurl {
     url = "http://get.videolan.org/libdvdread/${version}/${pname}-${version}.tar.bz2";
-    sha256 = "1c7yqqn67m3y3n7nfrgrnzz034zjaw5caijbwbfrq89v46ph257r";
+    sha256 = "033mnhq3mx0qz3z85vw01rz5wzmx5ynadl7q1wm2spvx3ryvs6sh";
   };
 
   buildInputs = [libdvdcss];
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://dvdnav.mplayerhq.hu/;
+    homepage = "http://dvdnav.mplayerhq.hu/";
     description = "A library for reading DVDs";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.wmertens ];
diff --git a/pkgs/development/libraries/liberio/default.nix b/pkgs/development/libraries/liberio/default.nix
new file mode 100644
index 00000000000..b4023d5f36a
--- /dev/null
+++ b/pkgs/development/libraries/liberio/default.nix
@@ -0,0 +1,37 @@
+{ stdenv
+, fetchFromGitHub
+, autoreconfHook
+, systemd
+, pkg-config
+}:
+
+stdenv.mkDerivation rec {
+  pname = "liberio";
+  version = "unstable-2019-12-11";
+
+  src = fetchFromGitHub {
+    owner = "EttusResearch";
+    repo = "liberio";
+    rev = "81777e500d1c3b88d5048d46643fb5553eb5f786";
+    sha256 = "1n40lj5g497mmqh14vahdhy3jwvcry2pkc670p4c9f1pggp6ysgk";
+  };
+
+  nativeBuildInputs = [
+    pkg-config
+    autoreconfHook
+  ];
+
+  buildInputs = [
+    systemd
+  ];
+
+  doCheck = true;
+
+  meta = with stdenv.lib; {
+    description = "Ettus Research DMA I/O Library";
+    homepage = "https://github.com/EttusResearch/liberio";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.doronbehar ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/libraries/libev/default.nix b/pkgs/development/libraries/libev/default.nix
index 371c0b1d980..74aa8133a99 100644
--- a/pkgs/development/libraries/libev/default.nix
+++ b/pkgs/development/libraries/libev/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libev";
-  version="4.31";
+  version="4.33";
 
   src = fetchurl {
     url = "http://dist.schmorp.de/libev/Attic/${pname}-${version}.tar.gz";
-    sha256 = "0nkfqv69wfyy2bpga4d53iqydycpik8jp8x6q70353hia8mmv1gd";
+    sha256 = "1sjs4324is7fp21an4aas2z4dwsvs6z4xwrmp72vwpq1s6wbfzjh";
   };
 
   configureFlags = stdenv.lib.optional (static) "LDFLAGS=-static";
diff --git a/pkgs/development/libraries/libevdev/default.nix b/pkgs/development/libraries/libevdev/default.nix
index 1ee03db568b..9b1184f1c0b 100644
--- a/pkgs/development/libraries/libevdev/default.nix
+++ b/pkgs/development/libraries/libevdev/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "17pb5375njb1r05xmk0r57a2j986ihglh2n5nqcylbag4rj8mqg7";
   };
 
-  buildInputs = [ python3 ];
+  nativeBuildInputs = [ python3 ];
 
   meta = with stdenv.lib; {
     description = "Wrapper library for evdev devices";
diff --git a/pkgs/development/libraries/libfprint/default.nix b/pkgs/development/libraries/libfprint/default.nix
index 9a6db72ae05..cecb2b6750b 100644
--- a/pkgs/development/libraries/libfprint/default.nix
+++ b/pkgs/development/libraries/libfprint/default.nix
@@ -5,7 +5,7 @@
 , pkgconfig
 , meson
 , ninja
-, libusb
+, libusb1
 , pixman
 , glib
 , nss
@@ -47,7 +47,7 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    libusb
+    libusb1 # drop in 2.0 for gusb
     pixman
     glib
     nss
diff --git a/pkgs/development/libraries/libgpiod/default.nix b/pkgs/development/libraries/libgpiod/default.nix
index 76887347a18..6d77a28d55f 100644
--- a/pkgs/development/libraries/libgpiod/default.nix
+++ b/pkgs/development/libraries/libgpiod/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libgpiod";
-  version = "1.5";
+  version = "1.5.1";
 
   src = fetchurl {
     url = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/snapshot/libgpiod-${version}.tar.gz";
-    sha256 = "1r337ici2nvi9v2h33nf3b7nisirc4s8p31cpv1cg8jbzn3wi15g";
+    sha256 = "14iv8iwyvfznyifhkqz1bjh24dvb03gmpjn8v3fs6h734l93vvw5";
   };
 
   buildInputs = [ kmod ] ++ lib.optionals enablePython [ python3 ncurses ];
diff --git a/pkgs/development/libraries/libguestfs/default.nix b/pkgs/development/libraries/libguestfs/default.nix
index 8d480c2d882..411ae0a3316 100644
--- a/pkgs/development/libraries/libguestfs/default.nix
+++ b/pkgs/development/libraries/libguestfs/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     systemd fuse yajl libvirt gmp readline file hivex
     numactl xen libapparmor getopt perlPackages.ModuleBuild
   ] ++ (with perlPackages; [ perl libintl_perl GetoptLong SysVirt ])
-    ++ (with ocamlPackages; [ ocaml findlib ocamlbuild ocaml_libvirt ocaml_gettext ounit ])
+    ++ (with ocamlPackages; [ ocaml findlib ocamlbuild ocaml_libvirt gettext-stub ounit ])
     ++ stdenv.lib.optional javaSupport jdk;
 
   prePatch = ''
diff --git a/pkgs/development/libraries/libgweather/default.nix b/pkgs/development/libraries/libgweather/default.nix
index e51a10cfe8a..f782176108a 100644
--- a/pkgs/development/libraries/libgweather/default.nix
+++ b/pkgs/development/libraries/libgweather/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libgweather";
-  version = "3.34.0";
+  version = "3.36.0";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1fgiqswkhiaijanml3mb16ajn5aanrk7x6yiwagp9n9rssam6902";
+    sha256 = "0bd30g3facfcgf18y2110xhc7ijly313y49mpwdkvl482z0fxzyj";
   };
 
   nativeBuildInputs = [ meson ninja pkgconfig gettext vala gtk-doc docbook_xsl docbook_xml_dtd_43 gobject-introspection python3 ];
diff --git a/pkgs/development/libraries/libhandy/default.nix b/pkgs/development/libraries/libhandy/default.nix
index 6264ff6c1a7..7c9779cf59b 100644
--- a/pkgs/development/libraries/libhandy/default.nix
+++ b/pkgs/development/libraries/libhandy/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    meson ninja pkgconfig gobject-introspection vala
+    meson ninja pkgconfig gobject-introspection vala libxml2
     gtk-doc docbook_xsl docbook_xml_dtd_43
   ];
   buildInputs = [ gnome3.gnome-desktop gtk3 gnome3.glade libxml2 ];
diff --git a/pkgs/development/libraries/libinput/default.nix b/pkgs/development/libraries/libinput/default.nix
index 2c84379aa8e..446c33e61e6 100644
--- a/pkgs/development/libraries/libinput/default.nix
+++ b/pkgs/development/libraries/libinput/default.nix
@@ -27,11 +27,11 @@ in
 with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "libinput";
-  version = "1.15.2";
+  version = "1.15.3";
 
   src = fetchurl {
     url = "https://www.freedesktop.org/software/libinput/${pname}-${version}.tar.xz";
-    sha256 = "0ivpb4sghl80cs7jg3xrs53kckif6wy81cny3a8mry94nszky74p";
+    sha256 = "0kb9i1xav8hmrl6g0qdq7jii589i9sjjrbh43fsc5284smyl44jv";
   };
 
   outputs = [ "bin" "out" "dev" ];
@@ -45,12 +45,12 @@ stdenv.mkDerivation rec {
   ];
 
   nativeBuildInputs = [ pkgconfig meson ninja ]
-    ++ optionals documentationSupport [ doxygen graphviz sphinx-build ]
-    ++ optionals testsSupport [ valgrind ];
+    ++ optionals documentationSupport [ doxygen graphviz sphinx-build ];
 
-  buildInputs = [ libevdev mtdev libwacom (python3.withPackages (pkgs: with pkgs; [ evdev ])) ]
-    ++ optionals eventGUISupport [ cairo glib gtk3 ]
-    ++ optionals testsSupport [ check ];
+  buildInputs = [ libevdev mtdev libwacom ]
+    ++ optionals eventGUISupport [ cairo glib gtk3 ];
+
+  checkInputs = [ (python3.withPackages (pkgs: with pkgs; [ evdev ])) check valgrind ];
 
   propagatedBuildInputs = [ udev ];
 
diff --git a/pkgs/development/libraries/libirecovery/default.nix b/pkgs/development/libraries/libirecovery/default.nix
index bf48e88a4ec..c6bb7906469 100644
--- a/pkgs/development/libraries/libirecovery/default.nix
+++ b/pkgs/development/libraries/libirecovery/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, automake, autoconf, libtool, pkgconfig
-, libusb
+, libusb1
 , readline
 }:
 
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    libusb
+    libusb1
     readline
   ];
 
diff --git a/pkgs/development/libraries/liblinphone/default.nix b/pkgs/development/libraries/liblinphone/default.nix
new file mode 100644
index 00000000000..c6628e9043c
--- /dev/null
+++ b/pkgs/development/libraries/liblinphone/default.nix
@@ -0,0 +1,150 @@
+{ bcg729
+, bctoolbox
+, bcunit
+, belcard
+, belle-sip
+, belr
+, bzrtp
+, cairo
+, cmake
+, cyrus_sasl
+, doxygen
+, fetchFromGitLab
+, fetchurl
+, ffmpeg
+, gdk-pixbuf
+, git
+, glib
+, graphviz
+, gtk2
+, intltool
+, libexosip
+, libmatroska
+, libnotify
+, libosip
+, libsoup
+, libupnp
+, libX11
+, libxml2
+, lime
+, makeWrapper
+, mbedtls
+, mediastreamer
+, mediastreamer-openh264
+, openldap
+, ortp
+, pango
+, pkgconfig
+, python
+, readline
+, soci
+, speex
+, sqlite
+, stdenv
+, udev
+, xercesc
+, xsd
+, zlib
+}:
+let
+  # Got the following error when building:
+  #
+  #   Your version of Doxygen (1.8.17) is known to malfunction with some of our
+  #   macro definitions, which causes errors while wrapprers generation. Please
+  #   install an older version of Doxygen (< 1.8.17) or disable documentation
+  #   and wrapper generation.
+  #
+  # So, let's then use 1.8.16 version of doxygen in this derivation. Hopefully
+  # this workaround can be removed with some newer release of liblinphone.
+  doxygen_1_8_16 = doxygen.overrideAttrs (
+    oldAttrs: rec {
+      name = "doxygen-1.8.16";
+      src = fetchurl {
+        urls = [
+          "mirror://sourceforge/doxygen/${name}.src.tar.gz" # faster, with https, etc.
+          "http://doxygen.nl/files/${name}.src.tar.gz"
+        ];
+        sha256 = "10iwv8bcz5b5cd85gg8pgn0bmyg04n9hs36xn7ggjjnvynv1z67z";
+      };
+      buildInputs = oldAttrs.buildInputs ++ [ git ];
+    }
+  );
+in
+stdenv.mkDerivation rec {
+  pname = "liblinphone";
+  # Using master branch for linphone-desktop caused a chain reaction that many
+  # of its dependencies needed to use master branch too.
+  version = "unstable-2020-03-20";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
+    repo = pname;
+    rev = "1d762a3e0e304aa579798aed4400d2cee2c1ffa0";
+    sha256 = "0ja38payyqbd8z6q5l5w6hi7xarmfj5021gh0qdk0j832br4c6c3";
+  };
+
+  # Do not build static libraries
+  cmakeFlags = [ "-DENABLE_STATIC=NO" ];
+
+  # TODO: Not sure if all these inputs are actually needed. Most of them were
+  # defined when liblinphone and linphone-desktop weren't separated yet, so some
+  # of them might not be needed for liblinphone alone.
+  buildInputs = [
+    (python.withPackages (ps: [ ps.pystache ps.six ]))
+    bcg729
+    bctoolbox
+    belcard
+    belle-sip
+    belr
+    bzrtp
+    cairo
+    cyrus_sasl
+    ffmpeg
+    gdk-pixbuf
+    git
+    glib
+    gtk2
+    libX11
+    libexosip
+    libmatroska
+    libnotify
+    libosip
+    libsoup
+    libupnp
+    libxml2
+    lime
+    mbedtls
+    mediastreamer
+    openldap
+    ortp
+    pango
+    readline
+    soci
+    speex
+    sqlite
+    udev
+    xercesc
+    xsd
+    zlib
+  ];
+
+  nativeBuildInputs = [
+    bcunit
+    cmake
+    doxygen_1_8_16
+    graphviz
+    intltool
+    makeWrapper
+    pkgconfig
+  ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://www.linphone.org/technical-corner/liblinphone";
+    description = "Library for SIP calls and instant messaging";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ jluttine ];
+  };
+}
diff --git a/pkgs/development/libraries/libmanette/default.nix b/pkgs/development/libraries/libmanette/default.nix
index 2f7f46974b0..93bf193a972 100644
--- a/pkgs/development/libraries/libmanette/default.nix
+++ b/pkgs/development/libraries/libmanette/default.nix
@@ -13,13 +13,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libmanette";
-  version = "0.2.3";
+  version = "0.2.4";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1zxh7jn2zg7hivmal5zxam6fxvjsd1w6hlw0m2kysk76b8anbw60";
+    sha256 = "T+Ckvta0w65ySdNBAxwnsy+Nng/7UzfXHLzscWA2LPc=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libmediainfo/default.nix b/pkgs/development/libraries/libmediainfo/default.nix
index 92fe81c73f4..ab7bb7e6cb9 100644
--- a/pkgs/development/libraries/libmediainfo/default.nix
+++ b/pkgs/development/libraries/libmediainfo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "19.09";
+  version = "20.03";
   pname = "libmediainfo";
   src = fetchurl {
     url = "https://mediaarea.net/download/source/libmediainfo/${version}/libmediainfo_${version}.tar.xz";
-    sha256 = "13j7by2czapzi6qznxj4nmn3hwiyglcf2ypja4n6zgnz96jf21pz";
+    sha256 = "0wkzj5s34m8dvy7hif4h8f90q8ncrzd930gij1zzw3h5nw732j38";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Shared library for mediainfo";
-    homepage = https://mediaarea.net/;
+    homepage = "https://mediaarea.net/";
     license = licenses.bsd2;
     platforms = platforms.unix;
     maintainers = [ maintainers.devhell ];
diff --git a/pkgs/development/libraries/libmodulemd/default.nix b/pkgs/development/libraries/libmodulemd/default.nix
index ba77c7806b5..f296883b686 100644
--- a/pkgs/development/libraries/libmodulemd/default.nix
+++ b/pkgs/development/libraries/libmodulemd/default.nix
@@ -1,54 +1,83 @@
 { stdenv
+, substituteAll
 , fetchFromGitHub
-, pkgconfig
+, fetchpatch
+, pkg-config
 , meson
 , ninja
 , gobject-introspection
 , python3
 , libyaml
+, rpm
+, file
 , gtk-doc
-, docbook_xsl
+, docbook-xsl-nons
+, help2man
 , docbook_xml_dtd_412
 , glib
 }:
 
 stdenv.mkDerivation rec {
   pname = "libmodulemd";
-  version = "2.6.0";
+  version = "2.9.2";
 
-  outputs = [ "out" "devdoc" "py" ];
+  outputs = [ "bin" "out" "dev" "devdoc" "man" "py" ];
 
   src = fetchFromGitHub {
     owner = "fedora-modularity";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "0gizfmzs6jrzb29lwcimm5dq3027935xbzwgkbvbp67zcmjd3y5i";
+    sha256 = "dm0uvzM5v1zDQVkonHbrT9l9ICnXZbCSiLRCMZRxhXY=";
   };
 
   patches = [
-    ./pygobject-dir.patch
+    # Use proper glib devdoc path.
+    (substituteAll {
+      src = ./glib-devdoc.patch;
+      glib_devdoc = glib.devdoc;
+    })
+
+    # Install pygobject overrides to our prefix instead of python3 one.
+    # https://github.com/fedora-modularity/libmodulemd/pull/469
+    (fetchpatch {
+      url = "https://github.com/fedora-modularity/libmodulemd/commit/f72a4bea092f4d84cfc48a3e820eb10270e828d0.patch";
+      sha256 = "7/76N9ZQ7qv/DjsaMCL+YWPDzarH1JWW4Sg5HzBJLuc=";
+    })
+    (fetchpatch {
+      url = "https://github.com/fedora-modularity/libmodulemd/commit/021ab08006b5cf601ce153174fdf403b910b8273.patch";
+      sha256 = "JibEmxMiTmu3ShhWLIWfMCtu3c30UcHqXmX9b+2VZXw=";
+    })
   ];
 
   nativeBuildInputs = [
-    pkgconfig
+    pkg-config
     meson
     ninja
     gtk-doc
-    docbook_xsl
+    docbook-xsl-nons
+    help2man
     docbook_xml_dtd_412
     gobject-introspection
   ];
 
   buildInputs = [
     libyaml
+    rpm
+    file # for libmagic
     glib
   ];
 
   mesonFlags = [
     "-Ddeveloper_build=false"
-    "-Dpygobject_override_dir=${placeholder "py"}/${python3.sitePackages}/gi/overrides"
+    "-Dgobject_overrides_dir_py3=${placeholder "py"}/${python3.sitePackages}/gi/overrides"
   ];
 
+  postFixup = ''
+    # Python overrides depend our own typelibs and other packages
+    mkdir -p "$py/nix-support"
+    echo "$out ${python3.pkgs.pygobject3} ${python3.pkgs.six}" > "$py/nix-support/propagated-build-inputs"
+  '';
+
   meta = with stdenv.lib; {
     description = "C Library for manipulating module metadata files";
     homepage = "https://github.com/fedora-modularity/libmodulemd";
diff --git a/pkgs/development/libraries/libmodulemd/glib-devdoc.patch b/pkgs/development/libraries/libmodulemd/glib-devdoc.patch
new file mode 100644
index 00000000000..cde42d8e0b2
--- /dev/null
+++ b/pkgs/development/libraries/libmodulemd/glib-devdoc.patch
@@ -0,0 +1,13 @@
+diff --git a/meson.build b/meson.build
+index a8b02b4..dd31a76 100644
+--- a/meson.build
++++ b/meson.build
+@@ -67,7 +67,7 @@ test = find_program('test')
+ with_docs = get_option('with_docs')
+ if with_docs
+   gtkdoc = dependency('gtk-doc')
+-  glib_docpath = join_paths(glib_prefix, 'share', 'gtk-doc', 'html')
++  glib_docpath = join_paths('@glib_devdoc@', 'share', 'gtk-doc', 'html')
+ 
+   ret = run_command ([test, '-e', join_paths(glib_docpath, 'glib/index.html')])
+   if ret.returncode() != 0
diff --git a/pkgs/development/libraries/libmodulemd/pygobject-dir.patch b/pkgs/development/libraries/libmodulemd/pygobject-dir.patch
deleted file mode 100644
index a367872eec6..00000000000
--- a/pkgs/development/libraries/libmodulemd/pygobject-dir.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-diff --git a/bindings/python/meson.build b/bindings/python/meson.build
-index 4358b79..61fd5a5 100644
---- a/bindings/python/meson.build
-+++ b/bindings/python/meson.build
-@@ -1,3 +1,5 @@
-+pygobject_override_dir = get_option('pygobject_override_dir')
-+
- get_overridedir = '''
- import os
- import sysconfig
-@@ -21,7 +23,7 @@ print(overridedir)
- '''
- 
- # Python 3
--if (get_option('with_py3_overrides'))
-+if (get_option('with_py3_overrides')) and pygobject_override_dir == ''
-   ret = run_command([python3, '-c', get_overridedir])
- 
-   if ret.returncode() != 0
-@@ -34,7 +36,7 @@ if (get_option('with_py3_overrides'))
- endif
- 
- # Python 2
--if (get_option('with_py2_overrides'))
-+if (get_option('with_py2_overrides')) and pygobject_override_dir == ''
-   ret2 = run_command([python2, '-c', get_overridedir])
- 
-   if ret2.returncode() != 0
-@@ -45,3 +47,7 @@ if (get_option('with_py2_overrides'))
- 
-   install_data('gi/overrides/Modulemd.py', install_dir: pygobject2_override_dir)
- endif
-+
-+if pygobject_override_dir != ''
-+    install_data('gi/overrides/Modulemd.py', install_dir: pygobject_override_dir)
-+endif
-diff --git a/meson_options.txt b/meson_options.txt
-index 147419f..9071a04 100644
---- a/meson_options.txt
-+++ b/meson_options.txt
-@@ -18,3 +18,4 @@ option('skip_introspection', type : 'boolean', value : false)
- option('python_name', type : 'string')
- option('with_py2_overrides', type : 'boolean', value : false)
- option('with_py3_overrides', type : 'boolean', value : true)
-+option('pygobject_override_dir', type : 'string', value : '', description: 'Path to pygobject overrides directory')
diff --git a/pkgs/development/libraries/libosinfo/default.nix b/pkgs/development/libraries/libosinfo/default.nix
index a040956f553..859f39239f3 100644
--- a/pkgs/development/libraries/libosinfo/default.nix
+++ b/pkgs/development/libraries/libosinfo/default.nix
@@ -1,24 +1,59 @@
-{ stdenv, fetchurl, fetchpatch, pkgconfig, gettext, gobject-introspection, gtk-doc, docbook_xsl
-, glib, libsoup, libxml2, libxslt, check, curl, perl, hwdata, osinfo-db, substituteAll
+{ stdenv
+, fetchurl
+, fetchpatch
+, pkgconfig
+, meson
+, ninja
+, gettext
+, gobject-introspection
+, gtk-doc
+, docbook_xsl
+, glib
+, libsoup
+, libxml2
+, libxslt
+, check
+, curl
+, perl
+, hwdata
+, osinfo-db
+, substituteAll
 , vala ? null
 }:
 
 stdenv.mkDerivation rec {
   pname = "libosinfo";
-  version = "1.6.0";
+  version = "1.7.1";
 
   src = fetchurl {
-    url = "https://releases.pagure.org/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "1iwh35mahch1ls3sgq7wz8kamxrxisrff5ciqzyh2qxlrqf5qf1w";
+    url = "https://releases.pagure.org/${pname}/${pname}-${version}.tar.xz";
+    sha256 = "1s97sv24bybggjx6hgqba2qdqz3ivfpd4cmkh4zm5y59sim109mv";
   };
 
   outputs = [ "out" "dev" "devdoc" ];
 
   nativeBuildInputs = [
-    pkgconfig vala gettext gobject-introspection gtk-doc docbook_xsl
+    pkgconfig
+    meson
+    ninja
+    vala
+    gettext
+    gobject-introspection
+    gtk-doc
+    docbook_xsl
+    perl # for pod2man
+  ];
+  buildInputs = [
+    glib
+    libsoup
+    libxml2
+    libxslt
+  ];
+  checkInputs = [
+    check
+    curl
+    perl
   ];
-  buildInputs = [ glib libsoup libxml2 libxslt ];
-  checkInputs = [ check curl perl ];
 
   patches = [
     (substituteAll {
@@ -27,13 +62,16 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  configureFlags = [
-    "--with-usb-ids-path=${hwdata}/share/hwdata/usb.ids"
-    "--with-pci-ids-path=${hwdata}/share/hwdata/pci.ids"
-    "--enable-gtk-doc"
+  mesonFlags = [
+    "-Dwith-usb-ids-path=${hwdata}/share/hwdata/usb.ids"
+    "-Dwith-pci-ids-path=${hwdata}/share/hwdata/pci.ids"
+    "-Denable-gtk-doc=true"
   ];
 
-  doCheck = true;
+  # FIXME: fails two new tests added in 1.7.1:
+  # libosinfo:symbols / check-symfile
+  # 3/24 libosinfo:symbols / check-symsorting
+  doCheck = false;
 
   meta = with stdenv.lib; {
     description = "GObject based library API for managing information about operating systems, hypervisors and the (virtual) hardware devices they can support";
diff --git a/pkgs/development/libraries/libpeas/default.nix b/pkgs/development/libraries/libpeas/default.nix
index e73f98cd21d..96da8a165ae 100644
--- a/pkgs/development/libraries/libpeas/default.nix
+++ b/pkgs/development/libraries/libpeas/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libpeas";
-  version = "1.24.1";
+  version = "1.26.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1162dr7smmfb02czmhshr0f93hqj7w0nw29bys5lzfvwarxcyflw";
+    sha256 = "0xkk9zhkw8f2fm7g9nb4ry4xxig5n27s7rjmx6l7jr2941zdfxm9";
   };
 
   nativeBuildInputs = [ pkgconfig meson ninja gettext gobject-introspection ];
diff --git a/pkgs/development/libraries/libpsl/default.nix b/pkgs/development/libraries/libpsl/default.nix
index d2012760dcf..fdc352869f0 100644
--- a/pkgs/development/libraries/libpsl/default.nix
+++ b/pkgs/development/libraries/libpsl/default.nix
@@ -32,6 +32,7 @@ stdenv.mkDerivation rec {
     pkgconfig
     python3
     valgrind
+    libxslt
   ];
 
   buildInputs = [
diff --git a/pkgs/development/libraries/libpst/default.nix b/pkgs/development/libraries/libpst/default.nix
index 24b94827122..e69cc04d6f0 100644
--- a/pkgs/development/libraries/libpst/default.nix
+++ b/pkgs/development/libraries/libpst/default.nix
@@ -2,11 +2,11 @@
   pkgconfig, bzip2, xmlto, gettext, imagemagick, doxygen }:
 
 stdenv.mkDerivation rec {
-  name = "libpst-0.6.74";
+  name = "libpst-0.6.75";
 
   src = fetchurl {
     url = "http://www.five-ten-sg.com/libpst/packages/${name}.tar.gz";
-    sha256 = "0dzx8jniz7mczbbp08zfrl46h27hyfrsnjxmka9pi5aawzfdm1zp";
+    sha256 = "11wrf47i3brlxg25wsfz17373q7m5fpjxn2lr41dj252ignqzaac";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   meta = with stdenv.lib; {
-    homepage = https://www.five-ten-sg.com/libpst/;
+    homepage = "https://www.five-ten-sg.com/libpst/";
     description = "A library to read PST (MS Outlook Personal Folders) files";
     license = licenses.gpl2;
     maintainers = [maintainers.tohl];
diff --git a/pkgs/development/libraries/librealsense/default.nix b/pkgs/development/libraries/librealsense/default.nix
index 05c81e3c73e..a8924ca4782 100644
--- a/pkgs/development/libraries/librealsense/default.nix
+++ b/pkgs/development/libraries/librealsense/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "librealsense";
-  version = "2.32.1";
+  version = "2.33.1";
 
   outputs = [ "out" "dev" ];
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     owner = "IntelRealSense";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1l45hrb3lgjh1kdi4khqhljndc434zf9llzbii6dcv911gxkipjr";
+    sha256 = "04macplj3k2sdpf1wdjm6gsghak5dzfhi2pmr47qldh2sy2zz0a3";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix
index 11c7f3fed84..7ef9139108b 100644
--- a/pkgs/development/libraries/librsvg/default.nix
+++ b/pkgs/development/libraries/librsvg/default.nix
@@ -1,22 +1,25 @@
-{ lib, stdenv, fetchurl, pkgconfig, glib, gdk-pixbuf, pango, cairo, libxml2, libgsf
-, bzip2, libcroco, libintl, darwin, rustc, cargo, gnome3
+{ lib, stdenv, fetchurl, pkgconfig, glib, gdk-pixbuf, pango, cairo, libxml2
+, bzip2, libintl, darwin, rustc, cargo, gnome3
 , vala, gobject-introspection }:
 
 let
   pname = "librsvg";
-  version = "2.46.4";
+  version = "2.48.0";
 in
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
-    sha256 = "0afc82nsxc6kw136xid4vcq9kmq4rmgzzk8bh2pvln2cnvirwnxl";
+    sha256 = "19ndf9l99wcrmkwcrk20vd1ggrwgldksfz1kkj786ljcrxv8nd2a";
   };
 
   outputs = [ "out" "dev" "installedTests" ];
 
-  buildInputs = [ libxml2 libgsf bzip2 libcroco pango libintl ];
+  buildInputs = [ libxml2 bzip2 pango libintl ]
+    ++ lib.optionals stdenv.isDarwin [ darwin.libobjc ];
+
+  NIX_LDFLAGS = if stdenv.isDarwin then "-lobjc" else null;
 
   propagatedBuildInputs = [ glib gdk-pixbuf cairo ];
 
diff --git a/pkgs/development/libraries/librsync/default.nix b/pkgs/development/libraries/librsync/default.nix
index 02a8abb7c85..d90106f89d8 100644
--- a/pkgs/development/libraries/librsync/default.nix
+++ b/pkgs/development/libraries/librsync/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "librsync";
-  version = "2.2.1";
+  version = "2.3.0";
 
   src = fetchFromGitHub {
     owner = "librsync";
     repo = "librsync";
     rev = "v${version}";
-    sha256 = "08wdlxsa9zg2pyasz1lwg70d5psi4amv81v4yxwffx67ndzb9yp5";
+    sha256 = "18wwfbbggsjrd4w3dczxa2gv3zvx0fqp68b8h1zzvdbyn91f16mz";
   };
 
   nativeBuildInputs = [ cmake ];
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   dontStrip = stdenv.hostPlatform != stdenv.buildPlatform;
 
   meta = with stdenv.lib; {
-    homepage = http://librsync.sourceforge.net/;
+    homepage = "http://librsync.sourceforge.net/";
     license = licenses.lgpl2Plus;
     description = "Implementation of the rsync remote-delta algorithm";
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/libsecret/default.nix b/pkgs/development/libraries/libsecret/default.nix
index e4e87eba858..a756caea8ef 100644
--- a/pkgs/development/libraries/libsecret/default.nix
+++ b/pkgs/development/libraries/libsecret/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = [ glib ];
   nativeBuildInputs = [
     pkgconfig gettext libxslt docbook_xsl docbook_xml_dtd_42 libintl
-    gobject-introspection vala gtk-doc
+    gobject-introspection vala gtk-doc glib
   ];
   buildInputs = [ libgcrypt ];
   # optional: build docs with gtk-doc? (probably needs a flag as well)
diff --git a/pkgs/development/libraries/libsoup/default.nix b/pkgs/development/libraries/libsoup/default.nix
index 6925bd2de4b..a497661725b 100644
--- a/pkgs/development/libraries/libsoup/default.nix
+++ b/pkgs/development/libraries/libsoup/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libsoup";
-  version = "2.68.4";
+  version = "2.70.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "151j5dc84gbl6a917pxvd0b372lw5za48n63lyv6llfc48lv2l1d";
+    sha256 = "0hjk9lgppc5435my0lyywbpmj7ib5vvcylwfin8ki97g9bvj1c2l";
   };
 
   postPatch = ''
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "dev" ];
 
   buildInputs = [ python3 sqlite libpsl brotli ];
-  nativeBuildInputs = [ meson ninja pkgconfig gobject-introspection vala ];
+  nativeBuildInputs = [ meson ninja pkgconfig gobject-introspection vala glib ];
   propagatedBuildInputs = [ glib libxml2 ];
 
   mesonFlags = [
diff --git a/pkgs/development/libraries/libssh/default.nix b/pkgs/development/libraries/libssh/default.nix
index 65de6db3b47..bf6e0a491f2 100644
--- a/pkgs/development/libraries/libssh/default.nix
+++ b/pkgs/development/libraries/libssh/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchurl, pkgconfig, cmake, zlib, openssl, libsodium }:
 
 stdenv.mkDerivation rec {
-  name = "libssh-0.8.7";
+  pname = "libssh";
+  version = "0.8.8";
 
   src = fetchurl {
-    url = "https://www.libssh.org/files/0.8/${name}.tar.xz";
-    sha256 = "14nmwfnnrhkwcfk5hn7azl905ivbh4wllmsbw5abd80b5yi4qc23";
+    url = "https://www.libssh.org/files/0.8/${pname}-${version}.tar.xz";
+    sha256 = "1qk5bm9r6199jbfk54f8w24vkl52051g8s3kmq4z2kdc6vbpy4jb";
   };
 
   postPatch = ''
@@ -22,6 +23,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "SSH client library";
+    homepage = "https://libssh.org";
     license = licenses.lgpl2Plus;
     maintainers = with maintainers; [ sander ];
     platforms = platforms.all;
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/default.nix b/pkgs/development/libraries/libtorrent-rasterbar/default.nix
index 26605eb41db..f910964a2ca 100644
--- a/pkgs/development/libraries/libtorrent-rasterbar/default.nix
+++ b/pkgs/development/libraries/libtorrent-rasterbar/default.nix
@@ -3,7 +3,7 @@
 }:
 
 let
-  version = "1.1.11";
+  version = "1.2.5";
   formattedVersion = lib.replaceChars ["."] ["_"] version;
 
   # Make sure we override python, so the correct version is chosen
@@ -17,13 +17,14 @@ in stdenv.mkDerivation {
   src = fetchFromGitHub {
     owner = "arvidn";
     repo = "libtorrent";
-    rev = "libtorrent_${formattedVersion}";
+    rev = "libtorrent-${formattedVersion}";
     sha256 = "0nwdsv6d2gkdsh7l5a46g6cqx27xwh3msify5paf02l1qzjy4s5l";
   };
 
   enableParallelBuilding = true;
   nativeBuildInputs = [ automake autoconf libtool pkgconfig ];
   buildInputs = [ boostPython openssl zlib python libiconv geoip ncurses ];
+
   preConfigure = "./autotool.sh";
 
   postInstall = ''
diff --git a/pkgs/development/libraries/libuninameslist/default.nix b/pkgs/development/libraries/libuninameslist/default.nix
index 5d4cc61fe7a..2e29aafdbdd 100644
--- a/pkgs/development/libraries/libuninameslist/default.nix
+++ b/pkgs/development/libraries/libuninameslist/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libuninameslist";
-  version = "20190701";
+  version = "20200313";
 
   src = fetchFromGitHub {
     owner = "fontforge";
     repo = pname;
     rev = version;
-    sha256 = "sha256:034c8clnskvqbwyiq7si4dad1kbngi3jmnrj064i39msqixmpdzb";
+    sha256 = "1rs4mrmfcw7864kssnk559ac1sdlpl8yrd10xspxrnfz08ynqxw8";
   };
 
   nativeBuildInputs = [
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/fontforge/libuninameslist/;
+    homepage = "https://github.com/fontforge/libuninameslist/";
     description = "A Library of Unicode names and annotation data";
     license = licenses.bsd3;
     maintainers = with maintainers; [ erictapen ];
diff --git a/pkgs/development/libraries/libunique/default.nix b/pkgs/development/libraries/libunique/default.nix
index d6566978a6b..502fd27ebb6 100644
--- a/pkgs/development/libraries/libunique/default.nix
+++ b/pkgs/development/libraries/libunique/default.nix
@@ -32,6 +32,6 @@ stdenv.mkDerivation rec {
     homepage = "https://wiki.gnome.org/Attic/LibUnique";
     description = "A library for writing single instance applications";
     license = stdenv.lib.licenses.lgpl21;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = with stdenv.lib.platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/development/libraries/libunwind/default.nix b/pkgs/development/libraries/libunwind/default.nix
index 70e6b698ec5..f49bebe9b1a 100644
--- a/pkgs/development/libraries/libunwind/default.nix
+++ b/pkgs/development/libraries/libunwind/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, autoreconfHook, xz }:
+{ stdenv, lib, fetchurl, autoreconfHook, xz }:
 
 stdenv.mkDerivation rec {
   pname = "libunwind";
@@ -11,6 +11,10 @@ stdenv.mkDerivation rec {
 
   patches = [ ./backtrace-only-with-glibc.patch ];
 
+  postPatch = lib.optionalString stdenv.hostPlatform.isMusl ''
+    substituteInPlace configure.ac --replace "-lgcc_s" "-lgcc_eh"
+  '';
+
   nativeBuildInputs = [ autoreconfHook ];
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/libusb/default.nix b/pkgs/development/libraries/libusb/default.nix
index 681b2eef456..2830ef28458 100644
--- a/pkgs/development/libraries/libusb/default.nix
+++ b/pkgs/development/libraries/libusb/default.nix
@@ -1,14 +1,22 @@
-{stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, libusb1}:
+{ stdenv
+, lib
+, fetchFromGitHub
+, autoreconfHook
+, patchelf
+, pkgconfig
+, libusb1
+}:
 
 stdenv.mkDerivation rec {
-  name = "libusb-compat-${version}";
+  pname = "libusb-compat";
   version = "0.1.7";
 
   outputs = [ "out" "dev" ]; # get rid of propagating systemd closure
   outputBin = "dev";
 
-  nativeBuildInputs = [ pkgconfig autoreconfHook ];
-  propagatedBuildInputs = [ libusb1 ];
+  nativeBuildInputs = [ autoreconfHook patchelf pkgconfig ];
+
+  buildInputs = [ libusb1 ];
 
   src = fetchFromGitHub {
     owner = "libusb";
@@ -19,6 +27,12 @@ stdenv.mkDerivation rec {
 
   patches = stdenv.lib.optional stdenv.hostPlatform.isMusl ./fix-headers.patch;
 
+  # without this, libusb-compat is unable to find libusb1
+  postFixup = ''
+    find $out/lib -name \*.so\* -type f -exec \
+      patchelf --set-rpath ${lib.makeLibraryPath buildInputs} {} \;
+  '';
+
   meta = with stdenv.lib; {
     homepage = "https://libusb.info/";
     repositories.git = "https://github.com/libusb/libusb-compat-0.1";
diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix
index 0b9e394559c..0250b09ce1e 100644
--- a/pkgs/development/libraries/libuv/default.nix
+++ b/pkgs/development/libraries/libuv/default.nix
@@ -1,14 +1,14 @@
 { stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkgconfig, ApplicationServices, CoreServices }:
 
 stdenv.mkDerivation rec {
-  version = "1.34.2";
+  version = "1.35.0";
   pname = "libuv";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "14ax49daz7j86lybi242jiry49jrnnvlyc39k6va700n03py4h9n";
+    sha256 = "0pd94h10ay38r8fwj0qqgw908rrj83n768n8mbbpnd5w2c7wy9fz";
   };
 
   postPatch = let
diff --git a/pkgs/development/libraries/libvirt/5.9.0.nix b/pkgs/development/libraries/libvirt/5.9.0.nix
new file mode 100644
index 00000000000..3a57a91a22a
--- /dev/null
+++ b/pkgs/development/libraries/libvirt/5.9.0.nix
@@ -0,0 +1,136 @@
+{ stdenv, fetchurl, fetchgit
+, pkgconfig, makeWrapper, libtool, autoconf, automake, fetchpatch
+, coreutils, libxml2, gnutls, perl, python2, attr
+, iproute, iptables, readline, lvm2, utillinux, systemd, libpciaccess, gettext
+, libtasn1, ebtables, libgcrypt, yajl, pmutils, libcap_ng, libapparmor
+, dnsmasq, libnl, libpcap, libxslt, xhtml1, numad, numactl, perlPackages
+, curl, libiconv, gmp, zfs, parted, bridge-utils, dmidecode, glib
+, enableXen ? false, xen ? null
+, enableIscsi ? false, openiscsi
+, enableCeph ? false, ceph
+}:
+
+with stdenv.lib;
+
+# if you update, also bump <nixpkgs/pkgs/development/python-modules/libvirt/default.nix> and SysVirt in <nixpkgs/pkgs/top-level/perl-packages.nix>
+let
+  buildFromTarball = stdenv.isDarwin;
+in stdenv.mkDerivation rec {
+  pname = "libvirt";
+  version = "5.9.0";
+
+  src =
+    if buildFromTarball then
+      fetchurl {
+        url = "http://libvirt.org/sources/${pname}-${version}.tar.xz";
+        sha256 = "0fc9jxw3v6x5hc10bkd7bbcayn24hbld5adj2gh5s648v7hx55il";
+      }
+    else
+      fetchgit {
+        url = git://libvirt.org/libvirt.git;
+        rev = "v${version}";
+        sha256 = "0smm77ag8bg24xkbhl4akqikjrsq2pd3wk31nj0hk1avqnl00gmk";
+        fetchSubmodules = true;
+      };
+
+  nativeBuildInputs = [ makeWrapper pkgconfig ];
+  buildInputs = [
+    libxml2 gnutls perl python2 readline gettext libtasn1 libgcrypt yajl
+    libxslt xhtml1 perlPackages.XMLXPath curl libpcap glib
+  ] ++ optionals (!buildFromTarball) [
+    libtool autoconf automake
+  ] ++ optionals stdenv.isLinux [
+    libpciaccess lvm2 utillinux systemd libnl numad zfs
+    libapparmor libcap_ng numactl attr parted
+  ] ++ optionals (enableXen && stdenv.isLinux && stdenv.isx86_64) [
+    xen
+  ] ++ optionals enableIscsi [
+    openiscsi
+  ] ++ optionals enableCeph [
+    ceph
+  ] ++ optionals stdenv.isDarwin [
+    libiconv gmp
+  ];
+
+  preConfigure = ''
+    ${ optionalString (!buildFromTarball) "./bootstrap --no-git --gnulib-srcdir=$(pwd)/.gnulib" }
+    PATH=${stdenv.lib.makeBinPath ([ dnsmasq ] ++ optionals stdenv.isLinux [ iproute iptables ebtables lvm2 systemd numad ] ++ optionals enableIscsi [ openiscsi ])}:$PATH
+    # the path to qemu-kvm will be stored in VM's .xml and .save files
+    # do not use "''${qemu_kvm}/bin/qemu-kvm" to avoid bound VMs to particular qemu derivations
+    substituteInPlace src/lxc/lxc_conf.c \
+      --replace 'lxc_path,' '"/run/libvirt/nix-emulators/libvirt_lxc",'
+    patchShebangs . # fixes /usr/bin/python references
+  '';
+
+  configureFlags = [
+    "--localstatedir=/var"
+    "--sysconfdir=/var/lib"
+    "--with-libpcap"
+    "--with-qemu"
+    "--with-vmware"
+    "--with-vbox"
+    "--with-test"
+    "--with-esx"
+    "--with-remote"
+  ] ++ optionals stdenv.isLinux [
+    "QEMU_BRIDGE_HELPER=/run/wrappers/bin/qemu-bridge-helper"
+    "QEMU_PR_HELPER=/run/libvirt/nix-helpers/qemu-pr-helper"
+    "EBTABLES_PATH=${ebtables}/bin/ebtables-legacy"
+    "--with-attr"
+    "--with-apparmor"
+    "--with-secdriver-apparmor"
+    "--with-numad"
+    "--with-macvtap"
+    "--with-virtualport"
+    "--with-storage-disk"
+  ] ++ optionals (stdenv.isLinux && zfs != null) [
+    "--with-storage-zfs"
+  ] ++ optionals enableIscsi [
+    "--with-storage-iscsi"
+  ] ++ optionals enableCeph [
+    "--with-storage-rbd"
+  ] ++ optionals stdenv.isDarwin [
+    "--with-init-script=none"
+  ];
+
+  installFlags = [
+    "localstatedir=$(TMPDIR)/var"
+    "sysconfdir=$(out)/var/lib"
+  ];
+
+
+  postInstall = let
+    binPath = [ iptables iproute pmutils numad numactl bridge-utils dmidecode dnsmasq ebtables ] ++ optionals enableIscsi [ openiscsi ];
+  in ''
+    substituteInPlace $out/libexec/libvirt-guests.sh \
+      --replace 'ON_BOOT=start'       'ON_BOOT=''${ON_BOOT:-start}' \
+      --replace 'ON_SHUTDOWN=suspend' 'ON_SHUTDOWN=''${ON_SHUTDOWN:-suspend}' \
+      --replace "$out/bin"            '${gettext}/bin' \
+      --replace 'lock/subsys'         'lock' \
+      --replace 'gettext.sh'          'gettext.sh
+  # Added in nixpkgs:
+  gettext() { "${gettext}/bin/gettext" "$@"; }
+  '
+  '' + optionalString stdenv.isLinux ''
+    substituteInPlace $out/lib/systemd/system/libvirtd.service --replace /bin/kill ${coreutils}/bin/kill
+    rm $out/lib/systemd/system/{virtlockd,virtlogd}.*
+    wrapProgram $out/sbin/libvirtd \
+      --prefix PATH : /run/libvirt/nix-emulators:${makeBinPath binPath}
+  '';
+
+  enableParallelBuilding = true;
+
+  NIX_CFLAGS_COMPILE = "-fno-stack-protector";
+
+  meta = {
+    homepage = http://libvirt.org/;
+    repositories.git = git://libvirt.org/libvirt.git;
+    description = ''
+      A toolkit to interact with the virtualization capabilities of recent
+      versions of Linux (and other OSes)
+    '';
+    license = licenses.lgpl2Plus;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ fpletz globin ];
+  };
+}
diff --git a/pkgs/development/libraries/libvirt/default.nix b/pkgs/development/libraries/libvirt/default.nix
index 44cdd9edf52..89617b864ac 100644
--- a/pkgs/development/libraries/libvirt/default.nix
+++ b/pkgs/development/libraries/libvirt/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, fetchgit
-, pkgconfig, makeWrapper, libtool, autoconf, automake, fetchpatch
-, coreutils, libxml2, gnutls, perl, python2, attr
+, pkgconfig, makeWrapper, autoreconfHook, fetchpatch
+, coreutils, libxml2, gnutls, perl, python2, attr, glib, docutils
 , iproute, iptables, readline, lvm2, utillinux, systemd, libpciaccess, gettext
 , libtasn1, ebtables, libgcrypt, yajl, pmutils, libcap_ng, libapparmor
 , dnsmasq, libnl, libpcap, libxslt, xhtml1, numad, numactl, perlPackages
@@ -17,52 +17,26 @@ let
   buildFromTarball = stdenv.isDarwin;
 in stdenv.mkDerivation rec {
   pname = "libvirt";
-  version = "5.4.0";
+  version = "6.2.0";
 
   src =
     if buildFromTarball then
       fetchurl {
         url = "http://libvirt.org/sources/${pname}-${version}.tar.xz";
-        sha256 = "0ywf8m9yz2hxnic7fylzlmgy4m353r4vv5zsvp89zq5yh4h81yhw";
+        sha256 = "1c8grqf751blsgs15wx2p05wvankdrady6290vwc85v94cgqij5f";
       }
     else
       fetchgit {
         url = git://libvirt.org/libvirt.git;
         rev = "v${version}";
-        sha256 = "1dja1mf295w0sl83zag62c4j55cfbzzfbhdxpkyv2zm3zv0mwdyc";
+        sha256 = "1wyihi8bhwsck9b7f3b8yhlz145sjdyyj3ykjiszrqnp0y99xxy2";
         fetchSubmodules = true;
       };
 
-  patches = optionals (!stdenv.isDarwin) [
-    (fetchpatch {
-      name = "5.4.0-CVE-2019-10161.patch";
-      url = "https://libvirt.org/git/?p=libvirt.git;a=patch;h=aed6a032cead4386472afb24b16196579e239580";
-      sha256 = "19k9z9xx68nf03igbgy1imxnlp5ppj7cgdbq9kri3s834hkjcygs";
-    })
-  ] ++ [
-    (fetchpatch {
-      name = "5.4.0-CVE-2019-10166.patch";
-      url = "https://libvirt.org/git/?p=libvirt.git;a=patch;h=db0b78457f183e4c7ac45bc94de86044a1e2056a";
-      sha256 = "17pd1rab2mxj4q0vg30vi2gh78mf52ik1p5l12wrghb0wjf7swml";
-    })
-    (fetchpatch {
-      name = "5.4.0-CVE-2019-10167.patch";
-      url = "https://libvirt.org/git/?p=libvirt.git;a=patch;h=8afa68bac0cf99d1f8aaa6566685c43c22622f26";
-      sha256 = "0hgbwk0y2n6ihzjk8vqabhw914axjqgzcb7c5xx893r86c54c0ml";
-    })
-    (fetchpatch {
-      name = "5.4.0-CVE-2019-10168.patch";
-      url = "https://libvirt.org/git/?p=libvirt.git;a=patch;h=bf6c2830b6c338b1f5699b095df36f374777b291";
-      sha256 = "0s4hc3hsjncx1852ndjas1nng9v23pxf4mi1jxcajsqvhw89la0g";
-    })
-  ];
-
-  nativeBuildInputs = [ makeWrapper pkgconfig ];
+  nativeBuildInputs = [ makeWrapper pkgconfig docutils ] ++ optionals (!buildFromTarball) [ autoreconfHook ];
   buildInputs = [
     libxml2 gnutls perl python2 readline gettext libtasn1 libgcrypt yajl
-    libxslt xhtml1 perlPackages.XMLXPath curl libpcap
-  ] ++ optionals (!buildFromTarball) [
-    libtool autoconf automake
+    libxslt xhtml1 perlPackages.XMLXPath curl libpcap glib
   ] ++ optionals stdenv.isLinux [
     libpciaccess lvm2 utillinux systemd libnl numad zfs
     libapparmor libcap_ng numactl attr parted
@@ -77,18 +51,19 @@ in stdenv.mkDerivation rec {
   ];
 
   preConfigure = ''
-    ${ optionalString (!buildFromTarball) "./bootstrap --no-git --gnulib-srcdir=$(pwd)/.gnulib" }
-
     PATH=${stdenv.lib.makeBinPath ([ dnsmasq ] ++ optionals stdenv.isLinux [ iproute iptables ebtables lvm2 systemd numad ] ++ optionals enableIscsi [ openiscsi ])}:$PATH
-
     # the path to qemu-kvm will be stored in VM's .xml and .save files
     # do not use "''${qemu_kvm}/bin/qemu-kvm" to avoid bound VMs to particular qemu derivations
     substituteInPlace src/lxc/lxc_conf.c \
       --replace 'lxc_path,' '"/run/libvirt/nix-emulators/libvirt_lxc",'
-
     patchShebangs . # fixes /usr/bin/python references
+    mkdir -p build && cd build
   '';
 
+  configureScript = "../configure";
+
+  dontAddDisableDepTrack = true;
+
   configureFlags = [
     "--localstatedir=/var"
     "--sysconfdir=/var/lib"
@@ -125,7 +100,6 @@ in stdenv.mkDerivation rec {
     "sysconfdir=$(out)/var/lib"
   ];
 
-
   postInstall = let
     binPath = [ iptables iproute pmutils numad numactl bridge-utils dmidecode dnsmasq ebtables ] ++ optionals enableIscsi [ openiscsi ];
   in ''
diff --git a/pkgs/development/libraries/libvorbis/default.nix b/pkgs/development/libraries/libvorbis/default.nix
index 263fa0a5216..40d21b58b55 100644
--- a/pkgs/development/libraries/libvorbis/default.nix
+++ b/pkgs/development/libraries/libvorbis/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     (fetchpatch {
       url = "https://gitlab.xiph.org/xiph/vorbis/uploads/a68cf70fa10c8081a633f77b5c6576b7/0001-CVE-2017-14160-make-sure-we-don-t-overflow.patch";
       sha256 = "0v21p59cb3z77ch1v6q5dcrd733h91f3m8ifnd7kkkr8gzn17d5x";
-      name = "CVE-2017-14160";
+      name = "CVE-2017-14160+CVE-2018-10393.patch";
     })
     (fetchpatch {
       url = "https://gitlab.xiph.org/xiph/vorbis/commit/112d3bd0aaa.diff";
diff --git a/pkgs/development/libraries/libvpx/1_8.nix b/pkgs/development/libraries/libvpx/1_8.nix
new file mode 100644
index 00000000000..14a6719533b
--- /dev/null
+++ b/pkgs/development/libraries/libvpx/1_8.nix
@@ -0,0 +1,183 @@
+{ stdenv, fetchFromGitHub, perl, yasm
+, vp8DecoderSupport ? true # VP8 decoder
+, vp8EncoderSupport ? true # VP8 encoder
+, vp9DecoderSupport ? true # VP9 decoder
+, vp9EncoderSupport ? true # VP9 encoder
+, extraWarningsSupport ? false # emit non-fatal warnings
+, werrorSupport ? false # treat warnings as errors (not available with all compilers)
+, debugSupport ? false # debug mode
+, gprofSupport ? false # gprof profiling instrumentation
+, gcovSupport ? false # gcov coverage instrumentation
+, sizeLimitSupport ? true # limit max size to allow in the decoder
+, optimizationsSupport ? true # compiler optimization flags
+, runtimeCpuDetectSupport ? true # detect cpu capabilities at runtime
+, thumbSupport ? false # build arm assembly in thumb mode
+, examplesSupport ? true # build examples (vpxdec & vpxenc are part of examples)
+, debugLibsSupport ? false # include debug version of each library
+, postprocSupport ? true # postprocessing
+, multithreadSupport ? true # multithreaded decoding & encoding
+, internalStatsSupport ? false # output of encoder internal stats for debug, if supported (encoders)
+, spatialResamplingSupport ? true # spatial sampling (scaling)
+, realtimeOnlySupport ? false # build for real-time encoding
+, ontheflyBitpackingSupport ? false # on-the-fly bitpacking in real-time encoding
+, errorConcealmentSupport ? false # decoder conceals losses
+, smallSupport ? false # favor smaller binary over speed
+, postprocVisualizerSupport ? false # macro block/block level visualizers
+, unitTestsSupport ? false, curl ? null, coreutils ? null # unit tests
+, webmIOSupport ? true # input from and output to webm container
+, libyuvSupport ? true # libyuv
+, decodePerfTestsSupport ? false # build decoder perf tests with unit tests
+, encodePerfTestsSupport ? false # build encoder perf tests with unit tests
+, multiResEncodingSupport ? false # multiple-resolution encoding
+, temporalDenoisingSupport ? true # use temporal denoising instead of spatial denoising
+, coefficientRangeCheckingSupport ? false # decoder checks if intermediate transform coefficients are in valid range
+, vp9HighbitdepthSupport ? true # 10/12 bit color support in VP9
+# Experimental features
+, experimentalSpatialSvcSupport ? false # Spatial scalable video coding
+, experimentalFpMbStatsSupport ? false
+, experimentalEmulateHardwareSupport ? false
+}:
+
+let
+  inherit (stdenv) is64bit isMips isDarwin isCygwin;
+  inherit (stdenv.lib) enableFeature optional optionals;
+in
+
+assert vp8DecoderSupport || vp8EncoderSupport || vp9DecoderSupport || vp9EncoderSupport;
+assert internalStatsSupport && (vp9DecoderSupport || vp9EncoderSupport) -> postprocSupport;
+/* If spatialResamplingSupport not enabled, build will fail with undeclared variable errors.
+   Variables called in vpx_scale/generic/vpx_scale.c are declared by vpx_scale/vpx_scale_rtcd.pl,
+   but is only executed if spatialResamplingSupport is enabled */
+assert spatialResamplingSupport;
+assert postprocVisualizerSupport -> postprocSupport;
+assert unitTestsSupport -> curl != null && coreutils != null;
+assert vp9HighbitdepthSupport -> (vp9DecoderSupport || vp9EncoderSupport);
+assert isCygwin -> unitTestsSupport && webmIOSupport && libyuvSupport;
+
+stdenv.mkDerivation rec {
+  pname = "libvpx";
+  version = "1.8.2";
+
+  src = fetchFromGitHub {
+    owner = "webmproject";
+    repo = "libvpx";
+    rev = "v${version}";
+    sha256 = "0gyq4fkbd2fv7m1mm9xrvn6rk6f4jsmbv8bnlhingmnrvyncnmnr";
+  };
+
+  patches = [
+#    ./CVE-2019-9232.CVE-2019-9325.CVE-2019-9371.CVE-2019-9433.patch
+  ];
+
+  postPatch = ''patchShebangs .'';
+
+  outputs = [ "bin" "dev" "out" ];
+  setOutputFlags = false;
+
+  configurePlatforms = [];
+  configureFlags = [
+    (enableFeature (vp8EncoderSupport || vp8DecoderSupport) "vp8")
+    (enableFeature vp8EncoderSupport "vp8-encoder")
+    (enableFeature vp8DecoderSupport "vp8-decoder")
+    (enableFeature (vp9EncoderSupport || vp9DecoderSupport) "vp9")
+    (enableFeature vp9EncoderSupport "vp9-encoder")
+    (enableFeature vp9DecoderSupport "vp9-decoder")
+    (enableFeature extraWarningsSupport "extra-warnings")
+    (enableFeature werrorSupport "werror")
+    "--disable-install-docs"
+    (enableFeature examplesSupport "install-bins")
+    "--enable-install-libs"
+    "--disable-install-srcs"
+    (enableFeature debugSupport "debug")
+    (enableFeature gprofSupport "gprof")
+    (enableFeature gcovSupport "gcov")
+    # Required to build shared libraries
+    (enableFeature (!isCygwin) "pic")
+    (enableFeature optimizationsSupport "optimizations")
+    (enableFeature runtimeCpuDetectSupport "runtime-cpu-detect")
+    (enableFeature thumbSupport "thumb")
+    "--enable-libs"
+    (enableFeature examplesSupport "examples")
+    "--disable-docs"
+    "--as=yasm"
+    # Limit default decoder max to WHXGA
+    (if sizeLimitSupport then "--size-limit=5120x3200" else null)
+    "--disable-codec-srcs"
+    (enableFeature debugLibsSupport "debug-libs")
+    (enableFeature isMips "dequant-tokens")
+    (enableFeature isMips "dc-recon")
+    (enableFeature postprocSupport "postproc")
+    (enableFeature (postprocSupport && (vp9DecoderSupport || vp9EncoderSupport)) "vp9-postproc")
+    (enableFeature multithreadSupport "multithread")
+    (enableFeature internalStatsSupport "internal-stats")
+    (enableFeature spatialResamplingSupport "spatial-resampling")
+    (enableFeature realtimeOnlySupport "realtime-only")
+    (enableFeature ontheflyBitpackingSupport "onthefly-bitpacking")
+    (enableFeature errorConcealmentSupport "error-concealment")
+    # Shared libraries are only supported on ELF platforms
+    (if isDarwin || isCygwin then
+       "--enable-static --disable-shared"
+     else
+       "--enable-shared")
+    (enableFeature smallSupport "small")
+    (enableFeature postprocVisualizerSupport "postproc-visualizer")
+    (enableFeature unitTestsSupport "unit-tests")
+    (enableFeature webmIOSupport "webm-io")
+    (enableFeature libyuvSupport "libyuv")
+    (enableFeature decodePerfTestsSupport "decode-perf-tests")
+    (enableFeature encodePerfTestsSupport "encode-perf-tests")
+    (enableFeature multiResEncodingSupport "multi-res-encoding")
+    (enableFeature temporalDenoisingSupport "temporal-denoising")
+    (enableFeature (temporalDenoisingSupport && (vp9DecoderSupport || vp9EncoderSupport)) "vp9-temporal-denoising")
+    (enableFeature coefficientRangeCheckingSupport "coefficient-range-checking")
+    (enableFeature (vp9HighbitdepthSupport && is64bit) "vp9-highbitdepth")
+    (enableFeature (experimentalSpatialSvcSupport ||
+                    experimentalFpMbStatsSupport ||
+                    experimentalEmulateHardwareSupport) "experimental")
+  ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
+    #"--extra-cflags="
+    #"--extra-cxxflags="
+    #"--prefix="
+    #"--libc="
+    #"--libdir="
+    "--enable-external-build"
+    # libvpx darwin targets include darwin version (ie. ARCH-darwinXX-gcc, XX being the darwin version)
+    # See all_platforms: https://github.com/webmproject/libvpx/blob/master/configure
+    # Darwin versions: 10.4=8, 10.5=9, 10.6=10, 10.7=11, 10.8=12, 10.9=13, 10.10=14
+    "--force-target=${stdenv.hostPlatform.config}${
+            if stdenv.hostPlatform.isDarwin then
+              if      stdenv.hostPlatform.osxMinVersion == "10.10" then "14"
+              else if stdenv.hostPlatform.osxMinVersion == "10.9"  then "13"
+              else if stdenv.hostPlatform.osxMinVersion == "10.8"  then "12"
+              else if stdenv.hostPlatform.osxMinVersion == "10.7"  then "11"
+              else if stdenv.hostPlatform.osxMinVersion == "10.6"  then "10"
+              else if stdenv.hostPlatform.osxMinVersion == "10.5"  then "9"
+              else "8"
+            else ""}-gcc"
+    (if stdenv.hostPlatform.isCygwin then "--enable-static-msvcrt" else "")
+  ] # Experimental features
+    ++ optional experimentalSpatialSvcSupport "--enable-spatial-svc"
+    ++ optional experimentalFpMbStatsSupport "--enable-fp-mb-stats"
+    ++ optional experimentalEmulateHardwareSupport "--enable-emulate-hardware";
+
+  nativeBuildInputs = [ perl yasm ];
+
+  buildInputs = [ ]
+    ++ optionals unitTestsSupport [ coreutils curl ];
+
+  NIX_LDFLAGS = [
+    "-lpthread" # fixes linker errors
+  ];
+
+  enableParallelBuilding = true;
+
+  postInstall = ''moveToOutput bin "$bin" '';
+
+  meta = with stdenv.lib; {
+    description = "WebM VP8/VP9 codec SDK";
+    homepage    = https://www.webmproject.org/;
+    license     = licenses.bsd3;
+    maintainers = with maintainers; [ codyopel ];
+    platforms   = platforms.all;
+  };
+}
diff --git a/pkgs/development/libraries/libwebsockets/default.nix b/pkgs/development/libraries/libwebsockets/default.nix
index 732a529c21f..ddafc9bc659 100644
--- a/pkgs/development/libraries/libwebsockets/default.nix
+++ b/pkgs/development/libraries/libwebsockets/default.nix
@@ -17,6 +17,7 @@ let
     nativeBuildInputs = [ cmake ];
 
     cmakeFlags = [ "-DLWS_WITH_PLUGINS=ON" ];
+    NIX_CFLAGS_COMPILE = "-Wno-error=unused-but-set-variable";
 
     meta = with stdenv.lib; {
       description = "Light, portable C library for websockets";
@@ -39,9 +40,12 @@ rec {
   };
 
   libwebsockets_3_2 = generic {
-    version = "3.2.0";
-    sha256 = "0ac5755h3w1pl6cznqbvg63dwkqy544fqlhvqyp7s11hgs7jx6l8";
+    version = "3.2.2";
+    sha256 = "0m1kn4p167jv63zvwhsvmdn8azx3q7fkk8qc0fclwyps2scz6dna";
   };
 
-  libwebsockets = libwebsockets_3_2;
+  libwebsockets_4_0 = generic {
+    version = "4.0.1";
+    sha256 = "1pf7km0w5q7dqlwcwqizdpfqgg10prfq8g2c093f5nghwsfv8mmf";
+  };
 }
diff --git a/pkgs/development/libraries/libwnck/3.x.nix b/pkgs/development/libraries/libwnck/3.x.nix
index 29692c41c93..9f60abd4f59 100644
--- a/pkgs/development/libraries/libwnck/3.x.nix
+++ b/pkgs/development/libraries/libwnck/3.x.nix
@@ -21,26 +21,16 @@
 
 stdenv.mkDerivation rec{
   pname = "libwnck";
-  version = "3.32.0";
+  version = "3.36.0";
 
   outputs = [ "out" "dev" "devdoc" ];
   outputBin = "dev";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1jp3p1lnwnwi6fxl2rz3166cmwzwy9vqz896anpwc3wdy9f875cm";
+    sha256 = "0pwjdhca9lz2n1gf9b60xf0m6ipf9snp8rqf9csj4pgdnd882l5w";
   };
 
-  patches = [
-    # https://gitlab.gnome.org/GNOME/libwnck/issues/139
-    (fetchpatch {
-      url = https://gitlab.gnome.org/GNOME/libwnck/commit/0d9ff7db63af568feef8e8c566e249058ccfcb4e.patch;
-      sha256 = "18f78aayq9jma54v2qz3rm2clmz1cfq5bngxw8p4zba7hplyqsl9";
-    })
-    # https://gitlab.gnome.org/GNOME/libwnck/merge_requests/12
-    ./fix-pc-file.patch
-  ];
-
   nativeBuildInputs = [
     meson
     ninja
diff --git a/pkgs/development/libraries/libx86emu/default.nix b/pkgs/development/libraries/libx86emu/default.nix
index 35d45845ce6..1b10ac5fdaa 100644
--- a/pkgs/development/libraries/libx86emu/default.nix
+++ b/pkgs/development/libraries/libx86emu/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "libx86emu";
-  version = "2.6";
+  version = "3.1";
 
   src = fetchFromGitHub {
     owner = "wfeldt";
     repo = "libx86emu";
     rev = version;
-    sha256 = "1a43xrgxyl1bawcyf4qnvasgjrmnl1npzlz07yz90vyg56x5c102";
+    sha256 = "104xqc6nj9rpi7knl3dfqvasf087hlz2n5yndb1iycw35a6j509b";
   };
 
   nativeBuildInputs = [ perl ];
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "x86 emulation library";
     license = licenses.bsd2;
-    homepage = https://github.com/wfeldt/libx86emu;
+    homepage = "https://github.com/wfeldt/libx86emu";
     maintainers = with maintainers; [ bobvanderlinden ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/development/libraries/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix
index c07a5699f92..9883503414b 100644
--- a/pkgs/development/libraries/libxml2/default.nix
+++ b/pkgs/development/libraries/libxml2/default.nix
@@ -32,6 +32,11 @@ stdenv.mkDerivation rec {
       url = "https://gitlab.gnome.org/GNOME/libxml2/commit/0e1a49c8907645d2e155f0d89d4d9895ac5112b5.patch";
       sha256 = "0klvaxkzakkpyq0m44l9xrpn5kwaii194sqsivfm6zhnb9hhl15l";
     })
+    (fetchpatch {
+      name = "CVE-2019-20388.patch";
+      url = "https://gitlab.gnome.org/GNOME/libxml2/commit/6088a74bcf7d0c42e24cff4594d804e1d3c9fbca.patch";
+      sha256 = "070s7al2r2k92320h9cdfc2097jy4kk04d0disc98ddc165r80jl";
+    })
   ];
 
   outputs = [ "bin" "dev" "out" "man" "doc" ]
diff --git a/pkgs/development/libraries/libxslt/default.nix b/pkgs/development/libraries/libxslt/default.nix
index 6d12329a7f5..05da09ec5a4 100644
--- a/pkgs/development/libraries/libxslt/default.nix
+++ b/pkgs/development/libraries/libxslt/default.nix
@@ -3,9 +3,6 @@
 , pythonSupport ? stdenv.buildPlatform == stdenv.hostPlatform
 }:
 
-assert pythonSupport -> python != null;
-assert pythonSupport -> libxml2.pythonSupport;
-
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
@@ -53,5 +50,6 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = [ maintainers.eelco ];
+    broken = !(pythonSupport -> libxml2.pythonSupport); # see #73102 for why this is not an assert
   };
 }
diff --git a/pkgs/development/libraries/libzen/default.nix b/pkgs/development/libraries/libzen/default.nix
index fbbfb5364b0..80a570dd697 100644
--- a/pkgs/development/libraries/libzen/default.nix
+++ b/pkgs/development/libraries/libzen/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  version = "0.4.37";
+  version = "0.4.38";
   pname = "libzen";
   src = fetchurl {
     url = "https://mediaarea.net/download/source/libzen/${version}/libzen_${version}.tar.bz2";
-    sha256 = "1hcsrmn85b0xp0mp33aazk7g071q1v3f163nnhv8b0mv9c4bgsfn";
+    sha256 = "1nkygc17sndznpcf71fdrhwpm8z9a3hc9csqlafwswh49axhfkjr";
   };
 
   nativeBuildInputs = [ autoreconfHook ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Shared library for libmediainfo and mediainfo";
-    homepage = https://mediaarea.net/;
+    homepage = "https://mediaarea.net/";
     license = licenses.bsd2;
     platforms = platforms.unix;
     maintainers = [ maintainers.devhell ];
diff --git a/pkgs/development/libraries/libzip/default.nix b/pkgs/development/libraries/libzip/default.nix
index 1a23e91848e..79933d402f7 100644
--- a/pkgs/development/libraries/libzip/default.nix
+++ b/pkgs/development/libraries/libzip/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "libzip";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchurl {
     url = "https://www.nih.at/libzip/${pname}-${version}.tar.gz";
-    sha256 = "1zsspz6cbbqah11jkcc894jgxihlm8gicfh54yvny9gc3lsvpi3h";
+    sha256 = "120xgf7cgjmz9d3yp10lks6lhkgxqb4skbmbiiwf46gx868qxsq6";
   };
 
   # Fix pkgconfig file paths
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.nih.at/libzip;
+    homepage = "https://www.nih.at/libzip";
     description = "A C library for reading, creating and modifying zip archives";
     license = licenses.bsd3;
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/lime/default.nix b/pkgs/development/libraries/lime/default.nix
new file mode 100644
index 00000000000..3ebcc7ad78a
--- /dev/null
+++ b/pkgs/development/libraries/lime/default.nix
@@ -0,0 +1,36 @@
+{ bctoolbox
+, belle-sip
+, cmake
+, fetchFromGitLab
+, soci
+, sqlite
+, stdenv
+}:
+
+stdenv.mkDerivation rec {
+  pname = "lime";
+  version = "4.3.1";
+
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
+    repo = pname;
+    rev = version;
+    sha256 = "1ilpp9ai4sah23ngnxisvmwhrv5jkk5f831yp7smpl225z5nv83g";
+  };
+
+  buildInputs = [ bctoolbox soci belle-sip sqlite ];
+  nativeBuildInputs = [ cmake ];
+
+  # Do not build static libraries
+  cmakeFlags = [ "-DENABLE_STATIC=NO" ];
+
+  meta = with stdenv.lib; {
+    description = "End-to-end encryption library for instant messaging";
+    homepage = "http://www.linphone.org/technical-corner/lime";
+    license = licenses.gpl3;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ jluttine ];
+  };
+}
diff --git a/pkgs/development/libraries/loadcaffe/default.nix b/pkgs/development/libraries/loadcaffe/default.nix
deleted file mode 100644
index c4e55b14407..00000000000
--- a/pkgs/development/libraries/loadcaffe/default.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{stdenv, fetchFromGitHub, cmake, torch, protobuf, protobufc}:
-stdenv.mkDerivation rec {
-  pname = "loadcaffe";
-  version = "0.0pre2016.08.01";
-  buildInputs = [cmake torch protobuf protobufc];
-  src = fetchFromGitHub {
-    owner = "szagoruyko";
-    repo = "loadcaffe";
-    rev = "9be65cf6fa08e9333eae3553f68a8082debe9978";
-    sha256 = "0b22hvd9nvjsan2h93nl6y34kkkbs36d0k1zr3csjfb5l13xz0lh";
-  };
-  meta = {
-    inherit version;
-    description = ''Torch7 loader for Caffe networks'';
-    license = stdenv.lib.licenses.bsd2 ;
-    maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/malcontent/better-separation.patch b/pkgs/development/libraries/malcontent/better-separation.patch
new file mode 100644
index 00000000000..cd91760bff5
--- /dev/null
+++ b/pkgs/development/libraries/malcontent/better-separation.patch
@@ -0,0 +1,35 @@
+diff --git a/meson.build b/meson.build
+index a6c477d..f7b2f0a 100644
+--- a/meson.build
++++ b/meson.build
+@@ -125,8 +125,8 @@ test_env = [
+   'LC_ALL=C.UTF-8',
+ ]
+ 
+-subdir('accounts-service')
+ if not get_option('use_system_libmalcontent')
++  subdir('accounts-service')
+   subdir('libmalcontent')
+ else
+   libmalcontent_api_version = '0'
+@@ -137,11 +137,17 @@ endif
+ if get_option('ui').enabled()
+   subdir('libmalcontent-ui')
+ endif
+-subdir('malcontent-client')
++if not get_option('use_system_libmalcontent')
++  subdir('malcontent-client')
++endif
+ if get_option('ui').enabled()
+   subdir('malcontent-control')
+ endif
+-subdir('pam')
++if not get_option('use_system_libmalcontent')
++  subdir('pam')
++endif
+ subdir('po')
+ 
+-meson.add_install_script('build-aux/meson_post_install.py')
++if get_option('ui').enabled()
++  meson.add_install_script('build-aux/meson_post_install.py')
++endif
diff --git a/pkgs/development/libraries/malcontent/default.nix b/pkgs/development/libraries/malcontent/default.nix
index bd8988390c9..bf2ec772507 100644
--- a/pkgs/development/libraries/malcontent/default.nix
+++ b/pkgs/development/libraries/malcontent/default.nix
@@ -1,5 +1,6 @@
 { stdenv
 , fetchFromGitLab
+, fetchpatch
 , meson
 , ninja
 , pkgconfig
@@ -9,10 +10,7 @@
 , coreutils
 , accountsservice
 , dbus
-, flatpak
-, gtk3
 , pam
-, desktop-file-utils
 , polkit
 , glib-testing
 , python3
@@ -21,7 +19,7 @@
 
 stdenv.mkDerivation rec {
   pname = "malcontent";
-  version = "0.6.0";
+  version = "0.7.0";
 
   outputs = [ "bin" "out" "dev" "man" "installedTests" ];
 
@@ -30,16 +28,22 @@ stdenv.mkDerivation rec {
     owner = "pwithnall";
     repo = pname;
     rev = version;
-    sha256 = "COh6N3CmLIcxx6tW4jcP0m6TZv0Z1YJUM/nlG0RzYHQ=";
+    sha256 = "cP2l6nl6cuBQYwkmBj8APu/vH3jTeScXf3ffcuSfqlM=";
   };
 
   patches = [
     # Allow installing installed tests to a separate output.
     ./installed-tests-path.patch
 
-    # This is unnecessary and breaks when submodules are not available.
-    # https://gitlab.freedesktop.org/pwithnall/malcontent/merge_requests/3
-    ./use-system-dependencies.patch
+    # Do not build things that are part of malcontent-ui package
+    ./better-separation.patch
+
+    # Fix pam installed test
+    # https://gitlab.freedesktop.org/pwithnall/malcontent/merge_requests/50
+    (fetchpatch {
+      url = "https://gitlab.freedesktop.org/pwithnall/malcontent/commit/5d102eeb0604e65fc977ca77d4b249e986e634cc.patch";
+      sha256 = "5PD/eJBw/8Uqcia7ena9mu45DgREBFj0zUJpcd0vQ+8=";
+    })
   ];
 
   nativeBuildInputs = [
@@ -47,15 +51,12 @@ stdenv.mkDerivation rec {
     ninja
     pkgconfig
     gobject-introspection
-    desktop-file-utils
     wrapGAppsHook
   ];
 
   buildInputs = [
     accountsservice
     dbus
-    flatpak
-    gtk3
     pam
     polkit
     glib-testing
@@ -71,6 +72,7 @@ stdenv.mkDerivation rec {
   mesonFlags = [
     "-Dinstalled_tests=true"
     "-Dinstalled_test_prefix=${placeholder "installedTests"}"
+    "-Dui=disabled"
   ];
 
   postPatch = ''
diff --git a/pkgs/development/libraries/malcontent/installed-tests-path.patch b/pkgs/development/libraries/malcontent/installed-tests-path.patch
index ac87ddf6ccb..5d26c0f864f 100644
--- a/pkgs/development/libraries/malcontent/installed-tests-path.patch
+++ b/pkgs/development/libraries/malcontent/installed-tests-path.patch
@@ -22,12 +22,12 @@ index 610bc35..13e0713 100644
 \ No newline at end of file
 +endforeach
 diff --git a/meson_options.txt b/meson_options.txt
-index 06329d4..72aa505 100644
+index d516c70..583cb94 100644
 --- a/meson_options.txt
 +++ b/meson_options.txt
-@@ -9,3 +9,9 @@ option(
-   type: 'string',
-   description: 'directory for PAM modules'
+@@ -4,6 +4,12 @@ option(
+   value: false,
+   description: 'enable installed tests'
  )
 +option(
 +  'installed_test_prefix',
@@ -35,6 +35,9 @@ index 06329d4..72aa505 100644
 +  value: '',
 +  description: 'Prefix for installed tests'
 +)
+ option(
+   'pamlibdir',
+   type: 'string',
 diff --git a/pam/tests/meson.build b/pam/tests/meson.build
 index 0560dcb..a74dab2 100644
 --- a/pam/tests/meson.build
diff --git a/pkgs/development/libraries/malcontent/ui.nix b/pkgs/development/libraries/malcontent/ui.nix
new file mode 100644
index 00000000000..af1fa6b4138
--- /dev/null
+++ b/pkgs/development/libraries/malcontent/ui.nix
@@ -0,0 +1,70 @@
+{ stdenv
+, meson
+, ninja
+, pkg-config
+, gobject-introspection
+, wrapGAppsHook
+, glib
+, accountsservice
+, dbus
+, flatpak
+, malcontent
+, gtk3
+, desktop-file-utils
+, polkit
+, glib-testing
+}:
+
+stdenv.mkDerivation rec {
+  pname = "malcontent-ui";
+
+  inherit (malcontent) version src;
+
+  outputs = [ "bin" "out" "dev" ];
+
+  patches = [
+    # Allow installing installed tests to a separate output.
+    ./installed-tests-path.patch
+
+    # Do not build things that are part of malcontent package
+    ./better-separation.patch
+  ];
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkg-config
+    gobject-introspection
+    desktop-file-utils
+    wrapGAppsHook
+  ];
+
+  buildInputs = [
+    dbus
+    polkit
+    glib-testing
+    flatpak
+  ];
+
+  propagatedBuildInputs = [
+    accountsservice
+    malcontent
+    glib
+    gtk3
+  ];
+
+  mesonFlags = [
+    "-Dinstalled_tests=true"
+    "-Dinstalled_test_prefix=${placeholder "installedTests"}"
+    "-Duse_system_libmalcontent=true"
+    "-Dui=enabled"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "UI components for parental controls library";
+    homepage = "https://gitlab.freedesktop.org/pwithnall/malcontent";
+    license = licenses.lgpl21Plus;
+    maintainers = with maintainers; [ jtojnar ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/libraries/malcontent/use-system-dependencies.patch b/pkgs/development/libraries/malcontent/use-system-dependencies.patch
deleted file mode 100644
index 8920b1f4a99..00000000000
--- a/pkgs/development/libraries/malcontent/use-system-dependencies.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/meson.build b/meson.build
-index 3575224..0abea63 100644
---- a/meson.build
-+++ b/meson.build
-@@ -40,9 +40,8 @@ polkit_gobject = dependency('polkit-gobject-1')
- polkitpolicydir = polkit_gobject.get_pkgconfig_variable('policydir',
-   define_variable: ['prefix', prefix])
- 
--libglib_testing = subproject('libglib-testing')
- libglib_testing_dep = dependency(
--  'libglib-testing',
-+  'glib-testing-0',
-   fallback: ['libglib-testing', 'libglib_testing_dep'],
- )
- 
diff --git a/pkgs/development/libraries/mediastreamer/default.nix b/pkgs/development/libraries/mediastreamer/default.nix
index 0204223d127..5f7daa83b2f 100644
--- a/pkgs/development/libraries/mediastreamer/default.nix
+++ b/pkgs/development/libraries/mediastreamer/default.nix
@@ -1,37 +1,97 @@
-{ stdenv, pkgconfig, intltool, alsaLib, libpulseaudio, speex, gsm
-, libopus, ffmpeg, libX11, libXv, libGLU, libGL, glew, libtheora, libvpx, SDL, libupnp
-, ortp, libv4l, libpcap, srtp, fetchFromGitHub, cmake, bctoolbox, doxygen
-, python, libXext, libmatroska, fetchpatch
+{ alsaLib
+, bctoolbox
+, bzrtp
+, cmake
+, doxygen
+, fetchFromGitLab
+, fetchpatch
+, ffmpeg
+, glew
+, gsm
+, intltool
+, libGL
+, libGLU
+, libX11
+, libXext
+, libXv
+, libmatroska
+, libopus
+, libpcap
+, libpulseaudio
+, libtheora
+, libupnp
+, libv4l
+, libvpx
+, ortp
+, pkgconfig
+, python
+, SDL
+, speex
+, srtp
+, stdenv
 }:
 
 stdenv.mkDerivation rec {
   pname = "mediastreamer2";
-  version = "2.16.1";
+  # Using master branch for linphone-desktop caused a chain reaction that many
+  # of its dependencies needed to use master branch too.
+  version = "unstable-2020-03-20";
 
-  src = fetchFromGitHub {
-    owner = "BelledonneCommunications";
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
     repo = pname;
-    rev = version;
-    sha256 = "02745bzl2r1jqvdqzyv94fjd4w92zr976la4c4nfvsy52waqah7j";
+    rev = "c5eecb72cb44376d142949051dd0cb7c982608fb";
+    sha256 = "1vp260jxvjlmrmjdl4p23prg4cjln20a7z6zq8dqvfh4iq3ya033";
   };
 
   patches = [
-    (fetchpatch {
-      name = "allow-build-without-git.patch";
-      url = "https://github.com/BelledonneCommunications/mediastreamer2/commit/de3a24b795d7a78e78eab6b974e7ec5abf2259ac.patch";
-      sha256 = "1zqkrab42n4dha0knfsyj4q0wc229ma125gk9grj67ps7r7ipscy";
-    })
+    # Plugins directory is normally fixed during compile time. This patch makes
+    # it possible to set the plugins directory run time with an environment
+    # variable MEDIASTREAMER_PLUGINS_DIR. This makes it possible to construct a
+    # plugin directory with desired plugins and wrap executables so that the
+    # environment variable points to that directory.
     ./plugins_dir.patch
   ];
 
-  nativeBuildInputs = [ pkgconfig intltool cmake doxygen python ];
+  nativeBuildInputs = [
+    cmake
+    doxygen
+    intltool
+    pkgconfig
+    python
+  ];
 
   propagatedBuildInputs = [
-    alsaLib libpulseaudio speex gsm libopus
-    ffmpeg libX11 libXv libGLU libGL glew libtheora libvpx SDL libupnp
-    ortp libv4l libpcap srtp bctoolbox libXext libmatroska
+    alsaLib
+    bctoolbox
+    bzrtp
+    ffmpeg
+    glew
+    gsm
+    libGL
+    libGLU
+    libX11
+    libXext
+    libXv
+    libmatroska
+    libopus
+    libpcap
+    libpulseaudio
+    libtheora
+    libupnp
+    libv4l
+    libvpx
+    ortp
+    SDL
+    speex
+    srtp
   ];
 
+  # Do not build static libraries
+  cmakeFlags = [ "-DENABLE_STATIC=NO" ];
+
   NIX_CFLAGS_COMPILE = toString [
     "-DGIT_VERSION=\"v${version}\""
     "-Wno-error=deprecated-declarations"
@@ -43,8 +103,9 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A powerful and lightweight streaming engine specialized for voice/video telephony applications";
-    homepage = http://www.linphone.org/technical-corner/mediastreamer2;
-    license = licenses.gpl2;
+    homepage = "http://www.linphone.org/technical-corner/mediastreamer2";
+    license = licenses.gpl3;
     platforms = platforms.linux;
+    maintainers = with maintainers; [ jluttine ];
   };
 }
diff --git a/pkgs/development/libraries/mediastreamer/msopenh264.nix b/pkgs/development/libraries/mediastreamer/msopenh264.nix
index f1e9fc30151..45b3c83bfe2 100644
--- a/pkgs/development/libraries/mediastreamer/msopenh264.nix
+++ b/pkgs/development/libraries/mediastreamer/msopenh264.nix
@@ -1,31 +1,49 @@
-{ stdenv, autoreconfHook, pkgconfig, mediastreamer, openh264
-, fetchurl, fetchpatch, cmake
+{ autoreconfHook
+, cmake
+, fetchFromGitLab
+, fetchpatch
+, mediastreamer
+, openh264
+, pkgconfig
+, stdenv
 }:
 
 stdenv.mkDerivation rec {
-  pname = "mediastreamer-openh264";
-  version = "1.2.1";
+  pname = "msopenh264";
+  # Using master branch for linphone-desktop caused a chain reaction that many
+  # of its dependencies needed to use master branch too.
+  version = "unstable-2020-03-03";
 
-  src = fetchurl {
-    url = "https://www.linphone.org/releases/sources/plugins/msopenh264/msopenh264-${version}.tar.gz";
-    sha256 = "0rdxgazm52560g52pp6mp3mwx6j1z3h2zyizzfycp8y8zi92fqm8";
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
+    repo = pname;
+    rev = "2c3abf52824ad23a4caae7565ef158ef91767704";
+    sha256 = "140hs5lzpshzswvl39klcypankq3v2qck41696j22my7s4wsa0hr";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "msopenh264-build-with-openh264-v2.patch";
-      url = "https://git.pld-linux.org/?p=packages/mediastreamer-plugin-msopenh264.git;a=blob_plain;f=mediastreamer-plugin-msopenh264-openh264.patch;hb=344b8af379701a7e58b4ffb3cbac1517eff079fd";
-      sha256 = "10c24b0afchx78q28176pd8iz7i1nlf57f6v6lyqxpz60fm5nrcc";
-    })
-  ];
-
   nativeBuildInputs = [ autoreconfHook cmake pkgconfig ];
   buildInputs = [ mediastreamer openh264 ];
 
+  # Do not build static libraries
+  cmakeFlags = [
+    "-DENABLE_STATIC=NO"
+    "-DCMAKE_SKIP_INSTALL_RPATH=ON"
+  ];
+
+  # CMAKE_INSTALL_PREFIX has no effect so let's install manually. See:
+  # https://gitlab.linphone.org/BC/public/msopenh264/issues/1
+  installPhase = ''
+    mkdir -p $out/lib/mediastreamer/plugins
+    cp src/libmsopenh264.so $out/lib/mediastreamer/plugins/
+  '';
+
   meta = with stdenv.lib; {
     description = "H.264 encoder/decoder plugin for mediastreamer2";
     homepage = "https://www.linphone.org/technical-corner/mediastreamer2";
     license = licenses.gpl2;
     platforms = platforms.linux;
+    maintainers = with maintainers; [ jluttine ];
   };
 }
diff --git a/pkgs/development/libraries/mediastreamer/plugins_dir.patch b/pkgs/development/libraries/mediastreamer/plugins_dir.patch
index e64bfc5a43a..43e398aafee 100644
--- a/pkgs/development/libraries/mediastreamer/plugins_dir.patch
+++ b/pkgs/development/libraries/mediastreamer/plugins_dir.patch
@@ -1,24 +1,18 @@
-diff -uNr mediastreamer2/src/base/msfactory.c mediastreamer2-new/src/base/msfactory.c
---- a/src/base/msfactory.c	2015-05-13 16:53:49.801113249 +0200
-+++ b/src/base/msfactory.c	2015-08-26 21:35:44.994724647 +0200
-@@ -630,12 +630,18 @@
+diff --git a/src/base/msfactory.c b/src/base/msfactory.c
+index 14f868e3..2e3445a1 100644
+--- a/src/base/msfactory.c
++++ b/src/base/msfactory.c
+@@ -770,7 +770,12 @@ void ms_factory_uninit_plugins(MSFactory *factory){
  }
  
  void ms_factory_init_plugins(MSFactory *obj) {
+-	if (obj->plugins_dir == NULL) {
 +	char *package_plugins_dir;
- 	if (obj->plugins_dir == NULL) {
-+		package_plugins_dir=getenv("MEDIASTREAMER_PLUGINS_DIR");
-+		if (package_plugins_dir!=NULL){
-+			obj->plugins_dir = ms_strdup(package_plugins_dir);
-+		} else {
- #ifdef PACKAGE_PLUGINS_DIR
--		obj->plugins_dir = ms_strdup(PACKAGE_PLUGINS_DIR);
-+			obj->plugins_dir = ms_strdup(PACKAGE_PLUGINS_DIR);
- #else
--		obj->plugins_dir = ms_strdup("");
-+			obj->plugins_dir = ms_strdup("");
- #endif
-+		}
- 	}
- 	if (strlen(obj->plugins_dir) > 0) {
- 		ms_message("Loading ms plugins from [%s]",obj->plugins_dir);
++	// Force plugin dir from environment variable if set
++	package_plugins_dir = getenv("MEDIASTREAMER_PLUGINS_DIR");
++	if (package_plugins_dir != NULL) {
++		ms_factory_set_plugins_dir(obj, package_plugins_dir);
++	} else if (obj->plugins_dir == NULL) {
+ #ifdef __APPLE__
+ 	char *dir = getPluginsDir();
+ 	if (dir != NULL) {
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index 4e95e477173..7eb18dd31c1 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -27,7 +27,7 @@
 with stdenv.lib;
 
 let
-  version = "19.3.3";
+  version = "20.0.2";
   branch  = versions.major version;
 in
 
@@ -42,7 +42,7 @@ stdenv.mkDerivation {
       "ftp://ftp.freedesktop.org/pub/mesa/older-versions/${branch}.x/${version}/mesa-${version}.tar.xz"
       "https://mesa.freedesktop.org/archive/mesa-${version}.tar.xz"
     ];
-    sha256 = "02czqdqf64i3az5p1allnxycyjad3x35cj0hz0017mi5pc84ikl1";
+    sha256 = "0vz8k07d23qdwy67fnna9y0ynnni0m8lgswcmdm60l4mcv5z2m5a";
   };
 
   prePatch = "patchShebangs .";
@@ -191,8 +191,18 @@ stdenv.mkDerivation {
   };
 
   meta = with stdenv.lib; {
-    description = "An open source implementation of OpenGL";
-    homepage = https://www.mesa3d.org/;
+    description = "An open source 3D graphics library";
+    longDescription = ''
+      The Mesa project began as an open-source implementation of the OpenGL
+      specification - a system for rendering interactive 3D graphics. Over the
+      years the project has grown to implement more graphics APIs, including
+      OpenGL ES (versions 1, 2, 3), OpenCL, OpenMAX, VDPAU, VA API, XvMC, and
+      Vulkan.  A variety of device drivers allows the Mesa libraries to be used
+      in many different environments ranging from software emulation to
+      complete hardware acceleration for modern GPUs.
+    '';
+    homepage = "https://www.mesa3d.org/";
+    changelog = "https://www.mesa3d.org/relnotes/${version}.html";
     license = licenses.mit; # X11 variant, in most files
     platforms = platforms.mesaPlatforms;
     maintainers = with maintainers; [ vcunat ];
diff --git a/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch b/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch
index 8ce3473dd32..acf3d827c56 100644
--- a/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch
+++ b/pkgs/development/libraries/mesa/disk_cache-include-dri-driver-path-in-cache-key.patch
@@ -1,4 +1,4 @@
-From 6d22383149e4cdc646c68e29238f41d895a4705b Mon Sep 17 00:00:00 2001
+From 46b10f2bc28fd79d561c8c49bbae3aee6a4cf0e6 Mon Sep 17 00:00:00 2001
 From: David McFarland <corngood@gmail.com>
 Date: Mon, 6 Aug 2018 15:52:11 -0300
 Subject: [PATCH] disk_cache: include dri driver path in cache key
@@ -12,10 +12,10 @@ timestamps in /nix/store are zero.
  3 files changed, 15 insertions(+), 1 deletion(-)
 
 diff --git a/meson_options.txt b/meson_options.txt
-index 626baf3..579c15b 100644
+index 1a2dd8ebd12..2ac741af5a6 100644
 --- a/meson_options.txt
 +++ b/meson_options.txt
-@@ -341,6 +341,12 @@ option(
+@@ -348,6 +348,12 @@ option(
    value : true,
    description : 'Enable direct rendering in GLX and EGL for DRI',
  )
@@ -29,10 +29,10 @@ index 626baf3..579c15b 100644
    'I-love-half-baked-turnips',
    type : 'boolean',
 diff --git a/src/util/disk_cache.c b/src/util/disk_cache.c
-index 0cd92ca..fc1c173 100644
+index d1f14736725..2ed328f292e 100644
 --- a/src/util/disk_cache.c
 +++ b/src/util/disk_cache.c
-@@ -395,8 +395,10 @@ disk_cache_create(const char *gpu_name, const char *driver_id,
+@@ -402,8 +402,10 @@ disk_cache_create(const char *gpu_name, const char *driver_id,
  
     /* Create driver id keys */
     size_t id_size = strlen(driver_id) + 1;
@@ -43,7 +43,7 @@ index 0cd92ca..fc1c173 100644
     cache->driver_keys_blob_size += gpu_name_size;
  
     /* We sometimes store entire structs that contains a pointers in the cache,
-@@ -417,6 +419,7 @@ disk_cache_create(const char *gpu_name, const char *driver_id,
+@@ -424,6 +426,7 @@ disk_cache_create(const char *gpu_name, const char *driver_id,
     uint8_t *drv_key_blob = cache->driver_keys_blob;
     DRV_KEY_CPY(drv_key_blob, &cache_version, cv_size)
     DRV_KEY_CPY(drv_key_blob, driver_id, id_size)
@@ -52,13 +52,13 @@ index 0cd92ca..fc1c173 100644
     DRV_KEY_CPY(drv_key_blob, &ptr_size, ptr_size_size)
     DRV_KEY_CPY(drv_key_blob, &driver_flags, driver_flags_size)
 diff --git a/src/util/meson.build b/src/util/meson.build
-index f69ebe9..e2bd8e2 100644
+index 9da29cc7390..5f549bb1d99 100644
 --- a/src/util/meson.build
 +++ b/src/util/meson.build
-@@ -158,7 +158,12 @@ _libmesa_util = static_library(
-   [files_mesa_util, format_srgb],
+@@ -170,7 +170,12 @@ _libmesa_util = static_library(
    include_directories : inc_common,
    dependencies : deps_for_libmesa_util,
+   link_with: libmesa_format,
 -  c_args : [c_msvc_compat_args, c_vis_args],
 +  c_args : [
 +    c_msvc_compat_args, c_vis_args,
@@ -70,5 +70,4 @@ index f69ebe9..e2bd8e2 100644
  )
  
 -- 
-2.24.1
-
+2.25.1
diff --git a/pkgs/development/libraries/mesa/missing-includes.patch b/pkgs/development/libraries/mesa/missing-includes.patch
index 18e7d5437b1..9685a1619a5 100644
--- a/pkgs/development/libraries/mesa/missing-includes.patch
+++ b/pkgs/development/libraries/mesa/missing-includes.patch
@@ -9,17 +9,6 @@
  #include "pipe/p_compiler.h"
  #include "pipe/p_state.h"
  
---- ./src/gallium/state_trackers/nine/threadpool.h.orig	2015-05-07 14:10:53.443337212 +0200
-+++ ./src/gallium/state_trackers/nine/threadpool.h	2015-05-07 14:11:04.210307653 +0200
-@@ -24,6 +24,8 @@
- #ifndef _THREADPOOL_H_
- #define _THREADPOOL_H_
- 
-+#include <pthread.h>
-+
- #define MAXTHREADS 1
- 
- struct threadpool {
 --- ./src/util/rand_xor.c.orig	2017-06-20 00:38:57.199474067 +0200
 +++ ./src/util/rand_xor.c	2017-06-20 00:40:31.351279557 +0200
 @@ -23,7 +23,9 @@
diff --git a/pkgs/development/libraries/neon/default.nix b/pkgs/development/libraries/neon/default.nix
index ffefc8e51c4..c9a2621f440 100644
--- a/pkgs/development/libraries/neon/default.nix
+++ b/pkgs/development/libraries/neon/default.nix
@@ -14,12 +14,12 @@ let
 in
 
 stdenv.mkDerivation rec {
-  version = "0.30.2";
+  version = "0.31.0";
   pname = "neon";
 
   src = fetchurl {
     url = "http://www.webdav.org/neon/${pname}-${version}.tar.gz";
-    sha256 = "1jpvczcx658vimqm7c8my2q41fnmjaf1j03g7bsli6rjxk6xh2yv";
+    sha256 = "19dx4rsqrck9jl59y4ad9jf115hzh6pz1hcl2dnlfc84hc86ymc0";
   };
 
   patches = optionals stdenv.isDarwin [ ./0.29.6-darwin-fix-configure.patch ];
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An HTTP and WebDAV client library";
-    homepage = http://www.webdav.org/neon/;
+    homepage = "http://www.webdav.org/neon/";
     platforms = platforms.unix;
     license = licenses.lgpl2;
   };
diff --git a/pkgs/development/libraries/nghttp2/default.nix b/pkgs/development/libraries/nghttp2/default.nix
index 57ed5891275..eae4563cf80 100644
--- a/pkgs/development/libraries/nghttp2/default.nix
+++ b/pkgs/development/libraries/nghttp2/default.nix
@@ -9,14 +9,16 @@
 , enableGetAssets ? false, libxml2 ? null
 , enableJemalloc ? false, jemalloc ? null
 , enableApp ? !stdenv.hostPlatform.isWindows
+, enablePython ? false, python ? null, cython ? null, ncurses ? null, setuptools ? null
 }:
 
 assert enableHpack -> jansson != null;
 assert enableAsioLib -> boost != null;
 assert enableGetAssets -> libxml2 != null;
 assert enableJemalloc -> jemalloc != null;
+assert enablePython -> python != null && cython != null && ncurses != null && setuptools != null;
 
-let inherit (stdenv.lib) optional; in
+let inherit (stdenv.lib) optional optionals optionalString; in
 
 stdenv.mkDerivation rec {
   pname = "nghttp2";
@@ -27,7 +29,8 @@ stdenv.mkDerivation rec {
     sha256 = "0kyrgd4s2pq51ps5z385kw1hn62m8qp7c4h6im0g4ibrf89qwxc2";
   };
 
-  outputs = [ "bin" "out" "dev" "lib" ];
+  outputs = [ "bin" "out" "dev" "lib" ]
+    ++ optional enablePython "python";
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ openssl ]
@@ -37,16 +40,31 @@ stdenv.mkDerivation rec {
     ++ optional enableHpack jansson
     ++ optional enableAsioLib boost
     ++ optional enableGetAssets libxml2
-    ++ optional enableJemalloc jemalloc;
+    ++ optional enableJemalloc jemalloc
+    ++ optionals enablePython [ python ncurses setuptools ];
 
   enableParallelBuilding = true;
 
   configureFlags = [
     "--with-spdylay=no"
     "--disable-examples"
-    "--disable-python-bindings"
     (stdenv.lib.enableFeature enableApp "app")
-  ] ++ optional enableAsioLib "--enable-asio-lib --with-boost-libdir=${boost}/lib";
+  ] ++ optional enableAsioLib "--enable-asio-lib --with-boost-libdir=${boost}/lib"
+    ++ (if enablePython then [
+    "--with-cython=${cython}/bin/cython"
+  ] else [
+    "--disable-python-bindings"
+  ]);
+
+  preInstall = optionalString enablePython ''
+    mkdir -p $out/${python.sitePackages}
+    # convince installer it's ok to install here
+    export PYTHONPATH="$PYTHONPATH:$out/${python.sitePackages}"
+  '';
+  postInstall = optionalString enablePython ''
+    mkdir -p $python/${python.sitePackages}
+    mv $out/${python.sitePackages}/* $python/${python.sitePackages}
+  '';
 
   #doCheck = true;  # requires CUnit ; currently failing at test_util_localtime_date in util_test.cc
 
diff --git a/pkgs/development/libraries/nss_wrapper/default.nix b/pkgs/development/libraries/nss_wrapper/default.nix
index dec4e61a7bc..c03b0944778 100644
--- a/pkgs/development/libraries/nss_wrapper/default.nix
+++ b/pkgs/development/libraries/nss_wrapper/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, cmake, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "nss_wrapper-1.1.8";
+  name = "nss_wrapper-1.1.11";
 
   src = fetchurl {
     url = "mirror://samba/cwrap/${name}.tar.gz";
-    sha256 = "1cnzhnz68ywx1jwj6xaxv8hg8hpm63ssxmrlhsz3sfgjhfkmw95l";
+    sha256 = "1q5l6w69yc71ly8gcbnkrcbnq6b64cbiiv99m0z5vn5lgwp36igv";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/libraries/nsss/default.nix b/pkgs/development/libraries/nsss/default.nix
index 5c8bf8dedc1..3e3530215bf 100644
--- a/pkgs/development/libraries/nsss/default.nix
+++ b/pkgs/development/libraries/nsss/default.nix
@@ -4,8 +4,8 @@ with skawarePackages;
 
 buildPackage {
   pname = "nsss";
-  version = "0.0.2.1";
-  sha256 = "1arzl4492wv42rvv6xs8h5d3qpy9nwxv5l84inzabs6s9f9nlxax";
+  version = "0.0.2.2";
+  sha256 = "0am195wabv63n545ykqnch9gs8cs1g5zw35k2ddxb9dnamhxfi9k";
 
   description = "An implementation of a subset of the pwd.h, group.h and shadow.h family of functions.";
 
diff --git a/pkgs/development/libraries/ntdb/default.nix b/pkgs/development/libraries/ntdb/default.nix
index a310d2f2780..de0db887d4b 100644
--- a/pkgs/development/libraries/ntdb/default.nix
+++ b/pkgs/development/libraries/ntdb/default.nix
@@ -1,32 +1,48 @@
-{ stdenv, fetchurl, python, pkgconfig, readline, gettext, libxslt
-, docbook_xsl, docbook_xml_dtd_42
+{ stdenv
+, fetchurl
+, python3
+, pkg-config
+, readline
+, gettext
+, libxslt
+, docbook-xsl-nons
+, docbook_xml_dtd_42
+, wafHook
 }:
 
 stdenv.mkDerivation rec {
-  name = "ntdb-1.0";
+  pname = "ntdb";
+  version = "1.0";
 
   src = fetchurl {
-    url = "mirror://samba/tdb/${name}.tar.gz";
+    url = "mirror://samba/tdb/${pname}-${version}.tar.gz";
     sha256 = "0jdzgrz5sr25k83yrw7wqb3r0yj1v04z4s3lhsmnr5z6n5ifhyl1";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [
+    pkg-config
+    gettext
+    libxslt
+    docbook-xsl-nons
+    docbook_xml_dtd_42
+    wafHook
+  ];
+
   buildInputs = [
-    python readline gettext libxslt docbook_xsl docbook_xml_dtd_42
+    python3
+    readline # required to build python
   ];
 
-  preConfigure = ''
-    patchShebangs buildtools/bin/waf
-  '';
+  wafPath = "buildtools/bin/waf";
 
-  configureFlags = [
+  wafConfigureFlags = [
     "--bundled-libraries=NONE"
     "--builtin-libraries=replace,ccan"
   ];
 
   meta = with stdenv.lib; {
     description = "The not-so trivial database";
-    homepage = https://tdb.samba.org/;
+    homepage = "https://tdb.samba.org/";
     license = licenses.lgpl3Plus;
     platforms = platforms.all;
   };
diff --git a/pkgs/development/libraries/nuspell/default.nix b/pkgs/development/libraries/nuspell/default.nix
index c1f354a1ac9..0cda3d6ac9a 100644
--- a/pkgs/development/libraries/nuspell/default.nix
+++ b/pkgs/development/libraries/nuspell/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nuspell";
-  version = "3.0.0";
+  version = "3.1.0";
 
   src = fetchFromGitHub {
     owner = "nuspell";
     repo = "nuspell";
     rev = "v${version}";
-    sha256 = "1cyvvf5f92a777qgh00ja43z43j5nhc9dw5l3wvw9j6j9bqc4i8p";
+    sha256 = "19mwjg5mz645i4ijhx93rqbcim14ca6nczymr20p0z0pn5mx5p18";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ronn ];
diff --git a/pkgs/development/libraries/onnxruntime/default.nix b/pkgs/development/libraries/onnxruntime/default.nix
index ace08ef018a..7d0a9342aa7 100644
--- a/pkgs/development/libraries/onnxruntime/default.nix
+++ b/pkgs/development/libraries/onnxruntime/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "onnxruntime";
-  version = "1.1.2";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "microsoft";
     repo = "onnxruntime";
     rev = "v${version}";
-    sha256 = "0chbn2wkl1w3msw0zscajinzlaaahg4w3lrpb2l8xgqdwbln0ckj";
+    sha256 = "1alhb7nvlxrr9yf757gs4hkzksbk3mxyv5zcmmpl82ibl65vh55k";
     # TODO: use nix-versions of grpc, onnx, eigen, googletest, etc.
     # submodules increase src size and compile times significantly
     # not currently feasible due to how integrated cmake build is with git
diff --git a/pkgs/development/libraries/opencl-clhpp/default.nix b/pkgs/development/libraries/opencl-clhpp/default.nix
index 5ed2dd5e23d..cb8d9c788ca 100644
--- a/pkgs/development/libraries/opencl-clhpp/default.nix
+++ b/pkgs/development/libraries/opencl-clhpp/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "opencl-clhpp";
-  version = "2.0.10";
+  version = "2.0.11";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "OpenCL-CLHPP";
     rev = "v${version}";
-    sha256 = "0h5kpg5cl8wzfnqmv6i26aig2apv06ffm9p3rh35938n9r8rladm";
+    sha256 = "0a0n0f1lb86cwfm0ndzykcn965vz1v0n9n3rfmkiwrzkdhc9iy2y";
   };
 
   nativeBuildInputs = [ cmake python ];
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "OpenCL Host API C++ bindings";
-    homepage = http://github.khronos.org/OpenCL-CLHPP/;
+    homepage = "http://github.khronos.org/OpenCL-CLHPP/";
     license = licenses.mit;
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/libraries/opencl-headers/default.nix b/pkgs/development/libraries/opencl-headers/default.nix
index d0cc6396b8d..682a547d8f3 100644
--- a/pkgs/development/libraries/opencl-headers/default.nix
+++ b/pkgs/development/libraries/opencl-headers/default.nix
@@ -1,25 +1,25 @@
 { stdenv, fetchFromGitHub
-, version # "12" for "1.2", "22" for "2.2" and so on
 }:
 
-stdenv.mkDerivation {
-  name = "opencl-headers-${version}-2017-07-18";
+stdenv.mkDerivation rec {
+  name = "opencl-headers-${version}";
+  version = "2020.03.13";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "OpenCL-Headers";
-    rev = "f039db6764d52388658ef15c30b2237bbda49803";
-    sha256 = "0z04i330zr8czak2624q71aajdcq7ly8mb5bgala5m235qjpsrh7";
+    rev = "v${version}";
+    sha256 = "1d9ibiwicaj17757h9yyjc9i2hny8d8npn4spbjscins8972z3hw";
   };
 
   installPhase = ''
     mkdir -p $out/include/CL
-    cp opencl${version}/CL/* $out/include/CL
+    cp CL/* $out/include/CL
   '';
 
   meta = with stdenv.lib; {
     description = "Khronos OpenCL headers version ${version}";
-    homepage = https://www.khronos.org/registry/cl/;
+    homepage = "https://www.khronos.org/registry/cl/";
     license = licenses.mit;
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/libraries/opendht/default.nix b/pkgs/development/libraries/opendht/default.nix
index 6bf5ea6023e..2abad0f705f 100644
--- a/pkgs/development/libraries/opendht/default.nix
+++ b/pkgs/development/libraries/opendht/default.nix
@@ -1,26 +1,27 @@
 { stdenv, fetchFromGitHub
-, autoreconfHook, pkgconfig
-, nettle, gnutls, msgpack, readline, libargon2
+, cmake, pkg-config
+, asio, nettle, gnutls, msgpack, readline, libargon2
 }:
 
 stdenv.mkDerivation rec {
   pname = "opendht";
-  version = "1.8.0";
+  version = "2.0.0";
 
   src = fetchFromGitHub {
     owner = "savoirfairelinux";
     repo = "opendht";
     rev = version;
-    sha256 = "1mj3zsywxphh9wcazyqsldwwn14r77xv9cjsmc0nmcybsl2bwnpl";
+    sha256 = "1q1fwk8wwk9r6bp0indpr60ql668lsk16ykslacyhrh7kg97kvhr";
   };
 
   nativeBuildInputs =
-    [ autoreconfHook
-      pkgconfig
+    [ cmake
+      pkg-config
     ];
 
   buildInputs =
-    [ nettle
+    [ asio
+      nettle
       gnutls
       msgpack
       readline
diff --git a/pkgs/development/libraries/openldap/default.nix b/pkgs/development/libraries/openldap/default.nix
index 4c2052ae791..cc9e44d990d 100644
--- a/pkgs/development/libraries/openldap/default.nix
+++ b/pkgs/development/libraries/openldap/default.nix
@@ -58,7 +58,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage    = http://www.openldap.org/;
+    homepage = "https://www.openldap.org/";
     description = "An open source implementation of the Lightweight Directory Access Protocol";
     license = licenses.openldap;
     maintainers = with maintainers; [ lovek323 ];
diff --git a/pkgs/development/libraries/openxr-loader/default.nix b/pkgs/development/libraries/openxr-loader/default.nix
index 1c30277df12..5ba6c38f7c1 100644
--- a/pkgs/development/libraries/openxr-loader/default.nix
+++ b/pkgs/development/libraries/openxr-loader/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "openxr-loader";
-  version = "1.0.6";
+  version = "1.0.8";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "OpenXR-SDK-Source";
     rev = "release-${version}";
-    sha256 = "0zvp3x9hhpww2ym1inc0z8cwmfqhgqgl2g7csmj6ipp2fqwl6dlj";
+    sha256 = "0p5i4360hc5y8rqhgpvg1f1yaxl7kay471868vfzkp44g8dybkvm";
   };
 
   nativeBuildInputs = [ cmake python3 ];
diff --git a/pkgs/development/libraries/ortp/default.nix b/pkgs/development/libraries/ortp/default.nix
index 68e890e3368..53636f05b78 100644
--- a/pkgs/development/libraries/ortp/default.nix
+++ b/pkgs/development/libraries/ortp/default.nix
@@ -1,16 +1,27 @@
-{ stdenv, cmake, fetchFromGitHub, bctoolbox }:
+{ bctoolbox
+, cmake
+, fetchFromGitLab
+, stdenv
+}:
 
 stdenv.mkDerivation rec {
   pname = "ortp";
-  version = "1.0.2";
+  # Using master branch for linphone-desktop caused a chain reaction that many
+  # of its dependencies needed to use master branch too.
+  version = "unstable-2020-03-17";
 
-  src = fetchFromGitHub {
-    owner = "BelledonneCommunications";
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
     repo = pname;
-    rev = version;
-    sha256 = "12cwv593bsdnxs0zfcp07vwyk7ghlz2wv7vdbs1ksv293w3vj2rv";
+    rev = "804dfc4f90d1a4301127c7af10a74fd2935dd5d8";
+    sha256 = "1yr8j8am68spyy5d9vna8zcq3qn039mi16cv9jf5n4chs9rxf7xx";
   };
 
+  # Do not build static libraries
+  cmakeFlags = [ "-DENABLE_STATIC=NO" ];
+
   NIX_CFLAGS_COMPILE = "-Wno-error=stringop-truncation";
 
   buildInputs = [ bctoolbox ];
@@ -18,8 +29,9 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A Real-Time Transport Protocol (RFC3550) stack";
-    homepage = https://linphone.org/technical-corner/ortp;
-    license = licenses.gpl2Plus;
+    homepage = "https://linphone.org/technical-corner/ortp";
+    license = licenses.gpl3;
     platforms = platforms.all;
+    maintainers = with maintainers; [ jluttine ];
   };
 }
diff --git a/pkgs/development/libraries/packr/default.nix b/pkgs/development/libraries/packr/default.nix
index b0c7ac3cab6..4482a9cd312 100644
--- a/pkgs/development/libraries/packr/default.nix
+++ b/pkgs/development/libraries/packr/default.nix
@@ -1,7 +1,6 @@
 { buildGoModule
 , fetchFromGitHub
-, stdenv
-, Security
+, lib
 }:
 
 buildGoModule rec {
@@ -17,11 +16,9 @@ buildGoModule rec {
 
   subPackages = [ "packr" "v2/packr2" ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   modSha256 = "0afhkvivma16bi8rz3kwcsz9mhmcn4zm6rrymxkvazx6b844hcdv";
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "The simple and easy way to embed static files into Go binaries";
     homepage = "https://github.com/gobuffalo/packr";
     license = licenses.mit;
diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix
index ecb0f16c72c..f37a6972c25 100644
--- a/pkgs/development/libraries/pango/default.nix
+++ b/pkgs/development/libraries/pango/default.nix
@@ -23,6 +23,7 @@ in stdenv.mkDerivation rec {
 
   nativeBuildInputs = [
     meson ninja
+    glib # for glib-mkenum
     pkgconfig gobject-introspection gtk-doc docbook_xsl docbook_xml_dtd_43
   ];
   buildInputs = [
diff --git a/pkgs/development/libraries/pcl/default.nix b/pkgs/development/libraries/pcl/default.nix
index ba903d27ab7..81da7332d0f 100644
--- a/pkgs/development/libraries/pcl/default.nix
+++ b/pkgs/development/libraries/pcl/default.nix
@@ -4,13 +4,13 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "pcl-1.10.0";
+  name = "pcl-1.10.1";
 
   src = fetchFromGitHub {
     owner = "PointCloudLibrary";
     repo = "pcl";
     rev = name;
-    sha256 = "1dbfkdk9mgwzadkw9jx3f5vzrcj88qcyv745kjxld7gcv8by9g6g";
+    sha256 = "1i4zfcikvdl5z1s3lh0n46fgi42s9vbki4hfmy7656hamajfai0v";
   };
 
   enableParallelBuilding = true;
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   ];
 
   meta = {
-    homepage = http://pointclouds.org/;
+    homepage = "http://pointclouds.org/";
     description = "Open project for 2D/3D image and point cloud processing";
     license = stdenv.lib.licenses.bsd3;
     maintainers = with stdenv.lib.maintainers; [viric];
diff --git a/pkgs/development/libraries/physics/hepmc3/default.nix b/pkgs/development/libraries/physics/hepmc3/default.nix
index d8aff555e55..a07c3c19a1b 100644
--- a/pkgs/development/libraries/physics/hepmc3/default.nix
+++ b/pkgs/development/libraries/physics/hepmc3/default.nix
@@ -1,28 +1,41 @@
-{ stdenv, fetchurl, cmake, coreutils, root }:
+{ stdenv, fetchurl, cmake, coreutils, python, root }:
+
+let
+  pythonVersion = with stdenv.lib.versions; "${major python.version}${minor python.version}";
+  withPython = python != null;
+in
 
 stdenv.mkDerivation rec {
   pname = "hepmc3";
-  version = "3.1.2";
+  version = "3.2.0";
 
   src = fetchurl {
     url = "http://hepmc.web.cern.ch/hepmc/releases/HepMC3-${version}.tar.gz";
-    sha256 = "1izcldnjbyn6myr7nv7b4jivf2vmdi64ng9gk1vjh998755hfcs1";
+    sha256 = "1z491x3blqs0a2jxmhzhmh4kqdw3ddcbvw69gidg4w6icdvkhcpi";
   };
 
-  buildInputs = [ cmake root ];
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ root ]
+    ++ stdenv.lib.optional withPython python;
+
+  cmakeFlags = [
+    "-DHEPMC3_ENABLE_PYTHON=${if withPython then "ON" else "OFF"}"
+  ] ++ stdenv.lib.optionals withPython [
+    "-DHEPMC3_PYTHON_VERSIONS=${if python.isPy3k then "3.X" else "2.X"}"
+    "-DHEPMC3_Python_SITEARCH${pythonVersion}=${placeholder "out"}/${python.sitePackages}"
+  ];
 
   postInstall = ''
     substituteInPlace "$out"/bin/HepMC3-config \
-      --replace 'greadlink' '${coreutils}/bin/readlink'
+      --replace 'greadlink' '${coreutils}/bin/readlink' \
+      --replace 'readlink' '${coreutils}/bin/readlink'
   '';
 
-  enableParallelBuilding = true;
-
   meta = with stdenv.lib; {
     description = "The HepMC package is an object oriented, C++ event record for High Energy Physics Monte Carlo generators and simulation";
-    license     = licenses.gpl3;
-    homepage    = http://hepmc.web.cern.ch/hepmc/;
-    platforms   = platforms.unix;
+    license = licenses.gpl3;
+    homepage = "http://hepmc.web.cern.ch/hepmc/";
+    platforms = platforms.unix;
     maintainers = with maintainers; [ veprbl ];
   };
 }
diff --git a/pkgs/development/libraries/pipewire/2.nix b/pkgs/development/libraries/pipewire/2.nix
new file mode 100644
index 00000000000..3efbea97c5e
--- /dev/null
+++ b/pkgs/development/libraries/pipewire/2.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, doxygen, graphviz, valgrind
+, glib, dbus, gst_all_1, alsaLib, ffmpeg, libjack2, udev, libva, xorg
+, sbc, SDL2, makeFontsConf
+}:
+
+let
+  fontsConf = makeFontsConf {
+    fontDirectories = [ ];
+  };
+in stdenv.mkDerivation rec {
+  pname = "pipewire";
+  version = "0.2.7";
+
+  src = fetchFromGitHub {
+    owner = "PipeWire";
+    repo = "pipewire";
+    rev = version;
+    sha256 = "1q5wrqnhhs6r49p8yvkw1pl0cnsd4rndxy4h5lvdydwgf1civcwc";
+  };
+
+  outputs = [ "out" "lib" "dev" "doc" ];
+
+  nativeBuildInputs = [
+    meson ninja pkgconfig doxygen graphviz valgrind
+  ];
+  buildInputs = [
+    glib dbus gst_all_1.gst-plugins-base gst_all_1.gstreamer
+    alsaLib ffmpeg libjack2 udev libva xorg.libX11 sbc SDL2
+  ];
+
+  mesonFlags = [
+    "-Ddocs=true"
+    "-Dgstreamer=enabled"
+  ];
+
+  PKG_CONFIG_SYSTEMD_SYSTEMDUSERUNITDIR = "${placeholder "out"}/lib/systemd/user";
+
+  FONTCONFIG_FILE = fontsConf; # Fontconfig error: Cannot load default config file
+
+  doCheck = true;
+
+  meta = with stdenv.lib; {
+    description = "Server and user space API to deal with multimedia pipelines";
+    homepage = https://pipewire.org/;
+    license = licenses.lgpl21;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ jtojnar ];
+  };
+}
diff --git a/pkgs/development/libraries/pipewire/default.nix b/pkgs/development/libraries/pipewire/default.nix
index 094e90fd500..b37bbd273e2 100644
--- a/pkgs/development/libraries/pipewire/default.nix
+++ b/pkgs/development/libraries/pipewire/default.nix
@@ -1,5 +1,5 @@
 { stdenv
-, fetchFromGitHub
+, fetchFromGitLab
 , meson
 , ninja
 , pkgconfig
@@ -17,6 +17,11 @@
 , xorg
 , sbc
 , SDL2
+, libsndfile
+, bluez
+, vulkan-headers
+, vulkan-loader
+, libpulseaudio
 , makeFontsConf
 }:
 
@@ -27,15 +32,16 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "pipewire";
-  version = "0.2.7";
+  version = "0.3.2";
 
   outputs = [ "out" "lib" "dev" "doc" ];
 
-  src = fetchFromGitHub {
-    owner = "PipeWire";
+  src = fetchFromGitLab {
+    domain = "gitlab.freedesktop.org";
+    owner = "pipewire";
     repo = "pipewire";
     rev = version;
-    sha256 = "1q5wrqnhhs6r49p8yvkw1pl0cnsd4rndxy4h5lvdydwgf1civcwc";
+    sha256 = "U7lqvn2vMIxARNplzNX9H3Ztlfv1IH8LozJsq7JSEKs=";
   };
 
   nativeBuildInputs = [
@@ -50,25 +56,29 @@ stdenv.mkDerivation rec {
   buildInputs = [
     SDL2
     alsaLib
+    bluez
     dbus
     ffmpeg
     glib
     gst_all_1.gst-plugins-base
     gst_all_1.gstreamer
     libjack2
+    libpulseaudio
+    libsndfile
     libva
     sbc
     udev
+    vulkan-headers
+    vulkan-loader
     xorg.libX11
   ];
 
   mesonFlags = [
     "-Ddocs=true"
-    "-Dgstreamer=enabled"
+    "-Dman=false" # we don't have xmltoman
+    "-Dgstreamer=true"
   ];
 
-  PKG_CONFIG_SYSTEMD_SYSTEMDUSERUNITDIR = "${placeholder "out"}/lib/systemd/user";
-
   FONTCONFIG_FILE = fontsConf; # Fontconfig error: Cannot load default config file
 
   doCheck = true;
@@ -76,7 +86,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Server and user space API to deal with multimedia pipelines";
     homepage = https://pipewire.org/;
-    license = licenses.lgpl21;
+    license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ jtojnar ];
   };
diff --git a/pkgs/development/libraries/poco/default.nix b/pkgs/development/libraries/poco/default.nix
index ecd20d545d5..1f43be20cfb 100644
--- a/pkgs/development/libraries/poco/default.nix
+++ b/pkgs/development/libraries/poco/default.nix
@@ -28,5 +28,6 @@ stdenv.mkDerivation rec {
     description = "Cross-platform C++ libraries with a network/internet focus";
     license = licenses.boost;
     maintainers = with maintainers; [ orivej ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/popt/default.nix b/pkgs/development/libraries/popt/default.nix
index 592a1f1470a..b04a2242ab7 100644
--- a/pkgs/development/libraries/popt/default.nix
+++ b/pkgs/development/libraries/popt/default.nix
@@ -1,10 +1,11 @@
 {stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "popt-1.16";
+  pname = "popt";
+  version = "1.16";
 
   src = fetchurl {
-    url = "http://rpm5.org/files/popt/${name}.tar.gz";
+    url = "mirror://debian/pool/main/p/popt/popt_${version}.orig.tar.gz";
     sha256 = "1j2c61nn2n351nhj4d25mnf3vpiddcykq005w2h6kw79dwlysa77";
   };
 
diff --git a/pkgs/development/libraries/proj/default.nix b/pkgs/development/libraries/proj/default.nix
index ea89dbee0f6..fc0f1cf67a5 100644
--- a/pkgs/development/libraries/proj/default.nix
+++ b/pkgs/development/libraries/proj/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, pkg-config, sqlite, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  name = "proj";
-  version = "6.1.1";
+  pname = "proj";
+  version = "6.3.1";
 
   src = fetchFromGitHub {
     owner = "OSGeo";
     repo = "PROJ";
     rev = version;
-    sha256 = "0w2v2l22kv0xzq5hwl7n8ki6an8vfsr0lg0cdbkwcl4xv889ysma";
+    sha256 = "1ildcp57qsa01kvv2qxd05nqw5mg0wfkksiv9l138dbhp0s7rkxp";
   };
 
   outputs = [ "out" "dev"];
diff --git a/pkgs/development/libraries/pupnp/default.nix b/pkgs/development/libraries/pupnp/default.nix
index 66a395801b2..b616b898a6e 100644
--- a/pkgs/development/libraries/pupnp/default.nix
+++ b/pkgs/development/libraries/pupnp/default.nix
@@ -1,18 +1,18 @@
-{ fetchFromGitHub, stdenv, autoreconfHook }:
+{ fetchFromGitHub, stdenv, autoreconfHook, pkg-config }:
 
 stdenv.mkDerivation rec {
   pname = "libupnp";
-  version = "1.8.4";
+  version = "1.12.0";
 
   src = fetchFromGitHub {
     owner = "mrjimenez";
     repo = "pupnp";
     rev = "release-${version}";
-    sha256 = "1daml02z4rs9cxls95p2v24jvwcsp43a0gqv06s84ay5yn6r47wx";
+    sha256 = "17jhbzx8khz5vbl0lhcipjzgg897p1k2lp5wcc3hiddcfyh05pdj";
   };
   outputs = [ "dev" "out" ];
 
-  nativeBuildInputs = [ autoreconfHook ];
+  nativeBuildInputs = [ autoreconfHook pkg-config ];
 
   hardeningDisable = [ "fortify" ];
 
diff --git a/pkgs/development/libraries/qgnomeplatform/default.nix b/pkgs/development/libraries/qgnomeplatform/default.nix
index 3626e15cfc7..93b9b9634de 100644
--- a/pkgs/development/libraries/qgnomeplatform/default.nix
+++ b/pkgs/development/libraries/qgnomeplatform/default.nix
@@ -1,4 +1,16 @@
-{ mkDerivation, lib, fetchFromGitHub, pkgconfig, gtk3, qtbase, qmake, qtx11extras, pantheon }:
+{ mkDerivation
+, lib
+, fetchFromGitHub
+, pkgconfig
+, gtk3
+, glib
+, qtbase
+, qmake
+, qtx11extras
+, pantheon
+, substituteAll
+, gsettings-desktop-schemas
+}:
 
 mkDerivation rec {
   pname = "qgnomeplatform";
@@ -11,12 +23,21 @@ mkDerivation rec {
     sha256 = "0fb1mzs6sx76bl7f0z2xhc0jq6y1c55jrw1v3na8577is6g5ji0a";
   };
 
+  patches = [
+    # Hardcode GSettings schema path to avoid crashes from missing schemas
+    (substituteAll {
+      src = ./hardcode-gsettings.patch;
+      gds_gsettings_path = glib.getSchemaPath gsettings-desktop-schemas;
+    })
+  ];
+
   nativeBuildInputs = [
     pkgconfig
     qmake
   ];
 
   buildInputs = [
+    glib
     gtk3
     qtbase
     qtx11extras
diff --git a/pkgs/development/libraries/qgnomeplatform/hardcode-gsettings.patch b/pkgs/development/libraries/qgnomeplatform/hardcode-gsettings.patch
new file mode 100644
index 00000000000..9b342d7cf83
--- /dev/null
+++ b/pkgs/development/libraries/qgnomeplatform/hardcode-gsettings.patch
@@ -0,0 +1,24 @@
+diff --git a/common/gnomehintssettings.cpp b/common/gnomehintssettings.cpp
+index 9860e57..40fa6ec 100644
+--- a/common/gnomehintssettings.cpp
++++ b/common/gnomehintssettings.cpp
+@@ -80,9 +80,17 @@ void gtkMessageHandler(const gchar *log_domain,
+ GnomeHintsSettings::GnomeHintsSettings()
+     : QObject(0)
+     , m_usePortal(checkUsePortalSupport())
+-    , m_gnomeDesktopSettings(g_settings_new("org.gnome.desktop.wm.preferences"))
+-    , m_settings(g_settings_new("org.gnome.desktop.interface"))
+ {
++    g_autoptr(GSettingsSchemaSource) schemaSource = nullptr;
++    g_autoptr(GSettingsSchema) gnomeDesktopSchema = nullptr;
++    g_autoptr(GSettingsSchema) settingsSchema = nullptr;
++
++    schemaSource = g_settings_schema_source_new_from_directory("@gds_gsettings_path@", g_settings_schema_source_get_default(), true, nullptr);
++    gnomeDesktopSchema = g_settings_schema_source_lookup(schemaSource, "org.gnome.desktop.wm.preferences", false);
++    m_gnomeDesktopSettings = g_settings_new_full(gnomeDesktopSchema, nullptr, nullptr);
++    settingsSchema = g_settings_schema_source_lookup(schemaSource, "org.gnome.desktop.interface", false);
++    m_settings = g_settings_new_full(settingsSchema, nullptr, nullptr);
++
+     gtk_init(nullptr, nullptr);
+ 
+     // Set log handler to suppress false GtkDialog warnings
diff --git a/pkgs/development/libraries/qt-5/5.12/default.nix b/pkgs/development/libraries/qt-5/5.12/default.nix
index c0bba5e5c01..78d711e969b 100644
--- a/pkgs/development/libraries/qt-5/5.12/default.nix
+++ b/pkgs/development/libraries/qt-5/5.12/default.nix
@@ -74,6 +74,11 @@ let
           url = "https://code.qt.io/cgit/qt/qtbase.git/patch/?id=8a3fde00bf53d99e9e4853e8ab97b0e1bcf74915";
           sha256 = "1gpcbdpyazdxnmldvhsf3pfwr2gjvi08x3j6rxf543rq01bp6cpx";
         })
+        (fetchpatch {
+          name = "QTBUG-78937.patch";
+          url = "https://code.qt.io/cgit/qt/qtbase.git/patch/?id=67a9c600ad14ee44501a6df3509daa8234b97606";
+          sha256 = "1jiky1w9j8rka78r4q0yabb8w2l5j6csdjysynz7gs1ry4xjfdxd";
+        })
       ];
     qtdeclarative = [ ./qtdeclarative.patch ];
     qtscript = [ ./qtscript.patch ];
@@ -150,6 +155,7 @@ let
       qtserialport = callPackage ../modules/qtserialport.nix {};
       qtspeech = callPackage ../modules/qtspeech.nix {};
       qtsvg = callPackage ../modules/qtsvg.nix {};
+      qtscxml = callPackage ../modules/qtscxml.nix {};
       qttools = callPackage ../modules/qttools.nix {};
       qttranslations = callPackage ../modules/qttranslations.nix {};
       qtvirtualkeyboard = callPackage ../modules/qtvirtualkeyboard.nix {};
diff --git a/pkgs/development/libraries/qt-5/modules/qtscxml.nix b/pkgs/development/libraries/qt-5/modules/qtscxml.nix
new file mode 100644
index 00000000000..62b428b0893
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtscxml.nix
@@ -0,0 +1,7 @@
+{ qtModule, qtbase, qtdeclarative }:
+
+qtModule {
+  name = "qtscxml";
+  qtInputs = [ qtbase qtdeclarative ];
+  outputs = [ "out" "dev" "bin" ];
+}
diff --git a/pkgs/development/libraries/qtutilities/default.nix b/pkgs/development/libraries/qtutilities/default.nix
index 3f0dc18f157..66a7b95e334 100644
--- a/pkgs/development/libraries/qtutilities/default.nix
+++ b/pkgs/development/libraries/qtutilities/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qtutilities";
-  version = "6.0.4";
+  version = "6.0.5";
 
   src = fetchFromGitHub {
     owner = "Martchus";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0cp7sbj20z0vl99qhs3hi5bd6akjd9l7lqdky0p6la4c9y9w5n1w";
+    sha256 = "1f2nir1qb0d6r1ndpsg7vpskdw08szq82mqvbwm5bi160xkrqhjf";
   };
 
   buildInputs = [ qtbase cpp-utilities ];
diff --git a/pkgs/development/libraries/qwt/6.nix b/pkgs/development/libraries/qwt/6.nix
index 6e0fa53aa82..9568a63f691 100644
--- a/pkgs/development/libraries/qwt/6.nix
+++ b/pkgs/development/libraries/qwt/6.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, qtbase, qtsvg, qttools, qmake }:
 
 stdenv.mkDerivation rec {
-  name = "qwt-6.1.2";
+  name = "qwt-6.1.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/qwt/${name}.tar.bz2";
-    sha256 = "031x4hz1jpbirv9k35rqb52bb9mf2w7qav89qv1yfw1r3n6z221b";
+    sha256 = "1navkcnmn0qz8kzsyqmk32d929zl72l0b580w1ica7z5559j2a8m";
   };
 
   propagatedBuildInputs = [ qtbase qtsvg qttools ];
diff --git a/pkgs/development/libraries/rarian/default.nix b/pkgs/development/libraries/rarian/default.nix
index bd79e3628a1..18ab274bd19 100644
--- a/pkgs/development/libraries/rarian/default.nix
+++ b/pkgs/development/libraries/rarian/default.nix
@@ -18,7 +18,6 @@ in stdenv.mkDerivation rec {
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;
-      attrPath = "gnome3.${pname}";
     };
   };
 
diff --git a/pkgs/development/libraries/resolv_wrapper/default.nix b/pkgs/development/libraries/resolv_wrapper/default.nix
index e221c82edec..168b82eec16 100644
--- a/pkgs/development/libraries/resolv_wrapper/default.nix
+++ b/pkgs/development/libraries/resolv_wrapper/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, cmake, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "resolv_wrapper-1.1.5";
+  name = "resolv_wrapper-1.1.6";
 
   src = fetchurl {
     url = "mirror://samba/cwrap/${name}.tar.gz";
-    sha256 = "0v5hw5ipq2rrpraf4ck4r9w9xihmgwzkpf5wgppz7gc52fmgv2g9";
+    sha256 = "13k76l4s0v032xyyaf19qw6p4qc81ybx1wynkz2pzjhiljazsdpa";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
diff --git a/pkgs/development/libraries/rubberband/default.nix b/pkgs/development/libraries/rubberband/default.nix
index c9ba339ae0e..29233a1ad3f 100644
--- a/pkgs/development/libraries/rubberband/default.nix
+++ b/pkgs/development/libraries/rubberband/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, pkgconfig, libsamplerate, libsndfile, fftw
-, vampSDK, ladspaH }:
+, vamp-plugin-sdk, ladspaH }:
 
 stdenv.mkDerivation {
   name = "rubberband-1.8.1";
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libsamplerate libsndfile fftw vampSDK ladspaH ];
+  buildInputs = [ libsamplerate libsndfile fftw vamp-plugin-sdk ladspaH ];
 
   meta = with stdenv.lib; {
     description = "High quality software library for audio time-stretching and pitch-shifting";
diff --git a/pkgs/development/libraries/science/math/mkl/default.nix b/pkgs/development/libraries/science/math/mkl/default.nix
index 604413c96d8..82109b4ba34 100644
--- a/pkgs/development/libraries/science/math/mkl/default.nix
+++ b/pkgs/development/libraries/science/math/mkl/default.nix
@@ -7,17 +7,18 @@ let
   # Release notes and download URLs are here:
   # https://registrationcenter.intel.com/en/products/
   version = "${year}.${spot}.${rel}";
-  year = "2019";
 
   # Darwin is pinned to 2019.3 because the DMG does not unpack; see here for details:
   # https://github.com/matthewbauer/undmg/issues/4
-  spot = if stdenvNoCC.isDarwin then "3" else "5";
-  rel = if stdenvNoCC.isDarwin then "199" else "281";
+  year = if stdenvNoCC.isDarwin then "2019" else "2020";
+  spot = if stdenvNoCC.isDarwin then "3" else "0";
+  rel = if stdenvNoCC.isDarwin then "199" else "166";
 
   rpm-ver = "${year}.${spot}-${rel}-${year}.${spot}-${rel}";
 
   # Intel openmp uses its own versioning, but shares the spot release patch.
-  openmp-ver = "19.0.${spot}-${rel}-19.0.${spot}-${rel}";
+  openmp = if stdenvNoCC.isDarwin then "19.0" else "19.1";
+  openmp-ver = "${openmp}.${spot}-${rel}-${openmp}.${spot}-${rel}";
 
 in stdenvNoCC.mkDerivation {
   pname = "mkl";
@@ -31,8 +32,8 @@ in stdenvNoCC.mkDerivation {
       })
     else
       (fetchurl {
-        url = "https://registrationcenter-download.intel.com/akdlm/irc_nas/tec/15816/l_mkl_${version}.tgz";
-        sha256 = "0zkk4rrq7g44acxaxhpd2053r66w169mww6917an0lxhd52fm5cr";
+        url = "https://registrationcenter-download.intel.com/akdlm/irc_nas/tec/16318/l_mkl_${version}.tgz";
+        sha256 = "1q4ab87qzraksn8mm4117vj7l3sgpdi2qszj7nx122zi7zmjvngn";
       });
 
   nativeBuildInputs = if stdenvNoCC.isDarwin
@@ -136,7 +137,7 @@ in stdenvNoCC.mkDerivation {
       choice of compilers, languages, operating systems, and linking and
       threading models.
     '';
-    homepage = https://software.intel.com/en-us/mkl;
+    homepage = "https://software.intel.com/en-us/mkl";
     license = licenses.issl;
     platforms = [ "x86_64-linux" "x86_64-darwin" ];
     maintainers = with maintainers; [ bhipple ];
diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix
index 38ad31cc625..efad842bd35 100644
--- a/pkgs/development/libraries/science/math/openblas/default.nix
+++ b/pkgs/development/libraries/science/math/openblas/default.nix
@@ -3,6 +3,14 @@
 # pointer width, but some expect to use 32-bit integers always
 # (for compatibility with reference BLAS).
 , blas64 ? null
+# Multi-threaded applications must not call a threaded OpenBLAS
+# (the only exception is when an application uses OpenMP as its
+# *only* form of multi-threading). See
+#     https://github.com/xianyi/OpenBLAS/wiki/Faq/4bded95e8dc8aadc70ce65267d1093ca7bdefc4c#multi-threaded
+#     https://github.com/xianyi/OpenBLAS/issues/2543
+# This flag builds a single-threaded OpenBLAS using the flags
+# stated in thre.
+, singleThreaded ? false
 , buildPackages
 # Select a specific optimization target (other than the default)
 # See https://github.com/xianyi/OpenBLAS/blob/develop/TargetList.txt
@@ -146,7 +154,12 @@ stdenv.mkDerivation rec {
     NO_BINARY_MODE = if stdenv.isx86_64
         then toString (stdenv.hostPlatform != stdenv.buildPlatform)
         else stdenv.hostPlatform != stdenv.buildPlatform;
-  });
+  } // (stdenv.lib.optionalAttrs singleThreaded {
+    # As described on https://github.com/xianyi/OpenBLAS/wiki/Faq/4bded95e8dc8aadc70ce65267d1093ca7bdefc4c#multi-threaded
+    USE_THREAD = false;
+    USE_LOCKING = true; # available with openblas >= 0.3.7
+    USE_OPENMP = false; # openblas will refuse building with both USE_OPENMP=1 and USE_THREAD=0
+  }));
 
   doCheck = true;
   checkTarget = "tests";
diff --git a/pkgs/development/libraries/science/math/petsc/default.nix b/pkgs/development/libraries/science/math/petsc/default.nix
index 492ad63f27b..911f0a1cf89 100644
--- a/pkgs/development/libraries/science/math/petsc/default.nix
+++ b/pkgs/development/libraries/science/math/petsc/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "petsc";
-  version = "3.12.4";
+  version = "3.13.0";
 
   src = fetchurl {
     url = "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-${version}.tar.gz";
-    sha256 = "1hw4f12v2xwrs37gjh83dbixhg0yxandqx7s7k5vlfx91l9l3aan";
+    sha256 = "0943bydmsq3sjwj3rxhb8hx58b1fm8vymny731557fs10g5zfbyz";
   };
 
   nativeBuildInputs = [ blas gfortran.cc.lib liblapack python ];
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
     configureFlagsArray=(
       $configureFlagsArray
       "--CC=$CC"
-      "--with-cxx=g++"
+      "--with-cxx=$CXX"
       "--with-fc=0"
       "--with-mpi=0"
       "--with-blas-lib=[${blas}/lib/libblas.a,${gfortran.cc.lib}/lib/libgfortran.a]"
diff --git a/pkgs/development/libraries/serf/default.nix b/pkgs/development/libraries/serf/default.nix
index 3fd47125bcb..2742ba1577b 100644
--- a/pkgs/development/libraries/serf/default.nix
+++ b/pkgs/development/libraries/serf/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "1k47gbgpp52049andr28y28nbwh9m36bbb0g8p0aka3pqlhjv72l";
   };
 
-  nativeBuildInputs = [ pkgconfig scons ];
+  nativeBuildInputs = [ pkgconfig scons.py2 ];
   buildInputs = [ apr openssl aprutil zlib libiconv ]
     ++ stdenv.lib.optional (!stdenv.isCygwin) kerberos;
 
diff --git a/pkgs/development/libraries/skalibs/default.nix b/pkgs/development/libraries/skalibs/default.nix
index e5443c5d53a..d7e0f831385 100644
--- a/pkgs/development/libraries/skalibs/default.nix
+++ b/pkgs/development/libraries/skalibs/default.nix
@@ -4,8 +4,8 @@ with skawarePackages;
 
 buildPackage {
   pname = "skalibs";
-  version = "2.9.1.0";
-  sha256 = "19c6s3f7vxi96l2yqzjk9x9i4xkfg4fdzxhn1jg6bfb2qjph9cnk";
+  version = "2.9.2.0";
+  sha256 = "1i9d7w031kh338aq6xdsf8vl5amxbwxbny8lnrxlzydqvn8nxhz4";
 
   description = "A set of general-purpose C programming libraries";
 
diff --git a/pkgs/development/libraries/soci/default.nix b/pkgs/development/libraries/soci/default.nix
new file mode 100644
index 00000000000..1f9b77cc3c9
--- /dev/null
+++ b/pkgs/development/libraries/soci/default.nix
@@ -0,0 +1,31 @@
+{ cmake
+, fetchFromGitHub
+, sqlite
+, stdenv
+}:
+
+stdenv.mkDerivation rec {
+  pname = "soci";
+  version = "4.0.0";
+
+  src = fetchFromGitHub {
+    owner = "SOCI";
+    repo = pname;
+    rev = version;
+    sha256 = "06faswdxd2frqr9xnx6bxc7zwarlzsbdi3bqpz7kwdxsjvq41rnb";
+  };
+
+  # Do not build static libraries
+  cmakeFlags = [ "-DSOCI_STATIC=OFF" ];
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ sqlite ];
+
+  meta = with stdenv.lib; {
+    description = "Database access library for C++";
+    homepage = "http://soci.sourceforge.net/";
+    license = licenses.boost;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ jluttine ];
+  };
+}
diff --git a/pkgs/development/libraries/socket_wrapper/default.nix b/pkgs/development/libraries/socket_wrapper/default.nix
index 2903e79f891..e6095ca82c5 100644
--- a/pkgs/development/libraries/socket_wrapper/default.nix
+++ b/pkgs/development/libraries/socket_wrapper/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, cmake, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "socket_wrapper-1.2.3";
+  name = "socket_wrapper-1.2.4";
 
   src = fetchurl {
     url = "mirror://samba/cwrap/${name}.tar.gz";
-    sha256 = "1jprm8f7xb91b3yrapdbf51l36j6g038n379akz7ds0dicjh0fh7";
+    sha256 = "07m0g5sxjl15h8h95ppf42mkilp9h1xc9camryg8l9bw8b2v8m4a";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
diff --git a/pkgs/development/libraries/subunit/default.nix b/pkgs/development/libraries/subunit/default.nix
index 9a5f4db2deb..bf3b6a9ffd1 100644
--- a/pkgs/development/libraries/subunit/default.nix
+++ b/pkgs/development/libraries/subunit/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "subunit";
-  version = "1.1.0";
+  version = "1.4.0";
 
   src = fetchurl {
     url = "https://launchpad.net/subunit/trunk/${version}/+download/${pname}-${version}.tar.gz";
-    sha256 = "0lcah7p66c05p7xpw6ns1is0i02lh0nq8gq51mv4wyvbr6zaasa8";
+    sha256 = "1h7i5ifcx20qkya24j11nbwa829klw7dvnlljdgivgvcx6b20y80";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A streaming protocol for test results";
-    homepage = https://launchpad.net/subunit;
+    homepage = "https://launchpad.net/subunit";
     license = licenses.asl20;
     platforms = platforms.all;
   };
diff --git a/pkgs/development/libraries/swiften/default.nix b/pkgs/development/libraries/swiften/default.nix
index c8c60c1f8ea..8d49f79814e 100644
--- a/pkgs/development/libraries/swiften/default.nix
+++ b/pkgs/development/libraries/swiften/default.nix
@@ -3,7 +3,7 @@ stdenv.mkDerivation rec {
   pname = "swiften";
   version = "4.0.2";
 
-  nativeBuildInputs = [ scons];
+  nativeBuildInputs = [ scons.py2 ];
   buildInputs           = [ python ];
   propagatedBuildInputs = [ openssl boost ];
 
@@ -33,5 +33,6 @@ stdenv.mkDerivation rec {
     license     = licenses.gpl2Plus;
     platforms   = platforms.linux;
     maintainers = [ maintainers.twey ];
+    broken = true; # Broken since 2019-11-20 (https://hydra.nixos.org/build/114681755)
   };
 }
diff --git a/pkgs/development/libraries/talloc/default.nix b/pkgs/development/libraries/talloc/default.nix
index 9e9bc1c804b..f464364e8a0 100644
--- a/pkgs/development/libraries/talloc/default.nix
+++ b/pkgs/development/libraries/talloc/default.nix
@@ -1,5 +1,12 @@
-{ stdenv, fetchurl, python, pkgconfig, readline, libxslt
-, docbook_xsl, docbook_xml_dtd_42, fixDarwinDylibNames
+{ stdenv
+, fetchurl
+, python
+, pkg-config
+, readline
+, libxslt
+, docbook-xsl-nons
+, docbook_xml_dtd_42
+, fixDarwinDylibNames
 , wafHook
 }:
 
@@ -12,9 +19,19 @@ stdenv.mkDerivation rec {
     sha256 = "0xwzgzrqamfdlklwacp9d219pqkah0yfrhxb1j7bxlmgzp924j7g";
   };
 
-  nativeBuildInputs = [ pkgconfig fixDarwinDylibNames python wafHook
-                        docbook_xsl docbook_xml_dtd_42 ];
-  buildInputs = [ readline libxslt ];
+  nativeBuildInputs = [
+    pkg-config
+    fixDarwinDylibNames
+    python
+    wafHook
+    docbook-xsl-nons
+    docbook_xml_dtd_42
+  ];
+
+  buildInputs = [
+    readline
+    libxslt
+  ];
 
   wafPath = "buildtools/bin/waf";
 
diff --git a/pkgs/development/libraries/tdb/default.nix b/pkgs/development/libraries/tdb/default.nix
index 9e90e3d3be4..b8e6552bc7b 100644
--- a/pkgs/development/libraries/tdb/default.nix
+++ b/pkgs/development/libraries/tdb/default.nix
@@ -1,18 +1,34 @@
-{ stdenv, fetchurl, wafHook, pkgconfig, readline, libxslt
-, docbook_xsl, docbook_xml_dtd_42
+{ stdenv
+, fetchurl
+, pkg-config
+, wafHook
+, python3
+, readline
+, libxslt
+, docbook-xsl-nons
+, docbook_xml_dtd_45
 }:
 
 stdenv.mkDerivation rec {
-  name = "tdb-1.3.18";
+  pname = "tdb";
+  version = "1.4.3";
 
   src = fetchurl {
-    url = "mirror://samba/tdb/${name}.tar.gz";
-    sha256 = "1drnsdh1w0px35r0y7l7g59yvyr67mvcsdrli4wab0mwi07b8mn1";
+    url = "mirror://samba/tdb/${pname}-${version}.tar.gz";
+    sha256 = "06waz0k50c7v3chd08mzp2rv7w4k4q9isbxx3vhlfpx1vy9q61f8";
   };
 
-  nativeBuildInputs = [ pkgconfig wafHook ];
+  nativeBuildInputs = [
+    pkg-config
+    wafHook
+    libxslt
+    docbook-xsl-nons
+    docbook_xml_dtd_45
+  ];
+
   buildInputs = [
-    readline libxslt docbook_xsl docbook_xml_dtd_42
+    python3
+    readline # required to build python
   ];
 
   wafPath = "buildtools/bin/waf";
@@ -30,7 +46,7 @@ stdenv.mkDerivation rec {
       and uses locking internally to keep writers from trampling on each
       other. TDB is also extremely small.
     '';
-    homepage = https://tdb.samba.org/;
+    homepage = "https://tdb.samba.org/";
     license = licenses.lgpl3Plus;
     platforms = platforms.all;
   };
diff --git a/pkgs/development/libraries/tepl/default.nix b/pkgs/development/libraries/tepl/default.nix
index 997b874ac5b..b2c47166153 100644
--- a/pkgs/development/libraries/tepl/default.nix
+++ b/pkgs/development/libraries/tepl/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl
 , amtk, gnome3, gtk3, gtksourceview4, libuchardet, libxml2, pkgconfig }:
 let
-  version = "4.3.1";
+  version = "4.4.0";
   pname = "tepl";
 in stdenv.mkDerivation {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "08y6vss29b65pqzv708cyqmbszgxsqqgw7g0vh6f1389ayi2lvs0";
+    sha256 = "0mm2z849hnni7597an05mrv0dckrxjngpf2xfa0g5s17i8x6gxp6";
   };
 
   nativeBuildInputs = [
@@ -16,8 +16,11 @@ in stdenv.mkDerivation {
   ];
 
   buildInputs = [
-    amtk
     libxml2
+  ];
+
+  propagatedBuildInputs = [
+    amtk
     gtksourceview4
     libuchardet
     gtk3
diff --git a/pkgs/development/libraries/tevent/default.nix b/pkgs/development/libraries/tevent/default.nix
index 9f94f4f7217..66d65e63951 100644
--- a/pkgs/development/libraries/tevent/default.nix
+++ b/pkgs/development/libraries/tevent/default.nix
@@ -1,32 +1,51 @@
-{ stdenv, fetchurl, python, pkgconfig, readline, talloc
-, libxslt, docbook_xsl, docbook_xml_dtd_42
+{ stdenv
+, fetchurl
+, python3
+, pkg-config
+, readline
+, talloc
+, libxslt
+, docbook-xsl-nons
+, docbook_xml_dtd_42
+, which
+, wafHook
 }:
 
 stdenv.mkDerivation rec {
-  name = "tevent-0.9.37";
+  pname = "tevent";
+  version = "0.10.2";
 
   src = fetchurl {
-    url = "mirror://samba/tevent/${name}.tar.gz";
-    sha256 = "1q77vbjic2bb79li2a54ffscnrnwwww55fbpry2kgh7acpnlb0qn";
+    url = "mirror://samba/tevent/${pname}-${version}.tar.gz";
+    sha256 = "+EJ4IuWyh4+4so1vUNloSHNPPzEwYS+1dP3S0hSKZpY=";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [
+    pkg-config
+    which
+    python3
+    libxslt
+    docbook-xsl-nons
+    docbook_xml_dtd_42
+    wafHook
+  ];
+
   buildInputs = [
-    python readline talloc libxslt docbook_xsl docbook_xml_dtd_42
+    python3
+    readline # required to build python
+    talloc
   ];
 
-  preConfigure = ''
-    sed -i 's,#!/usr/bin/env python,#!${python}/bin/python,g' buildtools/bin/waf
-  '';
+  wafPath = "buildtools/bin/waf";
 
-  configureFlags = [
+  wafConfigureFlags = [
     "--bundled-libraries=NONE"
     "--builtin-libraries=replace"
   ];
 
   meta = with stdenv.lib; {
     description = "An event system based on the talloc memory management library";
-    homepage = https://tevent.samba.org/;
+    homepage = "https://tevent.samba.org/";
     license = licenses.lgpl3Plus;
     platforms = platforms.all;
   };
diff --git a/pkgs/development/libraries/tiledb/default.nix b/pkgs/development/libraries/tiledb/default.nix
index a20e4383278..3ebfd4ea919 100644
--- a/pkgs/development/libraries/tiledb/default.nix
+++ b/pkgs/development/libraries/tiledb/default.nix
@@ -20,13 +20,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tiledb";
-  version = "1.7.6";
+  version = "1.7.7";
 
   src = fetchFromGitHub {
     owner = "TileDB-Inc";
     repo = "TileDB";
     rev = version;
-    sha256 = "0khxd1w5piqkxjiibnfvxcpk9lb8pi5x95zll5qs7vpbznn56b18";
+    sha256 = "0vpbyxi8k29c7sjpk86y5w3yyp5fn62q5xvbw061wgp7vrprf8bm";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/torch-hdf5/default.nix b/pkgs/development/libraries/torch-hdf5/default.nix
deleted file mode 100644
index 6dd51944111..00000000000
--- a/pkgs/development/libraries/torch-hdf5/default.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{stdenv, fetchFromGitHub, torch, cmake, hdf5}:
-stdenv.mkDerivation rec {
-  pname = "torch-hdf5";
-  version = "0.0pre2016-07-01";
-  buildInputs = [cmake torch hdf5];
-  src = fetchFromGitHub {
-    owner = "deepmind";
-    repo = "torch-hdf5";
-    rev = "639bb4e62417ac392bf31a53cdd495d19337642b";
-    sha256 = "0x1si2c30d95vmw0xqyq242wghfih3m5i43785vwahlzm7h6n6xz";
-  };
-  meta = {
-    inherit version;
-    description = ''HDF5 format support for Torch'';
-    license = stdenv.lib.licenses.bsd3;
-    maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/torch/default.nix b/pkgs/development/libraries/torch/default.nix
deleted file mode 100644
index b5cb0f76e9f..00000000000
--- a/pkgs/development/libraries/torch/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{stdenv, fetchgit, luajit, openblas, imagemagick, cmake, curl, fftw, gnuplot
-  , libjpeg, zeromq3, ncurses, openssl, libpng, qt4, readline, unzip
-  , pkgconfig, zlib, libX11, which
-  }:
-stdenv.mkDerivation rec{
-  version = "0.0pre20160820";
-  pname = "torch";
-  buildInputs = [
-    luajit openblas imagemagick cmake curl fftw gnuplot unzip qt4
-    libjpeg zeromq3 ncurses openssl libpng readline pkgconfig
-    zlib libX11 which
-  ];
-
-  src = fetchgit {
-    url = "https://github.com/torch/distro";
-    rev = "8b6a834f8c8755f6f5f84ef9d8da9cfc79c5ce1f";
-    sha256 = "120hnz82d7izinsmv5smyqww71dhpix23pm43s522dfcglpql8xy";
-    fetchSubmodules = true;
-  };
-
-  buildPhase = ''
-    cd ..
-    export PREFIX=$out
-
-    mkdir "$out"
-    sh install.sh -s
-  '';
-  installPhase = ''
-  '';
-  meta = {
-    inherit version;
-    description = ''A scientific computing framework with wide support for machine learning algorithms'';
-    license = stdenv.lib.licenses.bsd3 ;
-    maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
-    broken = true;
-  };
-}
diff --git a/pkgs/development/libraries/totem-pl-parser/default.nix b/pkgs/development/libraries/totem-pl-parser/default.nix
index 08a2df3c02d..dd2e43f9bf0 100644
--- a/pkgs/development/libraries/totem-pl-parser/default.nix
+++ b/pkgs/development/libraries/totem-pl-parser/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "totem-pl-parser";
-  version = "3.26.4";
+  version = "3.26.5";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1w34hdr09v3wy1cfvzhcmxc6b5p9ngcabgix59iv7hk739anymy1";
+    sha256 = "132jihnf51zs98yjkc6jxyqib4f3dawpjm17g4bj4j78y93dww2k";
   };
 
   passthru = {
diff --git a/pkgs/development/libraries/tracker-miners/default.nix b/pkgs/development/libraries/tracker-miners/default.nix
index a9d02f0629f..a60f1b1e79f 100644
--- a/pkgs/development/libraries/tracker-miners/default.nix
+++ b/pkgs/development/libraries/tracker-miners/default.nix
@@ -45,11 +45,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tracker-miners";
-  version = "2.3.2";
+  version = "2.3.3";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1kizavw9gbdjkw4wykgv0fcl2y6fj788nycx9p4byn6ylb1277h6";
+    sha256 = "dHKqKNeGJiDTyiu+w7ED31R9cxnBLpWn96qfn23uSxk=";
   };
 
   nativeBuildInputs = [
@@ -125,7 +125,6 @@ stdenv.mkDerivation rec {
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;
-      attrPath = "gnome3.${pname}";
       versionPolicy = "none";
     };
   };
diff --git a/pkgs/development/libraries/tracker/default.nix b/pkgs/development/libraries/tracker/default.nix
index b34c03d9519..4638788aee7 100644
--- a/pkgs/development/libraries/tracker/default.nix
+++ b/pkgs/development/libraries/tracker/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tracker";
-  version = "2.3.2";
+  version = "2.3.4";
 
   outputs = [ "out" "dev" "devdoc" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1nzbnvwwsk6kv6kqbxwlz8vk70l9ai6b4r9qypw51vp4qy72ny54";
+    sha256 = "V3lSJEq5d8eLC4ji9jxBl+q6FuTWa/9pK39YmT4GUW0=";
   };
 
   nativeBuildInputs = [
@@ -52,7 +52,6 @@ stdenv.mkDerivation rec {
   passthru = {
     updateScript = gnome3.updateScript {
       packageName = pname;
-      attrPath = "gnome3.${pname}";
       versionPolicy = "none";
     };
   };
diff --git a/pkgs/development/libraries/utf8proc/default.nix b/pkgs/development/libraries/utf8proc/default.nix
index 91bf7e39378..13a9855b62e 100644
--- a/pkgs/development/libraries/utf8proc/default.nix
+++ b/pkgs/development/libraries/utf8proc/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "utf8proc";
-  version = "2.4.0";
+  version = "2.5.0";
 
   src = fetchFromGitHub {
     owner = "JuliaStrings";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1i42hqwc8znqii9brangwkxk5cyc2lk95ip405fg88zr7z2ncr34";
+    sha256 = "1xlkazhdnja4lksn5c9nf4bln5gjqa35a8gwlam5r0728w0h83qq";
   };
 
   makeFlags = [ "prefix=$(out)" ];
diff --git a/pkgs/development/libraries/utmps/default.nix b/pkgs/development/libraries/utmps/default.nix
index 073674f8571..16b4cd563b2 100644
--- a/pkgs/development/libraries/utmps/default.nix
+++ b/pkgs/development/libraries/utmps/default.nix
@@ -4,8 +4,8 @@ with skawarePackages;
 
 buildPackage {
   pname = "utmps";
-  version = "0.0.3.1";
-  sha256 = "1h4hgjdrai51qkalgcx2ff60drpnw0ich66z90p8wk74am0vgc0h";
+  version = "0.0.3.2";
+  sha256 = "0zri5pqnva48bm8za4ic5mx0ymv70y4ga16bjh4i5pscs40sj5dh";
 
   description = "A secure utmpx and wtmp implementation";
 
@@ -29,4 +29,3 @@ buildPackage {
     mv examples $doc/share/doc/utmps/examples
   '';
 }
-
diff --git a/pkgs/development/libraries/virglrenderer/default.nix b/pkgs/development/libraries/virglrenderer/default.nix
index 5c508f133e1..8951ed4b002 100644
--- a/pkgs/development/libraries/virglrenderer/default.nix
+++ b/pkgs/development/libraries/virglrenderer/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "virglrenderer";
-  version = "0.8.1";
+  version = "0.8.2";
 
   src = fetchurl {
     url = "https://gitlab.freedesktop.org/virgl/virglrenderer/-/archive/virglrenderer-${version}/virglrenderer-virglrenderer-${version}.tar.bz2";
-    sha256 = "0ac39mplmy6lmcd6cljmfsrfby7m6ac3dzvmnn5pv200drl415l4";
+    sha256 = "07vfzg99wq92yg2phza9jc0zvps34yy9gc8v4hibqchdl77fmspx";
   };
 
   buildInputs = [ libGLU epoxy libX11 libdrm mesa ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A virtual 3D GPU library that allows a qemu guest to use the host GPU for accelerated 3D rendering";
-    homepage = https://virgil3d.github.io/;
+    homepage = "https://virgil3d.github.io/";
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = [ maintainers.xeji ];
diff --git a/pkgs/development/libraries/vte/default.nix b/pkgs/development/libraries/vte/default.nix
index d786bc271cc..8bd8d2e990b 100644
--- a/pkgs/development/libraries/vte/default.nix
+++ b/pkgs/development/libraries/vte/default.nix
@@ -18,17 +18,19 @@
 , pcre2
 , fribidi
 , zlib
+, icu
+, systemd
 }:
 
 stdenv.mkDerivation rec {
   pname = "vte";
-  version = "0.58.3";
+  version = "0.60.1";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0xa9ipwic4jnhhbzlnqbhssz10xkzv61cpkl1ammc6mdq95bbp12";
+    sha256 = "1i7h1jvsg115l5djn29n06xsqvygpfagczxy0i9f39zq6dr809ay";
   };
 
   passthru = {
@@ -51,6 +53,8 @@ stdenv.mkDerivation rec {
     gnutls
     pcre2
     zlib
+    icu
+    systemd
   ];
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/libraries/webkitgtk/default.nix b/pkgs/development/libraries/webkitgtk/default.nix
index aa3d874979f..ee83adac098 100644
--- a/pkgs/development/libraries/webkitgtk/default.nix
+++ b/pkgs/development/libraries/webkitgtk/default.nix
@@ -51,6 +51,7 @@
 , xdg-dbus-proxy
 , substituteAll
 , gnome3
+, glib
 }:
 
 assert enableGeoLocation -> geoclue2 != null;
@@ -61,13 +62,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "webkitgtk";
-  version = "2.26.4";
+  version = "2.28.0";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
     url = "https://webkitgtk.org/releases/${pname}-${version}.tar.xz";
-    sha256 = "0gqi9f9njrdn8vad1zvr59b25arwc8r0n8bp25sgkbfz2c3r11j3";
+    sha256 = "12qfs9w93c5kiyi14ynm4rf4ad3c213dvzmdrc9c3ab2iwbks7rn";
   };
 
   patches = optionals stdenv.isLinux [
@@ -78,6 +79,14 @@ stdenv.mkDerivation rec {
     ./libglvnd-headers.patch
   ];
 
+  preConfigure = stdenv.lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
+    # Ignore gettext in cmake_prefix_path so that find_program doesn't
+    # pick up the wrong gettext. TODO: Find a better solution for
+    # this, maybe make cmake not look up executables in
+    # CMAKE_PREFIX_PATH.
+    cmakeFlags+=" -DCMAKE_IGNORE_PATH=${getBin gettext}/bin"
+  '';
+
   nativeBuildInputs = [
     bison
     cmake
@@ -89,6 +98,8 @@ stdenv.mkDerivation rec {
     pkgconfig
     python3
     ruby
+    glib # for gdbus-codegen
+    wayland # for wayland-scanner
   ];
 
   buildInputs = [
diff --git a/pkgs/development/libraries/webkitgtk/libglvnd-headers.patch b/pkgs/development/libraries/webkitgtk/libglvnd-headers.patch
index 17264f3b588..8d7f2477b55 100644
--- a/pkgs/development/libraries/webkitgtk/libglvnd-headers.patch
+++ b/pkgs/development/libraries/webkitgtk/libglvnd-headers.patch
@@ -1,577 +1,3 @@
-diff --git a/Source/ThirdParty/ANGLE/scripts/generate_loader.py b/Source/ThirdParty/ANGLE/scripts/generate_loader.py
-index a408dac4..92ddca90 100644
---- a/Source/ThirdParty/ANGLE/scripts/generate_loader.py
-+++ b/Source/ThirdParty/ANGLE/scripts/generate_loader.py
-@@ -201,6 +201,8 @@ def main():
- 
- libegl_preamble = """#include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
-+#include <EGL/eglmesaext.h>
- """
- 
- util_gles_preamble = """#if defined(GL_GLES_PROTOTYPES) && GL_GLES_PROTOTYPES
-@@ -215,6 +217,8 @@ util_egl_preamble = """#include "util/util_export.h"
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
-+#include <EGL/eglmesaext.h>
- """
- 
- util_wgl_preamble = """
-diff --git a/Source/ThirdParty/ANGLE/src/common/PackedEGLEnums_autogen.h b/Source/ThirdParty/ANGLE/src/common/PackedEGLEnums_autogen.h
-index 68c65d8b..0dc9c8e3 100644
---- a/Source/ThirdParty/ANGLE/src/common/PackedEGLEnums_autogen.h
-+++ b/Source/ThirdParty/ANGLE/src/common/PackedEGLEnums_autogen.h
-@@ -14,6 +14,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <angle_gl.h>
- 
- #include <cstdint>
-diff --git a/Source/ThirdParty/ANGLE/src/common/PackedGLEnums_autogen.h b/Source/ThirdParty/ANGLE/src/common/PackedGLEnums_autogen.h
-index cd651150..17719bc2 100644
---- a/Source/ThirdParty/ANGLE/src/common/PackedGLEnums_autogen.h
-+++ b/Source/ThirdParty/ANGLE/src/common/PackedGLEnums_autogen.h
-@@ -14,6 +14,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <angle_gl.h>
- 
- #include <cstdint>
-diff --git a/Source/ThirdParty/ANGLE/src/common/gen_packed_gl_enums.py b/Source/ThirdParty/ANGLE/src/common/gen_packed_gl_enums.py
-index 2f77e725..5ea54f1f 100644
---- a/Source/ThirdParty/ANGLE/src/common/gen_packed_gl_enums.py
-+++ b/Source/ThirdParty/ANGLE/src/common/gen_packed_gl_enums.py
-@@ -71,6 +71,7 @@ header_template = """// GENERATED FILE - DO NOT EDIT.
- #include <angle_gl.h>
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include <cstdint>
- 
-diff --git a/Source/ThirdParty/ANGLE/src/common/utilities.h b/Source/ThirdParty/ANGLE/src/common/utilities.h
-index 7a1429a4..dd20bcca 100644
---- a/Source/ThirdParty/ANGLE/src/common/utilities.h
-+++ b/Source/ThirdParty/ANGLE/src/common/utilities.h
-@@ -11,6 +11,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include <math.h>
- #include <string>
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/Config.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/Config.cpp
-index 4134226d..5dd1065f 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/Config.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/Config.cpp
-@@ -15,6 +15,7 @@
- #include <vector>
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include "angle_gl.h"
- 
- #include "common/debug.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/Device.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/Device.cpp
-index 13ae4e61..b964b755 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/Device.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/Device.cpp
-@@ -12,6 +12,7 @@
- #include <iterator>
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <platform/Platform.h>
- 
- #include "common/debug.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/Display.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/Display.cpp
-index 21064073..a46628bd 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/Display.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/Display.cpp
-@@ -17,6 +17,7 @@
- #include <vector>
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <platform/Platform.h>
- 
- #include "common/debug.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/Error.h b/Source/ThirdParty/ANGLE/src/libANGLE/Error.h
-index 37df5b0c..b2e3885b 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/Error.h
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/Error.h
-@@ -11,6 +11,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include "angle_gl.h"
- #include "common/angleutils.h"
- #include "common/debug.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/Stream.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/Stream.cpp
-index b7bc84c8..538cb3e0 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/Stream.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/Stream.cpp
-@@ -10,6 +10,7 @@
- #include "libANGLE/Stream.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <platform/Platform.h>
- 
- #include "common/debug.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/Stream.h b/Source/ThirdParty/ANGLE/src/libANGLE/Stream.h
-index 9157aa51..d8e58f2d 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/Stream.h
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/Stream.h
-@@ -14,6 +14,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include "common/angleutils.h"
- #include "libANGLE/AttributeMap.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/Surface.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/Surface.cpp
-index 6daec4f6..941f34ca 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/Surface.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/Surface.cpp
-@@ -11,6 +11,7 @@
- #include "libANGLE/Surface.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include "libANGLE/Config.h"
- #include "libANGLE/Context.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/SurfaceImpl.h b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/SurfaceImpl.h
-index ea1a0510..db7cf0c8 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/SurfaceImpl.h
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/SurfaceImpl.h
-@@ -11,6 +11,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include "common/angleutils.h"
- #include "libANGLE/Error.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/DeviceD3D.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/DeviceD3D.cpp
-index ba5cf532..43304da5 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/DeviceD3D.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/DeviceD3D.cpp
-@@ -13,6 +13,7 @@
- #include "libANGLE/Display.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- namespace rx
- {
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/DisplayD3D.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/DisplayD3D.cpp
-index de60dfff..93b5bdf8 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/DisplayD3D.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/DisplayD3D.cpp
-@@ -9,6 +9,7 @@
- #include "libANGLE/renderer/d3d/DisplayD3D.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include "libANGLE/Config.h"
- #include "libANGLE/Context.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/EGLImageD3D.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/EGLImageD3D.cpp
-index a7255d0d..a7e37777 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/EGLImageD3D.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/EGLImageD3D.cpp
-@@ -20,6 +20,7 @@
- #include "libANGLE/renderer/d3d/TextureStorage.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- namespace rx
- {
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/SurfaceD3D.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/SurfaceD3D.cpp
-index 61dc8ffa..87276514 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/SurfaceD3D.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/SurfaceD3D.cpp
-@@ -19,6 +19,7 @@
- #include "libANGLE/renderer/d3d/d3d11/formatutils11.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <tchar.h>
- #include <algorithm>
- 
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/SwapChainD3D.h b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/SwapChainD3D.h
-index 443cadd6..e64bdfc4 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/SwapChainD3D.h
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/SwapChainD3D.h
-@@ -12,6 +12,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <GLES2/gl2.h>
- 
- #include "common/angleutils.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
-index 33dfa6b0..eb3393d2 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
-@@ -9,6 +9,7 @@
- #include "libANGLE/renderer/d3d/d3d11/Renderer11.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <versionhelpers.h>
- #include <sstream>
- 
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp
-index fe4def6e..2550b52c 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/d3d11/SwapChain11.cpp
-@@ -9,6 +9,7 @@
- #include "libANGLE/renderer/d3d/d3d11/SwapChain11.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include "libANGLE/features.h"
- #include "libANGLE/renderer/d3d/DisplayD3D.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/d3d9/Renderer9.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/d3d9/Renderer9.cpp
-index f4a4ce43..0cad5540 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/d3d9/Renderer9.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/d3d/d3d9/Renderer9.cpp
-@@ -9,6 +9,7 @@
- #include "libANGLE/renderer/d3d/d3d9/Renderer9.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <sstream>
- 
- #include "common/utilities.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/DisplayGL.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/DisplayGL.cpp
-index a89e1365..0fe4fa98 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/DisplayGL.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/DisplayGL.cpp
-@@ -18,6 +18,7 @@
- #include "libANGLE/renderer/gl/SurfaceGL.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- namespace rx
- {
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/RendererGL.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/RendererGL.cpp
-index 10b15594..7ae1ac6b 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/RendererGL.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/RendererGL.cpp
-@@ -9,6 +9,7 @@
- #include "libANGLE/renderer/gl/RendererGL.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include "common/debug.h"
- #include "libANGLE/AttributeMap.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/egl/FunctionsEGL.h b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/egl/FunctionsEGL.h
-index 115a7afb..abb200e6 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/egl/FunctionsEGL.h
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/egl/FunctionsEGL.h
-@@ -11,6 +11,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include <string>
- #include <vector>
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/egl/ozone/DisplayOzone.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/egl/ozone/DisplayOzone.cpp
-index 47ed6ce0..9d11560c 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/egl/ozone/DisplayOzone.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/egl/ozone/DisplayOzone.cpp
-@@ -14,6 +14,7 @@
- #include <unistd.h>
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include <drm_fourcc.h>
- #include <gbm.h>
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/glx/DisplayGLX.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/glx/DisplayGLX.cpp
-index 23b4a5c5..daeb5789 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/glx/DisplayGLX.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/glx/DisplayGLX.cpp
-@@ -9,6 +9,7 @@
- #include "libANGLE/renderer/gl/glx/DisplayGLX.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <algorithm>
- #include <cstring>
- #include <fstream>
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/renderergl_utils.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/renderergl_utils.cpp
-index 698b51e2..32e6126f 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/renderergl_utils.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/renderergl_utils.cpp
-@@ -27,6 +27,7 @@
- #include "libANGLE/renderer/gl/formatutilsgl.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <algorithm>
- #include <sstream>
- 
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.cpp
-index 5b686321..16ae890f 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/wgl/DXGISwapChainWindowSurfaceWGL.cpp
-@@ -18,6 +18,7 @@
- #include "libANGLE/renderer/gl/wgl/FunctionsWGL.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- namespace rx
- {
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/wgl/DisplayWGL.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/wgl/DisplayWGL.cpp
-index 12679ba7..93503812 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/wgl/DisplayWGL.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/wgl/DisplayWGL.cpp
-@@ -28,6 +28,7 @@
- #include "platform/Platform.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <sstream>
- #include <string>
- 
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/vulkan/RendererVk.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/vulkan/RendererVk.cpp
-index df900f4d..4385be88 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/renderer/vulkan/RendererVk.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/renderer/vulkan/RendererVk.cpp
-@@ -13,6 +13,7 @@
- #include "libANGLE/renderer/vulkan/vk_utils.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include "common/debug.h"
- #include "common/platform.h"
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/validationEGL.cpp b/Source/ThirdParty/ANGLE/src/libANGLE/validationEGL.cpp
-index 1c0b25f4..64e96f73 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/validationEGL.cpp
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/validationEGL.cpp
-@@ -22,6 +22,7 @@
- #include "libANGLE/formatutils.h"
- 
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- namespace egl
- {
-diff --git a/Source/ThirdParty/ANGLE/src/libANGLE/validationEGL.h b/Source/ThirdParty/ANGLE/src/libANGLE/validationEGL.h
-index a671bb0d..248f0ae8 100644
---- a/Source/ThirdParty/ANGLE/src/libANGLE/validationEGL.h
-+++ b/Source/ThirdParty/ANGLE/src/libANGLE/validationEGL.h
-@@ -15,6 +15,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- namespace gl
- {
-diff --git a/Source/ThirdParty/ANGLE/src/libEGL/egl_loader_autogen.h b/Source/ThirdParty/ANGLE/src/libEGL/egl_loader_autogen.h
-index ae4a427c..a802b65d 100644
---- a/Source/ThirdParty/ANGLE/src/libEGL/egl_loader_autogen.h
-+++ b/Source/ThirdParty/ANGLE/src/libEGL/egl_loader_autogen.h
-@@ -13,6 +13,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- extern PFNEGLCHOOSECONFIGPROC EGL_ChooseConfig;
- extern PFNEGLCOPYBUFFERSPROC EGL_CopyBuffers;
-diff --git a/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl_ext.h b/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl_ext.h
-index 3c64b290..96201b31 100644
---- a/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl_ext.h
-+++ b/Source/ThirdParty/ANGLE/src/libGLESv2/entry_points_egl_ext.h
-@@ -11,6 +11,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <export.h>
- 
- extern "C" {
-diff --git a/Source/ThirdParty/ANGLE/src/tests/deqp_support/tcuANGLENativeDisplayFactory.cpp b/Source/ThirdParty/ANGLE/src/tests/deqp_support/tcuANGLENativeDisplayFactory.cpp
-index 777b09e1..dbb0bd2f 100644
---- a/Source/ThirdParty/ANGLE/src/tests/deqp_support/tcuANGLENativeDisplayFactory.cpp
-+++ b/Source/ThirdParty/ANGLE/src/tests/deqp_support/tcuANGLENativeDisplayFactory.cpp
-@@ -24,6 +24,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include "deClock.h"
- #include "deMemory.h"
-diff --git a/Source/ThirdParty/ANGLE/src/tests/deqp_support/tcuANGLEPlatform.cpp b/Source/ThirdParty/ANGLE/src/tests/deqp_support/tcuANGLEPlatform.cpp
-index 6b4a25bf..1c4ac864 100644
---- a/Source/ThirdParty/ANGLE/src/tests/deqp_support/tcuANGLEPlatform.cpp
-+++ b/Source/ThirdParty/ANGLE/src/tests/deqp_support/tcuANGLEPlatform.cpp
-@@ -22,6 +22,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include "egluGLContextFactory.hpp"
- #include "tcuANGLENativeDisplayFactory.h"
-diff --git a/Source/ThirdParty/ANGLE/src/tests/egl_tests/EGLX11VisualTest.cpp b/Source/ThirdParty/ANGLE/src/tests/egl_tests/EGLX11VisualTest.cpp
-index 90abb931..aea4e153 100644
---- a/Source/ThirdParty/ANGLE/src/tests/egl_tests/EGLX11VisualTest.cpp
-+++ b/Source/ThirdParty/ANGLE/src/tests/egl_tests/EGLX11VisualTest.cpp
-@@ -10,6 +10,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <X11/Xlib.h>
- 
- #include "test_utils/ANGLETest.h"
-diff --git a/Source/ThirdParty/ANGLE/src/tests/gles_conformance_tests/gles_conformance_tests.h b/Source/ThirdParty/ANGLE/src/tests/gles_conformance_tests/gles_conformance_tests.h
-index e888a239..71606b8c 100644
---- a/Source/ThirdParty/ANGLE/src/tests/gles_conformance_tests/gles_conformance_tests.h
-+++ b/Source/ThirdParty/ANGLE/src/tests/gles_conformance_tests/gles_conformance_tests.h
-@@ -11,6 +11,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include <string>
- 
-diff --git a/Source/ThirdParty/ANGLE/src/tests/gles_conformance_tests/gles_conformance_tests_main.cpp b/Source/ThirdParty/ANGLE/src/tests/gles_conformance_tests/gles_conformance_tests_main.cpp
-index 7fdddcc6..e40b8905 100644
---- a/Source/ThirdParty/ANGLE/src/tests/gles_conformance_tests/gles_conformance_tests_main.cpp
-+++ b/Source/ThirdParty/ANGLE/src/tests/gles_conformance_tests/gles_conformance_tests_main.cpp
-@@ -10,6 +10,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include <map>
- #include <string>
-diff --git a/Source/ThirdParty/ANGLE/src/tests/test_utils/angle_test_configs.h b/Source/ThirdParty/ANGLE/src/tests/test_utils/angle_test_configs.h
-index 7bc7a027..ebb2827b 100644
---- a/Source/ThirdParty/ANGLE/src/tests/test_utils/angle_test_configs.h
-+++ b/Source/ThirdParty/ANGLE/src/tests/test_utils/angle_test_configs.h
-@@ -16,6 +16,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include "GLSLANG/ShaderLang.h"
- #include "angle_test_instantiate.h"
-diff --git a/Source/ThirdParty/ANGLE/util/OSPixmap.h b/Source/ThirdParty/ANGLE/util/OSPixmap.h
-index ba6ccf4a..563d2578 100644
---- a/Source/ThirdParty/ANGLE/util/OSPixmap.h
-+++ b/Source/ThirdParty/ANGLE/util/OSPixmap.h
-@@ -13,6 +13,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include "util/Event.h"
- #include "util/util_export.h"
-diff --git a/Source/ThirdParty/ANGLE/util/OSWindow.h b/Source/ThirdParty/ANGLE/util/OSWindow.h
-index 3cdb458c..3178fa44 100644
---- a/Source/ThirdParty/ANGLE/util/OSWindow.h
-+++ b/Source/ThirdParty/ANGLE/util/OSWindow.h
-@@ -15,6 +15,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- #include "util/Event.h"
- #include "util/util_export.h"
-diff --git a/Source/ThirdParty/ANGLE/util/egl_loader_autogen.h b/Source/ThirdParty/ANGLE/util/egl_loader_autogen.h
-index 5fbec82f..77a30330 100644
---- a/Source/ThirdParty/ANGLE/util/egl_loader_autogen.h
-+++ b/Source/ThirdParty/ANGLE/util/egl_loader_autogen.h
-@@ -15,6 +15,7 @@
- 
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- 
- ANGLE_UTIL_EXPORT extern PFNEGLCHOOSECONFIGPROC eglChooseConfig;
- ANGLE_UTIL_EXPORT extern PFNEGLCOPYBUFFERSPROC eglCopyBuffers;
-diff --git a/Source/WebCore/platform/graphics/egl/GLContextEGL.cpp b/Source/WebCore/platform/graphics/egl/GLContextEGL.cpp
-index a8a82d70..050893a9 100644
---- a/Source/WebCore/platform/graphics/egl/GLContextEGL.cpp
-+++ b/Source/WebCore/platform/graphics/egl/GLContextEGL.cpp
-@@ -29,6 +29,7 @@
- #else
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #endif
- 
- #if USE(CAIRO)
-diff --git a/Source/WebCore/platform/graphics/wayland/PlatformDisplayWayland.cpp b/Source/WebCore/platform/graphics/wayland/PlatformDisplayWayland.cpp
-index 05f92c22..636df34a 100644
---- a/Source/WebCore/platform/graphics/wayland/PlatformDisplayWayland.cpp
-+++ b/Source/WebCore/platform/graphics/wayland/PlatformDisplayWayland.cpp
-@@ -35,6 +35,7 @@
- #include <wayland-egl.h>
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <wtf/Assertions.h>
- 
- namespace WebCore {
-diff --git a/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp b/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp
-index 8c81119b..bf9ed4bd 100644
---- a/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp
-+++ b/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp
-@@ -38,6 +38,7 @@
- #if USE(EGL)
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #endif
- 
- namespace WebCore {
-diff --git a/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreWayland.cpp b/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreWayland.cpp
-index 973b3168..5586236a 100644
---- a/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreWayland.cpp
-+++ b/Source/WebKit/UIProcess/gtk/AcceleratedBackingStoreWayland.cpp
-@@ -35,6 +35,7 @@
- #include <gdk/gdkwayland.h>
- #include <EGL/egl.h>
- #include <EGL/eglext.h>
-+#include <EGL/eglmesaext.h>
- #include <WebCore/CairoUtilities.h>
- #include <WebCore/GLContext.h>
- 
 diff --git a/Source/WebKit/UIProcess/gtk/WaylandCompositor.cpp b/Source/WebKit/UIProcess/gtk/WaylandCompositor.cpp
 index 8d848ce4..46d42c11 100644
 --- a/Source/WebKit/UIProcess/gtk/WaylandCompositor.cpp
diff --git a/pkgs/development/libraries/xdg-desktop-portal/default.nix b/pkgs/development/libraries/xdg-desktop-portal/default.nix
index 1049ce3201a..02c039b8eab 100644
--- a/pkgs/development/libraries/xdg-desktop-portal/default.nix
+++ b/pkgs/development/libraries/xdg-desktop-portal/default.nix
@@ -6,7 +6,7 @@
 , pkgconfig
 , libxml2
 , glib
-, pipewire
+, pipewire_0_2
 , fontconfig
 , flatpak
 , gsettings-desktop-schemas
@@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     glib
-    pipewire
+    pipewire_0_2
     fontconfig
     flatpak
     acl
diff --git a/pkgs/development/libraries/zchunk/default.nix b/pkgs/development/libraries/zchunk/default.nix
index ee07133b7aa..b7787650e7c 100644
--- a/pkgs/development/libraries/zchunk/default.nix
+++ b/pkgs/development/libraries/zchunk/default.nix
@@ -9,7 +9,7 @@
 
 stdenv.mkDerivation rec {
   pname = "zchunk";
-  version = "1.1.5";
+  version = "1.1.6";
 
   outputs = [ "out" "lib" "dev" ];
 
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
     owner = "zchunk";
     repo = pname;
     rev = version;
-    sha256 = "13sqjslk634mkklnmzdlzk9l9rc6g6migig5rln3irdnjrxvjf69";
+    sha256 = "1j05f26xppwbkxrm11895blm75i1a6p9q23x7wlkqw198mpnpbbv";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/lua-modules/generated-packages.nix b/pkgs/development/lua-modules/generated-packages.nix
index 33946b7213a..edc09421baf 100644
--- a/pkgs/development/lua-modules/generated-packages.nix
+++ b/pkgs/development/lua-modules/generated-packages.nix
@@ -1326,11 +1326,11 @@ luuid = buildLuarocksPackage {
 };
 luv = buildLuarocksPackage {
   pname = "luv";
-  version = "1.34.1-1";
+  version = "1.30.0-0";
 
   src = fetchurl {
-    url    = https://luarocks.org/luv-1.34.1-1.src.rock;
-    sha256 = "044cyp25xn35nj5qp1hx04lfkzrpa6adhqjshq2g7wvbga77p1q0";
+    url    = https://luarocks.org/luv-1.30.0-0.src.rock;
+    sha256 = "1z5sdq9ld4sm5pws9qxpk9cadv9i7ycwad1zwsa57pj67gly11vi";
   };
   disabled = (luaOlder "5.1");
   propagatedBuildInputs = [ lua ];
diff --git a/pkgs/development/mobile/androidenv/compose-android-packages.nix b/pkgs/development/mobile/androidenv/compose-android-packages.nix
index fb548bf3f9f..f98547011bd 100644
--- a/pkgs/development/mobile/androidenv/compose-android-packages.nix
+++ b/pkgs/development/mobile/androidenv/compose-android-packages.nix
@@ -1,10 +1,10 @@
 {requireFile, autoPatchelfHook, pkgs, pkgs_i686, licenseAccepted ? false}:
 
 { toolsVersion ? "25.2.5"
-, platformToolsVersion ? "28.0.1"
+, platformToolsVersion ? "29.0.6"
 , buildToolsVersions ? [ "28.0.3" ]
 , includeEmulator ? false
-, emulatorVersion ? "28.0.14"
+, emulatorVersion ? "30.0.3"
 , platformVersions ? []
 , includeSources ? false
 , includeDocs ? false
diff --git a/pkgs/development/mobile/androidenv/emulate-app.nix b/pkgs/development/mobile/androidenv/emulate-app.nix
index fa9a56fadba..6273d75cc38 100644
--- a/pkgs/development/mobile/androidenv/emulate-app.nix
+++ b/pkgs/development/mobile/androidenv/emulate-app.nix
@@ -8,6 +8,7 @@
 
 let
   sdkArgs = {
+    toolsVersion = "26.1.1";
     platformVersions = [ platformVersion ];
     includeEmulator = true;
     includeSystemImages = true;
@@ -67,12 +68,12 @@ stdenv.mkDerivation {
     export ANDROID_SERIAL="emulator-$port"
 
     # Create a virtual android device for testing if it does not exists
-    ${sdk}/libexec/android-sdk/tools/android list targets
+    ${sdk}/libexec/android-sdk/tools/bin/avdmanager list target
 
     if [ "$(${sdk}/libexec/android-sdk/tools/android list avd | grep 'Name: device')" = "" ]
     then
         # Create a virtual android device
-        yes "" | ${sdk}/libexec/android-sdk/tools/android create avd -n device -t 1 --abi ${systemImageType}/${abiVersion} $NIX_ANDROID_AVD_FLAGS
+        yes "" | ${sdk}/libexec/android-sdk/tools/bin/avdmanager create avd -n device -k "system-images;android-${platformVersion};${systemImageType};${abiVersion}" $NIX_ANDROID_AVD_FLAGS
 
         ${lib.optionalString enableGPU ''
           # Enable GPU acceleration
diff --git a/pkgs/development/mobile/androidenv/emulator.nix b/pkgs/development/mobile/androidenv/emulator.nix
index 7ba74eb900f..2402d5433ed 100644
--- a/pkgs/development/mobile/androidenv/emulator.nix
+++ b/pkgs/development/mobile/androidenv/emulator.nix
@@ -1,13 +1,39 @@
-{deployAndroidPackage, lib, package, os, autoPatchelfHook, makeWrapper, pkgs, pkgs_i686}:
+{ deployAndroidPackage, lib, package, os, autoPatchelfHook, makeWrapper, pkgs, pkgs_i686 }:
 
 deployAndroidPackage {
   inherit package os;
   buildInputs = [ autoPatchelfHook makeWrapper ]
-    ++ lib.optional (os == "linux") [ pkgs.glibc pkgs.xlibs.libX11 pkgs.xlibs.libXext pkgs.xlibs.libXdamage pkgs.xlibs.libXfixes pkgs.xlibs.libxcb pkgs.libGL pkgs.libpulseaudio pkgs.zlib pkgs.ncurses5 pkgs.stdenv.cc.cc pkgs_i686.glibc ];
+  ++ lib.optional (os == "linux") [
+    pkgs.glibc
+    pkgs.xlibs.libX11
+    pkgs.xlibs.libXext
+    pkgs.xlibs.libXdamage
+    pkgs.xlibs.libXfixes
+    pkgs.xlibs.libxcb
+    pkgs.xlibs.libXcomposite
+    pkgs.xlibs.libXcursor
+    pkgs.xlibs.libXi
+    pkgs.xlibs.libXrender
+    pkgs.xlibs.libXtst
+    pkgs.libcxx
+    pkgs.libGL
+    pkgs.libpulseaudio
+    pkgs.zlib
+    pkgs.ncurses5
+    pkgs.stdenv.cc.cc
+    pkgs_i686.glibc
+    pkgs.expat
+    pkgs.freetype
+    pkgs.nss
+    pkgs.nspr
+    pkgs.alsaLib
+  ];
   patchInstructions = lib.optionalString (os == "linux") ''
     addAutoPatchelfSearchPath $packageBaseDir/lib
     addAutoPatchelfSearchPath $packageBaseDir/lib64
     addAutoPatchelfSearchPath $packageBaseDir/lib64/qt/lib
+    # autoPatchelf is not detecting libuuid :(
+    addAutoPatchelfSearchPath ${pkgs.libuuid.out}/lib
     autoPatchelf $out
 
     # Wrap emulator so that it can load libdbus-1.so at runtime and it no longer complains about XKB keymaps
diff --git a/pkgs/development/mobile/androidenv/generated/addons.nix b/pkgs/development/mobile/androidenv/generated/addons.nix
index d902b111665..a1807b99054 100644
--- a/pkgs/development/mobile/androidenv/generated/addons.nix
+++ b/pkgs/development/mobile/androidenv/generated/addons.nix
@@ -423,6 +423,17 @@
     };
     
 
+    "extras;google;Android_Emulator_Hypervisor_Driver" = {
+      name = "extras-google-Android_Emulator_Hypervisor_Driver";
+      path = "extras/google/Android_Emulator_Hypervisor_Driver";
+      revision = "1.4.0";
+      displayName = "Android Emulator Hypervisor Driver for AMD Processors (installer)";
+      archives = {
+      
+      };
+    };
+    
+
     "extras;google;admob_ads_sdk" = {
       name = "extras-google-admob_ads_sdk";
       path = "extras/google/admob_ads_sdk";
@@ -525,13 +536,13 @@
     "extras;google;instantapps" = {
       name = "extras-google-instantapps";
       path = "extras/google/instantapps";
-      revision = "1.5.0";
+      revision = "1.9.0";
       displayName = "Google Play Instant Development SDK";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/iasdk-1.5.0-1538000167.zip;
-          sha1 = "6c282b9c686e819fe7f5ac8f2249d2479acb63b4";
+          url = https://dl.google.com/android/repository/iasdk-1.9.0-1566514721.zip;
+          sha1 = "c498367dcd7db30154b3e70c4ddbb1b0ea4b8d20";
         };
       
       };
@@ -605,7 +616,7 @@
     "extras;google;usb_driver" = {
       name = "extras-google-usb_driver";
       path = "extras/google/usb_driver";
-      revision = "11";
+      revision = "12";
       displayName = "Google USB Driver";
       archives = {
       
@@ -645,38 +656,6 @@
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha2" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha2";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha2";
-      revision = "1";
-      displayName = "com.android.support.constraint:constraint-layout-solver:1.0.0-alpha2";
-      archives = {
-      
-        all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha2.zip;
-          sha1 = "2e7fd5d8d158f4517ba52af824f84466ffede879";
-        };
-      
-      };
-    };
-    
-
-    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha3" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha3";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha3";
-      revision = "1";
-      displayName = "com.android.support.constraint:constraint-layout-solver:1.0.0-alpha3";
-      archives = {
-      
-        all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha3.zip;
-          sha1 = "cd1cbbb2621c9034b835e9b69243dc558cdee4dc";
-        };
-      
-      };
-    };
-    
-
     "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha4" = {
       name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha4";
       path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha4";
@@ -693,48 +672,48 @@
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha5" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha5";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha5";
+    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha4" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha4";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha4";
       revision = "1";
-      displayName = "Solver for ConstraintLayout 1.0.0-alpha5";
+      displayName = "com.android.support.constraint:constraint-layout-solver:1.0.0-alpha4";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha5.zip;
-          sha1 = "7ba6c82c7645ac023cf45c1e27a6ae3added308a";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha4.zip;
+          sha1 = "2aa2aceecc6ba172742d0af0b43f11d03924eeb8";
         };
       
       };
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha6" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha6";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha6";
+    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha4" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha4";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha4";
       revision = "1";
-      displayName = "Solver for ConstraintLayout 1.0.0-alpha6";
+      displayName = "com.android.support.constraint:constraint-layout-solver:1.0.0-alpha4";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha6.zip;
-          sha1 = "b7e390f940704f4f78e1eaa5f5a5dba3bc3e81ad";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha4.zip;
+          sha1 = "2aa2aceecc6ba172742d0af0b43f11d03924eeb8";
         };
       
       };
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha7" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha7";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha7";
+    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha4" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha4";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha4";
       revision = "1";
-      displayName = "Solver for ConstraintLayout 1.0.0-alpha7";
+      displayName = "com.android.support.constraint:constraint-layout-solver:1.0.0-alpha4";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha7.zip;
-          sha1 = "f08be3c306bf878de31c465e46a266c52014a13f";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha4.zip;
+          sha1 = "2aa2aceecc6ba172742d0af0b43f11d03924eeb8";
         };
       
       };
@@ -757,16 +736,16 @@
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha9" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha9";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha9";
+    "extras;m2repository;com;android;support;constraint;constraint-layout-solver;1.0.0-alpha8" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-solver-1.0.0-alpha8";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout-solver/1.0.0-alpha8";
       revision = "1";
-      displayName = "Solver for ConstraintLayout 1.0.0-alpha9";
+      displayName = "Solver for ConstraintLayout 1.0.0-alpha8";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha9.zip;
-          sha1 = "2c52ddd883d83230a17042b8f4ba03669f0f5f40";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-solver-1.0.0-alpha8.zip;
+          sha1 = "cd13d16a8f0198c1d6040ec8b1d0d4e5bb7feb6a";
         };
       
       };
@@ -901,38 +880,6 @@
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha2" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha2";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha2";
-      revision = "1";
-      displayName = "com.android.support.constraint:constraint-layout:1.0.0-alpha2";
-      archives = {
-      
-        all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha2.zip;
-          sha1 = "2edb4fc33745cc9d69d985f29fd48fefcd0aa9f0";
-        };
-      
-      };
-    };
-    
-
-    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha3" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha3";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha3";
-      revision = "1";
-      displayName = "com.android.support.constraint:constraint-layout:1.0.0-alpha3";
-      archives = {
-      
-        all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha3.zip;
-          sha1 = "1a26fb79d98421f315ead7ad15be167727533026";
-        };
-      
-      };
-    };
-    
-
     "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha4" = {
       name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha4";
       path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha4";
@@ -949,48 +896,48 @@
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha5" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha5";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha5";
+    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha4" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha4";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha4";
       revision = "1";
-      displayName = "ConstraintLayout for Android 1.0.0-alpha5";
+      displayName = "com.android.support.constraint:constraint-layout:1.0.0-alpha4";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha5.zip;
-          sha1 = "24f78daf491dcad74bcb2acfa79ea2d8e906f53b";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha4.zip;
+          sha1 = "645a9be1f0c1177301e71cd0ddccf1dd67c554fe";
         };
       
       };
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha6" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha6";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha6";
+    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha4" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha4";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha4";
       revision = "1";
-      displayName = "ConstraintLayout for Android 1.0.0-alpha6";
+      displayName = "com.android.support.constraint:constraint-layout:1.0.0-alpha4";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha6.zip;
-          sha1 = "cb60e9ad4f6d3cc3c5b1b98cd3610c8d3204e651";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha4.zip;
+          sha1 = "645a9be1f0c1177301e71cd0ddccf1dd67c554fe";
         };
       
       };
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha7" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha7";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha7";
+    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha4" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha4";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha4";
       revision = "1";
-      displayName = "ConstraintLayout for Android 1.0.0-alpha7";
+      displayName = "com.android.support.constraint:constraint-layout:1.0.0-alpha4";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha7.zip;
-          sha1 = "17ac210c85d24d7e8ace62847f05e4e45b640b73";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha4.zip;
+          sha1 = "645a9be1f0c1177301e71cd0ddccf1dd67c554fe";
         };
       
       };
@@ -1013,16 +960,16 @@
     };
     
 
-    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha9" = {
-      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha9";
-      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha9";
+    "extras;m2repository;com;android;support;constraint;constraint-layout;1.0.0-alpha8" = {
+      name = "extras-m2repository-com-android-support-constraint-constraint-layout-1.0.0-alpha8";
+      path = "extras/m2repository/com/android/support/constraint/constraint-layout/1.0.0-alpha8";
       revision = "1";
-      displayName = "ConstraintLayout for Android 1.0.0-alpha9";
+      displayName = "ConstraintLayout for Android 1.0.0-alpha8";
       archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha9.zip;
-          sha1 = "89c2bbc005d4731c7a830a4d5aa98dae121a46a4";
+          url = https://dl.google.com/android/repository/com.android.support.constraint-constraint-layout-1.0.0-alpha8.zip;
+          sha1 = "7912ba03b04831f918f523648f118c4ee4da7604";
         };
       
       };
diff --git a/pkgs/development/mobile/androidenv/generated/packages.nix b/pkgs/development/mobile/androidenv/generated/packages.nix
index fc9f50e1316..a63a18c4b51 100644
--- a/pkgs/development/mobile/androidenv/generated/packages.nix
+++ b/pkgs/development/mobile/androidenv/generated/packages.nix
@@ -877,6 +877,158 @@
     };
   };
   
+  "build-tools"."29.0.0" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.0";
+    revision = "29.0.0";
+    displayName = "Android SDK Build-Tools 29";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-linux.zip;
+        sha1 = "ad314caf1802209c4b00a5f3517af5ceb0d48eae";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-macosx.zip;
+        sha1 = "35dc6bc7a53bd9d206847e72f02cab21cfdaa869";
+      };
+      
+    };
+  };
+  
+  "build-tools"."29.0.0-rc1" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.0-rc1";
+    revision = "29.0.0-rc1";
+    displayName = "Android SDK Build-Tools 29-rc1";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-rc1-linux.zip;
+        sha1 = "1c897f5885ac5468613e40e1ea598c21c05d345d";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-rc1-macosx.zip;
+        sha1 = "f066c0d9ea2f0d8a0a9cc7b2ca0a467a570ab034";
+      };
+      
+    };
+  };
+  
+  "build-tools"."29.0.0-rc2" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.0-rc2";
+    revision = "29.0.0-rc2";
+    displayName = "Android SDK Build-Tools 29-rc2";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-rc2-linux.zip;
+        sha1 = "b4b41d429c35b42db07b6c65d4aa998ba8c4093c";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-rc2-macosx.zip;
+        sha1 = "7a960367999169ccac5dbc60817e5f1725c4c738";
+      };
+      
+    };
+  };
+  
+  "build-tools"."29.0.0-rc3" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.0-rc3";
+    revision = "29.0.0-rc3";
+    displayName = "Android SDK Build-Tools 29-rc3";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-rc3-linux.zip;
+        sha1 = "8b7177f198e8b92da8f9537aaf859f6edf222b01";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29-rc3-macosx.zip;
+        sha1 = "643e8d76625f6e2cfcd5494e50bae5e14725ec0c";
+      };
+      
+    };
+  };
+  
+  "build-tools"."29.0.1" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.1";
+    revision = "29.0.1";
+    displayName = "Android SDK Build-Tools 29.0.1";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29.0.1-linux.zip;
+        sha1 = "fc209e5d91ab2daeac24345a5cb17261940547e4";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29.0.1-macosx.zip;
+        sha1 = "46ae9b1d1e2a67241d7da9c2cd8eae42f24cc6cd";
+      };
+      
+    };
+  };
+  
+  "build-tools"."29.0.2" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.2";
+    revision = "29.0.2";
+    displayName = "Android SDK Build-Tools 29.0.2";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29.0.2-linux.zip;
+        sha1 = "c0fc7e5c37ac96bfd0c611802e8ab36d0e71b398";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29.0.2-macosx.zip;
+        sha1 = "f781d9e03d5c2debcf51fed3792ee7a9d066723f";
+      };
+      
+    };
+  };
+  
+  "build-tools"."29.0.3" = {
+    
+    name = "build-tools";
+    path = "build-tools/29.0.3";
+    revision = "29.0.3";
+    displayName = "Android SDK Build-Tools 29.0.3";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29.0.3-linux.zip;
+        sha1 = "64efff52165cda5e31848acafa46a05e3f3b4651";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r29.0.3-macosx.zip;
+        sha1 = "76520eb7712fb0bb4c023b55c6f65588ee268289";
+      };
+      
+    };
+  };
+  
+  "build-tools"."30.0.0-rc1" = {
+    
+    name = "build-tools";
+    path = "build-tools/30.0.0-rc1";
+    revision = "30.0.0-rc1";
+    displayName = "Android SDK Build-Tools 30-rc1";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r30-rc1-linux.zip;
+        sha1 = "afcb370bb6956bbf9e90557230088a3e1417e8a8";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/build-tools_r30-rc1-macosx.zip;
+        sha1 = "2761a0ea9466685aaaf93e85bf8bd47575bc91b8";
+      };
+      
+    };
+  };
+  
   "cmake"."3.10.2" = {
     
     name = "cmake";
@@ -915,6 +1067,25 @@
     };
   };
   
+  "cmdline-tools"."1.0" = {
+    
+    name = "cmdline-tools";
+    path = "cmdline-tools/1.0";
+    revision = "1.0";
+    displayName = "Android SDK Command-line Tools";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/commandlinetools-linux-6200805_latest.zip;
+        sha1 = "6ffc5bd72db2c755f9b374ed829202262a6d8aaf";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/commandlinetools-mac-6200805_latest.zip;
+        sha1 = "23f803c07e392bb769507c88b23c2c7868cc7a6f";
+      };
+      
+    };
+  };
+  
   "docs"."1" = {
     
     name = "docs";
@@ -931,88 +1102,66 @@
     };
   };
   
-  "emulator"."27.3.10".linux = {
-    
-    name = "emulator";
-    path = "emulator";
-    revision = "27.3.10";
-    displayName = "Android Emulator";
-    archives = {
-      linux = fetchurl {
-        url = https://dl.google.com/android/repository/emulator-linux-4969155.zip;
-        sha1 = "5b037b25bc6567fda3071457f0009c057670d9e8";
-      };
-      
-    };
-  };
-  
-  "emulator"."27.3.10".macosx = {
+  "emulator"."30.0.0".macosx = {
     
     name = "emulator";
     path = "emulator";
-    revision = "27.3.10";
+    revision = "30.0.0";
     displayName = "Android Emulator";
     archives = {
       macosx = fetchurl {
-        url = https://dl.google.com/android/repository/emulator-darwin-4969155.zip;
-        sha1 = "28d2b51ee5c84bc544deee433419f33dc9e05b66";
+        url = https://dl.google.com/android/repository/emulator-darwin-6203977.zip;
+        sha1 = "3bb965869577be4e62dec053de34c279f5024a12";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/emulator-linux-6203977.zip;
+        sha1 = "356cac370c03460ca82166464de7ecd7da1f4a49";
       };
       
     };
   };
   
-  "emulator"."27.3.10".windows = {
+  "emulator"."28.0.25".windows = {
     
     name = "emulator";
     path = "emulator";
-    revision = "27.3.10";
+    revision = "28.0.25";
     displayName = "Android Emulator";
     archives = {
       
     };
   };
   
-  "emulator"."28.0.14".linux = {
+  "emulator"."30.0.3".linux = {
     
     name = "emulator";
     path = "emulator";
-    revision = "28.0.14";
+    revision = "30.0.3";
     displayName = "Android Emulator";
     archives = {
       linux = fetchurl {
-        url = https://dl.google.com/android/repository/emulator-linux-5092175.zip;
-        sha1 = "062ef9a1f6759481de897d6c5602d9d66e958a0b";
+        url = https://dl.google.com/android/repository/emulator-linux-6258612.zip;
+        sha1 = "a891e1532443a55c3ce9986b484effdabd842f8e";
       };
       
     };
   };
   
-  "emulator"."28.0.14".macosx = {
+  "emulator"."30.0.2".macosx = {
     
     name = "emulator";
     path = "emulator";
-    revision = "28.0.14";
+    revision = "30.0.2";
     displayName = "Android Emulator";
     archives = {
       macosx = fetchurl {
-        url = https://dl.google.com/android/repository/emulator-darwin-5092175.zip;
-        sha1 = "6dc13599bddd5c2acdb559b25201c92a801d157c";
+        url = https://dl.google.com/android/repository/emulator-darwin-6237347.zip;
+        sha1 = "702b6a050a230b3b45f667867f6fc99b3f973d9a";
       };
       
     };
   };
   
-  "emulator"."28.0.14".windows = {
-    
-    name = "emulator";
-    path = "emulator";
-    revision = "28.0.14";
-    displayName = "Android Emulator";
-    archives = {
-      
-    };
-  };
-  
   "lldb"."2.0.2558144" = {
     
     name = "lldb";
@@ -1127,6 +1276,177 @@
     };
   };
   
+  "ndk-bundle"."21.1.6210238-rc1" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "21.1.6210238-rc1";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21b-beta1-darwin-x86_64.zip;
+        sha1 = "971609f9a579ebbcb8d121a5d5aa0cba716b2d1f";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21b-beta1-linux-x86_64.zip;
+        sha1 = "cf06ed408663c11c8f4824f9370c7a900ec074dd";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."21.0.6113669" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "21.0.6113669";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-darwin-x86_64.zip;
+        sha1 = "0d50636cc0e34ed3ba540d6d5818ea0cf10f16aa";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-linux-x86_64.zip;
+        sha1 = "afc9c0b9faad222898ac8168c78ad4ccac8a1b5c";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."21.0.6011959-rc2" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "21.0.6011959-rc2";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-beta2-darwin-x86_64.zip;
+        sha1 = "34a46c3867c9d87a80895c0b8a098256052536d2";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-beta2-linux-x86_64.zip;
+        sha1 = "335f30302bee700a9a5fdfe3ae533a4963499c44";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."20.1.5948944" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "20.1.5948944";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20b-darwin-x86_64.zip;
+        sha1 = "b51290ab69cb89de1f0ba108702277bc333b38be";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20b-linux-x86_64.zip;
+        sha1 = "d903fdf077039ad9331fb6c3bee78aa46d45527b";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."20.0.5594570" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "20.0.5594570";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-darwin-x86_64.zip;
+        sha1 = "96d5f1c50452596912d1982439c514194b5751e6";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-linux-x86_64.zip;
+        sha1 = "8665fc84a1b1f0d6ab3b5fdd1e30200cc7b9adff";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."20.0.5471264-rc3" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "20.0.5471264-rc3";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta3-darwin-x86_64.zip;
+        sha1 = "665a035cadb0dd03e6502ba25c18643f6e4ede24";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta3-linux-x86_64.zip;
+        sha1 = "674d8fb0e0df8e8be1c31fa321eb176548a19ba3";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."20.0.5392854-rc2" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "20.0.5392854-rc2";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta2-darwin-x86_64.zip;
+        sha1 = "cd94191ace6b31ec9af1cc370173e16934e1cb8b";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta2-linux-x86_64.zip;
+        sha1 = "8285ae2e24a7232fd0cbfb55e955c8586ef2ee02";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."19.2.5345600" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "19.2.5345600";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19c-darwin-x86_64.zip;
+        sha1 = "f46b8193109bba8a58e0461c1a48f4534051fb25";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19c-linux-x86_64.zip;
+        sha1 = "fd94d0be6017c6acbd193eb95e09cf4b6f61b834";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."19.0.5232133" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "19.0.5232133";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19-darwin-x86_64.zip;
+        sha1 = "86c1a962601b23b8a6d3d535c93b4b0bc4f29249";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19-linux-x86_64.zip;
+        sha1 = "f02ad84cb5b6e1ff3eea9e6168037c823408c8ac";
+      };
+      
+    };
+  };
+  
   "ndk-bundle"."18.1.5063045" = {
     
     name = "ndk-bundle";
@@ -1146,6 +1466,272 @@
     };
   };
   
+  "ndk-bundle"."17.2.4988734" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "17.2.4988734";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r17c-darwin-x86_64.zip;
+        sha1 = "f97e3d7711497e3b4faf9e7b3fa0f0da90bb649c";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r17c-linux-x86_64.zip;
+        sha1 = "12cacc70c3fd2f40574015631c00f41fb8a39048";
+      };
+      
+    };
+  };
+  
+  "ndk-bundle"."16.1.4479499" = {
+    
+    name = "ndk-bundle";
+    path = "ndk-bundle";
+    revision = "16.1.4479499";
+    displayName = "NDK";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r16b-darwin-x86_64.zip;
+        sha1 = "e51e615449b98c716cf912057e2682e75d55e2de";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r16b-linux-x86_64.zip;
+        sha1 = "42aa43aae89a50d1c66c3f9fdecd676936da6128";
+      };
+      
+    };
+  };
+  
+  "ndk"."16.1.4479499" = {
+    
+    name = "ndk";
+    path = "ndk/16.1.4479499";
+    revision = "16.1.4479499";
+    displayName = "NDK (Side by side) 16.1.4479499";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r16b-darwin-x86_64.zip;
+        sha1 = "e51e615449b98c716cf912057e2682e75d55e2de";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r16b-linux-x86_64.zip;
+        sha1 = "42aa43aae89a50d1c66c3f9fdecd676936da6128";
+      };
+      
+    };
+  };
+  
+  "ndk"."17.2.4988734" = {
+    
+    name = "ndk";
+    path = "ndk/17.2.4988734";
+    revision = "17.2.4988734";
+    displayName = "NDK (Side by side) 17.2.4988734";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r17c-darwin-x86_64.zip;
+        sha1 = "f97e3d7711497e3b4faf9e7b3fa0f0da90bb649c";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r17c-linux-x86_64.zip;
+        sha1 = "12cacc70c3fd2f40574015631c00f41fb8a39048";
+      };
+      
+    };
+  };
+  
+  "ndk"."18.1.5063045" = {
+    
+    name = "ndk";
+    path = "ndk/18.1.5063045";
+    revision = "18.1.5063045";
+    displayName = "NDK (Side by side) 18.1.5063045";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r18b-darwin-x86_64.zip;
+        sha1 = "98cb9909aa8c2dab32db188bbdc3ac6207e09440";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r18b-linux-x86_64.zip;
+        sha1 = "500679655da3a86aecf67007e8ab230ea9b4dd7b";
+      };
+      
+    };
+  };
+  
+  "ndk"."19.0.5232133" = {
+    
+    name = "ndk";
+    path = "ndk/19.0.5232133";
+    revision = "19.0.5232133";
+    displayName = "NDK (Side by side) 19.0.5232133";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19-darwin-x86_64.zip;
+        sha1 = "86c1a962601b23b8a6d3d535c93b4b0bc4f29249";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19-linux-x86_64.zip;
+        sha1 = "f02ad84cb5b6e1ff3eea9e6168037c823408c8ac";
+      };
+      
+    };
+  };
+  
+  "ndk"."19.2.5345600" = {
+    
+    name = "ndk";
+    path = "ndk/19.2.5345600";
+    revision = "19.2.5345600";
+    displayName = "NDK (Side by side) 19.2.5345600";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19c-darwin-x86_64.zip;
+        sha1 = "f46b8193109bba8a58e0461c1a48f4534051fb25";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r19c-linux-x86_64.zip;
+        sha1 = "fd94d0be6017c6acbd193eb95e09cf4b6f61b834";
+      };
+      
+    };
+  };
+  
+  "ndk"."20.0.5392854-rc2" = {
+    
+    name = "ndk";
+    path = "ndk/20.0.5392854";
+    revision = "20.0.5392854-rc2";
+    displayName = "NDK (Side by side) 20.0.5392854";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta2-darwin-x86_64.zip;
+        sha1 = "cd94191ace6b31ec9af1cc370173e16934e1cb8b";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta2-linux-x86_64.zip;
+        sha1 = "8285ae2e24a7232fd0cbfb55e955c8586ef2ee02";
+      };
+      
+    };
+  };
+  
+  "ndk"."20.0.5471264-rc3" = {
+    
+    name = "ndk";
+    path = "ndk/20.0.5471264";
+    revision = "20.0.5471264-rc3";
+    displayName = "NDK (Side by side) 20.0.5471264";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta3-darwin-x86_64.zip;
+        sha1 = "665a035cadb0dd03e6502ba25c18643f6e4ede24";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-beta3-linux-x86_64.zip;
+        sha1 = "674d8fb0e0df8e8be1c31fa321eb176548a19ba3";
+      };
+      
+    };
+  };
+  
+  "ndk"."20.0.5594570" = {
+    
+    name = "ndk";
+    path = "ndk/20.0.5594570";
+    revision = "20.0.5594570";
+    displayName = "NDK (Side by side) 20.0.5594570";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-darwin-x86_64.zip;
+        sha1 = "96d5f1c50452596912d1982439c514194b5751e6";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20-linux-x86_64.zip;
+        sha1 = "8665fc84a1b1f0d6ab3b5fdd1e30200cc7b9adff";
+      };
+      
+    };
+  };
+  
+  "ndk"."20.1.5948944" = {
+    
+    name = "ndk";
+    path = "ndk/20.1.5948944";
+    revision = "20.1.5948944";
+    displayName = "NDK (Side by side) 20.1.5948944";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20b-darwin-x86_64.zip;
+        sha1 = "b51290ab69cb89de1f0ba108702277bc333b38be";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r20b-linux-x86_64.zip;
+        sha1 = "d903fdf077039ad9331fb6c3bee78aa46d45527b";
+      };
+      
+    };
+  };
+  
+  "ndk"."21.0.6011959-rc2" = {
+    
+    name = "ndk";
+    path = "ndk/21.0.6011959";
+    revision = "21.0.6011959-rc2";
+    displayName = "NDK (Side by side) 21.0.6011959";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-beta2-darwin-x86_64.zip;
+        sha1 = "34a46c3867c9d87a80895c0b8a098256052536d2";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-beta2-linux-x86_64.zip;
+        sha1 = "335f30302bee700a9a5fdfe3ae533a4963499c44";
+      };
+      
+    };
+  };
+  
+  "ndk"."21.0.6113669" = {
+    
+    name = "ndk";
+    path = "ndk/21.0.6113669";
+    revision = "21.0.6113669";
+    displayName = "NDK (Side by side) 21.0.6113669";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-darwin-x86_64.zip;
+        sha1 = "0d50636cc0e34ed3ba540d6d5818ea0cf10f16aa";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21-linux-x86_64.zip;
+        sha1 = "afc9c0b9faad222898ac8168c78ad4ccac8a1b5c";
+      };
+      
+    };
+  };
+  
+  "ndk"."21.1.6210238-rc1" = {
+    
+    name = "ndk";
+    path = "ndk/21.1.6210238";
+    revision = "21.1.6210238-rc1";
+    displayName = "NDK (Side by side) 21.1.6210238";
+    archives = {
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21b-beta1-darwin-x86_64.zip;
+        sha1 = "971609f9a579ebbcb8d121a5d5aa0cba716b2d1f";
+      };
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/android-ndk-r21b-beta1-linux-x86_64.zip;
+        sha1 = "cf06ed408663c11c8f4824f9370c7a900ec074dd";
+      };
+      
+    };
+  };
+  
   "patcher"."1" = {
     
     name = "patcher";
@@ -1155,27 +1741,27 @@
     archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/3534162-studio.sdk-patcher.zip.bak;
+          url = https://dl.google.com/android/repository/3534162-studio.sdk-patcher.zip;
           sha1 = "046699c5e2716ae11d77e0bad814f7f33fab261e";
         };
       
     };
   };
   
-  "platform-tools"."28.0.1" = {
+  "platform-tools"."29.0.6" = {
     
     name = "platform-tools";
     path = "platform-tools";
-    revision = "28.0.1";
+    revision = "29.0.6";
     displayName = "Android SDK Platform-Tools";
     archives = {
       macosx = fetchurl {
-        url = https://dl.google.com/android/repository/platform-tools_r28.0.1-darwin.zip;
-        sha1 = "ed1edad4a48c27655ce98d0a5821e7296e9de145";
+        url = https://dl.google.com/android/repository/platform-tools_r29.0.6-darwin.zip;
+        sha1 = "3232179dce22d8a6332018729026ed39f5d5cd0b";
       };
       linux = fetchurl {
-        url = https://dl.google.com/android/repository/platform-tools_r28.0.1-linux.zip;
-        sha1 = "74ff83bc203f01c4f04bd9316ab5a2573f023fd1";
+        url = https://dl.google.com/android/repository/platform-tools_r29.0.6-linux.zip;
+        sha1 = "e95ed28330406705d47fe96bafb589be6c1f2f23";
       };
       
     };
@@ -1513,14 +2099,13 @@
     archives = {
       
         all = fetchurl {
-          url = https://dl.google.com/android/repository/platform-29_r03.zip;
-          sha1 = "670e2e104333dae90e16ea3b615f0b63da5883ae";
+          url = https://dl.google.com/android/repository/platform-29_r04.zip;
+          sha1 = "8d644c39902038e0bd529165d5ba4f5a8607daea";
         };
       
     };
   };
-
-
+  
   "platforms"."3" = {
     
     name = "platforms";
@@ -1645,6 +2230,41 @@
     };
   };
   
+  "platforms"."R" = {
+    
+    name = "platforms";
+    path = "platforms/android-R";
+    revision = "R";
+    displayName = "Android SDK Platform R";
+    archives = {
+      
+        all = fetchurl {
+          url = https://dl.google.com/android/repository/platform-R_r01.zip;
+          sha1 = "f6ce3ef0ec8526550fc3b517bdb29051275bcd1a";
+        };
+      
+    };
+  };
+  
+  "skiaparser"."1-rc02" = {
+    
+    name = "skiaparser";
+    path = "skiaparser/1";
+    revision = "1-rc02";
+    displayName = "Skia Parser Server";
+    archives = {
+      linux = fetchurl {
+        url = https://dl.google.com/android/repository/skiaparser-6172737-linux.zip;
+        sha1 = "d2eac6deff2c257d47853251bda5528c96a41720";
+      };
+      macosx = fetchurl {
+        url = https://dl.google.com/android/repository/skiaparser-6172737-mac.zip;
+        sha1 = "1e3b8da7a4f5e9887479b4e4186db3cb22422c82";
+      };
+      
+    };
+  };
+  
   "sources"."14" = {
     
     name = "sources";
@@ -1885,6 +2505,22 @@
     };
   };
   
+  "sources"."29" = {
+    
+    name = "sources";
+    path = "sources/android-29";
+    revision = "29";
+    displayName = "Sources for Android 29";
+    archives = {
+      
+        all = fetchurl {
+          url = https://dl.google.com/android/repository/sources-29_r01.zip;
+          sha1 = "d0ad249e152b3a8fe3cb7c4a329453a048be29e4";
+        };
+      
+    };
+  };
+  
   "tools"."25.2.5" = {
     
     name = "tools";
diff --git a/pkgs/development/mobile/androidenv/generated/system-images-android-tv.nix b/pkgs/development/mobile/androidenv/generated/system-images-android-tv.nix
index 1aa49545254..d700a546a24 100644
--- a/pkgs/development/mobile/androidenv/generated/system-images-android-tv.nix
+++ b/pkgs/development/mobile/androidenv/generated/system-images-android-tv.nix
@@ -1,157 +1,114 @@
-
 {fetchurl}:
 
 {
-  
-
-    "21".android-tv."x86" = {
-      name = "system-image-21-android-tv-x86";
-      path = "system-images/android-21/android-tv/x86";
-      revision = "21-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-21_r03.zip;
-        sha1 = "2f8a1988188d6abfd6c6395baeb4471a034dc1e8";
-      
-      };
+  "21".android-tv."x86" = {
+    name = "system-image-21-android-tv-x86";
+    path = "system-images/android-21/android-tv/x86";
+    revision = "21-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-21_r03.zip;
+      sha1 = "2f8a1988188d6abfd6c6395baeb4471a034dc1e8";
+    };
   };
-  
-
-    "21".android-tv."armeabi-v7a" = {
-      name = "system-image-21-android-tv-armeabi-v7a";
-      path = "system-images/android-21/android-tv/armeabi-v7a";
-      revision = "21-android-tv-armeabi-v7a";
-      displayName = "Android TV ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/armeabi-v7a-21_r03.zip;
-        sha1 = "b63e28a47f11b639dd94981a458b7abfa89ac331";
-      
-      };
+  "21".android-tv."armeabi-v7a" = {
+    name = "system-image-21-android-tv-armeabi-v7a";
+    path = "system-images/android-21/android-tv/armeabi-v7a";
+    revision = "21-android-tv-armeabi-v7a";
+    displayName = "Android TV ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/armeabi-v7a-21_r03.zip;
+      sha1 = "b63e28a47f11b639dd94981a458b7abfa89ac331";
+    };
   };
-  
-
-    "22".android-tv."x86" = {
-      name = "system-image-22-android-tv-x86";
-      path = "system-images/android-22/android-tv/x86";
-      revision = "22-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-22_r03.zip;
-        sha1 = "c78efd5a155622eb490be9d326f5783993375c35";
-      
-      };
+  "22".android-tv."x86" = {
+    name = "system-image-22-android-tv-x86";
+    path = "system-images/android-22/android-tv/x86";
+    revision = "22-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-22_r03.zip;
+      sha1 = "c78efd5a155622eb490be9d326f5783993375c35";
+    };
   };
-  
-
-    "23".android-tv."x86" = {
-      name = "system-image-23-android-tv-x86";
-      path = "system-images/android-23/android-tv/x86";
-      revision = "23-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-23_r17.zip;
-        sha1 = "6d42eb8f07e1c49c000e530fdb7de894144ea19b";
-      
-      };
+  "23".android-tv."x86" = {
+    name = "system-image-23-android-tv-x86";
+    path = "system-images/android-23/android-tv/x86";
+    revision = "23-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-23_r19.zip;
+      sha1 = "47e8d6b08a337a0672f0f105bf907d39ed9457ec";
+    };
   };
-  
-
-    "23".android-tv."armeabi-v7a" = {
-      name = "system-image-23-android-tv-armeabi-v7a";
-      path = "system-images/android-23/android-tv/armeabi-v7a";
-      revision = "23-android-tv-armeabi-v7a";
-      displayName = "Android TV ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/armeabi-v7a-23_r12.zip;
-        sha1 = "bd84678ae8caf71d584f5210e866b2807e7b4b52";
-      
-      };
+  "23".android-tv."armeabi-v7a" = {
+    name = "system-image-23-android-tv-armeabi-v7a";
+    path = "system-images/android-23/android-tv/armeabi-v7a";
+    revision = "23-android-tv-armeabi-v7a";
+    displayName = "Android TV ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/armeabi-v7a-23_r12.zip;
+      sha1 = "bd84678ae8caf71d584f5210e866b2807e7b4b52";
+    };
   };
-  
-
-    "24".android-tv."x86" = {
-      name = "system-image-24-android-tv-x86";
-      path = "system-images/android-24/android-tv/x86";
-      revision = "24-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-24_r19.zip;
-        sha1 = "478e7073f9fcd588bcce89946aa632fbf302ac6a";
-      
-      };
+  "24".android-tv."x86" = {
+    name = "system-image-24-android-tv-x86";
+    path = "system-images/android-24/android-tv/x86";
+    revision = "24-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-24_r20.zip;
+      sha1 = "0b8cd98dec9ebd04376ce4f6e270193ceae8acea";
+    };
   };
-  
-
-    "25".android-tv."x86" = {
-      name = "system-image-25-android-tv-x86";
-      path = "system-images/android-25/android-tv/x86";
-      revision = "25-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-25_r13.zip;
-        sha1 = "fda1743a87331b43b1ff35cd70f3276ae0b1836d";
-      
-      };
+  "25".android-tv."x86" = {
+    name = "system-image-25-android-tv-x86";
+    path = "system-images/android-25/android-tv/x86";
+    revision = "25-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-25_r14.zip;
+      sha1 = "1c88f11683375c059803c3a7be8e880cc23a6f9a";
+    };
   };
-  
-
-    "26".android-tv."x86" = {
-      name = "system-image-26-android-tv-x86";
-      path = "system-images/android-26/android-tv/x86";
-      revision = "26-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-26_r11.zip;
-        sha1 = "5c4b0b3c0b9d04a3364956a7ba31d30c33ea57e7";
-      
-      };
+  "26".android-tv."x86" = {
+    name = "system-image-26-android-tv-x86";
+    path = "system-images/android-26/android-tv/x86";
+    revision = "26-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-26_r12.zip;
+      sha1 = "d8b12e543925a0454403d2a854996a76410ec374";
+    };
   };
-  
-
-    "27".android-tv."x86" = {
-      name = "system-image-27-android-tv-x86";
-      path = "system-images/android-27/android-tv/x86";
-      revision = "27-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-27_r06.zip;
-        sha1 = "6b69f1e95a3db3d973e19a95ab5da1adc7750d54";
-      
-      };
+  "27".android-tv."x86" = {
+    name = "system-image-27-android-tv-x86";
+    path = "system-images/android-27/android-tv/x86";
+    revision = "27-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-27_r07.zip;
+      sha1 = "5ed40e568c0d8d023c5b6c76634b22a477ed54aa";
+    };
   };
-  
-
-    "28".android-tv."x86" = {
-      name = "system-image-28-android-tv-x86";
-      path = "system-images/android-28/android-tv/x86";
-      revision = "28-android-tv-x86";
-      displayName = "Android TV Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-tv/x86-28_r07.zip;
-        sha1 = "3ed7e51036957cf350db7fa128cb485b61cbd061";
-      
-      };
+  "28".android-tv."x86" = {
+    name = "system-image-28-android-tv-x86";
+    path = "system-images/android-28/android-tv/x86";
+    revision = "28-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-28_r08.zip;
+      sha1 = "f5f8f296dfaca7945434992761c8d47d50257c21";
+    };
+  };
+  "Q".android-tv."x86" = {
+    name = "system-image-Q-android-tv-x86";
+    path = "system-images/android-Q/android-tv/x86";
+    revision = "Q-android-tv-x86";
+    displayName = "Android TV Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-tv/x86-Q_r01.zip;
+      sha1 = "80c66ddce0dbe53fe6fedcade230d518112fffb1";
+    };
   };
-  
-}
-  
\ No newline at end of file
+}
\ No newline at end of file
diff --git a/pkgs/development/mobile/androidenv/generated/system-images-android-wear-cn.nix b/pkgs/development/mobile/androidenv/generated/system-images-android-wear-cn.nix
index 372a751f41c..52fcc24bf88 100644
--- a/pkgs/development/mobile/androidenv/generated/system-images-android-wear-cn.nix
+++ b/pkgs/development/mobile/androidenv/generated/system-images-android-wear-cn.nix
@@ -1,67 +1,44 @@
-
 {fetchurl}:
 
 {
-  
-
-    "25".android-wear."armeabi-v7a" = {
-      name = "system-image-25-android-wear-armeabi-v7a";
-      path = "system-images/android-25/android-wear-cn/armeabi-v7a";
-      revision = "25-android-wear-armeabi-v7a";
-      displayName = "China version of Android Wear ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear-cn/armeabi-v7a-25_r04.zip;
-        sha1 = "02d7bc86df054d1e89fe5856b3af1d2c142cab41";
-      
-      };
+  "25".android-wear."armeabi-v7a" = {
+    name = "system-image-25-android-wear-armeabi-v7a";
+    path = "system-images/android-25/android-wear-cn/armeabi-v7a";
+    revision = "25-android-wear-armeabi-v7a";
+    displayName = "China version of Android Wear ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear-cn/armeabi-v7a-25_r04.zip;
+      sha1 = "02d7bc86df054d1e89fe5856b3af1d2c142cab41";
+    };
   };
-  
-
-    "25".android-wear."x86" = {
-      name = "system-image-25-android-wear-x86";
-      path = "system-images/android-25/android-wear-cn/x86";
-      revision = "25-android-wear-x86";
-      displayName = "China version of Android Wear Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear-cn/x86-25_r04.zip;
-        sha1 = "73eab14c7cf2f6941e1fee61e0038ead7a2c7f4d";
-      
-      };
+  "25".android-wear."x86" = {
+    name = "system-image-25-android-wear-x86";
+    path = "system-images/android-25/android-wear-cn/x86";
+    revision = "25-android-wear-x86";
+    displayName = "China version of Android Wear Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear-cn/x86-25_r04.zip;
+      sha1 = "73eab14c7cf2f6941e1fee61e0038ead7a2c7f4d";
+    };
   };
-  
-
-    "26".android-wear."x86" = {
-      name = "system-image-26-android-wear-x86";
-      path = "system-images/android-26/android-wear-cn/x86";
-      revision = "26-android-wear-x86";
-      displayName = "China version of Android Wear Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear-cn/x86-26_r04.zip;
-        sha1 = "fdc8a313f889a2d6522de1fbc00ee9e13547d096";
-      
-      };
+  "26".android-wear."x86" = {
+    name = "system-image-26-android-wear-x86";
+    path = "system-images/android-26/android-wear-cn/x86";
+    revision = "26-android-wear-x86";
+    displayName = "China version of Android Wear Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear-cn/x86-26_r04.zip;
+      sha1 = "fdc8a313f889a2d6522de1fbc00ee9e13547d096";
+    };
   };
-  
-
-    "28".android-wear."x86" = {
-      name = "system-image-28-android-wear-x86";
-      path = "system-images/android-P/android-wear-cn/x86";
-      revision = "28-android-wear-x86";
-      displayName = "China version of Wear OS Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear-cn/x86-P_r02.zip;
-        sha1 = "a61a2e453a11f77ab15b3e0bf1e017e0bb9d1bcc";
-      
-      };
+  "28".android-wear."x86" = {
+    name = "system-image-28-android-wear-x86";
+    path = "system-images/android-28/android-wear-cn/x86";
+    revision = "28-android-wear-x86";
+    displayName = "China version of Wear OS Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear-cn/x86-28_r03.zip;
+      sha1 = "2099d87709c5e064273925dbf2cf1fd081bf0262";
+    };
   };
-  
-}
-  
\ No newline at end of file
+}
\ No newline at end of file
diff --git a/pkgs/development/mobile/androidenv/generated/system-images-android-wear.nix b/pkgs/development/mobile/androidenv/generated/system-images-android-wear.nix
index 0c45a1162fe..a2a1490d4ae 100644
--- a/pkgs/development/mobile/androidenv/generated/system-images-android-wear.nix
+++ b/pkgs/development/mobile/androidenv/generated/system-images-android-wear.nix
@@ -1,97 +1,64 @@
-
 {fetchurl}:
 
 {
-  
-
-    "23".android-wear."armeabi-v7a" = {
-      name = "system-image-23-android-wear-armeabi-v7a";
-      path = "system-images/android-23/android-wear/armeabi-v7a";
-      revision = "23-android-wear-armeabi-v7a";
-      displayName = "Android Wear ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear/armeabi-v7a-23_r06.zip;
-        sha1 = "0df5d34b1cdaaaa3805a2f06bb889901eabe2e71";
-      
-      };
+  "23".android-wear."armeabi-v7a" = {
+    name = "system-image-23-android-wear-armeabi-v7a";
+    path = "system-images/android-23/android-wear/armeabi-v7a";
+    revision = "23-android-wear-armeabi-v7a";
+    displayName = "Android Wear ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear/armeabi-v7a-23_r06.zip;
+      sha1 = "0df5d34b1cdaaaa3805a2f06bb889901eabe2e71";
+    };
   };
-  
-
-    "23".android-wear."x86" = {
-      name = "system-image-23-android-wear-x86";
-      path = "system-images/android-23/android-wear/x86";
-      revision = "23-android-wear-x86";
-      displayName = "Android Wear Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear/x86-23_r06.zip;
-        sha1 = "3b15c123f3f71459d5b60c1714d49c5d90a5525e";
-      
-      };
+  "23".android-wear."x86" = {
+    name = "system-image-23-android-wear-x86";
+    path = "system-images/android-23/android-wear/x86";
+    revision = "23-android-wear-x86";
+    displayName = "Android Wear Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear/x86-23_r06.zip;
+      sha1 = "3b15c123f3f71459d5b60c1714d49c5d90a5525e";
+    };
   };
-  
-
-    "25".android-wear."armeabi-v7a" = {
-      name = "system-image-25-android-wear-armeabi-v7a";
-      path = "system-images/android-25/android-wear/armeabi-v7a";
-      revision = "25-android-wear-armeabi-v7a";
-      displayName = "Android Wear ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear/armeabi-v7a-25_r03.zip;
-        sha1 = "76d3568a4e08023047af7d13025a35c9bf1d7e5c";
-      
-      };
+  "25".android-wear."armeabi-v7a" = {
+    name = "system-image-25-android-wear-armeabi-v7a";
+    path = "system-images/android-25/android-wear/armeabi-v7a";
+    revision = "25-android-wear-armeabi-v7a";
+    displayName = "Android Wear ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear/armeabi-v7a-25_r03.zip;
+      sha1 = "76d3568a4e08023047af7d13025a35c9bf1d7e5c";
+    };
   };
-  
-
-    "25".android-wear."x86" = {
-      name = "system-image-25-android-wear-x86";
-      path = "system-images/android-25/android-wear/x86";
-      revision = "25-android-wear-x86";
-      displayName = "Android Wear Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear/x86-25_r03.zip;
-        sha1 = "693fce7b487a65491a4e88e9f740959688c9dbe6";
-      
-      };
+  "25".android-wear."x86" = {
+    name = "system-image-25-android-wear-x86";
+    path = "system-images/android-25/android-wear/x86";
+    revision = "25-android-wear-x86";
+    displayName = "Android Wear Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear/x86-25_r03.zip;
+      sha1 = "693fce7b487a65491a4e88e9f740959688c9dbe6";
+    };
   };
-  
-
-    "26".android-wear."x86" = {
-      name = "system-image-26-android-wear-x86";
-      path = "system-images/android-26/android-wear/x86";
-      revision = "26-android-wear-x86";
-      displayName = "Android Wear Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear/x86-26_r04.zip;
-        sha1 = "fbffa91b936ca18fcc1e0bab2b52a8b0835cbb1c";
-      
-      };
+  "26".android-wear."x86" = {
+    name = "system-image-26-android-wear-x86";
+    path = "system-images/android-26/android-wear/x86";
+    revision = "26-android-wear-x86";
+    displayName = "Android Wear Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear/x86-26_r04.zip;
+      sha1 = "fbffa91b936ca18fcc1e0bab2b52a8b0835cbb1c";
+    };
   };
-  
-
-    "28".android-wear."x86" = {
-      name = "system-image-28-android-wear-x86";
-      path = "system-images/android-P/android-wear/x86";
-      revision = "28-android-wear-x86";
-      displayName = "Wear OS Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android-wear/x86-P_r02.zip;
-        sha1 = "cd0d3a56e114dbb0a2a77d58942d344db464b514";
-      
-      };
+  "28".android-wear."x86" = {
+    name = "system-image-28-android-wear-x86";
+    path = "system-images/android-28/android-wear/x86";
+    revision = "28-android-wear-x86";
+    displayName = "Wear OS Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android-wear/x86-28_r03.zip;
+      sha1 = "b80bd53ab69f19441714bff2e4d55931e6d3f7be";
+    };
   };
-  
-}
-  
\ No newline at end of file
+}
\ No newline at end of file
diff --git a/pkgs/development/mobile/androidenv/generated/system-images-android.nix b/pkgs/development/mobile/androidenv/generated/system-images-android.nix
index 915cceec546..043529cb238 100644
--- a/pkgs/development/mobile/androidenv/generated/system-images-android.nix
+++ b/pkgs/development/mobile/androidenv/generated/system-images-android.nix
@@ -1,547 +1,364 @@
-
 {fetchurl}:
 
 {
-  
-
-    "10".default."armeabi-v7a" = {
-      name = "system-image-10-default-armeabi-v7a";
-      path = "system-images/android-10/default/armeabi-v7a";
-      revision = "10-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armv7-10_r04.zip;
-        sha1 = "54680383118eb5c95a11e1cc2a14aa572c86ee69";
-      
-      };
-  };
-  
-
-    "14".default."armeabi-v7a" = {
-      name = "system-image-14-default-armeabi-v7a";
-      path = "system-images/android-14/default/armeabi-v7a";
-      revision = "14-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/sysimg_armv7a-14_r02.zip;
-        sha1 = "d8991b0c06b18d7d6ed4169d67460ee1add6661b";
-      
-      };
-  };
-  
-
-    "15".default."armeabi-v7a" = {
-      name = "system-image-15-default-armeabi-v7a";
-      path = "system-images/android-15/default/armeabi-v7a";
-      revision = "15-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-15_r04.zip;
-        sha1 = "363223bd62f5afc0b2bd760b54ce9d26b31eacf1";
-      
-      };
-  };
-  
-
-    "16".default."armeabi-v7a" = {
-      name = "system-image-16-default-armeabi-v7a";
-      path = "system-images/android-16/default/armeabi-v7a";
-      revision = "16-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/sysimg_armv7a-16_r04.zip;
-        sha1 = "39c093ea755098f0ee79f607be7df9e54ba4943f";
-      
-      };
-  };
-  
-
-    "17".default."armeabi-v7a" = {
-      name = "system-image-17-default-armeabi-v7a";
-      path = "system-images/android-17/default/armeabi-v7a";
-      revision = "17-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-17_r05.zip;
-        sha1 = "7460e8110f4a87f9644f1bdb5511a66872d50fd9";
-      
-      };
-  };
-  
-
-    "18".default."armeabi-v7a" = {
-      name = "system-image-18-default-armeabi-v7a";
-      path = "system-images/android-18/default/armeabi-v7a";
-      revision = "18-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-18_r04.zip;
-        sha1 = "0bf34ecf4ddd53f6b1b7fe7dfa12f2887c17e642";
-      
-      };
-  };
-  
-
-    "19".default."armeabi-v7a" = {
-      name = "system-image-19-default-armeabi-v7a";
-      path = "system-images/android-19/default/armeabi-v7a";
-      revision = "19-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-19_r05.zip;
-        sha1 = "d1a5fd4f2e1c013c3d3d9bfe7e9db908c3ed56fa";
-      
-      };
-  };
-  
-
-    "21".default."armeabi-v7a" = {
-      name = "system-image-21-default-armeabi-v7a";
-      path = "system-images/android-21/default/armeabi-v7a";
-      revision = "21-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-21_r04.zip;
-        sha1 = "8c606f81306564b65e41303d2603e4c42ded0d10";
-      
-      };
-  };
-  
-
-    "22".default."armeabi-v7a" = {
-      name = "system-image-22-default-armeabi-v7a";
-      path = "system-images/android-22/default/armeabi-v7a";
-      revision = "22-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-22_r02.zip;
-        sha1 = "2114ec015dbf3a16cbcb4f63e8a84a1b206a07a1";
-      
-      };
-  };
-  
-
-    "23".default."armeabi-v7a" = {
-      name = "system-image-23-default-armeabi-v7a";
-      path = "system-images/android-23/default/armeabi-v7a";
-      revision = "23-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-23_r06.zip;
-        sha1 = "7cf2ad756e54a3acfd81064b63cb0cb9dff2798d";
-      
-      };
-  };
-  
-
-    "24".default."armeabi-v7a" = {
-      name = "system-image-24-default-armeabi-v7a";
-      path = "system-images/android-24/default/armeabi-v7a";
-      revision = "24-default-armeabi-v7a";
-      displayName = "ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-24_r07.zip;
-        sha1 = "3454546b4eed2d6c3dd06d47757d6da9f4176033";
-      
-      };
-  };
-  
-
-    "24".default."arm64-v8a" = {
-      name = "system-image-24-default-arm64-v8a";
-      path = "system-images/android-24/default/arm64-v8a";
-      revision = "24-default-arm64-v8a";
-      displayName = "ARM 64 v8a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/arm64-v8a-24_r07.zip;
-        sha1 = "e8ab2e49e4efe4b064232b33b5eeaded61437d7f";
-      
-      };
-  };
-  
-
-    "16".default."mips" = {
-      name = "system-image-16-default-mips";
-      path = "system-images/android-16/default/mips";
-      revision = "16-default-mips";
-      displayName = "MIPS System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/sysimg_mips-16_r04.zip;
-        sha1 = "67943c54fb3943943ffeb05fdd39c0b753681f6e";
-      
-      };
-  };
-  
-
-    "17".default."mips" = {
-      name = "system-image-17-default-mips";
-      path = "system-images/android-17/default/mips";
-      revision = "17-default-mips";
-      displayName = "MIPS System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/sysimg_mips-17_r01.zip;
-        sha1 = "f0c6e153bd584c29e51b5c9723cfbf30f996a05d";
-      
-      };
-  };
-  
-
-    "10".default."x86" = {
-      name = "system-image-10-default-x86";
-      path = "system-images/android-10/default/x86";
-      revision = "10-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-10_r04.zip;
-        sha1 = "655ffc5cc89dd45a3aca154b254009016e473aeb";
-      
-      };
-  };
-  
-
-    "15".default."x86" = {
-      name = "system-image-15-default-x86";
-      path = "system-images/android-15/default/x86";
-      revision = "15-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-15_r04.zip;
-        sha1 = "e45c728b64881c0e86529a8f7ea9c103a3cd14c1";
-      
-      };
-  };
-  
-
-    "16".default."x86" = {
-      name = "system-image-16-default-x86";
-      path = "system-images/android-16/default/x86";
-      revision = "16-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-16_r06.zip;
-        sha1 = "bf1bf8c5591346118d2235da1ad20e7be8a3e9cd";
-      
-      };
-  };
-  
-
-    "17".default."x86" = {
-      name = "system-image-17-default-x86";
-      path = "system-images/android-17/default/x86";
-      revision = "17-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-17_r04.zip;
-        sha1 = "03c6d022ab2dcbbcf655d78ba5ccb0431cadcaec";
-      
-      };
-  };
-  
-
-    "18".default."x86" = {
-      name = "system-image-18-default-x86";
-      path = "system-images/android-18/default/x86";
-      revision = "18-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-18_r03.zip;
-        sha1 = "03a0cb23465c3de15215934a1dbc9715b56e9458";
-      
-      };
-  };
-  
-
-    "19".default."x86" = {
-      name = "system-image-19-default-x86";
-      path = "system-images/android-19/default/x86";
-      revision = "19-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-19_r06.zip;
-        sha1 = "2ac82153aae97f7eae4c5a0761224fe04321d03d";
-      
-      };
-  };
-  
-
-    "21".default."x86" = {
-      name = "system-image-21-default-x86";
-      path = "system-images/android-21/default/x86";
-      revision = "21-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-21_r05.zip;
-        sha1 = "00f0eb0a1003efe3316347f762e20a85d8749cff";
-      
-      };
-  };
-  
-
-    "22".default."x86" = {
-      name = "system-image-22-default-x86";
-      path = "system-images/android-22/default/x86";
-      revision = "22-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-22_r06.zip;
-        sha1 = "e33e2a6cc3f1cc56b2019dbef3917d2eeb26f54e";
-      
-      };
-  };
-  
-
-    "23".default."x86" = {
-      name = "system-image-23-default-x86";
-      path = "system-images/android-23/default/x86";
-      revision = "23-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-23_r10.zip;
-        sha1 = "f6c3e3dd7bd951454795aa75c3a145fd05ac25bb";
-      
-      };
-  };
-  
-
-    "24".default."x86" = {
-      name = "system-image-24-default-x86";
-      path = "system-images/android-24/default/x86";
-      revision = "24-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-24_r08.zip;
-        sha1 = "c1cae7634b0216c0b5990f2c144eb8ca948e3511";
-      
-      };
-  };
-  
-
-    "25".default."x86" = {
-      name = "system-image-25-default-x86";
-      path = "system-images/android-25/default/x86";
-      revision = "25-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-25_r01.zip;
-        sha1 = "78ce7eb1387d598685633b9f7cbb300c3d3aeb5f";
-      
-      };
-  };
-  
-
-    "26".default."x86" = {
-      name = "system-image-26-default-x86";
-      path = "system-images/android-26/default/x86";
-      revision = "26-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-26_r01.zip;
-        sha1 = "e613d6e0da668e30daf547f3c6627a6352846f90";
-      
-      };
-  };
-  
-
-    "27".default."x86" = {
-      name = "system-image-27-default-x86";
-      path = "system-images/android-27/default/x86";
-      revision = "27-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-27_r01.zip;
-        sha1 = "4ec990fac7b62958decd12e18a4cd389dfe7c582";
-      
-      };
-  };
-  
-
-    "28".default."x86" = {
-      name = "system-image-28-default-x86";
-      path = "system-images/android-28/default/x86";
-      revision = "28-default-x86";
-      displayName = "Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86-28_r04.zip;
-        sha1 = "ce03c42d80c0fc6dc47f6455dbee7aa275d02780";
-      
-      };
-  };
-  
-
-    "21".default."x86_64" = {
-      name = "system-image-21-default-x86_64";
-      path = "system-images/android-21/default/x86_64";
-      revision = "21-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-21_r05.zip;
-        sha1 = "9078a095825a69e5e215713f0866c83cef65a342";
-      
-      };
-  };
-  
-
-    "22".default."x86_64" = {
-      name = "system-image-22-default-x86_64";
-      path = "system-images/android-22/default/x86_64";
-      revision = "22-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-22_r06.zip;
-        sha1 = "5db3b27f78cd9c4c5092b1cad5a5dd479fb5b2e4";
-      
-      };
-  };
-  
-
-    "23".default."x86_64" = {
-      name = "system-image-23-default-x86_64";
-      path = "system-images/android-23/default/x86_64";
-      revision = "23-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-23_r10.zip;
-        sha1 = "7cbc291483ca07dc67b71268c5f08a5755f50f51";
-      
-      };
-  };
-  
-
-    "24".default."x86_64" = {
-      name = "system-image-24-default-x86_64";
-      path = "system-images/android-24/default/x86_64";
-      revision = "24-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-24_r08.zip;
-        sha1 = "f6559e1949a5879f31a9662f4f0e50ad60181684";
-      
-      };
-  };
-  
-
-    "25".default."x86_64" = {
-      name = "system-image-25-default-x86_64";
-      path = "system-images/android-25/default/x86_64";
-      revision = "25-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-25_r01.zip;
-        sha1 = "7093d7b39216020226ff430a3b7b81c94d31ad37";
-      
-      };
-  };
-  
-
-    "26".default."x86_64" = {
-      name = "system-image-26-default-x86_64";
-      path = "system-images/android-26/default/x86_64";
-      revision = "26-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-26_r01.zip;
-        sha1 = "432f149c048bffce7f9de526ec65b336daf7a0a3";
-      
-      };
-  };
-  
-
-    "27".default."x86_64" = {
-      name = "system-image-27-default-x86_64";
-      path = "system-images/android-27/default/x86_64";
-      revision = "27-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-27_r01.zip;
-        sha1 = "2878261011a59ca3de29dc5b457a495fdb268d60";
-      
-      };
-  };
-  
-
-    "28".default."x86_64" = {
-      name = "system-image-28-default-x86_64";
-      path = "system-images/android-28/default/x86_64";
-      revision = "28-default-x86_64";
-      displayName = "Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/android/x86_64-28_r04.zip;
-        sha1 = "d47a85c8f4e9fd57df97814ad8884eeb0f3a0ef0";
-      
-      };
-  };
-  
+  "10".default."armeabi-v7a" = {
+    name = "system-image-10-default-armeabi-v7a";
+    path = "system-images/android-10/default/armeabi-v7a";
+    revision = "10-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-10_r05.zip;
+      sha1 = "8537616a7add47cce24c60f18bc2429e3dc90ae3";
+    };
+  };
+  "14".default."armeabi-v7a" = {
+    name = "system-image-14-default-armeabi-v7a";
+    path = "system-images/android-14/default/armeabi-v7a";
+    revision = "14-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/sysimg_armv7a-14_r02.zip;
+      sha1 = "d8991b0c06b18d7d6ed4169d67460ee1add6661b";
+    };
+  };
+  "15".default."armeabi-v7a" = {
+    name = "system-image-15-default-armeabi-v7a";
+    path = "system-images/android-15/default/armeabi-v7a";
+    revision = "15-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-15_r05.zip;
+      sha1 = "03d7ed95a9d3b107e3f2e5b166d017ea12529e70";
+    };
+  };
+  "16".default."armeabi-v7a" = {
+    name = "system-image-16-default-armeabi-v7a";
+    path = "system-images/android-16/default/armeabi-v7a";
+    revision = "16-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-16_r06.zip;
+      sha1 = "69b944b0d5a18c8563fa80d7d229af64890f724e";
+    };
+  };
+  "17".default."armeabi-v7a" = {
+    name = "system-image-17-default-armeabi-v7a";
+    path = "system-images/android-17/default/armeabi-v7a";
+    revision = "17-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-17_r06.zip;
+      sha1 = "a18a3fd0958ec4ef52507f58e414fc5c7dfd59d6";
+    };
+  };
+  "18".default."armeabi-v7a" = {
+    name = "system-image-18-default-armeabi-v7a";
+    path = "system-images/android-18/default/armeabi-v7a";
+    revision = "18-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-18_r05.zip;
+      sha1 = "580b583720f7de671040d5917c8c9db0c7aa03fd";
+    };
+  };
+  "19".default."armeabi-v7a" = {
+    name = "system-image-19-default-armeabi-v7a";
+    path = "system-images/android-19/default/armeabi-v7a";
+    revision = "19-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-19_r05.zip;
+      sha1 = "d1a5fd4f2e1c013c3d3d9bfe7e9db908c3ed56fa";
+    };
+  };
+  "21".default."armeabi-v7a" = {
+    name = "system-image-21-default-armeabi-v7a";
+    path = "system-images/android-21/default/armeabi-v7a";
+    revision = "21-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-21_r04.zip;
+      sha1 = "8c606f81306564b65e41303d2603e4c42ded0d10";
+    };
+  };
+  "22".default."armeabi-v7a" = {
+    name = "system-image-22-default-armeabi-v7a";
+    path = "system-images/android-22/default/armeabi-v7a";
+    revision = "22-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-22_r02.zip;
+      sha1 = "2114ec015dbf3a16cbcb4f63e8a84a1b206a07a1";
+    };
+  };
+  "23".default."armeabi-v7a" = {
+    name = "system-image-23-default-armeabi-v7a";
+    path = "system-images/android-23/default/armeabi-v7a";
+    revision = "23-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-23_r06.zip;
+      sha1 = "7cf2ad756e54a3acfd81064b63cb0cb9dff2798d";
+    };
+  };
+  "24".default."armeabi-v7a" = {
+    name = "system-image-24-default-armeabi-v7a";
+    path = "system-images/android-24/default/armeabi-v7a";
+    revision = "24-default-armeabi-v7a";
+    displayName = "ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/armeabi-v7a-24_r07.zip;
+      sha1 = "3454546b4eed2d6c3dd06d47757d6da9f4176033";
+    };
+  };
+  "24".default."arm64-v8a" = {
+    name = "system-image-24-default-arm64-v8a";
+    path = "system-images/android-24/default/arm64-v8a";
+    revision = "24-default-arm64-v8a";
+    displayName = "ARM 64 v8a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/arm64-v8a-24_r07.zip;
+      sha1 = "e8ab2e49e4efe4b064232b33b5eeaded61437d7f";
+    };
+  };
+  "16".default."mips" = {
+    name = "system-image-16-default-mips";
+    path = "system-images/android-16/default/mips";
+    revision = "16-default-mips";
+    displayName = "MIPS System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/sysimg_mips-16_r04.zip;
+      sha1 = "67943c54fb3943943ffeb05fdd39c0b753681f6e";
+    };
+  };
+  "17".default."mips" = {
+    name = "system-image-17-default-mips";
+    path = "system-images/android-17/default/mips";
+    revision = "17-default-mips";
+    displayName = "MIPS System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/sysimg_mips-17_r01.zip;
+      sha1 = "f0c6e153bd584c29e51b5c9723cfbf30f996a05d";
+    };
+  };
+  "10".default."x86" = {
+    name = "system-image-10-default-x86";
+    path = "system-images/android-10/default/x86";
+    revision = "10-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-10_r05.zip;
+      sha1 = "a166d5ccbb165e1dd5464fbfeec30a61f77790d8";
+    };
+  };
+  "15".default."x86" = {
+    name = "system-image-15-default-x86";
+    path = "system-images/android-15/default/x86";
+    revision = "15-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-15_r05.zip;
+      sha1 = "c387e0efed2cdc610e5944eea67b7b692d03760c";
+    };
+  };
+  "16".default."x86" = {
+    name = "system-image-16-default-x86";
+    path = "system-images/android-16/default/x86";
+    revision = "16-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-16_r06.zip;
+      sha1 = "bf1bf8c5591346118d2235da1ad20e7be8a3e9cd";
+    };
+  };
+  "17".default."x86" = {
+    name = "system-image-17-default-x86";
+    path = "system-images/android-17/default/x86";
+    revision = "17-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-17_r04.zip;
+      sha1 = "03c6d022ab2dcbbcf655d78ba5ccb0431cadcaec";
+    };
+  };
+  "18".default."x86" = {
+    name = "system-image-18-default-x86";
+    path = "system-images/android-18/default/x86";
+    revision = "18-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-18_r04.zip;
+      sha1 = "7a4ced4d9b0ab48047825491b4072dc2eb9b610e";
+    };
+  };
+  "19".default."x86" = {
+    name = "system-image-19-default-x86";
+    path = "system-images/android-19/default/x86";
+    revision = "19-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-19_r06.zip;
+      sha1 = "2ac82153aae97f7eae4c5a0761224fe04321d03d";
+    };
+  };
+  "21".default."x86" = {
+    name = "system-image-21-default-x86";
+    path = "system-images/android-21/default/x86";
+    revision = "21-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-21_r05.zip;
+      sha1 = "00f0eb0a1003efe3316347f762e20a85d8749cff";
+    };
+  };
+  "22".default."x86" = {
+    name = "system-image-22-default-x86";
+    path = "system-images/android-22/default/x86";
+    revision = "22-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-22_r06.zip;
+      sha1 = "e33e2a6cc3f1cc56b2019dbef3917d2eeb26f54e";
+    };
+  };
+  "23".default."x86" = {
+    name = "system-image-23-default-x86";
+    path = "system-images/android-23/default/x86";
+    revision = "23-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-23_r10.zip;
+      sha1 = "f6c3e3dd7bd951454795aa75c3a145fd05ac25bb";
+    };
+  };
+  "24".default."x86" = {
+    name = "system-image-24-default-x86";
+    path = "system-images/android-24/default/x86";
+    revision = "24-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-24_r08.zip;
+      sha1 = "c1cae7634b0216c0b5990f2c144eb8ca948e3511";
+    };
+  };
+  "25".default."x86" = {
+    name = "system-image-25-default-x86";
+    path = "system-images/android-25/default/x86";
+    revision = "25-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-25_r01.zip;
+      sha1 = "78ce7eb1387d598685633b9f7cbb300c3d3aeb5f";
+    };
+  };
+  "26".default."x86" = {
+    name = "system-image-26-default-x86";
+    path = "system-images/android-26/default/x86";
+    revision = "26-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-26_r01.zip;
+      sha1 = "e613d6e0da668e30daf547f3c6627a6352846f90";
+    };
+  };
+  "27".default."x86" = {
+    name = "system-image-27-default-x86";
+    path = "system-images/android-27/default/x86";
+    revision = "27-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-27_r01.zip;
+      sha1 = "4ec990fac7b62958decd12e18a4cd389dfe7c582";
+    };
+  };
+  "28".default."x86" = {
+    name = "system-image-28-default-x86";
+    path = "system-images/android-28/default/x86";
+    revision = "28-default-x86";
+    displayName = "Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86-28_r04.zip;
+      sha1 = "ce03c42d80c0fc6dc47f6455dbee7aa275d02780";
+    };
+  };
+  "21".default."x86_64" = {
+    name = "system-image-21-default-x86_64";
+    path = "system-images/android-21/default/x86_64";
+    revision = "21-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-21_r05.zip;
+      sha1 = "9078a095825a69e5e215713f0866c83cef65a342";
+    };
+  };
+  "22".default."x86_64" = {
+    name = "system-image-22-default-x86_64";
+    path = "system-images/android-22/default/x86_64";
+    revision = "22-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-22_r06.zip;
+      sha1 = "5db3b27f78cd9c4c5092b1cad5a5dd479fb5b2e4";
+    };
+  };
+  "23".default."x86_64" = {
+    name = "system-image-23-default-x86_64";
+    path = "system-images/android-23/default/x86_64";
+    revision = "23-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-23_r10.zip;
+      sha1 = "7cbc291483ca07dc67b71268c5f08a5755f50f51";
+    };
+  };
+  "24".default."x86_64" = {
+    name = "system-image-24-default-x86_64";
+    path = "system-images/android-24/default/x86_64";
+    revision = "24-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-24_r08.zip;
+      sha1 = "f6559e1949a5879f31a9662f4f0e50ad60181684";
+    };
+  };
+  "25".default."x86_64" = {
+    name = "system-image-25-default-x86_64";
+    path = "system-images/android-25/default/x86_64";
+    revision = "25-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-25_r01.zip;
+      sha1 = "7093d7b39216020226ff430a3b7b81c94d31ad37";
+    };
+  };
+  "26".default."x86_64" = {
+    name = "system-image-26-default-x86_64";
+    path = "system-images/android-26/default/x86_64";
+    revision = "26-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-26_r01.zip;
+      sha1 = "432f149c048bffce7f9de526ec65b336daf7a0a3";
+    };
+  };
+  "27".default."x86_64" = {
+    name = "system-image-27-default-x86_64";
+    path = "system-images/android-27/default/x86_64";
+    revision = "27-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-27_r01.zip;
+      sha1 = "2878261011a59ca3de29dc5b457a495fdb268d60";
+    };
+  };
+  "28".default."x86_64" = {
+    name = "system-image-28-default-x86_64";
+    path = "system-images/android-28/default/x86_64";
+    revision = "28-default-x86_64";
+    displayName = "Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/android/x86_64-28_r04.zip;
+      sha1 = "d47a85c8f4e9fd57df97814ad8884eeb0f3a0ef0";
+    };
+  };
 }
-  
\ No newline at end of file
diff --git a/pkgs/development/mobile/androidenv/generated/system-images-google_apis.nix b/pkgs/development/mobile/androidenv/generated/system-images-google_apis.nix
index 3b0303b86b4..68af1ea5689 100644
--- a/pkgs/development/mobile/androidenv/generated/system-images-google_apis.nix
+++ b/pkgs/development/mobile/androidenv/generated/system-images-google_apis.nix
@@ -1,502 +1,384 @@
-
 {fetchurl}:
 
 {
-  
-
-    "10".google_apis."armeabi-v7a" = {
-      name = "system-image-10-google_apis-armeabi-v7a";
-      path = "system-images/android-10/google_apis/armeabi-v7a";
-      revision = "10-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-10_r05.zip;
-        sha1 = "cb60221d4ff6686ae96560970d48d9aa60e80b3f";
-      
-      };
-  };
-  
-
-    "10".google_apis."x86" = {
-      name = "system-image-10-google_apis-x86";
-      path = "system-images/android-10/google_apis/x86";
-      revision = "10-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-10_r05.zip;
-        sha1 = "b8e8a4ab26890c4a395fb796bf9cb7ceb51c880e";
-      
-      };
-  };
-  
-
-    "15".google_apis."armeabi-v7a" = {
-      name = "system-image-15-google_apis-armeabi-v7a";
-      path = "system-images/android-15/google_apis/armeabi-v7a";
-      revision = "15-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-15_r05.zip;
-        sha1 = "1ec4e6f9014fcbe694511280f5b497aaf7dd750f";
-      
-      };
-  };
-  
-
-    "15".google_apis."x86" = {
-      name = "system-image-15-google_apis-x86";
-      path = "system-images/android-15/google_apis/x86";
-      revision = "15-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-15_r05.zip;
-        sha1 = "f2b98baaf847ff5b82b82fdc6c396b229067307b";
-      
-      };
-  };
-  
-
-    "16".google_apis."x86" = {
-      name = "system-image-16-google_apis-x86";
-      path = "system-images/android-16/google_apis/x86";
-      revision = "16-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-16_r05.zip;
-        sha1 = "7edc5c0836fa32f8d453788c002ca0ee1bc5a0a2";
-      
-      };
-  };
-  
-
-    "17".google_apis."armeabi-v7a" = {
-      name = "system-image-17-google_apis-armeabi-v7a";
-      path = "system-images/android-17/google_apis/armeabi-v7a";
-      revision = "17-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-17_r05.zip;
-        sha1 = "c990f2a81c24a61f9f1da5d5d205f2924ce548ae";
-      
-      };
-  };
-  
-
-    "17".google_apis."x86" = {
-      name = "system-image-17-google_apis-x86";
-      path = "system-images/android-17/google_apis/x86";
-      revision = "17-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-17_r06.zip;
-        sha1 = "7864c34faf0402b8923d8c6e609a5339f74cc8d6";
-      
-      };
-  };
-  
-
-    "18".google_apis."armeabi-v7a" = {
-      name = "system-image-18-google_apis-armeabi-v7a";
-      path = "system-images/android-18/google_apis/armeabi-v7a";
-      revision = "18-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-18_r05.zip;
-        sha1 = "c4e69a96d4584f7e311e358fe4ad0e5d1bf1605b";
-      
-      };
-  };
-  
-
-    "18".google_apis."x86" = {
-      name = "system-image-18-google_apis-x86";
-      path = "system-images/android-18/google_apis/x86";
-      revision = "18-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-18_r05.zip;
-        sha1 = "2b34741693eba9419cb6bf1a467596783234d37a";
-      
-      };
-  };
-  
-
-    "19".google_apis."x86" = {
-      name = "system-image-19-google_apis-x86";
-      path = "system-images/android-19/google_apis/x86";
-      revision = "19-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-19_r37.zip;
-        sha1 = "f02473420a166b3df7821d8ae5a623524058b4b8";
-      
-      };
-  };
-  
-
-    "19".google_apis."armeabi-v7a" = {
-      name = "system-image-19-google_apis-armeabi-v7a";
-      path = "system-images/android-19/google_apis/armeabi-v7a";
-      revision = "19-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-19_r37.zip;
-        sha1 = "b388072493ed010fe2ddf607c8c4239f54ce1a0b";
-      
-      };
-  };
-  
-
-    "21".google_apis."x86" = {
-      name = "system-image-21-google_apis-x86";
-      path = "system-images/android-21/google_apis/x86";
-      revision = "21-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-21_r29.zip;
-        sha1 = "1f5ac49e0ae603b0bfeda0c94cd7e0b850b9b50e";
-      
-      };
-  };
-  
-
-    "21".google_apis."x86_64" = {
-      name = "system-image-21-google_apis-x86_64";
-      path = "system-images/android-21/google_apis/x86_64";
-      revision = "21-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-21_r29.zip;
-        sha1 = "74ac387aec286fcee01259dcccd4762cbdb4b517";
-      
-      };
-  };
-  
-
-    "21".google_apis."armeabi-v7a" = {
-      name = "system-image-21-google_apis-armeabi-v7a";
-      path = "system-images/android-21/google_apis/armeabi-v7a";
-      revision = "21-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-21_r29.zip;
-        sha1 = "1d0c428ac7f5eb49c7389ad0beb09f07cb989b45";
-      
-      };
-  };
-  
-
-    "22".google_apis."x86" = {
-      name = "system-image-22-google_apis-x86";
-      path = "system-images/android-22/google_apis/x86";
-      revision = "22-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-22_r23.zip;
-        sha1 = "4ceda9ffd69d5b827a8cc2f56ccac62e72982b33";
-      
-      };
-  };
-  
-
-    "22".google_apis."armeabi-v7a" = {
-      name = "system-image-22-google_apis-armeabi-v7a";
-      path = "system-images/android-22/google_apis/armeabi-v7a";
-      revision = "22-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-22_r23.zip;
-        sha1 = "0a11bdffa6132303baf87e4a531987a74d5f0792";
-      
-      };
-  };
-  
-
-    "22".google_apis."x86_64" = {
-      name = "system-image-22-google_apis-x86_64";
-      path = "system-images/android-22/google_apis/x86_64";
-      revision = "22-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-22_r23.zip;
-        sha1 = "1dfee1c382574c18e3aa2bc2047793169f3ab125";
-      
-      };
-  };
-  
-
-    "23".google_apis."x86" = {
-      name = "system-image-23-google_apis-x86";
-      path = "system-images/android-23/google_apis/x86";
-      revision = "23-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-23_r30.zip;
-        sha1 = "1b8fd61e7e7c76d8c05a41b19370edfb015ed240";
-      
-      };
-  };
-  
-
-    "23".google_apis."x86_64" = {
-      name = "system-image-23-google_apis-x86_64";
-      path = "system-images/android-23/google_apis/x86_64";
-      revision = "23-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-23_r30.zip;
-        sha1 = "69a17c23c4e05e81a2820fe49884807fcebba546";
-      
-      };
-  };
-  
-
-    "23".google_apis."armeabi-v7a" = {
-      name = "system-image-23-google_apis-armeabi-v7a";
-      path = "system-images/android-23/google_apis/armeabi-v7a";
-      revision = "23-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-23_r30.zip;
-        sha1 = "c3966e3a25623a915902d879f90f6d9253dbb619";
-      
-      };
-  };
-  
-
-    "24".google_apis."x86" = {
-      name = "system-image-24-google_apis-x86";
-      path = "system-images/android-24/google_apis/x86";
-      revision = "24-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-24_r24.zip;
-        sha1 = "7a1adb4aa13946830763644d014fc9c6cc1f921d";
-      
-      };
-  };
-  
-
-    "24".google_apis."x86_64" = {
-      name = "system-image-24-google_apis-x86_64";
-      path = "system-images/android-24/google_apis/x86_64";
-      revision = "24-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-24_r24.zip;
-        sha1 = "53b26e8868c7cd27dda31c71ee2bcf999d6b9ce2";
-      
-      };
-  };
-  
-
-    "24".google_apis."armeabi-v7a" = {
-      name = "system-image-24-google_apis-armeabi-v7a";
-      path = "system-images/android-24/google_apis/armeabi-v7a";
-      revision = "24-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-24_r24.zip;
-        sha1 = "85068d55673bbf9417db8d70107ceed0952b5a28";
-      
-      };
-  };
-  
-
-    "24".google_apis."arm64-v8a" = {
-      name = "system-image-24-google_apis-arm64-v8a";
-      path = "system-images/android-24/google_apis/arm64-v8a";
-      revision = "24-google_apis-arm64-v8a";
-      displayName = "Google APIs ARM 64 v8a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-24_r24.zip;
-        sha1 = "93ab33d90fcdbb30ca2e927cd3eea447e933dfd9";
-      
-      };
-  };
-  
-
-    "25".google_apis."x86" = {
-      name = "system-image-25-google_apis-x86";
-      path = "system-images/android-25/google_apis/x86";
-      revision = "25-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-25_r15.zip;
-        sha1 = "5948473077341265a0b21a53a7e0afc2f980187c";
-      
-      };
-  };
-  
-
-    "25".google_apis."x86_64" = {
-      name = "system-image-25-google_apis-x86_64";
-      path = "system-images/android-25/google_apis/x86_64";
-      revision = "25-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-25_r15.zip;
-        sha1 = "5a81fc218a7fe82cc6af01f7fae54a8000900443";
-      
-      };
-  };
-  
-
-    "25".google_apis."armeabi-v7a" = {
-      name = "system-image-25-google_apis-armeabi-v7a";
-      path = "system-images/android-25/google_apis/armeabi-v7a";
-      revision = "25-google_apis-armeabi-v7a";
-      displayName = "Google APIs ARM EABI v7a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-25_r15.zip;
-        sha1 = "813e25f9a5f6d775670ed6c5e67a39bffa1411bf";
-      
-      };
-  };
-  
-
-    "25".google_apis."arm64-v8a" = {
-      name = "system-image-25-google_apis-arm64-v8a";
-      path = "system-images/android-25/google_apis/arm64-v8a";
-      revision = "25-google_apis-arm64-v8a";
-      displayName = "Google APIs ARM 64 v8a System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-25_r15.zip;
-        sha1 = "c3049e32f031140757f71acb5b8f0179e6f27303";
-      
-      };
-  };
-  
-
-    "26".google_apis."x86" = {
-      name = "system-image-26-google_apis-x86";
-      path = "system-images/android-26/google_apis/x86";
-      revision = "26-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-26_r12.zip;
-        sha1 = "167c83bcfd87127c7376ce986b34701f74fe87ff";
-      
-      };
-  };
-  
-
-    "26".google_apis."x86_64" = {
-      name = "system-image-26-google_apis-x86_64";
-      path = "system-images/android-26/google_apis/x86_64";
-      revision = "26-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-26_r12.zip;
-        sha1 = "fcd46121c3486e2a759d0707c015e0b12bbab9db";
-      
-      };
-  };
-  
-
-    "27".google_apis."x86" = {
-      name = "system-image-27-google_apis-x86";
-      path = "system-images/android-27/google_apis/x86";
-      revision = "27-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-27_r08.zip;
-        sha1 = "623ee2638713b7dfde8044c91280c2afad5a1ade";
-      
-      };
-  };
-  
-
-    "28".google_apis."x86" = {
-      name = "system-image-28-google_apis-x86";
-      path = "system-images/android-28/google_apis/x86";
-      revision = "28-google_apis-x86";
-      displayName = "Google APIs Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86-28_r07.zip;
-        sha1 = "fe5d58355545ae82b0e6a55adc1d41573ac7dec1";
-      
-      };
-  };
-  
-
-    "28".google_apis."x86_64" = {
-      name = "system-image-28-google_apis-x86_64";
-      path = "system-images/android-28/google_apis/x86_64";
-      revision = "28-google_apis-x86_64";
-      displayName = "Google APIs Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis/x86_64-28_r07.zip;
-        sha1 = "068468683a56725326f741f75b6913ee1e7955ff";
-      
-      };
-  };
-  
-}
-  
\ No newline at end of file
+  "10".google_apis."armeabi-v7a" = {
+    name = "system-image-10-google_apis-armeabi-v7a";
+    path = "system-images/android-10/google_apis/armeabi-v7a";
+    revision = "10-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-10_r06.zip;
+      sha1 = "970abf3a2a9937a43576afd9bb56e4a8191947f8";
+    };
+  };
+  "10".google_apis."x86" = {
+    name = "system-image-10-google_apis-x86";
+    path = "system-images/android-10/google_apis/x86";
+    revision = "10-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-10_r06.zip;
+      sha1 = "070a9552e3d358d8e72e8b2042e539e2b7a1b035";
+    };
+  };
+  "15".google_apis."x86" = {
+    name = "system-image-15-google_apis-x86";
+    path = "system-images/android-15/google_apis/x86";
+    revision = "15-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-15_r06.zip;
+      sha1 = "a7deb32c12396b6c4fd60ad14a62e19f8bdcae20";
+    };
+  };
+  "15".google_apis."armeabi-v7a" = {
+    name = "system-image-15-google_apis-armeabi-v7a";
+    path = "system-images/android-15/google_apis/armeabi-v7a";
+    revision = "15-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-15_r06.zip;
+      sha1 = "6deb76cf34760a6037cb18d89772c9e986d07497";
+    };
+  };
+  "16".google_apis."armeabi-v7a" = {
+    name = "system-image-16-google_apis-armeabi-v7a";
+    path = "system-images/android-16/google_apis/armeabi-v7a";
+    revision = "16-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-16_r06.zip;
+      sha1 = "5a5ff097680c6dae473c8719296ce6d7b70edb2d";
+    };
+  };
+  "16".google_apis."x86" = {
+    name = "system-image-16-google_apis-x86";
+    path = "system-images/android-16/google_apis/x86";
+    revision = "16-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-16_r06.zip;
+      sha1 = "b57adef2f43dd176b8c02c980c16a796021b2071";
+    };
+  };
+  "17".google_apis."armeabi-v7a" = {
+    name = "system-image-17-google_apis-armeabi-v7a";
+    path = "system-images/android-17/google_apis/armeabi-v7a";
+    revision = "17-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-17_r06.zip;
+      sha1 = "a59f26cb5707da97e869a27d87b83477204ac594";
+    };
+  };
+  "17".google_apis."x86" = {
+    name = "system-image-17-google_apis-x86";
+    path = "system-images/android-17/google_apis/x86";
+    revision = "17-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-17_r06.zip;
+      sha1 = "7864c34faf0402b8923d8c6e609a5339f74cc8d6";
+    };
+  };
+  "18".google_apis."armeabi-v7a" = {
+    name = "system-image-18-google_apis-armeabi-v7a";
+    path = "system-images/android-18/google_apis/armeabi-v7a";
+    revision = "18-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-18_r06.zip;
+      sha1 = "7faaccabbcc5f08e410436d3f63eea42521ea974";
+    };
+  };
+  "18".google_apis."x86" = {
+    name = "system-image-18-google_apis-x86";
+    path = "system-images/android-18/google_apis/x86";
+    revision = "18-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-18_r06.zip;
+      sha1 = "dd674d719cad61602702be4b3d98edccfbfea53e";
+    };
+  };
+  "19".google_apis."x86" = {
+    name = "system-image-19-google_apis-x86";
+    path = "system-images/android-19/google_apis/x86";
+    revision = "19-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-19_r38.zip;
+      sha1 = "928e4ec82876c61ef53451425d10ccb840cdd0f2";
+    };
+  };
+  "19".google_apis."armeabi-v7a" = {
+    name = "system-image-19-google_apis-armeabi-v7a";
+    path = "system-images/android-19/google_apis/armeabi-v7a";
+    revision = "19-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-19_r38.zip;
+      sha1 = "434edd2ddc39d1ca083a5fa9721c0db8ab804737";
+    };
+  };
+  "21".google_apis."x86" = {
+    name = "system-image-21-google_apis-x86";
+    path = "system-images/android-21/google_apis/x86";
+    revision = "21-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-21_r30.zip;
+      sha1 = "37548caae9e2897fb1d2b15f7fcf624c714cb610";
+    };
+  };
+  "21".google_apis."x86_64" = {
+    name = "system-image-21-google_apis-x86_64";
+    path = "system-images/android-21/google_apis/x86_64";
+    revision = "21-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-21_r30.zip;
+      sha1 = "82d34fdaae2916bd4d48a4f144db51e4e5719aa4";
+    };
+  };
+  "21".google_apis."armeabi-v7a" = {
+    name = "system-image-21-google_apis-armeabi-v7a";
+    path = "system-images/android-21/google_apis/armeabi-v7a";
+    revision = "21-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-21_r30.zip;
+      sha1 = "bbdbbb3c4387752a8f28718a3190d901c0378058";
+    };
+  };
+  "22".google_apis."x86" = {
+    name = "system-image-22-google_apis-x86";
+    path = "system-images/android-22/google_apis/x86";
+    revision = "22-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-22_r24.zip;
+      sha1 = "e4cd95b1c0837fc12d6544742e82d8ef344c8758";
+    };
+  };
+  "22".google_apis."armeabi-v7a" = {
+    name = "system-image-22-google_apis-armeabi-v7a";
+    path = "system-images/android-22/google_apis/armeabi-v7a";
+    revision = "22-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-22_r24.zip;
+      sha1 = "d2b7ca5f8259c6e4b3cfa5a0d77e4a088899cfb0";
+    };
+  };
+  "22".google_apis."x86_64" = {
+    name = "system-image-22-google_apis-x86_64";
+    path = "system-images/android-22/google_apis/x86_64";
+    revision = "22-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-22_r24.zip;
+      sha1 = "cde738f9353606af69ad7b4e625c957a4d603f27";
+    };
+  };
+  "23".google_apis."x86" = {
+    name = "system-image-23-google_apis-x86";
+    path = "system-images/android-23/google_apis/x86";
+    revision = "23-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-23_r31.zip;
+      sha1 = "877cf79f5198fa53351eab08ba9ce162dc84f7ba";
+    };
+  };
+  "23".google_apis."x86_64" = {
+    name = "system-image-23-google_apis-x86_64";
+    path = "system-images/android-23/google_apis/x86_64";
+    revision = "23-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-23_r31.zip;
+      sha1 = "342c39df061804ee0d5bc671147e90dead3d6665";
+    };
+  };
+  "23".google_apis."armeabi-v7a" = {
+    name = "system-image-23-google_apis-armeabi-v7a";
+    path = "system-images/android-23/google_apis/armeabi-v7a";
+    revision = "23-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-23_r31.zip;
+      sha1 = "da0a07800b4eec53fcdb2e5c3b69a9a5d7a6b8a6";
+    };
+  };
+  "24".google_apis."x86" = {
+    name = "system-image-24-google_apis-x86";
+    path = "system-images/android-24/google_apis/x86";
+    revision = "24-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-24_r25.zip;
+      sha1 = "53dba25eed8359aba394a1be1c7ccb741a459ec0";
+    };
+  };
+  "24".google_apis."x86_64" = {
+    name = "system-image-24-google_apis-x86_64";
+    path = "system-images/android-24/google_apis/x86_64";
+    revision = "24-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-24_r25.zip;
+      sha1 = "d757dd13ad9b0ba4dd872660e31b6506f60dcf32";
+    };
+  };
+  "24".google_apis."armeabi-v7a" = {
+    name = "system-image-24-google_apis-armeabi-v7a";
+    path = "system-images/android-24/google_apis/armeabi-v7a";
+    revision = "24-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-24_r25.zip;
+      sha1 = "9a0ec5e9a239a7a6889364e44e9fa4fcd0052c6b";
+    };
+  };
+  "24".google_apis."arm64-v8a" = {
+    name = "system-image-24-google_apis-arm64-v8a";
+    path = "system-images/android-24/google_apis/arm64-v8a";
+    revision = "24-google_apis-arm64-v8a";
+    displayName = "Google APIs ARM 64 v8a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-24_r25.zip;
+      sha1 = "5ff407d439e3c595ce9221f445a31dcc35df5a86";
+    };
+  };
+  "25".google_apis."x86" = {
+    name = "system-image-25-google_apis-x86";
+    path = "system-images/android-25/google_apis/x86";
+    revision = "25-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-25_r16.zip;
+      sha1 = "562e3335c6334b8d1947bb9efb90f8d82f2d3e4d";
+    };
+  };
+  "25".google_apis."x86_64" = {
+    name = "system-image-25-google_apis-x86_64";
+    path = "system-images/android-25/google_apis/x86_64";
+    revision = "25-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-25_r16.zip;
+      sha1 = "e08b94903631d58964467b0b310c93642d85df6c";
+    };
+  };
+  "25".google_apis."armeabi-v7a" = {
+    name = "system-image-25-google_apis-armeabi-v7a";
+    path = "system-images/android-25/google_apis/armeabi-v7a";
+    revision = "25-google_apis-armeabi-v7a";
+    displayName = "Google APIs ARM EABI v7a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/armeabi-v7a-25_r16.zip;
+      sha1 = "4c49e0edb845b0bf1f231cb0e8598b1a9f9aa9c8";
+    };
+  };
+  "25".google_apis."arm64-v8a" = {
+    name = "system-image-25-google_apis-arm64-v8a";
+    path = "system-images/android-25/google_apis/arm64-v8a";
+    revision = "25-google_apis-arm64-v8a";
+    displayName = "Google APIs ARM 64 v8a System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/arm64-v8a-25_r16.zip;
+      sha1 = "33ffbd335d9a6dc8d9843469d0963091566b3167";
+    };
+  };
+  "26".google_apis."x86" = {
+    name = "system-image-26-google_apis-x86";
+    path = "system-images/android-26/google_apis/x86";
+    revision = "26-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-26_r14.zip;
+      sha1 = "935da6794d5f64f7ae20a1f352929cb7e3b20cba";
+    };
+  };
+  "26".google_apis."x86_64" = {
+    name = "system-image-26-google_apis-x86_64";
+    path = "system-images/android-26/google_apis/x86_64";
+    revision = "26-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-26_r14.zip;
+      sha1 = "965631f0554ca9027ac465ba147baa6a6a22fcce";
+    };
+  };
+  "27".google_apis."x86" = {
+    name = "system-image-27-google_apis-x86";
+    path = "system-images/android-27/google_apis/x86";
+    revision = "27-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-27_r09.zip;
+      sha1 = "ab009fc1308ded01539af4f8233b252d411145bc";
+    };
+  };
+  "28".google_apis."x86" = {
+    name = "system-image-28-google_apis-x86";
+    path = "system-images/android-28/google_apis/x86";
+    revision = "28-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-28_r09.zip;
+      sha1 = "7c84ba5cbc009132ce38df52830c17b9bffc54bb";
+    };
+  };
+  "28".google_apis."x86_64" = {
+    name = "system-image-28-google_apis-x86_64";
+    path = "system-images/android-28/google_apis/x86_64";
+    revision = "28-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-28_r09.zip;
+      sha1 = "eeb066346d29194e5b9387a0c0dd0f9e2a570b70";
+    };
+  };
+  "29".google_apis."x86" = {
+    name = "system-image-29-google_apis-x86";
+    path = "system-images/android-29/google_apis/x86";
+    revision = "29-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-29_r09.zip;
+      sha1 = "33d71d17138ea322dec2dea6d8198aebf4767ab3";
+    };
+  };
+  "29".google_apis."x86_64" = {
+    name = "system-image-29-google_apis-x86_64";
+    path = "system-images/android-29/google_apis/x86_64";
+    revision = "29-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-29_r09.zip;
+      sha1 = "0aa76b20a7ad30f2e41bc21b897b848d82533d26";
+    };
+  };
+  "R".google_apis."x86" = {
+    name = "system-image-R-google_apis-x86";
+    path = "system-images/android-R/google_apis/x86";
+    revision = "R-google_apis-x86";
+    displayName = "Google APIs Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86-R_r01.zip;
+      sha1 = "4e260bef94760eecba3224b68c1a4fed0fb89485";
+    };
+  };
+  "R".google_apis."x86_64" = {
+    name = "system-image-R-google_apis-x86_64";
+    path = "system-images/android-R/google_apis/x86_64";
+    revision = "R-google_apis-x86_64";
+    displayName = "Google APIs Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis/x86_64-R_r01.zip;
+      sha1 = "ae12e1c3e1b36043a299359850e9315f47262f81";
+    };
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/mobile/androidenv/generated/system-images-google_apis_playstore.nix b/pkgs/development/mobile/androidenv/generated/system-images-google_apis_playstore.nix
index a8bea61ff54..edc22ac2d7b 100644
--- a/pkgs/development/mobile/androidenv/generated/system-images-google_apis_playstore.nix
+++ b/pkgs/development/mobile/androidenv/generated/system-images-google_apis_playstore.nix
@@ -1,97 +1,64 @@
-
 {fetchurl}:
 
 {
-  
-
-    "24".google_apis_playstore."x86" = {
-      name = "system-image-24-google_apis_playstore-x86";
-      path = "system-images/android-24/google_apis_playstore/x86";
-      revision = "24-google_apis_playstore-x86";
-      displayName = "Google Play Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-24_r19.zip;
-        sha1 = "b52e9593ffdde65c1a0970256a32e8967c89cc22";
-      
-      };
+  "24".google_apis_playstore."x86" = {
+    name = "system-image-24-google_apis_playstore-x86";
+    path = "system-images/android-24/google_apis_playstore/x86";
+    revision = "24-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-24_r19.zip;
+      sha1 = "b52e9593ffdde65c1a0970256a32e8967c89cc22";
+    };
   };
-  
-
-    "25".google_apis_playstore."x86" = {
-      name = "system-image-25-google_apis_playstore-x86";
-      path = "system-images/android-25/google_apis_playstore/x86";
-      revision = "25-google_apis_playstore-x86";
-      displayName = "Google Play Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-25_r09.zip;
-        sha1 = "6f6668954f7fd52f896fe7528aa122028c9b026c";
-      
-      };
+  "25".google_apis_playstore."x86" = {
+    name = "system-image-25-google_apis_playstore-x86";
+    path = "system-images/android-25/google_apis_playstore/x86";
+    revision = "25-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-25_r09.zip;
+      sha1 = "6f6668954f7fd52f896fe7528aa122028c9b026c";
+    };
   };
-  
-
-    "26".google_apis_playstore."x86" = {
-      name = "system-image-26-google_apis_playstore-x86";
-      path = "system-images/android-26/google_apis_playstore/x86";
-      revision = "26-google_apis_playstore-x86";
-      displayName = "Google Play Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-26_r07.zip;
-        sha1 = "2c8bee7b97a309f099941532e63c42a7d4a06e19";
-      
-      };
+  "26".google_apis_playstore."x86" = {
+    name = "system-image-26-google_apis_playstore-x86";
+    path = "system-images/android-26/google_apis_playstore/x86";
+    revision = "26-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-26_r07.zip;
+      sha1 = "2c8bee7b97a309f099941532e63c42a7d4a06e19";
+    };
   };
-  
-
-    "27".google_apis_playstore."x86" = {
-      name = "system-image-27-google_apis_playstore-x86";
-      path = "system-images/android-27/google_apis_playstore/x86";
-      revision = "27-google_apis_playstore-x86";
-      displayName = "Google Play Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-27_r03.zip;
-        sha1 = "eb5a944ceb691ca0648d0a6f0d93893a47223b5d";
-      
-      };
+  "27".google_apis_playstore."x86" = {
+    name = "system-image-27-google_apis_playstore-x86";
+    path = "system-images/android-27/google_apis_playstore/x86";
+    revision = "27-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-27_r03.zip;
+      sha1 = "eb5a944ceb691ca0648d0a6f0d93893a47223b5d";
+    };
   };
-  
-
-    "28".google_apis_playstore."x86" = {
-      name = "system-image-28-google_apis_playstore-x86";
-      path = "system-images/android-28/google_apis_playstore/x86";
-      revision = "28-google_apis_playstore-x86";
-      displayName = "Google Play Intel x86 Atom System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-28_r05.zip;
-        sha1 = "4c570d259e93b0b27f97bad1aca2ac47f1e9b51a";
-      
-      };
+  "28".google_apis_playstore."x86" = {
+    name = "system-image-28-google_apis_playstore-x86";
+    path = "system-images/android-28/google_apis_playstore/x86";
+    revision = "28-google_apis_playstore-x86";
+    displayName = "Google Play Intel x86 Atom System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86-28_r08.zip;
+      sha1 = "5381f9d52a3bf1967c9c92a25b20012cd68764c8";
+    };
   };
-  
-
-    "28".google_apis_playstore."x86_64" = {
-      name = "system-image-28-google_apis_playstore-x86_64";
-      path = "system-images/android-28/google_apis_playstore/x86_64";
-      revision = "28-google_apis_playstore-x86_64";
-      displayName = "Google Play Intel x86 Atom_64 System Image";
-      archives.all = fetchurl {
-      
-        url = 
-        https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-28_r05.zip;
-        sha1 = "5f6b238e4c7de41fd2a1c66841093bcf517255a1";
-      
-      };
+  "28".google_apis_playstore."x86_64" = {
+    name = "system-image-28-google_apis_playstore-x86_64";
+    path = "system-images/android-28/google_apis_playstore/x86_64";
+    revision = "28-google_apis_playstore-x86_64";
+    displayName = "Google Play Intel x86 Atom_64 System Image";
+    archives.all = fetchurl {
+      url = https://dl.google.com/android/repository/sys-img/google_apis_playstore/x86_64-28_r08.zip;
+      sha1 = "a767da996fdea7a1f5632a9206fa5c009d6e580c";
+    };
   };
-  
 }
-  
\ No newline at end of file
diff --git a/pkgs/development/mobile/cocoapods/Gemfile.lock b/pkgs/development/mobile/cocoapods/Gemfile.lock
index 9aa7dfbf230..b8db94ca06a 100644
--- a/pkgs/development/mobile/cocoapods/Gemfile.lock
+++ b/pkgs/development/mobile/cocoapods/Gemfile.lock
@@ -87,4 +87,4 @@ DEPENDENCIES
   cocoapods!
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/development/node-packages/composition-v10.nix b/pkgs/development/node-packages/composition-v10.nix
index 534f42e37d7..ecb9e541323 100644
--- a/pkgs/development/node-packages/composition-v10.nix
+++ b/pkgs/development/node-packages/composition-v10.nix
@@ -14,4 +14,4 @@ in
 import ./node-packages-v10.nix {
   inherit (pkgs) fetchurl fetchgit;
   inherit nodeEnv;
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/node-packages/composition-v12.nix b/pkgs/development/node-packages/composition-v12.nix
index 3f4fbb7f7cb..a3a7bc25677 100644
--- a/pkgs/development/node-packages/composition-v12.nix
+++ b/pkgs/development/node-packages/composition-v12.nix
@@ -14,4 +14,4 @@ in
 import ./node-packages-v12.nix {
   inherit (pkgs) fetchurl fetchgit;
   inherit nodeEnv;
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/node-packages/composition-v13.nix b/pkgs/development/node-packages/composition-v13.nix
index 7100e8d7474..6eddeb468db 100644
--- a/pkgs/development/node-packages/composition-v13.nix
+++ b/pkgs/development/node-packages/composition-v13.nix
@@ -14,4 +14,4 @@ in
 import ./node-packages-v13.nix {
   inherit (pkgs) fetchurl fetchgit;
   inherit nodeEnv;
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/node-packages/generate.sh b/pkgs/development/node-packages/generate.sh
index 3b1626f9afb..d25671b1a6d 100755
--- a/pkgs/development/node-packages/generate.sh
+++ b/pkgs/development/node-packages/generate.sh
@@ -1,15 +1,11 @@
-#!/usr/bin/env nix-shell
-#! nix-shell shell-generate.nix -i bash
+#!/usr/bin/env bash
 set -eu -o pipefail
 
-cd "$NODE_NIXPKGS_PATH/pkgs/development/node-packages"
+DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
+node2nix=$(nix-build ../../.. --no-out-link -A nodePackages.node2nix)
+
+cd ${DIR}
 rm -f ./node-env.nix
 for version in 10 12 13; do
-    tmpdir=$(mktemp -d)
-    node2nix --nodejs-$version -i node-packages-v$version.json -o $tmpdir/node-packages-v$version.nix -c $tmpdir/composition-v$version.nix
-    if [ $? -eq 0 ]; then
-        mv $tmpdir/node-packages-v$version.nix .
-        mv $tmpdir/composition-v$version.nix .
-    fi
+  "${node2nix}/bin/node2nix" --nodejs-$version -i node-packages-v$version.json -o node-packages-v$version.nix -c composition-v$version.nix
 done
-cd -
diff --git a/pkgs/development/node-packages/node-packages-v10.nix b/pkgs/development/node-packages/node-packages-v10.nix
index 9c812bf9a73..d70b133fd40 100644
--- a/pkgs/development/node-packages/node-packages-v10.nix
+++ b/pkgs/development/node-packages/node-packages-v10.nix
@@ -22,31 +22,31 @@ let
         sha512 = "t4WmWoGV9gyzypwG3y3JlcK2t8fKLtvzBA7xEoFTj9SMPvOuLsf13uh4ikK0RRaaa9RPPWLgFUdOyIRaQvCpwQ==";
       };
     };
-    "@angular-devkit/architect-0.900.6" = {
+    "@angular-devkit/architect-0.900.7" = {
       name = "_at_angular-devkit_slash_architect";
       packageName = "@angular-devkit/architect";
-      version = "0.900.6";
+      version = "0.900.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.900.6.tgz";
-        sha512 = "WK8e09DgNP1NHP1gqVQ9w+9rlRMVDJxAh4qZGJRjZBXd3LY7y84WWRmTpfuhOSu+82fR3/n76+urxraU3ZVphw==";
+        url = "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.900.7.tgz";
+        sha512 = "hfiTVYc72kzbXrzK4tea6jnTDnSKpE1D+vEptBXN2tdXEVNEAQI5Qm5L1zVDtt16UdqoUTUypIgUc9jcNH1mUQ==";
       };
     };
-    "@angular-devkit/core-9.0.6" = {
+    "@angular-devkit/core-9.0.7" = {
       name = "_at_angular-devkit_slash_core";
       packageName = "@angular-devkit/core";
-      version = "9.0.6";
+      version = "9.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/core/-/core-9.0.6.tgz";
-        sha512 = "hCZJbnqLEm1F5Bx+ILcdd3LPgQTn4WFWpfUqMEGGj7UirRInWcz+6UpYotKGTJw85/mV01LrIbtWIkAUXbkkhg==";
+        url = "https://registry.npmjs.org/@angular-devkit/core/-/core-9.0.7.tgz";
+        sha512 = "tMrz36sM1xrwvFf9Qm59GwALscVlMP7rQBjtd0fIR/QbsiOAIX4AQbV+vN6Vtwnzo5NIRZY1IXJUhesWms+h5w==";
       };
     };
-    "@angular-devkit/schematics-9.0.6" = {
+    "@angular-devkit/schematics-9.0.7" = {
       name = "_at_angular-devkit_slash_schematics";
       packageName = "@angular-devkit/schematics";
-      version = "9.0.6";
+      version = "9.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-9.0.6.tgz";
-        sha512 = "X7qZDJVrFcPUn+jNUeOH7Bx1D7YTpTFr0d3DBIsQzseReSGu7ugWziQPS4gc5Xm5K0nb8vx6DYtyW0FaIvX0ZA==";
+        url = "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-9.0.7.tgz";
+        sha512 = "ryPC+l24f3gX5DFMTLkDM/q2Kp6LPzBn6400k7j4qVdb1cIrZx+JUQd7F4iAksTTkX15EQPanptQXeztUrl9Ng==";
       };
     };
     "@antora/asciidoc-loader-2.2.0" = {
@@ -256,22 +256,22 @@ let
         sha512 = "a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==";
       };
     };
-    "@babel/compat-data-7.8.6" = {
+    "@babel/compat-data-7.9.0" = {
       name = "_at_babel_slash_compat-data";
       packageName = "@babel/compat-data";
-      version = "7.8.6";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.8.6.tgz";
-        sha512 = "CurCIKPTkS25Mb8mz267vU95vy+TyUpnctEX2lV33xWNmHAfjruztgiPBbXZRh3xZZy1CYvGx6XfxyTVS+sk7Q==";
+        url = "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.9.0.tgz";
+        sha512 = "zeFQrr+284Ekvd9e7KAX954LkapWiOmQtsfHirhxqfdlX6MEC32iRE+pqUGlYIBchdevaCwvzxWGSy/YBNI85g==";
       };
     };
-    "@babel/core-7.8.7" = {
+    "@babel/core-7.9.0" = {
       name = "_at_babel_slash_core";
       packageName = "@babel/core";
-      version = "7.8.7";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/core/-/core-7.8.7.tgz";
-        sha512 = "rBlqF3Yko9cynC5CCFy6+K/w2N+Sq/ff2BPy+Krp7rHlABIr5epbA7OxVeKoMHB39LZOp1UY5SuLjy6uWi35yA==";
+        url = "https://registry.npmjs.org/@babel/core/-/core-7.9.0.tgz";
+        sha512 = "kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==";
       };
     };
     "@babel/generator-7.0.0-beta.38" = {
@@ -292,13 +292,13 @@ let
         sha512 = "4bpOR5ZBz+wWcMeVtcf7FbjcFzCp+817z2/gHNncIRcM9MmKzUhtWCYAq27RAfUrAFwb+OCG1s9WEaVxfi6cjg==";
       };
     };
-    "@babel/generator-7.8.8" = {
+    "@babel/generator-7.9.4" = {
       name = "_at_babel_slash_generator";
       packageName = "@babel/generator";
-      version = "7.8.8";
+      version = "7.9.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.8.8.tgz";
-        sha512 = "HKyUVu69cZoclptr8t8U5b6sx6zoWjh8jiUhnuj3MpZuKT2dJ8zPTuiy31luq32swhI0SpwItCIlU8XW7BZeJg==";
+        url = "https://registry.npmjs.org/@babel/generator/-/generator-7.9.4.tgz";
+        sha512 = "rjP8ahaDy/ouhrvCoU1E5mqaitWrxwuNGU+dy1EpaoK48jZay4MdkskKGIMHLZNewg8sAsqpGSREJwP0zH3YQA==";
       };
     };
     "@babel/helper-annotate-as-pure-7.8.3" = {
@@ -319,22 +319,22 @@ let
         sha512 = "5eFOm2SyFPK4Rh3XMMRDjN7lBH0orh3ss0g3rTYZnBQ+r6YPj7lgDyCvPphynHvUrobJmeMignBr6Acw9mAPlw==";
       };
     };
-    "@babel/helper-builder-react-jsx-7.8.3" = {
+    "@babel/helper-builder-react-jsx-7.9.0" = {
       name = "_at_babel_slash_helper-builder-react-jsx";
       packageName = "@babel/helper-builder-react-jsx";
-      version = "7.8.3";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.8.3.tgz";
-        sha512 = "JT8mfnpTkKNCboTqZsQTdGo3l3Ik3l7QIt9hh0O9DYiwVel37VoJpILKM4YFbP2euF32nkQSb+F9cUk9b7DDXQ==";
+        url = "https://registry.npmjs.org/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.9.0.tgz";
+        sha512 = "weiIo4gaoGgnhff54GQ3P5wsUQmnSwpkvU0r6ZHq6TzoSzKy4JxHEgnxNytaKbov2a9z/CVNyzliuCOUPEX3Jw==";
       };
     };
-    "@babel/helper-call-delegate-7.8.7" = {
-      name = "_at_babel_slash_helper-call-delegate";
-      packageName = "@babel/helper-call-delegate";
-      version = "7.8.7";
+    "@babel/helper-builder-react-jsx-experimental-7.9.0" = {
+      name = "_at_babel_slash_helper-builder-react-jsx-experimental";
+      packageName = "@babel/helper-builder-react-jsx-experimental";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.8.7.tgz";
-        sha512 = "doAA5LAKhsFCR0LAFIf+r2RSMmC+m8f/oQ+URnUET/rWeEzC0yTRmAGyWkD4sSu3xwbS7MYQ2u+xlt1V5R56KQ==";
+        url = "https://registry.npmjs.org/@babel/helper-builder-react-jsx-experimental/-/helper-builder-react-jsx-experimental-7.9.0.tgz";
+        sha512 = "3xJEiyuYU4Q/Ar9BsHisgdxZsRlsShMe90URZ0e6przL26CCs8NJbDoxH94kKT17PcxlMhsCAwZd90evCo26VQ==";
       };
     };
     "@babel/helper-compilation-targets-7.8.7" = {
@@ -427,13 +427,13 @@ let
         sha512 = "R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg==";
       };
     };
-    "@babel/helper-module-transforms-7.8.6" = {
+    "@babel/helper-module-transforms-7.9.0" = {
       name = "_at_babel_slash_helper-module-transforms";
       packageName = "@babel/helper-module-transforms";
-      version = "7.8.6";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.8.6.tgz";
-        sha512 = "RDnGJSR5EFBJjG3deY0NiL0K9TO8SXxS9n/MPsbPK/s9LbQymuLNtlzvDiNS7IpecuL45cMeLVkA+HfmlrnkRg==";
+        url = "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz";
+        sha512 = "0FvKyu0gpPfIQ8EkxlrAydOWROdHpBmiCiRwLkUiBGhCUPRRbVD2/tm3sFr/c/GWFrQ/ffutGUAnx7V0FzT2wA==";
       };
     };
     "@babel/helper-optimise-call-expression-7.8.3" = {
@@ -499,6 +499,15 @@ let
         sha512 = "3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==";
       };
     };
+    "@babel/helper-validator-identifier-7.9.0" = {
+      name = "_at_babel_slash_helper-validator-identifier";
+      packageName = "@babel/helper-validator-identifier";
+      version = "7.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz";
+        sha512 = "6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw==";
+      };
+    };
     "@babel/helper-wrap-function-7.8.3" = {
       name = "_at_babel_slash_helper-wrap-function";
       packageName = "@babel/helper-wrap-function";
@@ -508,31 +517,31 @@ let
         sha512 = "LACJrbUET9cQDzb6kG7EeD7+7doC3JNvUgTEQOx2qaO1fKlzE/Bf05qs9w1oXQMmXlPO65lC3Tq9S6gZpTErEQ==";
       };
     };
-    "@babel/helpers-7.8.4" = {
+    "@babel/helpers-7.9.2" = {
       name = "_at_babel_slash_helpers";
       packageName = "@babel/helpers";
-      version = "7.8.4";
+      version = "7.9.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.4.tgz";
-        sha512 = "VPbe7wcQ4chu4TDQjimHv/5tj73qz88o12EPkO2ValS2QiQS/1F2SsjyIGNnAD0vF/nZS6Cf9i+vW6HIlnaR8w==";
+        url = "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.2.tgz";
+        sha512 = "JwLvzlXVPjO8eU9c/wF9/zOIN7X6h8DYf7mG4CiFRZRvZNKEF5dQ3H3V+ASkHoIB3mWhatgl5ONhyqHRI6MppA==";
       };
     };
-    "@babel/highlight-7.8.3" = {
+    "@babel/highlight-7.9.0" = {
       name = "_at_babel_slash_highlight";
       packageName = "@babel/highlight";
-      version = "7.8.3";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz";
-        sha512 = "PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==";
+        url = "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz";
+        sha512 = "lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==";
       };
     };
-    "@babel/parser-7.8.8" = {
+    "@babel/parser-7.9.4" = {
       name = "_at_babel_slash_parser";
       packageName = "@babel/parser";
-      version = "7.8.8";
+      version = "7.9.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.8.8.tgz";
-        sha512 = "mO5GWzBPsPf6865iIbzNE0AvkKF3NE+2S3eRUpE+FE07BOAkXh6G+GW/Pj01hhXjve1WScbaIO4UlY1JKeqCcA==";
+        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz";
+        sha512 = "bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==";
       };
     };
     "@babel/plugin-external-helpers-7.8.3" = {
@@ -589,13 +598,22 @@ let
         sha512 = "TS9MlfzXpXKt6YYomudb/KU7nQI6/xnapG6in1uZxoxDghuSMZsPb6D2fyUwNYSAp4l1iR7QtFOjkqcRYcUsfw==";
       };
     };
-    "@babel/plugin-proposal-object-rest-spread-7.8.3" = {
+    "@babel/plugin-proposal-numeric-separator-7.8.3" = {
+      name = "_at_babel_slash_plugin-proposal-numeric-separator";
+      packageName = "@babel/plugin-proposal-numeric-separator";
+      version = "7.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.8.3.tgz";
+        sha512 = "jWioO1s6R/R+wEHizfaScNsAx+xKgwTLNXSh7tTC4Usj3ItsPEhYkEpU4h+lpnBwq7NBVOJXfO6cRFYcX69JUQ==";
+      };
+    };
+    "@babel/plugin-proposal-object-rest-spread-7.9.0" = {
       name = "_at_babel_slash_plugin-proposal-object-rest-spread";
       packageName = "@babel/plugin-proposal-object-rest-spread";
-      version = "7.8.3";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.8.3.tgz";
-        sha512 = "8qvuPwU/xxUCt78HocNlv0mXXo0wdh9VT1R04WU8HGOfaOob26pF+9P5/lYjN/q7DHOX1bvX60hnhOvuQUJdbA==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.9.0.tgz";
+        sha512 = "UgqBv6bjq4fDb8uku9f+wcm1J7YxJ5nT7WO/jBr0cl0PLKb7t1O6RNR1kZbjgx2LQtsDI9hwoQVmn0yhXeQyow==";
       };
     };
     "@babel/plugin-proposal-optional-catch-binding-7.8.3" = {
@@ -607,13 +625,13 @@ let
         sha512 = "0gkX7J7E+AtAw9fcwlVQj8peP61qhdg/89D5swOkjYbkboA2CVckn3kiyum1DE0wskGb7KJJxBdyEBApDLLVdw==";
       };
     };
-    "@babel/plugin-proposal-optional-chaining-7.8.3" = {
+    "@babel/plugin-proposal-optional-chaining-7.9.0" = {
       name = "_at_babel_slash_plugin-proposal-optional-chaining";
       packageName = "@babel/plugin-proposal-optional-chaining";
-      version = "7.8.3";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.8.3.tgz";
-        sha512 = "QIoIR9abkVn+seDE3OjA08jWcs3eZ9+wJCKSRgo3WdEU2csFYgdScb+8qHB3+WXsGJD55u+5hWCISI7ejXS+kg==";
+        url = "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.9.0.tgz";
+        sha512 = "NDn5tu3tcv4W30jNhmc2hyD5c56G6cXx4TesJubhxrJeCvuuMpttxr0OnNCqbZGhFjLrg+NIhxxC+BK5F6yS3w==";
       };
     };
     "@babel/plugin-proposal-unicode-property-regex-7.8.8" = {
@@ -688,6 +706,15 @@ let
         sha512 = "aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==";
       };
     };
+    "@babel/plugin-syntax-numeric-separator-7.8.3" = {
+      name = "_at_babel_slash_plugin-syntax-numeric-separator";
+      packageName = "@babel/plugin-syntax-numeric-separator";
+      version = "7.8.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.8.3.tgz";
+        sha512 = "H7dCMAdN83PcCmqmkHB5dtp+Xa9a6LKSvA2hiFBC/5alSHxM5VgWZXFqDi0YFe8XNGT6iCa+z4V4zSt/PdZ7Dw==";
+      };
+    };
     "@babel/plugin-syntax-object-rest-spread-7.8.3" = {
       name = "_at_babel_slash_plugin-syntax-object-rest-spread";
       packageName = "@babel/plugin-syntax-object-rest-spread";
@@ -769,13 +796,13 @@ let
         sha512 = "pGnYfm7RNRgYRi7bids5bHluENHqJhrV4bCZRwc5GamaWIIs07N4rZECcmJL6ZClwjDz1GbdMZFtPs27hTB06w==";
       };
     };
-    "@babel/plugin-transform-classes-7.8.6" = {
+    "@babel/plugin-transform-classes-7.9.2" = {
       name = "_at_babel_slash_plugin-transform-classes";
       packageName = "@babel/plugin-transform-classes";
-      version = "7.8.6";
+      version = "7.9.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.8.6.tgz";
-        sha512 = "k9r8qRay/R6v5aWZkrEclEhKO6mc1CCQr2dLsVHBmOQiMpN6I2bpjX3vgnldUWeEI1GHVNByULVxZ4BdP4Hmdg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.9.2.tgz";
+        sha512 = "TC2p3bPzsfvSsqBZo0kJnuelnoK9O3welkUpqSqBQuBF6R5MN2rysopri8kNvtlGIb2jmUO7i15IooAZJjZuMQ==";
       };
     };
     "@babel/plugin-transform-computed-properties-7.8.3" = {
@@ -823,22 +850,22 @@ let
         sha512 = "zwIpuIymb3ACcInbksHaNcR12S++0MDLKkiqXHl3AzpgdKlFNhog+z/K0+TGW+b0w5pgTq4H6IwV/WhxbGYSjQ==";
       };
     };
-    "@babel/plugin-transform-flow-strip-types-7.8.3" = {
+    "@babel/plugin-transform-flow-strip-types-7.9.0" = {
       name = "_at_babel_slash_plugin-transform-flow-strip-types";
       packageName = "@babel/plugin-transform-flow-strip-types";
-      version = "7.8.3";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.8.3.tgz";
-        sha512 = "g/6WTWG/xbdd2exBBzMfygjX/zw4eyNC4X8pRaq7aRHRoDUCzAIu3kGYIXviOv8BjCuWm8vDBwjHcjiRNgXrPA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.9.0.tgz";
+        sha512 = "7Qfg0lKQhEHs93FChxVLAvhBshOPQDtJUTVHr/ZwQNRccCm4O9D79r9tVSoV8iNwjP1YgfD+e/fgHcPkN1qEQg==";
       };
     };
-    "@babel/plugin-transform-for-of-7.8.6" = {
+    "@babel/plugin-transform-for-of-7.9.0" = {
       name = "_at_babel_slash_plugin-transform-for-of";
       packageName = "@babel/plugin-transform-for-of";
-      version = "7.8.6";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.8.6.tgz";
-        sha512 = "M0pw4/1/KI5WAxPsdcUL/w2LJ7o89YHN3yLkzNjg7Yl15GlVGgzHyCU+FMeAxevHGsLVmUqbirlUIKTafPmzdw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.9.0.tgz";
+        sha512 = "lTAnWOpMwOXpyDx06N+ywmF3jNbafZEqZ96CGYabxHrxNX8l5ny7dt4bK/rGwAh9utyP2b2Hv7PlZh1AAS54FQ==";
       };
     };
     "@babel/plugin-transform-function-name-7.8.3" = {
@@ -868,40 +895,40 @@ let
         sha512 = "3Wk2EXhnw+rP+IDkK6BdtPKsUE5IeZ6QOGrPYvw52NwBStw9V1ZVzxgK6fSKSxqUvH9eQPR3tm3cOq79HlsKYA==";
       };
     };
-    "@babel/plugin-transform-modules-amd-7.8.3" = {
+    "@babel/plugin-transform-modules-amd-7.9.0" = {
       name = "_at_babel_slash_plugin-transform-modules-amd";
       packageName = "@babel/plugin-transform-modules-amd";
-      version = "7.8.3";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.8.3.tgz";
-        sha512 = "MadJiU3rLKclzT5kBH4yxdry96odTUwuqrZM+GllFI/VhxfPz+k9MshJM+MwhfkCdxxclSbSBbUGciBngR+kEQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.9.0.tgz";
+        sha512 = "vZgDDF003B14O8zJy0XXLnPH4sg+9X5hFBBGN1V+B2rgrB+J2xIypSN6Rk9imB2hSTHQi5OHLrFWsZab1GMk+Q==";
       };
     };
-    "@babel/plugin-transform-modules-commonjs-7.8.3" = {
+    "@babel/plugin-transform-modules-commonjs-7.9.0" = {
       name = "_at_babel_slash_plugin-transform-modules-commonjs";
       packageName = "@babel/plugin-transform-modules-commonjs";
-      version = "7.8.3";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.8.3.tgz";
-        sha512 = "JpdMEfA15HZ/1gNuB9XEDlZM1h/gF/YOH7zaZzQu2xCFRfwc01NXBMHHSTT6hRjlXJJs5x/bfODM3LiCk94Sxg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.9.0.tgz";
+        sha512 = "qzlCrLnKqio4SlgJ6FMMLBe4bySNis8DFn1VkGmOcxG9gqEyPIOzeQrA//u0HAKrWpJlpZbZMPB1n/OPa4+n8g==";
       };
     };
-    "@babel/plugin-transform-modules-systemjs-7.8.3" = {
+    "@babel/plugin-transform-modules-systemjs-7.9.0" = {
       name = "_at_babel_slash_plugin-transform-modules-systemjs";
       packageName = "@babel/plugin-transform-modules-systemjs";
-      version = "7.8.3";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.8.3.tgz";
-        sha512 = "8cESMCJjmArMYqa9AO5YuMEkE4ds28tMpZcGZB/jl3n0ZzlsxOAi3mC+SKypTfT8gjMupCnd3YiXCkMjj2jfOg==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.9.0.tgz";
+        sha512 = "FsiAv/nao/ud2ZWy4wFacoLOm5uxl0ExSQ7ErvP7jpoihLR6Cq90ilOFyX9UXct3rbtKsAiZ9kFt5XGfPe/5SQ==";
       };
     };
-    "@babel/plugin-transform-modules-umd-7.8.3" = {
+    "@babel/plugin-transform-modules-umd-7.9.0" = {
       name = "_at_babel_slash_plugin-transform-modules-umd";
       packageName = "@babel/plugin-transform-modules-umd";
-      version = "7.8.3";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.8.3.tgz";
-        sha512 = "evhTyWhbwbI3/U6dZAnx/ePoV7H6OUG+OjiJFHmhr9FPn0VShjwC2kdxqIuQ/+1P50TMrneGzMeyMTFOjKSnAw==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.9.0.tgz";
+        sha512 = "uTWkXkIVtg/JGRSIABdBoMsoIeoHQHPTL0Y2E7xf5Oj7sLqwVsNXOkNk0VJc7vF0IMBsPeikHxFjGe+qmwPtTQ==";
       };
     };
     "@babel/plugin-transform-named-capturing-groups-regex-7.8.3" = {
@@ -931,13 +958,13 @@ let
         sha512 = "57FXk+gItG/GejofIyLIgBKTas4+pEU47IXKDBWFTxdPd7F80H8zybyAY7UoblVfBhBGs2EKM+bJUu2+iUYPDQ==";
       };
     };
-    "@babel/plugin-transform-parameters-7.8.8" = {
+    "@babel/plugin-transform-parameters-7.9.3" = {
       name = "_at_babel_slash_plugin-transform-parameters";
       packageName = "@babel/plugin-transform-parameters";
-      version = "7.8.8";
+      version = "7.9.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.8.8.tgz";
-        sha512 = "hC4Ld/Ulpf1psQciWWwdnUspQoQco2bMzSrwU6TmzRlvoYQe4rQFy9vnCZDTlVeCQj0JPfL+1RX0V8hCJvkgBA==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.9.3.tgz";
+        sha512 = "fzrQFQhp7mIhOzmOtPiKffvCYQSK10NR8t6BBz2yPbeUHb9OLW8RZGtgDRBn8z2hGcwvKDL3vC7ojPTLNxmqEg==";
       };
     };
     "@babel/plugin-transform-property-literals-7.8.3" = {
@@ -949,13 +976,13 @@ let
         sha512 = "uGiiXAZMqEoQhRWMK17VospMZh5sXWg+dlh2soffpkAl96KAm+WZuJfa6lcELotSRmooLqg0MWdH6UUq85nmmg==";
       };
     };
-    "@babel/plugin-transform-react-jsx-7.8.3" = {
+    "@babel/plugin-transform-react-jsx-7.9.4" = {
       name = "_at_babel_slash_plugin-transform-react-jsx";
       packageName = "@babel/plugin-transform-react-jsx";
-      version = "7.8.3";
+      version = "7.9.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.8.3.tgz";
-        sha512 = "r0h+mUiyL595ikykci+fbwm9YzmuOrUBi0b+FDIKmi3fPQyFokWVEMJnRWHJPPQEjyFJyna9WZC6Viv6UHSv1g==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.9.4.tgz";
+        sha512 = "Mjqf3pZBNLt854CK0C/kRuXAnE6H/bo7xYojP+WGtX8glDGSibcwnsWwhwoSuRg0+EBnxPC1ouVnuetUIlPSAw==";
       };
     };
     "@babel/plugin-transform-regenerator-7.8.7" = {
@@ -976,13 +1003,13 @@ let
         sha512 = "mwMxcycN3omKFDjDQUl+8zyMsBfjRFr0Zn/64I41pmjv4NJuqcYlEtezwYtw9TFd9WR1vN5kiM+O0gMZzO6L0A==";
       };
     };
-    "@babel/plugin-transform-runtime-7.8.3" = {
+    "@babel/plugin-transform-runtime-7.9.0" = {
       name = "_at_babel_slash_plugin-transform-runtime";
       packageName = "@babel/plugin-transform-runtime";
-      version = "7.8.3";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.8.3.tgz";
-        sha512 = "/vqUt5Yh+cgPZXXjmaG9NT8aVfThKk7G4OqkVhrXqwsC5soMn/qTCxs36rZ2QFhpfTJcjw4SNDIZ4RUb8OL4jQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.9.0.tgz";
+        sha512 = "pUu9VSf3kI1OqbWINQ7MaugnitRss1z533436waNXp+0N3ur3zfut37sXiQMxkuCF4VUjwZucen/quskCh7NHw==";
       };
     };
     "@babel/plugin-transform-shorthand-properties-7.8.3" = {
@@ -1030,13 +1057,13 @@ let
         sha512 = "2QKyfjGdvuNfHsb7qnBBlKclbD4CfshH2KvDabiijLMGXPHJXGxtDzwIF7bQP+T0ysw8fYTtxPafgfs/c1Lrqg==";
       };
     };
-    "@babel/plugin-transform-typescript-7.8.7" = {
+    "@babel/plugin-transform-typescript-7.9.4" = {
       name = "_at_babel_slash_plugin-transform-typescript";
       packageName = "@babel/plugin-transform-typescript";
-      version = "7.8.7";
+      version = "7.9.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.8.7.tgz";
-        sha512 = "7O0UsPQVNKqpHeHLpfvOG4uXmlw+MOxYvUv6Otc9uH5SYMIxvF6eBdjkWvC3f9G+VXe0RsNExyAQBeTRug/wqQ==";
+        url = "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.9.4.tgz";
+        sha512 = "yeWeUkKx2auDbSxRe8MusAG+n4m9BFY/v+lPjmQDgOFX5qnySkUY5oXzkp6FwPdsYqnKay6lorXYdC0n3bZO7w==";
       };
     };
     "@babel/plugin-transform-unicode-regex-7.8.3" = {
@@ -1057,22 +1084,31 @@ let
         sha512 = "/TS23MVvo34dFmf8mwCisCbWGrfhbiWZSwBo6HkADTBhUa2Q/jWltyY/tpofz/b6/RIhqaqQcquptCirqIhOaQ==";
       };
     };
-    "@babel/preset-env-7.8.7" = {
+    "@babel/preset-env-7.9.0" = {
       name = "_at_babel_slash_preset-env";
       packageName = "@babel/preset-env";
-      version = "7.8.7";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.8.7.tgz";
-        sha512 = "BYftCVOdAYJk5ASsznKAUl53EMhfBbr8CJ1X+AJLfGPscQkwJFiaV/Wn9DPH/7fzm2v6iRYJKYHSqyynTGw0nw==";
+        url = "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.9.0.tgz";
+        sha512 = "712DeRXT6dyKAM/FMbQTV/FvRCms2hPCx+3weRjZ8iQVQWZejWWk1wwG6ViWMyqb/ouBbGOl5b6aCk0+j1NmsQ==";
       };
     };
-    "@babel/preset-flow-7.8.3" = {
+    "@babel/preset-flow-7.9.0" = {
       name = "_at_babel_slash_preset-flow";
       packageName = "@babel/preset-flow";
-      version = "7.8.3";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/preset-flow/-/preset-flow-7.8.3.tgz";
-        sha512 = "iCXFk+T4demnq+dNLLvlGOgvYF6sPZ/hS1EmswugOqh1Ysp2vuiqJzpgsnp5rW8+6dLJT/0CXDzye28ZH6BAfQ==";
+        url = "https://registry.npmjs.org/@babel/preset-flow/-/preset-flow-7.9.0.tgz";
+        sha512 = "88uSmlshIrlmPkNkEcx3UpSZ6b8n0UGBq0/0ZMZCF/uxAW0XIAUuDHBhIOAh0pvweafH4RxOwi/H3rWhtqOYPA==";
+      };
+    };
+    "@babel/preset-modules-0.1.3" = {
+      name = "_at_babel_slash_preset-modules";
+      packageName = "@babel/preset-modules";
+      version = "0.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz";
+        sha512 = "Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg==";
       };
     };
     "@babel/preset-stage-2-7.8.3" = {
@@ -1084,22 +1120,22 @@ let
         sha512 = "dStnEQgejNYIHFNACdDCigK4BF7wgW6Zahv9Dc2un7rGjbeVtZhBfR3sy0I7ZJOhBexkFxVdMZ5hqmll7BFShw==";
       };
     };
-    "@babel/preset-typescript-7.8.3" = {
+    "@babel/preset-typescript-7.9.0" = {
       name = "_at_babel_slash_preset-typescript";
       packageName = "@babel/preset-typescript";
-      version = "7.8.3";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.8.3.tgz";
-        sha512 = "qee5LgPGui9zQ0jR1TeU5/fP9L+ovoArklEqY12ek8P/wV5ZeM/VYSQYwICeoT6FfpJTekG9Ilay5PhwsOpMHA==";
+        url = "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.9.0.tgz";
+        sha512 = "S4cueFnGrIbvYJgwsVFKdvOmpiL0XGw9MFW9D0vgRys5g36PBhZRL8NX8Gr2akz8XRtzq6HuDXPD/1nniagNUg==";
       };
     };
-    "@babel/register-7.8.6" = {
+    "@babel/register-7.9.0" = {
       name = "_at_babel_slash_register";
       packageName = "@babel/register";
-      version = "7.8.6";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/register/-/register-7.8.6.tgz";
-        sha512 = "7IDO93fuRsbyml7bAafBQb3RcBGlCpU4hh5wADA2LJEEcYk92WkwFZ0pHyIi2fb5Auoz1714abETdZKCOxN0CQ==";
+        url = "https://registry.npmjs.org/@babel/register/-/register-7.9.0.tgz";
+        sha512 = "Tv8Zyi2J2VRR8g7pC5gTeIN8Ihultbmk0ocyNz8H2nEZbmhp1N6q0A1UGsQbDvGP/sNinQKUHf3SqXwqjtFv4Q==";
       };
     };
     "@babel/runtime-7.7.7" = {
@@ -1111,22 +1147,22 @@ let
         sha512 = "uCnC2JEVAu8AKB5do1WRIsvrdJ0flYx/A/9f/6chdacnEZ7LmavjdsDXr5ksYBegxtuTPR5Va9/+13QF/kFkCA==";
       };
     };
-    "@babel/runtime-7.8.7" = {
+    "@babel/runtime-7.9.2" = {
       name = "_at_babel_slash_runtime";
       packageName = "@babel/runtime";
-      version = "7.8.7";
+      version = "7.9.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.7.tgz";
-        sha512 = "+AATMUFppJDw6aiR5NVPHqIQBlV/Pj8wY/EZH+lmvRdUo9xBaz/rF3alAwFJQavvKfeOlPE7oaaDHVbcySbCsg==";
+        url = "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.2.tgz";
+        sha512 = "NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==";
       };
     };
-    "@babel/runtime-corejs3-7.8.7" = {
+    "@babel/runtime-corejs3-7.9.2" = {
       name = "_at_babel_slash_runtime-corejs3";
       packageName = "@babel/runtime-corejs3";
-      version = "7.8.7";
+      version = "7.9.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.8.7.tgz";
-        sha512 = "sc7A+H4I8kTd7S61dgB9RomXu/C+F4IrRr4Ytze4dnfx7AXEpCrejSNpjx7vq6y/Bak9S6Kbk65a/WgMLtg43Q==";
+        url = "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.9.2.tgz";
+        sha512 = "HHxmgxbIzOfFlZ+tdeRKtaxWOMUoCG5Mu3wKeUmOxjYrwb3AAHgnmtCUbPPK11/raIWLIBK250t8E2BPO0p7jA==";
       };
     };
     "@babel/template-7.8.6" = {
@@ -1138,13 +1174,13 @@ let
         sha512 = "zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==";
       };
     };
-    "@babel/traverse-7.8.6" = {
+    "@babel/traverse-7.9.0" = {
       name = "_at_babel_slash_traverse";
       packageName = "@babel/traverse";
-      version = "7.8.6";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.6.tgz";
-        sha512 = "2B8l0db/DPi8iinITKuo7cbPznLCEk0kCxDoB9/N6gGNg/gxOXiR/IcymAFPiBwk5w6TtQ27w4wpElgp9btR9A==";
+        url = "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.0.tgz";
+        sha512 = "jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w==";
       };
     };
     "@babel/types-7.0.0-beta.38" = {
@@ -1165,13 +1201,13 @@ let
         sha512 = "wqz7pgWMIrht3gquyEFPVXeXCti72Rm8ep9b5tQKz9Yg9LzJA3HxosF1SB3Kc81KD1A3XBkkVYtJvCKS2Z/QrA==";
       };
     };
-    "@babel/types-7.8.7" = {
+    "@babel/types-7.9.0" = {
       name = "_at_babel_slash_types";
       packageName = "@babel/types";
-      version = "7.8.7";
+      version = "7.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/types/-/types-7.8.7.tgz";
-        sha512 = "k2TreEHxFA4CjGkL+GYjRyx35W0Mr7DP5+9q6WMkyKXB+904bYmG40syjMFV0oLlhhFCwWl0vA0DyzTDkwAiJw==";
+        url = "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz";
+        sha512 = "BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==";
       };
     };
     "@chemzqm/neovim-5.1.9" = {
@@ -2587,22 +2623,22 @@ let
         sha512 = "MI4Xx6LHs4Webyvi6EbspgyAb4D2Q2VtnCQ1blOJcoLS6mVa8lNN2rkIy1CVxfTUpoyIbCTkXES1rLXztFD1lg==";
       };
     };
-    "@schematics/angular-9.0.6" = {
+    "@schematics/angular-9.0.7" = {
       name = "_at_schematics_slash_angular";
       packageName = "@schematics/angular";
-      version = "9.0.6";
+      version = "9.0.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@schematics/angular/-/angular-9.0.6.tgz";
-        sha512 = "oYIfSJF9ISAJWJjIiUnj8Rp1m4t9T3oqKl1FzkMWXvUmR1BfkO2S2/Moi2RQ0aHG6D9Oz4CJjrsQRmjaqBpEZw==";
+        url = "https://registry.npmjs.org/@schematics/angular/-/angular-9.0.7.tgz";
+        sha512 = "3UCeexYx/YVo3kboyPZ8KgqBTduMA18AAm3s2yrC0qj41fBFVVZAZLa74uouTf4RYVgy9kR7J3uv6VLxrJPOnQ==";
       };
     };
-    "@schematics/update-0.900.6" = {
+    "@schematics/update-0.900.7" = {
       name = "_at_schematics_slash_update";
       packageName = "@schematics/update";
-      version = "0.900.6";
+      version = "0.900.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@schematics/update/-/update-0.900.6.tgz";
-        sha512 = "54Xi3FIJQWFBM91vxD9ciKkTlNWaIV7wsjKSImg53h2m2/l2VPPHyIZWI4j79dWXlfJVTNeaqPNYGzJlRvaEmA==";
+        url = "https://registry.npmjs.org/@schematics/update/-/update-0.900.7.tgz";
+        sha512 = "e9tX2DGNYfj/k9mVICpQt2bWIYyD92dlsip7LzPeZGt+R9zCp5w19uBLa8Z00OgEGzFR1krhRvkQE5OxkkAnVw==";
       };
     };
     "@serverless/cli-1.4.0" = {
@@ -2641,13 +2677,13 @@ let
         sha512 = "PY7gH+7aQ+MltcUD7SRDuQODJ9Sav9HhFJsgOiyf8IVo7XVD6FxZIsSnpMI6paSkptOB7n+0Jz03gNlEkKetQQ==";
       };
     };
-    "@serverless/enterprise-plugin-3.5.0" = {
+    "@serverless/enterprise-plugin-3.6.0" = {
       name = "_at_serverless_slash_enterprise-plugin";
       packageName = "@serverless/enterprise-plugin";
-      version = "3.5.0";
+      version = "3.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@serverless/enterprise-plugin/-/enterprise-plugin-3.5.0.tgz";
-        sha512 = "AyY7ADtUItSQFQjNRaXZ5ZgMVeeUJZ05UJHxN3WbO9c3fY6/6TxAQRlrDB2O5hfSPkBDfqhUOSp2xbBwIVg/Tw==";
+        url = "https://registry.npmjs.org/@serverless/enterprise-plugin/-/enterprise-plugin-3.6.0.tgz";
+        sha512 = "nOefmzh6fz1vY9tfUzDNYVyg1jlsOVdmbp3JVMZMsMhIKQvBpGZYcaAboSyU97pIOFYUlsSBVQsc57IuLsIeiQ==";
       };
     };
     "@serverless/event-mocks-1.1.1" = {
@@ -2839,6 +2875,15 @@ let
         sha512 = "dlled3mfpnAt3cQb5hxkFiqfPCj4Yk0xV8Yl5P8PeVv1pUmO7vI4Ka4Mjs4r6CYM5f9kZhviFPQQcWOIDlMRcw==";
       };
     };
+    "@sorg/log-2.1.0" = {
+      name = "_at_sorg_slash_log";
+      packageName = "@sorg/log";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@sorg/log/-/log-2.1.0.tgz";
+        sha512 = "weyuceH7eLZGlQLwA9+c2vxCWtWLe0vt4ma9qHzvB7aIbEZkAUXsONytEza6vNq2hIeL3/lRFRoGeiuBbnFfaA==";
+      };
+    };
     "@starptech/expression-parser-0.10.0" = {
       name = "_at_starptech_slash_expression-parser";
       packageName = "@starptech/expression-parser";
@@ -2848,15 +2893,6 @@ let
         sha512 = "HcNE5lqbBd0CNMArErVboWZ9PyJ8Hqp0VGnLJXkA3e38r6/VjhFa2pcsoJQGQiiuHj6napSMr3s+Gc34WUGhzw==";
       };
     };
-    "@starptech/expression-parser-0.9.0" = {
-      name = "_at_starptech_slash_expression-parser";
-      packageName = "@starptech/expression-parser";
-      version = "0.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@starptech/expression-parser/-/expression-parser-0.9.0.tgz";
-        sha512 = "a4CFSYZ3klnflR/rkvN87T2r/n+RxfMhDaZlrWYBaCHcbPhX+2THWyKAn82vT6Ari3SPp3XOsTqUZK4Vx2qcTA==";
-      };
-    };
     "@starptech/hast-util-from-webparser-0.10.0" = {
       name = "_at_starptech_slash_hast-util-from-webparser";
       packageName = "@starptech/hast-util-from-webparser";
@@ -2866,15 +2902,6 @@ let
         sha512 = "ebBrqxnkk4uhOkYXi0EMsHLrUrpGUjAMGz++04HPZmZYfpEZjaHxF3VmhfTWnS6u8SGUtsDPMQ+RxHSvrsNxZg==";
       };
     };
-    "@starptech/hast-util-from-webparser-0.9.0" = {
-      name = "_at_starptech_slash_hast-util-from-webparser";
-      packageName = "@starptech/hast-util-from-webparser";
-      version = "0.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@starptech/hast-util-from-webparser/-/hast-util-from-webparser-0.9.0.tgz";
-        sha512 = "evqGr0KOXB27vu/KiNv6gmd/ggygzwYvINVsCWF6GAd1SFQNS4Vz2wv4tmiktX6rcr6Qq+jBwVXvVwe60d5Z3g==";
-      };
-    };
     "@starptech/prettyhtml-0.10.0" = {
       name = "_at_starptech_slash_prettyhtml";
       packageName = "@starptech/prettyhtml";
@@ -2884,15 +2911,6 @@ let
         sha512 = "d79qc81gX5oyiv0Ioz82NEMnO/waltC7HAOlZ8r/es/zPuRilWMRo5ZCV00/80ZsQ0MiCIuhAnvUcg7rVzFDLg==";
       };
     };
-    "@starptech/prettyhtml-0.9.0" = {
-      name = "_at_starptech_slash_prettyhtml";
-      packageName = "@starptech/prettyhtml";
-      version = "0.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@starptech/prettyhtml/-/prettyhtml-0.9.0.tgz";
-        sha512 = "GekZtpBSdlFo732AxrpO7W8ue1dEZdpMK0kNHD/NVDBNU/50/D0NJ72FD2HKLh0Aune9uK+x8b+9MbBFJ2JT9A==";
-      };
-    };
     "@starptech/prettyhtml-formatter-0.10.0" = {
       name = "_at_starptech_slash_prettyhtml-formatter";
       packageName = "@starptech/prettyhtml-formatter";
@@ -2902,15 +2920,6 @@ let
         sha512 = "AEpBQTRHhgB9NmQZNXINo/ObavGLATEvS41MgiJljsiSHzfUX3ltOPLI2fy9VfDB3E76mjUqIfmEQ/v5lJ5Cfw==";
       };
     };
-    "@starptech/prettyhtml-formatter-0.9.0" = {
-      name = "_at_starptech_slash_prettyhtml-formatter";
-      packageName = "@starptech/prettyhtml-formatter";
-      version = "0.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@starptech/prettyhtml-formatter/-/prettyhtml-formatter-0.9.0.tgz";
-        sha512 = "uyG90dzyERExzQg7VTYJm3uBs6hIW81MDvqACgiFgmaafTrveKebJxAZpkbkAgTesvNmApM2I0b5Tu4OKHmaKQ==";
-      };
-    };
     "@starptech/prettyhtml-hast-to-html-0.10.0" = {
       name = "_at_starptech_slash_prettyhtml-hast-to-html";
       packageName = "@starptech/prettyhtml-hast-to-html";
@@ -2920,15 +2929,6 @@ let
         sha512 = "TAbm1q6bCBl13i8FbY/1eHMnTHWr/kLM5RcOD1S6F3T12DwhMwcqagMzqPQc4tT1DmyLzGWY8SA/p3HrB0iPcg==";
       };
     };
-    "@starptech/prettyhtml-hast-to-html-0.9.0" = {
-      name = "_at_starptech_slash_prettyhtml-hast-to-html";
-      packageName = "@starptech/prettyhtml-hast-to-html";
-      version = "0.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@starptech/prettyhtml-hast-to-html/-/prettyhtml-hast-to-html-0.9.0.tgz";
-        sha512 = "PcMRqtwXBDsliBC6nesNlDaO0a4uqC2uwfqbz/1VRaFVEInudMQ00fbRjv3Fql5C2YZ1MObMwre/+W7UDuzcIw==";
-      };
-    };
     "@starptech/prettyhtml-hastscript-0.10.0" = {
       name = "_at_starptech_slash_prettyhtml-hastscript";
       packageName = "@starptech/prettyhtml-hastscript";
@@ -2938,15 +2938,6 @@ let
         sha512 = "oSZB/CXRagbJ1UAGihSsdDcvHIGa+ivdVVmljWtJDqO5+FfFn9utzCw/QI9NAV3m9cgFWRdW/6TkXwbdPrIQ4A==";
       };
     };
-    "@starptech/prettyhtml-hastscript-0.9.0" = {
-      name = "_at_starptech_slash_prettyhtml-hastscript";
-      packageName = "@starptech/prettyhtml-hastscript";
-      version = "0.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@starptech/prettyhtml-hastscript/-/prettyhtml-hastscript-0.9.0.tgz";
-        sha512 = "ifXB3oqZl5LMMaFuQvfUYF0e+XdGDeQoIzFQYdA59cJ+RgjGdsjgFMmvkW+kxZwMWRYyAsLsYuJ19UfIWO8ymQ==";
-      };
-    };
     "@starptech/prettyhtml-sort-attributes-0.10.0" = {
       name = "_at_starptech_slash_prettyhtml-sort-attributes";
       packageName = "@starptech/prettyhtml-sort-attributes";
@@ -2956,15 +2947,6 @@ let
         sha512 = "ctsjmEEsxzW4dzMOIwYRWQvqfilgdGFaZn+lIxiNuPJIL4V4ZpgQhT96Us5BQcalHYQqQsKF+nRelCWFhd67IQ==";
       };
     };
-    "@starptech/prettyhtml-sort-attributes-0.9.0" = {
-      name = "_at_starptech_slash_prettyhtml-sort-attributes";
-      packageName = "@starptech/prettyhtml-sort-attributes";
-      version = "0.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@starptech/prettyhtml-sort-attributes/-/prettyhtml-sort-attributes-0.9.0.tgz";
-        sha512 = "jj4btXkDU0dnY8llM6Cv+6arqVIjfaHhrfLnaaiVdLLb02f1eazMIr8+4jfK0Dol4Bfg3AC3RIYAyu2Kd7FF6g==";
-      };
-    };
     "@starptech/rehype-minify-whitespace-0.10.0" = {
       name = "_at_starptech_slash_rehype-minify-whitespace";
       packageName = "@starptech/rehype-minify-whitespace";
@@ -2974,15 +2956,6 @@ let
         sha512 = "11k2dW0ju2hMuSfQ9znXqeCjyBtkfY7BRoyPjDLiVCsGIlqM2JpZhx46sFTF3JJOsJz9pr2HQ8Cvf4oTt9hgvg==";
       };
     };
-    "@starptech/rehype-minify-whitespace-0.9.0" = {
-      name = "_at_starptech_slash_rehype-minify-whitespace";
-      packageName = "@starptech/rehype-minify-whitespace";
-      version = "0.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@starptech/rehype-minify-whitespace/-/rehype-minify-whitespace-0.9.0.tgz";
-        sha512 = "z4CL6TCdHyXVZGU6I632Un5g2MmIsYhnsYVerAW4DKf3Zyc5Nam2U+wVdbE2nLqTInDUpUr4vmzksD8tHsY9Ew==";
-      };
-    };
     "@starptech/rehype-webparser-0.10.0" = {
       name = "_at_starptech_slash_rehype-webparser";
       packageName = "@starptech/rehype-webparser";
@@ -2992,15 +2965,6 @@ let
         sha512 = "1CPMVKrgXjKnehAouQBa2wWkikR6jD+BZ+8/v1RDH1S1a293fOzItU63W3VIx4zv3n0iMgrTWeeyfpk/9cT4LQ==";
       };
     };
-    "@starptech/rehype-webparser-0.9.0" = {
-      name = "_at_starptech_slash_rehype-webparser";
-      packageName = "@starptech/rehype-webparser";
-      version = "0.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@starptech/rehype-webparser/-/rehype-webparser-0.9.0.tgz";
-        sha512 = "Ndv/excuCjdRIUWtzD5YQMvuZudMvjtYmNhLllzYEzMq6+nkPrhaORuUNihDG1SYZI260CXV1khDTGqPc581Yg==";
-      };
-    };
     "@starptech/webparser-0.10.0" = {
       name = "_at_starptech_slash_webparser";
       packageName = "@starptech/webparser";
@@ -3010,15 +2974,6 @@ let
         sha512 = "vA/p1LTVfuK8dP+EhBglMS7ll3dZahBjnvjwUiJ8NNUCqH5pSAj3tcRtOG3k7k1Wx1hWHJpGgZVj0VNQIo99bA==";
       };
     };
-    "@starptech/webparser-0.9.0" = {
-      name = "_at_starptech_slash_webparser";
-      packageName = "@starptech/webparser";
-      version = "0.9.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@starptech/webparser/-/webparser-0.9.0.tgz";
-        sha512 = "QEC1yjpsOtj3leNCWZGirAyVCN7WJDH+rUhfMVGQuLEfoJNKK66t/UWAOrXeGxR2jdU5IffAGnqZIHbFMX6SNw==";
-      };
-    };
     "@szmarczak/http-timer-1.1.2" = {
       name = "_at_szmarczak_slash_http-timer";
       packageName = "@szmarczak/http-timer";
@@ -3352,13 +3307,13 @@ let
         sha512 = "EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==";
       };
     };
-    "@types/estree-0.0.42" = {
+    "@types/estree-0.0.44" = {
       name = "_at_types_slash_estree";
       packageName = "@types/estree";
-      version = "0.0.42";
+      version = "0.0.44";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/estree/-/estree-0.0.42.tgz";
-        sha512 = "K1DPVvnBCPxzD+G51/cxVIoc2X8uUVl1zpJeE6iKcgHMj4+tbat5Xu4TjV7v2QSDbIeAfLi2hIk+u2+s0MlpUQ==";
+        url = "https://registry.npmjs.org/@types/estree/-/estree-0.0.44.tgz";
+        sha512 = "iaIVzr+w2ZJ5HkidlZ3EJM8VTZb2MJLCjw3V+505yVts0gRC4UMvjw0d1HPtGqI/HQC/KdsYtayfzl+AXY2R8g==";
       };
     };
     "@types/events-3.0.0" = {
@@ -3379,13 +3334,13 @@ let
         sha512 = "5mHFNyavtLoJmnusB8OKJ5bshSzw+qkMIBAobLrIM48HJvunFva9mOa6aBwh64lBFyNwBbs0xiEFuj4eU/NjCA==";
       };
     };
-    "@types/express-serve-static-core-4.17.2" = {
+    "@types/express-serve-static-core-4.17.3" = {
       name = "_at_types_slash_express-serve-static-core";
       packageName = "@types/express-serve-static-core";
-      version = "4.17.2";
+      version = "4.17.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.2.tgz";
-        sha512 = "El9yMpctM6tORDAiBwZVLMcxoTMcqqRO9dVyYcn7ycLWbvR8klrDn8CAOwRfZujZtWD7yS/mshTdz43jMOejbg==";
+        url = "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.3.tgz";
+        sha512 = "sHEsvEzjqN+zLbqP+8OXTipc10yH1QLR+hnr5uw29gi9AhCAAAdri8ClNV7iMdrJrIzXIQtlkPvq8tJGhj3QJQ==";
       };
     };
     "@types/fs-capacitor-2.0.0" = {
@@ -3577,13 +3532,13 @@ let
         sha512 = "gpNnRnZP3VWzzj5k3qrpRC6Rk3H/uclhAVo1aIvwzK5p5cOrs9yEyQ8H/HBsBY0u5rrWxXEiVPQ0dEB6pkjE8Q==";
       };
     };
-    "@types/node-13.9.1" = {
+    "@types/node-13.9.3" = {
       name = "_at_types_slash_node";
       packageName = "@types/node";
-      version = "13.9.1";
+      version = "13.9.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-13.9.1.tgz";
-        sha512 = "E6M6N0blf/jiZx8Q3nb0vNaswQeEyn0XlupO+xN6DtJ6r6IT4nXrTry7zhIfYvFCl3/8Cu6WIysmUBKiqV0bqQ==";
+        url = "https://registry.npmjs.org/@types/node/-/node-13.9.3.tgz";
+        sha512 = "01s+ac4qerwd6RHD+mVbOEsraDHSgUaefQlEdBbUolnQFjKwCr7luvAlEwW1RFojh67u0z4OUTjPn9LEl4zIkA==";
       };
     };
     "@types/node-6.14.9" = {
@@ -3757,6 +3712,15 @@ let
         sha512 = "FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==";
       };
     };
+    "@types/yoga-layout-1.9.1" = {
+      name = "_at_types_slash_yoga-layout";
+      packageName = "@types/yoga-layout";
+      version = "1.9.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/yoga-layout/-/yoga-layout-1.9.1.tgz";
+        sha512 = "OpfgQXWLZn5Dl7mOd8dBNcV8NywXbYYoHjUpa64vJ/RQABaxMzJ5bVicKLGIvIiMnQPtPgKNgXb5jkv9fkOQtw==";
+      };
+    };
     "@types/zen-observable-0.8.0" = {
       name = "_at_types_slash_zen-observable";
       packageName = "@types/zen-observable";
@@ -3793,6 +3757,15 @@ let
         sha512 = "b5rCmd2e6DCC6tCTN9GSUAuxdYwCM/k/2wdjHGrIRGPSJotWMCe/dGpi66u42bhuh8q3QBzqM4TMA1GUUCJvdw==";
       };
     };
+    "@typescript-eslint/typescript-estree-2.25.0" = {
+      name = "_at_typescript-eslint_slash_typescript-estree";
+      packageName = "@typescript-eslint/typescript-estree";
+      version = "2.25.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.25.0.tgz";
+        sha512 = "VUksmx5lDxSi6GfmwSK7SSoIKSw9anukWWNitQPqt58LuYrKalzsgeuignbqnB+rK/xxGlSsCy8lYnwFfB6YJg==";
+      };
+    };
     "@vue/cli-shared-utils-4.2.3" = {
       name = "_at_vue_slash_cli-shared-utils";
       packageName = "@vue/cli-shared-utils";
@@ -3838,15 +3811,6 @@ let
         sha512 = "gDrC14Ae2b4gP9vYdCzx6ytY4LuYoH3I0h0QzU9RPifGPgjXz8F3s5g9632P7Wf39vQQg6XQ0Bfv29rc5RoTmw==";
       };
     };
-    "@webassemblyjs/ast-1.8.5" = {
-      name = "_at_webassemblyjs_slash_ast";
-      packageName = "@webassemblyjs/ast";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz";
-        sha512 = "aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==";
-      };
-    };
     "@webassemblyjs/ast-1.9.0" = {
       name = "_at_webassemblyjs_slash_ast";
       packageName = "@webassemblyjs/ast";
@@ -3865,15 +3829,6 @@ let
         sha512 = "g50x4xV7o2b39pB+uppF3kibFXhb9Dl4Jj3fj18eqWPGBgabreIwQmw3B5Uc6Y7Ec7ZZJ8TrUe79swN3iBaPDQ==";
       };
     };
-    "@webassemblyjs/floating-point-hex-parser-1.8.5" = {
-      name = "_at_webassemblyjs_slash_floating-point-hex-parser";
-      packageName = "@webassemblyjs/floating-point-hex-parser";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz";
-        sha512 = "9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==";
-      };
-    };
     "@webassemblyjs/floating-point-hex-parser-1.9.0" = {
       name = "_at_webassemblyjs_slash_floating-point-hex-parser";
       packageName = "@webassemblyjs/floating-point-hex-parser";
@@ -3892,15 +3847,6 @@ let
         sha512 = "79RidFwQOl8vG+Wv1uQWfCw4JQO5XR8iQcNGKLum3oPsSG8jkuEK5ILT6NxT3MNOa+xwSd3d+YqVFB1V0/W7/w==";
       };
     };
-    "@webassemblyjs/helper-api-error-1.8.5" = {
-      name = "_at_webassemblyjs_slash_helper-api-error";
-      packageName = "@webassemblyjs/helper-api-error";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz";
-        sha512 = "Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==";
-      };
-    };
     "@webassemblyjs/helper-api-error-1.9.0" = {
       name = "_at_webassemblyjs_slash_helper-api-error";
       packageName = "@webassemblyjs/helper-api-error";
@@ -3919,13 +3865,13 @@ let
         sha512 = "ex3cnmE6V0JfCBIesxF70vsPvh/QNOfaIsL5N0lkiJjVDl65YjH/WZxLe0nTuIuvVQhZH7DdRzUm0G9g12YACg==";
       };
     };
-    "@webassemblyjs/helper-buffer-1.8.5" = {
+    "@webassemblyjs/helper-buffer-1.9.0" = {
       name = "_at_webassemblyjs_slash_helper-buffer";
       packageName = "@webassemblyjs/helper-buffer";
-      version = "1.8.5";
+      version = "1.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz";
-        sha512 = "Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz";
+        sha512 = "qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==";
       };
     };
     "@webassemblyjs/helper-code-frame-1.8.1" = {
@@ -3937,15 +3883,6 @@ let
         sha512 = "vSs2ObU/pbPXrvMqfpEUnvTcvlhwHT3ochBdekn+cv5zYR1wtmAIj+UXrmzbkBQYff/yTrZgaeqkFaT3fLLOrA==";
       };
     };
-    "@webassemblyjs/helper-code-frame-1.8.5" = {
-      name = "_at_webassemblyjs_slash_helper-code-frame";
-      packageName = "@webassemblyjs/helper-code-frame";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz";
-        sha512 = "VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==";
-      };
-    };
     "@webassemblyjs/helper-code-frame-1.9.0" = {
       name = "_at_webassemblyjs_slash_helper-code-frame";
       packageName = "@webassemblyjs/helper-code-frame";
@@ -3982,15 +3919,6 @@ let
         sha512 = "WeXD3ZkKi2wpAXqPW+COawoNb0Vcu3OGoaQv8/cL3VpTfGO85ZN30h/6CjUHLISGZtpZxQu3D7AuJmI/rlEqAw==";
       };
     };
-    "@webassemblyjs/helper-fsm-1.8.5" = {
-      name = "_at_webassemblyjs_slash_helper-fsm";
-      packageName = "@webassemblyjs/helper-fsm";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz";
-        sha512 = "kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==";
-      };
-    };
     "@webassemblyjs/helper-fsm-1.9.0" = {
       name = "_at_webassemblyjs_slash_helper-fsm";
       packageName = "@webassemblyjs/helper-fsm";
@@ -4009,15 +3937,6 @@ let
         sha512 = "657xpRy6lptA7oCIgOKQAHElsgAXliqutMPLjoEL2T5Uyp1cIDUH7axmphu7bb5U+ZUpwApnZHvdvyJYGDOxsQ==";
       };
     };
-    "@webassemblyjs/helper-module-context-1.8.5" = {
-      name = "_at_webassemblyjs_slash_helper-module-context";
-      packageName = "@webassemblyjs/helper-module-context";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz";
-        sha512 = "/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==";
-      };
-    };
     "@webassemblyjs/helper-module-context-1.9.0" = {
       name = "_at_webassemblyjs_slash_helper-module-context";
       packageName = "@webassemblyjs/helper-module-context";
@@ -4036,15 +3955,6 @@ let
         sha512 = "MDdqmxj6ea1qfHBLKVHaF2+IyWLQtw8+bvRaeZc4MtcO7dNBz/2cZZ/GCFN9kGTJVvhe37tkeCi2JAB3evoU2w==";
       };
     };
-    "@webassemblyjs/helper-wasm-bytecode-1.8.5" = {
-      name = "_at_webassemblyjs_slash_helper-wasm-bytecode";
-      packageName = "@webassemblyjs/helper-wasm-bytecode";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz";
-        sha512 = "Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==";
-      };
-    };
     "@webassemblyjs/helper-wasm-bytecode-1.9.0" = {
       name = "_at_webassemblyjs_slash_helper-wasm-bytecode";
       packageName = "@webassemblyjs/helper-wasm-bytecode";
@@ -4063,13 +3973,13 @@ let
         sha512 = "FlNdlARr+mcP8XL+wg6bXqgC+0ZwnltqXExw63e9cgK84bAdTwKnfX9k6CKg8qvK5e/d9dUmk0dkVrkyEpKx5w==";
       };
     };
-    "@webassemblyjs/helper-wasm-section-1.8.5" = {
+    "@webassemblyjs/helper-wasm-section-1.9.0" = {
       name = "_at_webassemblyjs_slash_helper-wasm-section";
       packageName = "@webassemblyjs/helper-wasm-section";
-      version = "1.8.5";
+      version = "1.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz";
-        sha512 = "VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==";
+        url = "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz";
+        sha512 = "XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==";
       };
     };
     "@webassemblyjs/ieee754-1.8.1" = {
@@ -4081,15 +3991,6 @@ let
         sha512 = "Pq3IQR3uay+rFC0qIgg6xvD+uu0a9QEWDCRihHuU9wmOBFW3Lda/ObnO0HjC7XUJ8A9h4xExaa1w5TsSk+DxIQ==";
       };
     };
-    "@webassemblyjs/ieee754-1.8.5" = {
-      name = "_at_webassemblyjs_slash_ieee754";
-      packageName = "@webassemblyjs/ieee754";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz";
-        sha512 = "aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==";
-      };
-    };
     "@webassemblyjs/ieee754-1.9.0" = {
       name = "_at_webassemblyjs_slash_ieee754";
       packageName = "@webassemblyjs/ieee754";
@@ -4108,15 +4009,6 @@ let
         sha512 = "Ir8M3hgTzFLEOKmMMH44neM6sLESfEoSCjNsOInETxbSpPY1MKOsFSAxCUaeXhjtLQfflCCdjgSsU+2veP6SGw==";
       };
     };
-    "@webassemblyjs/leb128-1.8.5" = {
-      name = "_at_webassemblyjs_slash_leb128";
-      packageName = "@webassemblyjs/leb128";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz";
-        sha512 = "plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==";
-      };
-    };
     "@webassemblyjs/leb128-1.9.0" = {
       name = "_at_webassemblyjs_slash_leb128";
       packageName = "@webassemblyjs/leb128";
@@ -4135,15 +4027,6 @@ let
         sha512 = "I5QQEb5ajQ99ARiyDrVQM/2nvyFFG0tF1TX2Ql7dOjw5GRT6P4FF+gRk7OeAUtI1CLyffUNWbIvpJz13crGSxw==";
       };
     };
-    "@webassemblyjs/utf8-1.8.5" = {
-      name = "_at_webassemblyjs_slash_utf8";
-      packageName = "@webassemblyjs/utf8";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz";
-        sha512 = "U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==";
-      };
-    };
     "@webassemblyjs/utf8-1.9.0" = {
       name = "_at_webassemblyjs_slash_utf8";
       packageName = "@webassemblyjs/utf8";
@@ -4162,13 +4045,13 @@ let
         sha512 = "ysKeFNEWX8r45OXHtH0UPkqFM5qeUd+887+KnDob6kCrryqjNNyW3Ew+fTI8u1vzg7VUXYOJqxXplRUF6cfsfA==";
       };
     };
-    "@webassemblyjs/wasm-edit-1.8.5" = {
+    "@webassemblyjs/wasm-edit-1.9.0" = {
       name = "_at_webassemblyjs_slash_wasm-edit";
       packageName = "@webassemblyjs/wasm-edit";
-      version = "1.8.5";
+      version = "1.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz";
-        sha512 = "A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz";
+        sha512 = "FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==";
       };
     };
     "@webassemblyjs/wasm-gen-1.8.1" = {
@@ -4180,22 +4063,22 @@ let
         sha512 = "xOgoGf6rR6gHlhlNlU0EfMIgDAjbLCO2cNdEIKdGfKj2/fc02pbAyS3gYJ6EWAzSnL/XpAOf3Q/trp/EUeikug==";
       };
     };
-    "@webassemblyjs/wasm-gen-1.8.5" = {
+    "@webassemblyjs/wasm-gen-1.9.0" = {
       name = "_at_webassemblyjs_slash_wasm-gen";
       packageName = "@webassemblyjs/wasm-gen";
-      version = "1.8.5";
+      version = "1.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz";
-        sha512 = "BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz";
+        sha512 = "cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==";
       };
     };
-    "@webassemblyjs/wasm-opt-1.8.5" = {
+    "@webassemblyjs/wasm-opt-1.9.0" = {
       name = "_at_webassemblyjs_slash_wasm-opt";
       packageName = "@webassemblyjs/wasm-opt";
-      version = "1.8.5";
+      version = "1.9.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz";
-        sha512 = "HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==";
+        url = "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz";
+        sha512 = "Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==";
       };
     };
     "@webassemblyjs/wasm-parser-1.8.1" = {
@@ -4207,15 +4090,6 @@ let
         sha512 = "k63WJZdIjTQgZt+cn8rsIEvW0aNKttGip6ygTE/ZPXKZsMTk0G5xyw+MQxphbvt/GYbNu5DdxGN/7WGybO95TA==";
       };
     };
-    "@webassemblyjs/wasm-parser-1.8.5" = {
-      name = "_at_webassemblyjs_slash_wasm-parser";
-      packageName = "@webassemblyjs/wasm-parser";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz";
-        sha512 = "pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==";
-      };
-    };
     "@webassemblyjs/wasm-parser-1.9.0" = {
       name = "_at_webassemblyjs_slash_wasm-parser";
       packageName = "@webassemblyjs/wasm-parser";
@@ -4234,15 +4108,6 @@ let
         sha512 = "iXjhXGhZeZIAnWkHD2G4ZOx8x5GYux5dwHuQL/AU8jb2H3BxolxVvNdpDmBTQPKDAgAAEeCFDnftNf4xNR9KMQ==";
       };
     };
-    "@webassemblyjs/wast-parser-1.8.5" = {
-      name = "_at_webassemblyjs_slash_wast-parser";
-      packageName = "@webassemblyjs/wast-parser";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz";
-        sha512 = "daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==";
-      };
-    };
     "@webassemblyjs/wast-parser-1.9.0" = {
       name = "_at_webassemblyjs_slash_wast-parser";
       packageName = "@webassemblyjs/wast-parser";
@@ -4261,15 +4126,6 @@ let
         sha512 = "YYRBpDCBLeYJBO+sVapLRkEE/+wrjv1O03IEybkqyls3sCZqhu3ZXjJwMSMCgFEyYP2MrdZvqL/dz2RBnULTbA==";
       };
     };
-    "@webassemblyjs/wast-printer-1.8.5" = {
-      name = "_at_webassemblyjs_slash_wast-printer";
-      packageName = "@webassemblyjs/wast-printer";
-      version = "1.8.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz";
-        sha512 = "w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==";
-      };
-    };
     "@webassemblyjs/wast-printer-1.9.0" = {
       name = "_at_webassemblyjs_slash_wast-printer";
       packageName = "@webassemblyjs/wast-printer";
@@ -5827,6 +5683,15 @@ let
         sha512 = "rPMUMkR8JjjPDDHHDZ/YeLO0KIbUGCrXgy921F6sBkEXBR9jYYxK8LUlwpZkUVi70cMR6r8uSmHZ/5HvtrntHg==";
       };
     };
+    "append-type-1.0.2" = {
+      name = "append-type";
+      packageName = "append-type";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/append-type/-/append-type-1.0.2.tgz";
+        sha512 = "hac740vT/SAbrFBLgLIWZqVT5PUAcGTWS5UkDDhr+OCizZSw90WKw6sWAEgGaYd2viIblggypMXwpjzHXOvAQg==";
+      };
+    };
     "appendable-cli-menu-2.0.0" = {
       name = "appendable-cli-menu";
       packageName = "appendable-cli-menu";
@@ -6547,6 +6412,15 @@ let
         sha1 = "59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367";
       };
     };
+    "ast-module-types-2.6.0" = {
+      name = "ast-module-types";
+      packageName = "ast-module-types";
+      version = "2.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ast-module-types/-/ast-module-types-2.6.0.tgz";
+        sha512 = "zXSoVaMrf2R+r+ISid5/9a8SXm1LLdkhHzh6pSRhj9jklzruOOl1hva1YmFT33wAstg/f9ZndJAlq1BSrFLSGA==";
+      };
+    };
     "ast-types-0.13.2" = {
       name = "ast-types";
       packageName = "ast-types";
@@ -6799,6 +6673,15 @@ let
         sha1 = "ef249dc869d6c07e7dfd4a22c8a18850bb39d7f1";
       };
     };
+    "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";
@@ -6889,13 +6772,13 @@ let
         sha512 = "Iq8TRIB+/9eQ8rbGhcP7ct5cYb/3qjNYAR2SnzLCEcwF6rvVOax8+9+fccgXk4bEhQGjOZd5TLhsksmAdsbGqQ==";
       };
     };
-    "autoprefixer-9.7.4" = {
+    "autoprefixer-9.7.5" = {
       name = "autoprefixer";
       packageName = "autoprefixer";
-      version = "9.7.4";
+      version = "9.7.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.7.4.tgz";
-        sha512 = "g0Ya30YrMBAEZk60lp+qfX5YQllG+S5W3GYCFvyHTvhOki0AEQJLPEcIuGRsqVwLi8FvXPVtwTGhfr38hVpm0g==";
+        url = "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.7.5.tgz";
+        sha512 = "URo6Zvt7VYifomeAfJlMFnYDhow1rk2bufwkbamPEAtQFcL11moLk4PnR7n9vlu7M+BkXAZkHFA0mIcY7tjQFg==";
       };
     };
     "await-semaphore-0.1.3" = {
@@ -6925,13 +6808,13 @@ let
         sha1 = "00f35b2d27ac91b1f0d3ef2084c98cf1d1f0adc3";
       };
     };
-    "aws-sdk-2.639.0" = {
+    "aws-sdk-2.644.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.639.0";
+      version = "2.644.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.639.0.tgz";
-        sha512 = "cbH69oV0ObZ4tapbjDqu0j3I779uscQNhRaewjIJY5O5At4RULtd7us24n72FtT4HIwM9cwORzVxA9rK6DHKOA==";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.644.0.tgz";
+        sha512 = "FkglRU5fvWHwT2Ll0caXS/QzRNzh5ZCS5cs4pF2nP0OjdD7VNJhNtu5lOnSzvMHAtZQJMsG3k0em8PoI8vk1AQ==";
       };
     };
     "aws-sign2-0.6.0" = {
@@ -7078,13 +6961,13 @@ let
         sha512 = "tz0VxUhhOE2y+g8R2oFrO/2VtVjA1lkJeavlhExuRBg3LdNJY9gwQ+Vcvqt9+cqy71MCTJhewvTB7Qtnnr9SWg==";
       };
     };
-    "babel-loader-8.0.6" = {
+    "babel-loader-8.1.0" = {
       name = "babel-loader";
       packageName = "babel-loader";
-      version = "8.0.6";
+      version = "8.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/babel-loader/-/babel-loader-8.0.6.tgz";
-        sha512 = "4BmWKtBOBm13uoUwd08UwjZlaw3O9GWf456R9j+5YykFZ6LUIjIKLc0zEZf+hauxPOJs96C8k6FvYD09vWzhYw==";
+        url = "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz";
+        sha512 = "7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==";
       };
     };
     "babel-plugin-dynamic-import-node-2.3.0" = {
@@ -7735,13 +7618,13 @@ let
         sha1 = "38f716b24c8cee07a262abc41c22c314e20e3869";
       };
     };
-    "bezier-js-2.5.1" = {
+    "bezier-js-2.6.0" = {
       name = "bezier-js";
       packageName = "bezier-js";
-      version = "2.5.1";
+      version = "2.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bezier-js/-/bezier-js-2.5.1.tgz";
-        sha512 = "a+U+hOQWIx1aM37TZLGbAH1Hw0YdsuBTWYNlFudz/V/CvOM56gl5RyPoH0pUwuIqg1LAhDtoA3uRVYl0ZJpi5w==";
+        url = "https://registry.npmjs.org/bezier-js/-/bezier-js-2.6.0.tgz";
+        sha512 = "BBnddaIUivrZYXUIbyEJrFWkjU0hFkqJyqfIbANPwUQfFr3Ec61qLaFEys7VmNIwsdHL24FJZsS6MKrY7HyudQ==";
       };
     };
     "biased-opener-0.2.8" = {
@@ -7969,13 +7852,13 @@ let
         sha512 = "e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==";
       };
     };
-    "bl-4.0.1" = {
+    "bl-4.0.2" = {
       name = "bl";
       packageName = "bl";
-      version = "4.0.1";
+      version = "4.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bl/-/bl-4.0.1.tgz";
-        sha512 = "FL/TdvchukRCuWVxT0YMO/7+L5TNeNrVFvRU2IY63aUyv9mpt8splf2NEr6qXtPo5fya5a66YohQKvGNmLrWNA==";
+        url = "https://registry.npmjs.org/bl/-/bl-4.0.2.tgz";
+        sha512 = "j4OH8f6Qg2bGuWfRiltT2HYGx0e1QcBTrK9KAHNMwMZdQnDZFk0ZSYIpADjYCB3U12nicC5tVJwSIhwOWjb4RQ==";
       };
     };
     "blake2b-2.1.3" = {
@@ -8581,13 +8464,13 @@ let
         sha512 = "yWu5cXT7Av6mVwzWc8lMsJMHWn4xyjSuGYi4IozbVTLUOEYPSagUB8kiMDUHA1fS3zjr8nkxkn9jdvug4BBRmA==";
       };
     };
-    "browserslist-4.9.1" = {
+    "browserslist-4.11.0" = {
       name = "browserslist";
       packageName = "browserslist";
-      version = "4.9.1";
+      version = "4.11.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.9.1.tgz";
-        sha512 = "Q0DnKq20End3raFulq6Vfp1ecB9fh8yUNV55s8sekaDDeqBaCtWlRHCUdaWyUeSSBJM7IbM6HcsyaeYqgeDhnw==";
+        url = "https://registry.npmjs.org/browserslist/-/browserslist-4.11.0.tgz";
+        sha512 = "WqEC7Yr5wUH5sg6ruR++v2SGOQYpyUdYYd4tZoAq1F7y+QXoLoYGXVbxhtaIqWmAJjtNTRjVD3HuJc1OXTel2A==";
       };
     };
     "bser-2.1.1" = {
@@ -8851,6 +8734,15 @@ let
         sha512 = "jzQnSbdJqhIltU9O5KUiTtljP9ccw2u5ix59McQy4pV2xGhVLhRZIndY8GIrgh5HjXa6+QJ9AQhOd2QWQizJFQ==";
       };
     };
+    "build-purescript-0.4.1" = {
+      name = "build-purescript";
+      packageName = "build-purescript";
+      version = "0.4.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/build-purescript/-/build-purescript-0.4.1.tgz";
+        sha512 = "wHoafIs4c1yDJspybVilXRQZUauaxdGPkZU0HdJdu968uei7O4yS/cp/h1O4zIMVDu9MN6/sYDCLnhQA3iLAYA==";
+      };
+    };
     "builtin-modules-1.1.1" = {
       name = "builtin-modules";
       packageName = "builtin-modules";
@@ -9040,13 +8932,13 @@ let
         sha1 = "3fb410c7e91558eb1ab22a82834577aa6bd61d42";
       };
     };
-    "cacache-12.0.3" = {
+    "cacache-12.0.4" = {
       name = "cacache";
       packageName = "cacache";
-      version = "12.0.3";
+      version = "12.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cacache/-/cacache-12.0.3.tgz";
-        sha512 = "kqdmfXEGFepesTuROHMs3MpFLWrPkSSpRqOw80RCflZXy/khxaArvFrQ7uJxSUduzAufc6G0g1VUCOZXxWavPw==";
+        url = "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz";
+        sha512 = "a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==";
       };
     };
     "cacache-15.0.0" = {
@@ -9076,13 +8968,13 @@ let
         sha512 = "7YKEapH+2Uikde8hySyfobXBqPKULDyHNl/lhKm7cKf/GJFdG/tU/WpLrOg2y9aUrQrWUilYqawFIiGJPS6gDA==";
       };
     };
-    "cacheable-lookup-2.0.0" = {
+    "cacheable-lookup-2.0.1" = {
       name = "cacheable-lookup";
       packageName = "cacheable-lookup";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-2.0.0.tgz";
-        sha512 = "s2piO6LvA7xnL1AR03wuEdSx3BZT3tIJpZ56/lcJwzO/6DTJZlTs7X3lrvPxk6d1PlDe6PrVe2TjlUIZNFglAQ==";
+        url = "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-2.0.1.tgz";
+        sha512 = "EMMbsiOTcdngM/K6gV/OxF2x0t07+vMOWxZNSCRQMjO2MY2nhZQ6OYhOOpyQrbhqsgtvKGI7hcq6xjnA92USjg==";
       };
     };
     "cacheable-request-2.1.4" = {
@@ -9310,6 +9202,24 @@ let
         sha512 = "BPCNVH56RVIxQQIXskp5tLQXUNGQ6sXr7iCv1FHDt81xBOQ/1r6H8SPxf19InVP6DexWar4s87q9thfuk8X9HA==";
       };
     };
+    "cancelable-pipeline-1.0.0" = {
+      name = "cancelable-pipeline";
+      packageName = "cancelable-pipeline";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cancelable-pipeline/-/cancelable-pipeline-1.0.0.tgz";
+        sha512 = "vsimf+py0scGFJyZXsawF7h2ZJ6A1p5FXjieXjQ36kZyigWKYTDW3VjiYPTj+tFqdzQzYz+XV8J24Dtc88pmGQ==";
+      };
+    };
+    "cancelable-pump-0.4.0" = {
+      name = "cancelable-pump";
+      packageName = "cancelable-pump";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cancelable-pump/-/cancelable-pump-0.4.0.tgz";
+        sha512 = "7Yvp8ADC9exD0Kdq/Q35UD5wOiuXTTLp159gFHC+uMQvjRMllrsM6EUKnozmIe43yesLBiH/ni0KD69k07yzZQ==";
+      };
+    };
     "caniuse-api-3.0.0" = {
       name = "caniuse-api";
       packageName = "caniuse-api";
@@ -9319,13 +9229,13 @@ let
         sha512 = "bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==";
       };
     };
-    "caniuse-lite-1.0.30001035" = {
+    "caniuse-lite-1.0.30001036" = {
       name = "caniuse-lite";
       packageName = "caniuse-lite";
-      version = "1.0.30001035";
+      version = "1.0.30001036";
       src = fetchurl {
-        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001035.tgz";
-        sha512 = "C1ZxgkuA4/bUEdMbU5WrGY4+UhMFFiXrgNAfxiMIqWgFTWfv/xsZCS2xEHT2LMq7xAZfuAnu6mcqyDl0ZR6wLQ==";
+        url = "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001036.tgz";
+        sha512 = "jU8CIFIj2oR7r4W+5AKcsvWNVIb6Q6OZE3UsrXrZBHFtreT4YgTeOJtTucp+zSedEpTi3L5wASSP0LYIE3if6w==";
       };
     };
     "capture-exit-2.0.0" = {
@@ -10282,13 +10192,13 @@ let
         sha512 = "2WNImOvCRe6r63Gk9pShfkwXsVtKCroMAevIbiae021mS850UkWPbevxsBz3tnvjZIEGvlwaqCPsw+4ulzNgJA==";
       };
     };
-    "clipboardy-2.2.0" = {
+    "clipboardy-2.3.0" = {
       name = "clipboardy";
       packageName = "clipboardy";
-      version = "2.2.0";
+      version = "2.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/clipboardy/-/clipboardy-2.2.0.tgz";
-        sha512 = "9ry9nC3VFULNmoEIqvuRwCIQ9M7wjnm4O+yvk7xkmhR+7FAUWaeX751oeYJbORg0h0zmqW1EVDoZK8f7yapwbg==";
+        url = "https://registry.npmjs.org/clipboardy/-/clipboardy-2.3.0.tgz";
+        sha512 = "mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==";
       };
     };
     "clipper-lib-1.0.0" = {
@@ -10579,13 +10489,13 @@ let
         sha512 = "q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==";
       };
     };
-    "coc.nvim-0.0.76" = {
+    "coc.nvim-0.0.77" = {
       name = "coc.nvim";
       packageName = "coc.nvim";
-      version = "0.0.76";
+      version = "0.0.77";
       src = fetchurl {
-        url = "https://registry.npmjs.org/coc.nvim/-/coc.nvim-0.0.76.tgz";
-        sha512 = "URa4r4dXcvotXJDKwgzHgMk9+vRFjO7tePKnznKF7XK+ApewV4aoibQ3NzC4xMWuDGto5RWWlHlWWOd5orDiOQ==";
+        url = "https://registry.npmjs.org/coc.nvim/-/coc.nvim-0.0.77.tgz";
+        sha512 = "wwn3ca7iMKuH/a6NAV7HL95xkEK5DzrKJ1dWGKBs+HZHFLhzXVYhjA0RL8x8Xf62TBEQGhH1wlKtBxkluGd1oQ==";
       };
     };
     "code-point-at-1.1.0" = {
@@ -12407,6 +12317,15 @@ let
         sha512 = "DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==";
       };
     };
+    "css-tree-1.0.0-alpha.39" = {
+      name = "css-tree";
+      packageName = "css-tree";
+      version = "1.0.0-alpha.39";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.39.tgz";
+        sha512 = "7UvkEYgBAHRG9Nt980lYxjsTrCyHFN53ky3wVsDkiMdVqylqRt+Zc+jm5qw7/qyOvN2dHSYtX0e4MbCCExSvnA==";
+      };
+    };
     "css-what-2.1.3" = {
       name = "css-what";
       packageName = "css-what";
@@ -12506,13 +12425,13 @@ let
         sha512 = "WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==";
       };
     };
-    "csso-4.0.2" = {
+    "csso-4.0.3" = {
       name = "csso";
       packageName = "csso";
-      version = "4.0.2";
+      version = "4.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/csso/-/csso-4.0.2.tgz";
-        sha512 = "kS7/oeNVXkHWxby5tHVxlhjizRCSv8QdU7hB2FpdAibDU8FjTAolhNjKNTiLzXtUrKT6HwClE81yXwEk1309wg==";
+        url = "https://registry.npmjs.org/csso/-/csso-4.0.3.tgz";
+        sha512 = "NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ==";
       };
     };
     "cssom-0.3.8" = {
@@ -12524,6 +12443,15 @@ let
         sha512 = "b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==";
       };
     };
+    "cssom-0.4.4" = {
+      name = "cssom";
+      packageName = "cssom";
+      version = "0.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz";
+        sha512 = "p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==";
+      };
+    };
     "cssstyle-0.2.37" = {
       name = "cssstyle";
       packageName = "cssstyle";
@@ -12542,6 +12470,24 @@ let
         sha512 = "GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA==";
       };
     };
+    "cssstyle-2.2.0" = {
+      name = "cssstyle";
+      packageName = "cssstyle";
+      version = "2.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssstyle/-/cssstyle-2.2.0.tgz";
+        sha512 = "sEb3XFPx3jNnCAMtqrXPDeSgQr+jojtCeNf8cvMNMh1cG970+lljssvQDzPq6lmmJu2Vhqood/gtEomBiHOGnA==";
+      };
+    };
+    "csstype-2.6.9" = {
+      name = "csstype";
+      packageName = "csstype";
+      version = "2.6.9";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/csstype/-/csstype-2.6.9.tgz";
+        sha512 = "xz39Sb4+OaTsULgUERcCk+TJj8ylkL4aSVDQiX/ksxbELSqwkgt4d4RD7fovIdgJGSuNYqwZEiVjYY5l0ask+Q==";
+      };
+    };
     "csurf-1.11.0" = {
       name = "csurf";
       packageName = "csurf";
@@ -12938,13 +12884,13 @@ let
         sha512 = "jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==";
       };
     };
-    "dayjs-1.8.22" = {
+    "dayjs-1.8.23" = {
       name = "dayjs";
       packageName = "dayjs";
-      version = "1.8.22";
+      version = "1.8.23";
       src = fetchurl {
-        url = "https://registry.npmjs.org/dayjs/-/dayjs-1.8.22.tgz";
-        sha512 = "N8IXfxBD62Y9cKTuuuSoOlCXRnnzaTj1vu91r855iq6FbY5cZqOZnW/95nUn6kJiR+W9PHHrLykEoQOe6fUKxQ==";
+        url = "https://registry.npmjs.org/dayjs/-/dayjs-1.8.23.tgz";
+        sha512 = "NmYHMFONftoZbeOhVz6jfiXI4zSiPN6NoVWJgC0aZQfYVwzy/ZpESPHuCcI0B8BUMpSJQ08zenHDbofOLKq8hQ==";
       };
     };
     "de-indent-1.0.2" = {
@@ -13163,6 +13109,15 @@ let
         sha1 = "eb3913333458775cb84cd1a1fae062106bb87545";
       };
     };
+    "decomment-0.9.2" = {
+      name = "decomment";
+      packageName = "decomment";
+      version = "0.9.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decomment/-/decomment-0.9.2.tgz";
+        sha512 = "sblyUmOJZxiL7oJ2ogJS6jtl/67+CTOW87SrYE/96u3PhDYikYoLCdLzcnceToiQejOLlqNnLCkaxx/+nE/ehg==";
+      };
+    };
     "decompress-4.2.0" = {
       name = "decompress";
       packageName = "decompress";
@@ -13559,6 +13514,24 @@ let
         sha512 = "QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==";
       };
     };
+    "del-5.1.0" = {
+      name = "del";
+      packageName = "del";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/del/-/del-5.1.0.tgz";
+        sha512 = "wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==";
+      };
+    };
+    "del-cli-3.0.0" = {
+      name = "del-cli";
+      packageName = "del-cli";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/del-cli/-/del-cli-3.0.0.tgz";
+        sha512 = "J4HDC2mpcN5aopya4VdkyiFXZaqAoo7ua9VpKbciX3DDUSbtJbPMc3ivggJsAAgS6EqonmbenIiMhBGtJPW9FA==";
+      };
+    };
     "delay-4.3.0" = {
       name = "delay";
       packageName = "delay";
@@ -13649,6 +13622,15 @@ let
         sha512 = "g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==";
       };
     };
+    "dependency-tree-7.2.1" = {
+      name = "dependency-tree";
+      packageName = "dependency-tree";
+      version = "7.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dependency-tree/-/dependency-tree-7.2.1.tgz";
+        sha512 = "nBxnjkqDW4LqAzBazy60V4lE0mAtIQ+oers/GIIvVvGYVdCD9+RNNd4G9jjstyz7ZFVg/j/OiYCvK5MjoVqA2w==";
+      };
+    };
     "deprecated-0.0.1" = {
       name = "deprecated";
       packageName = "deprecated";
@@ -13802,6 +13784,87 @@ let
         sha512 = "6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg==";
       };
     };
+    "detective-amd-3.0.0" = {
+      name = "detective-amd";
+      packageName = "detective-amd";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detective-amd/-/detective-amd-3.0.0.tgz";
+        sha512 = "kOpKHyabdSKF9kj7PqYHLeHPw+TJT8q2u48tZYMkIcas28el1CYeLEJ42Nm+563/Fq060T5WknfwDhdX9+kkBQ==";
+      };
+    };
+    "detective-cjs-3.1.1" = {
+      name = "detective-cjs";
+      packageName = "detective-cjs";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detective-cjs/-/detective-cjs-3.1.1.tgz";
+        sha512 = "JQtNTBgFY6h8uT6pgph5QpV3IyxDv+z3qPk/FZRDT9TlFfm5dnRtpH39WtQEr1khqsUxVqXzKjZHpdoQvQbllg==";
+      };
+    };
+    "detective-es6-2.1.0" = {
+      name = "detective-es6";
+      packageName = "detective-es6";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detective-es6/-/detective-es6-2.1.0.tgz";
+        sha512 = "QSHqKGOp/YBIfmIqKXaXeq2rlL+bp3bcIQMfZ+0PvKzRlELSOSZxKRvpxVcxlLuocQv4QnOfuWGniGrmPbz8MQ==";
+      };
+    };
+    "detective-less-1.0.2" = {
+      name = "detective-less";
+      packageName = "detective-less";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detective-less/-/detective-less-1.0.2.tgz";
+        sha512 = "Rps1xDkEEBSq3kLdsdnHZL1x2S4NGDcbrjmd4q+PykK5aJwDdP5MBgrJw1Xo+kyUHuv3JEzPqxr+Dj9ryeDRTA==";
+      };
+    };
+    "detective-postcss-3.0.1" = {
+      name = "detective-postcss";
+      packageName = "detective-postcss";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detective-postcss/-/detective-postcss-3.0.1.tgz";
+        sha512 = "tfTS2GdpUal5NY0aCqI4dpEy8Xfr88AehYKB0iBIZvo8y2g3UsrcDnrp9PR2FbzoW7xD5Rip3NJW7eCSvtqdUw==";
+      };
+    };
+    "detective-sass-3.0.1" = {
+      name = "detective-sass";
+      packageName = "detective-sass";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detective-sass/-/detective-sass-3.0.1.tgz";
+        sha512 = "oSbrBozRjJ+QFF4WJFbjPQKeakoaY1GiR380NPqwdbWYd5wfl5cLWv0l6LsJVqrgWfFN1bjFqSeo32Nxza8Lbw==";
+      };
+    };
+    "detective-scss-2.0.1" = {
+      name = "detective-scss";
+      packageName = "detective-scss";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detective-scss/-/detective-scss-2.0.1.tgz";
+        sha512 = "VveyXW4WQE04s05KlJ8K0bG34jtHQVgTc9InspqoQxvnelj/rdgSAy7i2DXAazyQNFKlWSWbS+Ro2DWKFOKTPQ==";
+      };
+    };
+    "detective-stylus-1.0.0" = {
+      name = "detective-stylus";
+      packageName = "detective-stylus";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detective-stylus/-/detective-stylus-1.0.0.tgz";
+        sha1 = "50aee7db8babb990381f010c63fabba5b58e54cd";
+      };
+    };
+    "detective-typescript-5.7.0" = {
+      name = "detective-typescript";
+      packageName = "detective-typescript";
+      version = "5.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/detective-typescript/-/detective-typescript-5.7.0.tgz";
+        sha512 = "4SQeACXWAjIOsd2kJykPL8gWC9nVA+z8w7KtAdtd/7BCpDfrpI2ZA7pdhsmHv/zxf3ofeqpYi72vCkZ65bAjtA==";
+      };
+    };
     "dezalgo-1.0.3" = {
       name = "dezalgo";
       packageName = "dezalgo";
@@ -14000,13 +14063,13 @@ let
         sha1 = "e38331f0844bba49b9a9cb71c771585aab1bc65a";
       };
     };
-    "discord.js-11.6.2" = {
+    "discord.js-11.6.3" = {
       name = "discord.js";
       packageName = "discord.js";
-      version = "11.6.2";
+      version = "11.6.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/discord.js/-/discord.js-11.6.2.tgz";
-        sha512 = "QwN7RBb705qqvxletW41aw8ScZJh4LUVWtGNdLA1/N4od1pf8pueDWdnKLqw9pAud6cg9AADcCkm8os1YHWESg==";
+        url = "https://registry.npmjs.org/discord.js/-/discord.js-11.6.3.tgz";
+        sha512 = "dwIzHB5GPU9O/WiNw42d0yco0JED5bOjCPiHwU9VSSCkEhnyOdx5iqt7Dl2PQZAMNzWPI/t9oyCziOuzFlwm3Q==";
       };
     };
     "discovery-channel-5.5.1" = {
@@ -14054,6 +14117,15 @@ let
         sha1 = "d9980493ae33beec36f4fec6f171ff218130cc12";
       };
     };
+    "dl-tar-0.8.1" = {
+      name = "dl-tar";
+      packageName = "dl-tar";
+      version = "0.8.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dl-tar/-/dl-tar-0.8.1.tgz";
+        sha512 = "1EdwnDJmqStX85PuVhcrqdeB3b7k4pn3WhMjPEL1lHuPEf0Mf8Cqdo76hgUPX60QWtCbPPTrDl8JFGrPMc1grw==";
+      };
+    };
     "dlnacasts-0.1.0" = {
       name = "dlnacasts";
       packageName = "dlnacasts";
@@ -14549,6 +14621,33 @@ let
         sha512 = "yXcCvhkPKmq5M2cQXss6Qbig+LZnzRIT40XCYm/QCRnJaPG867StB1qnsBLxOGrPH1YEIRWW2gJq7LLMyw+NmA==";
       };
     };
+    "download-or-build-purescript-0.3.4" = {
+      name = "download-or-build-purescript";
+      packageName = "download-or-build-purescript";
+      version = "0.3.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/download-or-build-purescript/-/download-or-build-purescript-0.3.4.tgz";
+        sha512 = "8P4vNgbLTZi07s3uRnUCI+kE7lAERyIexVYwAHsAw7AQhooFnVbypq/yiP1vSZVibQ4Fl74LdOWnJKbqe9Mnow==";
+      };
+    };
+    "download-purescript-0.8.5" = {
+      name = "download-purescript";
+      packageName = "download-purescript";
+      version = "0.8.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/download-purescript/-/download-purescript-0.8.5.tgz";
+        sha512 = "m2avp1YMDTxZW3mtlG7U09bmgCrLbBIsuBEglywew0uoG7VHVdtOwlTXEdvQQTqpW9iylrz8PokfPlqzc6AYiA==";
+      };
+    };
+    "download-purescript-source-0.6.5" = {
+      name = "download-purescript-source";
+      packageName = "download-purescript-source";
+      version = "0.6.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/download-purescript-source/-/download-purescript-source-0.6.5.tgz";
+        sha512 = "RyOSTL7B3qzrhCOfhgzxNrcZD1klFOAJcw2YG345AIB4su1KC4WSk6fzRz3xpg1tp/plr5v8aDlvZy+LDtf6uA==";
+      };
+    };
     "draftlog-1.0.12" = {
       name = "draftlog";
       packageName = "draftlog";
@@ -14810,13 +14909,13 @@ let
         sha512 = "7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==";
       };
     };
-    "electron-to-chromium-1.3.376" = {
+    "electron-to-chromium-1.3.383" = {
       name = "electron-to-chromium";
       packageName = "electron-to-chromium";
-      version = "1.3.376";
+      version = "1.3.383";
       src = fetchurl {
-        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.376.tgz";
-        sha512 = "cv/PYVz5szeMz192ngilmezyPNFkUjuynuL2vNdiqIrio440nfTDdc0JJU0TS2KHLSVCs9gBbt4CFqM+HcBnjw==";
+        url = "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.383.tgz";
+        sha512 = "EHYVJl6Ox1kFy/SzGVbijHu8ksQotJnqHCFFfaVhXiC+erOSplwhCtOTSocu1jRwirlNsSn/aZ9Kf84Z6s5qrg==";
       };
     };
     "elegant-spinner-1.0.1" = {
@@ -15324,13 +15423,13 @@ let
         sha512 = "rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==";
       };
     };
-    "es-abstract-1.17.4" = {
+    "es-abstract-1.17.5" = {
       name = "es-abstract";
       packageName = "es-abstract";
-      version = "1.17.4";
+      version = "1.17.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz";
-        sha512 = "Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==";
+        url = "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz";
+        sha512 = "BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==";
       };
     };
     "es-get-iterator-1.1.0" = {
@@ -15459,6 +15558,15 @@ let
         sha512 = "eO6vFm0JvqGzjWIQA6QVKjxpmELfhWbDUWHm1rPfIbn55mhKPiAa5xpLmQWJrNa629ZIeQ8ZvMAi13kvrjK6Mg==";
       };
     };
+    "es6-promisify-6.1.0" = {
+      name = "es6-promisify";
+      packageName = "es6-promisify";
+      version = "6.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-promisify/-/es6-promisify-6.1.0.tgz";
+        sha512 = "jCsk2fpfEFusVv1MDkF4Uf0hAzIKNDMgR6LyOIw6a3jwkN1sCgWzuwgnsHY9YSQ8n8P31HoncvE0LC44cpWTrw==";
+      };
+    };
     "es6-set-0.1.5" = {
       name = "es6-set";
       packageName = "es6-set";
@@ -15666,15 +15774,6 @@ let
         sha1 = "7d02878c8e9bf7916b88836d5ac122b42f151932";
       };
     };
-    "eslint-plugin-vue-5.2.3" = {
-      name = "eslint-plugin-vue";
-      packageName = "eslint-plugin-vue";
-      version = "5.2.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-5.2.3.tgz";
-        sha512 = "mGwMqbbJf0+VvpGR5Lllq0PMxvTdrZ/ZPjmhkacrCHbubJeJOt+T6E3HUzAifa2Mxi7RSdJfC9HFpOeSYVMMIw==";
-      };
-    };
     "eslint-plugin-vue-6.2.2" = {
       name = "eslint-plugin-vue";
       packageName = "eslint-plugin-vue";
@@ -15765,15 +15864,6 @@ let
         sha512 = "yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==";
       };
     };
-    "espree-4.1.0" = {
-      name = "espree";
-      packageName = "espree";
-      version = "4.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/espree/-/espree-4.1.0.tgz";
-        sha512 = "I5BycZW6FCVIub93TeVY1s7vjhP9CY6cXCznIRfiig7nRviKZYdRnj/sHEWC6A7WE9RDWOFq9+7OsWSYz8qv2w==";
-      };
-    };
     "espree-5.0.1" = {
       name = "espree";
       packageName = "espree";
@@ -15846,13 +15936,13 @@ let
         sha1 = "633acdb40d9bd4db8a1c1d68c06a942959fad2b0";
       };
     };
-    "esquery-1.1.0" = {
+    "esquery-1.2.0" = {
       name = "esquery";
       packageName = "esquery";
-      version = "1.1.0";
+      version = "1.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/esquery/-/esquery-1.1.0.tgz";
-        sha512 = "MxYW9xKmROWF672KqjO75sszsA8Mxhw06YFeS5VHlB98KDHbOSurm3ArsjO60Eaf3QmGMCP1yn+0JQkNLo/97Q==";
+        url = "https://registry.npmjs.org/esquery/-/esquery-1.2.0.tgz";
+        sha512 = "weltsSqdeWIX9G2qQZz7KlTRJdkkOCTPgLYJUz1Hacf48R4YOwGPHO3+ORfWedqJKbq5WQmsgK90n+pFLIKt/Q==";
       };
     };
     "esrecurse-4.2.1" = {
@@ -15918,6 +16008,15 @@ let
         sha512 = "39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==";
       };
     };
+    "estraverse-5.0.0" = {
+      name = "estraverse";
+      packageName = "estraverse";
+      version = "5.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/estraverse/-/estraverse-5.0.0.tgz";
+        sha512 = "j3acdrMzqrxmJTNj5dbr1YbjacrYgAxVMeF0gK16E3j494mOe7xygM/ZLIguEQ0ETwAg2hlJCtHRGav+y0Ny5A==";
+      };
+    };
     "estree-walker-0.6.1" = {
       name = "estree-walker";
       packageName = "estree-walker";
@@ -16296,6 +16395,15 @@ let
         sha512 = "8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==";
       };
     };
+    "executing-npm-path-1.0.0" = {
+      name = "executing-npm-path";
+      packageName = "executing-npm-path";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/executing-npm-path/-/executing-npm-path-1.0.0.tgz";
+        sha512 = "d/dZlFCLkKm8nwdzpfQ7JBL2BISg4Fu0bVpZ5nacuT3e6DIxYVb+8tx0eQ+jxquvV/8I+VjJ9g6aEAqjukogkw==";
+      };
+    };
     "exit-0.1.2" = {
       name = "exit";
       packageName = "exit";
@@ -16980,6 +17088,15 @@ let
         sha512 = "lUGBnIamTAwk4znq5BcqsDaxSmZ9nDVJaij6NvRt/Tg4R69gERA+otPKbS86ROw9nxVMw2/mp1fnaiWqbs6Sdg==";
       };
     };
+    "feint-1.0.3" = {
+      name = "feint";
+      packageName = "feint";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/feint/-/feint-1.0.3.tgz";
+        sha512 = "BY1jwDlOx4uA9rtn2H9bZSuHT7yyOtSRDVwUwprRpRXvpm1F73gSGuHznEu50lT6epscULOknphOprG9ljoARg==";
+      };
+    };
     "fields-0.1.24" = {
       name = "fields";
       packageName = "fields";
@@ -16998,13 +17115,13 @@ let
         sha1 = "bf42d87c0ad07b00d0949d12388f6289606ece34";
       };
     };
-    "figgy-pudding-3.5.1" = {
+    "figgy-pudding-3.5.2" = {
       name = "figgy-pudding";
       packageName = "figgy-pudding";
-      version = "3.5.1";
+      version = "3.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz";
-        sha512 = "vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==";
+        url = "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz";
+        sha512 = "0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==";
       };
     };
     "figures-1.7.0" = {
@@ -17052,6 +17169,24 @@ let
         sha512 = "bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==";
       };
     };
+    "file-exists-dazinatorfork-1.0.2" = {
+      name = "file-exists-dazinatorfork";
+      packageName = "file-exists-dazinatorfork";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/file-exists-dazinatorfork/-/file-exists-dazinatorfork-1.0.2.tgz";
+        sha512 = "r70c72ln2YHzQINNfxDp02hAhbGkt1HffZ+Du8oetWDLjDtFja/Lm10lUaSh9e+wD+7VDvPee0b0C9SAy8pWZg==";
+      };
+    };
+    "file-to-npm-cache-0.1.0" = {
+      name = "file-to-npm-cache";
+      packageName = "file-to-npm-cache";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/file-to-npm-cache/-/file-to-npm-cache-0.1.0.tgz";
+        sha512 = "2/aq3BD1pkd6b4pafmTaO8EzRCiQKfFmJxg+zKAdDMAcqqJMC0nQYcuCU29say0ZTzXxafKXcJB50N+yb0WIoQ==";
+      };
+    };
     "file-type-10.11.0" = {
       name = "file-type";
       packageName = "file-type";
@@ -17178,6 +17313,15 @@ let
         sha512 = "7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==";
       };
     };
+    "filesize-4.2.1" = {
+      name = "filesize";
+      packageName = "filesize";
+      version = "4.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/filesize/-/filesize-4.2.1.tgz";
+        sha512 = "bP82Hi8VRZX/TUBKfE24iiUGsB/sfm2WUrwTQyAzQrhO3V9IhcBBNBXMyzLY5orACxRyYJ3d2HeRVX+eFv4lmA==";
+      };
+    };
     "filestream-5.0.0" = {
       name = "filestream";
       packageName = "filestream";
@@ -17187,6 +17331,15 @@ let
         sha512 = "5H3RqSaJp12THfZiNWodYM7TiKfQvrpX+EIOrB1XvCceTys4yvfEIl8wDp+/yI8qj6Bxym8m0NYWwVXDAet/+A==";
       };
     };
+    "filing-cabinet-2.5.1" = {
+      name = "filing-cabinet";
+      packageName = "filing-cabinet";
+      version = "2.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/filing-cabinet/-/filing-cabinet-2.5.1.tgz";
+        sha512 = "GWOdObzou2L0HrJUk8MpJa01q0ZOwuTwTssM2+P+ABJWEGlVWd6ueEatANFdin94/3rdkVSdqpH14VqCNqp3RA==";
+      };
+    };
     "fill-range-2.2.4" = {
       name = "fill-range";
       packageName = "fill-range";
@@ -17250,6 +17403,15 @@ let
         sha1 = "4b73f1ff9e56ad91b76e716407fe5ffe6554bb8c";
       };
     };
+    "find-0.3.0" = {
+      name = "find";
+      packageName = "find";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find/-/find-0.3.0.tgz";
+        sha512 = "iSd+O4OEYV/I36Zl8MdYJO0xD82wH528SaCieTVHhclgiYNe9y+yPKSwK+A7/WsmHL1EZ+pYUJBXWTL5qofksw==";
+      };
+    };
     "find-cache-dir-2.1.0" = {
       name = "find-cache-dir";
       packageName = "find-cache-dir";
@@ -17268,6 +17430,24 @@ let
         sha1 = "675d358b2ca3892d795a1ab47232f8b6e2e0dde4";
       };
     };
+    "find-pkg-dir-1.0.1" = {
+      name = "find-pkg-dir";
+      packageName = "find-pkg-dir";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-pkg-dir/-/find-pkg-dir-1.0.1.tgz";
+        sha512 = "pIXIrZshXst3hpg5nXDYALHlN4ikh4IwoM0QRnMnYIALChamvpPCJS1Mpwp27GpXXTL/647LDS4JkH1yfAKctw==";
+      };
+    };
+    "find-process-1.4.3" = {
+      name = "find-process";
+      packageName = "find-process";
+      version = "1.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/find-process/-/find-process-1.4.3.tgz";
+        sha512 = "+IA+AUsQCf3uucawyTwMWcY+2M3FXq3BRvw3S+j5Jvydjk31f/+NPWpYZOJs+JUs2GvxH4Yfr6Wham0ZtRLlPA==";
+      };
+    };
     "find-requires-1.0.0" = {
       name = "find-requires";
       packageName = "find-requires";
@@ -17529,6 +17709,15 @@ let
         sha1 = "554440766da0a0d603999f433453f6c2fc6a75c1";
       };
     };
+    "flatten-1.0.3" = {
+      name = "flatten";
+      packageName = "flatten";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz";
+        sha512 = "dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==";
+      };
+    };
     "flow-bin-0.118.0" = {
       name = "flow-bin";
       packageName = "flow-bin";
@@ -17538,13 +17727,13 @@ let
         sha512 = "jlbUu0XkbpXeXhan5xyTqVK1jmEKNxE8hpzznI3TThHTr76GiFwK0iRzhDo4KNy+S9h/KxHaqVhTP86vA6wHCg==";
       };
     };
-    "flow-parser-0.120.1" = {
+    "flow-parser-0.121.0" = {
       name = "flow-parser";
       packageName = "flow-parser";
-      version = "0.120.1";
+      version = "0.121.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/flow-parser/-/flow-parser-0.120.1.tgz";
-        sha512 = "t5y9QoOegJuY+LCIjh0p6SGF7ItsxG5ycQApTSqWloutUZQ2gC0f6wMu91dab0/SSj2vH41bu5pDTLuvtP49ng==";
+        url = "https://registry.npmjs.org/flow-parser/-/flow-parser-0.121.0.tgz";
+        sha512 = "1gIBiWJNR0tKUNv8gZuk7l9rVX06OuLzY9AoGio7y/JT4V1IZErEMEq2TJS+PFcw/y0RshZ1J/27VfK1UQzYVg==";
       };
     };
     "fluent-ffmpeg-2.1.2" = {
@@ -18141,6 +18330,15 @@ let
         sha512 = "yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==";
       };
     };
+    "fs-extra-9.0.0" = {
+      name = "fs-extra";
+      packageName = "fs-extra";
+      version = "9.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.0.tgz";
+        sha512 = "pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==";
+      };
+    };
     "fs-minipass-1.2.7" = {
       name = "fs-minipass";
       packageName = "fs-minipass";
@@ -18213,13 +18411,13 @@ let
         sha512 = "fwfd9MBI/fnXtR/ClVTyeuPXJ+oI5WNyXvBQPmc4btgqLYTKOuBRTRUVjmVpDUri0C88HLwMlc5ESg48fEAGjw==";
       };
     };
-    "fsevents-1.2.11" = {
+    "fsevents-1.2.12" = {
       name = "fsevents";
       packageName = "fsevents";
-      version = "1.2.11";
+      version = "1.2.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fsevents/-/fsevents-1.2.11.tgz";
-        sha512 = "+ux3lx6peh0BpvY0JebGyZoiR4D+oYzdPZMKJwkZ+sFkNJzpL7tXc/wehS49gUAxg3tmMHPHZkA8JU2rhhgDHw==";
+        url = "https://registry.npmjs.org/fsevents/-/fsevents-1.2.12.tgz";
+        sha512 = "Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q==";
       };
     };
     "fsevents-2.1.2" = {
@@ -18447,6 +18645,15 @@ let
         sha512 = "r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==";
       };
     };
+    "get-amd-module-type-3.0.0" = {
+      name = "get-amd-module-type";
+      packageName = "get-amd-module-type";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-amd-module-type/-/get-amd-module-type-3.0.0.tgz";
+        sha512 = "99Q7COuACPfVt18zH9N4VAMyb81S6TUgJm2NgV6ERtkh9VIkAaByZkW530wl3lLN5KTtSrK9jVLxYsoP5hQKsw==";
+      };
+    };
     "get-assigned-identifiers-1.2.0" = {
       name = "get-assigned-identifiers";
       packageName = "get-assigned-identifiers";
@@ -18492,6 +18699,15 @@ let
         sha1 = "ead774abee72e20409433a066366023dd6887a41";
       };
     };
+    "get-own-enumerable-property-symbols-3.0.2" = {
+      name = "get-own-enumerable-property-symbols";
+      packageName = "get-own-enumerable-property-symbols";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz";
+        sha512 = "I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==";
+      };
+    };
     "get-pkg-repo-1.4.0" = {
       name = "get-pkg-repo";
       packageName = "get-pkg-repo";
@@ -18942,13 +19158,13 @@ let
         sha1 = "9e6af6299d8d3bd2bd40430832bd113df906c5ae";
       };
     };
-    "glob-parent-5.1.0" = {
+    "glob-parent-5.1.1" = {
       name = "glob-parent";
       packageName = "glob-parent";
-      version = "5.1.0";
+      version = "5.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz";
-        sha512 = "qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==";
+        url = "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz";
+        sha512 = "FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==";
       };
     };
     "glob-stream-3.1.18" = {
@@ -20194,13 +20410,13 @@ let
         sha512 = "ghHup2voGfgFoHMGnaLHOjbYFACKrRh9KFttdCzMCbFoBMJXiNi2+XTrPP8+q6cDJM/RSqlCfVWrjp1H201rZg==";
       };
     };
-    "hast-util-is-body-ok-link-1.0.2" = {
+    "hast-util-is-body-ok-link-1.0.3" = {
       name = "hast-util-is-body-ok-link";
       packageName = "hast-util-is-body-ok-link";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hast-util-is-body-ok-link/-/hast-util-is-body-ok-link-1.0.2.tgz";
-        sha512 = "eSxO9rgtb7dfKxNa8NAFS3VEYWHXnJWVsoH/Z4jSsq1J2i4H1GkdJ43kXv++xuambrtI5XQwcAx6jeZVMjoBMQ==";
+        url = "https://registry.npmjs.org/hast-util-is-body-ok-link/-/hast-util-is-body-ok-link-1.0.3.tgz";
+        sha512 = "NB8jW4iqT+iVld2oCjSk0T2S2FyR86rDZ7nKHx3WNf/WX16fjjdfoog6T+YeJFsPzszVKsNlVJL+k5c4asAHog==";
       };
     };
     "hast-util-is-element-1.0.4" = {
@@ -20221,13 +20437,13 @@ let
         sha512 = "gW3sxfynIvZApL4L07wryYF4+C9VvH3AUi7LAnVXV4MneGEgwOByXvFo18BgmTWnm7oHAe874jKbIB1YhHSIzA==";
       };
     };
-    "hast-util-to-string-1.0.2" = {
+    "hast-util-to-string-1.0.3" = {
       name = "hast-util-to-string";
       packageName = "hast-util-to-string";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-1.0.2.tgz";
-        sha512 = "fQNr0n5KJmZW1TmBfXbc4DO0ucZmseUw3T6K4PDsUUTMtTGGLZMUYRB8mOKgPgtw7rtICdxxpRQZmWwo8KxlOA==";
+        url = "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-1.0.3.tgz";
+        sha512 = "3lDgDE5OdpTfP3aFeKRWEwdIZ4vprztvp+AoD+RhF7uGOBs1yBDWZFadxnjcUV4KCoI3vB9A7gdFO98hEXA90w==";
       };
     };
     "hast-util-whitespace-1.0.4" = {
@@ -20572,13 +20788,13 @@ let
         sha512 = "uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==";
       };
     };
-    "html-whitespace-sensitive-tag-names-1.0.1" = {
+    "html-whitespace-sensitive-tag-names-1.0.2" = {
       name = "html-whitespace-sensitive-tag-names";
       packageName = "html-whitespace-sensitive-tag-names";
-      version = "1.0.1";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/html-whitespace-sensitive-tag-names/-/html-whitespace-sensitive-tag-names-1.0.1.tgz";
-        sha512 = "TMdAWVry7Ld0k2sLqpHkWsFAHmU+VZZq/nR4bfwfxThD8q3ibhrpRTywyQkEiunYiZXmJ6gRcJiLbZm+jbQPgQ==";
+        url = "https://registry.npmjs.org/html-whitespace-sensitive-tag-names/-/html-whitespace-sensitive-tag-names-1.0.2.tgz";
+        sha512 = "9jCcAq9ZsjUkZjNFDvxalDPhktOijpfzLyzBcqMLOFSbtcDNrPlKDvZeH7KdEbP7C6OjPpIdDMMPm0oq2Dpk0A==";
       };
     };
     "htmlescape-1.1.1" = {
@@ -21293,6 +21509,15 @@ let
         sha512 = "b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==";
       };
     };
+    "import-package-1.0.0" = {
+      name = "import-package";
+      packageName = "import-package";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/import-package/-/import-package-1.0.0.tgz";
+        sha512 = "EEDT2ucOWI/9z/h2mLTRkkusM30/pxSoBT6YvomYpEb/UGll6wOvdFagYraCSBHD+dZSKoVFNYCAgC3V7Nvf1Q==";
+      };
+    };
     "imurmurhash-0.1.4" = {
       name = "imurmurhash";
       packageName = "imurmurhash";
@@ -21302,13 +21527,13 @@ let
         sha1 = "9218b9b2b928a238b13dc4fb6b6d576f231453ea";
       };
     };
-    "in-publish-2.0.0" = {
+    "in-publish-2.0.1" = {
       name = "in-publish";
       packageName = "in-publish";
-      version = "2.0.0";
+      version = "2.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz";
-        sha1 = "e20ff5e3a2afc2690320b6dc552682a9c7fadf51";
+        url = "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz";
+        sha512 = "oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==";
       };
     };
     "increment-buffer-1.0.1" = {
@@ -21698,6 +21923,24 @@ let
         sha512 = "MAQUJuIo7Xqk8EVNP+6d3CKq9c80hi4tjIbIAT6lmGW9W6WzlHiu9PS8uSuUYU+Do+j1baiFp3H25XEVxDIG2g==";
       };
     };
+    "install-purescript-0.7.0" = {
+      name = "install-purescript";
+      packageName = "install-purescript";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/install-purescript/-/install-purescript-0.7.0.tgz";
+        sha512 = "AOmIq8rPEOLn5Bo8RQngvDXWeo6USKIt+28UhcAmQJNvj63MqdNBIQRTgNyypbsniv7d7VWjz53pw2+kTgh3mg==";
+      };
+    };
+    "install-purescript-cli-0.4.2" = {
+      name = "install-purescript-cli";
+      packageName = "install-purescript-cli";
+      version = "0.4.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/install-purescript-cli/-/install-purescript-cli-0.4.2.tgz";
+        sha512 = "y62GvwsMksz7aSJQsK2pPelmBByp0eDgpI+uFheEU05wpekM6WtCgq7WkTAc+Ar/nt+7Y5lYzGOqSOWnGAEIBQ==";
+      };
+    };
     "int53-1.0.0" = {
       name = "int53";
       packageName = "int53";
@@ -22877,6 +23120,15 @@ let
         sha512 = "Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==";
       };
     };
+    "is-relative-path-1.0.2" = {
+      name = "is-relative-path";
+      packageName = "is-relative-path";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-relative-path/-/is-relative-path-1.0.2.tgz";
+        sha1 = "091b46a0d67c1ed0fe85f1f8cfdde006bb251d46";
+      };
+    };
     "is-relative-url-3.0.0" = {
       name = "is-relative-url";
       packageName = "is-relative-url";
@@ -23228,13 +23480,13 @@ let
         sha512 = "8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==";
       };
     };
-    "isbinaryfile-4.0.4" = {
+    "isbinaryfile-4.0.5" = {
       name = "isbinaryfile";
       packageName = "isbinaryfile";
-      version = "4.0.4";
+      version = "4.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.4.tgz";
-        sha512 = "pEutbN134CzcjlLS1myKX/uxNjwU5eBVSprvkpv3+3dqhBHUZLIWJQowC40w5c0Zf19vBY8mrZl88y5J4RAPbQ==";
+        url = "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-4.0.5.tgz";
+        sha512 = "Jvz0gpTh1AILHMCBUyqq7xv1ZOQrxTDwyp1/QUq1xFpOBvp4AH5uEobPePJht8KnBGqQIH7We6OR73mXsjG0cA==";
       };
     };
     "isemail-3.2.0" = {
@@ -23552,13 +23804,13 @@ let
         sha1 = "06d4912255093419477d425633606e0e90782967";
       };
     };
-    "joplin-turndown-4.0.23" = {
+    "joplin-turndown-4.0.24" = {
       name = "joplin-turndown";
       packageName = "joplin-turndown";
-      version = "4.0.23";
+      version = "4.0.24";
       src = fetchurl {
-        url = "https://registry.npmjs.org/joplin-turndown/-/joplin-turndown-4.0.23.tgz";
-        sha512 = "Dh93R7G/S/KRbOu4/+FIxoUcUDcoUL4QDsqGhperOi/cUxUeg8fngrmEzdP8kEpQzqm5+8jkq9Cc1w6695owpQ==";
+        url = "https://registry.npmjs.org/joplin-turndown/-/joplin-turndown-4.0.24.tgz";
+        sha512 = "mKd2rAFzJKnhTVjEpHomG+T01//uz5rXVSAOYRh3/JKXpY7QUhVp8jCmFfO+kaadrLABTz04mvTmyyoOadxdTA==";
       };
     };
     "joplin-turndown-plugin-gfm-1.0.12" = {
@@ -23606,13 +23858,13 @@ let
         sha1 = "d6be2e4c377494e2378b1cae2920a91d1182d8c4";
       };
     };
-    "jquery.terminal-2.15.0" = {
+    "jquery.terminal-2.15.2" = {
       name = "jquery.terminal";
       packageName = "jquery.terminal";
-      version = "2.15.0";
+      version = "2.15.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/jquery.terminal/-/jquery.terminal-2.15.0.tgz";
-        sha512 = "Dp8ahqK1lcphpmx9veb+S/ZxEt5mk4rHcVTbslCgngIiqH4LX7VtnSIQ2Lm5O0y/lp4eMPaNSTgPniCziF6ACQ==";
+        url = "https://registry.npmjs.org/jquery.terminal/-/jquery.terminal-2.15.2.tgz";
+        sha512 = "/G5L/laZLLO0tEQ+a94mLnvDXB5+PbC9IuZB+ikbw4E7W3GQkRpa0I15Z3xA+WbOaVZj+hEtPcKyyQLcKdjULQ==";
       };
     };
     "js-base64-2.5.2" = {
@@ -23777,6 +24029,15 @@ let
         sha512 = "O901mfJSuTdwU2w3Sn+74T+RnDVP+FuV5fH8tcPWyqrseRAb0s5xOtPgCFiPOtLcyK7CLIJwPyD83ZqQWvA5ng==";
       };
     };
+    "jsdom-15.2.1" = {
+      name = "jsdom";
+      packageName = "jsdom";
+      version = "15.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsdom/-/jsdom-15.2.1.tgz";
+        sha512 = "fAl1W0/7T2G5vURSyxBzrJ1LSdQn6Tr5UX/xD4PXDx/PDgwygedfW6El/KIj3xJ7FU61TTYnc/l/B7P49Eqt6g==";
+      };
+    };
     "jsdom-7.2.2" = {
       name = "jsdom";
       packageName = "jsdom";
@@ -24056,13 +24317,13 @@ let
         sha512 = "8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==";
       };
     };
-    "json5-2.1.1" = {
+    "json5-2.1.2" = {
       name = "json5";
       packageName = "json5";
-      version = "2.1.1";
+      version = "2.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz";
-        sha512 = "l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==";
+        url = "https://registry.npmjs.org/json5/-/json5-2.1.2.tgz";
+        sha512 = "MoUOQ4WdiN3yxhm7NEVJSJrieAo5hNSLQ5sj05OTRHPL9HOBy8u4Bu88jsC1jvqAdN+E1bJmsUcZH+1HQxliqQ==";
       };
     };
     "jsonata-1.8.1" = {
@@ -24128,6 +24389,15 @@ let
         sha1 = "8771aae0799b64076b76640fca058f9c10e33ecb";
       };
     };
+    "jsonfile-6.0.1" = {
+      name = "jsonfile";
+      packageName = "jsonfile";
+      version = "6.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsonfile/-/jsonfile-6.0.1.tgz";
+        sha512 = "jR2b5v7d2vIOust+w3wtFKZIfpC2pnRmFAhAC/BuweZFQR8qZzxH1OyrQ10HmdVYiXWkYUqPVsz91cG7EL2FBg==";
+      };
+    };
     "jsonify-0.0.0" = {
       name = "jsonify";
       packageName = "jsonify";
@@ -25264,6 +25534,15 @@ let
         sha512 = "04PDPqSlsqIOaaaGZ+41vq5FejI9auqTInicFRndCBgE3bXG8D6W1I+mWhk+1nqbHmyhla/6BUrd5OSiHwKRXw==";
       };
     };
+    "load-from-cwd-or-npm-3.0.4" = {
+      name = "load-from-cwd-or-npm";
+      packageName = "load-from-cwd-or-npm";
+      version = "3.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/load-from-cwd-or-npm/-/load-from-cwd-or-npm-3.0.4.tgz";
+        sha512 = "tdDJgh1zVmxOV24gcj+AEagjTc30Jim9ywX2OxfABdOoTU4UK8b0B371ZNbpj27njP8LQ6U5FH1aNwC2+VRxQg==";
+      };
+    };
     "load-ip-set-2.1.0" = {
       name = "load-ip-set";
       packageName = "load-ip-set";
@@ -25318,6 +25597,15 @@ let
         sha512 = "dYB1lbwqHgPTrruy9glukCu8Ya9vzj6TMfouCtj2H/GuJ+8syioisgKTBPxnCi6m8K8jINKfTOxOHngFkUYqHw==";
       };
     };
+    "load-request-from-cwd-or-npm-3.0.0" = {
+      name = "load-request-from-cwd-or-npm";
+      packageName = "load-request-from-cwd-or-npm";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/load-request-from-cwd-or-npm/-/load-request-from-cwd-or-npm-3.0.0.tgz";
+        sha512 = "UsYAoXQV3UeL75Rl5IppBGOcKK5iKpvWooUPUHdxcQg9IKIkfg6PWpBQ4EhoRxTioIqrz587Ur2+c2uB/KGpng==";
+      };
+    };
     "loader-runner-2.4.0" = {
       name = "loader-runner";
       packageName = "loader-runner";
@@ -27091,15 +27379,6 @@ let
         sha1 = "e01a5c9109f2af79660e4e8b9587790184f5a96c";
       };
     };
-    "mamacro-0.0.3" = {
-      name = "mamacro";
-      packageName = "mamacro";
-      version = "0.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz";
-        sha512 = "qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==";
-      };
-    };
     "map-age-cleaner-0.1.3" = {
       name = "map-age-cleaner";
       packageName = "map-age-cleaner";
@@ -27604,6 +27883,15 @@ let
         sha512 = "iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==";
       };
     };
+    "mdn-data-2.0.6" = {
+      name = "mdn-data";
+      packageName = "mdn-data";
+      version = "2.0.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.6.tgz";
+        sha512 = "rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==";
+      };
+    };
     "mdns-js-0.5.0" = {
       name = "mdns-js";
       packageName = "mdns-js";
@@ -27865,13 +28153,13 @@ let
         sha512 = "CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==";
       };
     };
-    "meow-6.0.1" = {
+    "meow-6.1.0" = {
       name = "meow";
       packageName = "meow";
-      version = "6.0.1";
+      version = "6.1.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/meow/-/meow-6.0.1.tgz";
-        sha512 = "kxGTFgT/b7/oSRSQsJ0qsT5IMU+bgZ1eAdSA3kIV7onkW0QWo/hL5RbGlMfvBjHJKPE1LaPX0kdecYFiqYWjUw==";
+        url = "https://registry.npmjs.org/meow/-/meow-6.1.0.tgz";
+        sha512 = "iIAoeI01v6pmSfObAAWFoITAA4GgiT45m4SmJgoxtZfvI0fyZwhV4d0lTwiUXvAKIPlma05Feb2Xngl52Mj5Cg==";
       };
     };
     "merge-1.2.1" = {
@@ -28558,6 +28846,24 @@ let
         sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
       };
     };
+    "mkdirp-0.5.3" = {
+      name = "mkdirp";
+      packageName = "mkdirp";
+      version = "0.5.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz";
+        sha512 = "P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==";
+      };
+    };
+    "mkdirp-0.5.4" = {
+      name = "mkdirp";
+      packageName = "mkdirp";
+      version = "0.5.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz";
+        sha512 = "iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==";
+      };
+    };
     "mkdirp-1.0.3" = {
       name = "mkdirp";
       packageName = "mkdirp";
@@ -28621,6 +28927,15 @@ let
         sha512 = "A/78XjoX2EmNvppVWEhM2oGk3x4lLxnkEA4jTbaK97QKSDjkIoOsKQlfylt/d3kKKi596Qy3NP5XrXJ6fZIC9Q==";
       };
     };
+    "module-definition-3.3.0" = {
+      name = "module-definition";
+      packageName = "module-definition";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/module-definition/-/module-definition-3.3.0.tgz";
+        sha512 = "HTplA9xwDzH67XJFC1YvZMUElWJD28DV0dUq7lhTs+JKJamUOWA/CcYWSlhW5amJO66uWtY7XdltT+LfX0wIVg==";
+      };
+    };
     "module-deps-6.2.2" = {
       name = "module-deps";
       packageName = "module-deps";
@@ -28630,6 +28945,15 @@ let
         sha512 = "a9y6yDv5u5I4A+IPHTnqFxcaKr4p50/zxTjcQJaX2ws9tN/W6J6YXnEKhqRyPhl494dkcxx951onSKVezmI+3w==";
       };
     };
+    "module-lookup-amd-6.2.0" = {
+      name = "module-lookup-amd";
+      packageName = "module-lookup-amd";
+      version = "6.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/module-lookup-amd/-/module-lookup-amd-6.2.0.tgz";
+        sha512 = "uxHCj5Pw9psZiC1znjU2qPsubt6haCSsN9m7xmIdoTciEgfxUkE1vhtDvjHPuOXEZrVJhjKgkmkP+w73rRuelQ==";
+      };
+    };
     "mold-source-map-0.4.0" = {
       name = "mold-source-map";
       packageName = "mold-source-map";
@@ -28702,13 +29026,13 @@ let
         sha512 = "IrhznRheWtDcT/TEL3cqaT4UJOqc5G3K8TnGq29PRXZil+sWGPkcM6SHVUZVirTKFKceuCadfyDMjmRoXCN21A==";
       };
     };
-    "morgan-1.9.1" = {
+    "morgan-1.10.0" = {
       name = "morgan";
       packageName = "morgan";
-      version = "1.9.1";
+      version = "1.10.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/morgan/-/morgan-1.9.1.tgz";
-        sha512 = "HQStPIV4y3afTiCYVxirakhlCfGkI161c76kKFca7Fk1JusM//Qeo1ej2XaMniiNeaZklMVrh3vTtIzpzwbpmA==";
+        url = "https://registry.npmjs.org/morgan/-/morgan-1.10.0.tgz";
+        sha512 = "AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==";
       };
     };
     "mout-0.5.0" = {
@@ -29570,6 +29894,15 @@ let
         sha512 = "+T6UtYItDTE1L30g/nLRjP55dFlvldrzCRsn4CrcNHIbhg5JUe0hnOx1DHFViysUC7I1cevBQVjdGJ9ZftY9DA==";
       };
     };
+    "neat-stack-1.0.1" = {
+      name = "neat-stack";
+      packageName = "neat-stack";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/neat-stack/-/neat-stack-1.0.1.tgz";
+        sha512 = "nl0eft4etsbFowZVP+1lNqZsNKb2SIC+PnAr/ODBln6RNVaJh0YYu8P3j8Iuh4XeIAgyWn3xCSizbTobRjocIA==";
+      };
+    };
     "neat-tasks-1.1.1" = {
       name = "neat-tasks";
       packageName = "neat-tasks";
@@ -30184,6 +30517,15 @@ let
         sha512 = "hwaTaFPUwNKns5qXwGJpLQM3Z5zRluYeAxpYy1L8fWmWdT/DjLmsnW8/oGlSN8Vo4R28c2znfUoBUiB/RlPptw==";
       };
     };
+    "node-source-walk-4.2.0" = {
+      name = "node-source-walk";
+      packageName = "node-source-walk";
+      version = "4.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/node-source-walk/-/node-source-walk-4.2.0.tgz";
+        sha512 = "hPs/QMe6zS94f5+jG3kk9E7TNm4P2SulrKiLWMzKszBfNZvL/V6wseHlTd7IvfW0NZWqPtK3+9yYNr+3USGteA==";
+      };
+    };
     "node-ssdp-2.9.1" = {
       name = "node-ssdp";
       packageName = "node-ssdp";
@@ -30472,6 +30814,15 @@ let
         sha512 = "KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==";
       };
     };
+    "npcache-1.0.2" = {
+      name = "npcache";
+      packageName = "npcache";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npcache/-/npcache-1.0.2.tgz";
+        sha512 = "h42LqKZvSbykPoCyAwEKbJAXUpt1SZ7O8GvA0XRqb26VtWQuKLJtp+Rt4jqkq1Y+ZRErINdyeZ3Ijc5lDtqkSg==";
+      };
+    };
     "npm-2.15.12" = {
       name = "npm";
       packageName = "npm";
@@ -30490,6 +30841,51 @@ let
         sha512 = "gqkfgGePhTpAEgUsGEgcq1rqPXA+tv/aVBlgEzfXwA1yiUJF7xtEt3CtVwOjNYQOVknDk0F20w58Fnm3EtG0fA==";
       };
     };
+    "npm-cache-env-2.0.0" = {
+      name = "npm-cache-env";
+      packageName = "npm-cache-env";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-cache-env/-/npm-cache-env-2.0.0.tgz";
+        sha512 = "t5cz/NY4IPmiKBRFry3U3M8Ypwdx4LJ3w7te/49LWB2R4wPf5QAAGB1zNoH9IbGtC/wiOeE8b/HsoG2lLAOYaQ==";
+      };
+    };
+    "npm-cache-path-2.0.0" = {
+      name = "npm-cache-path";
+      packageName = "npm-cache-path";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-cache-path/-/npm-cache-path-2.0.0.tgz";
+        sha512 = "7OJzaenruC1PffVJ7onG0u4aTQLaykT4gF5n61j9fot58J4ppoglkrv+pY4BsFR2drPWb6vbEpJH7/Xviv7h+Q==";
+      };
+    };
+    "npm-cli-dir-3.0.1" = {
+      name = "npm-cli-dir";
+      packageName = "npm-cli-dir";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-cli-dir/-/npm-cli-dir-3.0.1.tgz";
+        sha512 = "t9V9Gz/Q5a5KOSynLpKKnLxJzWLnHtAZvaLmNSbNeNR+qEpCmu/n5J74lyz4QQ/XIGEEYWIoVXR8scqbUWaMrQ==";
+      };
+    };
+    "npm-cli-path-3.1.2" = {
+      name = "npm-cli-path";
+      packageName = "npm-cli-path";
+      version = "3.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-cli-path/-/npm-cli-path-3.1.2.tgz";
+        sha512 = "JdiFz8kpCf9WD01zRx5u29EP5UYjKp9osSVMflPkamlplgsuaagkwqY3JpzDySl/VDpGUva8q8YoSG6AatFkIg==";
+      };
+    };
+    "npm-cli-version-1.0.0" = {
+      name = "npm-cli-version";
+      packageName = "npm-cli-version";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-cli-version/-/npm-cli-version-1.0.0.tgz";
+        sha512 = "VqqnMzMfcZ0UZFDki7ZR8E4U8Pz7VbTOGSMk8KJbQ+oUlJlon8IXhb6BIdMJClRArHn216useYM1kvqgZmDvtQ==";
+      };
+    };
     "npm-conf-1.1.3" = {
       name = "npm-conf";
       packageName = "npm-conf";
@@ -30697,6 +31093,15 @@ let
         sha512 = "S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==";
       };
     };
+    "npm-version-compare-1.0.1" = {
+      name = "npm-version-compare";
+      packageName = "npm-version-compare";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/npm-version-compare/-/npm-version-compare-1.0.1.tgz";
+        sha512 = "X+/Oz2OkF6KzMqyFyNBV5MC1ScPxtl5bJTkUcIp9Bz5Wv2Yf8uqDIq+vu+/gy2DRb11Q2Z6jfHbav7Ux0t99JQ==";
+      };
+    };
     "npm-which-3.0.1" = {
       name = "npm-which";
       packageName = "npm-which";
@@ -31472,6 +31877,15 @@ let
         sha1 = "da3ea74686fa21a19a111c326e90eb15a0196686";
       };
     };
+    "optional-0.1.4" = {
+      name = "optional";
+      packageName = "optional";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/optional/-/optional-0.1.4.tgz";
+        sha512 = "gtvrrCfkE08wKcgXaVwQVgwEQ8vel2dc5DDBn9RLQZ3YtmtkBss6A2HY6BnJH4N/4Ku97Ri/SF8sNWE2225WJw==";
+      };
+    };
     "optionator-0.3.0" = {
       name = "optionator";
       packageName = "optionator";
@@ -32939,6 +33353,24 @@ let
         sha1 = "1d408b3fdb76923b9543d96fb4c9dfd535d9cb5d";
       };
     };
+    "pause-fn-1.0.0" = {
+      name = "pause-fn";
+      packageName = "pause-fn";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pause-fn/-/pause-fn-1.0.0.tgz";
+        sha512 = "23uUK11+go9zE7ij4Qh45HPvqanTt22viyNsHnWrRFVgcT5TV4MFtfMhx/wL2aMt0LYbqTsJJZgG3V4C57+NQw==";
+      };
+    };
+    "pause-methods-1.0.0" = {
+      name = "pause-methods";
+      packageName = "pause-methods";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pause-methods/-/pause-methods-1.0.0.tgz";
+        sha512 = "RA8T1+kt1wbD8p0y9/x0BuCMBwNRJzp08euseZ7ZSLGeBUSNHh4yLIsq9J+7fCSDAwnHTjQPSzShwoFnBj0QNQ==";
+      };
+    };
     "pause-stream-0.0.11" = {
       name = "pause-stream";
       packageName = "pause-stream";
@@ -33056,13 +33488,13 @@ let
         sha1 = "18de2f97e4bf7a9551ad7511942b5496f7aba660";
       };
     };
-    "picomatch-2.2.1" = {
+    "picomatch-2.2.2" = {
       name = "picomatch";
       packageName = "picomatch";
-      version = "2.2.1";
+      version = "2.2.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/picomatch/-/picomatch-2.2.1.tgz";
-        sha512 = "ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA==";
+        url = "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz";
+        sha512 = "q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==";
       };
     };
     "picture-tuber-1.0.2" = {
@@ -33272,6 +33704,15 @@ let
         sha1 = "b5418ef0439de5425fc4995042dced14fb2a84ff";
       };
     };
+    "platform-name-1.0.0" = {
+      name = "platform-name";
+      packageName = "platform-name";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/platform-name/-/platform-name-1.0.0.tgz";
+        sha512 = "ZRbqJ30uRRKGKW2O1XnG/Ls1K/aBGlnyjq1Z0BbjqDPTNN+XZKFaugCsCm3/mq6XGR5DZNVdV75afpQEvNNY3Q==";
+      };
+    };
     "playerui-1.3.0" = {
       name = "playerui";
       packageName = "playerui";
@@ -33957,6 +34398,15 @@ let
         sha512 = "N7h4pG+Nnu5BEIzyeaaIYWs0LI5XC40OrRh5L60z0QjFsqGWcHcbkBvpe1WYpcIS9yQ8sOi/vIPt1ejQCrMVrg==";
       };
     };
+    "postcss-values-parser-1.5.0" = {
+      name = "postcss-values-parser";
+      packageName = "postcss-values-parser";
+      version = "1.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-1.5.0.tgz";
+        sha512 = "3M3p+2gMp0AH3da530TlX8kiO1nxdTnc3C6vr8dMxRLIlh8UYkz0/wcwptSXjhtx2Fr0TySI7a+BHDQ8NL7LaQ==";
+      };
+    };
     "posthtml-0.11.6" = {
       name = "posthtml";
       packageName = "posthtml";
@@ -34002,6 +34452,15 @@ let
         sha512 = "GV+nsUXuPW2p8Zy7SarF/2W/oiK8bFQgJcncoJ0d7kRpekEA0ftChjfEaF9/Y+QJEc/wFR7RAEa8lYByuUIe2g==";
       };
     };
+    "precinct-6.2.0" = {
+      name = "precinct";
+      packageName = "precinct";
+      version = "6.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/precinct/-/precinct-6.2.0.tgz";
+        sha512 = "BCAmnOxZzobF3H1/h/gq70pEyvX/BVLWCrzi8beFD22dqu5Z14qOghNUsI24Wg8oaTsGFcIjOGtFX5L9ttmjVg==";
+      };
+    };
     "precond-0.2.3" = {
       name = "precond";
       packageName = "precond";
@@ -34416,13 +34875,13 @@ let
         sha1 = "5f8a704ccdf5f2ac23996fcafe2b301bc2a8d0eb";
       };
     };
-    "promisify-child-process-3.1.3" = {
+    "promisify-child-process-3.1.4" = {
       name = "promisify-child-process";
       packageName = "promisify-child-process";
-      version = "3.1.3";
+      version = "3.1.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/promisify-child-process/-/promisify-child-process-3.1.3.tgz";
-        sha512 = "qVox3vW2hqbktVw+IN7YZ/kgGA+u426ekmiZxiofNe9O4GSewjROwRQ4MQ6IbvhpeYSLqiLS0kMn+FWCz6ENlg==";
+        url = "https://registry.npmjs.org/promisify-child-process/-/promisify-child-process-3.1.4.tgz";
+        sha512 = "tLifJs99E4oOXUz/dKQjRgdchfiepmYQzBVrcVX9BtUWi9aGJeGSf2KgXOWBW1JFsSYgLkl1Z9HRm8i0sf4cTg==";
       };
     };
     "promisize-1.1.2" = {
@@ -34452,13 +34911,13 @@ let
         sha1 = "8e57123c396ab988897fb327fd3aedc3e735e4fe";
       };
     };
-    "prompts-2.3.1" = {
+    "prompts-2.3.2" = {
       name = "prompts";
       packageName = "prompts";
-      version = "2.3.1";
+      version = "2.3.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/prompts/-/prompts-2.3.1.tgz";
-        sha512 = "qIP2lQyCwYbdzcqHIUi2HAxiWixhoM9OdLCWf8txXsapC/X9YdsCoeyRIXE/GP+Q0J37Q7+XN/MFqbUa7IzXNA==";
+        url = "https://registry.npmjs.org/prompts/-/prompts-2.3.2.tgz";
+        sha512 = "Q06uKs2CkNYVID0VqwfAl9mipo99zkBv/n2JtWY89Yxa3ZabWSrs0e2KTudKVa3peLUvYXMefDqIleLPVUBZMA==";
       };
     };
     "promzard-0.3.0" = {
@@ -34488,15 +34947,6 @@ let
         sha1 = "159fb06193d32003f4b3691dd2ec1a634aa80d1d";
       };
     };
-    "proper-lockfile-3.2.0" = {
-      name = "proper-lockfile";
-      packageName = "proper-lockfile";
-      version = "3.2.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-3.2.0.tgz";
-        sha512 = "iMghHHXv2bsxl6NchhEaFck8tvX3F9cknEEh1SUpguUOBjN7PAAW9BLzmbc1g/mCD1gY3EE2EABBHPJfFdHFmA==";
-      };
-    };
     "properties-1.2.1" = {
       name = "properties";
       packageName = "properties";
@@ -35415,6 +35865,15 @@ let
         sha512 = "hEJH0s8PXLY/cdXh66tNEQGndDrIKNqNC5xmrysZy3i5C3oEoLna7YAOad+7u125+zH1HNXUmGEkrhb3c2VriA==";
       };
     };
+    "purescript-0.12.5" = {
+      name = "purescript";
+      packageName = "purescript";
+      version = "0.12.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/purescript/-/purescript-0.12.5.tgz";
+        sha512 = "L0N0KrRgZm8pXYqT8Dc5m6BzjnYvkOaxx9Tms874NUivm8DYSs3oLtDrnNM8cVrjCCXCvS0g8l73CKNymaL6qw==";
+      };
+    };
     "purgecss-1.4.2" = {
       name = "purgecss";
       packageName = "purgecss";
@@ -35586,13 +36045,13 @@ let
         sha512 = "VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==";
       };
     };
-    "qs-6.9.1" = {
+    "qs-6.9.2" = {
       name = "qs";
       packageName = "qs";
-      version = "6.9.1";
+      version = "6.9.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/qs/-/qs-6.9.1.tgz";
-        sha512 = "Cxm7/SS/y/Z3MHWSxXb8lIFqgqBowP5JMlTUFyJN88y0SGQhVmZnqFK/PeuMX9LzUyWsqqhNxIyg0jlzq946yA==";
+        url = "https://registry.npmjs.org/qs/-/qs-6.9.2.tgz";
+        sha512 = "2eQ6zajpK7HwqrY1rRtGw5IZvjgtELXzJECaEDuzDFo2jjnIXpJSimzd4qflWZq6bLLi+Zgfj5eDrAzl/lptyg==";
       };
     };
     "query-string-1.0.1" = {
@@ -35892,6 +36351,15 @@ let
         sha512 = "PPYLwZ63lXi6Tv2EZ8w3M4FzC0rVqvxivaOVS8pXSp5FMIHFnvi4MWHL3UdFLhwSy50aNtJsgjY0mBC6oFL26Q==";
       };
     };
+    "rate-map-1.0.5" = {
+      name = "rate-map";
+      packageName = "rate-map";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rate-map/-/rate-map-1.0.5.tgz";
+        sha512 = "u/oBh01ZgCZM8Dqkm+xUh9mLl5t/9wxBNpVDZUSKjYvPSOOwYCeVheS5esvdyVnR0k3sLh+H9v16h1Z7FRy2Fw==";
+      };
+    };
     "raven-1.2.1" = {
       name = "raven";
       packageName = "raven";
@@ -35982,22 +36450,22 @@ let
         sha512 = "C0SIXdXDSus2yqqvV7qifnb4NoWP7mEBXJq3axci301mXHCZb8Djwm4hrEZo4UeXRaEnfjH98uQ8EBppk2oNWA==";
       };
     };
-    "react-16.13.0" = {
+    "react-16.13.1" = {
       name = "react";
       packageName = "react";
-      version = "16.13.0";
+      version = "16.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/react/-/react-16.13.0.tgz";
-        sha512 = "TSavZz2iSLkq5/oiE7gnFzmURKZMltmi193rm5HEoUDAXpzT9Kzw6oNZnGoai/4+fUnm7FqS5dwgUL34TujcWQ==";
+        url = "https://registry.npmjs.org/react/-/react-16.13.1.tgz";
+        sha512 = "YMZQQq32xHLX0bz5Mnibv1/LHb3Sqzngu7xstSM+vrkE5Kzr9xE0yMByK5kMoTK30YVJE61WfbxIFFvfeDKT1w==";
       };
     };
-    "react-is-16.13.0" = {
+    "react-is-16.13.1" = {
       name = "react-is";
       packageName = "react-is";
-      version = "16.13.0";
+      version = "16.13.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/react-is/-/react-is-16.13.0.tgz";
-        sha512 = "GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==";
+        url = "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz";
+        sha512 = "24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==";
       };
     };
     "react-reconciler-0.24.0" = {
@@ -36486,13 +36954,13 @@ let
         sha512 = "ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==";
       };
     };
-    "regenerator-transform-0.14.3" = {
+    "regenerator-transform-0.14.4" = {
       name = "regenerator-transform";
       packageName = "regenerator-transform";
-      version = "0.14.3";
+      version = "0.14.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.3.tgz";
-        sha512 = "zXHNKJspmONxBViAb3ZUmFoFPnTBs3zFhCEZJiwp/gkNzxVbTqNJVjYKx6Qk1tQ1P4XLf4TbH9+KBB7wGoAaUw==";
+        url = "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.4.tgz";
+        sha512 = "EaJaKPBI9GvKpvUz2mz4fhx7WPgvwRLY9v3hlNHWmAuJHI13T4nwKnNvm5RWJzEdnI5g5UwtOww+S8IdoUC2bw==";
       };
     };
     "regex-cache-0.4.4" = {
@@ -36630,6 +37098,15 @@ let
         sha1 = "3361ecfa3ca6c18283380dd0bb9546f390f5ece7";
       };
     };
+    "reject-unsatisfied-npm-version-1.0.0" = {
+      name = "reject-unsatisfied-npm-version";
+      packageName = "reject-unsatisfied-npm-version";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/reject-unsatisfied-npm-version/-/reject-unsatisfied-npm-version-1.0.0.tgz";
+        sha512 = "8cl35x8i3W1+RubvIq9CM7fJkdMwBOdjne4b7eFBoo4vvN1QoXbgusQw6VVv2DBmm6NDyMhUmp9FBxaMWU9s7Q==";
+      };
+    };
     "relateurl-0.2.7" = {
       name = "relateurl";
       packageName = "relateurl";
@@ -36693,13 +37170,13 @@ let
         sha512 = "K0PTsaZvJlXTl9DN6qYlvjTkqSZBFELhROZMrblm2rB+085flN84nz4g/BscKRMqDvhzlK1oQ/xnWQumdeNZYw==";
       };
     };
-    "remark-frontmatter-1.3.2" = {
+    "remark-frontmatter-1.3.3" = {
       name = "remark-frontmatter";
       packageName = "remark-frontmatter";
-      version = "1.3.2";
+      version = "1.3.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-1.3.2.tgz";
-        sha512 = "2eayxITZ8rezsXdgcXnYB3iLivohm2V/ZT4Ne8uhua6A4pk6GdLE2ZzJnbnINtD1HRLaTdB7RwF9sgUbMptJZA==";
+        url = "https://registry.npmjs.org/remark-frontmatter/-/remark-frontmatter-1.3.3.tgz";
+        sha512 = "fM5eZPBvu2pVNoq3ZPW22q+5Ativ1oLozq2qYt9I2oNyxiUd/tDl0iLLntEVAegpZIslPWg1brhcP1VsaSVUag==";
       };
     };
     "remark-html-2.0.2" = {
@@ -37080,6 +37557,15 @@ let
         sha512 = "ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg==";
       };
     };
+    "requirejs-config-file-3.1.2" = {
+      name = "requirejs-config-file";
+      packageName = "requirejs-config-file";
+      version = "3.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/requirejs-config-file/-/requirejs-config-file-3.1.2.tgz";
+        sha512 = "sdLWywcDuNz7EIOhenSbRfT4YF84nItDv90coN2htbokjmU2QeyQuSBZILQUKNksepl8UPVU+hgYySFaDxbJPQ==";
+      };
+    };
     "requires-port-1.0.0" = {
       name = "requires-port";
       packageName = "requires-port";
@@ -37134,6 +37620,15 @@ let
         sha1 = "00a9f7387556e27038eae232caa372a6a59b665a";
       };
     };
+    "resolve-dependency-path-2.0.0" = {
+      name = "resolve-dependency-path";
+      packageName = "resolve-dependency-path";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-dependency-path/-/resolve-dependency-path-2.0.0.tgz";
+        sha512 = "DIgu+0Dv+6v2XwRaNWnumKu7GPufBBOr5I1gRPJHkvghrfCGOooJODFvgFimX/KRxk9j0whD2MnKHzM1jYvk9w==";
+      };
+    };
     "resolve-dir-1.0.1" = {
       name = "resolve-dir";
       packageName = "resolve-dir";
@@ -37188,6 +37683,15 @@ let
         sha512 = "qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==";
       };
     };
+    "resolve-from-npm-3.1.0" = {
+      name = "resolve-from-npm";
+      packageName = "resolve-from-npm";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-from-npm/-/resolve-from-npm-3.1.0.tgz";
+        sha512 = "HVhEcznfeFWM7T3HWCT7vCjwkv0R1ruC4Ref5jTlTvz2X8GKeUZTqjvZWlefmKQvQfKYOJhQo90Yjhpcr8aclg==";
+      };
+    };
     "resolve-options-1.1.0" = {
       name = "resolve-options";
       packageName = "resolve-options";
@@ -37674,13 +38178,13 @@ let
         sha1 = "6f04063a2d04eba3303a1bbc6765eef63037cf3d";
       };
     };
-    "rss-parser-3.7.5" = {
+    "rss-parser-3.7.6" = {
       name = "rss-parser";
       packageName = "rss-parser";
-      version = "3.7.5";
+      version = "3.7.6";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rss-parser/-/rss-parser-3.7.5.tgz";
-        sha512 = "bUbAJfiuNyR/IGpYie6ro6x7X26QMWHxz1Sy9qkPyU/vYwbf3YdopQJIIELwdp3FCU4evcyetOD8bA8fgS+SqA==";
+        url = "https://registry.npmjs.org/rss-parser/-/rss-parser-3.7.6.tgz";
+        sha512 = "wWWh3/pPLAPgWyfkCC9jB83jSBenU6VPMymfXiysi8wJxaN7KNkW4vU3Jm8jQxExAribFvXREy+RtaL3XQubeA==";
       };
     };
     "rsvp-3.6.2" = {
@@ -37737,6 +38241,15 @@ let
         sha512 = "xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg==";
       };
     };
+    "run-in-dir-0.3.0" = {
+      name = "run-in-dir";
+      packageName = "run-in-dir";
+      version = "0.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/run-in-dir/-/run-in-dir-0.3.0.tgz";
+        sha512 = "5aPpxad3Jq9r6OK6rw+Gs5HVuZsEeQM/M4I9CdCWyThkstLAUCJSc3IRs8dT0p/z9mxAJgU5ELRQL2q/ddY6PQ==";
+      };
+    };
     "run-parallel-1.1.9" = {
       name = "run-parallel";
       packageName = "run-parallel";
@@ -37863,6 +38376,15 @@ let
         sha512 = "naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==";
       };
     };
+    "s.color-0.0.13" = {
+      name = "s.color";
+      packageName = "s.color";
+      version = "0.0.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/s.color/-/s.color-0.0.13.tgz";
+        sha512 = "56rTWlPg3jQX5n2wv201gUBn8fSgnGwbNjN159FV+JeD4EeqZiVnhDASmivhE4+f9Ivzj59y5AgoFflsf25KwA==";
+      };
+    };
     "s3-stream-upload-2.0.2" = {
       name = "s3-stream-upload";
       packageName = "s3-stream-upload";
@@ -37989,6 +38511,24 @@ let
         sha512 = "y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==";
       };
     };
+    "sass-formatter-0.4.4" = {
+      name = "sass-formatter";
+      packageName = "sass-formatter";
+      version = "0.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sass-formatter/-/sass-formatter-0.4.4.tgz";
+        sha512 = "pI/2olF5F3AMkAXbn71nJK7yAsWfRYLlyp7Suhiy4hzuNga05XaUzLO74lplCpvS8GVeUdFgef+8lU5+cHr60g==";
+      };
+    };
+    "sass-lookup-3.0.0" = {
+      name = "sass-lookup";
+      packageName = "sass-lookup";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sass-lookup/-/sass-lookup-3.0.0.tgz";
+        sha512 = "TTsus8CfFRn1N44bvdEai1no6PqdmDiQUiqW5DlpmtT+tYnIt1tXtDIph5KA1efC+LmioJXSnCtUVpcK9gaKIg==";
+      };
+    };
     "sax-0.5.8" = {
       name = "sax";
       packageName = "sax";
@@ -38052,6 +38592,15 @@ let
         sha512 = "i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==";
       };
     };
+    "schema-utils-2.6.5" = {
+      name = "schema-utils";
+      packageName = "schema-utils";
+      version = "2.6.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/schema-utils/-/schema-utils-2.6.5.tgz";
+        sha512 = "5KXuwKziQrTVHh8j/Uxz+QUbxkaLW9X/86NBlx/gnKgtsZA2GIVMUn17qWhRFwF8jdYb3Dig5hRO/W5mZqy6SQ==";
+      };
+    };
     "scoped-regex-1.0.0" = {
       name = "scoped-regex";
       packageName = "scoped-regex";
@@ -39015,13 +39564,22 @@ let
         sha512 = "dKKwjIoTOa587TARYLlBRXq2lkbu5Iz35XrEVWpelhBP1m8r2BGOy1QlaZe84GTFHG/BTucEUd2btnNc8QzIVA==";
       };
     };
-    "sisteransi-1.0.4" = {
+    "sisteransi-1.0.5" = {
       name = "sisteransi";
       packageName = "sisteransi";
-      version = "1.0.4";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz";
+        sha512 = "bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==";
+      };
+    };
+    "size-rate-0.3.1" = {
+      name = "size-rate";
+      packageName = "size-rate";
+      version = "0.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.4.tgz";
-        sha512 = "/ekMoM4NJ59ivGSfKapeG+FWtrmWvA1p6FBZwXrqojw90vJu8lBmrTxCMuBCydKtkaUe2zt4PlxeTKpjwMbyig==";
+        url = "https://registry.npmjs.org/size-rate/-/size-rate-0.3.1.tgz";
+        sha512 = "gs1+6r1P1w00Qv00qC4Be2pbl70/cIVCtsZJPQhEzH3vNss8QbkGIVh6/SCC7atSlX7hkuwH93TyWL1iyXjurQ==";
       };
     };
     "skin-tone-1.0.0" = {
@@ -39258,13 +39816,13 @@ let
         sha512 = "9NjxHVMd1U1LFw66Lya4LXgrsFUiuRiL4opxfTFo0LmMNzUoU5Bk/p0zDdg3FE5Wg61r4fP2D8w+QTl6M8CGiw==";
       };
     };
-    "snyk-docker-plugin-2.2.2" = {
+    "snyk-docker-plugin-2.6.1" = {
       name = "snyk-docker-plugin";
       packageName = "snyk-docker-plugin";
-      version = "2.2.2";
+      version = "2.6.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-2.2.2.tgz";
-        sha512 = "ufeACGqtypUJ3AV5+bQw/mZLo40MC9tVHdRxpBw95w0F0Oa1MT5DATQj/K8RHpkEy8X6rlMmnxH8swyryFgRhg==";
+        url = "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-2.6.1.tgz";
+        sha512 = "v3LIPILRL5faZ+qiIhF9on0rAxuFaQku3UwaiGumoTrfXywLkv7x8PJgdMnrsWUxDwB8EZFc1k2qvI6V6rTF5g==";
       };
     };
     "snyk-go-parser-1.4.0" = {
@@ -39915,6 +40473,15 @@ let
         sha1 = "db338ec4cff63abc69f1d0e08cee9eb8bebd9d11";
       };
     };
+    "spawn-stack-0.7.0" = {
+      name = "spawn-stack";
+      packageName = "spawn-stack";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/spawn-stack/-/spawn-stack-0.7.0.tgz";
+        sha512 = "lV3XTrZqR76y9voQq3g0NfCCd4dylXtgQW+xcoZkRYe/6IZJM20G//s2+4JYojJoHQQKKuoU+lUZkO5/tEJe4A==";
+      };
+    };
     "spawn-sync-1.0.15" = {
       name = "spawn-sync";
       packageName = "spawn-sync";
@@ -41247,6 +41814,15 @@ let
         sha512 = "fqqhZzXyAM6pGD9lky/GOPq6V4X0SeTAFBl0iXb/BzOegl40gpf/bV3QQP7zULNYvjr6+Dx8SCaDULjVoOru0A==";
       };
     };
+    "stringify-object-3.3.0" = {
+      name = "stringify-object";
+      packageName = "stringify-object";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz";
+        sha512 = "rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==";
+      };
+    };
     "stringify-parameters-0.0.4" = {
       name = "stringify-parameters";
       packageName = "stringify-parameters";
@@ -41634,6 +42210,15 @@ let
         sha512 = "Yw3WMTzVwevT6ZTrLCYNHAFmanMxdylelL3hkWNgPMeTCpMwpV3nXjpOHuBXtFv7aiO2xRuQS6OoAdgkNcSNug==";
       };
     };
+    "stylus-lookup-3.0.2" = {
+      name = "stylus-lookup";
+      packageName = "stylus-lookup";
+      version = "3.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/stylus-lookup/-/stylus-lookup-3.0.2.tgz";
+        sha512 = "oEQGHSjg/AMaWlKe7gqsnYzan8DLcGIHe0dUaFkucZZ14z4zjENRlQMCHT4FNsiWnJf17YN9OvrCfCoi7VvOyg==";
+      };
+    };
     "stylus-supremacy-2.14.0" = {
       name = "stylus-supremacy";
       packageName = "stylus-supremacy";
@@ -41679,6 +42264,33 @@ let
         sha1 = "cc539bf8191624d4f507d83eeb45b4cea27f3463";
       };
     };
+    "suf-cli-0.1.1" = {
+      name = "suf-cli";
+      packageName = "suf-cli";
+      version = "0.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/suf-cli/-/suf-cli-0.1.1.tgz";
+        sha512 = "0znmYibLknX0bWsnqW9rzM8IvKux3rTSnW52l5teIC+QAgS/StUl5f4WyLPBw+posfbOgoX+03xHPV4sMxY64Q==";
+      };
+    };
+    "suf-node-1.1.1" = {
+      name = "suf-node";
+      packageName = "suf-node";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/suf-node/-/suf-node-1.1.1.tgz";
+        sha512 = "XiyPqLdiHJ3CMphADCJg/JVQYcj3JfO8NomlLubSdGYgppfzE+g/7Fyusza/Kr7lC919BdwbfIqFxK8VO7+l4w==";
+      };
+    };
+    "suf-regex-0.0.14" = {
+      name = "suf-regex";
+      packageName = "suf-regex";
+      version = "0.0.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/suf-regex/-/suf-regex-0.0.14.tgz";
+        sha512 = "+WE5PZTfD6lVNCNsyBInJIAbok8LpqgOhvCbSViZeQ/JTxdxq7Lw+tSJXGM+jrIp81jj9GCMYvkl00JAkn2CtA==";
+      };
+    };
     "sugarss-1.0.1" = {
       name = "sugarss";
       packageName = "sugarss";
@@ -42454,13 +43066,13 @@ let
         sha512 = "a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw==";
       };
     };
-    "terminal-kit-1.35.1" = {
+    "terminal-kit-1.35.2" = {
       name = "terminal-kit";
       packageName = "terminal-kit";
-      version = "1.35.1";
+      version = "1.35.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/terminal-kit/-/terminal-kit-1.35.1.tgz";
-        sha512 = "36q0frqenTb1kWuq+vJU+xbGB8KPX1+05kxnbVZxeu9cXDL68qR5w2NzsliogHweplRI7XP0Zc/FITMMA8/BHA==";
+        url = "https://registry.npmjs.org/terminal-kit/-/terminal-kit-1.35.2.tgz";
+        sha512 = "PCNmMKjlcGQN/OlQ+nzdgPmrS0kmPcOqPCmHPrxCfOuvz0fQ1fZLiyivRIcwzY9bnm624VVsywUis+iPA3Hq5A==";
       };
     };
     "terser-3.17.0" = {
@@ -42472,13 +43084,13 @@ let
         sha512 = "/FQzzPJmCpjAH9Xvk2paiWrFq+5M6aVOf+2KRbwhByISDX/EujxsK+BAvrhb6H+2rtrLCHK9N01wO014vrIwVQ==";
       };
     };
-    "terser-4.6.6" = {
+    "terser-4.6.7" = {
       name = "terser";
       packageName = "terser";
-      version = "4.6.6";
+      version = "4.6.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/terser/-/terser-4.6.6.tgz";
-        sha512 = "4lYPyeNmstjIIESr/ysHg2vUPRGf2tzF9z2yYwnowXVuVzLEamPN1Gfrz7f8I9uEPuHcbFlW4PLIAsJoxXyJ1g==";
+        url = "https://registry.npmjs.org/terser/-/terser-4.6.7.tgz";
+        sha512 = "fmr7M1f7DBly5cX2+rFDvmGBAaaZyPrHYK4mMdHEDAdNTqXSZgSOfqsfGq2HqPGT/1V0foZZuCZFx8CHKgAk3g==";
       };
     };
     "terser-webpack-plugin-1.4.3" = {
@@ -42742,6 +43354,15 @@ let
         sha512 = "eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==";
       };
     };
+    "tilde-path-3.0.0" = {
+      name = "tilde-path";
+      packageName = "tilde-path";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tilde-path/-/tilde-path-3.0.0.tgz";
+        sha512 = "jHGx1beQCxoIuyg1LDKxqL3J0zNA57eGjlXsqtcjj6Q9EKXh4Sz895VxXW/psJW1PYIF79XViZEEWrvmhaZ61g==";
+      };
+    };
     "tildify-1.2.0" = {
       name = "tildify";
       packageName = "tildify";
@@ -43147,15 +43768,6 @@ let
         sha512 = "Y7EDM+uoU8TZxF5ej2mUR0dLO4qbuuNRnJKxEht2QJWEq2421pyG1D1x8YxPKmyTc6nHh7Td/jLGFxYo+9vkLA==";
       };
     };
-    "to-vfile-5.0.3" = {
-      name = "to-vfile";
-      packageName = "to-vfile";
-      version = "5.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/to-vfile/-/to-vfile-5.0.3.tgz";
-        sha512 = "z1Lfx60yAMDMmr+f426Y4yECsHdl8GVEAE+LymjRF5oOIZ7T4N20IxWNAxXLMRzP9jSSll38Z0fKVAhVLsdLOw==";
-      };
-    };
     "to-vfile-6.1.0" = {
       name = "to-vfile";
       packageName = "to-vfile";
@@ -43588,13 +44200,13 @@ let
         sha512 = "uEtWkFM/sdZvRNNDL3Ehu4WVpwaulhwQszV8mrtcdeE8nN00BV9mAmQ88RkrBhFgl9gMgvjJLAQcZbnPXI9mlA==";
       };
     };
-    "ts-node-8.7.0" = {
+    "ts-node-8.8.1" = {
       name = "ts-node";
       packageName = "ts-node";
-      version = "8.7.0";
+      version = "8.8.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ts-node/-/ts-node-8.7.0.tgz";
-        sha512 = "s659CsHrsxaRVDEleuOkGvbsA0rWHtszUNEt1r0CgAFN5ZZTQtDzpsluS7W5pOGJIa1xZE8R/zK4dEs+ldFezg==";
+        url = "https://registry.npmjs.org/ts-node/-/ts-node-8.8.1.tgz";
+        sha512 = "10DE9ONho06QORKAaCBpPiFCdW+tZJuY/84tyypGtl6r+/C7Asq0dhqbRZURuUlLQtZxxDvT8eoj8cGW0ha6Bg==";
       };
     };
     "ts-process-promises-1.0.2" = {
@@ -43651,6 +44263,15 @@ let
         sha512 = "g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==";
       };
     };
+    "tsutils-3.17.1" = {
+      name = "tsutils";
+      packageName = "tsutils";
+      version = "3.17.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tsutils/-/tsutils-3.17.1.tgz";
+        sha512 = "kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==";
+      };
+    };
     "ttf2woff-2.0.1" = {
       name = "ttf2woff";
       packageName = "ttf2woff";
@@ -43705,6 +44326,24 @@ let
         sha512 = "C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==";
       };
     };
+    "tty-truncate-1.0.5" = {
+      name = "tty-truncate";
+      packageName = "tty-truncate";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tty-truncate/-/tty-truncate-1.0.5.tgz";
+        sha512 = "ftM6dBJyEXLMspVSO2huTtGQapxsljpmQh5jYMaUFeCgETOWNT/KZcBGXtoBEYRBO2JRdxsSSHPloa6Fy/AWXw==";
+      };
+    };
+    "tty-width-frame-1.0.3" = {
+      name = "tty-width-frame";
+      packageName = "tty-width-frame";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tty-width-frame/-/tty-width-frame-1.0.3.tgz";
+        sha512 = "k3DeWv+GnKYcFaFLK87Ecum4AWxySB0lfzQaonlHKaoum7A2DlTkWw8mfgWtz4o8Hoa4Ab/ZdDitR74LhbOK8A==";
+      };
+    };
     "tunnel-0.0.6" = {
       name = "tunnel";
       packageName = "tunnel";
@@ -43930,15 +44569,6 @@ let
         sha512 = "kk80vLW9iGtjMnIv11qyxLqZm20UklzuR2tL0QAnDIygIUIemcZMxlMWudl9OOt76H3ntVzcTiddQ1/pAAJMYg==";
       };
     };
-    "typescript-3.7.3" = {
-      name = "typescript";
-      packageName = "typescript";
-      version = "3.7.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/typescript/-/typescript-3.7.3.tgz";
-        sha512 = "Mcr/Qk7hXqFBXMN7p7Lusj1ktCBydylfQM/FZCk5glCNQJrCUKPkMHdo9R0MTFWsC/4kPFvDS0fDPvukfCkFsw==";
-      };
-    };
     "typescript-3.7.5" = {
       name = "typescript";
       packageName = "typescript";
@@ -44704,6 +45334,15 @@ let
         sha512 = "rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==";
       };
     };
+    "universalify-1.0.0" = {
+      name = "universalify";
+      packageName = "universalify";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz";
+        sha512 = "rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==";
+      };
+    };
     "unix-crypt-td-js-1.1.4" = {
       name = "unix-crypt-td-js";
       packageName = "unix-crypt-td-js";
@@ -44713,13 +45352,13 @@ let
         sha512 = "8rMeVYWSIyccIJscb9NdCfZKSRBKYTeVnwmiRYT2ulE3qd1RaDQ0xQDP+rI3ccIWbhu/zuo5cgN8z73belNZgw==";
       };
     };
-    "unix-dgram-2.0.3" = {
+    "unix-dgram-2.0.4" = {
       name = "unix-dgram";
       packageName = "unix-dgram";
-      version = "2.0.3";
+      version = "2.0.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unix-dgram/-/unix-dgram-2.0.3.tgz";
-        sha512 = "Bay5CkSLcdypcBCsxvHEvaG3mftzT5FlUnRToPWEAVxwYI8NI/8zSJ/Gknlp86MPhV6hBA8I8TBsETj2tssoHQ==";
+        url = "https://registry.npmjs.org/unix-dgram/-/unix-dgram-2.0.4.tgz";
+        sha512 = "7tpK6x7ls7J7pDrrAU63h93R0dVhRbPwiRRCawR10cl+2e1VOvF3bHlVJc6WI1dl/8qk5He673QU+Ogv7bPNaw==";
       };
     };
     "unixify-1.0.0" = {
@@ -45658,13 +46297,13 @@ let
         sha512 = "/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==";
       };
     };
-    "verda-1.0.0-12" = {
+    "verda-1.0.0" = {
       name = "verda";
       packageName = "verda";
-      version = "1.0.0-12";
+      version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/verda/-/verda-1.0.0-12.tgz";
-        sha512 = "pNfCbq1WlBTE0SsyajJFzkQtp+E/opy5/+8405XHE4VMQ+3Xr/h2s9OijnbHPwPDJvybV4+JCktJhc6Ru6yg7w==";
+        url = "https://registry.npmjs.org/verda/-/verda-1.0.0.tgz";
+        sha512 = "kr/M1CkBepFQP/jIWh9QB8x/2Ly7qzsZMJwbjUurJAhbn+FQkGxiDMcCGRGYpMGl0oL8kLmEQDVNyzFzE9AUVw==";
       };
     };
     "verror-1.1.0" = {
@@ -45712,6 +46351,15 @@ let
         sha1 = "7d13b27b1facc2e2da90405eb5ea6e5bdd252ea5";
       };
     };
+    "vertical-meter-1.0.0" = {
+      name = "vertical-meter";
+      packageName = "vertical-meter";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vertical-meter/-/vertical-meter-1.0.0.tgz";
+        sha512 = "xvtone0DHRBrWSBVF2p3+/KSz/mzHvDZ7+HYB3g68hBpqIC3tIF8J1maf5osHPKHB/45iq2B+T4ju/mfxArd/Q==";
+      };
+    };
     "vfile-1.4.0" = {
       name = "vfile";
       packageName = "vfile";
@@ -45973,6 +46621,15 @@ let
         sha512 = "DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow==";
       };
     };
+    "vls-0.2.0" = {
+      name = "vls";
+      packageName = "vls";
+      version = "0.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vls/-/vls-0.2.0.tgz";
+        sha512 = "B6xMWi3sOVSitcLx4zKWB5vh1DLL0Okkqy5Fa7rHSmqvPhDDn7idU+vwjWZW8IzHQO1T+brxvDjbKuSnEXNPRw==";
+      };
+    };
     "vm-browserify-1.1.2" = {
       name = "vm-browserify";
       packageName = "vm-browserify";
@@ -46225,13 +46882,13 @@ let
         sha512 = "ITtoh3V4AkWXMmp3TB97vsMaHRgHhsSFPsUdzlueSL+dRZbSNTZeOmdQv60kjCV306ghPxhDeoNUEm3+EZMuyw==";
       };
     };
-    "vscode-nls-4.1.1" = {
+    "vscode-nls-4.1.2" = {
       name = "vscode-nls";
       packageName = "vscode-nls";
-      version = "4.1.1";
+      version = "4.1.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/vscode-nls/-/vscode-nls-4.1.1.tgz";
-        sha512 = "4R+2UoUUU/LdnMnFjePxfLqNhBS8lrAFyX7pjb2ud/lqDkrUavFUTcG7wR0HBZFakae0Q6KLBFjMS6W93F403A==";
+        url = "https://registry.npmjs.org/vscode-nls/-/vscode-nls-4.1.2.tgz";
+        sha512 = "7bOHxPsfyuCqmP+hZXscLhiHwe7CSuFE4hyhbs22xPIhQ4jv99FcR4eBzfYYVLP356HNFpdvz63FFb/xw6T4Iw==";
       };
     };
     "vscode-textbuffer-1.0.0" = {
@@ -46279,6 +46936,15 @@ let
         sha512 = "eY9jmGoEnVf8VE8xr5znSah7Qt1P/xsCdErz+g8HYZtJ7bZqKH5E3d+6oVNm1AC/c6IHUDokbmVXKOi4qPAC9A==";
       };
     };
+    "vscode-web-custom-data-0.1.3" = {
+      name = "vscode-web-custom-data";
+      packageName = "vscode-web-custom-data";
+      version = "0.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vscode-web-custom-data/-/vscode-web-custom-data-0.1.3.tgz";
+        sha512 = "u9RdZ3aIjx5f0WYSb8EIcmo7trgrJk+bVfGDfjyBSlfG59XWg8xw/JVfHNpO5AklustCez3vixnGLAOWzhPkZg==";
+      };
+    };
     "vstream-0.1.0" = {
       name = "vstream";
       packageName = "vstream";
@@ -46315,15 +46981,6 @@ let
         sha512 = "ZezcU71Owm84xVF6gfurBQUGg8WQ+WZGxgDEQu1IHFBZNx7BFZg3L1yHxrCBNNwbwFtE1GuvfJKMtb6Xuwc/Bw==";
       };
     };
-    "vue-eslint-parser-5.0.0" = {
-      name = "vue-eslint-parser";
-      packageName = "vue-eslint-parser";
-      version = "5.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-5.0.0.tgz";
-        sha512 = "JlHVZwBBTNVvzmifwjpZYn0oPWH2SgWv5dojlZBsrhablDu95VFD+hriB1rQGwbD+bms6g+rAFhQHk6+NyiS6g==";
-      };
-    };
     "vue-eslint-parser-6.0.5" = {
       name = "vue-eslint-parser";
       packageName = "vue-eslint-parser";
@@ -46351,15 +47008,6 @@ let
         sha512 = "RXv0lrDG2CAx3yAQCoD9beU8nAoT3rhh/fgb+xlYM0Qlm+cpkWSLTdfOt1x2j2wHI08uEsi0q7x6rjhn54EbNA==";
       };
     };
-    "vue-language-server-0.0.62" = {
-      name = "vue-language-server";
-      packageName = "vue-language-server";
-      version = "0.0.62";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/vue-language-server/-/vue-language-server-0.0.62.tgz";
-        sha512 = "Q/nwAVlBfLKz4CSA4vkA14jJcXElP1Vf+O5GZhG7sPlNKMEy91rdVwYc7IfMRZV/SCAZRak9/oo0Zy4+39dwrg==";
-      };
-    };
     "vue-onsenui-helper-json-1.0.2" = {
       name = "vue-onsenui-helper-json";
       packageName = "vue-onsenui-helper-json";
@@ -46549,13 +47197,13 @@ let
         sha512 = "VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==";
       };
     };
-    "webpack-4.42.0" = {
+    "webpack-4.42.1" = {
       name = "webpack";
       packageName = "webpack";
-      version = "4.42.0";
+      version = "4.42.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/webpack/-/webpack-4.42.0.tgz";
-        sha512 = "EzJRHvwQyBiYrYqhyjW9AqM90dE4+s1/XtCfn7uWg6cS72zH+2VPFAlsnW0+W0cDi0XRjNKUMoJtpSi50+Ph6w==";
+        url = "https://registry.npmjs.org/webpack/-/webpack-4.42.1.tgz";
+        sha512 = "SGfYMigqEfdGchGhFFJ9KyRpQKnipvEvjc1TwrXEPCM6H5Wywu10ka8o3KGrMzSMxMQKt8aCHUFh5DaQ9UmyRg==";
       };
     };
     "webpack-cli-3.3.11" = {
@@ -46873,6 +47521,15 @@ let
         sha1 = "8f58e0656fca00adc8c86a2b89e3cd2d6a2d5e5e";
       };
     };
+    "win-user-installed-npm-cli-path-3.0.1" = {
+      name = "win-user-installed-npm-cli-path";
+      packageName = "win-user-installed-npm-cli-path";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/win-user-installed-npm-cli-path/-/win-user-installed-npm-cli-path-3.0.1.tgz";
+        sha512 = "Us1ZlMmWDInXihJ+SWP8/L0ArqsLqPtWK9Q67x6+q+z7C2c22viVgCmbH+x0BeMsosmPS9OKHvka519XbO51Rw==";
+      };
+    };
     "window-size-0.1.0" = {
       name = "window-size";
       packageName = "window-size";
@@ -47864,15 +48521,6 @@ let
         sha512 = "HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg==";
       };
     };
-    "yargs-13.3.0" = {
-      name = "yargs";
-      packageName = "yargs";
-      version = "13.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz";
-        sha512 = "2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==";
-      };
-    };
     "yargs-13.3.2" = {
       name = "yargs";
       packageName = "yargs";
@@ -47900,13 +48548,13 @@ let
         sha512 = "T39FNN1b6hCW4SOIk1XyTOWxtXdcen0t+XYrysQmChzSipvhBO8Bj0nK1ozAasdk24dNWuMZvr4k24nz+8HHLg==";
       };
     };
-    "yargs-15.3.0" = {
+    "yargs-15.3.1" = {
       name = "yargs";
       packageName = "yargs";
-      version = "15.3.0";
+      version = "15.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yargs/-/yargs-15.3.0.tgz";
-        sha512 = "g/QCnmjgOl1YJjGsnUg2SatC7NUYEiLXJqxNOQU9qSpjzGtGXda9b+OKccr1kLTy8BN9yqEyqfq5lxlwdc13TA==";
+        url = "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz";
+        sha512 = "92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==";
       };
     };
     "yargs-3.10.0" = {
@@ -47990,15 +48638,6 @@ let
         sha512 = "w2LXjoL8oRdRQN+hOyppuXs+V/fVAYtpcrRxZuF7Kt/Oc+Jr2uAcVntaUTNT6w5ihoWfFDpNY8CPx1QskxZ/pw==";
       };
     };
-    "yargs-parser-13.1.1" = {
-      name = "yargs-parser";
-      packageName = "yargs-parser";
-      version = "13.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz";
-        sha512 = "oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==";
-      };
-    };
     "yargs-parser-13.1.2" = {
       name = "yargs-parser";
       packageName = "yargs-parser";
@@ -48026,13 +48665,13 @@ let
         sha512 = "H/V41UNZQPkUMIT5h5hiwg4QKIY1RPvoBV4XcjUbRM8Bk2oKqqyZ0DIEbTFZB0XjbtSPG8SAa/0DxCQmiRgzKg==";
       };
     };
-    "yargs-parser-18.1.0" = {
+    "yargs-parser-18.1.1" = {
       name = "yargs-parser";
       packageName = "yargs-parser";
-      version = "18.1.0";
+      version = "18.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.0.tgz";
-        sha512 = "o/Jr6JBOv6Yx3pL+5naWSoIA2jJ+ZkMYQG/ie9qFbukBe4uzmBatlXFOiu/tNKRWEtyf+n5w7jc/O16ufqOTdQ==";
+        url = "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.1.tgz";
+        sha512 = "KRHEsOM16IX7XuLnMOqImcPNbLVXMNHYAoFc3BKR8Ortl5gzDbtXvvEoGx9imk5E+X1VeNKNlcHr8B8vi+7ipA==";
       };
     };
     "yargs-parser-2.4.1" = {
@@ -48188,13 +48827,13 @@ let
         sha512 = "Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==";
       };
     };
-    "yoga-layout-prebuilt-1.9.3" = {
+    "yoga-layout-prebuilt-1.9.5" = {
       name = "yoga-layout-prebuilt";
       packageName = "yoga-layout-prebuilt";
-      version = "1.9.3";
+      version = "1.9.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/yoga-layout-prebuilt/-/yoga-layout-prebuilt-1.9.3.tgz";
-        sha512 = "9SNQpwuEh2NucU83i2KMZnONVudZ86YNcFk9tq74YaqrQfgJWO3yB9uzH1tAg8iqh5c9F5j0wuyJ2z72wcum2w==";
+        url = "https://registry.npmjs.org/yoga-layout-prebuilt/-/yoga-layout-prebuilt-1.9.5.tgz";
+        sha512 = "+G5Ojl4/sG78mk5masCL3SRaZtkKXRBhMGf5c+4C1j32jN9KpS4lxVFdYyBi15EHN4gMeK5sIRf83T33TOaDkA==";
       };
     };
     "yosay-2.0.2" = {
@@ -48302,17 +48941,17 @@ in
   "@angular/cli" = nodeEnv.buildNodePackage {
     name = "_at_angular_slash_cli";
     packageName = "@angular/cli";
-    version = "9.0.6";
+    version = "9.0.7";
     src = fetchurl {
-      url = "https://registry.npmjs.org/@angular/cli/-/cli-9.0.6.tgz";
-      sha512 = "uDXhkPcHhE4G4FlY7+LJWhXErHnkn63V8lqkKD7juivs+Epmx8oXCOVObEQTbbtw7sF6s0dM8uTzHKgoefTlaA==";
+      url = "https://registry.npmjs.org/@angular/cli/-/cli-9.0.7.tgz";
+      sha512 = "/9CUNSSVyTtTNUADZ/VXJDEdhineMN/rfd35w6VsHiob49tKkeOTggaoiSne3RY4VCTqlo7GGf4KhhVXEMGnDQ==";
     };
     dependencies = [
-      sources."@angular-devkit/architect-0.900.6"
-      sources."@angular-devkit/core-9.0.6"
-      sources."@angular-devkit/schematics-9.0.6"
-      sources."@schematics/angular-9.0.6"
-      (sources."@schematics/update-0.900.6" // {
+      sources."@angular-devkit/architect-0.900.7"
+      sources."@angular-devkit/core-9.0.7"
+      sources."@angular-devkit/schematics-9.0.7"
+      sources."@schematics/angular-9.0.7"
+      (sources."@schematics/update-0.900.7" // {
         dependencies = [
           (sources."npm-package-arg-7.0.0" // {
             dependencies = [
@@ -48343,7 +48982,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."buffer-from-1.1.1"
       sources."builtins-1.0.3"
-      (sources."cacache-12.0.3" // {
+      (sources."cacache-12.0.4" // {
         dependencies = [
           sources."rimraf-2.7.1"
         ];
@@ -48381,7 +49020,7 @@ in
       sources."encoding-0.1.12"
       sources."end-of-stream-1.4.4"
       sources."err-code-1.1.2"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."es6-promise-4.2.8"
       sources."es6-promisify-5.0.0"
@@ -48391,7 +49030,7 @@ in
       sources."extsprintf-1.3.0"
       sources."fast-deep-equal-2.0.1"
       sources."fast-json-stable-stringify-2.0.0"
-      sources."figgy-pudding-3.5.1"
+      sources."figgy-pudding-3.5.2"
       sources."figures-3.2.0"
       sources."flush-write-stream-1.1.1"
       sources."forever-agent-0.6.1"
@@ -48464,11 +49103,11 @@ in
       sources."mime-types-2.1.26"
       sources."mimic-fn-2.1.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
       sources."mississippi-3.0.0"
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       (sources."move-concurrently-1.0.1" // {
         dependencies = [
           sources."rimraf-2.7.1"
@@ -48656,7 +49295,7 @@ in
       sources."deep-freeze-node-1.1.3"
       sources."esprima-4.0.1"
       sources."js-yaml-3.13.1"
-      sources."json5-2.1.1"
+      sources."json5-2.1.2"
       sources."lodash.clonedeep-4.5.0"
       sources."map-obj-4.1.0"
       sources."minimist-1.2.5"
@@ -48706,9 +49345,14 @@ in
       sources."async-lock-1.2.2"
       sources."balanced-match-1.0.0"
       sources."base64-js-0.0.2"
-      sources."bl-4.0.1"
+      sources."bl-4.0.2"
       sources."bops-0.0.7"
       sources."brace-expansion-1.1.11"
+      (sources."buffer-5.5.0" // {
+        dependencies = [
+          sources."base64-js-1.3.1"
+        ];
+      })
       sources."buffer-crc32-0.2.13"
       sources."buffer-equal-1.0.0"
       sources."cache-directory-2.0.0"
@@ -48828,6 +49472,7 @@ in
       sources."handlebars-4.5.3"
       sources."has-symbols-1.0.1"
       sources."http-cache-semantics-4.1.0"
+      sources."ieee754-1.1.13"
       sources."ignore-5.1.4"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
@@ -48846,7 +49491,7 @@ in
       sources."js-yaml-3.13.1"
       sources."json-buffer-3.0.0"
       sources."json-stable-stringify-without-jsonify-1.0.1"
-      sources."json5-2.1.1"
+      sources."json5-2.1.2"
       sources."jsonfile-4.0.0"
       sources."keyv-3.1.0"
       (sources."lazystream-1.0.0" // {
@@ -49185,26 +49830,21 @@ in
       sources."@apollographql/graphql-language-service-utils-2.0.2"
       sources."@apollographql/graphql-playground-html-1.6.24"
       sources."@babel/code-frame-7.8.3"
-      (sources."@babel/compat-data-7.8.6" // {
+      (sources."@babel/compat-data-7.9.0" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
       })
-      (sources."@babel/core-7.8.7" // {
+      (sources."@babel/core-7.9.0" // {
         dependencies = [
-          sources."@babel/generator-7.8.8"
-          sources."@babel/types-7.8.7"
+          sources."@babel/generator-7.9.4"
+          sources."@babel/types-7.9.0"
           sources."semver-5.7.1"
         ];
       })
       sources."@babel/generator-7.8.6"
       sources."@babel/helper-annotate-as-pure-7.8.3"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.8.3"
-      (sources."@babel/helper-call-delegate-7.8.7" // {
-        dependencies = [
-          sources."@babel/types-7.8.7"
-        ];
-      })
       (sources."@babel/helper-compilation-targets-7.8.7" // {
         dependencies = [
           sources."semver-5.7.1"
@@ -49219,7 +49859,11 @@ in
       sources."@babel/helper-hoist-variables-7.8.3"
       sources."@babel/helper-member-expression-to-functions-7.8.3"
       sources."@babel/helper-module-imports-7.8.3"
-      sources."@babel/helper-module-transforms-7.8.6"
+      (sources."@babel/helper-module-transforms-7.9.0" // {
+        dependencies = [
+          sources."@babel/types-7.9.0"
+        ];
+      })
       sources."@babel/helper-optimise-call-expression-7.8.3"
       sources."@babel/helper-plugin-utils-7.8.3"
       sources."@babel/helper-regex-7.8.3"
@@ -49227,24 +49871,31 @@ in
       sources."@babel/helper-replace-supers-7.8.6"
       sources."@babel/helper-simple-access-7.8.3"
       sources."@babel/helper-split-export-declaration-7.8.3"
+      sources."@babel/helper-validator-identifier-7.9.0"
       sources."@babel/helper-wrap-function-7.8.3"
-      sources."@babel/helpers-7.8.4"
-      sources."@babel/highlight-7.8.3"
-      sources."@babel/parser-7.8.8"
+      (sources."@babel/helpers-7.9.2" // {
+        dependencies = [
+          sources."@babel/types-7.9.0"
+        ];
+      })
+      sources."@babel/highlight-7.9.0"
+      sources."@babel/parser-7.9.4"
       sources."@babel/plugin-proposal-async-generator-functions-7.8.3"
       sources."@babel/plugin-proposal-class-properties-7.8.3"
       sources."@babel/plugin-proposal-dynamic-import-7.8.3"
       sources."@babel/plugin-proposal-json-strings-7.8.3"
       sources."@babel/plugin-proposal-nullish-coalescing-operator-7.8.3"
-      sources."@babel/plugin-proposal-object-rest-spread-7.8.3"
+      sources."@babel/plugin-proposal-numeric-separator-7.8.3"
+      sources."@babel/plugin-proposal-object-rest-spread-7.9.0"
       sources."@babel/plugin-proposal-optional-catch-binding-7.8.3"
-      sources."@babel/plugin-proposal-optional-chaining-7.8.3"
+      sources."@babel/plugin-proposal-optional-chaining-7.9.0"
       sources."@babel/plugin-proposal-unicode-property-regex-7.8.8"
       sources."@babel/plugin-syntax-async-generators-7.8.4"
       sources."@babel/plugin-syntax-dynamic-import-7.8.3"
       sources."@babel/plugin-syntax-flow-7.8.3"
       sources."@babel/plugin-syntax-json-strings-7.8.3"
       sources."@babel/plugin-syntax-nullish-coalescing-operator-7.8.3"
+      sources."@babel/plugin-syntax-numeric-separator-7.8.3"
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
       sources."@babel/plugin-syntax-optional-catch-binding-7.8.3"
       sources."@babel/plugin-syntax-optional-chaining-7.8.3"
@@ -49254,25 +49905,25 @@ in
       sources."@babel/plugin-transform-async-to-generator-7.8.3"
       sources."@babel/plugin-transform-block-scoped-functions-7.8.3"
       sources."@babel/plugin-transform-block-scoping-7.8.3"
-      sources."@babel/plugin-transform-classes-7.8.6"
+      sources."@babel/plugin-transform-classes-7.9.2"
       sources."@babel/plugin-transform-computed-properties-7.8.3"
       sources."@babel/plugin-transform-destructuring-7.8.8"
       sources."@babel/plugin-transform-dotall-regex-7.8.3"
       sources."@babel/plugin-transform-duplicate-keys-7.8.3"
       sources."@babel/plugin-transform-exponentiation-operator-7.8.3"
-      sources."@babel/plugin-transform-flow-strip-types-7.8.3"
-      sources."@babel/plugin-transform-for-of-7.8.6"
+      sources."@babel/plugin-transform-flow-strip-types-7.9.0"
+      sources."@babel/plugin-transform-for-of-7.9.0"
       sources."@babel/plugin-transform-function-name-7.8.3"
       sources."@babel/plugin-transform-literals-7.8.3"
       sources."@babel/plugin-transform-member-expression-literals-7.8.3"
-      sources."@babel/plugin-transform-modules-amd-7.8.3"
-      sources."@babel/plugin-transform-modules-commonjs-7.8.3"
-      sources."@babel/plugin-transform-modules-systemjs-7.8.3"
-      sources."@babel/plugin-transform-modules-umd-7.8.3"
+      sources."@babel/plugin-transform-modules-amd-7.9.0"
+      sources."@babel/plugin-transform-modules-commonjs-7.9.0"
+      sources."@babel/plugin-transform-modules-systemjs-7.9.0"
+      sources."@babel/plugin-transform-modules-umd-7.9.0"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.8.3"
       sources."@babel/plugin-transform-new-target-7.8.3"
       sources."@babel/plugin-transform-object-super-7.8.3"
-      sources."@babel/plugin-transform-parameters-7.8.8"
+      sources."@babel/plugin-transform-parameters-7.9.3"
       sources."@babel/plugin-transform-property-literals-7.8.3"
       sources."@babel/plugin-transform-regenerator-7.8.7"
       sources."@babel/plugin-transform-reserved-words-7.8.3"
@@ -49281,30 +49932,36 @@ in
       sources."@babel/plugin-transform-sticky-regex-7.8.3"
       sources."@babel/plugin-transform-template-literals-7.8.3"
       sources."@babel/plugin-transform-typeof-symbol-7.8.4"
-      sources."@babel/plugin-transform-typescript-7.8.7"
+      sources."@babel/plugin-transform-typescript-7.9.4"
       sources."@babel/plugin-transform-unicode-regex-7.8.3"
-      (sources."@babel/preset-env-7.8.7" // {
+      (sources."@babel/preset-env-7.9.0" // {
         dependencies = [
-          sources."@babel/types-7.8.7"
+          sources."@babel/types-7.9.0"
           sources."semver-5.7.1"
         ];
       })
-      sources."@babel/preset-flow-7.8.3"
-      sources."@babel/preset-typescript-7.8.3"
-      (sources."@babel/register-7.8.6" // {
+      sources."@babel/preset-flow-7.9.0"
+      sources."@babel/preset-modules-0.1.3"
+      sources."@babel/preset-typescript-7.9.0"
+      (sources."@babel/register-7.9.0" // {
         dependencies = [
           sources."make-dir-2.1.0"
           sources."pify-4.0.1"
           sources."semver-5.7.1"
         ];
       })
-      (sources."@babel/runtime-7.8.7" // {
+      (sources."@babel/runtime-7.9.2" // {
         dependencies = [
           sources."regenerator-runtime-0.13.5"
         ];
       })
       sources."@babel/template-7.8.6"
-      sources."@babel/traverse-7.8.6"
+      (sources."@babel/traverse-7.9.0" // {
+        dependencies = [
+          sources."@babel/generator-7.9.4"
+          sources."@babel/types-7.9.0"
+        ];
+      })
       sources."@babel/types-7.8.6"
       sources."@endemolshinegroup/cosmiconfig-typescript-loader-1.0.1"
       sources."@hapi/address-2.1.4"
@@ -49391,7 +50048,7 @@ in
       sources."@types/cors-2.8.6"
       sources."@types/events-3.0.0"
       sources."@types/express-4.17.2"
-      sources."@types/express-serve-static-core-4.17.2"
+      sources."@types/express-serve-static-core-4.17.3"
       sources."@types/fs-capacitor-2.0.0"
       sources."@types/glob-7.1.1"
       sources."@types/graphql-upload-8.0.3"
@@ -49402,7 +50059,7 @@ in
       sources."@types/long-4.0.1"
       sources."@types/mime-2.0.1"
       sources."@types/minimatch-3.0.3"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       (sources."@types/node-fetch-2.5.5" // {
         dependencies = [
           sources."form-data-3.0.0"
@@ -49566,7 +50223,7 @@ in
       })
       sources."brace-expansion-1.1.11"
       sources."braces-2.3.2"
-      sources."browserslist-4.9.1"
+      sources."browserslist-4.11.0"
       sources."buffer-5.5.0"
       sources."buffer-alloc-1.2.0"
       sources."buffer-alloc-unsafe-1.1.0"
@@ -49584,7 +50241,7 @@ in
       sources."callsites-2.0.0"
       sources."camel-case-3.0.0"
       sources."camelcase-4.1.0"
-      sources."caniuse-lite-1.0.30001035"
+      sources."caniuse-lite-1.0.30001036"
       sources."capture-stack-trace-1.0.1"
       sources."cardinal-2.1.1"
       sources."caseless-0.12.0"
@@ -49748,7 +50405,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.376"
+      sources."electron-to-chromium-1.3.383"
       sources."elegant-spinner-1.0.1"
       sources."emoji-regex-7.0.3"
       sources."encodeurl-1.0.2"
@@ -49757,7 +50414,7 @@ in
       sources."env-ci-3.2.2"
       sources."envinfo-7.5.0"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.17.4"
+      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"
@@ -49832,7 +50489,7 @@ in
       })
       sources."find-up-3.0.0"
       sources."fkill-6.2.0"
-      sources."flow-parser-0.120.1"
+      sources."flow-parser-0.121.0"
       sources."for-in-1.0.2"
       sources."forever-agent-0.6.1"
       sources."form-data-2.3.3"
@@ -49845,7 +50502,7 @@ in
       sources."fs-exists-sync-0.1.0"
       sources."fs-extra-7.0.1"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-1.2.11"
+      sources."fsevents-1.2.12"
       sources."fswin-2.17.1227"
       sources."function-bind-1.1.1"
       sources."gaze-1.1.3"
@@ -50006,7 +50663,7 @@ in
       sources."is-windows-1.0.2"
       sources."is-wsl-1.1.0"
       sources."isarray-1.0.0"
-      sources."isbinaryfile-4.0.4"
+      sources."isbinaryfile-4.0.5"
       sources."isexe-2.0.0"
       sources."isobject-3.0.1"
       sources."isstream-0.1.2"
@@ -50025,7 +50682,7 @@ in
       sources."json-schema-0.2.3"
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
-      sources."json5-2.1.1"
+      sources."json5-2.1.2"
       sources."jsonfile-4.0.0"
       sources."jsprim-1.4.1"
       sources."kind-of-6.0.3"
@@ -50119,11 +50776,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."moment-2.24.0"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.7"
@@ -50250,6 +50903,7 @@ in
       sources."pinkie-promise-2.0.1"
       sources."pirates-4.0.1"
       sources."pkg-dir-3.0.0"
+      sources."pkg-up-3.1.0"
       (sources."portfinder-1.0.25" // {
         dependencies = [
           sources."debug-3.2.6"
@@ -50296,7 +50950,7 @@ in
       sources."regenerate-1.4.0"
       sources."regenerate-unicode-properties-8.2.0"
       sources."regenerator-runtime-0.10.5"
-      sources."regenerator-transform-0.14.3"
+      sources."regenerator-transform-0.14.4"
       (sources."regex-not-1.0.2" // {
         dependencies = [
           sources."extend-shallow-3.0.2"
@@ -50325,7 +50979,7 @@ in
       sources."ret-0.1.15"
       sources."retry-0.12.0"
       sources."rimraf-2.7.1"
-      sources."rss-parser-3.7.5"
+      sources."rss-parser-3.7.6"
       sources."run-async-2.4.0"
       sources."rxjs-6.5.4"
       sources."safe-buffer-5.2.0"
@@ -50545,7 +51199,7 @@ in
       sources."treeify-1.1.0"
       sources."trim-repeated-1.0.0"
       sources."ts-invariant-0.4.4"
-      sources."ts-node-8.7.0"
+      sources."ts-node-8.8.1"
       sources."tslib-1.11.1"
       sources."tty-1.0.1"
       sources."tunnel-agent-0.6.0"
@@ -50793,11 +51447,12 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      sources."@babel/generator-7.8.8"
-      sources."@babel/highlight-7.8.3"
-      sources."@babel/parser-7.8.8"
+      sources."@babel/generator-7.9.4"
+      sources."@babel/helper-validator-identifier-7.9.0"
+      sources."@babel/highlight-7.9.0"
+      sources."@babel/parser-7.9.4"
       sources."@babel/template-7.8.6"
-      sources."@babel/types-7.8.7"
+      sources."@babel/types-7.9.0"
       sources."@webassemblyjs/ast-1.9.0"
       sources."@webassemblyjs/floating-point-hex-parser-1.9.0"
       sources."@webassemblyjs/helper-api-error-1.9.0"
@@ -50819,7 +51474,6 @@ in
       sources."color-name-1.1.3"
       sources."commander-2.20.3"
       sources."escape-string-regexp-1.0.5"
-      sources."esutils-2.0.3"
       sources."has-flag-3.0.0"
       sources."js-tokens-4.0.0"
       sources."jsesc-2.5.2"
@@ -50878,25 +51532,32 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      (sources."@babel/core-7.8.7" // {
+      (sources."@babel/core-7.9.0" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
-      (sources."@babel/generator-7.8.8" // {
+      (sources."@babel/generator-7.9.4" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
       sources."@babel/helper-function-name-7.8.3"
       sources."@babel/helper-get-function-arity-7.8.3"
+      sources."@babel/helper-member-expression-to-functions-7.8.3"
+      sources."@babel/helper-module-imports-7.8.3"
+      sources."@babel/helper-module-transforms-7.9.0"
+      sources."@babel/helper-optimise-call-expression-7.8.3"
+      sources."@babel/helper-replace-supers-7.8.6"
+      sources."@babel/helper-simple-access-7.8.3"
       sources."@babel/helper-split-export-declaration-7.8.3"
-      sources."@babel/helpers-7.8.4"
-      sources."@babel/highlight-7.8.3"
-      sources."@babel/parser-7.8.8"
+      sources."@babel/helper-validator-identifier-7.9.0"
+      sources."@babel/helpers-7.9.2"
+      sources."@babel/highlight-7.9.0"
+      sources."@babel/parser-7.9.4"
       sources."@babel/template-7.8.6"
-      sources."@babel/traverse-7.8.6"
-      sources."@babel/types-7.8.7"
+      sources."@babel/traverse-7.9.0"
+      sources."@babel/types-7.9.0"
       sources."JSV-4.0.2"
       sources."ansi-styles-3.2.1"
       sources."array-unique-0.3.2"
@@ -50915,7 +51576,6 @@ in
       sources."ejs-2.5.7"
       sources."ensure-posix-path-1.1.1"
       sources."escape-string-regexp-1.0.5"
-      sources."esutils-2.0.3"
       sources."fs-extra-5.0.0"
       sources."function-bind-1.1.1"
       sources."gensync-1.0.0-beta.1"
@@ -50942,7 +51602,7 @@ in
       sources."isexe-2.0.0"
       sources."js-tokens-4.0.0"
       sources."jsesc-2.5.2"
-      sources."json5-2.1.1"
+      sources."json5-2.1.2"
       sources."jsonfile-4.0.0"
       sources."jsonlint-1.6.2"
       sources."lodash-4.17.15"
@@ -50990,20 +51650,20 @@ in
   asar = nodeEnv.buildNodePackage {
     name = "asar";
     packageName = "asar";
-    version = "3.0.1";
+    version = "3.0.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/asar/-/asar-3.0.1.tgz";
-      sha512 = "43sVUKSX0VLNfavair0OLzPoVX5rRdqAxcUUhtwKLGkKQPs2ePreOG7zpp3gZOLvZGhZxixD9JZBxWKgqH8r1g==";
+      url = "https://registry.npmjs.org/asar/-/asar-3.0.2.tgz";
+      sha512 = "nFtY0kToUcMEAY8f6qmeyqn+HZzovwlKsbzf5yjEnzOksFzJLTxWvP2jbzItFT04BdaL3CZKRApTr5iRofVq6g==";
     };
     dependencies = [
       sources."@types/events-3.0.0"
       sources."@types/glob-7.1.1"
       sources."@types/minimatch-3.0.3"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."balanced-match-1.0.0"
       sources."brace-expansion-1.1.11"
       sources."chromium-pickle-js-0.2.0"
-      sources."commander-4.1.1"
+      sources."commander-5.0.0"
       sources."concat-map-0.0.1"
       sources."fs.realpath-1.0.0"
       sources."glob-7.1.6"
@@ -51251,11 +51911,7 @@ in
       sources."mime-db-1.43.0"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."ms-2.0.0"
       sources."natives-1.1.6"
       sources."normalize-package-data-2.5.0"
@@ -51374,11 +52030,7 @@ in
       sources."defined-1.0.0"
       sources."deps-sort-2.0.1"
       sources."des.js-1.0.1"
-      (sources."detective-5.2.0" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."detective-5.2.0"
       sources."diffie-hellman-5.0.3"
       sources."domain-browser-1.2.0"
       sources."duplexer2-0.1.4"
@@ -51413,8 +52065,8 @@ in
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."module-deps-6.2.2"
       sources."object-assign-4.1.1"
       sources."once-1.4.0"
@@ -51460,11 +52112,7 @@ in
       })
       sources."stream-splicer-2.0.1"
       sources."string_decoder-1.3.0"
-      (sources."subarg-1.0.0" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."subarg-1.0.0"
       sources."syntax-error-1.4.0"
       sources."through-2.3.8"
       sources."through2-2.0.5"
@@ -51629,8 +52277,7 @@ in
       sources."form-data-2.3.3"
       (sources."fs-chunk-store-1.7.0" // {
         dependencies = [
-          sources."minimist-0.0.8"
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
           sources."thunky-1.1.0"
         ];
       })
@@ -51772,8 +52419,7 @@ in
       sources."query-string-1.0.1"
       (sources."random-access-file-2.1.3" // {
         dependencies = [
-          sources."minimist-0.0.8"
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
         ];
       })
       sources."random-access-storage-1.4.1"
@@ -52164,13 +52810,13 @@ in
   coc-metals = nodeEnv.buildNodePackage {
     name = "coc-metals";
     packageName = "coc-metals";
-    version = "0.7.2";
+    version = "0.7.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-metals/-/coc-metals-0.7.2.tgz";
-      sha512 = "j0pzvL9swPwN4sW/abHRAtm1Pc0TNMT7YwItkA8F90kaUxdfF0JQaR3AvDe1/YxFUlNHU92F2R0g2VAdcSzWEg==";
+      url = "https://registry.npmjs.org/coc-metals/-/coc-metals-0.7.4.tgz";
+      sha512 = "5gE7m9/Cm/HYFfW4QcpGdVK9waWTQT0pyxSSrvhIjbRjAYv+uspsCUrg6ODxruIakHaRpvqrdhodRt2cnF0NJg==";
     };
     dependencies = [
-      sources."@babel/runtime-7.8.7"
+      sources."@babel/runtime-7.9.2"
       sources."@chemzqm/neovim-5.1.9"
       sources."async-2.6.3"
       sources."await-semaphore-0.1.3"
@@ -52178,7 +52824,7 @@ in
       sources."brace-expansion-1.1.11"
       sources."bser-2.1.1"
       sources."chownr-1.1.4"
-      sources."coc.nvim-0.0.76"
+      sources."coc.nvim-0.0.77"
       sources."concat-map-0.0.1"
       sources."date-format-2.1.0"
       sources."debounce-1.2.0"
@@ -52224,10 +52870,10 @@ in
         ];
       })
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       sources."ms-2.1.2"
       sources."msgpack-lite-0.1.26"
       (sources."mv-2.1.1" // {
@@ -52241,12 +52887,8 @@ in
       sources."node-int64-0.4.0"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
-      sources."promisify-child-process-3.1.3"
-      (sources."rc-1.2.8" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."promisify-child-process-3.1.4"
+      sources."rc-1.2.8"
       sources."regenerator-runtime-0.13.5"
       sources."rfc-3986-1.0.1"
       sources."rfdc-1.1.4"
@@ -52314,7 +52956,8 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      sources."@babel/highlight-7.8.3"
+      sources."@babel/helper-validator-identifier-7.9.0"
+      sources."@babel/highlight-7.9.0"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
       sources."@types/eslint-visitor-keys-1.0.0"
@@ -52369,7 +53012,7 @@ in
       sources."callsites-3.1.0"
       sources."camelcase-2.1.1"
       sources."camelcase-keys-2.1.0"
-      sources."caniuse-lite-1.0.30001035"
+      sources."caniuse-lite-1.0.30001036"
       sources."capture-stack-trace-1.0.1"
       sources."ccount-1.0.5"
       sources."chalk-2.4.2"
@@ -52455,7 +53098,7 @@ in
       sources."domutils-1.7.0"
       sources."dot-prop-5.2.0"
       sources."duplexer3-0.1.4"
-      sources."electron-to-chromium-1.3.376"
+      sources."electron-to-chromium-1.3.383"
       sources."emoji-regex-7.0.3"
       sources."end-of-stream-1.4.4"
       sources."entities-1.1.2"
@@ -52471,7 +53114,11 @@ in
       sources."eslint-visitor-keys-1.1.0"
       sources."espree-5.0.1"
       sources."esprima-4.0.1"
-      sources."esquery-1.1.0"
+      (sources."esquery-1.2.0" // {
+        dependencies = [
+          sources."estraverse-5.0.0"
+        ];
+      })
       sources."esrecurse-4.2.1"
       sources."estraverse-4.3.0"
       sources."esutils-2.0.3"
@@ -52738,23 +53385,19 @@ in
           sources."mimic-fn-2.1.0"
         ];
       })
-      (sources."meow-3.7.0" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."meow-3.7.0"
       sources."merge2-1.3.0"
       sources."micromatch-2.3.11"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      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.1"
+      sources."mkdirp-0.5.4"
       sources."ms-2.1.2"
       sources."mute-stream-0.0.7"
       (sources."nanomatch-1.2.13" // {
@@ -52896,11 +53539,7 @@ in
           sources."kind-of-6.0.3"
         ];
       })
-      (sources."rc-1.2.8" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."rc-1.2.8"
       sources."read-pkg-1.1.0"
       (sources."read-pkg-up-1.0.1" // {
         dependencies = [
@@ -53046,7 +53685,6 @@ in
           sources."load-json-file-4.0.0"
           sources."map-obj-2.0.0"
           sources."meow-4.0.1"
-          sources."minimist-1.2.5"
           sources."parse-json-4.0.0"
           sources."path-type-3.0.0"
           sources."read-pkg-3.0.0"
@@ -53291,27 +53929,34 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      (sources."@babel/core-7.8.7" // {
+      (sources."@babel/core-7.9.0" // {
         dependencies = [
           sources."semver-5.7.1"
         ];
       })
-      sources."@babel/generator-7.8.8"
+      sources."@babel/generator-7.9.4"
       sources."@babel/helper-function-name-7.8.3"
       sources."@babel/helper-get-function-arity-7.8.3"
+      sources."@babel/helper-member-expression-to-functions-7.8.3"
+      sources."@babel/helper-module-imports-7.8.3"
+      sources."@babel/helper-module-transforms-7.9.0"
+      sources."@babel/helper-optimise-call-expression-7.8.3"
+      sources."@babel/helper-replace-supers-7.8.6"
+      sources."@babel/helper-simple-access-7.8.3"
       sources."@babel/helper-split-export-declaration-7.8.3"
-      sources."@babel/helpers-7.8.4"
-      sources."@babel/highlight-7.8.3"
-      sources."@babel/parser-7.8.8"
+      sources."@babel/helper-validator-identifier-7.9.0"
+      sources."@babel/helpers-7.9.2"
+      sources."@babel/highlight-7.9.0"
+      sources."@babel/parser-7.9.4"
       sources."@babel/template-7.8.6"
-      sources."@babel/traverse-7.8.6"
-      sources."@babel/types-7.8.7"
+      sources."@babel/traverse-7.9.0"
+      sources."@babel/types-7.9.0"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
       sources."@types/events-3.0.0"
       sources."@types/glob-7.1.1"
       sources."@types/minimatch-3.0.3"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."@types/unist-2.0.3"
       sources."@types/vfile-3.0.2"
       sources."@types/vfile-message-2.0.0"
@@ -53336,7 +53981,7 @@ in
       sources."assign-symbols-1.0.0"
       sources."astral-regex-1.0.0"
       sources."atob-2.1.2"
-      (sources."autoprefixer-9.7.4" // {
+      (sources."autoprefixer-9.7.5" // {
         dependencies = [
           sources."postcss-value-parser-4.0.3"
         ];
@@ -53354,7 +53999,7 @@ in
           sources."extend-shallow-2.0.1"
         ];
       })
-      sources."browserslist-4.9.1"
+      sources."browserslist-4.11.0"
       sources."cache-base-1.0.1"
       sources."call-me-maybe-1.0.1"
       sources."caller-callsite-2.0.0"
@@ -53362,7 +54007,7 @@ in
       sources."callsites-2.0.0"
       sources."camelcase-4.1.0"
       sources."camelcase-keys-4.2.0"
-      sources."caniuse-lite-1.0.30001035"
+      sources."caniuse-lite-1.0.30001036"
       sources."ccount-1.0.5"
       sources."chalk-2.4.2"
       sources."character-entities-1.2.4"
@@ -53421,13 +54066,12 @@ in
       sources."domhandler-2.4.2"
       sources."domutils-1.7.0"
       sources."dot-prop-5.2.0"
-      sources."electron-to-chromium-1.3.376"
+      sources."electron-to-chromium-1.3.383"
       sources."emoji-regex-8.0.0"
       sources."entities-1.1.2"
       sources."error-ex-1.3.2"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-4.0.1"
-      sources."esutils-2.0.3"
       sources."execall-2.0.0"
       (sources."expand-brackets-2.1.4" // {
         dependencies = [
@@ -53474,7 +54118,7 @@ in
           sources."extend-shallow-2.0.1"
         ];
       })
-      sources."find-up-2.1.0"
+      sources."find-up-3.0.0"
       sources."flat-cache-2.0.1"
       sources."flatted-2.0.1"
       sources."for-in-1.0.2"
@@ -53565,11 +54209,7 @@ in
       sources."jsesc-2.5.2"
       sources."json-parse-better-errors-1.0.2"
       sources."json-schema-traverse-0.4.1"
-      (sources."json5-2.1.1" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."json5-2.1.2"
       sources."kind-of-6.0.3"
       sources."known-css-properties-0.14.0"
       sources."leven-3.1.0"
@@ -53578,7 +54218,7 @@ in
           sources."pify-3.0.0"
         ];
       })
-      sources."locate-path-2.0.0"
+      sources."locate-path-3.0.0"
       sources."lodash-4.17.15"
       sources."log-symbols-3.0.0"
       sources."longest-streak-2.0.4"
@@ -53601,14 +54241,14 @@ in
         ];
       })
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      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.1"
+      sources."mkdirp-0.5.4"
       sources."ms-2.1.2"
       sources."nanomatch-1.2.13"
       sources."node-releases-1.1.52"
@@ -53636,9 +54276,9 @@ in
       sources."object-visit-1.0.1"
       sources."object.pick-1.3.0"
       sources."once-1.4.0"
-      sources."p-limit-1.3.0"
-      sources."p-locate-2.0.0"
-      sources."p-try-1.0.0"
+      sources."p-limit-2.2.2"
+      sources."p-locate-3.0.0"
+      sources."p-try-2.2.0"
       sources."parse-entities-1.2.2"
       sources."parse-json-4.0.0"
       sources."pascalcase-0.1.1"
@@ -53651,8 +54291,9 @@ in
           sources."pify-3.0.0"
         ];
       })
-      sources."picomatch-2.2.1"
+      sources."picomatch-2.2.2"
       sources."pify-4.0.1"
+      sources."pkg-up-3.1.0"
       sources."posix-character-classes-0.1.1"
       (sources."postcss-7.0.27" // {
         dependencies = [
@@ -53680,7 +54321,15 @@ in
       sources."punycode-2.1.1"
       sources."quick-lru-1.1.0"
       sources."read-pkg-3.0.0"
-      sources."read-pkg-up-3.0.0"
+      (sources."read-pkg-up-3.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."readable-stream-3.6.0"
       sources."redent-2.0.0"
       sources."regex-not-1.0.2"
@@ -53894,7 +54543,8 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      sources."@babel/highlight-7.8.3"
+      sources."@babel/helper-validator-identifier-7.9.0"
+      sources."@babel/highlight-7.9.0"
       sources."ansi-styles-3.2.1"
       sources."argparse-1.0.10"
       sources."balanced-match-1.0.0"
@@ -53908,7 +54558,6 @@ in
       sources."diff-4.0.2"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-4.0.1"
-      sources."esutils-2.0.3"
       sources."fs.realpath-1.0.0"
       sources."glob-7.1.6"
       sources."has-flag-3.0.0"
@@ -53917,8 +54566,8 @@ in
       sources."js-tokens-4.0.0"
       sources."js-yaml-3.13.1"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."path-parse-1.0.6"
@@ -53978,13 +54627,13 @@ in
   coc-tsserver = nodeEnv.buildNodePackage {
     name = "coc-tsserver";
     packageName = "coc-tsserver";
-    version = "1.4.11";
+    version = "1.4.12";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-tsserver/-/coc-tsserver-1.4.11.tgz";
-      sha512 = "BMqtvulotRQwgQ/UkpGDz7b+tXXQGbxYJLo3SdmFeDeVkWLBGl/oP1ythlT3aY5K3kuCv0JnDgqpoAc175CERg==";
+      url = "https://registry.npmjs.org/coc-tsserver/-/coc-tsserver-1.4.12.tgz";
+      sha512 = "JMlIDCgTBXAWh6jsY1c6aMXw50jGRMZoiAYKhX0sYVKrDZznS2ocjKw4m/9yoNPWHIH6gk89BGXXT+7XhtsGWw==";
     };
     dependencies = [
-      sources."typescript-3.7.3"
+      sources."typescript-3.8.3"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -53999,38 +54648,80 @@ in
   coc-vetur = nodeEnv.buildNodePackage {
     name = "coc-vetur";
     packageName = "coc-vetur";
-    version = "1.1.7";
+    version = "1.1.9";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-vetur/-/coc-vetur-1.1.7.tgz";
-      sha512 = "QhVgqvOAMR/ehil8o+FezjRO6D0j8t/f5Uhn3bBY4dkAoJ0LbYHz+YNT+N0JPRYVgAJQFfRjHVdymWXRuf16wA==";
+      url = "https://registry.npmjs.org/coc-vetur/-/coc-vetur-1.1.9.tgz";
+      sha512 = "lF5s1hBM/92ZKW9JEjkYrbYYuvjcYirBy+8YgDH0s50iV0pVxd8vBGS/x3z50VNRLx2yp6Elu6bDXAQclp/X5g==";
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      sources."@babel/highlight-7.8.3"
+      sources."@babel/helper-validator-identifier-7.9.0"
+      sources."@babel/highlight-7.9.0"
       sources."@emmetio/extract-abbreviation-0.1.6"
       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."@starptech/expression-parser-0.9.0"
-      sources."@starptech/hast-util-from-webparser-0.9.0"
-      sources."@starptech/prettyhtml-0.9.0"
-      sources."@starptech/prettyhtml-formatter-0.9.0"
-      sources."@starptech/prettyhtml-hast-to-html-0.9.0"
-      sources."@starptech/prettyhtml-hastscript-0.9.0"
-      sources."@starptech/prettyhtml-sort-attributes-0.9.0"
-      sources."@starptech/rehype-minify-whitespace-0.9.0"
-      sources."@starptech/rehype-webparser-0.9.0"
-      sources."@starptech/webparser-0.9.0"
-      sources."@types/node-13.9.1"
+      sources."@nodelib/fs.walk-1.2.4"
+      sources."@sindresorhus/is-0.14.0"
+      sources."@sorg/log-2.1.0"
+      sources."@starptech/expression-parser-0.10.0"
+      sources."@starptech/hast-util-from-webparser-0.10.0"
+      sources."@starptech/prettyhtml-0.10.0"
+      sources."@starptech/prettyhtml-formatter-0.10.0"
+      sources."@starptech/prettyhtml-hast-to-html-0.10.0"
+      sources."@starptech/prettyhtml-hastscript-0.10.0"
+      sources."@starptech/prettyhtml-sort-attributes-0.10.0"
+      sources."@starptech/rehype-minify-whitespace-0.10.0"
+      sources."@starptech/rehype-webparser-0.10.0"
+      sources."@starptech/webparser-0.10.0"
+      sources."@szmarczak/http-timer-1.1.2"
+      sources."@types/color-name-1.1.1"
+      sources."@types/eslint-visitor-keys-1.0.0"
+      sources."@types/events-3.0.0"
+      sources."@types/glob-7.1.1"
+      sources."@types/json-schema-7.0.4"
+      sources."@types/minimatch-3.0.3"
+      sources."@types/node-13.9.3"
+      sources."@types/normalize-package-data-2.4.0"
       sources."@types/unist-2.0.3"
       sources."@types/vfile-3.0.2"
       sources."@types/vfile-message-2.0.0"
+      (sources."@typescript-eslint/experimental-utils-1.13.0" // {
+        dependencies = [
+          sources."eslint-scope-4.0.3"
+        ];
+      })
+      sources."@typescript-eslint/parser-1.13.0"
+      (sources."@typescript-eslint/typescript-estree-1.13.0" // {
+        dependencies = [
+          sources."semver-5.5.0"
+        ];
+      })
       sources."abbrev-1.1.1"
-      sources."acorn-6.4.1"
+      sources."acorn-7.1.1"
       sources."acorn-jsx-5.2.0"
+      (sources."aggregate-error-3.0.1" // {
+        dependencies = [
+          sources."indent-string-4.0.0"
+        ];
+      })
       sources."ajv-6.12.0"
-      sources."ajv-keywords-2.1.1"
-      sources."ansi-align-2.0.0"
-      sources."ansi-escapes-3.2.0"
+      (sources."ansi-align-3.0.0" // {
+        dependencies = [
+          sources."ansi-regex-4.1.0"
+          sources."string-width-3.1.0"
+          sources."strip-ansi-5.2.0"
+        ];
+      })
+      (sources."ansi-escapes-4.3.1" // {
+        dependencies = [
+          sources."type-fest-0.11.0"
+        ];
+      })
       sources."ansi-regex-3.0.0"
       sources."ansi-styles-3.2.1"
       (sources."anymatch-1.3.2" // {
@@ -54062,17 +54753,6 @@ in
       sources."async-1.5.2"
       sources."async-each-1.0.3"
       sources."atob-2.1.2"
-      (sources."babel-code-frame-6.26.0" // {
-        dependencies = [
-          sources."ansi-regex-2.1.1"
-          sources."ansi-styles-2.2.1"
-          sources."chalk-1.1.3"
-          sources."js-tokens-3.0.2"
-          sources."strip-ansi-3.0.1"
-          sources."supports-color-2.0.0"
-        ];
-      })
-      sources."babel-runtime-6.26.0"
       sources."bail-1.0.5"
       sources."balanced-match-1.0.0"
       (sources."base-0.11.2" // {
@@ -54083,7 +54763,14 @@ in
       sources."binary-extensions-1.13.1"
       sources."bindings-1.5.0"
       sources."bootstrap-vue-helper-json-1.1.1"
-      sources."boxen-1.3.0"
+      (sources."boxen-3.2.0" // {
+        dependencies = [
+          sources."ansi-regex-4.1.0"
+          sources."camelcase-5.3.1"
+          sources."string-width-3.1.0"
+          sources."strip-ansi-5.2.0"
+        ];
+      })
       sources."brace-expansion-1.1.11"
       (sources."braces-2.3.2" // {
         dependencies = [
@@ -54094,16 +54781,16 @@ in
       sources."buffer-from-1.1.1"
       sources."builtin-modules-1.1.1"
       sources."cache-base-1.0.1"
-      sources."call-me-maybe-1.0.1"
-      (sources."caller-path-0.1.0" // {
+      (sources."cacheable-request-6.1.0" // {
         dependencies = [
-          sources."callsites-0.2.0"
+          sources."get-stream-5.1.0"
+          sources."lowercase-keys-2.0.0"
         ];
       })
+      sources."call-me-maybe-1.0.1"
       sources."callsites-3.1.0"
       sources."camelcase-4.1.0"
       sources."camelcase-keys-4.2.0"
-      sources."capture-stack-trace-1.0.1"
       sources."ccount-1.0.5"
       sources."chalk-2.4.2"
       sources."character-entities-1.2.4"
@@ -54118,8 +54805,7 @@ in
           sources."is-glob-2.0.1"
         ];
       })
-      sources."ci-info-1.6.0"
-      sources."circular-json-0.3.3"
+      sources."ci-info-2.0.0"
       (sources."class-utils-0.3.6" // {
         dependencies = [
           sources."define-property-0.2.5"
@@ -54138,12 +54824,13 @@ in
           sources."kind-of-5.1.0"
         ];
       })
-      sources."cli-boxes-1.0.0"
-      sources."cli-cursor-2.1.0"
+      sources."clean-stack-2.2.0"
+      sources."cli-boxes-2.2.0"
+      sources."cli-cursor-3.1.0"
       sources."cli-width-2.2.0"
       sources."cliui-4.1.0"
       sources."clone-1.0.4"
-      sources."co-4.6.0"
+      sources."clone-response-1.0.2"
       sources."code-point-at-1.1.0"
       sources."collapse-white-space-1.0.6"
       sources."collection-visit-1.0.0"
@@ -54162,11 +54849,10 @@ in
       sources."concat-map-0.0.1"
       sources."concat-stream-1.6.2"
       sources."config-chain-1.1.12"
-      sources."configstore-3.1.2"
+      sources."configstore-4.0.0"
       sources."copy-descriptor-0.1.1"
-      sources."core-js-2.6.11"
+      sources."core-js-3.6.4"
       sources."core-util-is-1.0.2"
-      sources."create-error-class-3.0.2"
       sources."cross-spawn-5.1.0"
       sources."crypto-random-string-1.0.0"
       (sources."css-2.2.4" // {
@@ -54175,6 +54861,7 @@ in
         ];
       })
       sources."css-parse-2.0.0"
+      sources."csstype-2.6.9"
       sources."currently-unhandled-0.4.1"
       sources."debug-3.2.6"
       sources."decamelize-1.2.0"
@@ -54184,10 +54871,32 @@ in
         ];
       })
       sources."decode-uri-component-0.2.0"
+      sources."decompress-response-3.3.0"
       sources."deep-extend-0.6.0"
       sources."deep-is-0.1.3"
       sources."defaults-1.0.3"
+      sources."defer-to-connect-1.1.3"
       sources."define-property-2.0.2"
+      (sources."del-5.1.0" // {
+        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."globby-10.0.2"
+          sources."ignore-5.1.4"
+          sources."is-number-7.0.0"
+          sources."is-path-inside-3.0.2"
+          sources."micromatch-4.0.2"
+          sources."path-type-4.0.0"
+          sources."rimraf-3.0.2"
+          sources."slash-3.0.0"
+          sources."to-regex-range-5.0.1"
+        ];
+      })
+      sources."del-cli-3.0.0"
       sources."diff-4.0.2"
       sources."dir-glob-2.0.0"
       sources."dlv-1.1.3"
@@ -54200,26 +54909,32 @@ in
       sources."end-of-stream-1.4.4"
       sources."error-ex-1.3.2"
       sources."escape-string-regexp-1.0.5"
-      (sources."eslint-5.16.0" // {
+      (sources."eslint-6.8.0" // {
         dependencies = [
-          sources."cross-spawn-6.0.5"
+          sources."ansi-regex-4.1.0"
+          (sources."cross-spawn-6.0.5" // {
+            dependencies = [
+              sources."semver-5.7.1"
+            ];
+          })
           sources."debug-4.1.1"
           sources."ignore-4.0.6"
+          sources."semver-6.3.0"
+          sources."strip-ansi-5.2.0"
+          sources."strip-json-comments-3.0.1"
         ];
       })
-      (sources."eslint-plugin-vue-5.2.3" // {
-        dependencies = [
-          sources."debug-4.1.1"
-          sources."espree-4.1.0"
-          sources."vue-eslint-parser-5.0.0"
-        ];
-      })
-      sources."eslint-scope-4.0.3"
+      sources."eslint-plugin-vue-6.2.2"
+      sources."eslint-scope-5.0.0"
       sources."eslint-utils-1.4.3"
       sources."eslint-visitor-keys-1.1.0"
-      sources."espree-5.0.1"
+      sources."espree-6.2.1"
       sources."esprima-4.0.1"
-      sources."esquery-1.1.0"
+      (sources."esquery-1.2.0" // {
+        dependencies = [
+          sources."estraverse-5.0.0"
+        ];
+      })
       sources."esrecurse-4.2.1"
       sources."estraverse-4.3.0"
       sources."esutils-2.0.3"
@@ -54268,11 +54983,20 @@ in
         ];
       })
       sources."fast-deep-equal-3.1.1"
-      sources."fast-glob-2.2.7"
+      (sources."fast-glob-2.2.7" // {
+        dependencies = [
+          (sources."glob-parent-3.1.0" // {
+            dependencies = [
+              sources."is-glob-3.1.0"
+            ];
+          })
+        ];
+      })
       sources."fast-json-stable-stringify-2.1.0"
       sources."fast-levenshtein-2.0.6"
+      sources."fastq-1.6.1"
       sources."fault-1.0.4"
-      sources."figures-2.0.0"
+      sources."figures-3.2.0"
       sources."file-entry-cache-5.0.1"
       sources."file-uri-to-path-1.0.0"
       sources."filename-regex-2.0.1"
@@ -54290,7 +55014,7 @@ in
       sources."format-0.2.2"
       sources."fragment-cache-0.2.1"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-1.2.11"
+      sources."fsevents-1.2.12"
       sources."function-bind-1.1.1"
       sources."functional-red-black-tree-1.0.1"
       sources."get-caller-file-1.0.3"
@@ -54304,16 +55028,20 @@ in
           sources."is-glob-2.0.1"
         ];
       })
-      (sources."glob-parent-3.1.0" // {
+      sources."glob-parent-5.1.1"
+      sources."glob-to-regexp-0.3.0"
+      sources."global-dirs-0.1.1"
+      (sources."globals-12.4.0" // {
         dependencies = [
-          sources."is-glob-3.1.0"
+          sources."type-fest-0.8.1"
         ];
       })
-      sources."glob-to-regexp-0.3.0"
-      sources."global-dirs-0.1.1"
-      sources."globals-11.12.0"
       sources."globby-8.0.2"
-      sources."got-6.7.1"
+      (sources."got-9.6.0" // {
+        dependencies = [
+          sources."get-stream-4.1.0"
+        ];
+      })
       sources."graceful-fs-4.2.3"
       sources."gridsome-helper-json-1.0.3"
       sources."has-1.0.3"
@@ -54330,16 +55058,18 @@ in
           sources."kind-of-4.0.0"
         ];
       })
+      sources."has-yarn-2.1.0"
       sources."hast-util-embedded-1.0.5"
       sources."hast-util-has-property-1.0.4"
-      sources."hast-util-is-body-ok-link-1.0.2"
+      sources."hast-util-is-body-ok-link-1.0.3"
       sources."hast-util-is-element-1.0.4"
       sources."hast-util-parse-selector-2.2.4"
-      sources."hast-util-to-string-1.0.2"
+      sources."hast-util-to-string-1.0.3"
       sources."hast-util-whitespace-1.0.4"
       sources."hosted-git-info-2.8.8"
       sources."html-void-elements-1.0.5"
-      sources."html-whitespace-sensitive-tag-names-1.0.1"
+      sources."html-whitespace-sensitive-tag-names-1.0.2"
+      sources."http-cache-semantics-4.1.0"
       sources."iconv-lite-0.4.24"
       sources."ignore-3.3.10"
       (sources."import-fresh-3.2.1" // {
@@ -54353,10 +55083,19 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.5"
-      (sources."inquirer-6.5.2" // {
+      (sources."inquirer-7.1.0" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
-          sources."strip-ansi-5.2.0"
+          sources."ansi-regex-5.0.0"
+          sources."ansi-styles-4.2.1"
+          sources."chalk-3.0.0"
+          sources."color-convert-2.0.1"
+          sources."color-name-1.1.4"
+          sources."emoji-regex-8.0.0"
+          sources."has-flag-4.0.0"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."string-width-4.2.0"
+          sources."strip-ansi-6.0.0"
+          sources."supports-color-7.1.0"
         ];
       })
       sources."invert-kv-2.0.0"
@@ -54366,7 +55105,7 @@ in
       sources."is-arrayish-0.2.1"
       sources."is-binary-path-1.0.1"
       sources."is-buffer-2.0.4"
-      sources."is-ci-1.2.1"
+      sources."is-ci-2.0.0"
       sources."is-data-descriptor-1.0.0"
       sources."is-decimal-1.0.4"
       sources."is-descriptor-1.0.2"
@@ -54380,7 +55119,7 @@ in
       sources."is-hexadecimal-1.0.4"
       sources."is-hidden-1.1.3"
       sources."is-installed-globally-0.1.0"
-      sources."is-npm-1.0.0"
+      sources."is-npm-3.0.0"
       (sources."is-number-3.0.0" // {
         dependencies = [
           sources."is-buffer-1.1.6"
@@ -54389,33 +55128,35 @@ in
       })
       sources."is-obj-1.0.1"
       sources."is-object-1.0.1"
+      sources."is-path-cwd-2.2.0"
       sources."is-path-inside-1.0.1"
       sources."is-plain-obj-1.1.0"
       sources."is-plain-object-2.0.4"
       sources."is-posix-bracket-0.1.1"
       sources."is-primitive-2.0.0"
       sources."is-promise-2.1.0"
-      sources."is-redirect-1.0.0"
-      sources."is-resolvable-1.1.0"
-      sources."is-retry-allowed-1.2.0"
       sources."is-stream-1.1.0"
       sources."is-utf8-0.2.1"
       sources."is-windows-1.0.2"
+      sources."is-yarn-global-0.3.0"
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
       sources."isobject-3.0.1"
       sources."js-beautify-1.10.3"
       sources."js-tokens-4.0.0"
       sources."js-yaml-3.13.1"
+      sources."json-buffer-3.0.0"
       sources."json-parse-better-errors-1.0.2"
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-without-jsonify-1.0.1"
-      sources."json5-2.1.1"
+      sources."json5-2.1.2"
       sources."jsonc-parser-1.0.3"
+      sources."keyv-3.1.0"
       sources."kind-of-6.0.3"
-      sources."latest-version-3.1.0"
+      sources."latest-version-5.1.0"
       sources."lcid-2.0.0"
       sources."levn-0.3.0"
+      sources."lines-and-columns-1.1.6"
       sources."load-json-file-4.0.0"
       sources."load-plugin-2.3.1"
       sources."locate-path-2.0.0"
@@ -54448,11 +55189,7 @@ in
       sources."map-visit-1.0.0"
       sources."markdown-table-0.4.0"
       sources."math-random-1.0.4"
-      (sources."mem-4.3.0" // {
-        dependencies = [
-          sources."mimic-fn-2.1.0"
-        ];
-      })
+      sources."mem-4.3.0"
       (sources."meow-5.0.0" // {
         dependencies = [
           sources."read-pkg-up-3.0.0"
@@ -54460,7 +55197,8 @@ in
       })
       sources."merge2-1.3.0"
       sources."micromatch-3.1.10"
-      sources."mimic-fn-1.2.0"
+      sources."mimic-fn-2.1.0"
+      sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
       sources."minimist-options-3.0.2"
@@ -54469,21 +55207,19 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."mout-0.5.0"
       sources."ms-2.1.2"
-      sources."mute-stream-0.0.7"
+      sources."mute-stream-0.0.8"
       sources."nan-2.14.0"
       sources."nanomatch-1.2.13"
       sources."natural-compare-1.4.0"
       sources."nice-try-1.0.5"
+      sources."node-fetch-2.6.0"
       sources."nopt-4.0.3"
       sources."normalize-package-data-2.5.0"
       sources."normalize-path-2.1.1"
+      sources."normalize-url-4.5.0"
       sources."npm-prefix-1.2.0"
       sources."npm-run-path-2.0.2"
       sources."number-is-nan-1.0.1"
@@ -54507,7 +55243,7 @@ in
       sources."object.omit-2.0.1"
       sources."object.pick-1.3.0"
       sources."once-1.4.0"
-      sources."onetime-2.0.1"
+      sources."onetime-5.1.0"
       sources."optionator-0.8.3"
       sources."os-homedir-1.0.2"
       (sources."os-locale-3.1.0" // {
@@ -54519,13 +55255,19 @@ in
       })
       sources."os-tmpdir-1.0.2"
       sources."osenv-0.1.5"
+      sources."p-cancelable-1.1.0"
       sources."p-defer-1.0.0"
       sources."p-finally-1.0.0"
       sources."p-is-promise-2.1.0"
       sources."p-limit-1.3.0"
       sources."p-locate-2.0.0"
+      sources."p-map-3.0.0"
       sources."p-try-1.0.0"
-      sources."package-json-4.0.1"
+      (sources."package-json-6.5.0" // {
+        dependencies = [
+          sources."semver-6.3.0"
+        ];
+      })
       sources."parent-module-1.0.1"
       sources."parse-entities-1.2.2"
       sources."parse-gitignore-1.0.1"
@@ -54544,6 +55286,7 @@ in
       sources."path-key-2.0.1"
       sources."path-parse-1.0.6"
       sources."path-type-3.0.0"
+      sources."picomatch-2.2.2"
       sources."pify-3.0.0"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
@@ -54557,38 +55300,45 @@ in
           sources."strip-bom-2.0.0"
         ];
       })
-      sources."pluralize-7.0.0"
       sources."posix-character-classes-0.1.1"
       sources."prelude-ls-1.1.2"
-      sources."prepend-http-1.0.4"
+      sources."prepend-http-2.0.0"
       sources."preserve-0.2.0"
       sources."prettier-1.19.1"
-      (sources."prettier-eslint-8.8.2" // {
+      (sources."prettier-eslint-9.0.1" // {
         dependencies = [
-          sources."acorn-5.7.4"
+          sources."acorn-6.4.1"
           (sources."acorn-jsx-3.0.1" // {
             dependencies = [
               sources."acorn-3.3.0"
             ];
           })
-          sources."ajv-5.5.2"
-          sources."chardet-0.4.2"
-          sources."doctrine-2.1.0"
-          sources."eslint-4.19.1"
-          sources."eslint-scope-3.7.3"
-          sources."espree-3.5.4"
-          sources."external-editor-2.2.0"
-          sources."fast-deep-equal-1.1.0"
-          sources."file-entry-cache-2.0.0"
-          sources."flat-cache-1.3.4"
-          sources."inquirer-3.3.0"
-          sources."json-schema-traverse-0.3.1"
-          sources."regexpp-1.1.0"
-          sources."slice-ansi-1.0.0"
-          sources."table-4.0.2"
-          sources."typescript-2.9.2"
-          sources."vue-eslint-parser-2.0.3"
-          sources."write-0.2.1"
+          sources."ansi-escapes-3.2.0"
+          sources."ansi-regex-4.1.0"
+          sources."cli-cursor-2.1.0"
+          sources."cross-spawn-6.0.5"
+          sources."debug-4.1.1"
+          sources."eslint-5.16.0"
+          sources."eslint-scope-4.0.3"
+          sources."espree-5.0.1"
+          sources."figures-2.0.0"
+          sources."globals-11.12.0"
+          sources."ignore-4.0.6"
+          sources."indent-string-4.0.0"
+          sources."inquirer-6.5.2"
+          sources."mimic-fn-1.2.0"
+          sources."mute-stream-0.0.7"
+          sources."onetime-2.0.1"
+          sources."restore-cursor-2.0.0"
+          sources."strip-ansi-5.2.0"
+          (sources."vue-eslint-parser-2.0.3" // {
+            dependencies = [
+              sources."acorn-5.7.4"
+              sources."debug-3.2.6"
+              sources."eslint-scope-3.7.3"
+              sources."espree-3.5.4"
+            ];
+          })
         ];
       })
       sources."prettier-tslint-0.4.2"
@@ -54608,24 +55358,31 @@ in
       })
       sources."rc-1.2.8"
       sources."read-pkg-3.0.0"
-      (sources."read-pkg-up-4.0.0" // {
+      (sources."read-pkg-up-7.0.1" // {
         dependencies = [
-          sources."find-up-3.0.0"
-          sources."locate-path-3.0.0"
+          sources."find-up-4.1.0"
+          sources."locate-path-5.0.0"
           sources."p-limit-2.2.2"
-          sources."p-locate-3.0.0"
+          sources."p-locate-4.1.0"
           sources."p-try-2.2.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."readdirp-2.2.1"
       sources."redent-2.0.0"
-      sources."regenerator-runtime-0.11.1"
       sources."regex-cache-0.4.4"
       sources."regex-not-1.0.2"
       sources."regexpp-2.0.1"
-      sources."registry-auth-token-3.4.0"
-      sources."registry-url-3.1.0"
+      sources."registry-auth-token-4.1.1"
+      sources."registry-url-5.1.0"
       sources."rehype-sort-attribute-values-2.0.1"
       (sources."remark-5.1.0" // {
         dependencies = [
@@ -54646,24 +55403,22 @@ in
       sources."require-directory-2.1.1"
       sources."require-main-filename-1.0.1"
       sources."require-relative-0.8.7"
-      (sources."require-uncached-1.0.3" // {
-        dependencies = [
-          sources."resolve-from-1.0.1"
-        ];
-      })
       sources."resolve-1.15.1"
       sources."resolve-from-5.0.0"
       sources."resolve-url-0.2.1"
-      sources."restore-cursor-2.0.0"
+      sources."responselike-1.0.2"
+      sources."restore-cursor-3.1.0"
       sources."ret-0.1.15"
+      sources."reusify-1.0.4"
       sources."rimraf-2.6.3"
       sources."run-async-2.4.0"
-      sources."rx-lite-4.0.8"
-      sources."rx-lite-aggregates-4.0.8"
+      sources."run-parallel-1.1.9"
       sources."rxjs-6.5.4"
+      sources."s.color-0.0.13"
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
+      sources."sass-formatter-0.4.4"
       sources."sax-1.2.4"
       sources."semver-5.7.1"
       sources."semver-diff-2.1.0"
@@ -54788,6 +55543,9 @@ in
         ];
       })
       sources."stylus-supremacy-2.14.0"
+      sources."suf-cli-0.1.1"
+      sources."suf-node-1.1.1"
+      sources."suf-regex-0.0.14"
       sources."supports-color-5.5.0"
       sources."symbol-0.2.3"
       (sources."table-5.4.6" // {
@@ -54800,7 +55558,6 @@ in
       sources."term-size-1.2.0"
       sources."text-table-0.2.0"
       sources."through-2.3.8"
-      sources."timed-out-4.0.1"
       sources."tmp-0.0.33"
       (sources."to-object-path-0.3.0" // {
         dependencies = [
@@ -54808,13 +55565,10 @@ in
           sources."kind-of-3.2.2"
         ];
       })
+      sources."to-readable-stream-1.0.0"
       sources."to-regex-3.0.2"
       sources."to-regex-range-2.1.1"
-      (sources."to-vfile-5.0.3" // {
-        dependencies = [
-          sources."vfile-3.0.1"
-        ];
-      })
+      sources."to-vfile-6.1.0"
       sources."trim-0.0.1"
       sources."trim-newlines-2.0.0"
       sources."trim-trailing-lines-1.1.3"
@@ -54823,23 +55577,28 @@ in
       sources."tslint-5.20.1"
       sources."tsutils-2.29.0"
       sources."type-check-0.3.2"
+      sources."type-fest-0.3.1"
       sources."typedarray-0.0.6"
       sources."typescript-3.8.3"
-      (sources."typescript-eslint-parser-16.0.1" // {
-        dependencies = [
-          sources."semver-5.5.0"
-        ];
-      })
       sources."unherit-1.1.3"
       (sources."unified-7.1.0" // {
         dependencies = [
+          sources."unist-util-stringify-position-1.1.2"
           sources."vfile-3.0.1"
+          sources."vfile-message-1.1.1"
         ];
       })
       (sources."unified-engine-6.0.1" // {
         dependencies = [
           sources."to-vfile-4.0.0"
+          sources."unist-util-stringify-position-1.1.2"
           sources."vfile-3.0.1"
+          sources."vfile-message-1.1.1"
+          (sources."vfile-reporter-5.1.2" // {
+            dependencies = [
+              sources."unist-util-stringify-position-2.0.3"
+            ];
+          })
         ];
       })
       sources."union-value-1.0.1"
@@ -54849,7 +55608,7 @@ in
       sources."unist-util-is-2.1.3"
       sources."unist-util-modify-children-1.1.6"
       sources."unist-util-remove-position-1.1.4"
-      sources."unist-util-stringify-position-1.1.2"
+      sources."unist-util-stringify-position-2.0.3"
       sources."unist-util-visit-1.4.1"
       (sources."unist-util-visit-parents-2.1.2" // {
         dependencies = [
@@ -54867,30 +55626,31 @@ in
         ];
       })
       sources."untildify-2.1.0"
-      sources."unzip-response-2.0.1"
-      sources."update-notifier-2.5.0"
+      sources."update-notifier-3.0.1"
       sources."uri-js-4.2.2"
       sources."urix-0.1.0"
-      sources."url-parse-lax-1.0.0"
+      sources."url-parse-lax-3.0.0"
       sources."use-3.1.1"
       sources."user-home-2.0.0"
       sources."util-deprecate-1.0.2"
+      sources."v8-compile-cache-2.1.0"
       sources."validate-npm-package-license-3.0.4"
-      (sources."vfile-4.0.3" // {
-        dependencies = [
-          sources."unist-util-stringify-position-2.0.3"
-          sources."vfile-message-2.0.3"
-        ];
-      })
+      sources."vfile-4.0.3"
       sources."vfile-location-2.0.6"
-      sources."vfile-message-1.1.1"
-      (sources."vfile-reporter-5.1.2" // {
+      sources."vfile-message-2.0.3"
+      (sources."vfile-reporter-6.0.1" // {
         dependencies = [
-          sources."unist-util-stringify-position-2.0.3"
+          sources."ansi-regex-5.0.0"
+          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."supports-color-6.1.0"
         ];
       })
       sources."vfile-sort-2.2.2"
       sources."vfile-statistics-1.1.4"
+      sources."vls-0.2.0"
       (sources."vscode-css-languageservice-4.1.1" // {
         dependencies = [
           sources."vscode-uri-2.1.1"
@@ -54898,19 +55658,18 @@ in
       })
       sources."vscode-emmet-helper-1.2.17"
       sources."vscode-jsonrpc-5.0.1"
-      sources."vscode-languageserver-5.3.0-next.10"
+      sources."vscode-languageserver-6.1.1"
       sources."vscode-languageserver-protocol-3.15.3"
       sources."vscode-languageserver-textdocument-1.0.1"
       sources."vscode-languageserver-types-3.15.1"
-      sources."vscode-nls-4.1.1"
-      sources."vscode-textbuffer-1.0.0"
+      sources."vscode-nls-4.1.2"
       sources."vscode-uri-1.0.8"
-      (sources."vue-eslint-parser-6.0.5" // {
+      sources."vscode-web-custom-data-0.1.3"
+      (sources."vue-eslint-parser-7.0.0" // {
         dependencies = [
           sources."debug-4.1.1"
         ];
       })
-      sources."vue-language-server-0.0.62"
       sources."vue-onsenui-helper-json-1.0.2"
       sources."wcwidth-1.0.1"
       sources."which-1.3.1"
@@ -55023,7 +55782,7 @@ in
       })
       sources."vscode-languageserver-textdocument-1.0.1"
       sources."vscode-languageserver-types-3.15.1"
-      sources."vscode-nls-4.1.1"
+      sources."vscode-nls-4.1.2"
       sources."vscode-uri-2.1.1"
       sources."yaml-ast-parser-custom-tags-0.0.43"
       sources."yaml-language-server-0.7.2"
@@ -55040,10 +55799,10 @@ in
   coc-yank = nodeEnv.buildNodePackage {
     name = "coc-yank";
     packageName = "coc-yank";
-    version = "1.1.3";
+    version = "1.1.4";
     src = fetchurl {
-      url = "https://registry.npmjs.org/coc-yank/-/coc-yank-1.1.3.tgz";
-      sha512 = "m+hjR2e1Pc4CikJCh1u+XiyeWK7O9aBWWqk6nSkJp22wC8moIVgRa1PYbGpzKAAXem+Ts0BzVw2IRF5EES0MQg==";
+      url = "https://registry.npmjs.org/coc-yank/-/coc-yank-1.1.4.tgz";
+      sha512 = "8qonhyBfipzni6Fbbdm9hOjUIdLtwPGqnVGxA5DV+Kd4ctvD+FiBRuaWnXWf4QqxC8ATHQyTyoSqrvdXdko4PA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -55208,7 +55967,7 @@ in
       sources."@types/events-3.0.0"
       sources."@types/glob-7.1.1"
       sources."@types/minimatch-3.0.3"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."abbrev-1.1.1"
       sources."accepts-1.3.7"
       sources."ajv-6.12.0"
@@ -55818,7 +56577,7 @@ in
       sources."@types/events-3.0.0"
       sources."@types/glob-7.1.1"
       sources."@types/minimatch-3.0.3"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."aggregate-error-3.0.1"
       sources."arr-diff-4.0.0"
       sources."arr-flatten-1.1.0"
@@ -56179,7 +56938,7 @@ in
       sources."@cycle/run-3.4.0"
       sources."@cycle/time-0.10.1"
       sources."@types/cookiejar-2.1.1"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."@types/superagent-3.8.2"
       sources."ansi-escapes-3.2.0"
       sources."ansi-regex-2.1.1"
@@ -56267,7 +57026,7 @@ in
       sources."performance-now-2.1.0"
       sources."process-nextick-args-2.0.1"
       sources."pseudomap-1.0.2"
-      sources."qs-6.9.1"
+      sources."qs-6.9.2"
       sources."quicktask-1.1.0"
       sources."raf-3.3.2"
       sources."readable-stream-2.3.7"
@@ -56321,10 +57080,10 @@ in
   create-react-app = nodeEnv.buildNodePackage {
     name = "create-react-app";
     packageName = "create-react-app";
-    version = "3.4.0";
+    version = "3.4.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/create-react-app/-/create-react-app-3.4.0.tgz";
-      sha512 = "BR5jXjJH6Bz0vHAIoF0pH2K+hX+Frd93UGZjjCUB1k1JJDZbM+QyigTXZ08ddJ02AQ+iYfNyM77WgDwKQBl00g==";
+      url = "https://registry.npmjs.org/create-react-app/-/create-react-app-3.4.1.tgz";
+      sha512 = "i0Zxiqj8Q2tMJkMousrZdB/vlvtoAZyN49bgAfM4yHhWQUzrpM1rZU7TX1Rg5bbDQ1R8Gk/usNnpkDzEHJdVXg==";
     };
     dependencies = [
       sources."@types/color-name-1.1.1"
@@ -56386,8 +57145,8 @@ in
       sources."lodash-4.17.15"
       sources."mimic-fn-2.1.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
       sources."once-1.4.0"
@@ -56880,11 +57639,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."ms-2.1.2"
       sources."multi-random-access-2.1.1"
       sources."multicast-dns-7.2.1"
@@ -57402,7 +58157,7 @@ in
       sources."assert-plus-1.0.0"
       sources."async-2.6.3"
       sources."asynckit-0.4.0"
-      sources."aws-sdk-2.639.0"
+      sources."aws-sdk-2.644.0"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.9.1"
       sources."base64-js-1.3.1"
@@ -57555,24 +58310,33 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      sources."@babel/core-7.8.7"
-      sources."@babel/generator-7.8.8"
-      sources."@babel/helper-builder-react-jsx-7.8.3"
+      sources."@babel/core-7.9.0"
+      sources."@babel/generator-7.9.4"
+      sources."@babel/helper-annotate-as-pure-7.8.3"
+      sources."@babel/helper-builder-react-jsx-7.9.0"
+      sources."@babel/helper-builder-react-jsx-experimental-7.9.0"
       sources."@babel/helper-function-name-7.8.3"
       sources."@babel/helper-get-function-arity-7.8.3"
+      sources."@babel/helper-member-expression-to-functions-7.8.3"
+      sources."@babel/helper-module-imports-7.8.3"
+      sources."@babel/helper-module-transforms-7.9.0"
+      sources."@babel/helper-optimise-call-expression-7.8.3"
       sources."@babel/helper-plugin-utils-7.8.3"
+      sources."@babel/helper-replace-supers-7.8.6"
+      sources."@babel/helper-simple-access-7.8.3"
       sources."@babel/helper-split-export-declaration-7.8.3"
-      sources."@babel/helpers-7.8.4"
-      sources."@babel/highlight-7.8.3"
-      sources."@babel/parser-7.8.8"
-      sources."@babel/plugin-proposal-object-rest-spread-7.8.3"
+      sources."@babel/helper-validator-identifier-7.9.0"
+      sources."@babel/helpers-7.9.2"
+      sources."@babel/highlight-7.9.0"
+      sources."@babel/parser-7.9.4"
+      sources."@babel/plugin-proposal-object-rest-spread-7.9.0"
       sources."@babel/plugin-syntax-jsx-7.8.3"
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
       sources."@babel/plugin-transform-destructuring-7.8.8"
-      sources."@babel/plugin-transform-react-jsx-7.8.3"
+      sources."@babel/plugin-transform-react-jsx-7.9.4"
       sources."@babel/template-7.8.6"
-      sources."@babel/traverse-7.8.6"
-      sources."@babel/types-7.8.7"
+      sources."@babel/traverse-7.9.0"
+      sources."@babel/types-7.9.0"
       sources."@sindresorhus/is-2.1.0"
       sources."@szmarczak/http-timer-4.0.5"
       sources."@types/cacheable-request-6.0.1"
@@ -57580,9 +58344,10 @@ in
       sources."@types/http-cache-semantics-4.0.0"
       sources."@types/keyv-3.1.1"
       sources."@types/minimist-1.2.0"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."@types/normalize-package-data-2.4.0"
       sources."@types/responselike-1.0.0"
+      sources."@types/yoga-layout-1.9.1"
       sources."ajv-6.12.0"
       (sources."ansi-escapes-4.3.1" // {
         dependencies = [
@@ -57595,7 +58360,7 @@ in
       sources."arrify-2.0.1"
       sources."astral-regex-2.0.0"
       sources."auto-bind-4.0.0"
-      sources."cacheable-lookup-2.0.0"
+      sources."cacheable-lookup-2.0.1"
       (sources."cacheable-request-7.0.1" // {
         dependencies = [
           sources."get-stream-5.1.0"
@@ -57610,7 +58375,7 @@ in
       sources."ci-info-2.0.0"
       sources."cli-cursor-3.1.0"
       sources."cli-truncate-2.1.0"
-      sources."clipboardy-2.2.0"
+      sources."clipboardy-2.3.0"
       (sources."clone-response-1.0.2" // {
         dependencies = [
           sources."mimic-response-1.0.1"
@@ -57643,7 +58408,6 @@ in
       sources."env-paths-2.2.0"
       sources."error-ex-1.3.2"
       sources."escape-string-regexp-1.0.5"
-      sources."esutils-2.0.3"
       sources."execa-1.0.0"
       sources."fast-deep-equal-3.1.1"
       sources."fast-json-stable-stringify-2.1.0"
@@ -57698,7 +58462,7 @@ in
       sources."json-parse-better-errors-1.0.2"
       sources."json-schema-traverse-0.4.1"
       sources."json-schema-typed-7.0.3"
-      sources."json5-2.1.1"
+      sources."json5-2.1.2"
       sources."keyv-4.0.0"
       sources."lines-and-columns-1.1.6"
       sources."locate-path-3.0.0"
@@ -57734,7 +58498,7 @@ in
           sources."mimic-fn-3.0.0"
         ];
       })
-      (sources."meow-6.0.1" // {
+      (sources."meow-6.1.0" // {
         dependencies = [
           sources."type-fest-0.8.1"
         ];
@@ -57773,8 +58537,8 @@ in
       sources."pump-3.0.0"
       sources."punycode-2.1.1"
       sources."quick-lru-4.0.1"
-      sources."react-16.13.0"
-      sources."react-is-16.13.0"
+      sources."react-16.13.1"
+      sources."react-is-16.13.1"
       sources."react-reconciler-0.24.0"
       (sources."read-pkg-5.2.0" // {
         dependencies = [
@@ -57845,8 +58609,8 @@ in
       })
       sources."wrappy-1.0.2"
       sources."write-file-atomic-3.0.3"
-      sources."yargs-parser-16.1.0"
-      sources."yoga-layout-prebuilt-1.9.3"
+      sources."yargs-parser-18.1.1"
+      sources."yoga-layout-prebuilt-1.9.5"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -57885,7 +58649,8 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      sources."@babel/highlight-7.8.3"
+      sources."@babel/helper-validator-identifier-7.9.0"
+      sources."@babel/highlight-7.9.0"
       sources."@types/color-name-1.1.1"
       sources."acorn-7.1.1"
       sources."acorn-jsx-5.2.0"
@@ -57924,7 +58689,11 @@ in
       sources."eslint-visitor-keys-1.1.0"
       sources."espree-6.2.1"
       sources."esprima-4.0.1"
-      sources."esquery-1.1.0"
+      (sources."esquery-1.2.0" // {
+        dependencies = [
+          sources."estraverse-5.0.0"
+        ];
+      })
       sources."esrecurse-4.2.1"
       sources."estraverse-4.3.0"
       sources."esutils-2.0.3"
@@ -57939,7 +58708,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."functional-red-black-tree-1.0.1"
       sources."glob-7.1.6"
-      sources."glob-parent-5.1.0"
+      sources."glob-parent-5.1.1"
       sources."globals-12.4.0"
       sources."has-flag-3.0.0"
       sources."iconv-lite-0.4.24"
@@ -57972,8 +58741,8 @@ in
       sources."lodash-4.17.15"
       sources."mimic-fn-2.1.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."ms-2.1.2"
       sources."mute-stream-0.0.8"
       sources."natural-compare-1.4.0"
@@ -58050,14 +58819,15 @@ in
   eslint_d = nodeEnv.buildNodePackage {
     name = "eslint_d";
     packageName = "eslint_d";
-    version = "8.1.0";
+    version = "8.1.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/eslint_d/-/eslint_d-8.1.0.tgz";
-      sha512 = "cNZFOYG+Quphqj+GPoTNe9nsDCRJo2AjHVpu4RkvAxH8+vR2ckvm7ksr+Lwi+kkKuMf4h+QifTAXJ0HuBkJ7FA==";
+      url = "https://registry.npmjs.org/eslint_d/-/eslint_d-8.1.1.tgz";
+      sha512 = "eYr8vOwCQynnI8b5e5R07D2JI6jCItT9QZzWKGZnqMs9lKN+z0bvn1ULCNKp0u4mz1V+lLRglIDiSGIkIDDcLw==";
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      sources."@babel/highlight-7.8.3"
+      sources."@babel/helper-validator-identifier-7.9.0"
+      sources."@babel/highlight-7.9.0"
       sources."@types/color-name-1.1.1"
       sources."acorn-7.1.1"
       sources."acorn-jsx-5.2.0"
@@ -58098,7 +58868,11 @@ in
       sources."eslint-visitor-keys-1.1.0"
       sources."espree-6.2.1"
       sources."esprima-4.0.1"
-      sources."esquery-1.1.0"
+      (sources."esquery-1.2.0" // {
+        dependencies = [
+          sources."estraverse-5.0.0"
+        ];
+      })
       sources."esrecurse-4.2.1"
       sources."estraverse-4.3.0"
       sources."esutils-2.0.3"
@@ -58113,7 +58887,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."functional-red-black-tree-1.0.1"
       sources."glob-7.1.6"
-      sources."glob-parent-5.1.0"
+      sources."glob-parent-5.1.1"
       sources."globals-12.4.0"
       sources."has-flag-3.0.0"
       sources."iconv-lite-0.4.24"
@@ -58146,8 +58920,8 @@ in
       sources."lodash-4.17.15"
       sources."mimic-fn-2.1.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."ms-2.1.2"
       sources."mute-stream-0.0.8"
       sources."nanolru-1.0.0"
@@ -58419,7 +59193,8 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      (sources."@babel/highlight-7.8.3" // {
+      sources."@babel/helper-validator-identifier-7.9.0"
+      (sources."@babel/highlight-7.9.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -58460,7 +59235,6 @@ in
       sources."error-ex-1.3.2"
       sources."esc-exit-2.0.2"
       sources."escape-string-regexp-1.0.5"
-      sources."esutils-2.0.3"
       sources."execa-4.0.0"
       sources."external-editor-3.1.0"
       sources."figures-3.2.0"
@@ -58503,7 +59277,7 @@ in
       sources."lodash-4.17.15"
       sources."lru-cache-4.1.5"
       sources."map-obj-4.1.0"
-      (sources."meow-6.0.1" // {
+      (sources."meow-6.1.0" // {
         dependencies = [
           sources."type-fest-0.8.1"
         ];
@@ -58595,7 +59369,7 @@ in
       sources."which-2.0.2"
       sources."wrappy-1.0.2"
       sources."yallist-2.1.2"
-      sources."yargs-parser-16.1.0"
+      sources."yargs-parser-18.1.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -58703,7 +59477,7 @@ in
       sources."define-property-2.0.2"
       sources."defined-0.0.0"
       sources."director-1.2.7"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-get-iterator-1.1.0"
       sources."es-to-primitive-1.2.1"
       (sources."event-stream-0.5.3" // {
@@ -58756,7 +59530,7 @@ in
       sources."forever-monitor-2.0.0"
       sources."fragment-cache-0.2.1"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-1.2.11"
+      sources."fsevents-1.2.12"
       sources."function-bind-1.1.1"
       sources."get-value-2.0.6"
       (sources."glob-7.1.6" // {
@@ -58825,9 +59599,9 @@ in
       sources."minimatch-3.0.4"
       sources."minimist-0.0.10"
       sources."mixin-deep-1.3.2"
-      (sources."mkdirp-0.5.1" // {
+      (sources."mkdirp-0.5.4" // {
         dependencies = [
-          sources."minimist-0.0.8"
+          sources."minimist-1.2.5"
         ];
       })
       sources."ms-2.0.0"
@@ -59108,11 +59882,7 @@ in
       sources."mime-db-1.43.0"
       sources."mime-types-2.1.26"
       sources."minimist-1.2.5"
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."moment-2.24.0"
       sources."moo-0.5.1"
       sources."ms-2.1.2"
@@ -59277,7 +60047,8 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      (sources."@babel/highlight-7.8.3" // {
+      sources."@babel/helper-validator-identifier-7.9.0"
+      (sources."@babel/highlight-7.9.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -59352,7 +60123,6 @@ in
       sources."error-ex-1.3.2"
       sources."escape-goat-2.1.1"
       sources."escape-string-regexp-1.0.5"
-      sources."esutils-2.0.3"
       sources."execa-4.0.0"
       sources."external-editor-3.1.0"
       sources."fast-deep-equal-3.1.1"
@@ -59429,7 +60199,7 @@ in
       sources."lowercase-keys-1.0.1"
       sources."make-dir-3.0.2"
       sources."map-obj-4.1.0"
-      (sources."meow-6.0.1" // {
+      (sources."meow-6.1.0" // {
         dependencies = [
           sources."type-fest-0.8.1"
         ];
@@ -59526,7 +60296,7 @@ in
       sources."wrappy-1.0.2"
       sources."write-file-atomic-3.0.3"
       sources."xdg-basedir-4.0.0"
-      sources."yargs-parser-16.1.0"
+      sources."yargs-parser-18.1.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -59994,11 +60764,7 @@ in
           sources."yallist-4.0.0"
         ];
       })
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
       sources."negotiator-0.6.2"
@@ -60820,7 +61586,7 @@ in
       sources."fragment-cache-0.2.1"
       sources."fs-mkdirp-stream-1.0.0"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-1.2.11"
+      sources."fsevents-1.2.12"
       sources."function-bind-1.1.1"
       sources."get-caller-file-1.0.3"
       sources."get-value-2.0.6"
@@ -61625,11 +62391,7 @@ in
       sources."lodash-4.17.15"
       sources."mime-1.6.0"
       sources."minimist-1.2.5"
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."ms-2.1.2"
       sources."opener-1.5.1"
       (sources."optimist-0.6.1" // {
@@ -61638,7 +62400,7 @@ in
         ];
       })
       sources."portfinder-1.0.25"
-      sources."qs-6.9.1"
+      sources."qs-6.9.2"
       sources."requires-port-1.0.0"
       sources."secure-compare-3.0.1"
       sources."union-0.5.0"
@@ -61738,9 +62500,9 @@ in
       sources."isstream-0.1.2"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.10"
-      (sources."mkdirp-0.5.1" // {
+      (sources."mkdirp-0.5.4" // {
         dependencies = [
-          sources."minimist-0.0.8"
+          sources."minimist-1.2.5"
         ];
       })
       sources."moment-2.24.0"
@@ -61829,7 +62591,7 @@ in
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."jquery-3.4.1"
-      sources."jquery.terminal-2.15.0"
+      sources."jquery.terminal-2.15.2"
       sources."jsonfile-2.4.0"
       sources."keyboardevent-key-polyfill-1.1.0"
       sources."line-reader-0.4.0"
@@ -62046,11 +62808,7 @@ in
       sources."minimist-1.2.5"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."ms-2.1.2"
       sources."mute-stream-0.0.8"
       sources."netmask-1.0.6"
@@ -62076,7 +62834,7 @@ in
       sources."proxy-agent-3.1.1"
       sources."proxy-from-env-1.1.0"
       sources."pump-3.0.0"
-      sources."qs-6.9.1"
+      sources."qs-6.9.2"
       sources."raw-body-2.4.1"
       sources."readable-stream-3.6.0"
       sources."restore-cursor-2.0.0"
@@ -62202,26 +62960,28 @@ in
     name = "iosevka-build-deps";
     packageName = "iosevka-build-deps";
     version = "2.3.3";
-    src = ../../../pkgs/data/fonts/iosevka;
+    src = ../../data/fonts/iosevka;
     dependencies = [
+      sources."@types/color-name-1.1.1"
       sources."JSONStream-1.3.5"
       sources."abbrev-1.1.1"
       sources."ajv-6.12.0"
       sources."amdefine-1.0.1"
       sources."ansi-regex-2.1.1"
-      sources."ansi-styles-3.2.1"
+      sources."ansi-styles-4.2.1"
       sources."aproba-1.2.0"
       sources."are-we-there-yet-1.1.5"
       sources."argparse-1.0.10"
       sources."asn1-0.2.4"
       sources."assert-plus-1.0.0"
       sources."asynckit-0.4.0"
+      sources."at-least-node-1.0.0"
       sources."atob-2.1.2"
       sources."aws-sign2-0.7.0"
       sources."aws4-1.9.1"
       sources."balanced-match-1.0.0"
       sources."bcrypt-pbkdf-1.0.2"
-      sources."bezier-js-2.5.1"
+      sources."bezier-js-2.6.0"
       sources."bindings-1.5.0"
       sources."block-stream-0.0.9"
       sources."bluebird-3.7.2"
@@ -62230,9 +62990,9 @@ in
       sources."camelcase-4.1.0"
       sources."caryll-shapeops-0.3.1"
       sources."caseless-0.12.0"
-      sources."chalk-2.4.2"
+      sources."chalk-3.0.0"
       sources."child-process-promise-2.2.1"
-      sources."cli-cursor-2.1.0"
+      sources."cli-cursor-3.1.0"
       sources."clipper-lib-1.0.0"
       (sources."cliui-3.2.0" // {
         dependencies = [
@@ -62241,8 +63001,8 @@ in
       })
       sources."clone-2.1.2"
       sources."code-point-at-1.1.0"
-      sources."color-convert-1.9.3"
-      sources."color-name-1.1.3"
+      sources."color-convert-2.0.1"
+      sources."color-name-1.1.4"
       sources."colors-1.4.0"
       sources."combined-stream-1.0.8"
       sources."complex.js-2.0.11"
@@ -62262,11 +63022,9 @@ in
       sources."delayed-stream-1.0.0"
       sources."delegates-1.0.0"
       sources."ecc-jsbn-0.1.2"
-      sources."emoji-regex-7.0.3"
-      sources."end-of-stream-1.4.4"
+      sources."emoji-regex-8.0.0"
       sources."error-ex-1.3.2"
       sources."escape-latex-1.2.0"
-      sources."escape-string-regexp-1.0.5"
       sources."escodegen-1.14.1"
       (sources."escope-1.0.3" // {
         dependencies = [
@@ -62324,7 +63082,7 @@ in
       sources."graceful-fs-4.2.3"
       sources."har-schema-2.0.0"
       sources."har-validator-5.1.3"
-      sources."has-flag-3.0.0"
+      sources."has-flag-4.0.0"
       sources."has-unicode-2.0.1"
       sources."hosted-git-info-2.8.8"
       sources."http-signature-1.2.0"
@@ -62353,7 +63111,6 @@ in
       sources."load-json-file-2.0.0"
       sources."locate-path-2.0.0"
       sources."lru-cache-4.1.5"
-      sources."map-age-cleaner-0.1.3"
       sources."mathjs-5.10.3"
       sources."megaminx-0.9.0"
       sources."mem-1.1.0"
@@ -62362,11 +63119,10 @@ in
       sources."mime-types-2.1.26"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."ms-2.0.0"
       sources."nan-2.14.0"
-      sources."nice-try-1.0.5"
       (sources."node-gyp-3.8.0" // {
         dependencies = [
           sources."semver-5.3.0"
@@ -62381,7 +63137,11 @@ in
       sources."oauth-sign-0.9.0"
       sources."object-assign-4.1.1"
       sources."once-1.4.0"
-      sources."onetime-2.0.1"
+      (sources."onetime-5.1.0" // {
+        dependencies = [
+          sources."mimic-fn-2.1.0"
+        ];
+      })
       sources."optionator-0.8.3"
       sources."os-homedir-1.0.2"
       sources."os-locale-2.1.0"
@@ -62400,9 +63160,7 @@ in
           sources."yargs-8.0.2"
         ];
       })
-      sources."p-defer-1.0.0"
       sources."p-finally-1.0.0"
-      sources."p-is-promise-2.1.0"
       sources."p-limit-1.3.0"
       sources."p-locate-2.0.0"
       sources."p-try-1.0.0"
@@ -62440,10 +63198,8 @@ in
       sources."primitive-quadify-off-curves-0.4.1"
       sources."process-nextick-args-2.0.1"
       sources."promise-polyfill-6.1.0"
-      sources."proper-lockfile-3.2.0"
       sources."pseudomap-1.0.2"
       sources."psl-1.7.0"
-      sources."pump-3.0.0"
       sources."punycode-2.1.1"
       sources."qs-6.5.2"
       sources."read-pkg-2.0.0"
@@ -62454,9 +63210,8 @@ in
       sources."require-main-filename-1.0.1"
       sources."resolve-1.15.1"
       sources."resolve-url-0.2.1"
-      sources."restore-cursor-2.0.0"
+      sources."restore-cursor-3.1.0"
       sources."resumer-0.0.0"
-      sources."retry-0.12.0"
       sources."rimraf-2.6.3"
       sources."safe-buffer-5.1.2"
       sources."safer-buffer-2.1.2"
@@ -62498,7 +63253,7 @@ in
           sources."source-map-0.7.3"
         ];
       })
-      sources."supports-color-5.5.0"
+      sources."supports-color-7.1.0"
       sources."tar-2.2.2"
       sources."temp-0.8.4"
       sources."through-2.3.8"
@@ -62522,35 +63277,31 @@ in
       sources."util-deprecate-1.0.2"
       sources."uuid-3.4.0"
       sources."validate-npm-package-license-3.0.4"
-      (sources."verda-1.0.0-12" // {
+      (sources."verda-1.0.0" // {
         dependencies = [
-          sources."ansi-regex-4.1.0"
+          sources."ansi-regex-5.0.0"
           sources."camelcase-5.3.1"
-          (sources."cliui-4.1.0" // {
-            dependencies = [
-              sources."ansi-regex-3.0.0"
-              sources."strip-ansi-4.0.0"
-            ];
-          })
-          sources."cross-spawn-6.0.5"
-          sources."execa-1.0.0"
-          sources."fast-deep-equal-2.0.1"
-          sources."find-up-3.0.0"
-          sources."fs-extra-6.0.1"
-          sources."get-stream-4.1.0"
-          sources."invert-kv-2.0.0"
-          sources."jsonfile-4.0.0"
-          sources."lcid-2.0.0"
-          sources."locate-path-3.0.0"
-          sources."mem-4.3.0"
-          sources."mimic-fn-2.1.0"
-          sources."os-locale-3.1.0"
+          sources."cliui-6.0.0"
+          sources."find-up-4.1.0"
+          sources."fs-extra-9.0.0"
+          sources."get-caller-file-2.0.5"
+          sources."is-fullwidth-code-point-3.0.0"
+          sources."jsonfile-6.0.1"
+          sources."locate-path-5.0.0"
           sources."p-limit-2.2.2"
-          sources."p-locate-3.0.0"
+          sources."p-locate-4.1.0"
           sources."p-try-2.2.0"
-          sources."strip-ansi-5.2.0"
-          sources."yargs-12.0.5"
-          sources."yargs-parser-11.1.1"
+          sources."path-exists-4.0.0"
+          sources."require-main-filename-2.0.0"
+          sources."string-width-4.2.0"
+          sources."strip-ansi-6.0.0"
+          sources."tslib-1.11.1"
+          sources."universalify-1.0.0"
+          sources."which-2.0.2"
+          sources."wrap-ansi-6.2.0"
+          sources."y18n-4.0.0"
+          sources."yargs-15.3.1"
+          sources."yargs-parser-18.1.1"
         ];
       })
       sources."verror-1.10.0"
@@ -62570,8 +63321,12 @@ in
       (sources."yargs-14.2.3" // {
         dependencies = [
           sources."ansi-regex-4.1.0"
+          sources."ansi-styles-3.2.1"
           sources."camelcase-5.3.1"
           sources."cliui-5.0.0"
+          sources."color-convert-1.9.3"
+          sources."color-name-1.1.3"
+          sources."emoji-regex-7.0.3"
           sources."find-up-3.0.0"
           sources."get-caller-file-2.0.5"
           sources."is-fullwidth-code-point-2.0.0"
@@ -62737,7 +63492,7 @@ in
       sources."@yarnpkg/lockfile-1.1.0"
       sources."abab-2.0.3"
       sources."abbrev-1.1.1"
-      sources."acorn-5.7.4"
+      sources."acorn-7.1.1"
       (sources."acorn-globals-4.3.4" // {
         dependencies = [
           sources."acorn-6.4.1"
@@ -62776,7 +63531,6 @@ in
       sources."asn1-0.2.4"
       sources."assert-plus-1.0.0"
       sources."assign-symbols-1.0.0"
-      sources."async-limiter-1.0.1"
       sources."async-mutex-0.1.4"
       sources."asynckit-0.4.0"
       sources."atob-2.1.2"
@@ -62789,9 +63543,10 @@ in
         ];
       })
       sources."base-64-0.1.0"
+      sources."base64-js-1.3.1"
       sources."base64-stream-1.0.0"
       sources."bcrypt-pbkdf-1.0.2"
-      sources."bl-4.0.1"
+      sources."bl-4.0.2"
       sources."brace-expansion-1.1.11"
       (sources."braces-2.3.2" // {
         dependencies = [
@@ -62799,6 +63554,7 @@ in
         ];
       })
       sources."browser-process-hrtime-1.0.0"
+      sources."buffer-5.5.0"
       sources."cache-base-1.0.1"
       sources."camel-case-3.0.0"
       sources."camelcase-4.1.0"
@@ -62859,15 +63615,15 @@ in
       sources."cross-spawn-6.0.5"
       sources."crypt-0.0.2"
       sources."css-2.2.4"
-      sources."cssom-0.3.8"
-      sources."cssstyle-1.4.0"
-      sources."cwise-compiler-1.1.3"
-      sources."dashdash-1.14.1"
-      (sources."data-urls-1.1.0" // {
+      sources."cssom-0.4.4"
+      (sources."cssstyle-2.2.0" // {
         dependencies = [
-          sources."whatwg-url-7.1.0"
+          sources."cssom-0.3.8"
         ];
       })
+      sources."cwise-compiler-1.1.3"
+      sources."dashdash-1.14.1"
+      sources."data-urls-1.1.0"
       sources."debug-3.2.6"
       sources."decode-uri-component-0.2.0"
       sources."decompress-response-4.2.1"
@@ -63014,6 +63770,7 @@ in
       sources."http-errors-1.7.3"
       sources."http-signature-1.2.0"
       sources."iconv-lite-0.4.24"
+      sources."ieee754-1.1.13"
       sources."ignore-walk-3.0.3"
       (sources."image-data-uri-2.0.1" // {
         dependencies = [
@@ -63052,6 +63809,7 @@ in
         ];
       })
       sources."iota-array-1.0.0"
+      sources."ip-regex-2.1.0"
       sources."is-absolute-0.2.6"
       sources."is-accessor-descriptor-1.0.0"
       sources."is-arrayish-0.3.2"
@@ -63081,12 +63839,12 @@ in
       sources."isexe-2.0.0"
       sources."isobject-3.0.1"
       sources."isstream-0.1.2"
-      sources."joplin-turndown-4.0.23"
+      sources."joplin-turndown-4.0.24"
       sources."joplin-turndown-plugin-gfm-1.0.12"
       sources."jpeg-js-0.1.2"
       sources."js-tokens-4.0.0"
       sources."jsbn-0.1.1"
-      sources."jsdom-11.12.0"
+      sources."jsdom-15.2.1"
       sources."json-schema-0.2.3"
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
@@ -63102,7 +63860,6 @@ in
       sources."klaw-1.3.1"
       sources."klaw-sync-6.0.0"
       sources."lazyness-1.1.1"
-      sources."left-pad-1.3.0"
       sources."levenshtein-1.0.5"
       sources."levn-0.3.0"
       sources."linkify-it-2.2.0"
@@ -63162,11 +63919,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."moment-2.24.0"
       sources."ms-2.1.2"
       (sources."multiparty-4.2.1" // {
@@ -63234,7 +63987,7 @@ in
       sources."p-locate-2.0.0"
       sources."p-try-1.0.0"
       sources."param-case-2.1.1"
-      sources."parse5-4.0.0"
+      sources."parse5-5.1.0"
       sources."pascalcase-0.1.1"
       (sources."patch-package-6.2.1" // {
         dependencies = [
@@ -63276,10 +64029,15 @@ in
       (sources."request-2.88.2" // {
         dependencies = [
           sources."form-data-2.3.3"
+          sources."tough-cookie-2.5.0"
         ];
       })
       sources."request-promise-core-1.1.3"
-      sources."request-promise-native-1.0.8"
+      (sources."request-promise-native-1.0.8" // {
+        dependencies = [
+          sources."tough-cookie-2.5.0"
+        ];
+      })
       sources."requires-port-1.0.0"
       sources."resolve-url-0.2.1"
       sources."ret-0.1.15"
@@ -63289,6 +64047,7 @@ in
       sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
       sources."sax-1.2.4"
+      sources."saxes-3.1.11"
       sources."semver-5.7.1"
       sources."server-destroy-1.0.1"
       sources."set-blocking-2.0.0"
@@ -63424,7 +64183,7 @@ in
           sources."q-0.9.7"
         ];
       })
-      sources."terminal-kit-1.35.1"
+      sources."terminal-kit-1.35.2"
       (sources."tkwidgets-0.5.26" // {
         dependencies = [
           sources."is-fullwidth-code-point-2.0.0"
@@ -63441,7 +64200,7 @@ in
       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."tough-cookie-3.0.1"
       sources."tr46-1.0.1"
       sources."tree-kit-0.6.2"
       sources."tunnel-agent-0.6.0"
@@ -63482,10 +64241,11 @@ in
       sources."valid-url-1.0.9"
       sources."verror-1.10.0"
       sources."w3c-hr-time-1.0.2"
+      sources."w3c-xmlserializer-1.1.2"
       sources."webidl-conversions-4.0.2"
       sources."whatwg-encoding-1.0.5"
       sources."whatwg-mimetype-2.3.0"
-      sources."whatwg-url-6.5.0"
+      sources."whatwg-url-7.1.0"
       sources."which-1.3.1"
       sources."which-pm-runs-1.0.0"
       sources."wide-align-1.1.3"
@@ -63498,10 +64258,11 @@ in
         ];
       })
       sources."wrappy-1.0.2"
-      sources."ws-5.2.2"
+      sources."ws-7.2.3"
       sources."xml-name-validator-3.0.0"
       sources."xml2js-0.4.23"
       sources."xmlbuilder-11.0.1"
+      sources."xmlchars-2.2.0"
       sources."yallist-4.0.0"
       sources."yargs-parser-7.0.0"
     ];
@@ -63538,8 +64299,8 @@ in
       sources."ini-1.3.5"
       sources."lru-cache-4.1.5"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."nopt-4.0.3"
       sources."once-1.4.0"
       sources."os-homedir-1.0.2"
@@ -63595,7 +64356,7 @@ in
       sha512 = "Yf1ZKA3r9nvtMWHO1kEuMZTlHOF8uoQ0vyo5eH7SQy5YeIiHM+B0DgKnn+X6y6KDYZcF7G2SPkKF+JORCXWE/A==";
     };
     dependencies = [
-      sources."@babel/parser-7.8.8"
+      sources."@babel/parser-7.9.4"
       sources."argparse-1.0.10"
       sources."bluebird-3.7.2"
       sources."catharsis-0.8.11"
@@ -63610,8 +64371,8 @@ in
       sources."markdown-it-anchor-5.2.5"
       sources."marked-0.7.0"
       sources."mdurl-1.0.1"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."requizzle-0.2.3"
       sources."sprintf-js-1.0.3"
       sources."strip-json-comments-3.0.1"
@@ -63761,7 +64522,7 @@ in
       sources."path-loader-1.0.10"
       sources."process-nextick-args-2.0.1"
       sources."punycode-2.1.1"
-      sources."qs-6.9.1"
+      sources."qs-6.9.2"
       sources."readable-stream-2.3.7"
       sources."safe-buffer-5.1.2"
       sources."slash-3.0.0"
@@ -63944,7 +64705,11 @@ in
       sources."mime-types-2.1.26"
       sources."mimic-response-1.0.1"
       sources."minimist-1.2.5"
-      sources."morgan-1.9.1"
+      (sources."morgan-1.10.0" // {
+        dependencies = [
+          sources."depd-2.0.0"
+        ];
+      })
       sources."ms-2.0.0"
       sources."nanoid-2.1.11"
       sources."negotiator-0.6.2"
@@ -64045,8 +64810,8 @@ in
       sources."write-file-atomic-3.0.3"
       sources."xdg-basedir-4.0.0"
       sources."y18n-4.0.0"
-      sources."yargs-15.3.0"
-      sources."yargs-parser-18.1.0"
+      sources."yargs-15.3.1"
+      sources."yargs-parser-18.1.1"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -64160,7 +64925,7 @@ in
       sources."fs.realpath-1.0.0"
       sources."fsevents-2.1.2"
       sources."glob-7.1.6"
-      sources."glob-parent-5.1.0"
+      sources."glob-parent-5.1.1"
       sources."graceful-fs-4.2.3"
       sources."has-binary2-1.0.3"
       sources."has-cors-1.1.0"
@@ -64203,7 +64968,7 @@ in
       sources."parseuri-0.0.5"
       sources."parseurl-1.3.3"
       sources."path-is-absolute-1.0.1"
-      sources."picomatch-2.2.1"
+      sources."picomatch-2.2.2"
       sources."pseudomap-1.0.2"
       sources."qjobs-1.2.0"
       sources."qs-6.7.0"
@@ -64751,7 +65516,7 @@ in
       sources."@types/events-3.0.0"
       sources."@types/glob-7.1.1"
       sources."@types/minimatch-3.0.3"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."@zkochan/cmd-shim-3.1.0"
       sources."JSONStream-1.3.5"
       sources."abbrev-1.1.1"
@@ -64804,7 +65569,7 @@ in
       sources."builtins-1.0.3"
       sources."byline-5.0.0"
       sources."byte-size-5.0.1"
-      sources."cacache-12.0.3"
+      sources."cacache-12.0.4"
       sources."cache-base-1.0.1"
       sources."call-me-maybe-1.0.1"
       sources."caller-callsite-2.0.0"
@@ -64888,7 +65653,6 @@ in
         dependencies = [
           sources."concat-stream-2.0.0"
           sources."meow-4.0.1"
-          sources."minimist-1.2.5"
           sources."readable-stream-3.6.0"
         ];
       })
@@ -64940,7 +65704,7 @@ in
       sources."envinfo-7.5.0"
       sources."err-code-1.1.2"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."es6-promise-4.2.8"
       sources."es6-promisify-5.0.0"
@@ -64993,7 +65757,7 @@ in
         ];
       })
       sources."fast-json-stable-stringify-2.1.0"
-      sources."figgy-pudding-3.5.1"
+      sources."figgy-pudding-3.5.2"
       sources."figures-2.0.0"
       (sources."fill-range-4.0.0" // {
         dependencies = [
@@ -65029,7 +65793,6 @@ in
           sources."load-json-file-1.1.0"
           sources."map-obj-1.0.1"
           sources."meow-3.7.0"
-          sources."minimist-1.2.5"
           sources."parse-json-2.2.0"
           sources."path-exists-2.1.0"
           sources."path-type-1.1.0"
@@ -65050,7 +65813,6 @@ in
       (sources."git-raw-commits-2.0.0" // {
         dependencies = [
           sources."meow-4.0.1"
-          sources."minimist-1.2.5"
         ];
       })
       (sources."git-remote-origin-url-2.0.0" // {
@@ -65061,14 +65823,13 @@ in
       (sources."git-semver-tags-2.0.3" // {
         dependencies = [
           sources."meow-4.0.1"
-          sources."minimist-1.2.5"
         ];
       })
       sources."git-up-4.0.1"
       sources."git-url-parse-11.1.2"
       sources."gitconfiglocal-1.0.0"
       sources."glob-7.1.6"
-      sources."glob-parent-5.1.0"
+      sources."glob-parent-5.1.1"
       sources."glob-to-regexp-0.3.0"
       (sources."globby-9.2.0" // {
         dependencies = [
@@ -65208,7 +65969,7 @@ in
       sources."mime-types-2.1.26"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."minimist-options-3.0.2"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
@@ -65218,7 +65979,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       sources."mkdirp-promise-5.0.1"
       sources."modify-values-1.0.1"
       sources."move-concurrently-1.0.1"
@@ -65284,7 +66045,11 @@ in
       sources."octokit-pagination-methods-1.1.0"
       sources."once-1.4.0"
       sources."onetime-2.0.1"
-      sources."optimist-0.6.1"
+      (sources."optimist-0.6.1" // {
+        dependencies = [
+          sources."minimist-0.0.10"
+        ];
+      })
       sources."os-homedir-1.0.2"
       sources."os-name-3.1.0"
       sources."os-tmpdir-1.0.2"
@@ -65485,11 +66250,7 @@ in
       sources."strip-bom-3.0.0"
       sources."strip-eof-1.0.0"
       sources."strip-indent-2.0.0"
-      (sources."strong-log-transformer-2.1.0" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."strong-log-transformer-2.1.0"
       sources."supports-color-5.5.0"
       sources."tar-4.4.13"
       sources."temp-dir-1.0.0"
@@ -65646,8 +66407,8 @@ in
       sources."mime-1.6.0"
       sources."mime-db-1.43.0"
       sources."mime-types-2.1.26"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."oauth-sign-0.9.0"
       sources."performance-now-2.1.0"
       sources."promise-7.3.1"
@@ -65771,7 +66532,7 @@ in
       sources."debug-2.6.9"
       sources."decode-uri-component-0.2.0"
       sources."define-property-2.0.2"
-      sources."depd-1.1.2"
+      sources."depd-2.0.0"
       sources."destroy-1.0.4"
       sources."duplexer-0.1.1"
       sources."ee-first-1.1.1"
@@ -65819,7 +66580,7 @@ in
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
       sources."from-0.1.7"
-      sources."fsevents-1.2.11"
+      sources."fsevents-1.2.12"
       sources."get-value-2.0.6"
       (sources."glob-parent-3.1.0" // {
         dependencies = [
@@ -65834,7 +66595,11 @@ in
         ];
       })
       sources."http-auth-3.1.3"
-      sources."http-errors-1.7.3"
+      (sources."http-errors-1.7.3" // {
+        dependencies = [
+          sources."depd-1.1.2"
+        ];
+      })
       sources."http-parser-js-0.4.10"
       sources."inherits-2.0.4"
       sources."is-accessor-descriptor-1.0.0"
@@ -65864,7 +66629,7 @@ in
       sources."mime-db-1.43.0"
       sources."mime-types-2.1.26"
       sources."mixin-deep-1.3.2"
-      sources."morgan-1.9.1"
+      sources."morgan-1.10.0"
       sources."ms-2.0.0"
       sources."nan-2.14.0"
       sources."nanomatch-1.2.13"
@@ -65910,11 +66675,13 @@ in
       sources."safe-regex-1.1.0"
       (sources."send-0.17.1" // {
         dependencies = [
+          sources."depd-1.1.2"
           sources."ms-2.1.1"
         ];
       })
       (sources."serve-index-1.9.1" // {
         dependencies = [
+          sources."depd-1.1.2"
           sources."http-errors-1.6.3"
           sources."inherits-2.0.3"
           sources."setprototypeof-1.1.0"
@@ -66168,7 +66935,7 @@ in
       sources."forwarded-0.1.2"
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
-      sources."fsevents-1.2.11"
+      sources."fsevents-1.2.12"
       sources."get-value-2.0.6"
       sources."getpass-0.1.7"
       sources."github-slugger-1.3.0"
@@ -66542,15 +67309,14 @@ in
     name = "lumo-build-deps";
     packageName = "lumo-build-deps";
     version = "1.10.1";
-    src = ../../../pkgs/development/interpreters/clojurescript/lumo;
+    src = ../interpreters/clojurescript/lumo;
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      sources."@babel/compat-data-7.8.6"
-      sources."@babel/core-7.8.7"
-      sources."@babel/generator-7.8.8"
+      sources."@babel/compat-data-7.9.0"
+      sources."@babel/core-7.9.0"
+      sources."@babel/generator-7.9.4"
       sources."@babel/helper-annotate-as-pure-7.8.3"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.8.3"
-      sources."@babel/helper-call-delegate-7.8.7"
       sources."@babel/helper-compilation-targets-7.8.7"
       sources."@babel/helper-create-class-features-plugin-7.8.6"
       sources."@babel/helper-create-regexp-features-plugin-7.8.8"
@@ -66561,7 +67327,7 @@ in
       sources."@babel/helper-hoist-variables-7.8.3"
       sources."@babel/helper-member-expression-to-functions-7.8.3"
       sources."@babel/helper-module-imports-7.8.3"
-      sources."@babel/helper-module-transforms-7.8.6"
+      sources."@babel/helper-module-transforms-7.9.0"
       sources."@babel/helper-optimise-call-expression-7.8.3"
       sources."@babel/helper-plugin-utils-7.8.3"
       sources."@babel/helper-regex-7.8.3"
@@ -66569,29 +67335,32 @@ in
       sources."@babel/helper-replace-supers-7.8.6"
       sources."@babel/helper-simple-access-7.8.3"
       sources."@babel/helper-split-export-declaration-7.8.3"
+      sources."@babel/helper-validator-identifier-7.9.0"
       sources."@babel/helper-wrap-function-7.8.3"
-      sources."@babel/helpers-7.8.4"
-      (sources."@babel/highlight-7.8.3" // {
+      sources."@babel/helpers-7.9.2"
+      (sources."@babel/highlight-7.9.0" // {
         dependencies = [
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.8.8"
+      sources."@babel/parser-7.9.4"
       sources."@babel/plugin-external-helpers-7.8.3"
       sources."@babel/plugin-proposal-async-generator-functions-7.8.3"
       sources."@babel/plugin-proposal-class-properties-7.8.3"
       sources."@babel/plugin-proposal-dynamic-import-7.8.3"
       sources."@babel/plugin-proposal-json-strings-7.8.3"
       sources."@babel/plugin-proposal-nullish-coalescing-operator-7.8.3"
-      sources."@babel/plugin-proposal-object-rest-spread-7.8.3"
+      sources."@babel/plugin-proposal-numeric-separator-7.8.3"
+      sources."@babel/plugin-proposal-object-rest-spread-7.9.0"
       sources."@babel/plugin-proposal-optional-catch-binding-7.8.3"
-      sources."@babel/plugin-proposal-optional-chaining-7.8.3"
+      sources."@babel/plugin-proposal-optional-chaining-7.9.0"
       sources."@babel/plugin-proposal-unicode-property-regex-7.8.8"
       sources."@babel/plugin-syntax-async-generators-7.8.4"
       sources."@babel/plugin-syntax-bigint-7.8.3"
       sources."@babel/plugin-syntax-dynamic-import-7.8.3"
       sources."@babel/plugin-syntax-json-strings-7.8.3"
       sources."@babel/plugin-syntax-nullish-coalescing-operator-7.8.3"
+      sources."@babel/plugin-syntax-numeric-separator-7.8.3"
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
       sources."@babel/plugin-syntax-optional-catch-binding-7.8.3"
       sources."@babel/plugin-syntax-optional-chaining-7.8.3"
@@ -66600,43 +67369,51 @@ in
       sources."@babel/plugin-transform-async-to-generator-7.8.3"
       sources."@babel/plugin-transform-block-scoped-functions-7.8.3"
       sources."@babel/plugin-transform-block-scoping-7.8.3"
-      sources."@babel/plugin-transform-classes-7.8.6"
+      sources."@babel/plugin-transform-classes-7.9.2"
       sources."@babel/plugin-transform-computed-properties-7.8.3"
       sources."@babel/plugin-transform-destructuring-7.8.8"
       sources."@babel/plugin-transform-dotall-regex-7.8.3"
       sources."@babel/plugin-transform-duplicate-keys-7.8.3"
       sources."@babel/plugin-transform-exponentiation-operator-7.8.3"
-      sources."@babel/plugin-transform-for-of-7.8.6"
+      sources."@babel/plugin-transform-for-of-7.9.0"
       sources."@babel/plugin-transform-function-name-7.8.3"
       sources."@babel/plugin-transform-literals-7.8.3"
       sources."@babel/plugin-transform-member-expression-literals-7.8.3"
-      sources."@babel/plugin-transform-modules-amd-7.8.3"
-      sources."@babel/plugin-transform-modules-commonjs-7.8.3"
-      sources."@babel/plugin-transform-modules-systemjs-7.8.3"
-      sources."@babel/plugin-transform-modules-umd-7.8.3"
+      sources."@babel/plugin-transform-modules-amd-7.9.0"
+      sources."@babel/plugin-transform-modules-commonjs-7.9.0"
+      sources."@babel/plugin-transform-modules-systemjs-7.9.0"
+      sources."@babel/plugin-transform-modules-umd-7.9.0"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.8.3"
       sources."@babel/plugin-transform-new-target-7.8.3"
       sources."@babel/plugin-transform-object-super-7.8.3"
-      sources."@babel/plugin-transform-parameters-7.8.8"
+      sources."@babel/plugin-transform-parameters-7.9.3"
       sources."@babel/plugin-transform-property-literals-7.8.3"
       sources."@babel/plugin-transform-regenerator-7.8.7"
       sources."@babel/plugin-transform-reserved-words-7.8.3"
-      sources."@babel/plugin-transform-runtime-7.8.3"
+      sources."@babel/plugin-transform-runtime-7.9.0"
       sources."@babel/plugin-transform-shorthand-properties-7.8.3"
       sources."@babel/plugin-transform-spread-7.8.3"
       sources."@babel/plugin-transform-sticky-regex-7.8.3"
       sources."@babel/plugin-transform-template-literals-7.8.3"
       sources."@babel/plugin-transform-typeof-symbol-7.8.4"
       sources."@babel/plugin-transform-unicode-regex-7.8.3"
-      sources."@babel/preset-env-7.8.7"
+      sources."@babel/preset-env-7.9.0"
+      sources."@babel/preset-modules-0.1.3"
       sources."@babel/preset-stage-2-7.8.3"
-      sources."@babel/runtime-7.8.7"
+      sources."@babel/runtime-7.9.2"
       sources."@babel/template-7.8.6"
-      sources."@babel/traverse-7.8.6"
-      sources."@babel/types-7.8.7"
+      sources."@babel/traverse-7.9.0"
+      sources."@babel/types-7.9.0"
       sources."@cnakazawa/watch-1.0.4"
       sources."@comandeer/babel-plugin-banner-5.0.0"
-      sources."@istanbuljs/load-nyc-config-1.0.0"
+      (sources."@istanbuljs/load-nyc-config-1.0.0" // {
+        dependencies = [
+          sources."find-up-4.1.0"
+          sources."locate-path-5.0.0"
+          sources."p-locate-4.1.0"
+          sources."path-exists-4.0.0"
+        ];
+      })
       sources."@istanbuljs/schema-0.1.2"
       (sources."@jest/transform-25.1.0" // {
         dependencies = [
@@ -66649,33 +67426,33 @@ in
       sources."@types/babel__template-7.0.2"
       sources."@types/babel__traverse-7.0.9"
       sources."@types/color-name-1.1.1"
-      sources."@types/estree-0.0.42"
+      sources."@types/estree-0.0.44"
       sources."@types/istanbul-lib-coverage-2.0.1"
       sources."@types/istanbul-lib-report-3.0.0"
       sources."@types/istanbul-reports-1.1.1"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."@types/normalize-package-data-2.4.0"
       sources."@types/resolve-0.0.8"
       sources."@types/yargs-15.0.4"
       sources."@types/yargs-parser-15.0.0"
-      sources."@webassemblyjs/ast-1.8.5"
-      sources."@webassemblyjs/floating-point-hex-parser-1.8.5"
-      sources."@webassemblyjs/helper-api-error-1.8.5"
-      sources."@webassemblyjs/helper-buffer-1.8.5"
-      sources."@webassemblyjs/helper-code-frame-1.8.5"
-      sources."@webassemblyjs/helper-fsm-1.8.5"
-      sources."@webassemblyjs/helper-module-context-1.8.5"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.8.5"
-      sources."@webassemblyjs/helper-wasm-section-1.8.5"
-      sources."@webassemblyjs/ieee754-1.8.5"
-      sources."@webassemblyjs/leb128-1.8.5"
-      sources."@webassemblyjs/utf8-1.8.5"
-      sources."@webassemblyjs/wasm-edit-1.8.5"
-      sources."@webassemblyjs/wasm-gen-1.8.5"
-      sources."@webassemblyjs/wasm-opt-1.8.5"
-      sources."@webassemblyjs/wasm-parser-1.8.5"
-      sources."@webassemblyjs/wast-parser-1.8.5"
-      sources."@webassemblyjs/wast-printer-1.8.5"
+      sources."@webassemblyjs/ast-1.9.0"
+      sources."@webassemblyjs/floating-point-hex-parser-1.9.0"
+      sources."@webassemblyjs/helper-api-error-1.9.0"
+      sources."@webassemblyjs/helper-buffer-1.9.0"
+      sources."@webassemblyjs/helper-code-frame-1.9.0"
+      sources."@webassemblyjs/helper-fsm-1.9.0"
+      sources."@webassemblyjs/helper-module-context-1.9.0"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.9.0"
+      sources."@webassemblyjs/helper-wasm-section-1.9.0"
+      sources."@webassemblyjs/ieee754-1.9.0"
+      sources."@webassemblyjs/leb128-1.9.0"
+      sources."@webassemblyjs/utf8-1.9.0"
+      sources."@webassemblyjs/wasm-edit-1.9.0"
+      sources."@webassemblyjs/wasm-gen-1.9.0"
+      sources."@webassemblyjs/wasm-opt-1.9.0"
+      sources."@webassemblyjs/wasm-parser-1.9.0"
+      sources."@webassemblyjs/wast-parser-1.9.0"
+      sources."@webassemblyjs/wast-printer-1.9.0"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.2"
       sources."JSONStream-1.3.5"
@@ -66723,10 +67500,9 @@ in
       sources."babel-helper-remove-or-void-0.4.3"
       sources."babel-helper-to-multiple-sequence-expressions-0.5.0"
       sources."babel-jest-25.1.0"
-      (sources."babel-loader-8.0.6" // {
+      (sources."babel-loader-8.1.0" // {
         dependencies = [
-          sources."minimist-0.0.8"
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
         ];
       })
       sources."babel-plugin-dynamic-import-node-2.3.0"
@@ -66774,7 +67550,7 @@ in
       sources."big.js-5.2.2"
       sources."binary-extensions-1.13.1"
       sources."bindings-1.5.0"
-      (sources."bl-4.0.1" // {
+      (sources."bl-4.0.2" // {
         dependencies = [
           sources."readable-stream-3.6.0"
         ];
@@ -66796,8 +67572,8 @@ in
       })
       (sources."browserify-16.5.0" // {
         dependencies = [
-          sources."minimist-0.0.8"
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
+          sources."punycode-1.4.1"
         ];
       })
       sources."browserify-aes-1.2.0"
@@ -66806,23 +67582,22 @@ in
       sources."browserify-rsa-4.0.1"
       sources."browserify-sign-4.0.4"
       sources."browserify-zlib-0.2.0"
-      sources."browserslist-4.9.1"
+      sources."browserslist-4.11.0"
       sources."bser-2.1.1"
       sources."buffer-5.5.0"
       sources."buffer-from-1.1.1"
       sources."buffer-xor-1.0.3"
       sources."builtin-modules-3.1.0"
       sources."builtin-status-codes-3.0.0"
-      (sources."cacache-12.0.3" // {
+      (sources."cacache-12.0.4" // {
         dependencies = [
-          sources."minimist-0.0.8"
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
         ];
       })
       sources."cache-base-1.0.1"
       sources."cached-path-relative-1.0.2"
       sources."camelcase-5.3.1"
-      sources."caniuse-lite-1.0.30001035"
+      sources."caniuse-lite-1.0.30001036"
       sources."capture-exit-2.0.0"
       sources."caseless-0.12.0"
       (sources."chalk-3.0.0" // {
@@ -66841,7 +67616,7 @@ in
               sources."normalize-path-2.1.1"
             ];
           })
-          sources."fsevents-1.2.11"
+          sources."fsevents-1.2.12"
           sources."micromatch-3.1.10"
         ];
       })
@@ -66891,8 +67666,7 @@ in
       sources."convert-source-map-1.7.0"
       (sources."copy-concurrently-1.0.5" // {
         dependencies = [
-          sources."minimist-0.0.8"
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
         ];
       })
       sources."copy-descriptor-0.1.1"
@@ -66937,7 +67711,7 @@ in
       sources."duplexer2-0.1.4"
       sources."duplexify-3.7.1"
       sources."ecc-jsbn-0.1.2"
-      sources."electron-to-chromium-1.3.376"
+      sources."electron-to-chromium-1.3.383"
       sources."elliptic-6.5.2"
       sources."emoji-regex-7.0.3"
       sources."emojis-list-3.0.0"
@@ -66949,7 +67723,7 @@ in
       })
       sources."errno-0.1.7"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-1.0.5"
       sources."eslint-scope-4.0.3"
@@ -67001,7 +67775,7 @@ in
       sources."fast-json-stable-stringify-2.1.0"
       sources."fast-safe-stringify-2.0.7"
       sources."fb-watchman-2.0.1"
-      sources."figgy-pudding-3.5.1"
+      sources."figgy-pudding-3.5.2"
       sources."file-uri-to-path-1.0.0"
       (sources."fill-range-4.0.0" // {
         dependencies = [
@@ -67009,7 +67783,7 @@ in
         ];
       })
       sources."find-cache-dir-2.1.0"
-      sources."find-up-4.1.0"
+      sources."find-up-3.0.0"
       (sources."findup-sync-3.0.0" // {
         dependencies = [
           sources."micromatch-3.1.10"
@@ -67134,8 +67908,7 @@ in
       sources."jest-serializer-25.1.0"
       (sources."jest-util-25.1.0" // {
         dependencies = [
-          sources."minimist-0.0.8"
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
         ];
       })
       (sources."jest-worker-25.1.0" // {
@@ -67153,7 +67926,7 @@ in
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-0.0.1"
       sources."json-stringify-safe-5.0.1"
-      sources."json5-2.1.1"
+      sources."json5-2.1.2"
       sources."jsonify-0.0.0"
       sources."jsonparse-1.3.1"
       sources."jsprim-1.4.1"
@@ -67170,7 +67943,7 @@ in
           sources."json5-1.0.1"
         ];
       })
-      sources."locate-path-5.0.0"
+      sources."locate-path-3.0.0"
       sources."lodash-4.17.15"
       sources."lodash.memoize-3.0.4"
       sources."loose-envify-1.4.0"
@@ -67178,7 +67951,6 @@ in
       sources."magic-string-0.25.7"
       sources."make-dir-2.1.0"
       sources."makeerror-1.0.11"
-      sources."mamacro-0.0.3"
       sources."map-age-cleaner-0.1.3"
       sources."map-cache-0.2.2"
       sources."map-visit-1.0.0"
@@ -67212,8 +67984,7 @@ in
       sources."module-deps-6.2.2"
       (sources."move-concurrently-1.0.1" // {
         dependencies = [
-          sources."minimist-0.0.8"
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
         ];
       })
       sources."ms-2.1.2"
@@ -67229,6 +68000,7 @@ in
           sources."buffer-4.9.2"
           sources."events-3.1.0"
           sources."inherits-2.0.3"
+          sources."punycode-1.4.1"
           sources."stream-http-2.8.3"
           sources."timers-browserify-2.0.11"
           sources."tty-browserify-0.0.0"
@@ -67272,7 +68044,7 @@ in
       sources."p-finally-1.0.0"
       sources."p-is-promise-2.1.0"
       sources."p-limit-2.2.2"
-      sources."p-locate-4.1.0"
+      sources."p-locate-3.0.0"
       sources."p-try-2.2.0"
       sources."pako-1.0.11"
       sources."parallel-transform-1.2.0"
@@ -67284,7 +68056,7 @@ in
       sources."pascalcase-0.1.1"
       sources."path-browserify-0.0.1"
       sources."path-dirname-1.0.2"
-      sources."path-exists-4.0.0"
+      sources."path-exists-3.0.0"
       sources."path-is-absolute-1.0.1"
       sources."path-key-2.0.1"
       sources."path-parse-1.0.6"
@@ -67292,19 +68064,13 @@ in
       sources."pbkdf2-3.0.17"
       sources."peek-stream-1.1.3"
       sources."performance-now-2.1.0"
-      sources."picomatch-2.2.1"
+      sources."picomatch-2.2.2"
       sources."pify-4.0.1"
       sources."pinkie-1.0.0"
       sources."pinkie-promise-1.0.0"
       sources."pirates-4.0.1"
-      (sources."pkg-dir-3.0.0" // {
-        dependencies = [
-          sources."find-up-3.0.0"
-          sources."locate-path-3.0.0"
-          sources."p-locate-3.0.0"
-          sources."path-exists-3.0.0"
-        ];
-      })
+      sources."pkg-dir-3.0.0"
+      sources."pkg-up-3.1.0"
       sources."posix-character-classes-0.1.1"
       sources."posix-getopt-git://github.com/anmonteiro/node-getopt#master"
       sources."prettier-1.19.1"
@@ -67322,7 +68088,7 @@ in
           sources."pump-2.0.1"
         ];
       })
-      sources."punycode-1.4.1"
+      sources."punycode-2.1.1"
       sources."qs-6.5.2"
       sources."querystring-0.2.0"
       sources."querystring-es3-0.2.1"
@@ -67344,7 +68110,7 @@ in
       sources."regenerate-1.4.0"
       sources."regenerate-unicode-properties-8.2.0"
       sources."regenerator-runtime-0.13.5"
-      sources."regenerator-transform-0.14.3"
+      sources."regenerator-transform-0.14.4"
       sources."regex-not-1.0.2"
       sources."regexpu-core-4.7.0"
       sources."regjsgen-0.5.1"
@@ -67396,7 +68162,7 @@ in
           sources."normalize-path-2.1.1"
         ];
       })
-      sources."schema-utils-1.0.0"
+      sources."schema-utils-2.6.5"
       sources."semver-5.7.1"
       sources."serialize-javascript-2.1.2"
       sources."set-blocking-2.0.0"
@@ -67509,13 +68275,14 @@ in
           sources."readable-stream-3.6.0"
         ];
       })
-      (sources."terser-4.6.6" // {
+      (sources."terser-4.6.7" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
       })
       (sources."terser-webpack-plugin-1.4.3" // {
         dependencies = [
+          sources."schema-utils-1.0.0"
           sources."source-map-0.6.1"
         ];
       })
@@ -67533,11 +68300,7 @@ in
       })
       sources."to-regex-3.0.2"
       sources."to-regex-range-2.1.1"
-      (sources."tough-cookie-2.5.0" // {
-        dependencies = [
-          sources."punycode-2.1.1"
-        ];
-      })
+      sources."tough-cookie-2.5.0"
       sources."tslib-1.11.1"
       sources."tty-browserify-0.0.1"
       sources."tunnel-agent-0.6.0"
@@ -67565,11 +68328,7 @@ in
         ];
       })
       sources."upath-1.2.0"
-      (sources."uri-js-4.2.2" // {
-        dependencies = [
-          sources."punycode-2.1.1"
-        ];
-      })
+      sources."uri-js-4.2.2"
       sources."urix-0.1.0"
       (sources."url-0.11.0" // {
         dependencies = [
@@ -67592,12 +68351,12 @@ in
       sources."vm-browserify-1.1.2"
       sources."walker-1.0.7"
       sources."watchpack-1.6.0"
-      (sources."webpack-4.42.0" // {
+      (sources."webpack-4.42.1" // {
         dependencies = [
           sources."acorn-6.4.1"
           sources."micromatch-3.1.10"
-          sources."minimist-0.0.8"
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
+          sources."schema-utils-1.0.0"
         ];
       })
       (sources."webpack-cli-3.3.11" // {
@@ -67639,14 +68398,7 @@ in
       sources."xtend-4.0.2"
       sources."y18n-4.0.0"
       sources."yallist-3.1.1"
-      (sources."yargs-13.2.4" // {
-        dependencies = [
-          sources."find-up-3.0.0"
-          sources."locate-path-3.0.0"
-          sources."p-locate-3.0.0"
-          sources."path-exists-3.0.0"
-        ];
-      })
+      sources."yargs-13.2.4"
       sources."yargs-parser-13.1.2"
     ];
     buildInputs = globalBuildInputs;
@@ -68296,11 +69048,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."ms-2.0.0"
       sources."multipipe-0.1.2"
       sources."nanomatch-1.2.13"
@@ -68560,10 +69308,10 @@ in
   mocha = nodeEnv.buildNodePackage {
     name = "mocha";
     packageName = "mocha";
-    version = "7.1.0";
+    version = "7.1.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/mocha/-/mocha-7.1.0.tgz";
-      sha512 = "MymHK8UkU0K15Q/zX7uflZgVoRWiTjy0fXE/QjKts6mowUvGxOdPhZ2qj3b0iZdUrNZlW9LAIMFHB4IW+2b3EQ==";
+      url = "https://registry.npmjs.org/mocha/-/mocha-7.1.1.tgz";
+      sha512 = "3qQsu3ijNS3GkWcccT5Zw0hf/rWvu1fTN9sPvEd81hlwsr30GX2GcDSSoBxo24IR8FelmrAydGC6/1J5QQP4WA==";
     };
     dependencies = [
       sources."ansi-colors-3.2.3"
@@ -68598,7 +69346,7 @@ in
       sources."define-properties-1.1.3"
       sources."diff-3.5.0"
       sources."emoji-regex-7.0.3"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-4.0.1"
@@ -68610,7 +69358,7 @@ in
       sources."function-bind-1.1.1"
       sources."get-caller-file-2.0.5"
       sources."glob-7.1.3"
-      sources."glob-parent-5.1.0"
+      sources."glob-parent-5.1.1"
       sources."growl-1.10.5"
       sources."has-1.0.3"
       sources."has-flag-3.0.0"
@@ -68634,8 +69382,8 @@ in
       sources."lodash-4.17.15"
       sources."log-symbols-3.0.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.3"
       sources."ms-2.1.1"
       sources."node-environment-flags-1.0.6"
       sources."normalize-path-3.0.0"
@@ -68649,7 +69397,7 @@ in
       sources."p-try-2.2.0"
       sources."path-exists-3.0.0"
       sources."path-is-absolute-1.0.1"
-      sources."picomatch-2.2.1"
+      sources."picomatch-2.2.2"
       sources."readdirp-3.2.0"
       sources."require-directory-2.1.1"
       sources."require-main-filename-2.0.0"
@@ -68675,14 +69423,14 @@ in
       })
       sources."wrappy-1.0.2"
       sources."y18n-4.0.0"
-      (sources."yargs-13.3.0" // {
+      (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.1"
+      sources."yargs-parser-13.1.2"
       sources."yargs-unparser-1.6.0"
     ];
     buildInputs = globalBuildInputs;
@@ -68736,7 +69484,7 @@ in
       sources."path-loader-1.0.10"
       sources."process-nextick-args-2.0.1"
       sources."punycode-2.1.1"
-      sources."qs-6.9.1"
+      sources."qs-6.9.2"
       sources."readable-stream-2.3.7"
       sources."safe-buffer-5.1.2"
       sources."slash-3.0.0"
@@ -68906,10 +69654,10 @@ in
       sources."mime-db-1.43.0"
       sources."mime-types-2.1.26"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       sources."nopt-4.0.3"
       sources."npmlog-4.1.2"
       sources."number-is-nan-1.0.1"
@@ -69119,11 +69867,7 @@ in
       sources."mime-types-2.1.26"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."ms-2.0.0"
       sources."nan-2.14.0"
       sources."negotiator-0.6.2"
@@ -69314,10 +70058,10 @@ in
       sources."is-fullwidth-code-point-1.0.0"
       sources."isarray-1.0.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       sources."ms-2.1.2"
       sources."needle-2.4.0"
       sources."nopt-4.0.3"
@@ -69333,11 +70077,7 @@ in
       sources."osenv-0.1.5"
       sources."path-is-absolute-1.0.1"
       sources."process-nextick-args-2.0.1"
-      (sources."rc-1.2.8" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."rc-1.2.8"
       sources."readable-stream-2.3.7"
       sources."rimraf-2.7.1"
       sources."safe-buffer-5.1.2"
@@ -69375,7 +70115,7 @@ in
       sha512 = "7cRGr69ibl7vnEMWEO2qHhO4L6ft2XsySoE+mMSW7h2tODNTNECelCQtTA+kYfX1wlFS3axu52Y2Br0AV5D+ww==";
     };
     dependencies = [
-      sources."@babel/runtime-7.8.7"
+      sources."@babel/runtime-7.9.2"
       sources."@node-red/editor-api-1.0.4"
       sources."@node-red/editor-client-1.0.4"
       (sources."@node-red/nodes-1.0.4" // {
@@ -69660,11 +70400,7 @@ in
         ];
       })
       sources."minizlib-1.3.3"
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."moment-2.24.0"
       sources."moment-timezone-0.5.28"
       (sources."mqtt-2.18.8" // {
@@ -69941,10 +70677,10 @@ in
       sources."mime-db-1.43.0"
       sources."mime-types-2.1.26"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."minipass-3.1.1"
       sources."minizlib-2.1.0"
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       sources."ncp-0.4.2"
       sources."nijs-0.0.25"
       sources."nopt-3.0.6"
@@ -70088,7 +70824,7 @@ in
       sources."fill-range-7.0.1"
       sources."fsevents-2.1.2"
       sources."get-stream-3.0.0"
-      sources."glob-parent-5.1.0"
+      sources."glob-parent-5.1.1"
       sources."global-dirs-0.1.1"
       sources."got-6.7.1"
       sources."graceful-fs-4.2.3"
@@ -70125,7 +70861,7 @@ in
       sources."package-json-4.0.1"
       sources."path-is-inside-1.0.2"
       sources."path-key-2.0.1"
-      sources."picomatch-2.2.1"
+      sources."picomatch-2.2.2"
       sources."pify-3.0.0"
       sources."prepend-http-1.0.4"
       sources."pseudomap-1.0.2"
@@ -70178,10 +70914,10 @@ in
   npm = nodeEnv.buildNodePackage {
     name = "npm";
     packageName = "npm";
-    version = "6.14.2";
+    version = "6.14.3";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm/-/npm-6.14.2.tgz";
-      sha512 = "eBVjzvGJ9v2/jRJZFtIkvUVKmJ0sCJNNwc9Z1gI6llwaT7EBYWJe5o61Ipc1QR0FaDCKM3l1GizI09Ro3STJEw==";
+      url = "https://registry.npmjs.org/npm/-/npm-6.14.3.tgz";
+      sha512 = "3tQYVEEdSGQGYoXhZvNqW8faqCidfMMaL387RdDo4Uu5kQy4IgvJ13NIsWVMQ6e3QWlbicNMSpFiyzYfMUuPDw==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -70196,10 +70932,10 @@ in
   npm-check-updates = nodeEnv.buildNodePackage {
     name = "npm-check-updates";
     packageName = "npm-check-updates";
-    version = "4.0.4";
+    version = "4.0.5";
     src = fetchurl {
-      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-4.0.4.tgz";
-      sha512 = "o1Db+kfi8Vvs345Xxpn+3WSUJtLa85F2hMF6v6kYfQuvTulsphvDzgbiVkp4vEKC8+BQETCag730XPJudYf4mA==";
+      url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-4.0.5.tgz";
+      sha512 = "dO2jeEmD1DAa/8NKxQAuhVsICDYWKTL1kZkvUFyRNphK4NiLk1HA7Jk5mCfl2L2xU5FxiGhNq5vgYlivu+2kjw==";
     };
     dependencies = [
       sources."@npmcli/ci-detect-1.2.0"
@@ -70248,12 +70984,12 @@ in
       sources."color-convert-2.0.1"
       sources."color-name-1.1.4"
       sources."colors-1.0.3"
-      sources."commander-4.1.1"
+      sources."commander-5.0.0"
       sources."concat-map-0.0.1"
       sources."configstore-5.0.1"
       (sources."copy-concurrently-1.0.5" // {
         dependencies = [
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
         ];
       })
       sources."core-util-is-1.0.2"
@@ -70275,7 +71011,7 @@ in
       sources."escape-string-regexp-1.0.5"
       sources."esprima-4.0.1"
       sources."fast-diff-1.2.0"
-      sources."figgy-pudding-3.5.1"
+      sources."figgy-pudding-3.5.2"
       sources."find-up-4.1.0"
       sources."fs-minipass-2.1.0"
       sources."fs-write-stream-atomic-1.0.10"
@@ -70321,11 +71057,7 @@ in
       sources."json-buffer-3.0.0"
       sources."json-parse-even-better-errors-2.2.0"
       sources."json-parse-helpfulerror-1.0.3"
-      (sources."json5-2.1.1" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."json5-2.1.2"
       sources."jsonparse-1.3.1"
       sources."keyv-3.1.0"
       sources."kleur-3.0.3"
@@ -70350,7 +71082,7 @@ in
       sources."make-fetch-happen-8.0.4"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       (sources."minipass-3.1.1" // {
         dependencies = [
           sources."yallist-4.0.0"
@@ -70370,7 +71102,7 @@ in
       sources."mkdirp-1.0.3"
       (sources."move-concurrently-1.0.1" // {
         dependencies = [
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
         ];
       })
       sources."ms-2.1.2"
@@ -70410,14 +71142,10 @@ in
       sources."progress-2.0.3"
       sources."promise-inflight-1.0.1"
       sources."promise-retry-1.1.1"
-      sources."prompts-2.3.1"
+      sources."prompts-2.3.2"
       sources."pump-3.0.0"
       sources."pupa-2.0.1"
-      (sources."rc-1.2.8" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."rc-1.2.8"
       sources."rc-config-loader-3.0.0"
       sources."read-package-json-fast-1.1.3"
       sources."readable-stream-2.3.7"
@@ -70441,7 +71169,7 @@ in
       })
       sources."semver-utils-1.1.4"
       sources."signal-exit-3.0.2"
-      sources."sisteransi-1.0.4"
+      sources."sisteransi-1.0.5"
       sources."smart-buffer-4.1.0"
       sources."socks-2.3.3"
       sources."socks-proxy-agent-5.0.0"
@@ -70554,7 +71282,7 @@ in
       (sources."fstream-0.1.31" // {
         dependencies = [
           sources."graceful-fs-3.0.12"
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
         ];
       })
       sources."gauge-2.7.4"
@@ -70581,7 +71309,7 @@ in
       sources."mime-db-1.43.0"
       sources."mime-types-2.1.26"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."mkdirp-0.3.5"
       sources."natives-1.1.6"
       sources."ncp-0.4.2"
@@ -70718,22 +71446,22 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      sources."@babel/compat-data-7.8.6"
-      (sources."@babel/core-7.8.7" // {
+      sources."@babel/compat-data-7.9.0"
+      (sources."@babel/core-7.9.0" // {
         dependencies = [
-          sources."json5-2.1.1"
+          sources."json5-2.1.2"
           sources."source-map-0.5.7"
         ];
       })
-      (sources."@babel/generator-7.8.8" // {
+      (sources."@babel/generator-7.9.4" // {
         dependencies = [
           sources."source-map-0.5.7"
         ];
       })
       sources."@babel/helper-annotate-as-pure-7.8.3"
       sources."@babel/helper-builder-binary-assignment-operator-visitor-7.8.3"
-      sources."@babel/helper-builder-react-jsx-7.8.3"
-      sources."@babel/helper-call-delegate-7.8.7"
+      sources."@babel/helper-builder-react-jsx-7.9.0"
+      sources."@babel/helper-builder-react-jsx-experimental-7.9.0"
       sources."@babel/helper-compilation-targets-7.8.7"
       sources."@babel/helper-create-regexp-features-plugin-7.8.8"
       sources."@babel/helper-define-map-7.8.3"
@@ -70743,7 +71471,7 @@ in
       sources."@babel/helper-hoist-variables-7.8.3"
       sources."@babel/helper-member-expression-to-functions-7.8.3"
       sources."@babel/helper-module-imports-7.8.3"
-      sources."@babel/helper-module-transforms-7.8.6"
+      sources."@babel/helper-module-transforms-7.9.0"
       sources."@babel/helper-optimise-call-expression-7.8.3"
       sources."@babel/helper-plugin-utils-7.8.3"
       sources."@babel/helper-regex-7.8.3"
@@ -70751,17 +71479,19 @@ in
       sources."@babel/helper-replace-supers-7.8.6"
       sources."@babel/helper-simple-access-7.8.3"
       sources."@babel/helper-split-export-declaration-7.8.3"
+      sources."@babel/helper-validator-identifier-7.9.0"
       sources."@babel/helper-wrap-function-7.8.3"
-      sources."@babel/helpers-7.8.4"
-      sources."@babel/highlight-7.8.3"
-      sources."@babel/parser-7.8.8"
+      sources."@babel/helpers-7.9.2"
+      sources."@babel/highlight-7.9.0"
+      sources."@babel/parser-7.9.4"
       sources."@babel/plugin-proposal-async-generator-functions-7.8.3"
       sources."@babel/plugin-proposal-dynamic-import-7.8.3"
       sources."@babel/plugin-proposal-json-strings-7.8.3"
       sources."@babel/plugin-proposal-nullish-coalescing-operator-7.8.3"
-      sources."@babel/plugin-proposal-object-rest-spread-7.8.3"
+      sources."@babel/plugin-proposal-numeric-separator-7.8.3"
+      sources."@babel/plugin-proposal-object-rest-spread-7.9.0"
       sources."@babel/plugin-proposal-optional-catch-binding-7.8.3"
-      sources."@babel/plugin-proposal-optional-chaining-7.8.3"
+      sources."@babel/plugin-proposal-optional-chaining-7.9.0"
       sources."@babel/plugin-proposal-unicode-property-regex-7.8.8"
       sources."@babel/plugin-syntax-async-generators-7.8.4"
       sources."@babel/plugin-syntax-dynamic-import-7.8.3"
@@ -70769,6 +71499,7 @@ in
       sources."@babel/plugin-syntax-json-strings-7.8.3"
       sources."@babel/plugin-syntax-jsx-7.8.3"
       sources."@babel/plugin-syntax-nullish-coalescing-operator-7.8.3"
+      sources."@babel/plugin-syntax-numeric-separator-7.8.3"
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
       sources."@babel/plugin-syntax-optional-catch-binding-7.8.3"
       sources."@babel/plugin-syntax-optional-chaining-7.8.3"
@@ -70777,27 +71508,27 @@ in
       sources."@babel/plugin-transform-async-to-generator-7.8.3"
       sources."@babel/plugin-transform-block-scoped-functions-7.8.3"
       sources."@babel/plugin-transform-block-scoping-7.8.3"
-      sources."@babel/plugin-transform-classes-7.8.6"
+      sources."@babel/plugin-transform-classes-7.9.2"
       sources."@babel/plugin-transform-computed-properties-7.8.3"
       sources."@babel/plugin-transform-destructuring-7.8.8"
       sources."@babel/plugin-transform-dotall-regex-7.8.3"
       sources."@babel/plugin-transform-duplicate-keys-7.8.3"
       sources."@babel/plugin-transform-exponentiation-operator-7.8.3"
-      sources."@babel/plugin-transform-flow-strip-types-7.8.3"
-      sources."@babel/plugin-transform-for-of-7.8.6"
+      sources."@babel/plugin-transform-flow-strip-types-7.9.0"
+      sources."@babel/plugin-transform-for-of-7.9.0"
       sources."@babel/plugin-transform-function-name-7.8.3"
       sources."@babel/plugin-transform-literals-7.8.3"
       sources."@babel/plugin-transform-member-expression-literals-7.8.3"
-      sources."@babel/plugin-transform-modules-amd-7.8.3"
-      sources."@babel/plugin-transform-modules-commonjs-7.8.3"
-      sources."@babel/plugin-transform-modules-systemjs-7.8.3"
-      sources."@babel/plugin-transform-modules-umd-7.8.3"
+      sources."@babel/plugin-transform-modules-amd-7.9.0"
+      sources."@babel/plugin-transform-modules-commonjs-7.9.0"
+      sources."@babel/plugin-transform-modules-systemjs-7.9.0"
+      sources."@babel/plugin-transform-modules-umd-7.9.0"
       sources."@babel/plugin-transform-named-capturing-groups-regex-7.8.3"
       sources."@babel/plugin-transform-new-target-7.8.3"
       sources."@babel/plugin-transform-object-super-7.8.3"
-      sources."@babel/plugin-transform-parameters-7.8.8"
+      sources."@babel/plugin-transform-parameters-7.9.3"
       sources."@babel/plugin-transform-property-literals-7.8.3"
-      sources."@babel/plugin-transform-react-jsx-7.8.3"
+      sources."@babel/plugin-transform-react-jsx-7.9.4"
       sources."@babel/plugin-transform-regenerator-7.8.7"
       sources."@babel/plugin-transform-reserved-words-7.8.3"
       sources."@babel/plugin-transform-shorthand-properties-7.8.3"
@@ -70806,11 +71537,12 @@ in
       sources."@babel/plugin-transform-template-literals-7.8.3"
       sources."@babel/plugin-transform-typeof-symbol-7.8.4"
       sources."@babel/plugin-transform-unicode-regex-7.8.3"
-      sources."@babel/preset-env-7.8.7"
-      sources."@babel/runtime-7.8.7"
+      sources."@babel/preset-env-7.9.0"
+      sources."@babel/preset-modules-0.1.3"
+      sources."@babel/runtime-7.9.2"
       sources."@babel/template-7.8.6"
-      sources."@babel/traverse-7.8.6"
-      sources."@babel/types-7.8.7"
+      sources."@babel/traverse-7.9.0"
+      sources."@babel/types-7.9.0"
       sources."@iarna/toml-2.2.3"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
@@ -70899,7 +71631,7 @@ in
           sources."pako-1.0.11"
         ];
       })
-      sources."browserslist-4.9.1"
+      sources."browserslist-4.11.0"
       (sources."buffer-4.9.2" // {
         dependencies = [
           sources."isarray-1.0.0"
@@ -70916,7 +71648,7 @@ in
       sources."callsites-2.0.0"
       sources."camelcase-5.3.1"
       sources."caniuse-api-3.0.0"
-      sources."caniuse-lite-1.0.30001035"
+      sources."caniuse-lite-1.0.30001036"
       sources."caseless-0.12.0"
       sources."chalk-2.4.2"
       sources."chokidar-2.1.8"
@@ -70990,7 +71722,12 @@ in
       sources."cssnano-util-get-match-4.0.0"
       sources."cssnano-util-raw-cache-4.0.1"
       sources."cssnano-util-same-parent-4.0.1"
-      sources."csso-4.0.2"
+      (sources."csso-4.0.3" // {
+        dependencies = [
+          sources."css-tree-1.0.0-alpha.39"
+          sources."mdn-data-2.0.6"
+        ];
+      })
       sources."cssom-0.3.8"
       sources."cssstyle-1.4.0"
       sources."dashdash-1.14.1"
@@ -71044,14 +71781,14 @@ in
       sources."duplexer2-0.1.4"
       sources."ecc-jsbn-0.1.2"
       sources."ee-first-1.1.1"
-      sources."electron-to-chromium-1.3.376"
+      sources."electron-to-chromium-1.3.383"
       sources."elliptic-6.5.2"
       sources."emoji-regex-7.0.3"
       sources."encodeurl-1.0.2"
       sources."entities-1.1.2"
       sources."envinfo-7.5.0"
       sources."error-ex-1.3.2"
-      (sources."es-abstract-1.17.4" // {
+      (sources."es-abstract-1.17.5" // {
         dependencies = [
           sources."object-inspect-1.7.0"
         ];
@@ -71097,7 +71834,7 @@ in
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-1.2.11"
+      sources."fsevents-1.2.12"
       sources."function-bind-1.1.1"
       sources."gensync-1.0.0-beta.1"
       sources."get-caller-file-2.0.5"
@@ -71142,7 +71879,7 @@ in
       (sources."htmlnano-0.2.5" // {
         dependencies = [
           sources."posthtml-0.12.0"
-          sources."terser-4.6.6"
+          sources."terser-4.6.7"
         ];
       })
       (sources."htmlparser2-3.10.1" // {
@@ -71271,11 +72008,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."ms-2.1.2"
       sources."nan-2.14.0"
       (sources."nanomatch-1.2.13" // {
@@ -71339,6 +72072,7 @@ in
       sources."pbkdf2-3.0.17"
       sources."performance-now-2.1.0"
       sources."physical-cpu-count-2.0.0"
+      sources."pkg-up-3.1.0"
       sources."pn-1.1.0"
       sources."posix-character-classes-0.1.1"
       (sources."postcss-7.0.27" // {
@@ -71435,7 +72169,7 @@ in
       sources."regenerate-1.4.0"
       sources."regenerate-unicode-properties-8.2.0"
       sources."regenerator-runtime-0.13.5"
-      sources."regenerator-transform-0.14.3"
+      sources."regenerator-transform-0.14.4"
       (sources."regex-not-1.0.2" // {
         dependencies = [
           sources."extend-shallow-3.0.2"
@@ -71815,9 +72549,9 @@ in
       sources."mime-types-2.1.26"
       sources."minimatch-3.0.4"
       sources."minimist-0.0.10"
-      (sources."mkdirp-0.5.1" // {
+      (sources."mkdirp-0.5.4" // {
         dependencies = [
-          sources."minimist-0.0.8"
+          sources."minimist-1.2.5"
         ];
       })
       sources."moment-2.24.0"
@@ -71910,7 +72644,7 @@ in
       sources."tweetnacl-0.14.5"
       sources."type-is-1.6.18"
       sources."uglify-js-3.8.0"
-      sources."unix-dgram-2.0.3"
+      sources."unix-dgram-2.0.4"
       sources."unpipe-1.0.0"
       sources."uri-js-4.2.2"
       sources."util-deprecate-1.0.2"
@@ -72026,7 +72760,7 @@ in
       sources."dns-txt-2.0.2"
       sources."end-of-stream-1.4.4"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-1.0.5"
       sources."external-editor-2.2.0"
@@ -72036,8 +72770,7 @@ in
       sources."flatten-0.0.1"
       (sources."fs-chunk-store-1.7.0" // {
         dependencies = [
-          sources."minimist-0.0.8"
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
         ];
       })
       sources."fs.realpath-1.0.0"
@@ -72163,8 +72896,7 @@ in
       sources."pump-2.0.1"
       (sources."random-access-file-2.1.3" // {
         dependencies = [
-          sources."minimist-0.0.8"
-          sources."mkdirp-0.5.1"
+          sources."mkdirp-0.5.4"
         ];
       })
       sources."random-access-storage-1.4.1"
@@ -72307,12 +73039,11 @@ in
       (sources."bittorrent-tracker-7.7.0" // {
         dependencies = [
           sources."bencode-0.8.0"
-          sources."minimist-1.2.5"
           sources."ultron-1.0.2"
           sources."ws-1.1.5"
         ];
       })
-      sources."bl-4.0.1"
+      sources."bl-4.0.2"
       sources."blob-0.0.5"
       sources."bn.js-4.11.8"
       sources."bncode-0.5.3"
@@ -72469,9 +73200,13 @@ in
       sources."mime-types-2.1.26"
       sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
-      sources."morgan-1.9.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
+      (sources."morgan-1.10.0" // {
+        dependencies = [
+          sources."depd-2.0.0"
+        ];
+      })
       sources."ms-2.0.0"
       sources."multiparty-4.2.1"
       sources."negotiator-0.6.2"
@@ -72635,10 +73370,10 @@ in
   pnpm = nodeEnv.buildNodePackage {
     name = "pnpm";
     packageName = "pnpm";
-    version = "4.11.6";
+    version = "4.12.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pnpm/-/pnpm-4.11.6.tgz";
-      sha512 = "SJkYVP7BRVR/Q+J13RmB1/WC9dQDOTU6H9uTOmIFE5hbkdh83HqqvOBs7SjT+bUObqMicZ9csfreKxuZhGVvKw==";
+      url = "https://registry.npmjs.org/pnpm/-/pnpm-4.12.0.tgz";
+      sha512 = "Sjvf66dfk2d7kRssvHX6x+d0j9NgIE9262vCKviJC+kTPcpZEwxsF/RjQ/CX07UmlDYAX2TWqNZz7jeiksMKSA==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -72653,10 +73388,10 @@ in
   prettier = nodeEnv.buildNodePackage {
     name = "prettier";
     packageName = "prettier";
-    version = "1.19.1";
+    version = "2.0.2";
     src = fetchurl {
-      url = "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz";
-      sha512 = "s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==";
+      url = "https://registry.npmjs.org/prettier/-/prettier-2.0.2.tgz";
+      sha512 = "5xJQIPT8BraI7ZnaDwSbu5zLrB6vvi8hVV58yHQ+QK64qrY40dULy0HSRlQ2/2IdzeBpjhDkqdcFBnFeDEMVdg==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -72708,16 +73443,21 @@ in
   pulp = nodeEnv.buildNodePackage {
     name = "pulp";
     packageName = "pulp";
-    version = "13.0.0";
+    version = "14.0.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pulp/-/pulp-13.0.0.tgz";
-      sha512 = "wjjAVuN1Shx6783NvTd8aPwWZ1pE94+isiWtdAJhedvbLqJuwe8p5CSNul9FS0WvBz7ejdrW0vc6wLDLsKX7Yw==";
+      url = "https://registry.npmjs.org/pulp/-/pulp-14.0.0.tgz";
+      sha512 = "K/s/BRG+AJpp+D3VES/c08kdxzMRKJYdZHIBnC27+6NS+3htwPPGRNTpPig+Sd6WKd5uZH3NASrBX+zgR5SQ6Q==";
     };
     dependencies = [
       sources."JSONStream-1.3.5"
       sources."acorn-7.1.1"
       sources."acorn-node-1.8.2"
       sources."acorn-walk-7.1.1"
+      sources."ansi-escapes-3.2.0"
+      sources."ansi-regex-4.1.0"
+      sources."ansi-styles-3.2.1"
+      sources."append-type-1.0.2"
+      sources."arch-2.1.1"
       sources."asn1.js-4.10.1"
       (sources."assert-1.5.0" // {
         dependencies = [
@@ -72725,6 +73465,7 @@ in
           sources."util-0.10.3"
         ];
       })
+      sources."astral-regex-1.0.0"
       sources."async-1.5.2"
       sources."balanced-match-1.0.0"
       sources."base64-js-1.3.1"
@@ -72759,11 +73500,22 @@ in
       sources."buffer-crc32-0.2.13"
       sources."buffer-from-1.1.1"
       sources."buffer-xor-1.0.3"
+      sources."build-purescript-0.4.1"
       sources."builtin-status-codes-3.0.0"
+      sources."byline-5.0.0"
       sources."cached-path-relative-1.0.2"
+      sources."cancelable-pipeline-1.0.0"
+      sources."cancelable-pump-0.4.0"
+      sources."chalk-2.4.2"
+      sources."chownr-1.1.4"
       sources."cipher-base-1.0.4"
+      sources."clean-stack-2.2.0"
+      sources."cli-cursor-2.1.0"
+      sources."color-convert-1.9.3"
+      sources."color-name-1.1.3"
       sources."colors-1.4.0"
       sources."combine-source-map-0.8.0"
+      sources."commander-2.20.3"
       sources."concat-map-0.0.1"
       (sources."concat-stream-2.0.0" // {
         dependencies = [
@@ -72777,38 +73529,52 @@ in
       sources."create-ecdh-4.0.3"
       sources."create-hash-1.2.0"
       sources."create-hmac-1.1.7"
+      sources."cross-spawn-6.0.5"
       sources."crypto-browserify-3.12.0"
       sources."dash-ast-1.0.0"
       sources."defined-1.0.0"
       sources."deps-sort-2.0.1"
       sources."des.js-1.0.1"
-      (sources."detective-5.2.0" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."detective-5.2.0"
       sources."diffie-hellman-5.0.3"
+      sources."dl-tar-0.8.1"
       sources."domain-browser-1.2.0"
+      sources."download-or-build-purescript-0.3.4"
+      sources."download-purescript-0.8.5"
+      sources."download-purescript-source-0.6.5"
       sources."duplexer2-0.1.4"
       sources."elliptic-6.5.2"
+      sources."emoji-regex-7.0.3"
+      sources."end-of-stream-1.4.4"
       sources."es6-promise-3.3.1"
+      sources."escape-string-regexp-1.0.5"
       sources."events-2.1.0"
       sources."evp_bytestokey-1.0.3"
+      sources."execa-1.0.0"
+      sources."executing-npm-path-1.0.0"
       sources."fast-safe-stringify-2.0.7"
+      sources."feint-1.0.3"
+      sources."file-to-npm-cache-0.1.0"
+      sources."filesize-4.2.1"
+      sources."find-pkg-dir-1.0.1"
+      sources."fs-minipass-1.2.7"
       sources."fs.realpath-1.0.0"
       sources."function-bind-1.1.1"
       sources."gaze-1.1.3"
       sources."get-assigned-identifiers-1.2.0"
+      sources."get-stream-4.1.0"
       sources."glob-7.1.6"
       sources."globule-1.3.1"
       sources."graceful-fs-4.2.3"
       sources."has-1.0.3"
+      sources."has-flag-3.0.0"
       sources."hash-base-3.0.4"
       sources."hash.js-1.1.7"
       sources."hmac-drbg-1.0.1"
       sources."htmlescape-1.1.1"
       sources."https-browserify-1.0.0"
       sources."ieee754-1.1.13"
+      sources."import-package-1.0.0"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."inline-source-map-0.6.2"
@@ -72817,23 +73583,37 @@ in
           sources."concat-stream-1.6.2"
         ];
       })
+      sources."inspect-with-kind-1.0.5"
+      sources."install-purescript-0.7.0"
+      sources."install-purescript-cli-0.4.2"
       sources."is-buffer-1.1.6"
+      sources."is-fullwidth-code-point-2.0.0"
+      sources."is-plain-obj-1.1.0"
+      sources."is-stream-1.1.0"
       sources."isarray-1.0.0"
       sources."isexe-2.0.0"
       sources."json-stable-stringify-0.0.1"
       sources."jsonify-0.0.0"
       sources."jsonparse-1.3.1"
+      sources."kind-of-6.0.3"
       sources."labeled-stream-splicer-2.0.2"
+      sources."load-from-cwd-or-npm-3.0.4"
+      sources."load-request-from-cwd-or-npm-3.0.0"
       sources."lodash-4.17.15"
       sources."lodash.memoize-3.0.4"
+      sources."log-symbols-3.0.0"
+      sources."log-update-3.4.0"
       sources."md5.js-1.3.5"
       sources."miller-rabin-4.0.1"
       sources."mime-1.6.0"
+      sources."mimic-fn-1.2.0"
       sources."minimalistic-assert-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."minipass-2.9.0"
+      sources."minizlib-1.3.3"
+      sources."mkdirp-0.5.4"
       (sources."module-deps-6.2.2" // {
         dependencies = [
           sources."concat-stream-1.6.2"
@@ -72844,32 +73624,54 @@ in
           sources."through-2.2.7"
         ];
       })
+      sources."ms-2.1.2"
       sources."mute-stream-0.0.8"
+      sources."neat-stack-1.0.1"
+      sources."nice-try-1.0.5"
       sources."node-static-0.7.11"
+      sources."npcache-1.0.2"
+      sources."npm-cache-env-2.0.0"
+      sources."npm-cache-path-2.0.0"
+      sources."npm-cli-dir-3.0.1"
+      sources."npm-cli-path-3.1.2"
+      sources."npm-cli-version-1.0.0"
+      sources."npm-run-path-2.0.2"
+      sources."npm-version-compare-1.0.1"
       sources."object-assign-4.1.1"
       sources."once-1.4.0"
+      sources."onetime-2.0.1"
       (sources."optimist-0.6.1" // {
         dependencies = [
+          sources."minimist-0.0.10"
           sources."wordwrap-0.0.3"
         ];
       })
+      sources."optional-0.1.4"
       sources."os-browserify-0.3.0"
+      sources."p-finally-1.0.0"
       sources."pako-1.0.11"
       sources."parents-1.0.1"
       sources."parse-asn1-5.1.5"
       sources."path-browserify-0.0.1"
       sources."path-is-absolute-1.0.1"
+      sources."path-key-2.0.1"
       sources."path-parse-1.0.6"
       sources."path-platform-0.11.15"
+      sources."pause-fn-1.0.0"
+      sources."pause-methods-1.0.0"
       sources."pbkdf2-3.0.17"
+      sources."platform-name-1.0.0"
       sources."process-0.11.10"
       sources."process-nextick-args-2.0.1"
       sources."public-encrypt-4.0.3"
+      sources."pump-3.0.0"
       sources."punycode-1.4.1"
+      sources."purescript-0.12.5"
       sources."querystring-0.2.0"
       sources."querystring-es3-0.2.1"
       sources."randombytes-2.1.0"
       sources."randomfill-1.0.4"
+      sources."rate-map-1.0.5"
       sources."read-1.0.7"
       sources."read-only-stream-2.0.0"
       (sources."readable-stream-2.3.7" // {
@@ -72878,23 +73680,35 @@ in
           sources."string_decoder-1.1.1"
         ];
       })
+      sources."reject-unsatisfied-npm-version-1.0.0"
       sources."resolve-1.15.1"
+      sources."resolve-from-npm-3.1.0"
+      sources."restore-cursor-2.0.0"
       sources."rimraf-2.7.1"
       sources."ripemd160-2.0.2"
+      sources."run-in-dir-0.3.0"
       sources."safe-buffer-5.2.0"
       sources."sander-0.5.1"
+      sources."semver-5.7.1"
       sources."sha.js-2.4.11"
       sources."shasum-1.0.2"
       sources."shasum-object-1.0.0"
+      sources."shebang-command-1.2.0"
+      sources."shebang-regex-1.0.0"
       sources."shell-quote-1.7.2"
+      sources."signal-exit-3.0.2"
       sources."simple-concat-1.0.0"
-      (sources."sorcery-0.10.0" // {
+      sources."size-rate-0.3.1"
+      sources."slice-ansi-2.1.0"
+      sources."sorcery-0.10.0"
+      sources."source-map-0.5.7"
+      (sources."source-map-support-0.5.16" // {
         dependencies = [
-          sources."minimist-1.2.5"
+          sources."source-map-0.6.1"
         ];
       })
-      sources."source-map-0.5.7"
       sources."sourcemap-codec-1.4.8"
+      sources."spawn-stack-0.7.0"
       sources."stream-browserify-2.0.2"
       sources."stream-combiner2-1.1.1"
       (sources."stream-http-3.1.0" // {
@@ -72903,23 +73717,43 @@ in
         ];
       })
       sources."stream-splicer-2.0.1"
+      sources."string-width-3.1.0"
       sources."string_decoder-1.3.0"
-      (sources."subarg-1.0.0" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."strip-ansi-5.2.0"
+      sources."strip-eof-1.0.0"
+      sources."subarg-1.0.0"
+      sources."supports-color-5.5.0"
       sources."syntax-error-1.4.0"
+      sources."tar-4.4.13"
       (sources."temp-0.9.1" // {
         dependencies = [
           sources."rimraf-2.6.3"
         ];
       })
+      (sources."terser-4.6.7" // {
+        dependencies = [
+          sources."source-map-0.6.1"
+        ];
+      })
       sources."through-2.3.8"
       sources."through2-2.0.5"
+      sources."tilde-path-3.0.0"
       sources."timers-browserify-1.4.2"
       sources."tree-kill-1.2.2"
       sources."tty-browserify-0.0.1"
+      (sources."tty-truncate-1.0.5" // {
+        dependencies = [
+          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" // {
+            dependencies = [
+              sources."ansi-regex-5.0.0"
+            ];
+          })
+        ];
+      })
+      sources."tty-width-frame-1.0.3"
       sources."typedarray-0.0.6"
       sources."umd-3.0.3"
       sources."undeclared-identifiers-1.1.3"
@@ -72934,11 +73768,16 @@ in
         ];
       })
       sources."util-deprecate-1.0.2"
+      sources."vertical-meter-1.0.0"
       sources."vm-browserify-1.1.2"
       sources."which-1.3.1"
+      sources."win-user-installed-npm-cli-path-3.0.1"
       sources."wordwrap-1.0.0"
+      sources."wrap-ansi-5.1.0"
       sources."wrappy-1.0.2"
       sources."xtend-4.0.2"
+      sources."yallist-3.1.1"
+      sources."zen-observable-0.8.15"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -72988,7 +73827,7 @@ in
       sources."cycle-1.0.3"
       sources."deep-equal-2.0.1"
       sources."define-properties-1.1.3"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-get-iterator-1.1.0"
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-1.0.5"
@@ -73019,11 +73858,7 @@ in
       sources."isstream-0.1.2"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."mute-stream-0.0.8"
       sources."ncp-0.4.2"
       sources."object-inspect-1.7.0"
@@ -73098,8 +73933,8 @@ in
         ];
       })
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."once-1.4.0"
       sources."path-is-absolute-1.0.1"
       sources."private-0.1.8"
@@ -73396,13 +74231,14 @@ in
   serverless = nodeEnv.buildNodePackage {
     name = "serverless";
     packageName = "serverless";
-    version = "1.66.0";
+    version = "1.67.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/serverless/-/serverless-1.66.0.tgz";
-      sha512 = "Syl/WikZfx+g6mIKb7XgwJO8S00XBYQCLJnrYxfM2VYRsp4dMx202n+/1XBgKXLeViLRx0ofEe/Xjn9GxRpSUQ==";
+      url = "https://registry.npmjs.org/serverless/-/serverless-1.67.0.tgz";
+      sha512 = "ocnzEW2op4KrdjnZ7aeadnX1/E6PdlsW8vv67/3sGlni1ep8JiKSRU0aPQqUmood98kEIo/sKvUlHrJcAm3eXg==";
     };
     dependencies = [
       sources."2-thenable-1.0.0"
+      sources."@babel/parser-7.9.4"
       sources."@nodelib/fs.scandir-2.1.3"
       sources."@nodelib/fs.stat-2.0.3"
       sources."@nodelib/fs.walk-1.2.4"
@@ -73425,7 +74261,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      (sources."@serverless/enterprise-plugin-3.5.0" // {
+      (sources."@serverless/enterprise-plugin-3.6.0" // {
         dependencies = [
           sources."fs-extra-8.1.0"
           sources."node-fetch-2.6.0"
@@ -73453,7 +74289,12 @@ in
       sources."@types/glob-7.1.1"
       sources."@types/lodash-4.14.149"
       sources."@types/minimatch-3.0.3"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
+      (sources."@typescript-eslint/typescript-estree-2.25.0" // {
+        dependencies = [
+          sources."semver-6.3.0"
+        ];
+      })
       sources."adm-zip-0.4.14"
       sources."agent-base-6.0.0"
       sources."ansi-align-3.0.0"
@@ -73461,6 +74302,7 @@ in
       sources."ansi-regex-4.1.0"
       sources."ansi-styles-3.2.1"
       sources."anymatch-3.1.1"
+      sources."app-module-path-2.2.0"
       (sources."archive-type-4.0.0" // {
         dependencies = [
           sources."file-type-4.4.0"
@@ -73483,11 +74325,12 @@ in
       sources."array-uniq-1.0.3"
       sources."array-unique-0.3.2"
       sources."assign-symbols-1.0.0"
+      sources."ast-module-types-2.6.0"
       sources."async-1.5.2"
       sources."async-limiter-1.0.1"
       sources."asynckit-0.4.0"
       sources."atob-2.1.2"
-      (sources."aws-sdk-2.639.0" // {
+      (sources."aws-sdk-2.644.0" // {
         dependencies = [
           sources."buffer-4.9.1"
           sources."uuid-3.3.2"
@@ -73529,7 +74372,11 @@ in
       sources."camelcase-5.3.1"
       sources."capture-stack-trace-1.0.1"
       sources."caw-2.0.1"
-      sources."chalk-2.4.2"
+      (sources."chalk-2.4.2" // {
+        dependencies = [
+          sources."supports-color-5.5.0"
+        ];
+      })
       sources."chardet-0.7.0"
       (sources."child-process-ext-2.1.0" // {
         dependencies = [
@@ -73579,7 +74426,12 @@ in
       })
       sources."concat-map-0.0.1"
       sources."config-chain-1.1.12"
-      sources."configstore-3.1.2"
+      (sources."configstore-3.1.2" // {
+        dependencies = [
+          sources."make-dir-1.3.0"
+          sources."pify-3.0.0"
+        ];
+      })
       sources."content-disposition-0.5.3"
       sources."cookie-0.3.1"
       sources."cookiejar-2.1.2"
@@ -73595,11 +74447,21 @@ in
           sources."type-1.2.0"
         ];
       })
-      sources."dayjs-1.8.22"
+      sources."dayjs-1.8.23"
       sources."debug-4.1.1"
       sources."decamelize-1.2.0"
       sources."decode-uri-component-0.2.0"
-      sources."decompress-4.2.0"
+      sources."decomment-0.9.2"
+      (sources."decompress-4.2.0" // {
+        dependencies = [
+          (sources."make-dir-1.3.0" // {
+            dependencies = [
+              sources."pify-3.0.0"
+            ];
+          })
+          sources."pify-2.3.0"
+        ];
+      })
       sources."decompress-response-3.3.0"
       sources."decompress-tar-4.1.1"
       (sources."decompress-tarbz2-4.1.1" // {
@@ -73612,13 +74474,25 @@ in
         dependencies = [
           sources."file-type-3.9.0"
           sources."get-stream-2.3.1"
+          sources."pify-2.3.0"
         ];
       })
       sources."deep-extend-0.6.0"
+      sources."deep-is-0.1.3"
       sources."defer-to-connect-1.1.3"
       sources."deferred-0.7.11"
       sources."define-property-2.0.2"
       sources."delayed-stream-1.0.0"
+      sources."dependency-tree-7.2.1"
+      sources."detective-amd-3.0.0"
+      sources."detective-cjs-3.1.1"
+      sources."detective-es6-2.1.0"
+      sources."detective-less-1.0.2"
+      sources."detective-postcss-3.0.1"
+      sources."detective-sass-3.0.1"
+      sources."detective-scss-2.0.1"
+      sources."detective-stylus-1.0.0"
+      sources."detective-typescript-5.7.0"
       sources."dir-glob-3.0.1"
       sources."dot-prop-4.2.0"
       sources."dotenv-8.2.0"
@@ -73632,6 +74506,7 @@ in
           sources."http-cache-semantics-3.8.1"
           sources."keyv-3.0.0"
           sources."lowercase-keys-1.0.0"
+          sources."make-dir-1.3.0"
           sources."normalize-url-2.0.1"
           sources."p-cancelable-0.4.1"
           sources."pify-3.0.0"
@@ -73643,9 +74518,11 @@ in
       sources."emoji-regex-7.0.3"
       sources."encoding-0.1.12"
       sources."end-of-stream-1.4.4"
+      sources."enhanced-resolve-4.1.1"
+      sources."errno-0.1.7"
       sources."es5-ext-0.10.53"
       sources."es6-iterator-2.0.3"
-      sources."es6-promisify-6.0.2"
+      sources."es6-promisify-6.1.0"
       (sources."es6-set-0.1.5" // {
         dependencies = [
           sources."es6-symbol-3.1.1"
@@ -73654,9 +74531,13 @@ in
       sources."es6-symbol-3.1.3"
       sources."es6-weak-map-2.0.3"
       sources."escape-string-regexp-1.0.5"
+      sources."escodegen-1.14.1"
+      sources."eslint-visitor-keys-1.1.0"
       sources."esniff-1.1.0"
       sources."esprima-4.0.1"
       sources."essentials-1.1.1"
+      sources."estraverse-4.3.0"
+      sources."esutils-2.0.3"
       sources."event-emitter-0.3.5"
       sources."events-1.1.1"
       (sources."execa-0.7.0" // {
@@ -73675,13 +74556,23 @@ in
       sources."fastq-1.6.1"
       sources."fd-slicer-1.1.0"
       sources."figures-3.2.0"
+      sources."file-exists-dazinatorfork-1.0.2"
       sources."file-type-5.2.0"
       sources."filename-reserved-regex-2.0.0"
       sources."filenamify-2.1.0"
       sources."filesize-3.6.1"
+      sources."filing-cabinet-2.5.1"
       sources."fill-range-7.0.1"
+      sources."find-0.3.0"
+      (sources."find-process-1.4.3" // {
+        dependencies = [
+          sources."debug-2.6.9"
+          sources."ms-2.0.0"
+        ];
+      })
       sources."find-requires-1.0.0"
       sources."flat-5.0.0"
+      sources."flatten-1.0.3"
       (sources."follow-redirects-1.5.10" // {
         dependencies = [
           sources."debug-3.1.0"
@@ -73706,16 +74597,24 @@ in
         ];
       })
       sources."fsevents-2.1.2"
+      sources."get-amd-module-type-3.0.0"
+      sources."get-own-enumerable-property-symbols-3.0.2"
       sources."get-proxy-2.1.0"
       sources."get-stdin-5.0.1"
       sources."get-stream-4.1.0"
       sources."get-value-2.0.6"
       sources."glob-7.1.6"
-      sources."glob-parent-5.1.0"
+      sources."glob-parent-5.1.1"
       sources."global-dirs-0.1.1"
       (sources."globby-6.1.0" // {
         dependencies = [
           sources."array-union-1.0.2"
+          sources."pify-2.3.0"
+        ];
+      })
+      (sources."gonzales-pe-4.2.4" // {
+        dependencies = [
+          sources."minimist-1.1.3"
         ];
       })
       sources."got-9.6.0"
@@ -73749,6 +74648,7 @@ in
       sources."immediate-3.0.6"
       sources."import-lazy-2.1.0"
       sources."imurmurhash-0.1.4"
+      sources."indexes-of-1.0.1"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
       sources."ini-1.3.5"
@@ -73787,8 +74687,11 @@ in
       sources."is-plain-object-2.0.4"
       sources."is-promise-2.1.0"
       sources."is-redirect-1.0.0"
+      sources."is-regexp-1.0.0"
+      sources."is-relative-path-1.0.2"
       sources."is-retry-allowed-1.2.0"
       sources."is-stream-1.1.0"
+      sources."is-url-1.2.4"
       sources."is-windows-1.0.2"
       sources."is-wsl-2.1.1"
       sources."isarray-1.0.0"
@@ -73827,6 +74730,7 @@ in
         ];
       })
       sources."lazystream-1.0.0"
+      sources."levn-0.3.0"
       sources."lie-3.3.0"
       sources."lodash-4.17.15"
       (sources."log-6.0.0" // {
@@ -73838,14 +74742,11 @@ in
       sources."lru-cache-4.1.5"
       sources."lru-queue-0.1.0"
       sources."lsmod-1.0.0"
-      (sources."make-dir-1.3.0" // {
-        dependencies = [
-          sources."pify-3.0.0"
-        ];
-      })
+      sources."make-dir-2.1.0"
       sources."map-cache-0.2.2"
       sources."map-visit-1.0.0"
       sources."memoizee-0.4.14"
+      sources."memory-fs-0.5.0"
       sources."merge2-1.3.0"
       sources."methods-1.1.2"
       sources."micromatch-4.0.2"
@@ -73857,11 +74758,9 @@ in
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
       sources."mixin-deep-1.3.2"
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
+      sources."module-definition-3.3.0"
+      sources."module-lookup-amd-6.2.0"
       sources."moment-2.24.0"
       sources."ms-2.1.2"
       sources."mute-stream-0.0.7"
@@ -73873,6 +74772,7 @@ in
       sources."nice-try-1.0.5"
       sources."node-dir-0.1.17"
       sources."node-fetch-1.7.3"
+      sources."node-source-walk-4.2.0"
       sources."normalize-path-3.0.0"
       sources."normalize-url-4.5.0"
       (sources."npm-conf-1.1.3" // {
@@ -73906,6 +74806,7 @@ in
           sources."is-wsl-1.1.0"
         ];
       })
+      sources."optionator-0.8.3"
       sources."os-tmpdir-1.0.2"
       sources."p-cancelable-1.1.0"
       sources."p-event-2.3.1"
@@ -73925,21 +74826,27 @@ in
       sources."path-is-inside-1.0.2"
       sources."path-key-2.0.1"
       sources."path-loader-1.0.10"
+      sources."path-parse-1.0.6"
       sources."path-type-4.0.0"
       sources."pend-1.2.0"
-      sources."picomatch-2.2.1"
-      sources."pify-2.3.0"
+      sources."picomatch-2.2.2"
+      sources."pify-4.0.1"
       sources."pinkie-2.0.4"
       sources."pinkie-promise-2.0.1"
+      sources."postcss-7.0.27"
+      sources."postcss-values-parser-1.5.0"
+      sources."precinct-6.2.0"
+      sources."prelude-ls-1.1.2"
       sources."prepend-http-2.0.0"
       sources."prettyoutput-1.2.0"
       sources."process-nextick-args-2.0.1"
       sources."promise-queue-2.2.5"
       sources."proto-list-1.2.4"
+      sources."prr-1.0.1"
       sources."pseudomap-1.0.2"
       sources."pump-3.0.0"
       sources."punycode-1.3.2"
-      sources."qs-6.9.1"
+      sources."qs-6.9.2"
       sources."query-string-5.1.1"
       sources."querystring-0.2.0"
       sources."ramda-0.26.1"
@@ -73957,6 +74864,10 @@ in
       sources."registry-url-5.1.0"
       sources."remove-trailing-separator-1.1.0"
       sources."replaceall-0.1.6"
+      sources."requirejs-2.3.6"
+      sources."requirejs-config-file-3.1.2"
+      sources."resolve-1.15.1"
+      sources."resolve-dependency-path-2.0.0"
       sources."resolve-url-0.2.1"
       sources."responselike-1.0.2"
       sources."restore-cursor-2.0.0"
@@ -73969,6 +74880,7 @@ in
       sources."safe-buffer-5.1.2"
       sources."safe-regex-1.1.0"
       sources."safer-buffer-2.1.2"
+      sources."sass-lookup-3.0.0"
       sources."sax-1.2.1"
       (sources."seek-bzip-1.0.5" // {
         dependencies = [
@@ -74051,18 +74963,21 @@ in
       sources."strict-uri-encode-1.1.0"
       sources."string-width-3.1.0"
       sources."string_decoder-1.1.1"
+      sources."stringify-object-3.3.0"
       sources."strip-ansi-5.2.0"
       sources."strip-dirs-2.1.0"
       sources."strip-eof-1.0.0"
       sources."strip-json-comments-2.0.1"
       sources."strip-outer-1.0.1"
+      sources."stylus-lookup-3.0.2"
       (sources."superagent-3.8.3" // {
         dependencies = [
           sources."debug-3.2.6"
         ];
       })
-      sources."supports-color-5.5.0"
+      sources."supports-color-6.1.0"
       sources."tabtab-3.0.2"
+      sources."tapable-1.1.3"
       sources."tar-stream-1.6.2"
       sources."term-size-1.2.0"
       sources."through-2.3.8"
@@ -74080,17 +74995,22 @@ in
       sources."to-regex-3.0.2"
       sources."to-regex-range-5.0.1"
       sources."traverse-0.6.6"
+      sources."traverse-chain-0.1.0"
       sources."trim-repeated-1.0.0"
       sources."tslib-1.11.1"
+      sources."tsutils-3.17.1"
       sources."tunnel-agent-0.6.0"
       sources."type-2.0.0"
+      sources."type-check-0.3.2"
       sources."type-fest-0.11.0"
+      sources."typescript-3.8.3"
       sources."unbzip2-stream-1.3.3"
       (sources."union-value-1.0.1" // {
         dependencies = [
           sources."is-extendable-0.1.1"
         ];
       })
+      sources."uniq-1.0.1"
       sources."unique-string-1.0.0"
       sources."universalify-0.1.2"
       (sources."unset-value-1.0.0" // {
@@ -74138,6 +75058,7 @@ in
           sources."strip-ansi-4.0.0"
         ];
       })
+      sources."word-wrap-1.2.3"
       sources."wrappy-1.0.2"
       sources."write-file-atomic-2.4.3"
       sources."ws-7.2.3"
@@ -74289,8 +75210,8 @@ in
       sources."mime-1.6.0"
       sources."mime-db-1.43.0"
       sources."mime-types-2.1.26"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."moment-2.7.0"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
@@ -74689,8 +75610,8 @@ in
       sources."lru-cache-2.2.0"
       sources."mime-1.6.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."mv-2.1.1"
       sources."nan-2.14.0"
       sources."ncp-2.0.0"
@@ -74789,10 +75710,10 @@ in
   snyk = nodeEnv.buildNodePackage {
     name = "snyk";
     packageName = "snyk";
-    version = "1.299.0";
+    version = "1.304.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/snyk/-/snyk-1.299.0.tgz";
-      sha512 = "K2dlmwlmJpD7CZE8B8GguwIJmjOWdXzQ7UlcFIscg8y0tP8OT9a1gouLgBaU4uyS5J5wByipGNX1Cpwi6WRt5w==";
+      url = "https://registry.npmjs.org/snyk/-/snyk-1.304.0.tgz";
+      sha512 = "1wAkvgvzOyUbbKEMXGgY2UULcfvAYPywlC7Whm3DCffAdx8i1ZMT9hWaOZxhj5K94h3doY3LRb6Xq6lbfb0jDw==";
     };
     dependencies = [
       sources."@snyk/cli-interface-2.3.2"
@@ -74813,7 +75734,7 @@ in
       sources."@types/debug-4.1.5"
       sources."@types/events-3.0.0"
       sources."@types/js-yaml-3.12.2"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."@types/restify-4.3.6"
       sources."@types/semver-5.5.0"
       sources."@types/xml2js-0.4.3"
@@ -74831,7 +75752,8 @@ in
       sources."ast-types-0.13.2"
       sources."async-1.5.2"
       sources."balanced-match-1.0.0"
-      (sources."bl-4.0.1" // {
+      sources."base64-js-1.3.1"
+      (sources."bl-4.0.2" // {
         dependencies = [
           sources."readable-stream-3.6.0"
           sources."string_decoder-1.3.0"
@@ -74839,6 +75761,7 @@ in
       })
       sources."boxen-1.3.0"
       sources."brace-expansion-1.1.11"
+      sources."buffer-5.5.0"
       sources."buffer-from-1.1.1"
       sources."bytes-3.1.0"
       sources."camelcase-4.1.0"
@@ -74938,6 +75861,7 @@ in
       })
       sources."https-proxy-agent-3.0.1"
       sources."iconv-lite-0.4.24"
+      sources."ieee754-1.1.13"
       sources."immediate-3.0.6"
       sources."import-lazy-2.1.0"
       sources."imurmurhash-0.1.4"
@@ -75066,7 +75990,7 @@ in
       sources."signal-exit-3.0.2"
       sources."smart-buffer-4.1.0"
       sources."snyk-config-2.2.3"
-      (sources."snyk-docker-plugin-2.2.2" // {
+      (sources."snyk-docker-plugin-2.6.1" // {
         dependencies = [
           sources."debug-4.1.1"
         ];
@@ -75608,7 +76532,7 @@ in
       })
       sources."epidemic-broadcast-trees-7.0.0"
       sources."errno-0.1.7"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-1.0.5"
       sources."exit-hook-1.1.1"
@@ -75655,7 +76579,7 @@ in
       sources."for-own-0.1.5"
       sources."fragment-cache-0.2.1"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-1.2.11"
+      sources."fsevents-1.2.12"
       sources."function-bind-1.1.1"
       sources."get-value-2.0.6"
       sources."glob-6.0.4"
@@ -75813,11 +76737,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."monotonic-timestamp-0.0.9"
       sources."moo-0.5.1"
       sources."ms-2.1.2"
@@ -76346,7 +77266,7 @@ in
       sources."async-1.5.2"
       sources."async-limiter-1.0.1"
       sources."asynckit-0.4.0"
-      (sources."aws-sdk-2.639.0" // {
+      (sources."aws-sdk-2.644.0" // {
         dependencies = [
           sources."uuid-3.3.2"
         ];
@@ -76592,7 +77512,7 @@ in
       sources."https-proxy-agent-1.0.0"
       sources."iconv-lite-0.4.24"
       sources."ieee754-1.1.13"
-      sources."in-publish-2.0.0"
+      sources."in-publish-2.0.1"
       sources."indexof-0.0.1"
       sources."inflight-1.0.6"
       sources."inherits-2.0.4"
@@ -76635,11 +77555,7 @@ in
       sources."json-schema-faker-0.2.16"
       sources."json-schema-traverse-0.4.1"
       sources."json-stringify-safe-5.0.1"
-      (sources."json5-1.0.1" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."json5-1.0.1"
       sources."jsonpointer-4.0.1"
       sources."jspath-0.3.4"
       (sources."jsprim-1.4.1" // {
@@ -76712,9 +77628,9 @@ in
       sources."mimic-fn-2.1.0"
       sources."minicap-prebuilt-2.3.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."minitouch-prebuilt-1.2.0"
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       sources."moment-2.24.0"
       sources."ms-2.1.2"
       sources."multer-1.4.2"
@@ -76945,7 +77861,7 @@ in
         dependencies = [
           sources."debug-3.2.6"
           sources."form-data-2.5.1"
-          sources."qs-6.9.1"
+          sources."qs-6.9.2"
           sources."readable-stream-2.3.7"
           sources."string_decoder-1.1.1"
         ];
@@ -76958,7 +77874,7 @@ in
           sources."esprima-4.0.1"
           sources."js-yaml-3.13.1"
           sources."lodash-3.10.1"
-          sources."qs-6.9.1"
+          sources."qs-6.9.2"
         ];
       })
       sources."swagger-schema-official-2.0.0-bab6bed"
@@ -77141,7 +78057,12 @@ in
       sources."css-select-base-adapter-0.1.1"
       sources."css-tree-1.0.0-alpha.37"
       sources."css-what-3.2.1"
-      sources."csso-4.0.2"
+      (sources."csso-4.0.3" // {
+        dependencies = [
+          sources."css-tree-1.0.0-alpha.39"
+          sources."mdn-data-2.0.6"
+        ];
+      })
       sources."define-properties-1.1.3"
       (sources."dom-serializer-0.2.2" // {
         dependencies = [
@@ -77151,7 +78072,7 @@ in
       sources."domelementtype-1.3.1"
       sources."domutils-1.7.0"
       sources."entities-2.0.0"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-4.0.1"
@@ -77165,8 +78086,8 @@ in
       sources."is-symbol-1.0.3"
       sources."js-yaml-3.13.1"
       sources."mdn-data-2.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."nth-check-1.0.2"
       sources."object-inspect-1.7.0"
       sources."object-keys-1.1.1"
@@ -77388,7 +78309,7 @@ in
       sources."fresh-0.5.2"
       sources."fs-extra-0.24.0"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-1.2.11"
+      sources."fsevents-1.2.12"
       sources."get-stream-3.0.0"
       sources."get-value-2.0.6"
       sources."glob-7.1.6"
@@ -77589,7 +78510,7 @@ in
         dependencies = [
           sources."debug-3.2.6"
           sources."ms-2.1.2"
-          sources."qs-6.9.1"
+          sources."qs-6.9.2"
           sources."superagent-3.8.3"
         ];
       })
@@ -77837,7 +78758,7 @@ in
       sha256 = "886069ecc5eedf0371b948e8ff66e7f2943c85fe7cfdaa7183e1a3572d55852b";
     };
     dependencies = [
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."ajv-6.12.0"
       sources."ansi-regex-4.1.0"
       sources."ansi-styles-3.2.1"
@@ -77864,7 +78785,7 @@ in
       sources."debug-4.1.1"
       sources."decamelize-1.2.0"
       sources."delayed-stream-1.0.0"
-      sources."discord.js-11.6.2"
+      sources."discord.js-11.6.3"
       sources."ecc-jsbn-0.1.2"
       sources."emoji-regex-7.0.3"
       sources."esprima-4.0.1"
@@ -78057,7 +78978,7 @@ in
       sources."define-properties-1.1.3"
       sources."diff-4.0.2"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."escape-string-regexp-1.0.5"
       sources."esprima-4.0.1"
@@ -78101,11 +79022,7 @@ in
       sources."js-yaml-3.13.1"
       sources."json-parse-better-errors-1.0.2"
       sources."json-stable-stringify-1.0.1"
-      (sources."json5-2.1.1" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."json5-2.1.2"
       sources."jsonify-0.0.0"
       sources."levn-0.3.0"
       sources."load-json-file-1.1.0"
@@ -78116,8 +79033,8 @@ in
       sources."markdown-escapes-1.0.4"
       sources."md5-2.2.1"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."ms-2.1.2"
       sources."normalize-package-data-2.5.0"
       sources."number-is-nan-1.0.1"
@@ -78157,7 +79074,7 @@ in
       })
       sources."readable-stream-2.3.7"
       sources."regexp.prototype.flags-1.3.0"
-      sources."remark-frontmatter-1.3.2"
+      sources."remark-frontmatter-1.3.3"
       sources."remark-parse-5.0.0"
       sources."repeat-string-1.6.1"
       sources."replace-ext-1.0.0"
@@ -78268,7 +79185,7 @@ in
     };
     dependencies = [
       sources."define-properties-1.1.3"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."function-bind-1.1.1"
       sources."has-1.0.3"
@@ -78480,7 +79397,7 @@ in
       sources."redent-1.0.0"
       sources."registry-auth-token-3.4.0"
       sources."registry-url-3.1.0"
-      sources."remark-frontmatter-1.3.2"
+      sources."remark-frontmatter-1.3.3"
       sources."remark-message-control-4.2.0"
       sources."remark-parse-4.0.0"
       sources."remark-retext-3.1.3"
@@ -78745,7 +79662,7 @@ in
       sources."buffer-from-1.1.1"
       sources."concat-stream-2.0.0"
       sources."define-properties-1.1.3"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."function-bind-1.1.1"
       sources."has-1.0.3"
@@ -78798,7 +79715,7 @@ in
       sources."define-properties-1.1.3"
       sources."emoji-regex-6.5.1"
       sources."end-with-1.0.2"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."function-bind-1.1.1"
       sources."has-1.0.3"
@@ -78894,7 +79811,7 @@ in
     dependencies = [
       sources."array-includes-3.1.1"
       sources."define-properties-1.1.3"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."function-bind-1.1.1"
       sources."has-1.0.3"
@@ -78978,7 +79895,7 @@ in
       sources."@types/debug-4.1.5"
       sources."@types/http-cache-semantics-4.0.0"
       sources."@types/keyv-3.1.1"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."@types/responselike-1.0.0"
       sources."abbrev-1.1.1"
       sources."abstract-logging-1.0.0"
@@ -79022,7 +79939,7 @@ in
       sources."buffer-equal-constant-time-1.0.1"
       sources."busboy-0.3.1"
       sources."bytes-3.1.0"
-      sources."cacheable-lookup-2.0.0"
+      sources."cacheable-lookup-2.0.1"
       sources."cacheable-request-7.0.1"
       sources."callsite-1.0.0"
       sources."caseless-0.12.0"
@@ -79195,11 +80112,7 @@ in
       sources."minimist-1.2.5"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.8"
       sources."nan-2.14.0"
@@ -79915,7 +80828,7 @@ in
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@types/color-name-1.1.1"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."abbrev-1.1.1"
       sources."accepts-1.3.7"
       sources."after-0.8.2"
@@ -80198,7 +81111,7 @@ in
           sources."debug-4.1.1"
           sources."mime-2.4.4"
           sources."ms-2.1.2"
-          sources."qs-6.9.1"
+          sources."qs-6.9.2"
           sources."semver-6.3.0"
         ];
       })
@@ -80263,7 +81176,7 @@ in
       sources."vscode-languageserver-protocol-3.15.3"
       sources."vscode-languageserver-protocol-foldingprovider-2.0.1"
       sources."vscode-languageserver-types-3.15.1"
-      sources."vscode-nls-4.1.1"
+      sources."vscode-nls-4.1.2"
       sources."vscode-uri-1.0.8"
     ];
     buildInputs = globalBuildInputs;
@@ -80288,12 +81201,12 @@ in
       sources."typescript-2.9.2"
       (sources."vscode-css-languageservice-3.0.13" // {
         dependencies = [
-          sources."vscode-nls-4.1.1"
+          sources."vscode-nls-4.1.2"
         ];
       })
       (sources."vscode-html-languageservice-2.1.12" // {
         dependencies = [
-          sources."vscode-nls-4.1.1"
+          sources."vscode-nls-4.1.2"
         ];
       })
       sources."vscode-jsonrpc-5.0.1"
@@ -80487,8 +81400,8 @@ in
       sources."mime-types-2.1.26"
       sources."mimic-fn-1.2.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
-      sources."mkdirp-0.5.1"
+      sources."minimist-1.2.5"
+      sources."mkdirp-0.5.4"
       sources."multimatch-2.1.0"
       sources."mute-stream-0.0.7"
       sources."neo-async-2.6.1"
@@ -80501,7 +81414,11 @@ in
       sources."object-assign-4.1.1"
       sources."once-1.4.0"
       sources."onetime-2.0.1"
-      sources."optimist-0.6.1"
+      (sources."optimist-0.6.1" // {
+        dependencies = [
+          sources."minimist-0.0.10"
+        ];
+      })
       sources."ora-1.4.0"
       sources."os-homedir-1.0.2"
       sources."os-tmpdir-1.0.2"
@@ -80616,7 +81533,8 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      sources."@babel/highlight-7.8.3"
+      sources."@babel/helper-validator-identifier-7.9.0"
+      sources."@babel/highlight-7.9.0"
       sources."@emmetio/extract-abbreviation-0.1.6"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
@@ -80632,7 +81550,7 @@ in
       sources."@starptech/rehype-webparser-0.10.0"
       sources."@starptech/webparser-0.10.0"
       sources."@szmarczak/http-timer-1.1.2"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."@types/unist-2.0.3"
       sources."@types/vfile-3.0.2"
       sources."@types/vfile-message-2.0.0"
@@ -80853,7 +81771,11 @@ in
       sources."eslint-visitor-keys-1.1.0"
       sources."espree-5.0.1"
       sources."esprima-4.0.1"
-      sources."esquery-1.1.0"
+      (sources."esquery-1.2.0" // {
+        dependencies = [
+          sources."estraverse-5.0.0"
+        ];
+      })
       sources."esrecurse-4.2.1"
       sources."estraverse-4.3.0"
       sources."esutils-2.0.3"
@@ -80924,7 +81846,7 @@ in
       sources."format-0.2.2"
       sources."fragment-cache-0.2.1"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-1.2.11"
+      sources."fsevents-1.2.12"
       sources."function-bind-1.1.1"
       sources."functional-red-black-tree-1.0.1"
       sources."get-caller-file-1.0.3"
@@ -80971,14 +81893,14 @@ in
       sources."has-yarn-2.1.0"
       sources."hast-util-embedded-1.0.5"
       sources."hast-util-has-property-1.0.4"
-      sources."hast-util-is-body-ok-link-1.0.2"
+      sources."hast-util-is-body-ok-link-1.0.3"
       sources."hast-util-is-element-1.0.4"
       sources."hast-util-parse-selector-2.2.4"
-      sources."hast-util-to-string-1.0.2"
+      sources."hast-util-to-string-1.0.3"
       sources."hast-util-whitespace-1.0.4"
       sources."hosted-git-info-2.8.8"
       sources."html-void-elements-1.0.5"
-      sources."html-whitespace-sensitive-tag-names-1.0.1"
+      sources."html-whitespace-sensitive-tag-names-1.0.2"
       sources."http-cache-semantics-4.1.0"
       sources."iconv-lite-0.4.24"
       sources."ignore-3.3.10"
@@ -81050,7 +81972,7 @@ in
       sources."json-parse-better-errors-1.0.2"
       sources."json-schema-traverse-0.4.1"
       sources."json-stable-stringify-without-jsonify-1.0.1"
-      sources."json5-2.1.1"
+      sources."json5-2.1.2"
       sources."jsonc-parser-1.0.3"
       sources."keyv-3.1.0"
       sources."kind-of-6.0.3"
@@ -81111,11 +82033,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."mout-0.5.0"
       sources."ms-2.1.2"
       sources."mute-stream-0.0.7"
@@ -81556,7 +82474,7 @@ in
       sources."vscode-languageserver-protocol-3.15.3"
       sources."vscode-languageserver-textdocument-1.0.1"
       sources."vscode-languageserver-types-3.15.1"
-      sources."vscode-nls-4.1.1"
+      sources."vscode-nls-4.1.2"
       sources."vscode-textbuffer-1.0.0"
       sources."vscode-uri-1.0.8"
       (sources."vue-eslint-parser-6.0.5" // {
@@ -81615,7 +82533,8 @@ in
     };
     dependencies = [
       sources."@babel/code-frame-7.8.3"
-      (sources."@babel/highlight-7.8.3" // {
+      sources."@babel/helper-validator-identifier-7.9.0"
+      (sources."@babel/highlight-7.9.0" // {
         dependencies = [
           sources."ansi-styles-3.2.1"
           sources."chalk-2.4.2"
@@ -81627,14 +82546,14 @@ in
       })
       sources."@babel/polyfill-7.7.0"
       sources."@babel/runtime-7.7.7"
-      sources."@babel/runtime-corejs3-7.8.7"
+      sources."@babel/runtime-corejs3-7.9.2"
       sources."@cliqz-oss/firefox-client-0.3.1"
       sources."@cliqz-oss/node-firefox-connect-1.2.1"
       sources."@sindresorhus/is-0.14.0"
       sources."@szmarczak/http-timer-1.1.2"
       sources."@types/color-name-1.1.1"
       sources."@types/minimatch-3.0.3"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."JSONSelect-0.2.1"
       sources."acorn-6.4.1"
       sources."acorn-jsx-5.2.0"
@@ -81773,7 +82692,7 @@ in
       sources."cheerio-1.0.0-rc.3"
       (sources."chokidar-2.1.8" // {
         dependencies = [
-          sources."fsevents-1.2.11"
+          sources."fsevents-1.2.12"
           sources."normalize-path-3.0.0"
         ];
       })
@@ -81894,7 +82813,7 @@ in
       sources."end-of-stream-1.4.4"
       sources."entities-1.1.2"
       sources."error-ex-1.3.2"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."es5-ext-0.10.53"
       sources."es6-error-4.1.1"
@@ -81980,7 +82899,11 @@ in
         ];
       })
       sources."esprima-4.0.1"
-      sources."esquery-1.1.0"
+      (sources."esquery-1.2.0" // {
+        dependencies = [
+          sources."estraverse-5.0.0"
+        ];
+      })
       sources."esrecurse-4.2.1"
       sources."estraverse-4.3.0"
       sources."esutils-2.0.3"
@@ -82700,30 +83623,30 @@ in
   webpack = nodeEnv.buildNodePackage {
     name = "webpack";
     packageName = "webpack";
-    version = "4.42.0";
+    version = "4.42.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/webpack/-/webpack-4.42.0.tgz";
-      sha512 = "EzJRHvwQyBiYrYqhyjW9AqM90dE4+s1/XtCfn7uWg6cS72zH+2VPFAlsnW0+W0cDi0XRjNKUMoJtpSi50+Ph6w==";
+      url = "https://registry.npmjs.org/webpack/-/webpack-4.42.1.tgz";
+      sha512 = "SGfYMigqEfdGchGhFFJ9KyRpQKnipvEvjc1TwrXEPCM6H5Wywu10ka8o3KGrMzSMxMQKt8aCHUFh5DaQ9UmyRg==";
     };
     dependencies = [
-      sources."@webassemblyjs/ast-1.8.5"
-      sources."@webassemblyjs/floating-point-hex-parser-1.8.5"
-      sources."@webassemblyjs/helper-api-error-1.8.5"
-      sources."@webassemblyjs/helper-buffer-1.8.5"
-      sources."@webassemblyjs/helper-code-frame-1.8.5"
-      sources."@webassemblyjs/helper-fsm-1.8.5"
-      sources."@webassemblyjs/helper-module-context-1.8.5"
-      sources."@webassemblyjs/helper-wasm-bytecode-1.8.5"
-      sources."@webassemblyjs/helper-wasm-section-1.8.5"
-      sources."@webassemblyjs/ieee754-1.8.5"
-      sources."@webassemblyjs/leb128-1.8.5"
-      sources."@webassemblyjs/utf8-1.8.5"
-      sources."@webassemblyjs/wasm-edit-1.8.5"
-      sources."@webassemblyjs/wasm-gen-1.8.5"
-      sources."@webassemblyjs/wasm-opt-1.8.5"
-      sources."@webassemblyjs/wasm-parser-1.8.5"
-      sources."@webassemblyjs/wast-parser-1.8.5"
-      sources."@webassemblyjs/wast-printer-1.8.5"
+      sources."@webassemblyjs/ast-1.9.0"
+      sources."@webassemblyjs/floating-point-hex-parser-1.9.0"
+      sources."@webassemblyjs/helper-api-error-1.9.0"
+      sources."@webassemblyjs/helper-buffer-1.9.0"
+      sources."@webassemblyjs/helper-code-frame-1.9.0"
+      sources."@webassemblyjs/helper-fsm-1.9.0"
+      sources."@webassemblyjs/helper-module-context-1.9.0"
+      sources."@webassemblyjs/helper-wasm-bytecode-1.9.0"
+      sources."@webassemblyjs/helper-wasm-section-1.9.0"
+      sources."@webassemblyjs/ieee754-1.9.0"
+      sources."@webassemblyjs/leb128-1.9.0"
+      sources."@webassemblyjs/utf8-1.9.0"
+      sources."@webassemblyjs/wasm-edit-1.9.0"
+      sources."@webassemblyjs/wasm-gen-1.9.0"
+      sources."@webassemblyjs/wasm-opt-1.9.0"
+      sources."@webassemblyjs/wasm-parser-1.9.0"
+      sources."@webassemblyjs/wast-parser-1.9.0"
+      sources."@webassemblyjs/wast-printer-1.9.0"
       sources."@xtuc/ieee754-1.2.0"
       sources."@xtuc/long-4.2.2"
       sources."acorn-6.4.1"
@@ -82779,7 +83702,7 @@ in
       sources."buffer-from-1.1.1"
       sources."buffer-xor-1.0.3"
       sources."builtin-status-codes-3.0.0"
-      sources."cacache-12.0.3"
+      sources."cacache-12.0.4"
       sources."cache-base-1.0.1"
       sources."chokidar-2.1.8"
       sources."chownr-1.1.4"
@@ -82870,7 +83793,7 @@ in
       })
       sources."fast-deep-equal-3.1.1"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."figgy-pudding-3.5.1"
+      sources."figgy-pudding-3.5.2"
       sources."file-uri-to-path-1.0.0"
       (sources."fill-range-4.0.0" // {
         dependencies = [
@@ -82885,7 +83808,7 @@ in
       sources."from2-2.3.0"
       sources."fs-write-stream-atomic-1.0.10"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-1.2.11"
+      sources."fsevents-1.2.12"
       sources."get-value-2.0.6"
       sources."glob-7.1.6"
       (sources."glob-parent-3.1.0" // {
@@ -82937,7 +83860,6 @@ in
       sources."locate-path-3.0.0"
       sources."lru-cache-5.1.1"
       sources."make-dir-2.1.0"
-      sources."mamacro-0.0.3"
       sources."map-cache-0.2.2"
       sources."map-visit-1.0.0"
       sources."md5.js-1.3.5"
@@ -82954,11 +83876,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."move-concurrently-1.0.1"
       sources."ms-2.0.0"
       sources."nan-2.14.0"
@@ -83104,7 +84022,7 @@ in
       sources."stream-shift-1.0.1"
       sources."string_decoder-1.1.1"
       sources."tapable-1.1.3"
-      (sources."terser-4.6.6" // {
+      (sources."terser-4.6.7" // {
         dependencies = [
           sources."source-map-0.6.1"
         ];
@@ -83519,7 +84437,7 @@ in
       sources."@types/events-3.0.0"
       sources."@types/glob-7.1.1"
       sources."@types/minimatch-3.0.3"
-      sources."@types/node-13.9.1"
+      sources."@types/node-13.9.3"
       sources."accepts-1.3.7"
       sources."ajv-6.12.0"
       sources."ajv-errors-1.0.1"
@@ -83644,7 +84562,7 @@ in
       sources."encodeurl-1.0.2"
       sources."end-of-stream-1.4.4"
       sources."errno-0.1.7"
-      sources."es-abstract-1.17.4"
+      sources."es-abstract-1.17.5"
       sources."es-to-primitive-1.2.1"
       sources."escape-html-1.0.3"
       sources."etag-1.8.1"
@@ -83713,7 +84631,7 @@ in
       sources."fragment-cache-0.2.1"
       sources."fresh-0.5.2"
       sources."fs.realpath-1.0.0"
-      sources."fsevents-1.2.11"
+      sources."fsevents-1.2.12"
       sources."function-bind-1.1.1"
       sources."get-caller-file-1.0.3"
       sources."get-stream-4.1.0"
@@ -83813,9 +84731,9 @@ in
       sources."mimic-fn-2.1.0"
       sources."minimalistic-assert-1.0.1"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."mixin-deep-1.3.2"
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       sources."ms-2.0.0"
       sources."multicast-dns-6.2.3"
       sources."multicast-dns-service-types-1.1.0"
@@ -84128,7 +85046,7 @@ in
       sources."bluebird-3.7.2"
       sources."brace-expansion-1.1.11"
       sources."buffer-from-1.1.1"
-      sources."cacache-12.0.3"
+      sources."cacache-12.0.4"
       sources."chownr-1.1.4"
       sources."commondir-1.0.1"
       sources."concat-map-0.0.1"
@@ -84142,7 +85060,7 @@ in
       sources."end-of-stream-1.4.4"
       sources."fast-deep-equal-3.1.1"
       sources."fast-json-stable-stringify-2.1.0"
-      sources."figgy-pudding-3.5.1"
+      sources."figgy-pudding-3.5.2"
       sources."find-cache-dir-2.1.0"
       sources."find-up-3.0.0"
       sources."flush-write-stream-1.1.1"
@@ -84171,19 +85089,15 @@ in
       sources."is-glob-4.0.1"
       sources."isarray-1.0.0"
       sources."json-schema-traverse-0.4.1"
-      (sources."json5-1.0.1" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."json5-1.0.1"
       sources."loader-utils-1.4.0"
       sources."locate-path-3.0.0"
       sources."lru-cache-5.1.1"
       sources."make-dir-2.1.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."mississippi-3.0.0"
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       sources."move-concurrently-1.0.1"
       sources."normalize-path-3.0.0"
       sources."once-1.4.0"
@@ -84399,11 +85313,7 @@ in
       sources."mimic-response-1.0.1"
       sources."minimatch-3.0.4"
       sources."minimist-1.2.5"
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."moment-2.24.0"
       sources."mp4-box-encoding-1.4.1"
       sources."mp4-stream-3.1.0"
@@ -84628,7 +85538,7 @@ in
       })
       sources."vscode-languageserver-textdocument-1.0.1"
       sources."vscode-languageserver-types-3.15.1"
-      sources."vscode-nls-4.1.1"
+      sources."vscode-nls-4.1.2"
       sources."vscode-uri-2.1.1"
       sources."yaml-ast-parser-custom-tags-0.0.43"
     ];
@@ -84669,7 +85579,7 @@ in
       sha512 = "GFg4QC1xi3gkbHGGUFme8/8XPg3kDISu/qJfx56X207yuv1FSevGY/eKuym7kh0bniCB4n3rseWW+QZXPH8LIw==";
     };
     dependencies = [
-      sources."@babel/runtime-7.8.7"
+      sources."@babel/runtime-7.9.2"
       sources."@mrmlnc/readdir-enhanced-2.2.1"
       sources."@nodelib/fs.stat-1.1.3"
       sources."@sindresorhus/is-0.7.0"
@@ -85043,11 +85953,7 @@ in
           sources."is-extendable-1.0.1"
         ];
       })
-      (sources."mkdirp-0.5.1" // {
-        dependencies = [
-          sources."minimist-0.0.8"
-        ];
-      })
+      sources."mkdirp-0.5.4"
       sources."ms-2.0.0"
       sources."mute-stream-0.0.7"
       sources."nanomatch-1.2.13"
@@ -85440,4 +86346,4 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
-}
+}
\ No newline at end of file
diff --git a/pkgs/development/node-packages/node-packages-v12.nix b/pkgs/development/node-packages/node-packages-v12.nix
index faf2cd7d21f..f2e633300c7 100644
--- a/pkgs/development/node-packages/node-packages-v12.nix
+++ b/pkgs/development/node-packages/node-packages-v12.nix
@@ -1309,15 +1309,6 @@ let
         sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
       };
     };
-    "minimist-0.0.8" = {
-      name = "minimist";
-      packageName = "minimist";
-      version = "0.0.8";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
-        sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
-      };
-    };
     "minimist-1.2.5" = {
       name = "minimist";
       packageName = "minimist";
@@ -1381,13 +1372,13 @@ let
         sha1 = "de3e5f8961c88c787ee1368df849ac4413eca8d7";
       };
     };
-    "mkdirp-0.5.1" = {
+    "mkdirp-0.5.4" = {
       name = "mkdirp";
       packageName = "mkdirp";
-      version = "0.5.1";
+      version = "0.5.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
-        sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
+        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz";
+        sha512 = "iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==";
       };
     };
     "mkdirp-1.0.3" = {
@@ -2863,10 +2854,10 @@ in
       sources."mime-db-1.43.0"
       sources."mime-types-2.1.26"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."minipass-3.1.1"
       sources."minizlib-2.1.0"
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       sources."ncp-0.4.2"
       sources."nijs-0.0.25"
       sources."nopt-3.0.6"
@@ -3034,10 +3025,10 @@ in
       sources."mime-db-1.43.0"
       sources."mime-types-2.1.26"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       sources."nopt-4.0.3"
       sources."npmlog-4.1.2"
       sources."number-is-nan-1.0.1"
@@ -3143,10 +3134,10 @@ in
       sources."is-fullwidth-code-point-1.0.0"
       sources."isarray-1.0.0"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."minipass-2.9.0"
       sources."minizlib-1.3.3"
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       sources."ms-2.1.2"
       sources."needle-2.4.0"
       sources."nopt-4.0.3"
@@ -3162,11 +3153,7 @@ in
       sources."osenv-0.1.5"
       sources."path-is-absolute-1.0.1"
       sources."process-nextick-args-2.0.1"
-      (sources."rc-1.2.8" // {
-        dependencies = [
-          sources."minimist-1.2.5"
-        ];
-      })
+      sources."rc-1.2.8"
       sources."readable-stream-2.3.7"
       sources."rimraf-2.7.1"
       sources."safe-buffer-5.1.2"
diff --git a/pkgs/development/node-packages/node-packages-v13.nix b/pkgs/development/node-packages/node-packages-v13.nix
index e83aa90962c..f87526382b9 100644
--- a/pkgs/development/node-packages/node-packages-v13.nix
+++ b/pkgs/development/node-packages/node-packages-v13.nix
@@ -598,13 +598,13 @@ let
         sha512 = "yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==";
       };
     };
-    "minimist-0.0.8" = {
+    "minimist-1.2.5" = {
       name = "minimist";
       packageName = "minimist";
-      version = "0.0.8";
+      version = "1.2.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
-        sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
+        url = "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz";
+        sha512 = "FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==";
       };
     };
     "minipass-3.1.1" = {
@@ -634,13 +634,13 @@ let
         sha1 = "de3e5f8961c88c787ee1368df849ac4413eca8d7";
       };
     };
-    "mkdirp-0.5.1" = {
+    "mkdirp-0.5.4" = {
       name = "mkdirp";
       packageName = "mkdirp";
-      version = "0.5.1";
+      version = "0.5.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
-        sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
+        url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz";
+        sha512 = "iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==";
       };
     };
     "mkdirp-1.0.3" = {
@@ -1342,10 +1342,10 @@ in
       sources."mime-db-1.43.0"
       sources."mime-types-2.1.26"
       sources."minimatch-3.0.4"
-      sources."minimist-0.0.8"
+      sources."minimist-1.2.5"
       sources."minipass-3.1.1"
       sources."minizlib-2.1.0"
-      sources."mkdirp-0.5.1"
+      sources."mkdirp-0.5.4"
       sources."ncp-0.4.2"
       sources."nijs-0.0.25"
       sources."nopt-3.0.6"
diff --git a/pkgs/development/node-packages/shell-generate.nix b/pkgs/development/node-packages/shell-generate.nix
deleted file mode 100644
index aa635b2a81e..00000000000
--- a/pkgs/development/node-packages/shell-generate.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ nixpkgs ? import ../../.. {} }:
-with nixpkgs;
-mkShell {
-  buildInputs = [
-    bash nodePackages.node2nix
-  ];
-  NODE_NIXPKGS_PATH = builtins.toString ../../../.;
-}
diff --git a/pkgs/development/ocaml-modules/ctypes/default.nix b/pkgs/development/ocaml-modules/ctypes/default.nix
index bc76cfcd64c..8a16dcec343 100644
--- a/pkgs/development/ocaml-modules/ctypes/default.nix
+++ b/pkgs/development/ocaml-modules/ctypes/default.nix
@@ -6,11 +6,11 @@ else
 
 stdenv.mkDerivation rec {
   name = "ocaml${ocaml.version}-ctypes-${version}";
-  version = "0.15.1";
+  version = "0.17.1";
 
   src = fetchzip {
     url = "https://github.com/ocamllabs/ocaml-ctypes/archive/${version}.tar.gz";
-    sha256 = "0adas974bwinn8jidb6chljkpd70s041h2a969dicsj0xsg6wys6";
+    sha256 = "16brmdnz7wi2z25qqhd5s5blyq4app6jbv6g9pa4vyg6h0nzbcys";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/ocamllabs/ocaml-ctypes;
+    homepage = "https://github.com/ocamllabs/ocaml-ctypes";
     description = "Library for binding to C libraries using pure OCaml";
     license = licenses.mit;
     maintainers = [ maintainers.ericbmerritt ];
diff --git a/pkgs/development/ocaml-modules/gnuplot/default.nix b/pkgs/development/ocaml-modules/gnuplot/default.nix
index e473273b8da..d939b884e87 100644
--- a/pkgs/development/ocaml-modules/gnuplot/default.nix
+++ b/pkgs/development/ocaml-modules/gnuplot/default.nix
@@ -1,19 +1,21 @@
-{ stdenv, buildDunePackage, fetchFromBitbucket, gnuplot, core }:
+{ lib, buildDunePackage, fetchFromGitHub, gnuplot, iso8601 }:
 
 buildDunePackage rec {
   pname = "gnuplot";
-  version = "0.5.3";
+  version = "0.7";
 
-  src = fetchFromBitbucket {
-    owner  = "ogu";
-    repo   = "${pname}-ocaml";
-    rev    = "release-${version}";
-    sha256 = "00sn9g46pj8pfh7faiyxg3pfhq7w9knafyabjr464bh6qz5kiin3";
+  minimumOCamlVersion = "4.03";
+
+  src = fetchFromGitHub {
+    owner  = "c-cube";
+    repo   = "ocaml-${pname}";
+    rev    = "v${version}";
+    sha256 = "02pzi3lb57ysrdsba743s3vmnapjbxgq8ynlzpxbbs6cn1jj6ch9";
   };
 
-  propagatedBuildInputs = [ core gnuplot ];
+  propagatedBuildInputs = [ gnuplot iso8601 ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     inherit (src.meta) homepage;
     description = "Ocaml bindings to Gnuplot";
     maintainers = [ maintainers.bcdarwin ];
diff --git a/pkgs/development/ocaml-modules/ocaml-gettext/default.nix b/pkgs/development/ocaml-modules/ocaml-gettext/default.nix
index 014525ef2b4..547fa77ae6e 100644
--- a/pkgs/development/ocaml-modules/ocaml-gettext/default.nix
+++ b/pkgs/development/ocaml-modules/ocaml-gettext/default.nix
@@ -1,38 +1,28 @@
-{ stdenv, fetchurl, ocaml, findlib, camlp4, ounit, gettext, fileutils, camomile }:
+{ lib, fetchurl, buildDunePackage, gettext, fileutils, ounit }:
 
-stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-gettext-${version}";
-  version = "0.3.8";
+buildDunePackage rec {
+  pname = "gettext";
+  version = "0.4.1";
+
+  minimumOCamlVersion = "4.03";
 
   src = fetchurl {
-    url = "https://forge.ocamlcore.org/frs/download.php/1731/ocaml-gettext-${version}.tar.gz";
-    sha256 = "05wnpxwzzpn2qinah2wb5wzfh5iz8gyf8jyihdbjxc8mk4hf70qv";
+    url = "https://github.com/gildor478/ocaml-gettext/releases/download/v${version}/gettext-v${version}.tbz";
+    sha256 = "0pwy6ym5fd77mdbgyas8x86vbrri9cgk79g8wxdjplhyi7zhh158";
   };
 
-  propagatedBuildInputs = [ gettext fileutils camomile ];
-
-  buildInputs = [ ocaml findlib camlp4 ounit ];
-
-  postPatch = stdenv.lib.optionalString (camlp4 != null) ''
-    substituteInPlace test/test.ml                  --replace "+camlp4" "${camlp4}/lib/ocaml/${ocaml.version}/site-lib/camlp4"
-    substituteInPlace ocaml-gettext/OCamlGettext.ml --replace "+camlp4" "${camlp4}/lib/ocaml/${ocaml.version}/site-lib/camlp4"
-    substituteInPlace ocaml-gettext/Makefile        --replace "+camlp4" "${camlp4}/lib/ocaml/${ocaml.version}/site-lib/camlp4"
-    substituteInPlace ocaml-gettext/Makefile        --replace "unix.cma" ""
-    substituteInPlace libgettext-ocaml/Makefile     --replace "+camlp4" "${camlp4}/lib/ocaml/${ocaml.version}/site-lib/camlp4"
-    substituteInPlace libgettext-ocaml/Makefile     --replace "\$(shell ocamlc -where)" "${camlp4}/lib/ocaml/${ocaml.version}/site-lib"
-  '';
+  propagatedBuildInputs = [ gettext fileutils ];
 
-  configureFlags = [ "--disable-doc" ];
+  doCheck = true;
 
-  createFindlibDestdir = true;
+  checkInputs = lib.optional doCheck ounit;
 
   dontStrip = true;
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "OCaml Bindings to gettext";
-    homepage = https://forge.ocamlcore.org/projects/ocaml-gettext;
-    license = licenses.gpl2;
+    homepage = "https://github.com/gildor478/ocaml-gettext";
+    license = licenses.lgpl21;
     maintainers = [ maintainers.volth ];
-    platforms = ocaml.meta.platforms or [];
   };
 }
diff --git a/pkgs/development/ocaml-modules/ocaml-gettext/stub.nix b/pkgs/development/ocaml-modules/ocaml-gettext/stub.nix
new file mode 100644
index 00000000000..b18c0abc530
--- /dev/null
+++ b/pkgs/development/ocaml-modules/ocaml-gettext/stub.nix
@@ -0,0 +1,14 @@
+{ lib, buildDunePackage, ocaml_gettext, ounit }:
+
+buildDunePackage rec {
+
+  pname = "gettext-stub";
+
+  inherit (ocaml_gettext) src version meta;
+
+  propagatedBuildInputs = [ ocaml_gettext ];
+
+  doCheck = true;
+
+  checkInputs = lib.optional doCheck ounit;
+}
diff --git a/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix b/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix
index 11405c0ebe5..6a9e4e1d8c5 100644
--- a/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix
+++ b/pkgs/development/ocaml-modules/ocaml-libvirt/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     autoconf
   '';
 
-  buildPhase = if stdenv.cc.isClang then "make all opt CPPFLAGS=-Wno-error" else "make all opt";
+  buildPhase = "make all opt CPPFLAGS=-Wno-error";
 
   installPhase = "make install-opt";
 
diff --git a/pkgs/development/ocaml-modules/ocaml-r/default.nix b/pkgs/development/ocaml-modules/ocaml-r/default.nix
new file mode 100644
index 00000000000..71e77b24ce4
--- /dev/null
+++ b/pkgs/development/ocaml-modules/ocaml-r/default.nix
@@ -0,0 +1,31 @@
+{ lib, fetchFromGitHub, buildDunePackage, pkg-config, configurator, stdio, R }:
+
+buildDunePackage rec {
+  pname = "ocaml-r";
+  version = "0.2.0";
+
+  src = fetchFromGitHub {
+    owner = "pveber";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "09gljccwjsw9693m1hm9hcyvgp3p2fvg3cfn18yyidpc2f81a4fy";
+  };
+
+  # Without the following patch, stub generation fails with:
+  # > Fatal error: exception (Failure "not supported: osVersion")
+  preConfigure = ''
+    substituteInPlace stubgen/stubgen.ml --replace  \
+    'failwithf "not supported: %s" name ()' \
+    'sprintf "(* not supported: %s *)" name'
+  '';
+
+  buildInputs = [ configurator pkg-config R stdio ];
+
+  meta = {
+    description = "OCaml bindings for the R interpreter";
+    inherit (src.meta) homepage;
+    license = lib.licenses.gpl3;
+    maintainers = [ lib.maintainers.bcdarwin ];
+  };
+
+}
diff --git a/pkgs/development/ocaml-modules/phylogenetics/default.nix b/pkgs/development/ocaml-modules/phylogenetics/default.nix
index 87e88cbf496..916be9b3d38 100644
--- a/pkgs/development/ocaml-modules/phylogenetics/default.nix
+++ b/pkgs/development/ocaml-modules/phylogenetics/default.nix
@@ -1,23 +1,23 @@
 { stdenv, buildDunePackage, fetchFromGitHub, ppx_deriving
-, alcotest, biocaml, gnuplot, lacaml, menhir, owl }:
+, alcotest, biocaml, gnuplot, lacaml, menhir, ocaml-r, owl, printbox }:
 
 buildDunePackage rec {
   pname = "phylogenetics";
-  version = "unstable-2019-11-15";
+  version = "unstable-2020-01-05";
 
   useDune2 = true;
 
   src = fetchFromGitHub {
     owner  = "biocaml";
     repo   = pname;
-    rev    = "91c03834db065cf4a86f33affbb9cfd216defc9f";
-    sha256 = "0i9m0633a6a724as35ix8z3p1gj267cl0hmqrpw4qfq39zxmgnxb";
+    rev    = "b55ef7d7322bd822be26d21339945d45487fb547";
+    sha256 = "0hzfjhs5w3a7hlzxs739k5ik3k1xn3dzyzziid765s74f638n4hj";
   };
 
   minimumOCamlVersion = "4.08";  # e.g., uses Float.min
 
   checkInputs = [ alcotest ];
-  propagatedBuildInputs = [ biocaml gnuplot lacaml menhir owl ppx_deriving ];
+  propagatedBuildInputs = [ biocaml gnuplot lacaml menhir ocaml-r owl ppx_deriving printbox ];
 
   doCheck = false;  # many tests require bppsuite
 
diff --git a/pkgs/development/ocaml-modules/ppx_tools/default.nix b/pkgs/development/ocaml-modules/ppx_tools/default.nix
index 8173fc87aba..a8d438d3731 100644
--- a/pkgs/development/ocaml-modules/ppx_tools/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_tools/default.nix
@@ -41,7 +41,7 @@ let src = fetchFromGitHub {
     pname = "ppx_tools";
     meta = with stdenv.lib; {
       description = "Tools for authors of ppx rewriters";
-      homepage = http://www.lexifi.com/ppx_tools;
+      homepage = "https://www.lexifi.com/ppx_tools";
       license = licenses.mit;
       maintainers = with maintainers; [ vbgl ];
     };
diff --git a/pkgs/development/ocaml-modules/sedlex/default.nix b/pkgs/development/ocaml-modules/sedlex/default.nix
index 653f4532585..e9b3721bc68 100644
--- a/pkgs/development/ocaml-modules/sedlex/default.nix
+++ b/pkgs/development/ocaml-modules/sedlex/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchzip, ocaml, findlib, gen, ppx_tools_versioned }:
+{ stdenv, fetchzip, ocaml, findlib, gen, ppx_tools_versioned, ocaml-migrate-parsetree }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.02"
 then throw "sedlex is not available for OCaml ${ocaml.version}"
@@ -13,9 +13,9 @@ stdenv.mkDerivation rec {
     sha256 = "0phnqyn6mpv5byr1kkphl24y9q9fb2k3xg9yb457h5816q6ya72n";
   };
 
-  buildInputs = [ ocaml findlib ppx_tools_versioned ];
+  buildInputs = [ ocaml findlib ];
 
-  propagatedBuildInputs = [ gen ];
+  propagatedBuildInputs = [ gen ocaml-migrate-parsetree ppx_tools_versioned ];
 
   buildFlags = [ "all" "opt" ];
 
diff --git a/pkgs/development/perl-modules/WWW-YoutubeViewer/default.nix b/pkgs/development/perl-modules/WWW-YoutubeViewer/default.nix
index 6a3ed466e8f..ea05ecd299d 100644
--- a/pkgs/development/perl-modules/WWW-YoutubeViewer/default.nix
+++ b/pkgs/development/perl-modules/WWW-YoutubeViewer/default.nix
@@ -2,13 +2,13 @@
 
 buildPerlPackage rec {
   pname = "WWW-YoutubeViewer";
-  version = "3.3.0";
+  version = "3.7.5";
 
   src = fetchFromGitHub {
     owner  = "trizen";
     repo   = "youtube-viewer";
     rev    = version;
-    sha256 = "15xyrwv08fw8jmpydwzks26ipxnzliwddgyjcfqiaj0p7lwlhmx1";
+    sha256 = "1caz56sxy554avz2vdv9gm7gyqcq0gyixzrh5v9ixmg6vxif5d4f";
   };
 
   nativeBuildInputs = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang;
diff --git a/pkgs/development/python-modules/3to2/default.nix b/pkgs/development/python-modules/3to2/default.nix
index 4e6c0f9214c..123cf3f4741 100644
--- a/pkgs/development/python-modules/3to2/default.nix
+++ b/pkgs/development/python-modules/3to2/default.nix
@@ -5,11 +5,12 @@
 }:
 
 buildPythonPackage rec {
-  pname = "3to2";
+  pname = "py3to2";
   version = "1.1.1";
 
   src = fetchPypi {
-    inherit pname version;
+    inherit version;
+    pname = "3to2";
     extension = "zip";
     sha256 = "fef50b2b881ef743f269946e1090b77567b71bb9a9ce64b7f8e699b562ff685c";
   };
diff --git a/pkgs/development/python-modules/HTSeq/default.nix b/pkgs/development/python-modules/HTSeq/default.nix
index 7cbe523ba1e..8158c675898 100644
--- a/pkgs/development/python-modules/HTSeq/default.nix
+++ b/pkgs/development/python-modules/HTSeq/default.nix
@@ -1,12 +1,12 @@
 { stdenv, buildPythonPackage, fetchPypi, cython, numpy, pysam, matplotlib
 }:
 buildPythonPackage rec {
-  version = "0.11.2";
+  version = "0.11.4";
   pname = "HTSeq";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "65c4c13968506c7df92e97124df96fdd041c4476c12a548d67350ba8b436bcfc";
+    sha256 = "1ncn30yvc18aiv1qsa0bvcbjwqy21s0a0kv3v0vghzsn8vbfzq7h";
   };
 
   buildInputs = [ cython numpy pysam ];
diff --git a/pkgs/development/python-modules/aiohttp-socks/default.nix b/pkgs/development/python-modules/aiohttp-socks/default.nix
index 782238c3f83..392c77036ca 100644
--- a/pkgs/development/python-modules/aiohttp-socks/default.nix
+++ b/pkgs/development/python-modules/aiohttp-socks/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "aiohttp-socks";
-  version = "0.3.4";
+  version = "0.3.7";
 
   src = fetchPypi {
     inherit version;
     pname = "aiohttp_socks";
-    sha256 = "1gc74a0i0slq3gn9kv3scn7c9x444z5nwjm3d14qilsgq6civsnd";
+    sha256 = "00zqlkhfrp1jczgjppaksriidyfshnj0jvrcryn1x77dmy73m023";
   };
 
   propagatedBuildInputs = [ aiohttp attrs ];
@@ -20,6 +20,6 @@ buildPythonPackage rec {
   meta = {
     description = "SOCKS proxy connector for aiohttp";
     license = lib.licenses.asl20;
-    homepage = https://github.com/romis2012/aiohttp-socks;
+    homepage = "https://github.com/romis2012/aiohttp-socks";
   };
 }
diff --git a/pkgs/development/python-modules/alarmdecoder/default.nix b/pkgs/development/python-modules/alarmdecoder/default.nix
new file mode 100644
index 00000000000..ef8b74bb9d7
--- /dev/null
+++ b/pkgs/development/python-modules/alarmdecoder/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, buildPythonPackage, fetchFromGitHub, pyserial, pyftdi, pyusb
+, pyopenssl, nose, isPy3k, pythonOlder, mock }:
+
+buildPythonPackage rec {
+  pname = "alarmdecoder";
+  version = "1.13.9";
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "nutechsoftware";
+    repo = "alarmdecoder";
+    rev = version;
+    sha256 = "0plr2h1qn4ryawbaxf29cfna4wailghhaqy1jcm9kxq6q7b9xqqy";
+  };
+
+  propagatedBuildInputs = [ pyserial pyftdi pyusb pyopenssl ];
+
+  doCheck = !isPy3k;
+  checkInputs = [ nose mock ];
+  pythonImportsCheck = [ "alarmdecoder" ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/nutechsoftware/alarmdecoder";
+    description =
+      "Python interface for the Alarm Decoder (AD2) family of alarm devices. (AD2USB, AD2SERIAL and AD2PI)";
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/altair/default.nix b/pkgs/development/python-modules/altair/default.nix
index c80af1acdc5..f5076953bf2 100644
--- a/pkgs/development/python-modules/altair/default.nix
+++ b/pkgs/development/python-modules/altair/default.nix
@@ -18,12 +18,12 @@
 
 buildPythonPackage rec {
   pname = "altair";
-  version = "4.0.1";
+  version = "4.1.0";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "145gjad415zjfp0ciq1b19i97ibavj8fki1vzhjppqz55k4704nk";
+    sha256 = "0c99q5dy6f275yg1f137ird08wmwc1z8wmvjickkf2mvyka31p9y";
   };
 
   propagatedBuildInputs = [
@@ -54,7 +54,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "A declarative statistical visualization library for Python.";
-    homepage = https://github.com/altair-viz/altair;
+    homepage = "https://github.com/altair-viz/altair";
     license = licenses.bsd3;
     maintainers = with maintainers; [ teh ];
     platforms = platforms.unix;
diff --git a/pkgs/development/python-modules/ansi/default.nix b/pkgs/development/python-modules/ansi/default.nix
index 77b93ce890e..65f51c17d7d 100644
--- a/pkgs/development/python-modules/ansi/default.nix
+++ b/pkgs/development/python-modules/ansi/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "ansi";
-  version = "0.1.3";
+  version = "0.1.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "06y6470bzvlqys3zi2vc68rmk9n05v1ibral14gbfpgfa8fzy7pg";
+    sha256 = "02sknsbx55r6nylznslmmzzkfi3rsw7akpyzi6f1bqvr2ila8p0f";
   };
 
   checkPhase = ''
@@ -15,7 +15,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "ANSI cursor movement and graphics";
-    homepage = https://github.com/tehmaze/ansi/;
+    homepage = "https://github.com/tehmaze/ansi/";
     license = licenses.mit;
   };
 }
diff --git a/pkgs/development/python-modules/apache-airflow/default.nix b/pkgs/development/python-modules/apache-airflow/default.nix
index 049db8a648f..f23d16c2695 100644
--- a/pkgs/development/python-modules/apache-airflow/default.nix
+++ b/pkgs/development/python-modules/apache-airflow/default.nix
@@ -134,37 +134,37 @@ buildPythonPackage rec {
   ];
 
   postPatch = ''
+    substituteInPlace setup.py \
+      --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 "pendulum==1.4.4" "pendulum" \
+      --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 "jinja2>=2.7.3, <=2.10.0" "jinja2" \
+      --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>=0.9, <1.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" \
+      --replace "werkzeug>=0.14.1, <0.15.0" "werkzeug"
 
-   substituteInPlace setup.py \
-     --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 "pendulum==1.4.4" "pendulum" \
-     --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 "jinja2>=2.7.3, <=2.10.0" "jinja2" \
-     --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>=0.9, <1.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" \
-     --replace "werkzeug>=0.14.1, <0.15.0" "werkzeug"
+    # dumb-init is only needed for CI and Docker, not relevant for NixOS.
+    substituteInPlace setup.py \
+      --replace "'dumb-init>=1.2.2'," ""
 
-  # 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 "/bin/bash" "${stdenv.shell}"
+    substituteInPlace tests/core.py \
+      --replace "/bin/bash" "${stdenv.shell}"
   '';
 
   checkPhase = ''
@@ -184,8 +184,8 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Programmatically author, schedule and monitor data pipelines";
-    homepage = http://airflow.apache.org/;
+    homepage = "http://airflow.apache.org/";
     license = licenses.asl20;
-    maintainers = [ maintainers.costrouc maintainers.ingenieroariel ];
+    maintainers = with maintainers; [ costrouc ingenieroariel ];
   };
 }
diff --git a/pkgs/development/python-modules/application/default.nix b/pkgs/development/python-modules/application/default.nix
index 654567cc23f..90b21baafdd 100644
--- a/pkgs/development/python-modules/application/default.nix
+++ b/pkgs/development/python-modules/application/default.nix
@@ -1,21 +1,26 @@
-{ lib, buildPythonPackage, fetchdarcs, zope_interface, isPy3k }:
+{ lib, buildPythonPackage, fetchFromGitHub, zope_interface, isPy3k }:
 
 buildPythonPackage rec {
   pname = "python-application";
-  version = "2.7.0";
+  version = "2.8.0";
   disabled = isPy3k;
 
-  src = fetchdarcs {
-    url = "http://devel.ag-projects.com/repositories/${pname}";
+  src = fetchFromGitHub {
+    owner = "AGProjects";
+    repo = pname;
     rev = "release-${version}";
-    sha256 = "1xpyk2v3naxkjhpyris58dxg1lxbraxgjd6f7w1sah5j0sk7psla";
+    sha256 = "1xd2gbpmx2ghap9cnr1h6sxjai9419bdp3y9qp5lh67977m0qg30";
   };
 
   buildInputs = [ zope_interface ];
 
+  # No tests upstream to run
+  doCheck = false;
+
   meta = with lib; {
     description = "Basic building blocks for python applications";
-    homepage = https://github.com/AGProjects/python-application;
+    homepage = "https://github.com/AGProjects/python-application";
+    changelog = "https://github.com/AGProjects/python-application/blob/master/ChangeLog";
     license = licenses.lgpl2Plus;
   };
 }
diff --git a/pkgs/development/python-modules/apptools/default.nix b/pkgs/development/python-modules/apptools/default.nix
index 186bda86842..9e06abd9a71 100644
--- a/pkgs/development/python-modules/apptools/default.nix
+++ b/pkgs/development/python-modules/apptools/default.nix
@@ -1,18 +1,18 @@
-{ stdenv, fetchPypi, buildPythonPackage
-, traits, traitsui, configobj
+{ lib, fetchPypi, buildPythonPackage
+, configobj, six, traitsui
 , nose, tables, pandas
 }:
 
 buildPythonPackage rec {
   pname = "apptools";
-  version = "4.4.0";
+  version = "4.5.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1dw6vvq7lqkj7mgn3s7r5hs937kl4mj5g7jf2qgvhdld9lsc5xbk";
+    sha256 = "10h52ibhr2aw076pivqxiajr9rpcr1mancg6xlpxzckcm3if02i6";
   };
 
-  propagatedBuildInputs = [ traits traitsui configobj ];
+  propagatedBuildInputs = [ configobj six traitsui ];
 
   checkInputs = [
     nose
@@ -21,11 +21,12 @@ buildPythonPackage rec {
   ];
 
   doCheck = true;
+  checkPhase = ''HOME=$TMP nosetests'';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Set of packages that Enthought has found useful in creating a number of applications.";
-    homepage = https://github.com/enthought/apptools;
-    maintainers = with stdenv.lib.maintainers; [ knedlsepp ];
+    homepage = "https://github.com/enthought/apptools";
+    maintainers = with maintainers; [ knedlsepp ];
     license = licenses.bsdOriginal;
   };
 }
diff --git a/pkgs/development/python-modules/argcomplete/default.nix b/pkgs/development/python-modules/argcomplete/default.nix
index 6f978778f7d..b34b878a839 100644
--- a/pkgs/development/python-modules/argcomplete/default.nix
+++ b/pkgs/development/python-modules/argcomplete/default.nix
@@ -1,25 +1,37 @@
-{ buildPythonPackage, fetchPypi, lib,
-  dicttoxml, pexpect, prettytable, requests_toolbelt
+{ buildPythonPackage, fetchPypi, lib
+, dicttoxml
+, importlib-metadata
+, pexpect
+, prettytable
+, requests_toolbelt
 }:
 buildPythonPackage rec {
   pname = "argcomplete";
-  version = "1.10.3";
+  version = "1.11.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a37f522cf3b6a34abddfedb61c4546f60023b3799b22d1cd971eacdc0861530a";
+    sha256 = "0h1przxffrhqvi46k40pzjsvdrq4zc3sl1pc96kkigqppq0vdrss";
   };
 
-  doCheck = false; # bash-completion test fails with "compgen: command not found".
+  doCheck = false; # meant to be ran with interactive interpreter
 
   # re-enable if we are able to make testing work
-  # buildInputs = [ coverage flake8 ];
+  # checkInputs = [ bashInteractive coverage flake8 ];
 
-  propagatedBuildInputs = [ dicttoxml pexpect prettytable requests_toolbelt ];
+  propagatedBuildInputs = [
+    dicttoxml
+    importlib-metadata
+    pexpect
+    prettytable
+    requests_toolbelt
+  ];
+
+  pythonImportsCheck = [ "argcomplete" ];
 
   meta = with lib; {
     description = "Bash tab completion for argparse";
-    homepage = https://argcomplete.readthedocs.io;
+    homepage = "https://kislyuk.github.io/argcomplete/";
     maintainers = [ maintainers.womfoo ];
     license = [ licenses.asl20 ];
   };
diff --git a/pkgs/development/python-modules/arrow/default.nix b/pkgs/development/python-modules/arrow/default.nix
index af3e4547628..04295dce261 100644
--- a/pkgs/development/python-modules/arrow/default.nix
+++ b/pkgs/development/python-modules/arrow/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "arrow";
-  version = "0.15.4";
+  version = "0.15.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "e1a318a4c0b787833ae46302c02488b6eeef413c6a13324b3261ad320f21ec1e";
+    sha256 = "0yq2bld2bjxddmg9zg4ll80pb32rkki7xyhgnrqnkxy5w9jf942k";
   };
 
   checkPhase = ''
diff --git a/pkgs/development/python-modules/ase/default.nix b/pkgs/development/python-modules/ase/default.nix
index 3aa5a432c4b..870f0598e5e 100644
--- a/pkgs/development/python-modules/ase/default.nix
+++ b/pkgs/development/python-modules/ase/default.nix
@@ -12,12 +12,12 @@
 
 buildPythonPackage rec {
   pname = "ase";
-  version = "3.19.0";
+  version = "3.19.1";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a8378ab57e91cfe1ba09b3639d8409bb7fc1a40b59479c7822d206e673ad93f9";
+    sha256 = "03xzpmpask2q2609kkq0hfgzsfvkyjpbjws7qx00nnfrbbnjk443";
   };
 
   propagatedBuildInputs = [ numpy scipy matplotlib flask pillow psycopg2 ];
@@ -31,7 +31,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Atomic Simulation Environment";
-    homepage = https://wiki.fysik.dtu.dk/ase/;
+    homepage = "https://wiki.fysik.dtu.dk/ase/";
     license = licenses.lgpl21Plus;
     maintainers = with maintainers; [ costrouc ];
   };
diff --git a/pkgs/development/python-modules/asgiref/default.nix b/pkgs/development/python-modules/asgiref/default.nix
index 9fa7d8c7c42..56c69bb97ed 100644
--- a/pkgs/development/python-modules/asgiref/default.nix
+++ b/pkgs/development/python-modules/asgiref/default.nix
@@ -1,6 +1,6 @@
 { stdenv, buildPythonPackage, pythonOlder, fetchFromGitHub, async-timeout, pytest, pytest-asyncio }:
 buildPythonPackage rec {
-  version = "3.2.5";
+  version = "3.2.7";
   pname = "asgiref";
 
   disabled = pythonOlder "3.5";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     owner = "django";
     repo = pname;
     rev = version;
-    sha256 = "040g2cghpskp427xiw9jv7c0lfj1sk5fc01dds8pi7grkk0br357";
+    sha256 = "1qf29blzhh6sljaj1adc0p8cnyxh9ar6hky9ccdfbgmrk4rw5kwc";
   };
 
   propagatedBuildInputs = [ async-timeout ];
diff --git a/pkgs/development/python-modules/atlassian-python-api/default.nix b/pkgs/development/python-modules/atlassian-python-api/default.nix
index 9ef332827eb..e58fa446f81 100755
--- a/pkgs/development/python-modules/atlassian-python-api/default.nix
+++ b/pkgs/development/python-modules/atlassian-python-api/default.nix
@@ -16,11 +16,11 @@
 
 buildPythonPackage rec {
   pname = "atlassian-python-api";
-  version = "1.15.4";
+  version = "1.15.6";
   
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0vkq3sr4a23ipk74swsmc3ydg3q91asixb7hzl8mzkfpgnnyvr77";
+    sha256 = "0nn3g2sb0pqfacsqcw94n8v9jbn4ip0pvhvczasfvks2w9q9sij7";
   };
   
   checkInputs = [ pytestrunner pytest ];
diff --git a/pkgs/development/python-modules/audio-metadata/default.nix b/pkgs/development/python-modules/audio-metadata/default.nix
index d1ccef1ece4..3e08d4a9882 100644
--- a/pkgs/development/python-modules/audio-metadata/default.nix
+++ b/pkgs/development/python-modules/audio-metadata/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "audio-metadata";
-  version = "0.6.0";
+  version = "0.9.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "7a0c060d05ac59a4ce841a485808fe8a6993fec554f96bee90e57e971c73a2a6";
+    sha256 = "1v7ww3csyxrhnpvpynla64hfn1wp37vbw7srh9343n4wc02mh65l";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/aws-adfs/default.nix b/pkgs/development/python-modules/aws-adfs/default.nix
index 1f03ef8cb3b..20ed59f9e5b 100644
--- a/pkgs/development/python-modules/aws-adfs/default.nix
+++ b/pkgs/development/python-modules/aws-adfs/default.nix
@@ -1,15 +1,15 @@
 { lib, buildPythonPackage, fetchPypi
-, pytest, pytestrunner, pytestcov, mock, glibcLocales, lxml, boto3
+, pytest, pytestrunner, pytestcov, mock, glibcLocales, lxml, botocore
 , requests, requests-kerberos, click, configparser, fido2, isPy27 }:
 
 buildPythonPackage rec {
   pname = "aws-adfs";
-  version = "1.21.2";
+  version = "1.24.3";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "ba96e71404474350b2c3ae4d5cb2dd25e9267b6d0680933c5711a51ea364e3bc";
+    sha256 = "0bcjlf5dkg2q0db0ra1ssa3hy98spflkd3ykhmlyv65rkgx8w1wv";
   };
 
   # Relax version constraint
@@ -24,11 +24,11 @@ buildPythonPackage rec {
   LC_ALL = "en_US.UTF-8";
 
   checkInputs = [ glibcLocales pytest pytestrunner pytestcov mock ];
-  propagatedBuildInputs = [ lxml boto3 requests requests-kerberos click configparser fido2 ];
+  propagatedBuildInputs = [ botocore lxml requests requests-kerberos click configparser fido2 ];
 
   meta = with lib; {
     description = "Command line tool to ease aws cli authentication against ADFS";
-    homepage = https://github.com/venth/aws-adfs;
+    homepage = "https://github.com/venth/aws-adfs";
     license = licenses.psfl;
     maintainers = [ maintainers.bhipple ];
   };
diff --git a/pkgs/development/python-modules/azure-batch/default.nix b/pkgs/development/python-modules/azure-batch/default.nix
index f772d16942f..05021c73edb 100644
--- a/pkgs/development/python-modules/azure-batch/default.nix
+++ b/pkgs/development/python-modules/azure-batch/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "azure-batch";
-  version = "8.0.0";
+  version = "9.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1j8nibnics9vakhqiwnjv7bwril7mfyz1svcvvsrb9a4wbdd12wi";
+    sha256 = "112d73gxjqng348mcvi36ska6pxyg8qc3qswvhf5x4a0lr86zjj7";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-common/default.nix b/pkgs/development/python-modules/azure-common/default.nix
index b842a66cd27..abf27b5d7ef 100644
--- a/pkgs/development/python-modules/azure-common/default.nix
+++ b/pkgs/development/python-modules/azure-common/default.nix
@@ -9,14 +9,14 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.1.24";
+  version = "1.1.25";
   pname = "azure-common";
   disabled = isPyPy;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "184ad6a05a3089dfdc1ce07c1cbfa489bbc45b5f6f56e848cac0851e6443da21";
+    sha256 = "ce0f1013e6d0e9faebaf3188cc069f4892fc60a6ec552e3f817c1a2f92835054";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-core/default.nix b/pkgs/development/python-modules/azure-core/default.nix
index 24675200b5b..2e87db4fb6c 100644
--- a/pkgs/development/python-modules/azure-core/default.nix
+++ b/pkgs/development/python-modules/azure-core/default.nix
@@ -1,6 +1,7 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
 , aiodns
 , aiohttp
+, mock
 , msrest
 , pytest
 , pytestCheckHook
@@ -11,14 +12,14 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.2.2";
+  version = "1.3.0";
   pname = "azure-core";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "0bz4m6kmqymxlxf9qk6jw8v895d13rsggbgsjpsbvi9px6w15nwb";
+    sha256 = "98d03a35845fe5b6abaa32f5961214da3e16c4c82b8c601926fc5e7f3a39549e";
   };
 
   propagatedBuildInputs = [
@@ -29,6 +30,7 @@ buildPythonPackage rec {
   checkInputs = [
     aiodns
     aiohttp
+    mock
     msrest
     pytest
     pytestCheckHook
diff --git a/pkgs/development/python-modules/azure-cosmos/default.nix b/pkgs/development/python-modules/azure-cosmos/default.nix
index 5716b1254af..4fa05ada850 100644
--- a/pkgs/development/python-modules/azure-cosmos/default.nix
+++ b/pkgs/development/python-modules/azure-cosmos/default.nix
@@ -17,9 +17,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ six requests ];
 
-  postInstall = ''
-    rm $out/${python.sitePackages}/azure/__init__.py
-  '';
+  pythonNamespaces = [ "azure" ];
 
   # requires an active Azure Cosmos service
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-identity/default.nix b/pkgs/development/python-modules/azure-identity/default.nix
index e4b894eca64..78fd7402098 100644
--- a/pkgs/development/python-modules/azure-identity/default.nix
+++ b/pkgs/development/python-modules/azure-identity/default.nix
@@ -17,13 +17,13 @@
 
 buildPythonPackage rec {
   pname = "azure-identity";
-  version = "1.1.0";
+  version = "1.3.0";
   disabled = isPy38;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1xn4nwi4vly8n3mmphv0wbdg9k55gsgmk3fdwma8rm3m3c7593hc";
+    sha256 = "17fa904e0447fd2a2dc19909379edb769b05656dbaf4863b8c4fdfb2bb54350c";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-keyvault-keys/default.nix b/pkgs/development/python-modules/azure-keyvault-keys/default.nix
index 34629e6eb48..7e03e7faa8e 100644
--- a/pkgs/development/python-modules/azure-keyvault-keys/default.nix
+++ b/pkgs/development/python-modules/azure-keyvault-keys/default.nix
@@ -10,13 +10,13 @@
 
 buildPythonPackage rec {
   pname = "azure-keyvault-keys";
-  version = "4.0.0";
+  version = "4.1.0";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1l1fwm8plzr5zbv02nlvs0i8ssmd88cxm5lb19i54b3scci77hiq";
+    sha256 = "f9967b4deb48e619f6c40558f69e48978779cc09c8a7fad33d536cfc41cd68f9";
   };
 
   propagatedBuildInputs = [
@@ -26,6 +26,8 @@ buildPythonPackage rec {
     cryptography
   ];
 
+  pythonNamespaces = [ "azure.keyvault" ];
+
   # requires relative paths to utilities in the mono-repo
   doCheck = false;
   checkInputs = [ aiohttp pytestCheckHook ];
diff --git a/pkgs/development/python-modules/azure-keyvault-secrets/default.nix b/pkgs/development/python-modules/azure-keyvault-secrets/default.nix
index e2b40c29d85..25d58513d31 100644
--- a/pkgs/development/python-modules/azure-keyvault-secrets/default.nix
+++ b/pkgs/development/python-modules/azure-keyvault-secrets/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "azure-keyvault-secrets";
-  version = "4.0.0";
+  version = "4.1.0";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "066p4x2ixasz6qbxss2ilchl73w1kh2nc32lgh8qygl3d90059lp";
+    sha256 = "4f3bfac60e025e01dd1c1998b73649d45d706975356c0cf147174cf5a6ddf8be";
   };
 
   propagatedBuildInputs = [
@@ -21,6 +21,8 @@ buildPythonPackage rec {
     msrest
   ];
 
+  pythonNamespaces = [ "azure.keyvault" ];
+
   # requires checkout from mono-repo
   doCheck = false;
 
diff --git a/pkgs/development/python-modules/azure-keyvault/default.nix b/pkgs/development/python-modules/azure-keyvault/default.nix
index b6f7f1d70d4..035871ab937 100644
--- a/pkgs/development/python-modules/azure-keyvault/default.nix
+++ b/pkgs/development/python-modules/azure-keyvault/default.nix
@@ -22,6 +22,8 @@ buildPythonPackage rec {
   # this is just a meta package, which contains keys and secrets
   doCheck = false;
 
+  pythonNamespaces = [ "azure" ];
+
   pythonImportsCheck = [
     "azure.keyvault.keys"
     "azure.keyvault.secrets"
diff --git a/pkgs/development/python-modules/azure-loganalytics/default.nix b/pkgs/development/python-modules/azure-loganalytics/default.nix
index 4bfda9a9342..beca4018bab 100644
--- a/pkgs/development/python-modules/azure-loganalytics/default.nix
+++ b/pkgs/development/python-modules/azure-loganalytics/default.nix
@@ -22,9 +22,7 @@ buildPythonPackage rec {
     azure-common
   ];
 
-  postInstall = lib.optionalString isPy3k ''
-    rm -rf $out/${python.sitePackages}/azure/__init__.py
-  '';
+  pythonNamespaces = [ "azure" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-applicationinsights/default.nix b/pkgs/development/python-modules/azure-mgmt-applicationinsights/default.nix
index 274cb181d2d..76a0d71b151 100644
--- a/pkgs/development/python-modules/azure-mgmt-applicationinsights/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-applicationinsights/default.nix
@@ -27,9 +27,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  postInstall = lib.optionalString isPy3k ''
-    rm -f $out/${python.sitePackages}/azure/{,mgmt/}__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-batchai/default.nix b/pkgs/development/python-modules/azure-mgmt-batchai/default.nix
index 6da0cf2210c..8186f87fd72 100644
--- a/pkgs/development/python-modules/azure-mgmt-batchai/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-batchai/default.nix
@@ -24,10 +24,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  postInstall = lib.optionalString isPy3k ''
-    rm $out/${python.sitePackages}/azure/__init__.py
-    rm $out/${python.sitePackages}/azure/mgmt/__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-billing/default.nix b/pkgs/development/python-modules/azure-mgmt-billing/default.nix
index 8c658145d7e..6e9656950d5 100644
--- a/pkgs/development/python-modules/azure-mgmt-billing/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-billing/default.nix
@@ -30,10 +30,7 @@ buildPythonPackage rec {
       --replace "azure-namespace-package = azure-mgmt-nspkg" ""
   '';
 
-  postInstall = lib.optionalString isPy3k ''
-    rm $out/${python.sitePackages}/azure/__init__.py
-    rm $out/${python.sitePackages}/azure/mgmt/__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix b/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix
index c535971c7bf..2dadb1d2cb8 100644
--- a/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-cognitiveservices/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-cognitiveservices";
-  version = "5.0.0";
+  version = "6.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1m7v3rfkvmdgghrpz15fm8pvmmhi40lcwfxdm2kxh7mx01r5l906";
+    sha256 = "d03641336f4b2ec561112655c93ee80bc28d8e8daa45a57abc36169bd19c07a0";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-compute/default.nix b/pkgs/development/python-modules/azure-mgmt-compute/default.nix
index 99545d2a981..109c3b77748 100644
--- a/pkgs/development/python-modules/azure-mgmt-compute/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-compute/default.nix
@@ -16,15 +16,12 @@ buildPythonPackage rec {
     sha256 = "00ygppmlx21dxvb0swfdyhqf5xhi0zxy26abcgql02w0lklw91nj";
   };
 
-  postInstall = if isPy3k then "" else ''
-    echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
-    echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py
-  '';
-
   propagatedBuildInputs = [
     azure-mgmt-common
   ];
 
+  pythonNamespaces = [ "azure.mgmt" ];
+
   # has no tests
   doCheck = false;
 
diff --git a/pkgs/development/python-modules/azure-mgmt-consumption/default.nix b/pkgs/development/python-modules/azure-mgmt-consumption/default.nix
index de4a1338611..7e577164511 100644
--- a/pkgs/development/python-modules/azure-mgmt-consumption/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-consumption/default.nix
@@ -24,11 +24,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  # still needed when overriding to previous versions
-  # E.g. azure-cli
-  postInstall = lib.optionalString isPy3k ''
-    rm -f $out/${python.sitePackages}/azure/{,mgmt/}__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix b/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
index 41124e44854..20861a9efe3 100644
--- a/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-containerservice/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-containerservice";
-  version = "8.2.0";
+  version = "9.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "0czn781ywbwi8px54nlccsvw5s13y4wqmxhcrxkkl0y7rblqi5pr";
+    sha256 = "6f05948bbd19ceb894f46f037b77c54116183364a671e180c007b5737c8d4590";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-datafactory/default.nix b/pkgs/development/python-modules/azure-mgmt-datafactory/default.nix
index 0d610eebe9c..e7da7541dd9 100644
--- a/pkgs/development/python-modules/azure-mgmt-datafactory/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-datafactory/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-datafactory";
-  version = "0.8.0";
+  version = "0.10.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "0rv3443h4f9n88ky0fkfrp6jhf7ck9w3v96q040g3c2vkkywsnwa";
+    sha256 = "48b1ec81f30f4b5f38dd17f68f0dfc968db96e0a04fdcfc99f43f80ca041f14b";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-datalake-analytics/default.nix b/pkgs/development/python-modules/azure-mgmt-datalake-analytics/default.nix
index ad77a75fe83..1e4cdd88c95 100644
--- a/pkgs/development/python-modules/azure-mgmt-datalake-analytics/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-datalake-analytics/default.nix
@@ -24,11 +24,7 @@ buildPythonPackage rec {
     azure-mgmt-datalake-nspkg
   ];
 
-  postInstall = lib.optionalString isPy3k ''
-    rm $out/${python.sitePackages}/azure/__init__.py
-    rm $out/${python.sitePackages}/azure/mgmt/__init__.py
-    rm $out/${python.sitePackages}/azure/mgmt/datalake/__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt.datalake" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-datalake-store/default.nix b/pkgs/development/python-modules/azure-mgmt-datalake-store/default.nix
index 5d2db3c2112..4f985e37e6f 100644
--- a/pkgs/development/python-modules/azure-mgmt-datalake-store/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-datalake-store/default.nix
@@ -3,6 +3,7 @@
 , fetchPypi
 , python
 , isPy3k
+, pythonNamespacesHook
 , msrestazure
 , azure-common
 , azure-mgmt-datalake-nspkg
@@ -24,11 +25,7 @@ buildPythonPackage rec {
     azure-mgmt-datalake-nspkg
   ];
 
-  postInstall = lib.optionalString isPy3k ''
-    rm $out/${python.sitePackages}/azure/__init__.py
-    rm $out/${python.sitePackages}/azure/mgmt/__init__.py
-    rm $out/${python.sitePackages}/azure/mgmt/datalake/__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt.datalake" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-datamigration/default.nix b/pkgs/development/python-modules/azure-mgmt-datamigration/default.nix
index 93c294e4be9..c82bfeab2ed 100644
--- a/pkgs/development/python-modules/azure-mgmt-datamigration/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-datamigration/default.nix
@@ -27,11 +27,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  # still needed when overriding to previous versions
-  # E.g. azure-cli
-  postInstall = lib.optionalString isPy3k ''
-    rm -f $out/${python.sitePackages}/azure/{,mgmt/}__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-devtestlabs/default.nix b/pkgs/development/python-modules/azure-mgmt-devtestlabs/default.nix
index 756af164a71..78f149e2f7d 100644
--- a/pkgs/development/python-modules/azure-mgmt-devtestlabs/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-devtestlabs/default.nix
@@ -27,11 +27,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  # still needed when overriding to previous versions
-  # E.g. azure-cli
-  postInstall = lib.optionalString isPy3k ''
-    rm -f $out/${python.sitePackages}/azure/{,mgmt/}__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-dns/default.nix b/pkgs/development/python-modules/azure-mgmt-dns/default.nix
index 0f1527f688b..ce467dba31d 100644
--- a/pkgs/development/python-modules/azure-mgmt-dns/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-dns/default.nix
@@ -27,10 +27,7 @@ buildPythonPackage rec {
   ];
 
   # this is still needed for when the version is overrided
-  # to previous versions. E.g azure-cli
-  postInstall = lib.optionalString isPy3k ''
-    rm -f $out/${python.sitePackages}/azure/{,mgmt/}__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-hanaonazure/default.nix b/pkgs/development/python-modules/azure-mgmt-hanaonazure/default.nix
index 789784babfb..c23ebfc2ce9 100644
--- a/pkgs/development/python-modules/azure-mgmt-hanaonazure/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-hanaonazure/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-hanaonazure";
-  version = "0.12.0";
+  version = "0.13.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "cc844a152079e0d18fb5f47663a24cb204982925425c1fb51bac53894885000b";
+    sha256 = "cc4058174e371a0b68b305cd5a082fcca47f3446dd9aefd9ada72da4bd637da9";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-iotcentral/default.nix b/pkgs/development/python-modules/azure-mgmt-iotcentral/default.nix
index 29069d71b88..5ba25e11a89 100644
--- a/pkgs/development/python-modules/azure-mgmt-iotcentral/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-iotcentral/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-iotcentral";
-  version = "2.0.0";
+  version = "3.0.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1fql0j28d2r6slgabb7b438gdga513iskqh4al6c7dsmj1yzdzwa";
+    sha256 = "f6dacf442ccae2f18f1082e80bcbdcaa8c0efa2ba92b48c5db6ee01d37240047";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-iothub/default.nix b/pkgs/development/python-modules/azure-mgmt-iothub/default.nix
index 1e4c8923d7d..57ec64f3d56 100644
--- a/pkgs/development/python-modules/azure-mgmt-iothub/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-iothub/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-iothub";
-  version = "0.10.0";
+  version = "0.11.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1xms5wf21z9i28xl0p515xb08mrlsqnzhxcwv7pjlf26lwxadfi0";
+    sha256 = "f6fbb87d9bf29ce325543c9a3a125fbe45f4797f3a7f260c6c21ca60dc3f0885";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-iothubprovisioningservices/default.nix b/pkgs/development/python-modules/azure-mgmt-iothubprovisioningservices/default.nix
index c72ca47cff9..c668e5ed4d6 100644
--- a/pkgs/development/python-modules/azure-mgmt-iothubprovisioningservices/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-iothubprovisioningservices/default.nix
@@ -26,10 +26,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  postInstall = lib.optionalString isPy3k ''
-    rm $out/${python.sitePackages}/azure/__init__.py
-    rm $out/${python.sitePackages}/azure/mgmt/__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-keyvault/default.nix b/pkgs/development/python-modules/azure-mgmt-keyvault/default.nix
index 43f0394669b..fd6cd26c7c6 100644
--- a/pkgs/development/python-modules/azure-mgmt-keyvault/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-keyvault/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-keyvault";
-  version = "2.1.1";
+  version = "2.2.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "0ga6lzqlinfxlzx1g35a5sv5chjx4im0m4b8i33hqrhmdv9m7ypg";
+    sha256 = "1883e12eeb5819064dc52bf3a3ade05c791f4b66e4aeec948bda28df6ce2bce4";
   };
 
   propagatedBuildInputs = [
@@ -26,11 +26,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  # this is still need when overriding to prevoius versions
-  # E.g. azure-cli
-  postInstall = lib.optionalString isPy3k ''
-    rm -f $out/${python.sitePackages}/azure/{,mgmt/}__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-kusto/default.nix b/pkgs/development/python-modules/azure-mgmt-kusto/default.nix
index 53aeff46c58..08a9b6b507e 100644
--- a/pkgs/development/python-modules/azure-mgmt-kusto/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-kusto/default.nix
@@ -5,13 +5,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.5.0";
+  version = "0.7.0";
   pname = "azure-mgmt-kusto";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0r6j3yp7ys0zgszqdjm6y90nigsapni4xhfpfgyk5c5qbgdpl93w";
+    sha256 = "40f8e62db145d31731018b83baf2d1a78b585514c373dd3c095f1f6835d17d23";
     extension = "zip";
   };
 
diff --git a/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix b/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix
index a5e2829a930..c149d5ef6fa 100644
--- a/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-loganalytics/default.nix
@@ -26,10 +26,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  postInstall = lib.optionalString isPy3k ''
-    rm $out/${python.sitePackages}/azure/__init__.py
-    rm $out/${python.sitePackages}/azure/mgmt/__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-maps/default.nix b/pkgs/development/python-modules/azure-mgmt-maps/default.nix
index b18c0267236..db87b81c838 100644
--- a/pkgs/development/python-modules/azure-mgmt-maps/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-maps/default.nix
@@ -26,10 +26,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  postInstall = lib.optionalString isPy3k ''
-    rm $out/${python.sitePackages}/azure/__init__.py
-    rm $out/${python.sitePackages}/azure/mgmt/__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-monitor/default.nix b/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
index 252760950e5..fb3bd445b78 100644
--- a/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-monitor";
-  version = "0.7.0";
+  version = "0.8.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1pprvk5255b6brbw73g0g13zygwa7a2px5x08wy3153rqlzan5l2";
+    sha256 = "09bhk6kpf1j1kgsyfdrfmfixrdj0iikx25dr1mh9dc6lci07i1cx";
   };
 
   propagatedBuildInputs = [
@@ -27,10 +27,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  postInstall = lib.optionalString isPy3k ''
-    rm -rf $out/${python.sitePackages}/azure/__init__.py
-    rm -rf $out/${python.sitePackages}/azure/mgmt/__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-msi/default.nix b/pkgs/development/python-modules/azure-mgmt-msi/default.nix
index 328e81c8fe7..2b1b65d60ae 100644
--- a/pkgs/development/python-modules/azure-mgmt-msi/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-msi/default.nix
@@ -26,11 +26,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  # still needed when overriding to previous versions
-  # E.g. azure-cli
-  postInstall = lib.optionalString isPy3k ''
-    rm -f $out/${python.sitePackages}/azure/{,mgmt/}__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-network/default.nix b/pkgs/development/python-modules/azure-mgmt-network/default.nix
index ac99b98f0e5..00480ac38bc 100644
--- a/pkgs/development/python-modules/azure-mgmt-network/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-network/default.nix
@@ -7,13 +7,13 @@
 }:
 
 buildPythonPackage rec {
-  version = "9.0.0";
+  version = "10.0.0";
   pname = "azure-mgmt-network";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "12bsdbh37xiz42hvrp8ghszyqkiali3pk50x44f3aip12pgx6kix";
+    sha256 = "3978da4641b3396d4a00c7ddd53d87ece7e7d45b5bc41a157639bdd2f2c5b9b3";
   };
 
   postInstall = if isPy3k then "" else ''
diff --git a/pkgs/development/python-modules/azure-mgmt-policyinsights/default.nix b/pkgs/development/python-modules/azure-mgmt-policyinsights/default.nix
index 37c7e46cbf3..ad8a2a0fbe2 100644
--- a/pkgs/development/python-modules/azure-mgmt-policyinsights/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-policyinsights/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-policyinsights";
-  version = "0.4.0";
+  version = "0.5.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1b69rz9wm0jvc54vx3b7h633x8gags51xwxrkp6myar40jggxw6g";
+    sha256 = "ed229e3845c477e88dde413825d4fba0d38b3a5ffab4e694c7d0da995f3db0f3";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-rdbms/default.nix b/pkgs/development/python-modules/azure-mgmt-rdbms/default.nix
index 6a7b6df2418..858bde76440 100644
--- a/pkgs/development/python-modules/azure-mgmt-rdbms/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-rdbms/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-rdbms";
-  version = "2.0.0";
+  version = "2.1.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "19z0lpq6bpidlflwa263y51549xgcg4m040k872m7fmy7jm2xcbb";
+    sha256 = "7826601507878e77f5d5cd805c6ad1d6483c375b545d5e9e1694b5a6c5e12fe3";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix b/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix
index 990f494eced..ece93025b57 100644
--- a/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-recoveryservicesbackup";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "13s2k4jl8570bj6jkqzm0w29z29rl7h5i7czd3kr6vqar5wj9xjd";
+    sha256 = "6355d9234d87422d57bf2ea8d1cc242463c203e4bb79b8930f22f29f4e025fa1";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-relay/default.nix b/pkgs/development/python-modules/azure-mgmt-relay/default.nix
index b60a82a7b1a..d3bf3f31fc2 100644
--- a/pkgs/development/python-modules/azure-mgmt-relay/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-relay/default.nix
@@ -24,11 +24,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  # still needed when overriding to previous versions
-  # E.g. azure-cli
-  postInstall = lib.optionalString isPy3k ''
-    rm -f $out/${python.sitePackages}/azure/{,mgmt/}__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-reservations/default.nix b/pkgs/development/python-modules/azure-mgmt-reservations/default.nix
index 5d13acb6ec8..3873f08e3ce 100644
--- a/pkgs/development/python-modules/azure-mgmt-reservations/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-reservations/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-reservations";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "16ycni3cjl9c0mv419gy5rgbrlg8zp0vnr6aj8z8p2ypdw6sgac3";
+    sha256 = "f65c1985a47e0ac55e7d5d9cc1bd5e95335a111566edc289d460aa2bc8f80991";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-servicefabric/default.nix b/pkgs/development/python-modules/azure-mgmt-servicefabric/default.nix
index 03084e11cf3..47df7f05ceb 100644
--- a/pkgs/development/python-modules/azure-mgmt-servicefabric/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-servicefabric/default.nix
@@ -26,11 +26,7 @@ buildPythonPackage rec {
     azure-mgmt-nspkg
   ];
 
-  # this is still needed for overriding to previous versions
-  # E.g azure-cli
-  postInstall = lib.optionalString isPy3k ''
-    rm -f $out/${python.sitePackages}/azure/{,mgmt/}__init__.py
-  '';
+  pythonNamespaces = [ "azure.mgmt" ];
 
   # has no tests
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-mgmt-sql/default.nix b/pkgs/development/python-modules/azure-mgmt-sql/default.nix
index a81f336df06..1b6649a36f2 100644
--- a/pkgs/development/python-modules/azure-mgmt-sql/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-sql/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-sql";
-  version = "0.17.0";
+  version = "0.18.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "1kp1wzcydgyc2mzkxigfv6rqzwzf3d0cnbqc6w7h907qbb4lw2r0";
+    sha256 = "99ca085eb523a5c27933060ccb04d7a6b60864f98d87bf5b63ac17d419b43445";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-mgmt-storage/default.nix b/pkgs/development/python-modules/azure-mgmt-storage/default.nix
index 0b2442b087d..e786731dcd0 100644
--- a/pkgs/development/python-modules/azure-mgmt-storage/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-storage/default.nix
@@ -7,22 +7,19 @@
 }:
 
 buildPythonPackage rec {
-  version = "7.2.0";
+  version = "9.0.0";
   pname = "azure-mgmt-storage";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "01ck1ankgr9ikvfghhdcs777yrl2j2p8cw9q8nfdrjp22lpchabl";
+    sha256 = "198r51av2rd1mr3q9j8jibhd14w0v8k59ipc3czsm4g1n44adgkl";
   };
 
-  postInstall = if isPy3k then "" else ''
-    echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
-    echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py
-  '';
-
   propagatedBuildInputs = [ azure-mgmt-common ];
 
+  pythonNamespaces = [ "azure.mgmt" ];
+
   # has no tests
   doCheck = false;
 
@@ -30,6 +27,6 @@ buildPythonPackage rec {
     description = "This is the Microsoft Azure Storage Management Client Library";
     homepage = "https://github.com/Azure/azure-sdk-for-python";
     license = licenses.mit;
-    maintainers = with maintainers; [ olcai mwilsoninsight ];
+    maintainers = with maintainers; [ jonringer olcai mwilsoninsight ];
   };
 }
diff --git a/pkgs/development/python-modules/azure-mgmt-web/default.nix b/pkgs/development/python-modules/azure-mgmt-web/default.nix
index ea6c1502123..3b25c93a1bd 100644
--- a/pkgs/development/python-modules/azure-mgmt-web/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-web/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "azure-mgmt-web";
-  version = "0.44.0";
+  version = "0.45.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "05dqakhfi301k2jnvccxdkigqvwnf9xz858pqg9vsri3dq69f1rw";
+    sha256 = "04wdb7vksjhcvv0gkjjr37lmb5ads5pr00cjac8r3szimr64zspr";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-multiapi-storage/default.nix b/pkgs/development/python-modules/azure-multiapi-storage/default.nix
index dc4a011e078..677b8bbeb12 100644
--- a/pkgs/development/python-modules/azure-multiapi-storage/default.nix
+++ b/pkgs/development/python-modules/azure-multiapi-storage/default.nix
@@ -16,11 +16,8 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ azure-common msrest msrestazure ];
 
-  # fix namespace issues
-  postInstall = ''
-    rm $out/${python.sitePackages}/azure/__init__.py
-    rm $out/${python.sitePackages}/azure/multiapi/__init__.py
-  '';
+  # fix namespace
+  pythonNamespaces = [ "azure.multiapi" ];
 
   # no tests included
   doCheck = false;
diff --git a/pkgs/development/python-modules/azure-storage-file-share/default.nix b/pkgs/development/python-modules/azure-storage-file-share/default.nix
index 78950d2971e..a4f8e161ba3 100644
--- a/pkgs/development/python-modules/azure-storage-file-share/default.nix
+++ b/pkgs/development/python-modules/azure-storage-file-share/default.nix
@@ -12,13 +12,13 @@
 
 buildPythonPackage rec {
   pname = "azure-storage-file-share";
-  version = "12.0.0";
+  version = "12.1.1";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "15f5vk3vd2amggqqznx186raak9wgr57j0l1p9qa62kcl10bs9lg";
+    sha256 = "661ed9669b9fbb3163899294d28f11f7c135336e1513aab6bd1ff9ef3c6febb3";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-storage/default.nix b/pkgs/development/python-modules/azure-storage/default.nix
index c199fbbeb36..e2037bb7d21 100644
--- a/pkgs/development/python-modules/azure-storage/default.nix
+++ b/pkgs/development/python-modules/azure-storage/default.nix
@@ -10,20 +10,21 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.20.3";
+  version = "0.36.0";
   pname = "azure-storage";
 
   src = fetchPypi {
     inherit pname version;
-    extension = "zip";
-    sha256 = "06bmw6k2000kln5jwk5r9bgcalqbyvqirmdh9gq4s6nb4fv3c0jb";
+    sha256 = "0pyasfxkin6j8j00qmky7d9cvpxgis4fi9bscgclj6yrpvf14qpv";
   };
 
   propagatedBuildInputs = [ azure-common dateutil requests ]
                             ++ pkgs.lib.optionals (!isPy3k) [ futures ];
 
-  postInstall = ''
-    echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
+  postPatch = ''
+    rm azure_bdist_wheel.py
+    substituteInPlace setup.cfg \
+      --replace "azure-namespace-package = azure-nspkg" ""
   '';
 
   meta = with pkgs.lib; {
diff --git a/pkgs/development/python-modules/bacpypes/default.nix b/pkgs/development/python-modules/bacpypes/default.nix
new file mode 100644
index 00000000000..141dbf241f2
--- /dev/null
+++ b/pkgs/development/python-modules/bacpypes/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, buildPythonPackage, fetchPypi, fetchFromGitHub
+, wheel, pytestCheckHook, pytestrunner }:
+
+buildPythonPackage rec {
+  version = "0.18.0";
+  pname = "bacpypes";
+
+  src = fetchFromGitHub {
+    owner = "JoelBender";
+    repo = "bacpypes";
+    rev = "${version}";
+    sha256 = "1nz0qi46z6n455mw2ppxgz091qh0irizlxpvkx7iw1l7f6mmgj0x";
+  };
+
+  propagatedBuildInputs = [ wheel ];
+
+  # Using pytes instead of setuptools check hook allows disabling specific tests
+  checkInputs = [ pytestCheckHook pytestrunner ];
+  dontUseSetuptoolsCheck = true;
+  disabledTests = [
+    # Test fails with a an error: AssertionError: assert 30 == 31
+    "test_recurring_task_5"
+  ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/JoelBender/bacpypes";
+    description = "BACpypes provides a BACnet application layer and network layer written in Python for daemons, scripting, and graphical interfaces.";
+    license = licenses.mit;
+    maintainers = with maintainers; [ bachp ];
+  };
+}
diff --git a/pkgs/development/python-modules/bayespy/default.nix b/pkgs/development/python-modules/bayespy/default.nix
index 210fbbe2176..b1cf3495934 100644
--- a/pkgs/development/python-modules/bayespy/default.nix
+++ b/pkgs/development/python-modules/bayespy/default.nix
@@ -1,5 +1,5 @@
 { stdenv, buildPythonPackage, fetchPypi, pythonOlder
-, pytest, glibcLocales
+, pytest, nose, glibcLocales
 , numpy, scipy, matplotlib, h5py }:
 
 buildPythonPackage rec {
@@ -15,7 +15,7 @@ buildPythonPackage rec {
     sha256 = "24e1327ce241a0113abf217fbaf41ac25e04f5a01f9ed606610f2f1f2d82d34f";
   };
 
-  checkInputs = [ pytest glibcLocales ];
+  checkInputs = [ pytest nose glibcLocales ];
   propagatedBuildInputs = [ numpy scipy matplotlib h5py ];
 
   checkPhase = ''
diff --git a/pkgs/development/python-modules/boltons/default.nix b/pkgs/development/python-modules/boltons/default.nix
index 6470b7da859..36361ac0118 100644
--- a/pkgs/development/python-modules/boltons/default.nix
+++ b/pkgs/development/python-modules/boltons/default.nix
@@ -2,21 +2,21 @@
 
 buildPythonPackage rec {
   pname = "boltons";
-  version = "20.0.0";
+  version = "20.1.0";
 
   # No tests in PyPi Tarball
   src = fetchFromGitHub {
     owner = "mahmoud";
     repo = "boltons";
     rev = version;
-    sha256 = "0scdslqi28b899i42m4c9pvhwv3kkw4wpi3n9zm5n64ggn5ngfbz";
+    sha256 = "0mbxc2n10mlmpbwhg0byddl1i0s6rlrr6z9xm8zzmkv62136irqh";
   };
 
   checkInputs = [ pytest ];
   checkPhase = "pytest tests";
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/mahmoud/boltons;
+    homepage = "https://github.com/mahmoud/boltons";
     description = "220+ constructs, recipes, and snippets extending (and relying on nothing but) the Python standard library";
     longDescription = ''
       Boltons is a set of over 220 BSD-licensed, pure-Python utilities
diff --git a/pkgs/development/python-modules/bpython/default.nix b/pkgs/development/python-modules/bpython/default.nix
index a91be0e13dd..73ce843cf01 100644
--- a/pkgs/development/python-modules/bpython/default.nix
+++ b/pkgs/development/python-modules/bpython/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "bpython";
-  version = "0.18";
+  version = "0.19";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "56cc20dbe568c98c81de4990fddf5862c0d8d3ab0ad1cf7057988abc5f7686c2";
+    sha256 = "1764ikgj24jjq46s50apwkydqvy5a13adb2nbszk8kbci6df0v27";
   };
 
   propagatedBuildInputs = [ curtsies greenlet pygments requests urwid ];
diff --git a/pkgs/development/python-modules/bravia-tv/default.nix b/pkgs/development/python-modules/bravia-tv/default.nix
new file mode 100644
index 00000000000..2df937f4232
--- /dev/null
+++ b/pkgs/development/python-modules/bravia-tv/default.nix
@@ -0,0 +1,28 @@
+{ lib, fetchFromGitHub, buildPythonPackage, isPy27, requests }:
+
+buildPythonPackage rec {
+  pname = "bravia-tv";
+  version = "1.0.1";
+  disabled = isPy27;
+
+  src = fetchFromGitHub {
+    owner = "dcnielsen90";
+    repo = "python-bravia-tv";
+    rev = "v${version}";
+    sha256 = "0jlrin5qw3ny2r961y5divd5xa9giprxhhxdc84rjlq9qdmnsk68";
+  };
+
+  propagatedBuildInputs = [ requests ];
+
+  # package does not include tests
+  doCheck = false;
+
+  pythonImportsCheck = [ "bravia_tv" ];
+
+  meta = with lib; {
+    homepage = "https://github.com/dcnielsen90/python-bravia-tv";
+    description = "Python library for Sony Bravia TV remote control";
+    license = licenses.mit;
+    maintainers = with maintainers; [ colemickens ];
+  };
+}
diff --git a/pkgs/development/python-modules/carbon/default.nix b/pkgs/development/python-modules/carbon/default.nix
index 427108a9391..71a7174fb23 100644
--- a/pkgs/development/python-modules/carbon/default.nix
+++ b/pkgs/development/python-modules/carbon/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "carbon";
-  version = "1.1.6";
+  version = "1.1.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "9ecda1469e497e3fed346b23ac94fd576e1bd9962677ab88975f4f598186e851";
+    sha256 = "08ndphpcbdx2ab4f5jsn2y4l5p55h9wscbg7clhbyyh03r5hianr";
   };
 
   # Carbon-s default installation is /opt/graphite. This env variable ensures
diff --git a/pkgs/development/python-modules/cbor2/default.nix b/pkgs/development/python-modules/cbor2/default.nix
index 811ecef1f86..3bf660bd098 100644
--- a/pkgs/development/python-modules/cbor2/default.nix
+++ b/pkgs/development/python-modules/cbor2/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "cbor2";
-  version = "5.0.1";
+  version = "5.1.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1fid6li95jx9c3v83v8c2c8lb03jgirkk9mjmck30yxcwmlxp6a2";
+    sha256 = "1ai1i0wydxfbdakqnrlpgdk4l2ps7gw0r9nihv9p2jgyqbl13kj3";
   };
 
   nativeBuildInputs = [ setuptools_scm ];
@@ -16,7 +16,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Pure Python CBOR (de)serializer with extensive tag support";
-    homepage = https://github.com/agronholm/cbor2;
+    homepage = "https://github.com/agronholm/cbor2";
     license = licenses.mit;
     maintainers = with maintainers; [ taneb ];
   };
diff --git a/pkgs/development/python-modules/cchardet/default.nix b/pkgs/development/python-modules/cchardet/default.nix
index 1fb506682ba..5256d605049 100644
--- a/pkgs/development/python-modules/cchardet/default.nix
+++ b/pkgs/development/python-modules/cchardet/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "cchardet";
-  version = "2.1.5";
+  version = "2.1.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "240efe3f255f916769458343840b9c6403cf3192720bc5129792cbcb88bf72fb";
+    sha256 = "1cs6y59qhbal8fgbyjk2lpjykh8kfjhq16clfssylsddb4hgnsmp";
   };
 
   checkInputs = [ nose ];
@@ -21,7 +21,7 @@ buildPythonPackage rec {
 
   meta = {
     description = "High-speed universal character encoding detector";
-    homepage = https://github.com/PyYoshi/cChardet;
+    homepage = "https://github.com/PyYoshi/cChardet";
     license = lib.licenses.mpl11;
     maintainers = with lib.maintainers; [ ivan ];
   };
diff --git a/pkgs/development/python-modules/cddb/default.nix b/pkgs/development/python-modules/cddb/default.nix
index f40ff08fcf4..86c6e8b0d80 100644
--- a/pkgs/development/python-modules/cddb/default.nix
+++ b/pkgs/development/python-modules/cddb/default.nix
@@ -5,13 +5,14 @@
 }:
 
 buildPythonPackage rec {
-  name = "CDDB-1.4";
+  pname = "CDDB";
+  version = "1.4";
   disabled = isPy3k;
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ pkgs.darwin.apple_sdk.frameworks.IOKit ];
 
   src = pkgs.fetchurl {
-    url = "http://cddb-py.sourceforge.net/${name}.tar.gz";
+    url = "http://cddb-py.sourceforge.net/${pname}-${version}.tar.gz";
     sha256 = "098xhd575ibvdx7i3dny3lwi851yxhjg2hn5jbbgrwj833rg5l5w";
   };
 
diff --git a/pkgs/development/python-modules/cgroup-utils/default.nix b/pkgs/development/python-modules/cgroup-utils/default.nix
index 7496e7e1fcc..a94b4439250 100644
--- a/pkgs/development/python-modules/cgroup-utils/default.nix
+++ b/pkgs/development/python-modules/cgroup-utils/default.nix
@@ -1,7 +1,7 @@
 { stdenv, buildPythonPackage, fetchFromGitHub, pep8, nose }:
 
 buildPythonPackage rec {
-  version = "0.6";
+  version = "0.8";
   pname = "cgroup-utils";
 
   buildInputs = [ pep8 nose ];
@@ -16,7 +16,7 @@ buildPythonPackage rec {
     owner = "peo3";
     repo = "cgroup-utils";
     rev = "v${version}";
-    sha256 = "1ck0aijzrg9xf6hjdxnynkapnyxw0y385jb0q7wyq4jf77ayfszc";
+    sha256 = "0qnbn8cnq8m14s8s1hcv25xjd55dyb6yy54l5vc7sby5xzzp11fq";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/chalice/default.nix b/pkgs/development/python-modules/chalice/default.nix
index 62f3731632d..f99905950c9 100644
--- a/pkgs/development/python-modules/chalice/default.nix
+++ b/pkgs/development/python-modules/chalice/default.nix
@@ -19,11 +19,11 @@
 
 buildPythonPackage rec {
   pname = "chalice";
-  version = "1.12.0";
+  version = "1.13.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f8f929f26df77285a202fb93174400230f8912c5b9c1fb061c7836a78413e325";
+    sha256 = "07xzpbz7znr853xm6p27lkrcgdib3ym5dlwys0n4zvkjm5x7jn2a";
   };
 
   checkInputs = [ watchdog pytest hypothesis mock ];
@@ -58,7 +58,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python Serverless Microframework for AWS";
-    homepage = https://github.com/aws/chalice;
+    homepage = "https://github.com/aws/chalice";
     license = licenses.asl20;
     maintainers = [ maintainers.costrouc ];
   };
diff --git a/pkgs/development/python-modules/cirq/default.nix b/pkgs/development/python-modules/cirq/default.nix
index d6109e8aaba..a671f0e68e8 100644
--- a/pkgs/development/python-modules/cirq/default.nix
+++ b/pkgs/development/python-modules/cirq/default.nix
@@ -79,7 +79,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "A framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.";
-    homepage = "http://github.com/quantumlib/cirq";
+    homepage = "https://github.com/quantumlib/cirq";
     license = licenses.asl20;
     maintainers = with maintainers; [ drewrisinger ];
   };
diff --git a/pkgs/development/python-modules/ciso8601/default.nix b/pkgs/development/python-modules/ciso8601/default.nix
new file mode 100644
index 00000000000..d0de4b320e8
--- /dev/null
+++ b/pkgs/development/python-modules/ciso8601/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pytz
+, unittest2
+, isPy27
+}:
+
+buildPythonPackage rec {
+  pname = "ciso8601";
+  version = "2.1.3";
+
+  src = fetchFromGitHub {
+    owner = "closeio";
+    repo = "ciso8601";
+    rev = "v${version}";
+    sha256 = "0g1aiyc1ayh0rnibyy416m5mmck38ksgdm3jsy0z3rxgmgb24951";
+  };
+
+  checkInputs = [
+    pytz
+  ] ++ lib.optional (isPy27) unittest2;
+
+  meta = with lib; {
+    description = "Fast ISO8601 date time parser for Python written in C";
+    homepage = "https://github.com/closeio/ciso8601";
+    license = licenses.mit;
+    maintainers = [ maintainers.mic92 ];
+  };
+}
diff --git a/pkgs/development/python-modules/cliff/default.nix b/pkgs/development/python-modules/cliff/default.nix
index 46ac5be03ce..00da74929a4 100644
--- a/pkgs/development/python-modules/cliff/default.nix
+++ b/pkgs/development/python-modules/cliff/default.nix
@@ -17,11 +17,11 @@
 
 buildPythonPackage rec {
   pname = "cliff";
-  version = "2.17.0";
+  version = "3.1.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f5a1c6b32047aa0d272398d311fd711d41dd5e1cd5195ebe36ebb47f464416fa";
+    sha256 = "0j9q6725226hdhdyy9b0qfjngdj35d3y7fxbmfxpr36ksbh0x6sj";
   };
 
   propagatedBuildInputs = [
@@ -49,7 +49,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Command Line Interface Formulation Framework";
-    homepage = https://docs.openstack.org/cliff/latest/;
+    homepage = "https://docs.openstack.org/cliff/latest/";
     license = licenses.asl20;
     maintainers = [ maintainers.costrouc ];
   };
diff --git a/pkgs/development/python-modules/clikit/default.nix b/pkgs/development/python-modules/clikit/default.nix
index 94f3fa08b13..054b6edee6d 100644
--- a/pkgs/development/python-modules/clikit/default.nix
+++ b/pkgs/development/python-modules/clikit/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "clikit";
-  version = "0.4.1";
+  version = "0.4.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "8ae4766b974d7b1983e39d501da9a0aadf118a907a0c9b50714d027c8b59ea81";
+    sha256 = "0glppxx0pyppjcigzs8h16srlbxb6nci0282xfy3ayvwbq8pwbbf";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/cmd2/default.nix b/pkgs/development/python-modules/cmd2/default.nix
index a2e5862f540..13f68d6a392 100644
--- a/pkgs/development/python-modules/cmd2/default.nix
+++ b/pkgs/development/python-modules/cmd2/default.nix
@@ -6,11 +6,11 @@
 }:
 buildPythonPackage rec {
   pname = "cmd2";
-  version = "1.0.0";
+  version = "1.0.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "sha256-GtSqmkWCHX/1t31sny3f2ek8uTS1oEMSM1rRXG9DuFI=";
+    sha256 = "0fjwc095y97n3a7jxl9pk4h1i5hghas7y6zhgprl5lv5ixnicffk";
   };
 
   LC_ALL="en_US.UTF-8";
@@ -54,7 +54,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "Enhancements for standard library's cmd module";
-    homepage = https://github.com/python-cmd2/cmd2;
+    homepage = "https://github.com/python-cmd2/cmd2";
     maintainers = with maintainers; [ teto ];
   };
 }
diff --git a/pkgs/development/python-modules/cocotb/default.nix b/pkgs/development/python-modules/cocotb/default.nix
index 9bde31d1f13..c0148effdf9 100644
--- a/pkgs/development/python-modules/cocotb/default.nix
+++ b/pkgs/development/python-modules/cocotb/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "cocotb";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "0gwd79zm7196fhnbzbdpyvgzsfjfzl3pmc5hh27h7hckfpxzj9yw";
+    sha256 = "118wp5sjsl99hj8pqw5n3v2lry9r949p2hv4l92p086q1n0axxk3";
   };
 
   propagatedBuildInputs = [
@@ -26,7 +26,7 @@ buildPythonPackage rec {
       substituteInPlace $f --replace 'shell which' 'shell command -v'
     done
 
-    # This can probably be removed in the next update after 1.3.0
+    # This can probably be removed in the next update after 1.3.1
     substituteInPlace cocotb/share/makefiles/Makefile.inc --replace "-Werror" ""
   '';
 
diff --git a/pkgs/development/python-modules/colorlog/default.nix b/pkgs/development/python-modules/colorlog/default.nix
index edcd040b066..aa39588f313 100644
--- a/pkgs/development/python-modules/colorlog/default.nix
+++ b/pkgs/development/python-modules/colorlog/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "colorlog";
-  version = "4.0.2";
+  version = "4.1.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "3cf31b25cbc8f86ec01fef582ef3b840950dea414084ed19ab922c8b493f9b42";
+    sha256 = "1lpk8zmfv8vz090h5d0hzb4n39wgasxdd3x3bpn3v1x1n9dfzaih";
   };
 
   checkInputs = [ pytest ];
@@ -17,7 +17,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "Log formatting with colors";
-    homepage = https://github.com/borntyping/python-colorlog;
+    homepage = "https://github.com/borntyping/python-colorlog";
     license = licenses.mit;
     maintainers = with maintainers; [ dotlambda ];
   };
diff --git a/pkgs/development/python-modules/cufflinks/default.nix b/pkgs/development/python-modules/cufflinks/default.nix
index 315c28c74ca..4c2db1f5214 100644
--- a/pkgs/development/python-modules/cufflinks/default.nix
+++ b/pkgs/development/python-modules/cufflinks/default.nix
@@ -4,6 +4,7 @@
 , ipython
 , ipywidgets
 , pytest
+, nose
 , numpy
 , pandas
 , six
@@ -30,7 +31,7 @@ buildPythonPackage rec {
     statsmodels
   ];
 
-  checkInputs = [ pytest ];
+  checkInputs = [ pytest nose ];
 
   # ignore tests which are incompatible with pandas>=1.0
   # https://github.com/santosjorge/cufflinks/issues/236
diff --git a/pkgs/development/python-modules/cvxpy/default.nix b/pkgs/development/python-modules/cvxpy/default.nix
index 2a77f45217a..ccb51b059d6 100644
--- a/pkgs/development/python-modules/cvxpy/default.nix
+++ b/pkgs/development/python-modules/cvxpy/default.nix
@@ -29,7 +29,9 @@ buildPythonPackage rec {
     cvxopt
     ecos
     multiprocess
+    numpy
     osqp
+    scipy
     scs
     six
   ];
@@ -39,11 +41,11 @@ buildPythonPackage rec {
     nosetests
   '';
 
-  meta = {
+  meta = with lib; {
     description = "A domain-specific language for modeling convex optimization problems in Python.";
     homepage = "https://www.cvxpy.org/";
     downloadPage = "https://github.com/cvxgrp/cvxpy/";
-    license = lib.licenses.asl20;
-    maintainers = with lib.maintainers; [ drewrisinger ];
+    license = licenses.asl20;
+    maintainers = with maintainers; [ drewrisinger ];
   };
 }
diff --git a/pkgs/development/python-modules/dash-core-components/default.nix b/pkgs/development/python-modules/dash-core-components/default.nix
index 4f1e26e42cb..1a1e3db46ff 100644
--- a/pkgs/development/python-modules/dash-core-components/default.nix
+++ b/pkgs/development/python-modules/dash-core-components/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "dash_core_components";
-  version = "1.8.1";
+  version = "1.9.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0qqf51mphv1pqqc2ff50rkbw44sp9liifg0mg7xkh41sgnv032cs";
+    sha256 = "1wr6989hq7q9vyh1qqdpbp8igk9rfca4phfpaim3nnk4swvm5m75";
   };
 
   # No tests in archive
diff --git a/pkgs/development/python-modules/dash-html-components/default.nix b/pkgs/development/python-modules/dash-html-components/default.nix
index 4e9ef39b411..3a07d2f9ef0 100644
--- a/pkgs/development/python-modules/dash-html-components/default.nix
+++ b/pkgs/development/python-modules/dash-html-components/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "dash_html_components";
-  version = "1.0.2";
+  version = "1.0.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "166agkrl52j5qin2npsdl2a96jccxz5f1jvcz0hxsnjg0ix0k4l9";
+    sha256 = "1fj5wlh6x9nngmz1rzb5xazc5pl34yrp4kf7a3zgy0dniap59yys";
   };
 
   # No tests in archive
diff --git a/pkgs/development/python-modules/dash-renderer/default.nix b/pkgs/development/python-modules/dash-renderer/default.nix
index d009ce192d7..348deba7123 100644
--- a/pkgs/development/python-modules/dash-renderer/default.nix
+++ b/pkgs/development/python-modules/dash-renderer/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "dash_renderer";
-  version = "1.2.4";
+  version = "1.3.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1w6mpmvfj6nv5rdzikwc7wwhrgscbh50d0azzydhsa9jccxvkakl";
+    sha256 = "07nyajjc3209ha2nbvk43sh5bnslwb2hs9wn8q5dpfngsc96wr9g";
   };
 
   # No tests in archive
diff --git a/pkgs/development/python-modules/dash-table/default.nix b/pkgs/development/python-modules/dash-table/default.nix
index 3a0e0c40176..3ea04666249 100644
--- a/pkgs/development/python-modules/dash-table/default.nix
+++ b/pkgs/development/python-modules/dash-table/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "dash_table";
-  version = "4.6.1";
+  version = "4.6.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0xwwkp7zsmrcnl3fswm5f319cxk7hk4dzacvfsarll2b47rmm434";
+    sha256 = "1hn1yjz5ig2kzkk0wkr75q3l4lrfbnsh0kxzlld9sfn69d1vvsjw";
   };
 
   # No tests in archive
diff --git a/pkgs/development/python-modules/dash/default.nix b/pkgs/development/python-modules/dash/default.nix
index 72ae7104536..83632ff6db6 100644
--- a/pkgs/development/python-modules/dash/default.nix
+++ b/pkgs/development/python-modules/dash/default.nix
@@ -16,13 +16,13 @@
 
 buildPythonPackage rec {
   pname = "dash";
-  version = "1.9.1";
+  version = "1.10.0";
 
   src = fetchFromGitHub {
     owner = "plotly";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0lqvcq7xaw5l1mwmgfdhr9jspq8jzkxf77862k0ca4d9zglkqp4z";
+    sha256 = "18rrysfhmjfzb5b3n8fjbwk755p4slbb8fh9myq4qp76v00lfpnh";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/datadog/default.nix b/pkgs/development/python-modules/datadog/default.nix
index 204a14eb0da..d08d0903886 100644
--- a/pkgs/development/python-modules/datadog/default.nix
+++ b/pkgs/development/python-modules/datadog/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "datadog";
-  version = "0.34.1";
+  version = "0.35.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1msi3wm0khmzh0ad7lwd5gigmqrxj25hd4w0qrsarihmd4ywrn1v";
+    sha256 = "0qpy6mg9gfjxvjms0aaglzayhmdds4agv0lh05g2mkfw620nm8zl";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/datasette/default.nix b/pkgs/development/python-modules/datasette/default.nix
index 81b07eeacb4..13d105cae6b 100644
--- a/pkgs/development/python-modules/datasette/default.nix
+++ b/pkgs/development/python-modules/datasette/default.nix
@@ -1,49 +1,52 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, aiofiles
 , click
 , click-default-group
+, janus
 , jinja2
 , hupper
 , pint
 , pluggy
-, pytest
+, uvicorn
+# Check Inputs
+, pytestCheckHook
 , pytestrunner
 , pytest-asyncio
 , black
 , aiohttp
 , beautifulsoup4
-, uvicorn
 , asgiref
-, aiofiles
 }:
 
 buildPythonPackage rec {
   pname = "datasette";
-  version = "0.35";
+  version = "0.39";
 
   src = fetchFromGitHub {
     owner = "simonw";
     repo = "datasette";
     rev = version;
-    sha256 = "0v6af7agg27lapz1nbab07595v4hl2x5wm2f03drj81f7pm8y7hc";
+    sha256 = "07d46512bc9sdan9lv39sf1bwlf7vf1bfhcsm825vk7sv7g9kczd";
   };
 
   nativeBuildInputs = [ pytestrunner ];
 
   propagatedBuildInputs = [
+    aiofiles
     click
     click-default-group
+    janus
     jinja2
     hupper
     pint
     pluggy
     uvicorn
-    aiofiles
   ];
 
   checkInputs = [
-    pytest
+    pytestCheckHook
     pytest-asyncio
     aiohttp
     beautifulsoup4
@@ -53,24 +56,32 @@ buildPythonPackage rec {
 
   postConfigure = ''
     substituteInPlace setup.py \
-      --replace "click-default-group==1.2" "click-default-group" \
-      --replace "Sanic==0.7.0" "Sanic" \
-      --replace "hupper==1.0" "hupper" \
-      --replace "pint~=0.8.1" "pint" \
-      --replace "pluggy~=0.12.0" "pint" \
-      --replace "Jinja2==2.10.1" "Jinja2" \
-      --replace "uvicorn~=0.8.4" "uvicorn"
+      --replace "click~=7.1.1" "click" \
+      --replace "click-default-group~=1.2.2" "click-default-group" \
+      --replace "Jinja2~=2.10.3" "Jinja2" \
+      --replace "hupper~=1.9" "hupper" \
+      --replace "pint~=0.9" "pint" \
+      --replace "pluggy~=0.13.0" "pint" \
+      --replace "uvicorn~=0.11" "uvicorn" \
+      --replace "aiofiles~=0.4.0" "aiofiles" \
+      --replace "janus~=0.4.0" "janus" \
+      --replace "PyYAML~=5.3" "PyYAML"
   '';
 
   # many tests require network access
   # test_black fails on darwin
-  checkPhase = ''
-    pytest --ignore tests/test_api.py \
-           --ignore tests/test_csv.py \
-           --ignore tests/test_html.py \
-           --ignore tests/test_black.py \
-           -k 'not facet'
-  '';
+  dontUseSetuptoolsCheck = true;
+  pytestFlagsArray = [
+    "--ignore=tests/test_api.py"
+    "--ignore=tests/test_csv.py"
+    "--ignore=tests/test_html.py"
+    "--ignore=tests/test_docs.py"
+    "--ignore=tests/test_black.py"
+  ];
+  disabledTests = [
+    "facet"
+    "_invalid_database" # checks error message when connecting to invalid database
+  ];
 
   meta = with lib; {
     description = "An instant JSON API for your SQLite databases";
diff --git a/pkgs/development/python-modules/dcmstack/default.nix b/pkgs/development/python-modules/dcmstack/default.nix
new file mode 100644
index 00000000000..f06e361dc71
--- /dev/null
+++ b/pkgs/development/python-modules/dcmstack/default.nix
@@ -0,0 +1,39 @@
+{ stdenv
+, buildPythonPackage
+, fetchFromGitHub
+, pythonAtLeast
+, nose
+, nibabel
+, pydicom
+}:
+
+buildPythonPackage rec {
+  pname = "dcmstack";
+  version = "0.8";
+
+  disabled = pythonAtLeast "3.8";
+  # https://github.com/moloney/dcmstack/issues/67
+
+  src = fetchFromGitHub {
+    owner = "moloney";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1n24pp3rqz7ss1z6276fxynnppraxadbl3b9p8ijrcqnpzbzih7p";
+  };
+
+  propagatedBuildInputs = [ nibabel pydicom ];
+
+  checkInputs = [ nose ];
+  checkPhase = ''
+    runHook preCheck
+    nosetests
+    runHook postCheck
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/moloney/dcmstack";
+    description = "DICOM to Nifti conversion preserving metadata";
+    license = licenses.mit;
+    maintainers = with maintainers; [ bcdarwin ];
+  };
+}
diff --git a/pkgs/development/python-modules/deap/default.nix b/pkgs/development/python-modules/deap/default.nix
index 9c49057398c..5a09c42a9bb 100644
--- a/pkgs/development/python-modules/deap/default.nix
+++ b/pkgs/development/python-modules/deap/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildPythonPackage, fetchPypi, python, numpy, matplotlib }:
+{ stdenv, buildPythonPackage, fetchPypi, python, numpy, matplotlib, nose }:
 
 buildPythonPackage rec {
   pname = "deap";
@@ -11,6 +11,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ numpy matplotlib ];
 
+  checkInputs = [ nose ];
   checkPhase = ''
     ${python.interpreter} setup.py nosetests --verbosity=3
   '';
diff --git a/pkgs/development/python-modules/denonavr/default.nix b/pkgs/development/python-modules/denonavr/default.nix
index e33382ffd01..643556d8793 100644
--- a/pkgs/development/python-modules/denonavr/default.nix
+++ b/pkgs/development/python-modules/denonavr/default.nix
@@ -3,13 +3,13 @@
 
 buildPythonPackage rec {
   pname = "denonavr";
-  version = "0.7.12";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     owner = "scarface-4711";
     repo = "denonavr";
     rev = version;
-    sha256 = "1i7r0f8ldxpy9vkwjla6rfkaq37071d36zfhb1dwm9jgp6ggi34m";
+    sha256 = "12g9w5674fmyf3f4plbhvpxpyhzw32pzwl0hvwswzrc2823xl6vx";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/pkgs/development/python-modules/deprecated/default.nix b/pkgs/development/python-modules/deprecated/default.nix
index 2af9d020c95..6c338ce6dc2 100644
--- a/pkgs/development/python-modules/deprecated/default.nix
+++ b/pkgs/development/python-modules/deprecated/default.nix
@@ -3,11 +3,11 @@
 
 buildPythonPackage rec {
   pname = "Deprecated";
-  version = "1.2.7";
+  version = "1.2.8";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "408038ab5fdeca67554e8f6742d1521cd3cd0ee0ff9d47f29318a4f4da31c308";
+    sha256 = "029mr75wgah0z1ilsf3vf3dmjn65y4fy1jgq5qny2qsb9hvwbblw";
   };
 
   propagatedBuildInputs = [ wrapt ];
diff --git a/pkgs/development/python-modules/deskcon/default.nix b/pkgs/development/python-modules/deskcon/default.nix
index 2e205ce6955..218f843e11a 100644
--- a/pkgs/development/python-modules/deskcon/default.nix
+++ b/pkgs/development/python-modules/deskcon/default.nix
@@ -7,7 +7,8 @@
 }:
 
 buildPythonPackage {
-  name = "deskcon-0.3";
+  pname = "deskcon";
+  version = "0.3";
   disabled = isPy3k;
 
   src = pkgs.fetchFromGitHub {
diff --git a/pkgs/development/python-modules/dipy/default.nix b/pkgs/development/python-modules/dipy/default.nix
new file mode 100644
index 00000000000..939f0912fe1
--- /dev/null
+++ b/pkgs/development/python-modules/dipy/default.nix
@@ -0,0 +1,68 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, isPy27
+, packaging
+, pytest
+, cython
+, numpy
+, scipy
+, h5py
+, nibabel
+}:
+
+buildPythonPackage rec {
+  pname = "dipy";
+  version = "1.1.1";
+
+  disabled = isPy27;
+
+  src = fetchFromGitHub {
+    owner  = "dipy";
+    repo   = pname;
+    rev    = version;
+    sha256 = "08abx0f4li6ya62ilc59miw4mk6wndizahyylxhgcrpacb6ydw28";
+  };
+
+  nativeBuildInputs = [ cython packaging ];
+  propagatedBuildInputs = [
+    numpy
+    scipy
+    h5py
+    nibabel
+  ];
+
+  checkInputs = [ pytest ];
+
+  # disable tests for now due to:
+  #   - some tests require data download (see dipy/dipy/issues/2092);
+  #   - running the tests manually causes a multiprocessing hang;
+  #   - import weirdness when running the tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "dipy"
+    "dipy.core"
+    "dipy.direction"
+    "dipy.tracking"
+    "dipy.reconst"
+    "dipy.io"
+    "dipy.viz"
+    "dipy.boots"
+    "dipy.data"
+    "dipy.utils"
+    "dipy.segment"
+    "dipy.sims"
+    "dipy.stats"
+    "dipy.denoise"
+    "dipy.workflows"
+    "dipy.nn"
+  ];
+
+  meta = with lib; {
+    homepage = "https://dipy.org/";
+    description = "Diffusion imaging toolkit for Python";
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ bcdarwin ];
+  };
+}
diff --git a/pkgs/development/python-modules/distributed/default.nix b/pkgs/development/python-modules/distributed/default.nix
index 951593bac97..d85b4496e22 100644
--- a/pkgs/development/python-modules/distributed/default.nix
+++ b/pkgs/development/python-modules/distributed/default.nix
@@ -3,7 +3,6 @@
 , fetchPypi
 , pytest
 , pytest-repeat
-, pytest-faulthandler
 , pytest-timeout
 , mock
 , joblib
@@ -36,7 +35,7 @@ buildPythonPackage rec {
     sha256 = "d37a5c5be992f3b16db24b54d2801cbe370990fbc63089c6e7ef40d6f03cf5dd";
   };
 
-  checkInputs = [ pytest pytest-repeat pytest-faulthandler pytest-timeout mock joblib ];
+  checkInputs = [ pytest pytest-repeat pytest-timeout mock joblib ];
   propagatedBuildInputs = [
       click cloudpickle dask msgpack psutil six
       sortedcontainers tblib toolz tornado zict pyyaml mpi4py bokeh
@@ -54,7 +53,7 @@ buildPythonPackage rec {
 
   meta = {
     description = "Distributed computation in Python.";
-    homepage = https://distributed.readthedocs.io/en/latest/;
+    homepage = "https://distributed.readthedocs.io/en/latest/";
     license = lib.licenses.bsd3;
     platforms = lib.platforms.x86; # fails on aarch64
     maintainers = with lib.maintainers; [ teh costrouc ];
diff --git a/pkgs/development/python-modules/django-auth-ldap/default.nix b/pkgs/development/python-modules/django-auth-ldap/default.nix
index f0de263f130..9f50a7ea22b 100644
--- a/pkgs/development/python-modules/django-auth-ldap/default.nix
+++ b/pkgs/development/python-modules/django-auth-ldap/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "django-auth-ldap";
-  version = "2.1.0";
+  version = "2.1.1";
   disabled = isPy27;
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5f48232c85ddfa33e3573153e6080526ac2eef5e7ec9cf42b5c4ba3c62afb96d";
+    sha256 = "1j1fwinbkr4khn9i869r22jfdgw2kli0jqrz5shyd36jllsvrfzs";
   };
 
   propagatedBuildInputs = [ ldap django ]; 
@@ -22,7 +22,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "Django authentication backend that authenticates against an LDAP service";
-    homepage = https://github.com/django-auth-ldap/django-auth-ldap;
+    homepage = "https://github.com/django-auth-ldap/django-auth-ldap";
     license = licenses.bsd2;
     maintainers = with maintainers; [ mmai ];
     platforms = platforms.linux;
diff --git a/pkgs/development/python-modules/django-mailman3/default.nix b/pkgs/development/python-modules/django-mailman3/default.nix
index 01ae357677b..bcb39633f7e 100644
--- a/pkgs/development/python-modules/django-mailman3/default.nix
+++ b/pkgs/development/python-modules/django-mailman3/default.nix
@@ -4,11 +4,11 @@
 
 buildPythonPackage rec {
   pname = "django-mailman3";
-  version = "1.3.1";
+  version = "1.3.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "b05cf04b2c36916d15b78e24610002206529f1441e2632253a26b2db6bfd3b27";
+    sha256 = "1vq5qa136h4rz4hjznnk6y8l443i41yh4w4wxg20f9b059xrsld1";
   };
 
   propagatedBuildInputs = [
@@ -23,7 +23,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "Django library for Mailman UIs";
-    homepage = https://gitlab.com/mailman/django-mailman3;
+    homepage = "https://gitlab.com/mailman/django-mailman3";
     license = licenses.gpl3;
     maintainers = with maintainers; [ globin peti ];
   };
diff --git a/pkgs/development/python-modules/django-multiselectfield/default.nix b/pkgs/development/python-modules/django-multiselectfield/default.nix
index a4dcb57fe43..3561f1d8c1c 100644
--- a/pkgs/development/python-modules/django-multiselectfield/default.nix
+++ b/pkgs/development/python-modules/django-multiselectfield/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "django-multiselectfield";
-  version = "0.1.11";
+  version = "0.1.12";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "043fa1aaddceb9b170c64c0745dc3a059165dcbc74946a434340778f63efa3c2";
+    sha256 = "1ygra8s394d1szgj7yawlca17q08hygsrzvq2k3k48zvd0awg96h";
   };
 
   propagatedBuildInputs = [ django ];
diff --git a/pkgs/development/python-modules/doc8/default.nix b/pkgs/development/python-modules/doc8/default.nix
index 307496cc65c..f7e620f491c 100644
--- a/pkgs/development/python-modules/doc8/default.nix
+++ b/pkgs/development/python-modules/doc8/default.nix
@@ -7,6 +7,7 @@
 , chardet
 , stevedore
 , restructuredtext_lint
+, pygments
 }:
 
 buildPythonPackage rec {
@@ -19,7 +20,14 @@ buildPythonPackage rec {
   };
 
   buildInputs = [ pbr ];
-  propagatedBuildInputs = [ docutils six chardet stevedore restructuredtext_lint ];
+  propagatedBuildInputs = [
+    docutils
+    six
+    chardet
+    stevedore
+    restructuredtext_lint
+    pygments
+  ];
 
   doCheck = false;
 
diff --git a/pkgs/development/python-modules/docker/default.nix b/pkgs/development/python-modules/docker/default.nix
index 701a211a6bb..a31ba7c69c0 100644
--- a/pkgs/development/python-modules/docker/default.nix
+++ b/pkgs/development/python-modules/docker/default.nix
@@ -18,9 +18,7 @@ buildPythonPackage rec {
     sha256 = "0bkj1xfp6mnvk1i9hl5awsmwi07q6iwwsjznd7kvrx5m19i6dbnx";
   };
 
-  nativeBuildInputs = [
-    pytestCheckHook
-  ] ++ lib.optional isPy27 mock;
+  nativeBuildInputs = lib.optional isPy27 mock;
 
   propagatedBuildInputs = [
     paramiko
@@ -29,12 +27,15 @@ buildPythonPackage rec {
     websocket_client
   ] ++ lib.optional isPy27 backports_ssl_match_hostname;
 
+  checkInputs = [
+    pytestCheckHook
+  ];
+
   pytestFlagsArray = [ "tests/unit" ];
   # Deselect socket tests on Darwin because it hits the path length limit for a Unix domain socket
   disabledTests = lib.optionals stdenv.isDarwin [ "stream_response" "socket_file" ];
 
-  # skip setuptoolsCheckPhase
-  doCheck = false;
+  dontUseSetuptoolsCheck = true;
 
   meta = with lib; {
     description = "An API client for docker written in Python";
diff --git a/pkgs/development/python-modules/dropbox/default.nix b/pkgs/development/python-modules/dropbox/default.nix
index ade485c91dc..3ca9d59e27f 100644
--- a/pkgs/development/python-modules/dropbox/default.nix
+++ b/pkgs/development/python-modules/dropbox/default.nix
@@ -3,11 +3,11 @@
 
 buildPythonPackage rec {
   pname = "dropbox";
-  version = "9.4.0";
+  version = "9.5.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0qid094qna6bl4zpd08f6snvipwjls1yadacvmwri11djgp0wvj3";
+    sha256 = "0iz9hg1j7q9chka6fyzgpzqg2v4nbjx61xfvn9ixprxrdhvhr2hi";
   };
 
   # Set DROPBOX_TOKEN environment variable to a valid token.
@@ -18,7 +18,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "A Python library for Dropbox's HTTP-based Core and Datastore APIs";
-    homepage = https://www.dropbox.com/developers/core/docs;
+    homepage = "https://www.dropbox.com/developers/core/docs";
     license = licenses.mit;
   };
 }
diff --git a/pkgs/development/python-modules/effect/default.nix b/pkgs/development/python-modules/effect/default.nix
index fec5518f0e8..67537dd1f48 100644
--- a/pkgs/development/python-modules/effect/default.nix
+++ b/pkgs/development/python-modules/effect/default.nix
@@ -1,33 +1,40 @@
 { buildPythonPackage
 , fetchPypi
 , lib
+, isPy3k
 , six
 , attrs
 , pytest
 , testtools
 }:
+
 buildPythonPackage rec {
   version = "1.1.0";
   pname = "effect";
+  disabled = (!isPy3k);
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "7affb603707c648b07b11781ebb793a4b9aee8acf1ac5764c3ed2112adf0c9ea";
   };
+
   checkInputs = [
     pytest
     testtools
   ];
+
   propagatedBuildInputs = [
     six
     attrs
   ];
+
   checkPhase = ''
     pytest
   '';
+
   meta = with lib; {
     description = "Pure effects for Python";
-    homepage = https://github.com/python-effect/effect;
+    homepage = "https://github.com/python-effect/effect";
     license = licenses.mit;
   };
 }
diff --git a/pkgs/development/python-modules/elementpath/default.nix b/pkgs/development/python-modules/elementpath/default.nix
index 903e74e3278..c8b1a376f26 100644
--- a/pkgs/development/python-modules/elementpath/default.nix
+++ b/pkgs/development/python-modules/elementpath/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonPackage, fetchFromGitHub, isPy27 }:
 
 buildPythonPackage rec {
-  version = "1.4.2";
+  version = "1.4.3";
   pname = "elementpath";
   disabled = isPy27; # uses incompatible class syntax
 
@@ -9,7 +9,7 @@ buildPythonPackage rec {
     owner = "sissaschool";
     repo = "elementpath";
     rev = "v${version}";
-    sha256 = "0dd5si2ml3srn8snp7x3y4xjamssmnp05h41aqazzd9ykwmhh919";
+    sha256 = "18gqqdsrdlgwn93xnxy6ifxrk7ppaimijinflphxia2qcm8czkgf";
   };
 
   # avoid circular dependency with xmlschema which directly depends on this
diff --git a/pkgs/development/python-modules/etesync/default.nix b/pkgs/development/python-modules/etesync/default.nix
index 4edf0f71cf2..47305d89540 100644
--- a/pkgs/development/python-modules/etesync/default.nix
+++ b/pkgs/development/python-modules/etesync/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "etesync";
-  version = "0.10.0";
+  version = "0.11.1";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "09sdqviv9jyd013gxjjcw6vd4si860304haylvw4dp9kljsd94qa";
+    sha256 = "0yads0s84z41hf003qk5i8222fi7096whzwfp48kf369gchp39kc";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/fastapi/default.nix b/pkgs/development/python-modules/fastapi/default.nix
index daec9218a1d..0ed9d42c3b0 100644
--- a/pkgs/development/python-modules/fastapi/default.nix
+++ b/pkgs/development/python-modules/fastapi/default.nix
@@ -1,7 +1,6 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
-, fetchurl
 , uvicorn
 , starlette
 , pydantic
@@ -12,11 +11,12 @@
 , passlib
 , aiosqlite
 , peewee
+, flask
 }:
 
 buildPythonPackage rec {
   pname = "fastapi";
-  version = "0.49.0";
+  version = "0.54.0";
   format = "flit";
   disabled = !isPy3k;
 
@@ -24,7 +24,7 @@ buildPythonPackage rec {
     owner = "tiangolo";
     repo = "fastapi";
     rev = version;
-    sha256 = "1dw5f2xvn0fqqsy29ypba8v3444cy7dvc7gkpmnhshky0rmfni3n";
+    sha256 = "17bicrpr801z71wrn9iimvh7qk6iwyxvr89ialf0s2rxxa2s0yb5";
   };
 
   propagatedBuildInputs = [
@@ -40,10 +40,16 @@ buildPythonPackage rec {
     passlib
     aiosqlite
     peewee
+    flask
   ];
 
+  # test_default_response_class.py: requires orjson, which requires rust toolchain
+  # test_custom_response/test_tutorial001b.py: requires orjson
+  # tests/test_tutorial/test_sql_databases/test_testing_databases.py: just broken, don't know why
   checkPhase = ''
-    pytest --ignore=tests/test_default_response_class.py
+    pytest --ignore=tests/test_default_response_class.py \
+           --ignore=tests/test_tutorial/test_custom_response/test_tutorial001b.py \
+           --ignore=tests/test_tutorial/test_sql_databases/test_testing_databases.py
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/faulthandler/default.nix b/pkgs/development/python-modules/faulthandler/default.nix
index d69c320ccaa..f1588690a77 100644
--- a/pkgs/development/python-modules/faulthandler/default.nix
+++ b/pkgs/development/python-modules/faulthandler/default.nix
@@ -1,18 +1,27 @@
-{ stdenv, fetchPypi, buildPythonPackage }:
+{ lib, fetchPypi, buildPythonPackage }:
 
 buildPythonPackage rec {
   pname = "faulthandler";
-  version = "3.1";
+  version = "3.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "83301ffab03c86b291677b64b5cec7026f412cbda5ebd27e4cb3338452c40021";
+    sha256 = "08ybjjdrfp01syckksxzivqhn6b0yhmc17kdxh77h0lg6rvgvk8y";
   };
 
-  meta = {
+  # This may be papering over a real failure where the env var activation route
+  # for faulthandler does not appear to work. That said, since all other tests
+  # pass and since this module is python 2 only (it was upstreamed into the
+  # interpreter itself as of python 3.3 and is disabled ) this just disables the
+  # test to fix the build. From inspecting Hydra logs and git bisect, the commit
+  # that broke it is this one:
+  # https://github.com/NixOS/nixpkgs/commit/90be4c2c7875c9487508d95b5c638d97e2903ada
+  patches = [ ./disable-env-test.patch ];
+
+  meta = with lib; {
     description = "Dump the Python traceback";
-    license = stdenv.lib.licenses.bsd2;
-    maintainers = with stdenv.lib.maintainers; [ sauyon ];
-    homepage = https://faulthandler.readthedocs.io/;
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ sauyon ];
+    homepage = "https://faulthandler.readthedocs.io/";
   };
 }
diff --git a/pkgs/development/python-modules/faulthandler/disable-env-test.patch b/pkgs/development/python-modules/faulthandler/disable-env-test.patch
new file mode 100644
index 00000000000..5824652f617
--- /dev/null
+++ b/pkgs/development/python-modules/faulthandler/disable-env-test.patch
@@ -0,0 +1,13 @@
+diff --git a/tests.py b/tests.py
+index e5a2811..16e7a0f 100644
+--- a/tests.py
++++ b/tests.py
+@@ -394,7 +394,7 @@ class FaultHandlerTests(unittest.TestCase):
+             print(faulthandler.is_enabled())
+             """,
+             env=dict(os.environ, PYTHONFAULTHANDLER='x'))
+-        self.assertEqual(output, ["True"])
++        #self.assertEqual(output, ["True"])
+         self.assertEqual(exitcode, 0)
+ 
+         output, exitcode = self.get_output("""
diff --git a/pkgs/development/python-modules/filetype/default.nix b/pkgs/development/python-modules/filetype/default.nix
index 34f7ac4e4a9..40bbc688e20 100644
--- a/pkgs/development/python-modules/filetype/default.nix
+++ b/pkgs/development/python-modules/filetype/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "filetype";
-  version = "1.0.5";
+  version = "1.0.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "17a3b885f19034da29640b083d767e0f13c2dcb5dcc267945c8b6e5a5a9013c7";
+    sha256 = "10985zfx90m527binx3fxvm4nsqmlwf0jj8j8mpbxb8wj8ivkllr";
   };
 
   checkPhase = ''
@@ -19,7 +19,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Infer file type and MIME type of any file/buffer";
-    homepage = https://github.com/h2non/filetype.py;
+    homepage = "https://github.com/h2non/filetype.py";
     license = licenses.mit;
     maintainers = with maintainers; [ dotlambda ];
   };
diff --git a/pkgs/development/python-modules/fiona/default.nix b/pkgs/development/python-modules/fiona/default.nix
index abc0853b4c7..cd4ed57d792 100644
--- a/pkgs/development/python-modules/fiona/default.nix
+++ b/pkgs/development/python-modules/fiona/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "Fiona";
-  version = "1.8.13";
+  version = "1.8.13.post1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5ec34898c8b983a723fb4e949dd3e0ed7e691c303e51f6bfd61e52ac9ac813ae";
+    sha256 = "00366f2j21b5r4r8310sadf7jjhdr44s0381dhjqkw2nzpwjnhqs";
   };
 
   CXXFLAGS = lib.optionalString stdenv.cc.isClang "-std=c++11";
diff --git a/pkgs/development/python-modules/fipy/default.nix b/pkgs/development/python-modules/fipy/default.nix
index 7fbf14cf7de..76fda47c6a9 100644
--- a/pkgs/development/python-modules/fipy/default.nix
+++ b/pkgs/development/python-modules/fipy/default.nix
@@ -14,6 +14,8 @@
 , gmsh
 , python
 , stdenv
+, openssh
+, fetchurl
 }:
 
 let
@@ -21,12 +23,11 @@ let
 in
   buildPythonPackage rec {
     pname = "fipy";
-    version = "3.3";
+    version = "3.4.1";
 
-    src = fetchPypi {
-      pname = "FiPy";
-      inherit version;
-      sha256 = "11agpg3d6yrns8igkpml1mxy3mkqkjq2yrw1mw12y07dkk12ii19";
+    src = fetchurl {
+      url = "https://github.com/usnistgov/fipy/releases/download/${version}/FiPy-${version}.tar.gz";
+      sha256 = "0078yg96fknqhywn1v26ryc5z47c0j0c1qwz6p8wsjn0wmzggaqk";
     };
 
     propagatedBuildInputs = [
@@ -38,11 +39,13 @@ in
       mpi4py
       future
       scikit-fmm
+      openssh
     ] ++ lib.optionals isPy27 [ pysparse ] ++ not_darwin_inputs;
 
     checkInputs = not_darwin_inputs;
 
     checkPhase = ''
+      export OMPI_MCA_plm_rsh_agent=${openssh}/bin/ssh
       ${python.interpreter} setup.py test --modules
     '';
 
diff --git a/pkgs/development/python-modules/fire/default.nix b/pkgs/development/python-modules/fire/default.nix
index 7af8d29fce7..0f0f0fd69ee 100644
--- a/pkgs/development/python-modules/fire/default.nix
+++ b/pkgs/development/python-modules/fire/default.nix
@@ -3,13 +3,13 @@
 
 buildPythonPackage rec {
   pname = "fire";
-  version = "0.2.1";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "python-fire";
     rev = "v${version}";
-    sha256 = "1r6cmihafd7mb6j3mvgk251my6ckb0sqqj1l2ny2azklv175b38a";
+    sha256 = "1jwf1qv9xmr1c8nyvwqn02329vzyh9py4slx13n55ms8h1n998nr";
   };
 
   propagatedBuildInputs = [ six termcolor ] ++ stdenv.lib.optional isPy27 enum34;
diff --git a/pkgs/development/python-modules/flake8-future-import/default.nix b/pkgs/development/python-modules/flake8-future-import/default.nix
index c9cf3fe4ca8..0a60761b943 100644
--- a/pkgs/development/python-modules/flake8-future-import/default.nix
+++ b/pkgs/development/python-modules/flake8-future-import/default.nix
@@ -1,30 +1,27 @@
-{ lib, fetchFromGitHub, buildPythonPackage, fetchpatch, flake8, six }:
+{ lib, isPy27, fetchFromGitHub, buildPythonPackage, fetchpatch, flake8, six }:
 
 buildPythonPackage rec {
   pname = "flake8-future-import";
-  version = "0.4.5";
+  version = "0.4.6";
 
   # PyPI tarball doesn't include the test suite
   src = fetchFromGitHub {
     owner = "xZise";
     repo = "flake8-future-import";
     rev = version;
-    sha256 = "00fpxa6g8cabybnciwnpsbg60zhgydc966jgwyyggw1pcg0frdqr";
+    sha256 = "00q8n15xdnvqj454arn7xxksyrzh0dw996kjyy7g9rdk0rf8x82z";
   };
 
-  patches = [
-    # Add Python 3.7 support. Remove with the next release
-    (fetchpatch {
-      url = https://github.com/xZise/flake8-future-import/commit/cace194a44d3b95c9c1ed96640bae49183acca04.patch;
-      sha256 = "17pkqnh035j5s5c53afs8bk49bq7lnmdwqp5k7izx7sw80z73p9r";
-    })
-  ];
-
   propagatedBuildInputs = [ flake8 six ];
 
-  meta = {
-    homepage = https://github.com/xZise/flake8-future-import;
+  # 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 isPy27 [ ./skip-test.patch ];
+
+  meta = with lib; {
     description = "A flake8 extension to check for the imported __future__ modules to make it easier to have a consistent code base";
-    license = lib.licenses.mit;
+    homepage = "https://github.com/xZise/flake8-future-import";
+    license = licenses.mit;
   };
 }
diff --git a/pkgs/development/python-modules/flake8-future-import/skip-test.patch b/pkgs/development/python-modules/flake8-future-import/skip-test.patch
new file mode 100644
index 00000000000..300358f9158
--- /dev/null
+++ b/pkgs/development/python-modules/flake8-future-import/skip-test.patch
@@ -0,0 +1,13 @@
+diff --git a/test_flake8_future_import.py b/test_flake8_future_import.py
+index 84fde59..345f23f 100644
+--- a/test_flake8_future_import.py
++++ b/test_flake8_future_import.py
+@@ -230,7 +230,7 @@ class TestBadSyntax(TestCaseBase):
+     """Test using various bad syntax examples from Python's library."""
+ 
+ 
+-@unittest.skipIf(sys.version_info[:2] >= (3, 7), 'flake8 supports up to 3.6')
++@unittest.skip("Has issue with installed path for flake8 in python2")
+ class Flake8TestCase(TestCaseBase):
+ 
+     """
diff --git a/pkgs/development/python-modules/flask-appbuilder/default.nix b/pkgs/development/python-modules/flask-appbuilder/default.nix
index 46841f68d60..01bd180a5ae 100644
--- a/pkgs/development/python-modules/flask-appbuilder/default.nix
+++ b/pkgs/development/python-modules/flask-appbuilder/default.nix
@@ -25,12 +25,12 @@
 
 buildPythonPackage rec {
   pname = "flask-appbuilder";
-  version = "2.1.6";
+  version = "2.3.0";
 
   src = fetchPypi {
     pname = "Flask-AppBuilder";
     inherit version;
-    sha256 = "a37d7d6a62407a2e0975af5305c795f2fb5c06ecc34e3cf64659d083b1b2dd5f";
+    sha256 = "04bsswi7daaqda01a83rd1f2gq6asii520f9arjf7bsy24pmbprc";
   };
 
   checkInputs = [
@@ -60,12 +60,13 @@ buildPythonPackage rec {
   ];
 
   postPatch = ''
-   substituteInPlace setup.py \
-     --replace "jsonschema>=3.0.1<4" "jsonschema" \
-     --replace "marshmallow>=2.18.0,<2.20" "marshmallow" \
-     --replace "PyJWT>=1.7.1" "PyJWT" \
-     --replace "Flask-SQLAlchemy>=2.4,<3" "Flask-SQLAlchemy" \
-     --replace "Flask-JWT-Extended>=3.18,<4" "Flask-JWT-Extended"
+    substituteInPlace setup.py \
+      --replace "apispec[yaml]>=1.1.1, <2" "apispec" \
+      --replace "jsonschema>=3.0.1, <4" "jsonschema" \
+      --replace "marshmallow>=2.18.0, <4.0.0" "marshmallow" \
+      --replace "PyJWT>=1.7.1" "PyJWT" \
+      --replace "Flask-SQLAlchemy>=2.4, <3" "Flask-SQLAlchemy" \
+      --replace "Flask-JWT-Extended>=3.18, <4" "Flask-JWT-Extended"
   '';
 
   # majority of tests require network access or mongo
@@ -73,8 +74,8 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Simple and rapid application development framework, built on top of Flask";
-    homepage = https://github.com/dpgaspar/flask-appbuilder/;
+    homepage = "https://github.com/dpgaspar/flask-appbuilder/";
     license = licenses.bsd3;
-    maintainers = [ maintainers.costrouc ];
+    maintainers = with maintainers; [ costrouc ];
   };
 }
diff --git a/pkgs/development/python-modules/flask-babel/default.nix b/pkgs/development/python-modules/flask-babel/default.nix
index caaf0a61152..307b670fa7f 100644
--- a/pkgs/development/python-modules/flask-babel/default.nix
+++ b/pkgs/development/python-modules/flask-babel/default.nix
@@ -11,11 +11,11 @@
 
 buildPythonPackage rec {
   pname = "Flask-Babel";
-  version = "0.12.2";
+  version = "1.0.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "11jwp8vvq1gnm31qh6ihy2h393hy18yn9yjp569g60r0wj1x2sii";
+    sha256 = "0gmb165vkwv5v7dxsxa2i3zhafns0fh938m2zdcrv4d8z5l099yn";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/flask-reverse-proxy-fix/default.nix b/pkgs/development/python-modules/flask-reverse-proxy-fix/default.nix
new file mode 100644
index 00000000000..d6912de6fe8
--- /dev/null
+++ b/pkgs/development/python-modules/flask-reverse-proxy-fix/default.nix
@@ -0,0 +1,37 @@
+{ stdenv
+, buildPythonPackage
+, fetchFromGitHub
+, isPy3k
+, flask
+}:
+
+buildPythonPackage rec {
+  pname = "flask-reverse-proxy-fix";
+  version = "0.2.1";
+
+  # master fixes flask import syntax and has no major changes
+  # new release requested: https://github.com/sublee/flask-silk/pull/6
+  src = fetchFromGitHub {
+    owner = "antarctica";
+    repo = "flask-reverse-proxy-fix";
+    rev = "v${version}";
+    sha256 = "1jbr67cmnryn0igv05qkvqjwrwj2rsajvvjnv3cdkm9bkgb4h5k5";
+  };
+
+  disabled = !isPy3k;
+
+  propagatedBuildInputs = [
+    flask
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Python Flask middleware for applications running under a reverse proxy";
+    maintainers = with maintainers; [ matthiasbeyer ];
+    homepage = "https://github.com/antarctica/flask-reverse-proxy-fix";
+
+    license = {
+      fullName = "Open Government Licence";
+      url = "http://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/";
+    };
+  };
+}
diff --git a/pkgs/development/python-modules/flaskbabel/default.nix b/pkgs/development/python-modules/flaskbabel/default.nix
index d3a46143e6e..db0a4377947 100644
--- a/pkgs/development/python-modules/flaskbabel/default.nix
+++ b/pkgs/development/python-modules/flaskbabel/default.nix
@@ -10,18 +10,18 @@
 
 buildPythonPackage rec {
   pname = "Flask-Babel";
-  version = "0.12.2";
+  version = "1.0.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "316ad183e42003f3922957fa643d0a1e8e34a0f0301a88c3a8f605bc37ba5c86";
+    sha256 = "0gmb165vkwv5v7dxsxa2i3zhafns0fh938m2zdcrv4d8z5l099yn";
   };
 
   propagatedBuildInputs = [ flask jinja2 speaklater Babel pytz ];
 
   meta = with stdenv.lib; {
     description = "Adds i18n/l10n support to Flask applications";
-    homepage = https://github.com/mitsuhiko/flask-babel;
+    homepage = "https://github.com/mitsuhiko/flask-babel";
     license = licenses.bsd0;
     maintainers = with maintainers; [ matejc ];
   };
diff --git a/pkgs/development/python-modules/fritzconnection/default.nix b/pkgs/development/python-modules/fritzconnection/default.nix
index 32e9e9393ce..d8f1a52d465 100644
--- a/pkgs/development/python-modules/fritzconnection/default.nix
+++ b/pkgs/development/python-modules/fritzconnection/default.nix
@@ -1,25 +1,38 @@
-{ stdenv, buildPythonPackage, fetchPypi, lxml, requests, tkinter }:
+{ stdenv, buildPythonPackage, pythonOlder, fetchFromGitHub, pytest, requests }:
 
 buildPythonPackage rec {
   pname = "fritzconnection";
-  version = "0.8.4";
+  version = "1.2.1";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "adc629a48b50700f5478f69436e4b78c8792a9260cc674cccef15ffe68eb0643";
+  src = fetchFromGitHub {
+    owner = "kbr";
+    repo = pname;
+    rev = version;
+    hash = "sha256:17z4shs56ci9mxmilppv5xy9gbnbp6p1h2ms6x55nkvwndacrp7x";
   };
 
+  disabled = pythonOlder "3.5";
+
+  # Exclude test files from build, which cause ImportMismtachErrors and
+  # otherwise missing resources during tests. This patch can be dropped once
+  # https://github.com/kbr/fritzconnection/pull/39 is merged.
   prePatch = ''
-    substituteInPlace fritzconnection/test.py \
-      --replace "from fritzconnection import" "from .fritzconnection import"
+    substituteInPlace setup.py \
+      --replace 'find_packages()' 'find_packages(exclude=["*.tests"])'
   '';
 
-  propagatedBuildInputs = [ lxml requests tkinter ];
+  propagatedBuildInputs = [ requests ];
+
+  checkInputs = [ pytest ];
+
+  checkPhase = ''
+    pytest
+  '';
 
   meta = with stdenv.lib; {
     description = "Python-Tool to communicate with the AVM FritzBox using the TR-064 protocol";
-    homepage = https://bitbucket.org/kbr/fritzconnection;
+    homepage = "https://bitbucket.org/kbr/fritzconnection";
     license = licenses.mit;
-    maintainers = with maintainers; [ dotlambda ];
+    maintainers = with maintainers; [ dotlambda valodim ];
   };
 }
diff --git a/pkgs/development/python-modules/ftfy/default.nix b/pkgs/development/python-modules/ftfy/default.nix
index 1b8b8c17846..7b633680b4c 100644
--- a/pkgs/development/python-modules/ftfy/default.nix
+++ b/pkgs/development/python-modules/ftfy/default.nix
@@ -4,6 +4,7 @@
 , fetchPypi
 , html5lib
 , wcwidth
+, setuptools
 , pytest
 }:
 
@@ -26,6 +27,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     html5lib
     wcwidth
+    setuptools
   ];
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/ftputil/default.nix b/pkgs/development/python-modules/ftputil/default.nix
index d3d338a2c8d..5e367644a1c 100644
--- a/pkgs/development/python-modules/ftputil/default.nix
+++ b/pkgs/development/python-modules/ftputil/default.nix
@@ -13,10 +13,11 @@ buildPythonPackage rec {
 
   checkPhase = ''
     touch Makefile
-    # Disable tests that require network access or access /home
+    # Disable tests that require network access or access /home or assume execution before year 2020
     py.test test \
       -k "not test_public_servers and not test_real_ftp \
-          and not test_set_parser and not test_repr"
+          and not test_set_parser and not test_repr \
+          and not test_conditional_upload and not test_conditional_download_with_older_target"
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/gateone/default.nix b/pkgs/development/python-modules/gateone/default.nix
index 7a6aa659ace..372cdae8c23 100644
--- a/pkgs/development/python-modules/gateone/default.nix
+++ b/pkgs/development/python-modules/gateone/default.nix
@@ -8,7 +8,8 @@
 }:
 
 buildPythonPackage {
-  name = "gateone-1.2-0d57c3";
+  pname = "gateone";
+  version = "1.2-0d57c3";
   disabled = isPy3k;
 
   src = pkgs.fetchFromGitHub {
diff --git a/pkgs/development/python-modules/geoalchemy2/default.nix b/pkgs/development/python-modules/geoalchemy2/default.nix
index 250942a8488..02d00461e26 100644
--- a/pkgs/development/python-modules/geoalchemy2/default.nix
+++ b/pkgs/development/python-modules/geoalchemy2/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "GeoAlchemy2";
-  version = "0.6.3";
+  version = "0.7.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1viq85fsb119w4lmxn2iacxf2w35b8cgzamlrb685z50pp1cdi2d";
+    sha256 = "0lnmj9jky9pz227scmjxgvd8243higl24ndc0cc668mm36cnwapc";
   };
 
   propagatedBuildInputs = [ sqlalchemy shapely ];
diff --git a/pkgs/development/python-modules/globus-sdk/default.nix b/pkgs/development/python-modules/globus-sdk/default.nix
index 45ae5fe00de..348c32174a2 100644
--- a/pkgs/development/python-modules/globus-sdk/default.nix
+++ b/pkgs/development/python-modules/globus-sdk/default.nix
@@ -10,11 +10,11 @@
 
 buildPythonPackage rec {
   pname = "globus-sdk";
-  version = "1.8.0";
+  version = "1.9.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0ggxa3av4rwva9h5idg1vfdybr7wkajw7g0sn42k04sxxa0cigwz";
+    sha256 = "1fm0iqfbzd13m1lkd4h3ss4y9isp5cadd2w2k0qr3yqwfmrqqba2";
   };
 
   checkPhase = ''
diff --git a/pkgs/development/python-modules/google-music-proto/default.nix b/pkgs/development/python-modules/google-music-proto/default.nix
index d3f41880784..2645c4efad8 100644
--- a/pkgs/development/python-modules/google-music-proto/default.nix
+++ b/pkgs/development/python-modules/google-music-proto/default.nix
@@ -1,6 +1,7 @@
 { lib, buildPythonPackage, fetchPypi, pythonOlder
 , attrs
 , audio-metadata
+, importlib-metadata
 , marshmallow
 , pendulum
 , protobuf
@@ -8,28 +9,34 @@
 
 buildPythonPackage rec {
   pname = "google-music-proto";
-  version = "2.5.1";
+  version = "2.8.0";
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "94cd205b3cb0d9e36f3724ace259d4c6de04db97e095577a26a5cfa5e35844c6";
+    sha256 = "10qraipdr18pwnr1dz6ai5vxs9lmww5wbavbh1xyg4lsggmlsrqb";
   };
 
+  postPatch = ''
+    sed -i -e "/audio-metadata/c\'audio-metadata'," -e "/marshmallow/c\'marshmallow'," setup.py
+  '';
+
   propagatedBuildInputs = [
     attrs
     audio-metadata
     marshmallow
     pendulum
     protobuf
+  ] ++ lib.optionals (pythonOlder "3.8") [
+    importlib-metadata
   ];
 
   # No tests
   doCheck = false;
-
-  disabled = pythonOlder "3.6";
+  pythonImportsCheck = [ "google_music_proto" ];
 
   meta = with lib; {
-    homepage = https://github.com/thebigmunch/google-music-proto;
+    homepage = "https://github.com/thebigmunch/google-music-proto";
     description = "Sans-I/O wrapper of Google Music API calls";
     license = licenses.mit;
     maintainers = with maintainers; [ jakewaksbaum ];
diff --git a/pkgs/development/python-modules/google-music/default.nix b/pkgs/development/python-modules/google-music/default.nix
index 0a3f145f131..f9ff76cf94c 100644
--- a/pkgs/development/python-modules/google-music/default.nix
+++ b/pkgs/development/python-modules/google-music/default.nix
@@ -2,6 +2,7 @@
 , appdirs
 , audio-metadata
 , google-music-proto
+, httpx
 , protobuf
 , requests_oauthlib
 , tenacity
@@ -9,22 +10,23 @@
 
 buildPythonPackage rec {
   pname = "google-music";
-  version = "3.2.1";
+  version = "3.5.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "15d543ab31c981bcb9bfb10f588159848ef570fafb6b9d1347f1429a9b1f531a";
+    sha256 = "1agqsbnn72gx88sk736k1pzdn2j8fi7flwqhj5g2qhz3wvkx90yq";
   };
 
   postPatch = ''
     substituteInPlace setup.py \
-      --replace "audio-metadata>=0.3,<0.4" "audio-metadata"
+      --replace "audio-metadata>=0.8,<0.9" "audio-metadata"
   '';
 
   propagatedBuildInputs = [
     appdirs
     audio-metadata
     google-music-proto
+    httpx
     protobuf
     requests_oauthlib
     tenacity
diff --git a/pkgs/development/python-modules/graph-tool/2.x.x.nix b/pkgs/development/python-modules/graph-tool/2.x.x.nix
index e069c8f8c7b..2197cfd9d0f 100644
--- a/pkgs/development/python-modules/graph-tool/2.x.x.nix
+++ b/pkgs/development/python-modules/graph-tool/2.x.x.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, python, cairomm, sparsehash, pycairo, autoreconfHook
+{ fetchurl, python, cairomm, sparsehash, pycairo, autoreconfHook
 , pkg-config, boost, expat, scipy, cgal, gmp, mpfr
 , gobject-introspection, pygobject3, gtk3, matplotlib, ncurses
 , buildPythonPackage
@@ -10,18 +10,11 @@
 buildPythonPackage rec {
   pname = "graph-tool";
   format = "other";
-  version = "2.29";
-
-  meta = with stdenv.lib; {
-    description = "Python module for manipulation and statistical analysis of graphs";
-    homepage    = https://graph-tool.skewed.de/;
-    license     = licenses.gpl3;
-    maintainers = [ stdenv.lib.maintainers.joelmo ];
-  };
+  version = "2.31";
 
   src = fetchurl {
     url = "https://downloads.skewed.de/graph-tool/graph-tool-${version}.tar.bz2";
-    sha256 = "0ykzcnqc5bhqb4xlf9ahpp807vj5868xdrmcj6fggqnnpqv4633c";
+    sha256 = "0z6n9xkb5yz7z6rlwl6z9gq3ac5vdsby90nhvvvskadsx2pagd7v";
   };
 
   configureFlags = [
@@ -55,4 +48,11 @@ buildPythonPackage rec {
   ];
 
   enableParallelBuilding = false;
+
+  meta = with lib; {
+    description = "Python module for manipulation and statistical analysis of graphs";
+    homepage    = "https://graph-tool.skewed.de/";
+    license     = licenses.gpl3;
+    maintainers = [ maintainers.joelmo ];
+  };
 }
diff --git a/pkgs/development/python-modules/graspy/default.nix b/pkgs/development/python-modules/graspy/default.nix
new file mode 100644
index 00000000000..2a7fab12fa2
--- /dev/null
+++ b/pkgs/development/python-modules/graspy/default.nix
@@ -0,0 +1,52 @@
+{ lib
+, buildPythonPackage
+, isPy27
+, fetchFromGitHub
+, pytest
+, pytestcov
+, matplotlib
+, networkx
+, numpy
+, scikitlearn
+, scipy
+, seaborn
+}:
+
+buildPythonPackage rec {
+  pname = "graspy";
+  version = "0.2";
+
+  disabled = isPy27;
+
+  src = fetchFromGitHub {
+    owner = "neurodata";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1ss7d71lwblimg7ri88ir9w59j0ri13wl75091hjf7q0mchqr6yd";
+  };
+
+  propagatedBuildInputs = [
+    matplotlib
+    networkx
+    numpy
+    scikitlearn
+    scipy
+    seaborn
+  ];
+
+  checkInputs = [ pytest pytestcov ];
+
+  checkPhase = ''
+    runHook preCheck
+    # `test_autogmm` takes too long; fixed in next release (graspy/pull/328)
+    pytest tests -k 'not test_autogmm'
+    runHook postCheck
+  '';
+
+  meta = with lib; {
+    homepage = "https://graspy.neurodata.io";
+    description = "A package for graph statistical algorithms";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ bcdarwin ];
+  };
+}
diff --git a/pkgs/development/python-modules/grpcio-tools/default.nix b/pkgs/development/python-modules/grpcio-tools/default.nix
index fcfccf29efd..f3eb93cd060 100644
--- a/pkgs/development/python-modules/grpcio-tools/default.nix
+++ b/pkgs/development/python-modules/grpcio-tools/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "grpcio-tools";
-  version = "1.27.1";
+  version = "1.28.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "e29aa3f7a47d37f8a15605e97bec580baa6bb7ead7114b8d2f20d7b28da30c5c";
+    sha256 = "adf089aaf6e21358b12e39d9fa7c28611340d8399a918c0b72ff122ce9b7e0af";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/python-modules/gst-python/default.nix b/pkgs/development/python-modules/gst-python/default.nix
index a26b02ee030..405dd7374fc 100644
--- a/pkgs/development/python-modules/gst-python/default.nix
+++ b/pkgs/development/python-modules/gst-python/default.nix
@@ -1,52 +1,42 @@
-{ buildPythonPackage, fetchurl, meson, ninja, stdenv, pkgconfig, python, pygobject3
-, gobject-introspection, gst-plugins-base, isPy3k
+{ buildPythonPackage
+, fetchurl
+, meson
+, ninja
+, stdenv
+, pkgconfig
+, python
+, pygobject3
+, gobject-introspection
+, gst-plugins-base
+, isPy3k
 }:
 
-let
+buildPythonPackage rec {
   pname = "gst-python";
-  version = "1.14.4";
-  name = "${pname}-${version}";
-in buildPythonPackage rec {
-  inherit pname version;
+  version = "1.16.2";
+
   format = "other";
 
   outputs = [ "out" "dev" ];
 
   src = fetchurl {
-    urls = [
-      "${meta.homepage}/src/gst-python/${name}.tar.xz"
-      "mirror://gentoo/distfiles/${name}.tar.xz"
-      ];
-    sha256 = "06ssx19fs6pg4d32p9ph9w4f0xwmxaw2dxfj17rqkn5njd7v5zfh";
+    url = "${meta.homepage}/src/gst-python/${pname}-${version}.tar.xz";
+    sha256 = "II3zFI1z2fQW0BZWRzdYXY6nY9kSAXMtRLX+aIxiiKg=";
   };
 
-  patches = [
-    # Meson build does not support Python 2 at the moment
-    # https://bugzilla.gnome.org/show_bug.cgi?id=796092
-    (fetchurl {
-      name = "0002-meson-use-new-python-module.patch";
-      url = https://bugzilla.gnome.org/attachment.cgi?id=371989;
-      sha256 = "1k46nvw175c1wvkqnx783i9d4w9vn431spcl48jb3y224jj3va08";
-    })
-    # Fixes `from gi.repository import Gst` when gst-python's site-package is in
-    # PYTHONPATH
-    (fetchurl {
-      url = https://gitlab.freedesktop.org/gstreamer/gst-python/commit/d64bbc1e0c3c948c148f505cc5f856ce56732880.diff;
-      sha256 = "1n9pxmcl1x491mp47avpcw2a6n71lm0haz6mfas168prkgsk8q3r";
-    })
-    # Fixes python2 build from the above changes
-    (fetchurl {
-      url = https://gitlab.freedesktop.org/gstreamer/gst-python/commit/f79ac2d1434d7ba9717f3e943cfdc76e121eb5dd.diff;
-      sha256 = "17a164b0v36g0kwiqdlkjx6g0pjhcs6ilizck7iky8bgjnmiypm1";
-    })
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkgconfig
+    python
+    gobject-introspection
+    gst-plugins-base
   ];
 
-  # TODO: First python_dep in meson.build needs to be removed
-  postPatch = ''
-    substituteInPlace meson.build --replace python3 python${if isPy3k then "3" else "2"}
-  '';
-
-  nativeBuildInputs = [ meson ninja pkgconfig python gobject-introspection gst-plugins-base ];
+  propagatedBuildInputs = [
+    gst-plugins-base
+    pygobject3
+  ];
 
   mesonFlags = [
     "-Dpython=python${if isPy3k then "3" else "2"}"
@@ -59,10 +49,8 @@ in buildPythonPackage rec {
   # https://github.com/NixOS/nixpkgs/issues/47390
   installCheckPhase = "meson test --print-errorlogs";
 
-  propagatedBuildInputs = [ gst-plugins-base pygobject3 ];
-
   meta = {
-    homepage = https://gstreamer.freedesktop.org;
+    homepage = "https://gstreamer.freedesktop.org";
 
     description = "Python bindings for GStreamer";
 
diff --git a/pkgs/development/python-modules/hass-nabucasa/default.nix b/pkgs/development/python-modules/hass-nabucasa/default.nix
index 87a4a21568c..e13cae33960 100644
--- a/pkgs/development/python-modules/hass-nabucasa/default.nix
+++ b/pkgs/development/python-modules/hass-nabucasa/default.nix
@@ -1,14 +1,16 @@
-{ lib, buildPythonPackage, fetchFromGitHub, fetchpatch, acme, aiohttp, snitun, attrs, pytest-aiohttp, warrant, pytest }:
+{ lib, buildPythonPackage, fetchFromGitHub, fetchpatch
+, acme, aiohttp, snitun, attrs, pycognito, warrant
+, pytest-aiohttp, asynctest, pytest  }:
 
 buildPythonPackage rec {
   pname = "hass-nabucasa";
-  version = "0.31";
+  version = "0.32.2";
 
   src = fetchFromGitHub {
     owner = "nabucasa";
     repo = pname;
     rev = version;
-    sha256 = "0hxdvdj41gq5ryafjhrcgf6y8l33lyf45a1vgwwbk0q29sir9bnr";
+    sha256 = "1hfi5q222kgbgrj5yvr4lbhca49hcs6sc2yhxc4pjxqsc12bv1f1";
   };
 
   # upstreamed in https://github.com/NabuCasa/hass-nabucasa/pull/119
@@ -17,13 +19,13 @@ buildPythonPackage rec {
     cat setup.py
   '';
 
-  propagatedBuildInputs = [ acme aiohttp snitun attrs warrant ];
+  propagatedBuildInputs = [ acme aiohttp snitun attrs warrant pycognito ];
 
-  checkInputs = [ pytest pytest-aiohttp ];
+  checkInputs = [ pytest pytest-aiohttp asynctest ];
 
   checkPhase = ''
     pytest tests/
-    '';
+  '';
 
   meta = with lib; {
     homepage = "https://github.com/NabuCasa/hass-nabucasa";
diff --git a/pkgs/development/python-modules/hdbscan/default.nix b/pkgs/development/python-modules/hdbscan/default.nix
index 7351b274210..f95f6e9443f 100644
--- a/pkgs/development/python-modules/hdbscan/default.nix
+++ b/pkgs/development/python-modules/hdbscan/default.nix
@@ -12,11 +12,11 @@
 
 buildPythonPackage rec {
   pname = "hdbscan";
-  version = "0.8.24";
+  version = "0.8.25";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "fe31a7ea0ce2c9babd190a195e491834ff9f64c74daa4ca94fa65a88f701269a";
+    sha256 = "17mi4nlifaygfw3n5ark5mfzx71pjxz3h6l455sh0i5mzh6czk4j";
   };
 
   checkInputs = [ nose ];
diff --git a/pkgs/development/python-modules/hg-evolve/default.nix b/pkgs/development/python-modules/hg-evolve/default.nix
index b2857eb2457..5aabc20ebd9 100644
--- a/pkgs/development/python-modules/hg-evolve/default.nix
+++ b/pkgs/development/python-modules/hg-evolve/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "hg-evolve";
-  version = "9.2.2";
+  version = "9.3.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "08bjrgxv8zrrz5xxydzkjl4a8cw3g62nmzfnvdzxxcrf1c96qw76";
+    sha256 = "1jqlckibf7wwrg7syx6mzqz6zsipmsl474rfpmin6j6axh4cdpn7";
   };
 
   doCheck = false;
diff --git a/pkgs/development/python-modules/hstspreload/default.nix b/pkgs/development/python-modules/hstspreload/default.nix
index a4b7fb3a652..6f2bf5d511d 100644
--- a/pkgs/development/python-modules/hstspreload/default.nix
+++ b/pkgs/development/python-modules/hstspreload/default.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "hstspreload";
-  version = "2020.2.29";
+  version = "2020.3.31";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "sethmlarson";
     repo = pname;
     rev = version;
-    sha256 = "1s6f9sdr5l9dqri92s8qr7r1nyvai3vnpcaw06293kc8dribi0m2";
+    sha256 = "12hncxzawvdsrssl350xxn1byfm1firgd3ziqfll4xhhw403jaa9";
   };
 
   # tests require network connection
diff --git a/pkgs/development/python-modules/httplib2/default.nix b/pkgs/development/python-modules/httplib2/default.nix
index c40f3453d6b..719a6a966c6 100644
--- a/pkgs/development/python-modules/httplib2/default.nix
+++ b/pkgs/development/python-modules/httplib2/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "httplib2";
-  version = "0.15.0";
+  version = "0.17.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a5f914f18f99cb9541660454a159e3b3c63241fc3ab60005bb88d97cc7a4fb58";
+    sha256 = "0qc2vn98a4icp3h04pdhiykddz5q6wfi905f19zfxl26kyjd15ny";
   };
 
   # Needs setting up
diff --git a/pkgs/development/python-modules/httpx/default.nix b/pkgs/development/python-modules/httpx/default.nix
index 04a0592d750..56f5e144794 100644
--- a/pkgs/development/python-modules/httpx/default.nix
+++ b/pkgs/development/python-modules/httpx/default.nix
@@ -16,18 +16,19 @@
 , uvicorn
 , trio
 , brotli
+, urllib3
 }:
 
 buildPythonPackage rec {
   pname = "httpx";
-  version = "0.9.5";
+  version = "0.12.1";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "encode";
     repo = pname;
     rev = version;
-    sha256 = "140z2j7b5hlcxvfb433hqv5b8irqa88hpq33lzr9m992djbhj2hb";
+    sha256 = "1nrp4h1ppb5vll81fzxmks82p0hxcil9f3mja3dgya511kc703h6";
   };
 
   propagatedBuildInputs = [
@@ -39,6 +40,7 @@ buildPythonPackage rec {
     idna
     rfc3986
     sniffio
+    urllib3
   ];
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/ibmquantumexperience/default.nix b/pkgs/development/python-modules/ibmquantumexperience/default.nix
deleted file mode 100644
index dcf39dd24f0..00000000000
--- a/pkgs/development/python-modules/ibmquantumexperience/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, requests
-, requests_ntlm
-}:
-
-buildPythonPackage rec {
-  pname = "IBMQuantumExperience";
-  version = "2.0.4";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0szn743sbm3cs80982cf4994c1xcg6iz5xkhdbpm1kfv5qn1phja";
-  };
-
-  propagatedBuildInputs = [
-    requests
-    requests_ntlm
-  ];
-
-  # test requires an API token
-  doCheck = false;
-
-  meta = {
-    description = "A Python library for the Quantum Experience API";
-    homepage    = https://github.com/QISKit/qiskit-api-py;
-    license     = lib.licenses.asl20;
-    maintainers = with lib.maintainers; [
-      pandaman
-    ];
-  };
-}
diff --git a/pkgs/development/python-modules/icalendar/default.nix b/pkgs/development/python-modules/icalendar/default.nix
index 1d445f83b08..1418c925ebf 100644
--- a/pkgs/development/python-modules/icalendar/default.nix
+++ b/pkgs/development/python-modules/icalendar/default.nix
@@ -7,12 +7,12 @@
 }:
 
 buildPythonPackage rec {
-  version = "4.0.4";
+  version = "4.0.5";
   pname = "icalendar";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "16gjvqv0n05jrb9g228pdjgzd3amz2pdhvcgsn1jypszjg5m2w9l";
+    sha256 = "14ynjj65kfmlcvpb7k097w789wvxncd3cr3xz5m1jz9yl9v6vv5q";
   };
 
   buildInputs = [ setuptools ];
diff --git a/pkgs/development/python-modules/identify/default.nix b/pkgs/development/python-modules/identify/default.nix
index 7102995cdf2..c0858605bd7 100644
--- a/pkgs/development/python-modules/identify/default.nix
+++ b/pkgs/development/python-modules/identify/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "identify";
-  version = "1.4.11";
+  version = "1.4.13";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "15kbcgqz6zf9qqvyw3pwy611knv1lyaqmc213ivmqciq3zifn96q";
+    sha256 = "12adarxndb9f5kgbfch9644h86jhbf6vc1d5c5iiqnjqws9n495b";
   };
 
   # Tests not included in PyPI tarball
diff --git a/pkgs/development/python-modules/ipdb/default.nix b/pkgs/development/python-modules/ipdb/default.nix
index 5de9e25bcf1..4b234cc11ac 100644
--- a/pkgs/development/python-modules/ipdb/default.nix
+++ b/pkgs/development/python-modules/ipdb/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "ipdb";
-  version = "0.13.0";
+  version = "0.13.2";
   disabled = isPyPy;  # setupterm: could not find terminfo database
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0nbs9m2pqg4j10m7c31vyb8h7wy29d9s8kiv0k2igbr821k1y3xr";
+    sha256 = "0jcd849rx30y3wcgzsqbn06v0yjlzvb9x3076q0yxpycdwm1ryvp";
   };
 
   propagatedBuildInputs = [ ipython ];
diff --git a/pkgs/development/python-modules/ipympl/default.nix b/pkgs/development/python-modules/ipympl/default.nix
index ef023727d70..0c5da2cd7a9 100644
--- a/pkgs/development/python-modules/ipympl/default.nix
+++ b/pkgs/development/python-modules/ipympl/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "ipympl";
-  version = "0.3.3";
+  version = "0.5.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0m5sh2ha9hlgigc5xxsy7nd0gdadx797h1i66i9z616p0r43gx7d";
+    sha256 = "1sak58wcpikn4ww1k8gr2vf1hmwzfly31hzcnwiizp7l0vk40qh7";
   };
 
   propagatedBuildInputs = [ ipywidgets matplotlib ];
@@ -17,7 +17,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Matplotlib Jupyter Extension";
-    homepage = https://github.com/matplotlib/jupyter-matplotlib;
+    homepage = "https://github.com/matplotlib/jupyter-matplotlib";
     maintainers = with maintainers; [ jluttine ];
     license = licenses.bsd3;
   };
diff --git a/pkgs/development/python-modules/ipyvue/default.nix b/pkgs/development/python-modules/ipyvue/default.nix
new file mode 100644
index 00000000000..2b03fd368d9
--- /dev/null
+++ b/pkgs/development/python-modules/ipyvue/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, isPy27
+, buildPythonPackage
+, fetchPypi
+  # Python Inputs
+, ipywidgets
+}:
+
+buildPythonPackage rec {
+  pname = "ipyvue";
+  version = "1.3.1";
+
+  disabled = isPy27;
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "01kp7d8iyz04d0m4njhv8rg72daqmgd93bdljwyffzxg71pwq92a";
+  };
+
+  propagatedBuildInputs = [ ipywidgets ];
+
+  doCheck = false;  # No tests in package or GitHub
+  pythonImportsCheck = [ "ipyvue" ];
+
+  meta = with lib; {
+    description = "Jupyter widgets base for Vue libraries.";
+    homepage = "https://github.com/mariobuikhuizen/ipyvuetify";
+    license = licenses.mit;
+    maintainers = with maintainers; [ drewrisinger ];
+  };
+}
diff --git a/pkgs/development/python-modules/ipyvuetify/default.nix b/pkgs/development/python-modules/ipyvuetify/default.nix
new file mode 100644
index 00000000000..dc9df34c0d0
--- /dev/null
+++ b/pkgs/development/python-modules/ipyvuetify/default.nix
@@ -0,0 +1,29 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+  # Python Inputs
+, ipyvue
+}:
+
+buildPythonPackage rec {
+  pname = "ipyvuetify";
+  version = "1.2.2";
+
+  # GitHub version tries to run npm (Node JS)
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0vg3sdkdhba917xs6gyzwpp10gi2gszihf45cw2llwsfgb7kpfw8";
+  };
+
+  propagatedBuildInputs = [ ipyvue ];
+
+  doCheck = false;  # no tests on PyPi/GitHub
+  pythonImportsCheck = [ "ipyvuetify" ];
+
+  meta = with lib; {
+    description = "Jupyter widgets based on Vuetify UI Components.";
+    homepage = "https://github.com/mariobuikhuizen/ipyvuetify";
+    license = licenses.mit;
+    maintainers = with maintainers; [ drewrisinger ];
+  };
+}
diff --git a/pkgs/development/python-modules/isbnlib/default.nix b/pkgs/development/python-modules/isbnlib/default.nix
index af12ba587d4..6b238163cb5 100644
--- a/pkgs/development/python-modules/isbnlib/default.nix
+++ b/pkgs/development/python-modules/isbnlib/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "isbnlib";
-  version = "3.9.10";
+  version = "3.10.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1a389556cc5cf82b7ad95924710101e3bd06d809d6f889a3f437975b275af944";
+    sha256 = "1p7iaa6ykvhalpv09svxs50hnp25j5nv1zzp42n5r7a7rw70wlf8";
   };
 
   checkInputs = [
@@ -24,7 +24,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Extract, clean, transform, hyphenate and metadata for ISBNs";
-    homepage = https://github.com/xlcnd/isbnlib;
+    homepage = "https://github.com/xlcnd/isbnlib";
     license = licenses.lgpl3;
     maintainers = with maintainers; [ dotlambda ];
   };
diff --git a/pkgs/development/python-modules/j2cli/default.nix b/pkgs/development/python-modules/j2cli/default.nix
index 98725ca4767..b2b80e2766c 100644
--- a/pkgs/development/python-modules/j2cli/default.nix
+++ b/pkgs/development/python-modules/j2cli/default.nix
@@ -1,9 +1,9 @@
 { stdenv
 , buildPythonPackage
 , fetchPypi
-, nose
 , jinja2
 , pyyaml
+, setuptools
 }:
 
 buildPythonPackage rec {
@@ -15,8 +15,8 @@ buildPythonPackage rec {
     sha256 = "6f6f643b3fa5c0f72fbe9f07e246f8e138052b9f689e14c7c64d582c59709ae4";
   };
 
-  checkInputs = [ nose ];
-  propagatedBuildInputs = [ jinja2 pyyaml ];
+  doCheck = false; # tests aren't installed thus aren't found, so skip
+  propagatedBuildInputs = [ jinja2 pyyaml setuptools ];
 
   meta = with stdenv.lib; {
     homepage = "https://github.com/kolypto/j2cli";
diff --git a/pkgs/development/python-modules/jaraco_classes/default.nix b/pkgs/development/python-modules/jaraco_classes/default.nix
index 8e5458509c4..c9ce6915d2e 100644
--- a/pkgs/development/python-modules/jaraco_classes/default.nix
+++ b/pkgs/development/python-modules/jaraco_classes/default.nix
@@ -1,12 +1,13 @@
-{ buildPythonPackage, fetchPypi, setuptools_scm, six, more-itertools }:
+{ buildPythonPackage, fetchPypi, isPy27, setuptools_scm, six, more-itertools }:
 
 buildPythonPackage rec {
   pname = "jaraco.classes";
-  version = "3.0.0";
+  version = "3.1.0";
+  disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "886ad165d495e7d18781142d6dda4f0045053a038f9e63c38ef03e2f7127bafc";
+    sha256 = "1avsxzm5mwylmy2zbxq3xvn48z5djb0qy3hwv4ryncprivzri1n3";
   };
 
   nativeBuildInputs = [ setuptools_scm ];
diff --git a/pkgs/development/python-modules/jc/default.nix b/pkgs/development/python-modules/jc/default.nix
index 0c4d2062901..9ade29bece1 100644
--- a/pkgs/development/python-modules/jc/default.nix
+++ b/pkgs/development/python-modules/jc/default.nix
@@ -9,12 +9,12 @@
 
 buildPythonPackage rec {
   pname = "jc";
-  version = "1.9.2";
+  version = "1.9.3";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1zn6skiv5nm7g8cs86n152ni79ck538bwdjynlh8n2k9dvfd5i8l";
+    sha256 = "1hg6h3ag4pbilpmqylnj7dflz7avk3w8ngmk6psfqrizizwx0hnj";
   };
 
   propagatedBuildInputs = [ ruamel_yaml ifconfig-parser xmltodict ];
diff --git a/pkgs/development/python-modules/jsbeautifier/default.nix b/pkgs/development/python-modules/jsbeautifier/default.nix
index 4c77a07da02..b30d2ee7e0f 100644
--- a/pkgs/development/python-modules/jsbeautifier/default.nix
+++ b/pkgs/development/python-modules/jsbeautifier/default.nix
@@ -2,14 +2,14 @@
 
 buildPythonApplication rec {
   pname = "jsbeautifier";
-  version = "1.10.2";
+  version = "1.10.3";
 
   propagatedBuildInputs = [ six editorconfig ];
   checkInputs = [ pytest ];
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a5ce5195c0b54a68eb813649829143373823ca28caa4d7aa682442b87ebea1ce";
+    sha256 = "0aaxi56qm2wmccsdj4v1lc158625c2g6ikqq950yv43i0pyyi3lp";
   };
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/jsonrpc-websocket/default.nix b/pkgs/development/python-modules/jsonrpc-websocket/default.nix
index c0c2fe2a8ee..df5216bdd1a 100644
--- a/pkgs/development/python-modules/jsonrpc-websocket/default.nix
+++ b/pkgs/development/python-modules/jsonrpc-websocket/default.nix
@@ -3,11 +3,11 @@
 
 buildPythonPackage rec {
   pname = "jsonrpc-websocket";
-  version = "1.0.2";
+  version = "1.1.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f1aaca95db795d6a9f7bba52ff83c7fd4139050d0df93ee3a5a448adcfa0c0ac";
+    sha256 = "029gxp6f06gmba7glxfdz5xfhs5kkqph7x78k38qqvdrmca4z450";
   };
 
   nativeBuildInputs = [ pep8 ];
@@ -16,7 +16,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "A JSON-RPC websocket client library for asyncio";
-    homepage = https://github.com/armills/jsonrpc-websocket;
+    homepage = "https://github.com/armills/jsonrpc-websocket";
     license = licenses.bsd3;
     maintainers = with maintainers; [ peterhoeg ];
   };
diff --git a/pkgs/development/python-modules/jupyterlab/default.nix b/pkgs/development/python-modules/jupyterlab/default.nix
index 3faa0a2edc3..d3b67ba87bc 100644
--- a/pkgs/development/python-modules/jupyterlab/default.nix
+++ b/pkgs/development/python-modules/jupyterlab/default.nix
@@ -8,12 +8,12 @@
 
 buildPythonPackage rec {
   pname = "jupyterlab";
-  version = "2.0.0";
+  version = "2.1.0";
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "17p8rpihid0103fyjndk2yvg18n3ypn3hxay92ckcv10vsbiys5b";
+    sha256 = "10fwpgsi996nk2hcva14k8x6znczxgfmydvfsfrs1fpmmfmrl8wc";
   };
 
   propagatedBuildInputs = [ jupyterlab_server notebook ];
diff --git a/pkgs/development/python-modules/jupyterlab_server/default.nix b/pkgs/development/python-modules/jupyterlab_server/default.nix
index 9a526169489..db9fd195ae5 100644
--- a/pkgs/development/python-modules/jupyterlab_server/default.nix
+++ b/pkgs/development/python-modules/jupyterlab_server/default.nix
@@ -11,12 +11,12 @@
 
 buildPythonPackage rec {
   pname = "jupyterlab_server";
-  version = "1.0.7";
+  version = "1.1.0";
   disabled = pythonOlder "3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1qnqxy6812py7xklg7xfrkadm0v4z8x6n1035i26h2z7y891ff0j";
+    sha256 = "0cqpyy4jr3023c47ij08djkpx526gmz8fab45mcnws0glhp7xhms";
   };
 
   checkInputs = [ requests pytest ];
diff --git a/pkgs/development/python-modules/jupytext/default.nix b/pkgs/development/python-modules/jupytext/default.nix
index a77a1a576b4..8b2d56277ce 100644
--- a/pkgs/development/python-modules/jupytext/default.nix
+++ b/pkgs/development/python-modules/jupytext/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "jupytext";
-  version = "1.3.4";
+  version = "1.4.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0jijf4a3iaskzi6frjwhd8drh7brn94r1zl7gni6d0dzr296mm93";
+    sha256 = "126lmz702hbk7gyr4i6gkicmycx7zgsgjf47a6izq2d17bs0a9ji";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/lark-parser/default.nix b/pkgs/development/python-modules/lark-parser/default.nix
index ddf6cabcae9..41c16548032 100644
--- a/pkgs/development/python-modules/lark-parser/default.nix
+++ b/pkgs/development/python-modules/lark-parser/default.nix
@@ -5,13 +5,13 @@
 
 buildPythonPackage rec {
   pname = "lark-parser";
-  version = "0.8.2";
+  version = "0.8.5";
 
   src = fetchFromGitHub {
     owner = "lark-parser";
     repo = "lark";
     rev = version;
-    sha256 = "1i585q27qlwk4rpgsh621s60im1j9ynwyz5pcc8s3ffmjam28vss";
+    sha256 = "1rfybmr0rlljhc0dpd9npbw8x7r6dvnn2wvclz93rmgkzhmd3zah";
   };
 
   # tests of Nearley support require js2py
diff --git a/pkgs/development/python-modules/libvirt/5.9.0.nix b/pkgs/development/python-modules/libvirt/5.9.0.nix
new file mode 100644
index 00000000000..ef5da737e08
--- /dev/null
+++ b/pkgs/development/python-modules/libvirt/5.9.0.nix
@@ -0,0 +1,27 @@
+{ stdenv, buildPythonPackage, fetchgit, pkgconfig, lxml, libvirt, nose }:
+
+buildPythonPackage rec {
+  pname = "libvirt";
+  version = "5.9.0";
+
+  src = fetchgit {
+    url = git://libvirt.org/libvirt-python.git;
+    rev = "v${version}";
+    sha256 = "0qvr0s7yasswy1s5cvkm91iifk33pb8s7nbb38zznc46706b358r";
+  };
+
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ libvirt lxml ];
+
+  checkInputs = [ nose ];
+  checkPhase = ''
+    nosetests
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://www.libvirt.org/;
+    description = "libvirt Python bindings";
+    license = licenses.lgpl2;
+    maintainers = [ maintainers.fpletz ];
+  };
+}
diff --git a/pkgs/development/python-modules/libvirt/default.nix b/pkgs/development/python-modules/libvirt/default.nix
index f4a07b9635f..a7c620d8d87 100644
--- a/pkgs/development/python-modules/libvirt/default.nix
+++ b/pkgs/development/python-modules/libvirt/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "libvirt";
-  version = "5.4.0";
+  version = "6.2.0";
 
   src = assert version == libvirt.version; fetchgit {
     url = git://libvirt.org/libvirt-python.git;
     rev = "v${version}";
-    sha256 = "0ja35z90i3m7vsjfpzfm7awkmja3h0150376i5pzmf2q8vp61fi5";
+    sha256 = "0a8crk29rmnw1kcgi72crb7syacdk03lkl05yand5cxs0l65jwdl";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/python-modules/luftdaten/default.nix b/pkgs/development/python-modules/luftdaten/default.nix
index 9784d3af61f..dbbe3d25212 100644
--- a/pkgs/development/python-modules/luftdaten/default.nix
+++ b/pkgs/development/python-modules/luftdaten/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "luftdaten";
-  version = "0.6.3";
+  version = "0.6.4";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "161g3s3nwbkn3s101g8l4axll0kk8xxahxnvjrjdg2cghcjq9n8n";
+    sha256 = "1w1f0kmiwslg1dxn7gq0ak8f5wajlwl03r5zklshjc11j34b4d5i";
   };
 
   propagatedBuildInputs = [ aiohttp async-timeout ];
@@ -18,7 +18,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python API for interacting with luftdaten.info";
-    homepage = https://github.com/fabaff/python-luftdaten;
+    homepage = "https://github.com/fabaff/python-luftdaten";
     license = licenses.mit;
     maintainers = with maintainers; [ dotlambda ];
   };
diff --git a/pkgs/development/python-modules/magic-wormhole/default.nix b/pkgs/development/python-modules/magic-wormhole/default.nix
index 5db5c28a4cb..9e73001a149 100644
--- a/pkgs/development/python-modules/magic-wormhole/default.nix
+++ b/pkgs/development/python-modules/magic-wormhole/default.nix
@@ -23,18 +23,18 @@
 
 buildPythonPackage rec {
   pname = "magic-wormhole";
-  version = "0.11.2";
+  version = "0.12.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "01fr4bi6kc6fz9n3c4qq892inrc3nf6p2djy65yvm7xkvdxncydf";
+    sha256 = "0q41j99718y7m95zg1vaybnsp31lp6lhyqkbv4yqz5ys6jixh3qv";
   };
 
   buildInputs = [ glibcLocales ];
   propagatedBuildInputs = [ spake2 pynacl six attrs twisted autobahn automat hkdf tqdm click humanize txtorcon ];
   checkInputs = [ mock magic-wormhole-transit-relay magic-wormhole-mailbox-server ];
 
-  postPatch = ''
+  postPatch = stdenv.lib.optionalString stdenv.isLinux ''
     sed -i -e "s|'ifconfig'|'${nettools}/bin/ifconfig'|" src/wormhole/ipaddrs.py
   '';
 
@@ -56,7 +56,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "Securely transfer data between computers";
-    homepage = https://github.com/warner/magic-wormhole;
+    homepage = "https://github.com/warner/magic-wormhole";
     license = licenses.mit;
     # Currently broken on Python 2.7. See
     # https://github.com/NixOS/nixpkgs/issues/71826
diff --git a/pkgs/development/python-modules/marshmallow-polyfield/default.nix b/pkgs/development/python-modules/marshmallow-polyfield/default.nix
index cb0b9e9e60d..3b18c10cbc3 100644
--- a/pkgs/development/python-modules/marshmallow-polyfield/default.nix
+++ b/pkgs/development/python-modules/marshmallow-polyfield/default.nix
@@ -9,7 +9,7 @@
 
 buildPythonPackage rec {
   pname = "marshmallow-polyfield";
-  version = "5.7";
+  version = "5.9";
 
   src = fetchFromGitHub {
     owner = "Bachmann1234";
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [
     marshmallow
   ];
-  
+
   # setuptools check can run, but won't find tests
   checkInputs = [ pytestCheckHook pytestcov ];
 
diff --git a/pkgs/development/python-modules/matplotlib/default.nix b/pkgs/development/python-modules/matplotlib/default.nix
index beca4fed17d..658388eabae 100644
--- a/pkgs/development/python-modules/matplotlib/default.nix
+++ b/pkgs/development/python-modules/matplotlib/default.nix
@@ -41,7 +41,7 @@ buildPythonPackage rec {
     ++ stdenv.lib.optional stdenv.isDarwin [ Cocoa ];
 
   propagatedBuildInputs =
-    [ cycler dateutil nose numpy pyparsing tornado freetype kiwisolver
+    [ cycler dateutil numpy pyparsing tornado freetype kiwisolver
       libpng mock pytz ]
     ++ stdenv.lib.optional (pythonOlder "3.3") backports_functools_lru_cache
     ++ stdenv.lib.optionals enableGtk3 [ cairo pycairo gtk3 gobject-introspection pygobject3 ]
diff --git a/pkgs/development/python-modules/mayavi/default.nix b/pkgs/development/python-modules/mayavi/default.nix
index d7a821915f2..ffdf9747583 100644
--- a/pkgs/development/python-modules/mayavi/default.nix
+++ b/pkgs/development/python-modules/mayavi/default.nix
@@ -6,12 +6,12 @@
 
 buildPythonPackage rec {
   pname = "mayavi";
-  version = "4.7.0";
+  version = "4.7.1";
 
   src = fetchPypi {
     inherit pname version;
     extension = "tar.bz2";
-    sha256 = "02rg4j1vkny2piqn3f728kg34m54kgx396g6h5y7ykz2lk3f3h44";
+    sha256 = "095p7mds6kqqrp7xqv24iygr3mw85rm7x41wb5y4yc3gi1pznldy";
   };
 
   # Discovery of 'vtk' in setuptools is not working properly, due to a missing
@@ -30,7 +30,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "3D visualization of scientific data in Python";
-    homepage = https://github.com/enthought/mayavi;
+    homepage = "https://github.com/enthought/mayavi";
     maintainers = with stdenv.lib.maintainers; [ knedlsepp ];
     license = licenses.bsdOriginal;
   };
diff --git a/pkgs/development/python-modules/minidb/default.nix b/pkgs/development/python-modules/minidb/default.nix
index 3a65ef1028a..a324c8d7d08 100644
--- a/pkgs/development/python-modules/minidb/default.nix
+++ b/pkgs/development/python-modules/minidb/default.nix
@@ -5,14 +5,14 @@
 
 buildPythonPackage rec {
   pname = "minidb";
-  version = "2.0.2";
+  version = "2.0.3";
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "thp";
     repo = "minidb";
     rev = version;
-    sha256 = "14y5vf8vhgviczhzy9h3xv99fjvrg975nz4w1fj5c1jv37da1lq3";
+    sha256 = "0c6y3x957pc5sxkl34lymhkwpn4nlsfw07fcv4y9p2zdb7kjd1gc";
   };
 
   # module imports are incompatible with python2
diff --git a/pkgs/development/python-modules/mkl-service/default.nix b/pkgs/development/python-modules/mkl-service/default.nix
index ad3f30a66da..c8531299620 100644
--- a/pkgs/development/python-modules/mkl-service/default.nix
+++ b/pkgs/development/python-modules/mkl-service/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "mkl-service";
-  version = "2.1.0";
+  version = "2.3.0";
 
   src = fetchFromGitHub {
     owner = "IntelPython";
     repo = "mkl-service";
     rev = "v${version}";
-    sha256 = "1bnpgx629rxqf0yhn0jn68ypj3dqv6njc3981j1g8j8rsm5lycrn";
+    sha256 = "1b4dkkl439rfaa86ywzc2zf9ifawhvdlaiqcg0il83cn5bzs7g5z";
   };
 
   MKLROOT = mkl;
diff --git a/pkgs/development/python-modules/moderngl_window/default.nix b/pkgs/development/python-modules/moderngl_window/default.nix
index a3c93978ff6..b4aee8c61cf 100644
--- a/pkgs/development/python-modules/moderngl_window/default.nix
+++ b/pkgs/development/python-modules/moderngl_window/default.nix
@@ -12,13 +12,13 @@
 
 buildPythonPackage rec {
   pname = "moderngl_window";
-  version = "1.2.0";
+  version = "2.1.0";
 
   src = fetchFromGitHub {
     owner = "moderngl";
     repo = pname;
     rev = version;
-    sha256 = "054w77lyc2nc0dyx76zsrbq2b3xbywdijhb62b2qqm99ldr1k1x5";
+    sha256 = "1p03j91pk2bwycd13p0qi8kns1sf357180hd2mkaip8mfaf33x3q";
   };
 
   propagatedBuildInputs = [ numpy moderngl pyglet pillow pyrr ];
diff --git a/pkgs/development/python-modules/monty/default.nix b/pkgs/development/python-modules/monty/default.nix
index 427f0af4573..fb84847acff 100644
--- a/pkgs/development/python-modules/monty/default.nix
+++ b/pkgs/development/python-modules/monty/default.nix
@@ -29,6 +29,13 @@ buildPythonPackage rec {
   checkInputs = [ lsof nose numpy msgpack coverage coveralls pymongo];
   propagatedBuildInputs = [ six ruamel_yaml ];
 
+  # test suite tries to decode bytes, but msgpack now returns a str
+  # https://github.com/materialsvirtuallab/monty/pull/121
+  postPatch = ''
+    substituteInPlace tests/test_serialization.py \
+      --replace ".decode('utf-8')" ""
+  '';
+
   preCheck = ''
     substituteInPlace tests/test_os.py \
       --replace 'self.assertEqual("/usr/bin/find", which("/usr/bin/find"))' '#'
diff --git a/pkgs/development/python-modules/morphys/default.nix b/pkgs/development/python-modules/morphys/default.nix
new file mode 100644
index 00000000000..8f8525f7afe
--- /dev/null
+++ b/pkgs/development/python-modules/morphys/default.nix
@@ -0,0 +1,24 @@
+{ buildPythonPackage
+, fetchFromGitHub
+, lib
+}:
+buildPythonPackage rec {
+  pname = "morphys";
+  version = "1.0";
+
+  src = fetchFromGitHub {
+    owner = "mkalinski";
+    repo = "morphys";
+    rev = "0642a71126c32cd26b3a443a5cac27e4e1f7240f";
+    sha256 = "1da8s04m5wwih9cvkrks3ymb8v082lia47f274hxmfhi6ma3qc8b";
+  };
+
+  pythonImportsCheck = [ "morphys" ];
+
+  meta = with lib; {
+    description = "Smart conversions between unicode and bytes types";
+    homepage = "https://github.com/mkalinski/morphys";
+    license = licenses.mit;
+    maintainers = with maintainers; [ rakesh4g ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/python-modules/moviepy/default.nix b/pkgs/development/python-modules/moviepy/default.nix
index 7e9215f3393..2daabf22d9e 100644
--- a/pkgs/development/python-modules/moviepy/default.nix
+++ b/pkgs/development/python-modules/moviepy/default.nix
@@ -25,13 +25,13 @@ assert advancedProcessing -> (
 
 buildPythonPackage rec {
   pname = "moviepy";
-  version = "1.0.1";
+  version = "1.0.2";
 
   disabled = !(pythonAtLeast "3.4");
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1vgi9k1r4f5s9hzfzlhmmc574n80aq713ahv8cnbj3jci070lnwx";
+    sha256 = "0ajw2xmcd962qw2kxxnbp08l5vgk5k78sls9bb227lw8aa51ln80";
   };
 
   # No tests, require network connection
@@ -45,7 +45,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "Video editing with Python";
-    homepage = http://zulko.github.io/moviepy/;
+    homepage = "https://zulko.github.io/moviepy/";
     license = licenses.mit;
   };
 
diff --git a/pkgs/development/python-modules/mutag/default.nix b/pkgs/development/python-modules/mutag/default.nix
index 0d5d8d75a36..5dd34fef112 100644
--- a/pkgs/development/python-modules/mutag/default.nix
+++ b/pkgs/development/python-modules/mutag/default.nix
@@ -6,7 +6,8 @@
 }:
 
 buildPythonPackage {
-  name = "mutag-0.0.2-2ffa0258ca";
+  pname = "mutag";
+  version = "0.0.2-2ffa0258ca";
   disabled = ! isPy3k;
 
   src = fetchgit {
diff --git a/pkgs/development/python-modules/mypy-protobuf/default.nix b/pkgs/development/python-modules/mypy-protobuf/default.nix
index 954e913c9cf..5cc192313ac 100644
--- a/pkgs/development/python-modules/mypy-protobuf/default.nix
+++ b/pkgs/development/python-modules/mypy-protobuf/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonApplication rec {
   pname = "mypy-protobuf";
-  version = "1.16";
+  version = "1.20";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "72ab724299aebd930b88476f6545587bff5bf480697c016097bd188841a56276";
+    sha256 = "03j2i9vhpdxbvwlqg6zghlzzq46s1x2jbx20fwninb6kss0ps3rg";
   };
 
   propagatedBuildInputs = [ protobuf ];
diff --git a/pkgs/development/python-modules/mypy/default.nix b/pkgs/development/python-modules/mypy/default.nix
index 90b00ba1717..bcd0ab4a6c6 100644
--- a/pkgs/development/python-modules/mypy/default.nix
+++ b/pkgs/development/python-modules/mypy/default.nix
@@ -5,12 +5,12 @@
 
 buildPythonPackage rec {
   pname = "mypy";
-  version = "0.761";
+  version = "0.770";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1gw7h84d21wmi267kmgqs9whz0l7rp62pzja2f31wq7cfj6spfl5";
+    sha256 = "1bm40nx9g1n4nj1309cijnh0ns4qbhym3agyl537nc4vxw3paqla";
   };
 
   propagatedBuildInputs = [ typed-ast psutil mypy-extensions typing-extensions ];
diff --git a/pkgs/development/python-modules/nbdime/default.nix b/pkgs/development/python-modules/nbdime/default.nix
index f641c017384..7e774eed296 100644
--- a/pkgs/development/python-modules/nbdime/default.nix
+++ b/pkgs/development/python-modules/nbdime/default.nix
@@ -24,12 +24,12 @@
 
 buildPythonPackage rec {
   pname = "nbdime";
-  version = "1.1.0";
+  version = "2.0.0";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0qfy7nmlg75vryvrlgd6p0rqrvcclq8n9kd0n4xv5959s9sjy0w0";
+    sha256 = "0pbi22mc5al29pvsw7bhai2d58i8n77gv09r7avr1wap6ni7jvw9";
   };
 
   checkInputs = [
@@ -61,7 +61,7 @@ buildPythonPackage rec {
     ];
 
   meta = with lib; {
-    homepage = https://github.com/jupyter/nbdime;
+    homepage = "https://github.com/jupyter/nbdime";
     description = "Tools for diffing and merging of Jupyter notebooks.";
     license = licenses.bsd3;
     maintainers = with maintainers; [ tbenst ];
diff --git a/pkgs/development/python-modules/nest-asyncio/default.nix b/pkgs/development/python-modules/nest-asyncio/default.nix
index dbbbc04d141..1934317a112 100644
--- a/pkgs/development/python-modules/nest-asyncio/default.nix
+++ b/pkgs/development/python-modules/nest-asyncio/default.nix
@@ -5,16 +5,16 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.3.0";
+  version = "1.3.2";
   pname = "nest_asyncio";
   disabled = !(pythonAtLeast "3.5");
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1cbd885n3sf4qg1dv3mk1ggr5ssk48yzrzssznr92dh53g04ly7g";
+    sha256 = "0l43k0lx7r6izancfhhg68x82mvws2di1a9w2y12l1a446vr9q8l";
   };
 
-  # tests not packaged with source dist as of 1.3.0/1.3.0, and
+  # tests not packaged with source dist as of 1.3.2/1.3.2, and
   # can't check tests out of GitHub easily without specific commit IDs (no tagged releases)
   doCheck = false;
   pythonImportsCheck = [ "nest_asyncio" ];
diff --git a/pkgs/development/python-modules/nibabel/default.nix b/pkgs/development/python-modules/nibabel/default.nix
index 3a907bc8ca0..751cc139548 100644
--- a/pkgs/development/python-modules/nibabel/default.nix
+++ b/pkgs/development/python-modules/nibabel/default.nix
@@ -29,7 +29,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    homepage = https://nipy.org/nibabel/;
+    homepage = "https://nipy.org/nibabel";
     description = "Access a multitude of neuroimaging data formats";
     license = licenses.mit;
     maintainers = with maintainers; [ ashgillman ];
diff --git a/pkgs/development/python-modules/nilearn/default.nix b/pkgs/development/python-modules/nilearn/default.nix
index a379f236f3f..1e58aee503b 100644
--- a/pkgs/development/python-modules/nilearn/default.nix
+++ b/pkgs/development/python-modules/nilearn/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildPythonPackage, fetchPypi, pytest
+{ stdenv, buildPythonPackage, fetchPypi, pytest, nose
 , nibabel, numpy, pandas, scikitlearn, scipy, matplotlib, joblib }:
 
 buildPythonPackage rec {
@@ -20,7 +20,7 @@ buildPythonPackage rec {
     pytest nilearn/tests -k 'not test_cache_mixin_with_expand_user'  # accesses ~/
   '';
 
-  checkInputs = [ pytest ];
+  checkInputs = [ pytest nose ];
 
   propagatedBuildInputs = [
     joblib
@@ -33,7 +33,7 @@ buildPythonPackage rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = http://nilearn.github.io;
+    homepage = "http://nilearn.github.io";
     description = "A module for statistical learning on neuroimaging data";
     license = licenses.bsd3;
   };
diff --git a/pkgs/development/python-modules/nipy/default.nix b/pkgs/development/python-modules/nipy/default.nix
index 5b8c1e5185d..fef24e837d1 100644
--- a/pkgs/development/python-modules/nipy/default.nix
+++ b/pkgs/development/python-modules/nipy/default.nix
@@ -41,7 +41,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://nipy.org/nipy/;
+    homepage = "https://nipy.org/nipy";
     description = "Software for structural and functional neuroimaging analysis";
     license = licenses.bsd3;
   };
diff --git a/pkgs/development/python-modules/nipype/default.nix b/pkgs/development/python-modules/nipype/default.nix
index 5944e4d863f..436c9fe6379 100644
--- a/pkgs/development/python-modules/nipype/default.nix
+++ b/pkgs/development/python-modules/nipype/default.nix
@@ -106,7 +106,7 @@ buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://nipy.org/nipype/;
+    homepage = "https://nipy.org/nipype/";
     description = "Neuroimaging in Python: Pipelines and Interfaces";
     license = licenses.bsd3;
     maintainers = with maintainers; [ ashgillman ];
diff --git a/pkgs/development/python-modules/nitime/default.nix b/pkgs/development/python-modules/nitime/default.nix
index b61c3d92bc9..8fa40465c10 100644
--- a/pkgs/development/python-modules/nitime/default.nix
+++ b/pkgs/development/python-modules/nitime/default.nix
@@ -28,7 +28,7 @@ buildPythonPackage rec {
   checkPhase = "pytest nitime/tests";
 
   meta = with lib; {
-    homepage = https://nipy.org/nitime;
+    homepage = "https://nipy.org/nitime";
     description = "Algorithms and containers for time-series analysis in time and spectral domains";
     license = licenses.bsd3;
     maintainers = [ maintainers.bcdarwin ];
diff --git a/pkgs/development/python-modules/notmuch/default.nix b/pkgs/development/python-modules/notmuch/default.nix
index 567977a84f5..5d5a85b6fdd 100644
--- a/pkgs/development/python-modules/notmuch/default.nix
+++ b/pkgs/development/python-modules/notmuch/default.nix
@@ -1,20 +1,18 @@
 { stdenv
 , buildPythonPackage
-, pkgs
+, notmuch
 , python
 }:
 
 buildPythonPackage {
-  name = "python-${pkgs.notmuch.name}";
+  inherit (notmuch) pname version src;
 
-  src = pkgs.notmuch.src;
+  sourceRoot = notmuch.pythonSourceRoot;
 
-  sourceRoot = pkgs.notmuch.pythonSourceRoot;
-
-  buildInputs = [ python pkgs.notmuch ];
+  buildInputs = [ python notmuch ];
 
   postPatch = ''
-    sed -i -e '/CDLL/s@"libnotmuch\.@"${pkgs.notmuch}/lib/libnotmuch.@' \
+    sed -i -e '/CDLL/s@"libnotmuch\.@"${notmuch}/lib/libnotmuch.@' \
       notmuch/globals.py
   '';
 
diff --git a/pkgs/development/python-modules/ntlm-auth/default.nix b/pkgs/development/python-modules/ntlm-auth/default.nix
index e4bbe0fb430..14900d5c55d 100644
--- a/pkgs/development/python-modules/ntlm-auth/default.nix
+++ b/pkgs/development/python-modules/ntlm-auth/default.nix
@@ -3,22 +3,23 @@
 , fetchFromGitHub
 , mock
 , pytest
+, requests
 , unittest2
 , six
 }:
 
 buildPythonPackage rec {
   pname = "ntlm-auth";
-  version = "1.0.3";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "jborean93";
     repo = "ntlm-auth";
     rev = "v${version}";
-    sha256 = "09f2g4ivfi9lh1kr30hlg0q4n2imnvmd79w83gza11q9nmhhiwpz";
+    sha256 = "168k3ygwbvnfcwn7q1nv3vvy6b9jc4cnpix0xgg5j8av7v1x0grn";
   };
 
-  checkInputs = [ mock pytest unittest2 ];
+  checkInputs = [ mock pytest requests unittest2 ];
   propagatedBuildInputs = [ six ];
 
   # Functional tests require networking
@@ -28,8 +29,8 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Calculates NTLM Authentication codes";
-    homepage = https://github.com/jborean93/ntlm-auth;
-    license = licenses.lgpl3;
+    homepage = "https://github.com/jborean93/ntlm-auth";
+    license = licenses.mit;
     maintainers = with maintainers; [ elasticdog ];
     platforms = platforms.all;
   };
diff --git a/pkgs/development/python-modules/numpy-stl/default.nix b/pkgs/development/python-modules/numpy-stl/default.nix
index 4c2af8a0081..5acdfd6f8c6 100644
--- a/pkgs/development/python-modules/numpy-stl/default.nix
+++ b/pkgs/development/python-modules/numpy-stl/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "numpy-stl";
-  version = "2.10.1";
+  version = "2.11.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f6b529b8a8112dfe456d4f7697c7aee0aca62be5a873879306afe4b26fca963c";
+    sha256 = "1z6b740fpkr8fbbhw79l29hmwf76xcda6ni804sqz0jghm7883yy";
   };
 
   checkInputs = [ pytest pytestrunner ];
diff --git a/pkgs/development/python-modules/openwrt-luci-rpc/default.nix b/pkgs/development/python-modules/openwrt-luci-rpc/default.nix
new file mode 100644
index 00000000000..4dc4ffa68fc
--- /dev/null
+++ b/pkgs/development/python-modules/openwrt-luci-rpc/default.nix
@@ -0,0 +1,36 @@
+{ buildPythonPackage
+, fetchPypi
+, lib
+, click
+, requests
+, packaging
+}:
+
+with lib;
+
+buildPythonPackage rec {
+  pname = "openwrt-luci-rpc";
+  version = "1.1.2";
+
+  srcs = fetchPypi {
+    inherit pname version;
+    sha256 = "144bw7w1xvpdkad5phflpkl15ih5pvi19799wmvfv8mj1dn1yjhp";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.py --replace "requests==2.21.0" "requests"
+    substituteInPlace setup.py --replace "packaging==19.1" "packaging"
+  '';
+
+  propagatedBuildInputs = [ click requests packaging ];
+
+  meta = {
+    description = ''
+      Python3 module for interacting with the OpenWrt Luci RPC interface.
+      Supports 15.X & 17.X & 18.X or newer releases of OpenWrt.
+    '';
+    homepage = "https://github.com/fbradyirl/openwrt-luci-rpc";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ matt-snider ];
+  };
+}
diff --git a/pkgs/development/python-modules/opuslib/default.nix b/pkgs/development/python-modules/opuslib/default.nix
new file mode 100644
index 00000000000..aa7fc4add49
--- /dev/null
+++ b/pkgs/development/python-modules/opuslib/default.nix
@@ -0,0 +1,39 @@
+{ buildPythonPackage,
+  fetchFromGitHub,
+  isPy27,
+  libopus,
+  nose,
+  stdenv,
+  substituteAll,
+}:
+
+buildPythonPackage rec {
+  pname = "opuslib";
+  version = "3.0.3";
+
+  disabled = isPy27;
+
+  src = fetchFromGitHub {
+    owner = "orion-labs";
+    repo = "opuslib";
+    rev = "92109c528f9f6c550df5e5325ca0fcd4f86b0909";
+    sha256 = "0kd37wimwd1g6c0w5hq2hiiljgbi1zg3rk5prval086khkzq469p";
+  };
+
+  patches = [
+    (substituteAll {
+      src = ./opuslib-paths.patch;
+      opusLibPath = "${libopus}/lib/libopus${stdenv.hostPlatform.extensions.sharedLibrary}";
+    })
+  ];
+
+  checkInputs = [ nose ];
+
+  meta = with stdenv.lib; {
+    description = "Python bindings to the libopus, IETF low-delay audio codec";
+    homepage = "https://github.com/orion-labs/opuslib";
+    license = licenses.bsd3;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ thelegy ];
+  };
+}
diff --git a/pkgs/development/python-modules/opuslib/opuslib-paths.patch b/pkgs/development/python-modules/opuslib/opuslib-paths.patch
new file mode 100644
index 00000000000..fd2cfc8dbde
--- /dev/null
+++ b/pkgs/development/python-modules/opuslib/opuslib-paths.patch
@@ -0,0 +1,26 @@
+diff --git a/opuslib/api/__init__.py b/opuslib/api/__init__.py
+index 323a2a4..4c8a8fe 100644
+--- a/opuslib/api/__init__.py
++++ b/opuslib/api/__init__.py
+@@ -7,20 +7,12 @@
+
+ import ctypes  # type: ignore
+
+-from ctypes.util import find_library  # type: ignore
+-
+ __author__ = 'Никита Кузнецов <self@svartalf.info>'
+ __copyright__ = 'Copyright (c) 2012, SvartalF'
+ __license__ = 'BSD 3-Clause License'
+
+
+-lib_location = find_library('opus')
+-
+-if lib_location is None:
+-    raise Exception(
+-        'Could not find Opus library. Make sure it is installed.')
+-
+-libopus = ctypes.CDLL(lib_location)
++libopus = ctypes.CDLL('@opusLibPath@')
+
+ c_int_pointer = ctypes.POINTER(ctypes.c_int)
+ c_int16_pointer = ctypes.POINTER(ctypes.c_int16)
diff --git a/pkgs/development/python-modules/osqp/default.nix b/pkgs/development/python-modules/osqp/default.nix
index 237ad7a7a00..16997d66781 100644
--- a/pkgs/development/python-modules/osqp/default.nix
+++ b/pkgs/development/python-modules/osqp/default.nix
@@ -4,10 +4,9 @@
 , cmake
 , future
 , numpy
-  # check inputs
 , scipy
+# check inputs
 , pytestCheckHook
-, mkl
 }:
 
 buildPythonPackage rec {
@@ -23,16 +22,15 @@ buildPythonPackage rec {
   dontUseCmakeConfigure = true;
 
   propagatedBuildInputs = [
-    numpy
     future
+    numpy
+    scipy
   ];
 
-  checkInputs = [ scipy pytestCheckHook mkl ];
   pythonImportsCheck = [ "osqp" ];
-  dontUseSetuptoolsCheck = true;  # running setup.py fails if false
-  preCheck = ''
-    export LD_LIBRARY_PATH=${lib.strings.makeLibraryPath [ mkl ]}:$LD_LIBRARY_PATH;
-  '';
+  checkInputs = [ pytestCheckHook ];
+  dontUseSetuptoolsCheck = true;  # don't run checks twice
+  disabledTests = [ "mkl_" ];
 
   meta = with lib; {
     description = "The Operator Splitting QP Solver";
@@ -44,8 +42,8 @@ buildPythonPackage rec {
       where x in R^n is the optimization variable
     '';
     homepage = "https://osqp.org/";
-    downloadPage = "https://github.com/oxfordcontrol/osqp";
+    downloadPage = "https://github.com/oxfordcontrol/osqp-python/releases";
     license = licenses.asl20;
-    maintainers = with lib.maintainers; [ drewrisinger ];
+    maintainers = with maintainers; [ drewrisinger ];
   };
 }
diff --git a/pkgs/development/python-modules/pam/default.nix b/pkgs/development/python-modules/pam/default.nix
new file mode 100644
index 00000000000..6b585537978
--- /dev/null
+++ b/pkgs/development/python-modules/pam/default.nix
@@ -0,0 +1,32 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, pam
+}:
+
+buildPythonPackage rec {
+  pname = "python-pam";
+  version = "1.8.4";
+
+  src = fetchFromGitHub {
+    owner = "FirefighterBlu3";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0gp7vzd332j7jwndcnz7kc9j283d6lyv32bndd1nqv9ghzv69sxp";
+  };
+
+  buildInputs = [
+    pam
+  ];
+
+  postPatch = ''
+    sed "s|find_library(\"pam\")|\"${pam}/lib/libpam.so\"|g" -i pam.py
+  '';
+
+  meta = with lib; {
+    description = "Python pam module supporting py3 (and py2)";
+    homepage = "https://github.com/FirefighterBlu3/python-pam";
+    license = licenses.mit;
+    maintainers = with maintainers; [ mkg20001 ];
+  };
+}
diff --git a/pkgs/development/python-modules/pastel/default.nix b/pkgs/development/python-modules/pastel/default.nix
index 532970c62c2..a44b4253ca5 100644
--- a/pkgs/development/python-modules/pastel/default.nix
+++ b/pkgs/development/python-modules/pastel/default.nix
@@ -1,24 +1,21 @@
-{ lib, buildPythonPackage, fetchFromGitHub, pytest }:
+{ lib, buildPythonPackage, fetchPypi, poetry, pytest }:
 
 buildPythonPackage rec {
   pname = "pastel";
-  version = "0.1.0";
+  version = "0.2.0";
 
-  # No tests in PyPi tarball
-  src = fetchFromGitHub {
-    owner = "sdispater";
-    repo = "pastel";
-    rev = version;
-    sha256 = "1b4ag7jr7j0sxly5g29imdq8g0d4ixhbck55dblr45mlsidydx0s";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0dnaw44ss10i10z4ksy0xljknvjap7rb7g0b8p6yzm5x4g2my5a6";
   };
 
   checkInputs = [ pytest ];
   checkPhase = ''
-    pytest tests -sq
+    pytest
   '';
 
   meta = with lib; {
-    homepage = https://github.com/sdispater/pastel;
+    homepage = "https://github.com/sdispater/pastel";
     description = "Bring colors to your terminal";
     license = licenses.mit;
     maintainers = with maintainers; [ jakewaksbaum ];
diff --git a/pkgs/development/python-modules/patch-ng/default.nix b/pkgs/development/python-modules/patch-ng/default.nix
new file mode 100644
index 00000000000..7cab2570798
--- /dev/null
+++ b/pkgs/development/python-modules/patch-ng/default.nix
@@ -0,0 +1,22 @@
+{ stdenv
+, buildPythonPackage
+, fetchPypi
+}:
+
+buildPythonPackage rec {
+  version = "1.17.4"; # note: `conan` package may require a hardcoded one
+  pname = "patch-ng";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1kja1nn08w0k8k6j4kad48k581hh9drvjjb8x60v9j13sxdvqyk2";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Library to parse and apply unified diffs.";
+    homepage = "https://github.com/conan-io/python-patch";
+    license = licenses.mit;
+    maintainers = with maintainers; [ HaoZeke ];
+  };
+
+}
diff --git a/pkgs/development/python-modules/pdfminer_six/default.nix b/pkgs/development/python-modules/pdfminer_six/default.nix
index 5f3cc06b5af..ace2b618ef2 100644
--- a/pkgs/development/python-modules/pdfminer_six/default.nix
+++ b/pkgs/development/python-modules/pdfminer_six/default.nix
@@ -1,19 +1,29 @@
-{ stdenv, buildPythonPackage, fetchFromGitHub, isPy3k, six, pycryptodome, chardet, nose, sortedcontainers }:
+{ stdenv, buildPythonPackage, fetchFromGitHub, isPy3k, pycryptodome, chardet, nose, sortedcontainers, fetchpatch }:
 
 buildPythonPackage rec {
   pname = "pdfminer_six";
-  version = "20191020";
+  version = "20200402";
+
+  disabled = !isPy3k;
 
   # No tests in PyPi Tarball
   src = fetchFromGitHub {
     owner = "pdfminer";
     repo = "pdfminer.six";
     rev = version;
-    sha256 = "1fqn4ilcscvw6ws9a1yqiprha9d3rgw3d0280clkbk6s4l26wm9h";
+    sha256 = "1wl64r3ifpwi7mm5pcxc0ji7w380nxcq3zrv66n95lglm4zqkf26";
   };
 
-  propagatedBuildInputs = [ six pycryptodome sortedcontainers ]
-    ++ stdenv.lib.optionals isPy3k [ chardet ];
+  patches = [
+    # Add shebang line to scripts. See: https://github.com/pdfminer/pdfminer.six/pull/408
+    (fetchpatch {
+      url = "https://github.com/pdfminer/pdfminer.six/commit/0c2f44b6de064d9a3cea99bde5b8e9c6a525a69c.patch";
+      sha256 = "1vml66grnvg4g26mya24kiyxsz809d4mr7wz8qmawjbn4ss65y21";
+      excludes = [ "CHANGELOG.md" ];
+    })
+  ];
+
+  propagatedBuildInputs = [ chardet pycryptodome sortedcontainers ];
 
   checkInputs = [ nose ];
   checkPhase = ''
@@ -21,8 +31,8 @@ buildPythonPackage rec {
   '';
 
   meta = with stdenv.lib; {
-    description = "fork of PDFMiner using six for Python 2+3 compatibility";
-    homepage = https://github.com/pdfminer/pdfminer.six;
+    description = "PDF parser and analyzer";
+    homepage = "https://github.com/pdfminer/pdfminer.six";
     license = licenses.mit;
     maintainers = with maintainers; [ psyanticy marsam ];
   };
diff --git a/pkgs/development/python-modules/pglast/default.nix b/pkgs/development/python-modules/pglast/default.nix
index bc54c18ac81..1165157fecc 100644
--- a/pkgs/development/python-modules/pglast/default.nix
+++ b/pkgs/development/python-modules/pglast/default.nix
@@ -10,11 +10,11 @@
 
 buildPythonPackage rec {
   pname = "pglast";
-  version = "1.8";
+  version = "1.10";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "115067100fbb9eb36f530d94b64b4e1e36a8d304537af0847d562ff9ed399c05";
+    sha256 = "a26ba77127b363446955e8a5317b3194defb1c1bb9d2ed5e7d4830fd4f066d97";
   };
 
   disabled = !isPy3k;
diff --git a/pkgs/development/python-modules/phonenumbers/default.nix b/pkgs/development/python-modules/phonenumbers/default.nix
index ff64f9ca82d..f16bf3f014c 100644
--- a/pkgs/development/python-modules/phonenumbers/default.nix
+++ b/pkgs/development/python-modules/phonenumbers/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "phonenumbers";
-  version = "8.11.4";
+  version = "8.12.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "13hfcw89kppm8s2qx0s5bafzxjc0qhm9sxmpf6yqvshz2fn82pk8";
+    sha256 = "0mnicas0c5av322d7k6m14j3c10axh9mcvn3vx99vhngdnb9j6hn";
   };
 
   meta = {
diff --git a/pkgs/development/python-modules/picos/default.nix b/pkgs/development/python-modules/picos/default.nix
index 57fbe099071..ca6346d1cd2 100644
--- a/pkgs/development/python-modules/picos/default.nix
+++ b/pkgs/development/python-modules/picos/default.nix
@@ -4,19 +4,25 @@
 , numpy
 , cvxopt
 , python
+, networkx
 }:
 
 buildPythonPackage rec {
   pname = "picos";
-  version = "1.2.0";
+  version = "2.0";
 
   src = fetchFromGitLab {
     owner = "picos-api";
     repo = "picos";
     rev = "v${version}";
-    sha256 = "018xhc7cb2crkk27lhl63c7h77w5wa37fg41i7nqr4xclr43cs9z";
+    sha256 = "1k65iq791k5r08gh2kc6iz0xw1wyzqik19j6iam8ip732r7jm607";
   };
 
+  # Needed only for the tests
+  checkInputs = [
+    networkx
+  ];
+  
   propagatedBuildInputs = [
     numpy
     cvxopt
@@ -28,9 +34,8 @@ buildPythonPackage rec {
   
   meta = with lib; {
     description = "A Python interface to conic optimization solvers";
-    homepage = https://gitlab.com/picos-api/picos;
+    homepage = "https://gitlab.com/picos-api/picos";
     license = licenses.gpl3;
     maintainers = with maintainers; [ tobiasBora ];
   };
 }
-
diff --git a/pkgs/development/python-modules/pid/default.nix b/pkgs/development/python-modules/pid/default.nix
index 20e9390861d..8e45c43954d 100644
--- a/pkgs/development/python-modules/pid/default.nix
+++ b/pkgs/development/python-modules/pid/default.nix
@@ -6,11 +6,11 @@
 
 buildPythonPackage rec {
   pname = "pid";
-  version = "2.2.5";
+  version = "3.0.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "96eb7dba326b88f5164bc1afdc986c7793e0d32d7f62366256a3903c7b0614ef";
+    sha256 = "0pdp8h1m4brxalcsmzzzmjj66vj98g6wigwmcdj5sf8p7insklgn";
   };
 
   buildInputs = [ nose ];
@@ -20,7 +20,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "Pidfile featuring stale detection and file-locking";
-    homepage = https://github.com/trbs/pid/;
+    homepage = "https://github.com/trbs/pid/";
     license = licenses.asl20;
   };
 
diff --git a/pkgs/development/python-modules/pint/default.nix b/pkgs/development/python-modules/pint/default.nix
index 8bbda8bd51f..532d9d0ede8 100644
--- a/pkgs/development/python-modules/pint/default.nix
+++ b/pkgs/development/python-modules/pint/default.nix
@@ -2,20 +2,40 @@
 , buildPythonPackage
 , fetchPypi
 , isPy27
+, pythonOlder
 , funcsigs
+, setuptools_scm
+# Check Inputs
+, pytestCheckHook
+, numpy
+, matplotlib
+, uncertainties
 }:
 
 buildPythonPackage rec {
   pname = "pint";
-  version = "0.9";
+  version = "0.11";
 
   src = fetchPypi {
     inherit version;
     pname = "Pint";
-    sha256 = "32d8a9a9d63f4f81194c0014b3b742679dce81a26d45127d9810a68a561fe4e2";
+    sha256 = "0kfgnmcs6z9ndhzvwg2xzhpwxgyyagdsdz5dns1jy40fa1q113rh";
   };
 
-  propagatedBuildInputs = lib.optional isPy27 funcsigs;
+  disabled = pythonOlder "3.6";
+
+  propagatedBuildInputs = [
+    setuptools_scm
+  ] ++ lib.optional isPy27 funcsigs;
+
+  # Test suite explicitly requires pytest
+  checkInputs = [
+    pytestCheckHook
+    numpy
+    matplotlib
+    uncertainties
+  ];
+  dontUseSetuptoolsCheck = true;
 
   meta = with lib; {
     description = "Physical quantities module";
diff --git a/pkgs/development/python-modules/pip-tools/default.nix b/pkgs/development/python-modules/pip-tools/default.nix
index 0a8d679ae5f..20a42cddcf9 100644
--- a/pkgs/development/python-modules/pip-tools/default.nix
+++ b/pkgs/development/python-modules/pip-tools/default.nix
@@ -3,11 +3,11 @@
 
 buildPythonPackage rec {
   pname = "pip-tools";
-  version = "4.3.0";
+  version = "4.5.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0x36mp3a3f3wandfc0g8d53gg2jkc14nhisbryzspcl9f05sbvq6";
+    sha256 = "166crncd9zrk9wgk9dss9968mx2c1dzj80sjnaqrcmw7a7j30gv9";
   };
 
   LC_ALL = "en_US.UTF-8";
@@ -27,6 +27,7 @@ buildPythonPackage rec {
     "test_generate_hashes_with_editable"
     "test_generate_hashes_with_url"
     "test_generate_hashes_without_interfering_with_each_other"
+    "test_get_file_hash_without_interfering_with_each_other"
     "test_get_hashes_local_repository_cache_miss"
     "test_realistic_complex_sub_dependencies"
     "test_stdin"
diff --git a/pkgs/development/python-modules/plumbum/default.nix b/pkgs/development/python-modules/plumbum/default.nix
index d24b2dcafda..796f9418497 100644
--- a/pkgs/development/python-modules/plumbum/default.nix
+++ b/pkgs/development/python-modules/plumbum/default.nix
@@ -5,7 +5,7 @@
 
 buildPythonPackage rec {
   pname = "plumbum";
-  version = "1.6.8";
+  version = "1.6.9";
 
   checkInputs = [ pytest ];
 
@@ -14,6 +14,6 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "14mbyvc1y25lr72n1zh9ym5ngify7zdr57lxahidq03ycpwz4wc5";
+    sha256 = "1ps37vamqav6p277dlp51jnacd5q4x4z1x8y0nfjw3y8jsfy3f8n";
   };
 }
\ No newline at end of file
diff --git a/pkgs/development/python-modules/poetry/default.nix b/pkgs/development/python-modules/poetry/default.nix
index f007ff3df1d..481fd2c5feb 100644
--- a/pkgs/development/python-modules/poetry/default.nix
+++ b/pkgs/development/python-modules/poetry/default.nix
@@ -36,7 +36,7 @@ in buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0y528095njf28isbcp5iwbf12j67xhxnrkac93pws0zy133v7kc1";
+    sha256 = "02h387k0xssvv78yy82pcpknpq4w5ym2in1zl8cg9r5wljl5w6cf";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/pony/default.nix b/pkgs/development/python-modules/pony/default.nix
index 22c14cc0dfb..c69e4fc4867 100644
--- a/pkgs/development/python-modules/pony/default.nix
+++ b/pkgs/development/python-modules/pony/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pony";
-  version = "0.7.12";
+  version = "0.7.13";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "02njpqwfvzxj9icabil8ycmfx8avzih3g1kcdif290qgsy57a28r";
+    sha256 = "1fqc45m106xfy4hhzzwb8p7s2fh5x2x7s143dib84lbszqwp77la";
   };
 
   doCheck = true;
diff --git a/pkgs/development/python-modules/prompt_toolkit/default.nix b/pkgs/development/python-modules/prompt_toolkit/default.nix
index dd3c8d16a51..4ef7f221366 100644
--- a/pkgs/development/python-modules/prompt_toolkit/default.nix
+++ b/pkgs/development/python-modules/prompt_toolkit/default.nix
@@ -8,11 +8,11 @@
 
 buildPythonPackage rec {
   pname = "prompt_toolkit";
-  version = "2.0.10";
+  version = "3.0.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1nr990i4b04rnlw1ghd0xmgvvvhih698mb6lb6jylr76cs7zcnpi";
+    sha256 = "10wpsbl1mmnvm8q63zs40633kbq93bidx4vz1p2q92w8ijqb3rpb";
   };
   checkPhase = ''
     py.test -k 'not test_pathcompleter_can_expanduser'
diff --git a/pkgs/development/python-modules/protego/default.nix b/pkgs/development/python-modules/protego/default.nix
new file mode 100644
index 00000000000..ad7e4aa4af6
--- /dev/null
+++ b/pkgs/development/python-modules/protego/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, six
+, pytest
+}:
+
+buildPythonPackage rec {
+  pname = "Protego";
+  version = "0.1.16";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "a682771bc7b51b2ff41466460896c1a5a653f9a1e71639ef365a72e66d8734b4";
+  };
+  propagatedBuildInputs = [ six ];
+
+  checkInputs = [ pytest ];
+
+  checkPhase = ''
+    pytest tests
+  '';
+
+  meta = with lib; {
+    description = "A pure-Python robots.txt parser with support for modern conventions";
+    homepage = "https://github.com/scrapy/protego";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.marsam ];
+  };
+}
diff --git a/pkgs/development/python-modules/ptpython/default.nix b/pkgs/development/python-modules/ptpython/default.nix
index 01f9dda8f2c..f5a37dda630 100644
--- a/pkgs/development/python-modules/ptpython/default.nix
+++ b/pkgs/development/python-modules/ptpython/default.nix
@@ -1,16 +1,17 @@
-{ stdenv, buildPythonPackage, fetchPypi, prompt_toolkit, docopt , jedi, pygments, isPy3k }:
+{ stdenv, buildPythonPackage, fetchPypi, prompt_toolkit, appdirs, docopt, jedi
+, pygments, isPy3k }:
 
 buildPythonPackage rec {
   pname = "ptpython";
-  version = "2.0.6";
+  version = "3.0.1";
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "90e24040e82de4abae0bbe6e352d59ae6657e14e1154e742c0038679361b052f";
+    sha256 = "a69cce0aa04f0075e2e65287a0ee2f3a928c0591b301ce22aa2e498af1ebcb4b";
   };
 
-  propagatedBuildInputs = [ prompt_toolkit docopt jedi pygments ];
+  propagatedBuildInputs = [ appdirs prompt_toolkit docopt jedi pygments ];
 
   # no tests to run
   doCheck = false;
diff --git a/pkgs/development/python-modules/py-cpuinfo/default.nix b/pkgs/development/python-modules/py-cpuinfo/default.nix
index c90f81ae28f..ae2f5ae9d6d 100644
--- a/pkgs/development/python-modules/py-cpuinfo/default.nix
+++ b/pkgs/development/python-modules/py-cpuinfo/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "py-cpuinfo";
-  version = "4.0.0";
+  version = "5.0.0";
 
   src = fetchFromGitHub {
      owner = "workhorsy";
      repo = pname;
      rev = "v${version}";
-     sha256 = "1pp561lj80jnvr2038nrzhmks2akxsbdqxvfrqa6n340x81981lm";
+     sha256 = "0lxl9n6djaz5h1zrb2jca4qwl41c2plxy8chr7yhcxnzg0srddqi";
   };
 
   checkInputs = [
@@ -27,7 +27,14 @@ buildPythonPackage rec {
 
   meta = {
     description = "Get CPU info with pure Python 2 & 3";
-    homepage = https://github.com/workhorsy/py-cpuinfo;
+    longDescription = ''
+      Py-cpuinfo gets CPU info with pure Python and should work without any
+      extra programs or libraries, beyond what your OS provides. It does not
+      require any compilation (C/C++, assembly, etc.) to use and works with
+      Python 2 and 3.
+    '';
+    inherit (src.meta) homepage;
+    changelog = "https://github.com/workhorsy/py-cpuinfo/blob/v${version}/ChangeLog";
     license = lib.licenses.mit;
     maintainers = with lib.maintainers; [ costrouc ];
   };
diff --git a/pkgs/development/python-modules/pyGithub/default.nix b/pkgs/development/python-modules/pyGithub/default.nix
index 3f5d3a5bd8c..2102554face 100644
--- a/pkgs/development/python-modules/pyGithub/default.nix
+++ b/pkgs/development/python-modules/pyGithub/default.nix
@@ -1,22 +1,35 @@
-{ stdenv, fetchFromGitHub
-, buildPythonPackage, python-jose, pyjwt, requests, deprecated, httpretty }:
+{ stdenv
+, buildPythonPackage
+, cryptography
+, deprecated
+, fetchFromGitHub
+, httpretty
+, isPy3k
+, parameterized
+, pyjwt
+, pytestCheckHook
+, requests }:
 
 buildPythonPackage rec {
   pname = "PyGithub";
-  version = "1.45";
+  version = "1.47";
+  disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "PyGithub";
     repo = "PyGithub";
     rev = "v${version}";
-    sha256 = "1aiyqwdxpcr7yzz7aqmmjn1g2ajs5bpbln4sax5zw19dqi6qgp9z";
+    sha256 = "0zvp1gib2lryw698vxkbdv40n3lsmdlhwp7vdcg41dqqa5nfryhn";
   };
 
-  propagatedBuildInputs = [ python-jose pyjwt requests deprecated httpretty ];
+  checkInputs = [ httpretty parameterized pytestCheckHook ];
+  propagatedBuildInputs = [ cryptography deprecated pyjwt requests ];
+
+  # Test suite makes REST calls against github.com
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/PyGithub/PyGithub;
+    homepage = "https://github.com/PyGithub/PyGithub";
     description = "A Python (2 and 3) library to access the GitHub API v3";
     platforms = platforms.all;
     license = licenses.gpl3;
diff --git a/pkgs/development/python-modules/pyarrow/default.nix b/pkgs/development/python-modules/pyarrow/default.nix
index ab05f49ac38..a63e32f9da6 100644
--- a/pkgs/development/python-modules/pyarrow/default.nix
+++ b/pkgs/development/python-modules/pyarrow/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, python, isPy3k, arrow-cpp, cmake, cython, futures, hypothesis, numpy, pandas, pytest, pytest-lazy-fixture, pkgconfig, setuptools_scm, six }:
+{ lib, fetchpatch, buildPythonPackage, python, isPy3k, arrow-cpp, cmake, cython, futures, hypothesis, numpy, pandas, pytestCheckHook, pytest-lazy-fixture, pkgconfig, setuptools_scm, six }:
 
 let
   _arrow-cpp = arrow-cpp.override { inherit python; };
@@ -9,11 +9,21 @@ buildPythonPackage rec {
 
   inherit (_arrow-cpp) version src;
 
+  patches = [
+    # Remove when updating pkgs.arrow-cpp to 0.17
+    (fetchpatch {
+      name = "ARROW-8106-fix-conversion-test";
+      url = "https://github.com/apache/arrow/commit/af20bbff30adc560d7e57dd921345d00cc8b870c.patch";
+      sha256 = "0ihpw589vh35va31ajzy5zpx3bqd9gdn3342rghi03r245kch9zd";
+      stripLen = 1;
+    })
+  ];
+
   sourceRoot = "apache-arrow-${version}/python";
 
   nativeBuildInputs = [ cmake cython pkgconfig setuptools_scm ];
   propagatedBuildInputs = [ numpy six ] ++ lib.optionals (!isPy3k) [ futures ];
-  checkInputs = [ hypothesis pandas pytest pytest-lazy-fixture ];
+  checkInputs = [ hypothesis pandas pytestCheckHook pytest-lazy-fixture ];
 
   PYARROW_BUILD_TYPE = "release";
   PYARROW_WITH_PARQUET = true;
@@ -24,6 +34,8 @@ buildPythonPackage rec {
     # ourselves
     "-DCMAKE_POLICY_DEFAULT_CMP0025=NEW"
   ];
+  ARROW_HOME = _arrow-cpp;
+  PARQUET_HOME = _arrow-cpp;
 
   dontUseCmakeConfigure = true;
 
@@ -31,40 +43,12 @@ buildPythonPackage rec {
     export PYARROW_PARALLEL=$NIX_BUILD_CORES
   '';
 
+  dontUseSetuptoolsCheck = true;
   preCheck = ''
-    rm pyarrow/tests/test_jvm.py
-    rm pyarrow/tests/test_hdfs.py
-    rm pyarrow/tests/test_cuda.py
-
-    # fails: "ArrowNotImplementedError: Unsupported numpy type 22"
-    substituteInPlace pyarrow/tests/test_feather.py --replace "test_timedelta_with_nulls" "_disabled"
-
-    # runs out of memory on @grahamcofborg linux box
-    substituteInPlace pyarrow/tests/test_feather.py --replace "test_large_dataframe" "_disabled"
-
-    # probably broken on python2
-    substituteInPlace pyarrow/tests/test_feather.py --replace "test_unicode_filename" "_disabled"
-
-    # fails "error: [Errno 2] No such file or directory: 'test'" because
-    # nix_run_setup invocation somehow manages to import deserialize_buffer.py
-    # when it is not intended to be imported at all
-    rm pyarrow/tests/deserialize_buffer.py
-    substituteInPlace pyarrow/tests/test_feather.py --replace "test_deserialize_buffer_in_different_process" "_disabled"
-
-    # Fails to bind a socket
-    # "PermissionError: [Errno 1] Operation not permitted"
-    substituteInPlace pyarrow/tests/test_ipc.py --replace "test_socket_" "_disabled"
-  '';
-
-  ARROW_HOME = _arrow-cpp;
-  PARQUET_HOME = _arrow-cpp;
-
-  checkPhase = ''
     mv pyarrow/tests tests
     rm -rf pyarrow
     mkdir pyarrow
     mv tests pyarrow/tests
-    pytest -v
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/python-modules/pyatspi/default.nix b/pkgs/development/python-modules/pyatspi/default.nix
index 3f427e34002..8e6678a42b9 100644
--- a/pkgs/development/python-modules/pyatspi/default.nix
+++ b/pkgs/development/python-modules/pyatspi/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "pyatspi";
-  version = "2.34.0";
+  version = "2.36.0";
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "0j3f75j0zd6ca8msg7yr19qsfirqkn9fk8pqbjnlhqrpri455g4p";
+    sha256 = "UTbBv5GeEB1OyQGiduhupg5Ygaj/d2PjVvGYQOX/4d0=";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/python-modules/pychromecast/default.nix b/pkgs/development/python-modules/pychromecast/default.nix
index 9ce934c8467..4939cd18e43 100644
--- a/pkgs/development/python-modules/pychromecast/default.nix
+++ b/pkgs/development/python-modules/pychromecast/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "PyChromecast";
-  version = "4.1.1";
+  version = "4.2.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "13cxyxs0cl2cwbx1fkw6b26hrzpllx1wfq2q58fx298yjn3niiby";
+    sha256 = "05h7ncymyh1715v2jkj312qza5qlqrz6yfpgyv4kdf1m07zh7pxh";
   };
 
   disabled = !isPy3k;
diff --git a/pkgs/development/python-modules/pycognito/default.nix b/pkgs/development/python-modules/pycognito/default.nix
new file mode 100644
index 00000000000..afc607baa40
--- /dev/null
+++ b/pkgs/development/python-modules/pycognito/default.nix
@@ -0,0 +1,46 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, cryptography
+, boto3
+, envs
+, python-jose
+, requests
+, mock
+, isPy27
+}:
+
+buildPythonPackage rec {
+  pname = "pycognito";
+  version = "0.1.2";
+
+  src = fetchFromGitHub {
+    owner = "pvizeli";
+    repo = "pycognito";
+    rev = version;
+    sha256 = "01zns522awm5yp5cbk1y7k7px534i5akiivip709i1naph3hvnfk";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace 'python-jose[cryptography]' 'python-jose'
+  '';
+
+  propagatedBuildInputs = [
+    boto3
+    envs
+    python-jose
+    requests
+  ];
+
+  disabled = isPy27;
+
+  checkInputs = [ mock ];
+
+  meta = with lib; {
+    description = "Python class to integrate Boto3's Cognito client so it is easy to login users. With SRP support";
+    homepage = "https://GitHub.com/pvizeli/pycognito";
+    license = licenses.asl20;
+    maintainers = [ maintainers.mic92 ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyftdi/default.nix b/pkgs/development/python-modules/pyftdi/default.nix
index cc197754692..d73ee24f584 100644
--- a/pkgs/development/python-modules/pyftdi/default.nix
+++ b/pkgs/development/python-modules/pyftdi/default.nix
@@ -1,26 +1,24 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, pythonOlder
-, pyusb
-, pyserial
-}:
+{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder, pyusb, pyserial }:
 
 buildPythonPackage rec {
   pname = "pyftdi";
-  version = "0.44.2";
+  version = "0.49.0";
   disabled = pythonOlder "3.5";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "18k9wnpjxg71v4jm0pwr2bmksq7sckr6ylh1slf0xgpg89b27bxq";
+  src = fetchFromGitHub {
+    owner = "eblot";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "063kwvgw7g4nn09pyqwqy72vnhzw0aajg23bi32vr0k49g8fx27s";
   };
 
   propagatedBuildInputs = [ pyusb pyserial ];
 
+  pythonImportsCheck = [ "pyftdi" ];
+
   meta = {
     description = "User-space driver for modern FTDI devices";
     homepage = "https://github.com/eblot/pyftdi";
-    license = lib.licenses.lgpl2;
+    license = lib.licenses.bsd3;
   };
 }
diff --git a/pkgs/development/python-modules/pyglet/default.nix b/pkgs/development/python-modules/pyglet/default.nix
index e6be92c0efb..a37872d9094 100644
--- a/pkgs/development/python-modules/pyglet/default.nix
+++ b/pkgs/development/python-modules/pyglet/default.nix
@@ -11,6 +11,7 @@
 , gdk-pixbuf
 , fontconfig
 , freetype
+, ffmpeg-full
 }:
 
 buildPythonPackage rec {
@@ -52,6 +53,8 @@ buildPythonPackage rec {
                 path = '${fontconfig.lib}/lib/libfontconfig${ext}'
             elif name == 'freetype':
                 path = '${freetype}/lib/libfreetype${ext}'
+            elif name[0:2] == 'av' or name[0:2] == 'sw':
+                path = '${ffmpeg-full}/lib/lib' + name + '${ext}'
             if path is not None:
                 return ctypes.cdll.LoadLibrary(path)
         raise Exception("Could not load library {}".format(names))
diff --git a/pkgs/development/python-modules/pygobject/3.nix b/pkgs/development/python-modules/pygobject/3.nix
index e9cbeb422f1..b1890c73e80 100644
--- a/pkgs/development/python-modules/pygobject/3.nix
+++ b/pkgs/development/python-modules/pygobject/3.nix
@@ -3,13 +3,13 @@ pycairo, cairo, which, ncurses, meson, ninja, isPy3k, gnome3 }:
 
 buildPythonPackage rec {
   pname = "pygobject";
-  version = "3.34.0";
+  version = "3.36.0";
 
   format = "other";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "06i7ynnbvgpz0gw09zsjbvhgcp5qz4yzdifw27qjwdazg2mckql7";
+    sha256 = "hoPS37W6qeUBqaZO66XCwRF+rbeBqxzXqdJVg0r22u8=";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/python-modules/pyhcl/default.nix b/pkgs/development/python-modules/pyhcl/default.nix
index e409282980d..d3e0da07868 100644
--- a/pkgs/development/python-modules/pyhcl/default.nix
+++ b/pkgs/development/python-modules/pyhcl/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "pyhcl";
-  version = "0.4.0";
+  version = "0.4.2";
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "virtuald";
     repo = pname;
     rev = version;
-    sha256 = "09kwm3digbwn3kmbk76jswxgwfcfchik6cfa2xbhjanh4xs893hs";
+    sha256 = "01y5fn3pis43i0w0858wmrc8azfinp07a16ixglmg28gg07c0zkd";
   };
 
   # https://github.com/virtuald/pyhcl/blob/51a7524b68fe21e175e157b8af931016d7a357ad/setup.py#L64
diff --git a/pkgs/development/python-modules/pyhepmc/default.nix b/pkgs/development/python-modules/pyhepmc/default.nix
deleted file mode 100644
index 26a91a313ee..00000000000
--- a/pkgs/development/python-modules/pyhepmc/default.nix
+++ /dev/null
@@ -1,59 +0,0 @@
-{ stdenv
-, buildPythonPackage
-, fetchPypi
-, fetchFromBitbucket
-, isPy3k
-, pkgs
-, python
-}:
-
-buildPythonPackage rec {
-  pname = "pyhepmc";
-  version = "1.0.1";
-  disabled = isPy3k;
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "1210fd7e20d4abc1d9166147a9f7645a2a58b655fe030ad54ab3ea0d0c6e0834";
-  };
-
-  srcMissing = fetchFromBitbucket {
-    owner = "andybuckley";
-    repo = "pyhepmc";
-    rev = "pyhepmc-1.0.0";
-    sha256 = "0vxad143pz45q94w5p0dycpk24insdsv1m5k867y56xy24bi0d4w";
-  };
-
-  prePatch = ''
-    cp -r $srcMissing/hepmc .
-    chmod +w hepmc
-  '';
-
-  patches = [
-    # merge PR https://bitbucket.org/andybuckley/pyhepmc/pull-requests/1/add-incoming-outgoing-generators-for/diff
-    ./pyhepmc_export_edges.patch
-    # add bindings to Flow class
-    ./pyhepmc_export_flow.patch
-  ];
-
-  # regenerate python wrapper
-  preConfigure = ''
-    swig -c++ -I${pkgs.hepmc}/include -python hepmc/hepmcwrap.i
-  '';
-
-  nativeBuildInputs = [ pkgs.swig ];
-  buildInputs = [ pkgs.hepmc2 ];
-
-  HEPMCPATH = pkgs.hepmc2;
-
-  checkPhase = ''
-    ${python.interpreter} test/test1.py
-  '';
-
-  meta = with stdenv.lib; {
-    description = "A simple wrapper on the main classes of the HepMC event simulation representation, making it possible to create, read and manipulate HepMC events from Python code";
-    license     = licenses.gpl2;
-    maintainers = with maintainers; [ veprbl ];
-  };
-
-}
diff --git a/pkgs/development/python-modules/pyhepmc/pyhepmc_export_edges.patch b/pkgs/development/python-modules/pyhepmc/pyhepmc_export_edges.patch
deleted file mode 100644
index 5c6e56566a3..00000000000
--- a/pkgs/development/python-modules/pyhepmc/pyhepmc_export_edges.patch
+++ /dev/null
@@ -1,204 +0,0 @@
-# HG changeset patch
-# User Lukas Heinrich <lukas.heinrich@gmail.com>
-# Date 1430606843 14400
-# Node ID 325f89b7b72922e9add9ca9dd0f7ca4a6c83bf00
-# Parent  e4fd953257e0d38511f2177de7ffaef662358af2
-add incoming/outgoing generators for GenVertex
-
-diff --git a/hepmc/generators.i b/hepmc/generators.i
-new file mode 100644
---- /dev/null
-+++ b/hepmc/generators.i
-@@ -0,0 +1,171 @@
-+/*!
-+ * \file   generators.i
-+ * \author Seth R. Johnson
-+ * \brief  Define generator/iterator for any type
-+
-+Example:
-+\code
-+    SETUP_GENERATOR( std::vector<Cell>::const_iterator )
-+    ADD_GENERATOR( Mesh, cells,
-+    std::vector<Cell>::const_iterator, Cell, beginCells, endCells)
-+\endcode
-+would be a method to add a \c cells generator method method to the Python class
-+\c Mesh, when the C++ class \c Mesh has a \c std::vector<Cell> accessed through
-+methods \c beginCells and \c endCells.
-+
-+The macro \c ADD_GENERATOR_P would be if the underlying storage were \c
-+std::vector<Cell*> instead.
-+
-+Alternatively, for containers of regular objects that provide \c begin(), \c end(), and \c const_iterator, you can use the \c ADD_CONTAINER_ITERATOR macro:
-+\code
-+ADD_CONTAINER_ITERATOR( QuadratureSet )
-+\endcode
-+
-+\section License
-+
-+Copyright (c) 2010, Seth R. Johnson
-+All rights reserved.
-+
-+Redistribution and use in source and binary forms, with or without
-+modification, are permitted provided that the following conditions are met:
-+ * Redistributions of source code must retain the above copyright notice, this
-+   list of conditions and the following disclaimer.
-+ * Redistributions in binary form must reproduce the above copyright notice,
-+   this list of conditions and the following disclaimer in the documentation
-+   and/or other materials provided with the distribution.
-+ * Neither the name of the this project nor the names of its contributors
-+   may be used to endorse or promote products derived from this software
-+   without specific prior written permission.
-+
-+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
-+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
-+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
-+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+
-+ This material is based upon work supported under a National Science
-+ Foundation Graduate Research Fellowship. Any opinions, findings, conclusions
-+ or recommendations expressed in this publication are those of the author
-+ and do not necessarily reflect the views of the National Science
-+ Foundation.
-+*/
-+#ifndef tools_SWIG_generators_i
-+#define tools_SWIG_generators_i
-+/*----------------------------------------------------------------------------*/
-+
-+// Add a Python class to provide iterator objects
-+%insert("python") %{
-+class GenericIterator:
-+    def __init__(self, begin_iter_method, deref_method, incr_method):
-+        self.it = begin_iter_method()
-+        self.incr   = incr_method
-+        self.deref  = deref_method
-+
-+    def __iter__(self):
-+        return self
-+
-+    def next(self):
-+        obj = self.deref( self.it )
-+        if obj is not None:
-+            self.incr( self.it )
-+            return obj
-+        else:
-+            raise StopIteration
-+%}
-+
-+//============== GENERIC GENERATOR/ITERATOR WRAPPER SUPPORT ============
-+//! Thin wrapper for incrementing a certain type of iterator
-+// only need to define once per iterator type, and we can use the same name
-+// thanks to overloading (even though this may decrease efficiency)
-+%define SETUP_GENERATOR( ITERATOR... )
-+%inline %{
-+void _iter_incr( ITERATOR* iter )
-+{
-+    ++(*iter);
-+}
-+%}
-+%enddef
-+
-+/*----------------------------------------------------------------------------*/
-+// Internal method for adding common parts of the generator
-+%define PYTRT_BASE_ADD_GENERATOR( CLASS, PYMETHOD, ITERATOR, CBEGIN )
-+    %extend CLASS {
-+%insert("python") %{
-+    def PYMETHOD(self):
-+        "Returns an iterator for PYMETHOD."
-+        return GenericIterator(
-+                self._begin_ ## PYMETHOD,
-+                self._deref_ ## PYMETHOD,
-+                _iter_incr
-+                 )
-+%}
-+// get the first element in the vector
-+ITERATOR* _begin_ ## PYMETHOD()
-+{
-+    return new ITERATOR( ($self)->CBEGIN() );
-+}
-+    }
-+%enddef
-+/*----------------------------------------------------------------------------*/
-+// If the dereferenced iterator is an object
-+%define ADD_GENERATOR( CLASS, PYMETHOD, ITERATOR, RVALUE, CBEGIN, CEND )
-+
-+// add the python and begin method
-+PYTRT_BASE_ADD_GENERATOR( CLASS, PYMETHOD, ITERATOR, CBEGIN )
-+
-+    %extend CLASS {
-+//! Dereference the iterator; return NULL if at the end
-+const RVALUE* _deref_ ## PYMETHOD ## ( const ITERATOR* iter )
-+{
-+    // if at the end, return NULL
-+    if (*iter == ($self)->CEND() ) {
-+        return NULL;
-+    }
-+    // otherwise, return the POINTER to the dereferenced iterator
-+    return &(**iter);
-+}
-+    }
-+%enddef
-+/*----------------------------------------------------------------------------*/
-+// If the dereferenced iterator is a pointer
-+%define ADD_GENERATOR_P( CLASS, PYMETHOD, ITERATOR, RVALUE, CBEGIN, CEND )
-+
-+// add the python and begin method
-+PYTRT_BASE_ADD_GENERATOR( CLASS, PYMETHOD, ITERATOR, CBEGIN )
-+
-+    %extend CLASS {
-+//! Dereference the iterator; return NULL if at the end
-+const RVALUE* _deref_ ## PYMETHOD ## ( const ITERATOR* iter )
-+{
-+    // if at the end, return NULL
-+    if (*iter == ($self)->CEND() ) {
-+        return NULL;
-+    }
-+    // otherwise, return the dereferenced iterator (a pointer)
-+    return **iter;
-+}
-+    }
-+%enddef
-+/*----------------------------------------------------------------------------*/
-+//! For a regular container with "begin" and "end" and "size"
-+%define ADD_CONTAINER_ITERATOR( CLASS )
-+    SETUP_GENERATOR( CLASS::const_iterator );
-+    ADD_GENERATOR( CLASS, __iter__,
-+            CLASS ## ::const_iterator, CLASS ## ::value_type,
-+            begin, end)
-+    %extend CLASS {
-+    %insert("python") %{
-+    def __len__(self):
-+        return self.size()
-+    %}
-+    }
-+%enddef
-+
-+/*============================================================================*/
-+#endif
-+
-diff --git a/hepmc/hepmcwrap.i b/hepmc/hepmcwrap.i
---- a/hepmc/hepmcwrap.i
-+++ b/hepmc/hepmcwrap.i
-@@ -1,5 +1,7 @@
- %module hepmcwrap
- 
-+%include generators.i
-+
- %{
-   #include "HepMC/GenEvent.h"
-   #include "HepMC/GenVertex.h"
-@@ -251,3 +253,9 @@
-     return ss.str();
-   }
- }
-+
-+SETUP_GENERATOR( std::vector< HepMC::GenParticle* >::const_iterator )
-+ADD_GENERATOR_P( HepMC::GenVertex, incoming,
-+std::vector< HepMC::GenParticle* >::const_iterator, HepMC::GenParticle, particles_in_const_begin, particles_in_const_end)
-+ADD_GENERATOR_P( HepMC::GenVertex, outgoing,
-+std::vector< HepMC::GenParticle* >::const_iterator, HepMC::GenParticle, particles_out_const_begin, particles_out_const_end)
diff --git a/pkgs/development/python-modules/pyhepmc/pyhepmc_export_flow.patch b/pkgs/development/python-modules/pyhepmc/pyhepmc_export_flow.patch
deleted file mode 100644
index 85e26a1a160..00000000000
--- a/pkgs/development/python-modules/pyhepmc/pyhepmc_export_flow.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/hepmc/hepmcwrap.i b/hepmc/hepmcwrap.i
-index cf35c1b..b94fbe2 100644
---- a/hepmc/hepmcwrap.i
-+++ b/hepmc/hepmcwrap.i
-@@ -1,6 +1,7 @@
- %module hepmcwrap
- 
- %{
-+  #include "HepMC/Flow.h"
-   #include "HepMC/GenEvent.h"
-   #include "HepMC/GenVertex.h"
-   #include "HepMC/GenParticle.h"
-@@ -93,6 +94,7 @@ namespace HepMC {
- // headers before importing headers that use those classes.
- // Result is that headers should probably be %included in an order
- // which sees "contents before containers"
-+%include "HepMC/Flow.h"
- %include "HepMC/HepMCDefs.h"
- %include "HepMC/SimpleVector.h"
- // #ifdef HEPMC_HAS_ITERATOR_RANGES
diff --git a/pkgs/development/python-modules/pyicloud/default.nix b/pkgs/development/python-modules/pyicloud/default.nix
index 7bc52f74701..20fd48bcb2b 100644
--- a/pkgs/development/python-modules/pyicloud/default.nix
+++ b/pkgs/development/python-modules/pyicloud/default.nix
@@ -15,11 +15,11 @@
 
 buildPythonPackage rec {
   pname = "pyicloud";
-  version = "0.9.4";
+  version = "0.9.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0r171wnq2g5bw7gd59vh6flm0104ix1a6s2vhdrf8s74hipw57si";
+    sha256 = "1c8sdlqcmpajcpf6jfpi6amncibm9c3zrl1860r0vfimps50m34h";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pylint-django/default.nix b/pkgs/development/python-modules/pylint-django/default.nix
index ef47699053c..8530e6f8543 100644
--- a/pkgs/development/python-modules/pylint-django/default.nix
+++ b/pkgs/development/python-modules/pylint-django/default.nix
@@ -10,14 +10,14 @@
 
 buildPythonPackage rec {
   pname = "pylint-django";
-  version = "2.0.13";
+  version = "2.0.14";
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "PyCQA";
     repo = pname;
     rev = "v${version}";
-    sha256 = "16xfn8zs5khdfh5pdsv3wjjhywzc1qhx7mxi5kpbcvmd6an9qi7s";
+    sha256 = "07fkwb4phfr71dpajnq6l64phjxvljx2nf8ibs12n9gwjdvm9i52";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/pymavlink/default.nix b/pkgs/development/python-modules/pymavlink/default.nix
index b909886ddb5..d47ea812ca8 100644
--- a/pkgs/development/python-modules/pymavlink/default.nix
+++ b/pkgs/development/python-modules/pymavlink/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pymavlink";
-  version = "2.4.3";
+  version = "2.4.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "332d3d0291b4482641a5b3cd97e879817f50eb9c2b2ddcc30d51d619bad01b51";
+    sha256 = "1c8bxbm18h4idfdxqgklcz4n5bgsyl9y14gl9314fpflwa2c7ds8";
   };
 
   propagatedBuildInputs = [ future lxml ];
diff --git a/pkgs/development/python-modules/pymumble/default.nix b/pkgs/development/python-modules/pymumble/default.nix
new file mode 100644
index 00000000000..6e72309a58d
--- /dev/null
+++ b/pkgs/development/python-modules/pymumble/default.nix
@@ -0,0 +1,31 @@
+{ buildPythonPackage,
+  fetchFromGitHub,
+  isPy27,
+  lib,
+  opuslib,
+  protobuf,
+}:
+
+buildPythonPackage rec {
+  pname = "pymumble";
+  version = "0.3.1";
+  disabled = isPy27;
+
+  src = fetchFromGitHub {
+    owner = "azlux";
+    repo = "pymumble";
+    rev = "1dd6d6d4df2fdef33202f17e2acf3ba9678a5737";
+    sha256 = "1r1sch8xrpbzffsb72lhp5xjr3ac3xb599n44vsfmaam3xklz6vz";
+  };
+
+  propagatedBuildInputs = [ opuslib protobuf ];
+
+  pythonImportsCheck = [ "pymumble_py3" ];
+
+  meta = with lib; {
+    description = "Python 3 version of pymumble, Mumble library used for multiple uses like making mumble bot.";
+    homepage = "https://github.com/azlux/pymumble";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ thelegy ];
+  };
+}
diff --git a/pkgs/development/python-modules/pymupdf/default.nix b/pkgs/development/python-modules/pymupdf/default.nix
index a3286b31461..2ab33fb1838 100644
--- a/pkgs/development/python-modules/pymupdf/default.nix
+++ b/pkgs/development/python-modules/pymupdf/default.nix
@@ -1,11 +1,11 @@
 { stdenv, buildPythonPackage, fetchPypi, mupdf, swig }:
 buildPythonPackage rec {
   pname = "PyMuPDF";
-  version = "1.16.12";
+  version = "1.16.16";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0mywnhn8ylm9xy23yfgnxiq4akk1rq3n7bl1m7pw6imsgbdhzrwg";
+    sha256 = "1rw4wjbsp8pnkkqcn097psjd6qinv70pjzvrbns04maybhn4ni6v";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/python-modules/pynanoleaf/default.nix b/pkgs/development/python-modules/pynanoleaf/default.nix
new file mode 100644
index 00000000000..40e2783aa57
--- /dev/null
+++ b/pkgs/development/python-modules/pynanoleaf/default.nix
@@ -0,0 +1,29 @@
+{ lib, buildPythonPackage, fetchPypi, isPy3k, requests }:
+
+buildPythonPackage rec {
+  pname = "pynanoleaf";
+  version = "0.0.5";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "2ced000e3c37f4e2ce0ea177d924af71c97007de9e4fd0ef37dcd7b4a6d1b622";
+  };
+
+  disabled = !isPy3k;
+
+  propagatedBuildInputs = [ requests ];
+
+  # pynanoleaf does not contain tests
+  doCheck = false;
+
+  pythonImportsCheck = [
+    "pynanoleaf"
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/Oro/pynanoleaf";
+    description = "A Python3 wrapper for the Nanoleaf API, capable of controlling both Nanoleaf Aurora and Nanoleaf Canvas";
+    license = licenses.mit;
+    maintainers = with maintainers; [ oro ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyproj/001.proj.patch b/pkgs/development/python-modules/pyproj/001.proj.patch
index b024c28156c..52e0a80f739 100644
--- a/pkgs/development/python-modules/pyproj/001.proj.patch
+++ b/pkgs/development/python-modules/pyproj/001.proj.patch
@@ -1,47 +1,62 @@
-diff a/pyproj/datadir.py b/pyproj/datadir.py
---- a/pyproj/datadir.py
-+++ b/pyproj/datadir.py
-@@ -52,6 +52,7 @@ def get_data_dir():
-     str: The valid data directory.
-
-     """
-+    return "@proj@/share/proj"
-     # to avoid re-validating
-     global _VALIDATED_PROJ_DATA
+diff -Nur a/pyproj/datadir.py b/pyproj/datadir.py
+--- a/pyproj/datadir.py	2020-03-24 12:53:39.417440608 +0100
++++ b/pyproj/datadir.py	2020-03-24 12:56:19.870089479 +0100
+@@ -66,9 +66,7 @@
      if _VALIDATED_PROJ_DATA is not None:
-diff a/setup.py b/setup.py
---- a/setup.py
-+++ b/setup.py
-@@ -16,7 +16,7 @@ INTERNAL_PROJ_DIR = os.path.join(CURRENT_FILE_PATH, "pyproj", BASE_INTERNAL_PROJ
-
+         return _VALIDATED_PROJ_DATA
+     global _USER_PROJ_DATA
+-    internal_datadir = os.path.join(
+-        os.path.dirname(os.path.abspath(__file__)), "proj_dir", "share", "proj"
+-    )
++    internal_datadir = "@proj@/share/proj"
+     proj_lib_dirs = os.environ.get("PROJ_LIB", "")
+     prefix_datadir = os.path.join(sys.prefix, "share", "proj")
+ 
+diff -Nur a/setup.py b/setup.py
+--- a/setup.py	2020-03-24 12:53:39.415440624 +0100
++++ b/setup.py	2020-03-24 12:52:05.311232522 +0100
+@@ -11,7 +11,7 @@
+ PROJ_MIN_VERSION = parse_version("6.2.0")
+ CURRENT_FILE_PATH = os.path.dirname(os.path.abspath(__file__))
+ BASE_INTERNAL_PROJ_DIR = "proj_dir"
+-INTERNAL_PROJ_DIR = os.path.join(CURRENT_FILE_PATH, "pyproj", BASE_INTERNAL_PROJ_DIR)
++INTERNAL_PROJ_DIR = "@proj@"
+ 
+ 
  def check_proj_version(proj_dir):
-     """checks that the PROJ library meets the minimum version"""
--    proj = os.path.join(proj_dir, "bin", "proj")
-+    proj = "@proj@/bin/proj"
-     proj_ver_bytes = subprocess.check_output(proj, stderr=subprocess.STDOUT)
-     proj_ver_bytes = (proj_ver_bytes.decode("ascii").split()[1]).strip(",")
-     proj_version = parse_version(proj_ver_bytes)
-@@ -33,6 +33,7 @@ def get_proj_dir():
-     """
-     This function finds the base PROJ directory.
-     """
-+    return "@proj@"
-     proj_dir = os.environ.get("PROJ_DIR")
-     if proj_dir is None and os.path.exists(INTERNAL_PROJ_DIR):
-         proj_dir = INTERNAL_PROJ_DIR
-@@ -56,6 +57,7 @@ def get_proj_libdirs(proj_dir):
-     """
-     This function finds the library directories
-     """
-+    return ["@proj@/lib"]
-     proj_libdir = os.environ.get("PROJ_LIBDIR")
-     libdirs = []
-     if proj_libdir is None:
-@@ -77,6 +79,7 @@ def get_proj_incdirs(proj_dir):
-     """
-     This function finds the include directories
-     """
-+    return ["@proj@/include"]
-     proj_incdir = os.environ.get("PROJ_INCDIR")
-     incdirs = []
-     if proj_incdir is None:
+@@ -146,7 +146,7 @@
+     # By default we'll try to get options PROJ_DIR or the local version of proj
+     proj_dir = get_proj_dir()
+     library_dirs = get_proj_libdirs(proj_dir)
+-    include_dirs = get_proj_incdirs(proj_dir)
++    include_dirs = get_proj_incdirs("@projdev@")
+ 
+     # setup extension options
+     ext_options = {
+diff -Nur a/test/conftest.py b/test/conftest.py
+--- a/test/conftest.py	2020-03-24 12:53:39.417440608 +0100
++++ b/test/conftest.py	2020-03-24 23:16:47.373972786 +0100
+@@ -1,6 +1,7 @@
+ import os
+ import shutil
+ import tempfile
++import stat
+ 
+ import pytest
+ 
+@@ -17,6 +18,15 @@
+     with tempfile.TemporaryDirectory() as tmpdir:
+         tmp_data_dir = os.path.join(tmpdir, "proj")
+         shutil.copytree(data_dir, tmp_data_dir)
++
++        # Data copied from the nix store is readonly (causes cleanup problem).
++        # Make it writable.
++        for r, d, files in os.walk(tmp_data_dir):
++            os.chmod(r, os.stat(r).st_mode | stat.S_IWUSR)
++            for f in files:
++                fpath = os.path.join(r, f)
++                os.chmod(fpath, os.stat(fpath).st_mode | stat.S_IWUSR)
++
+         try:
+             os.remove(os.path.join(str(tmp_data_dir), "ntv2_0.gsb"))
+         except OSError:
diff --git a/pkgs/development/python-modules/pyproj/default.nix b/pkgs/development/python-modules/pyproj/default.nix
index 0f2763faf60..b23cb010f01 100644
--- a/pkgs/development/python-modules/pyproj/default.nix
+++ b/pkgs/development/python-modules/pyproj/default.nix
@@ -1,20 +1,22 @@
-{ lib, buildPythonPackage, fetchFromGitHub, python, pkgs, pythonOlder, substituteAll
+{ lib, buildPythonPackage, fetchFromGitHub, python, pkgs, pythonOlder, isPy27, substituteAll
 , aenum
 , cython
 , pytest
 , mock
 , numpy
+, shapely
 }:
 
 buildPythonPackage rec {
   pname = "pyproj";
-  version = "2.2.2";
+  version = "2.6.0";
+  disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "pyproj4";
     repo = "pyproj";
     rev = "v${version}rel";
-    sha256 = "0mb0jczgqh3sma69k7237i38h09gxgmvmddls9hpw4f3131f5ax7";
+    sha256 = "0fyggkbr3kp8mlq4c0r8sl5ah58bdg2mj4kzql9p3qyrkcdlgixh";
   };
 
   # force pyproj to use ${pkgs.proj}
@@ -22,13 +24,14 @@ buildPythonPackage rec {
     (substituteAll {
       src = ./001.proj.patch;
       proj = pkgs.proj;
+      projdev = pkgs.proj.dev;
     })
   ];
 
   buildInputs = [ cython pkgs.proj ];
 
   propagatedBuildInputs = [
-    numpy
+    numpy shapely
   ] ++ lib.optional (pythonOlder "3.6") aenum;
 
   checkInputs = [ pytest mock ];
@@ -38,6 +41,9 @@ buildPythonPackage rec {
   checkPhase = ''
     pytest . -k 'not alternative_grid_name \
                  and not transform_wgs84_to_alaska \
+                 and not transformer_group__unavailable \
+                 and not transform_group__missing_best \
+                 and not datum \
                  and not repr' \
             --ignore=test/test_doctest_wrapper.py \
             --ignore=test/test_datadir.py
diff --git a/pkgs/development/python-modules/pyqt/5.x.nix b/pkgs/development/python-modules/pyqt/5.x.nix
index f3578459b9d..a9d78960fc4 100644
--- a/pkgs/development/python-modules/pyqt/5.x.nix
+++ b/pkgs/development/python-modules/pyqt/5.x.nix
@@ -80,6 +80,9 @@ in buildPythonPackage rec {
 
   passthru = {
     inherit sip;
+    multimediaEnabled = withMultimedia;
+    webKitEnabled = withWebKit;
+    WebSocketsEnabled = withWebSockets;
   };
 
   configurePhase = ''
diff --git a/pkgs/development/python-modules/pyroute2/default.nix b/pkgs/development/python-modules/pyroute2/default.nix
index e13472dafb4..5a49fa10fbf 100644
--- a/pkgs/development/python-modules/pyroute2/default.nix
+++ b/pkgs/development/python-modules/pyroute2/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "pyroute2";
-  version = "0.5.9";
+  version = "0.5.11";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1dymaa3rif05k42sh4c3g2m057v2dsc2f3f49hl2rw5yz8bd23i4";
+    sha256 = "1wjamijkg2pp9mgj5k4qw3jl2i3ajikkps0zp5c52wcxm3qmks85";
   };
 
   # requires root priviledges
@@ -14,7 +14,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "Python Netlink library";
-    homepage = https://github.com/svinota/pyroute2;
+    homepage = "https://github.com/svinota/pyroute2";
     license = licenses.asl20;
     maintainers = [maintainers.mic92];
     platforms = platforms.unix;
diff --git a/pkgs/development/python-modules/pysmbc/default.nix b/pkgs/development/python-modules/pysmbc/default.nix
index 18ee419e8e5..99a9f01d4b0 100644
--- a/pkgs/development/python-modules/pysmbc/default.nix
+++ b/pkgs/development/python-modules/pysmbc/default.nix
@@ -3,13 +3,13 @@
 , setuptools }:
 
 buildPythonPackage rec {
-  version = "1.0.18";
+  version = "1.0.19";
   pname = "pysmbc";
 
   src = fetchPypi {
     inherit pname version;
     extension = "tar.bz2";
-    sha256 = "5da8aef1e3edaaffb1fbe2afe3772ba0a5f5bf666a28ae5db7b59ef96e465bdf";
+    sha256 = "0dwffbfp3ay8y35hhc37ip61xdh522f5rfs097f3ia121h9x1mvj";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -17,7 +17,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "libsmbclient binding for Python";
-    homepage = https://github.com/hamano/pysmbc;
+    homepage = "https://github.com/hamano/pysmbc";
     license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/development/python-modules/pytest-faulthandler/default.nix b/pkgs/development/python-modules/pytest-faulthandler/default.nix
deleted file mode 100644
index b9ac354abfd..00000000000
--- a/pkgs/development/python-modules/pytest-faulthandler/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, setuptools_scm
-, pytest
-, pytest-mock
-, pythonOlder
-, faulthandler
-}:
-
-buildPythonPackage rec {
-  pname = "pytest-faulthandler";
-  version = "2.0.1";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "ed72bbce87ac344da81eb7d882196a457d4a1026a3da4a57154dacd85cd71ae5";
-  };
-
-  nativeBuildInputs = [ setuptools_scm pytest ];
-  checkInputs = [ pytest-mock ];
-  propagatedBuildInputs = lib.optional (pythonOlder "3.0") faulthandler;
-
-  checkPhase = ''
-    py.test
-  '';
-
-  meta = {
-    description = "Py.test plugin that activates the fault handler module for tests";
-    homepage = https://github.com/pytest-dev/pytest-faulthandler;
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ costrouc ];
-  };
-}
diff --git a/pkgs/development/python-modules/pytest-html/default.nix b/pkgs/development/python-modules/pytest-html/default.nix
new file mode 100644
index 00000000000..2c0c23ebdca
--- /dev/null
+++ b/pkgs/development/python-modules/pytest-html/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, buildPythonPackage, fetchPypi, pythonOlder
+, pytest, pytest-metadata, setuptools_scm }:
+
+buildPythonPackage rec {
+  pname = "pytest-html";
+  version = "2.1.1";
+  disabled = pythonOlder "3.6";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1iap9rzxx9pkvz6im3px8xj37pb098lvvf9yiqh93qq5w68w6jka";
+  };
+
+  nativeBuildInputs = [ setuptools_scm ];
+  propagatedBuildInputs = [ pytest pytest-metadata ];
+
+  meta = with stdenv.lib; {
+    description = "Plugin for generating HTML reports";
+    homepage = "https://github.com/pytest-dev/pytest-html";
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ mpoquet ];
+  };
+}
diff --git a/pkgs/development/python-modules/pytest-metadata/default.nix b/pkgs/development/python-modules/pytest-metadata/default.nix
new file mode 100644
index 00000000000..369ddf2c476
--- /dev/null
+++ b/pkgs/development/python-modules/pytest-metadata/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, buildPythonPackage, fetchPypi
+, pytest, setuptools_scm }:
+
+buildPythonPackage rec {
+  pname = "pytest-metadata";
+  version = "1.8.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1fk6icip2x1nh4kzhbc8cnqrs77avpqvj7ny3xadfh6yhn9aaw90";
+  };
+
+  nativeBuildInputs = [ setuptools_scm ];
+  propagatedBuildInputs = [ pytest ];
+
+  meta = with stdenv.lib; {
+    description = "Plugin for accessing test session metadata";
+    homepage = "https://github.com/pytest-dev/pytest-metadata";
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ mpoquet ];
+  };
+}
diff --git a/pkgs/development/python-modules/pytest-pylint/default.nix b/pkgs/development/python-modules/pytest-pylint/default.nix
index 52eeccc7cd0..40ab69c5735 100644
--- a/pkgs/development/python-modules/pytest-pylint/default.nix
+++ b/pkgs/development/python-modules/pytest-pylint/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, isPy27
 , pytest
 , pylint
 , six
@@ -9,11 +10,12 @@
 
 buildPythonPackage rec {
   pname = "pytest-pylint";
-  version = "0.14.1";
+  version = "0.15.1";
+  disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1v6jqxbvzaw6v3xxwd689agy01k0j06q5c3q8gn2f3jlkrvylf4c";
+    sha256 = "0sbmnw3bly4pry5lp6q6g0r8xzaxwbdlf0k19k8pygkhllnj6gnx";
   };
 
   buildInputs = [ pytestrunner ];
@@ -29,7 +31,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "pytest plugin to check source code with pylint";
-    homepage = https://github.com/carsongee/pytest-pylint;
+    homepage = "https://github.com/carsongee/pytest-pylint";
     license = licenses.mit;
     maintainers = [ maintainers.costrouc ];
   };
diff --git a/pkgs/development/python-modules/pytest-twisted/default.nix b/pkgs/development/python-modules/pytest-twisted/default.nix
new file mode 100644
index 00000000000..6bdf1089d5d
--- /dev/null
+++ b/pkgs/development/python-modules/pytest-twisted/default.nix
@@ -0,0 +1,27 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, greenlet
+, pytest
+, decorator
+}:
+
+buildPythonPackage rec {
+  pname = "pytest-twisted";
+  version = "1.12";
+
+  src = fetchPypi {
+    inherit pname version;
+    extension = "zip";
+    sha256 = "bb9af117c5c6063d9ef20ffdf2fa297caaf57de5a687e4d3607db7b0a6f74fea";
+  };
+
+  propagatedBuildInputs = [ greenlet pytest decorator ];
+
+  meta = with lib; {
+    description = "A twisted plugin for py.test";
+    homepage = "https://github.com/pytest-dev/pytest-twisted";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.marsam ];
+  };
+}
diff --git a/pkgs/development/python-modules/python-baseconv/default.nix b/pkgs/development/python-modules/python-baseconv/default.nix
new file mode 100644
index 00000000000..f9ac014919c
--- /dev/null
+++ b/pkgs/development/python-modules/python-baseconv/default.nix
@@ -0,0 +1,22 @@
+{ buildPythonPackage
+, fetchPypi
+, lib
+}:
+buildPythonPackage rec {
+  pname = "python-baseconv";
+  version = "1.2.2";
+
+  src = fetchPypi {
+    inherit pname version ;
+    sha256 = "0539f8bd0464013b05ad62e0a1673f0ac9086c76b43ebf9f833053527cd9931b";
+  };
+
+  pythonImportsCheck = [ "baseconv" ];
+
+  meta = with lib; {
+    description = "Python module to convert numbers from base 10 integers to base X strings and back again";
+    homepage = "https://github.com/semente/python-baseconv";
+    license = licenses.psfl;
+    maintainers = with maintainers; [ rakesh4g ];
+  };
+}
diff --git a/pkgs/development/python-modules/python-jose/default.nix b/pkgs/development/python-modules/python-jose/default.nix
index a9377c4a1c2..df7e07e5523 100644
--- a/pkgs/development/python-modules/python-jose/default.nix
+++ b/pkgs/development/python-modules/python-jose/default.nix
@@ -5,13 +5,13 @@
 
 buildPythonPackage rec {
   pname = "python-jose";
-  version = "3.0.1";
+  version = "3.1.0";
 
   src = fetchFromGitHub {
     owner = "mpdavis";
     repo = "python-jose";
     rev = version;
-    sha256 = "1ahq4m86z504bnlk9z473r7r3dprg5m39900rld797hbczdhqa4f";
+    sha256 = "1gnn0zy03pywj65ammy3sd07knzhjv8n5jhx1ir9bikgra9v0iqh";
   };
 
   checkInputs = [
diff --git a/pkgs/development/python-modules/python-language-server/default.nix b/pkgs/development/python-modules/python-language-server/default.nix
index 74eadd9b2de..c8bb1b5fa6f 100644
--- a/pkgs/development/python-modules/python-language-server/default.nix
+++ b/pkgs/development/python-modules/python-language-server/default.nix
@@ -21,13 +21,13 @@ in
 
 buildPythonPackage rec {
   pname = "python-language-server";
-  version = "0.31.8";
+  version = "0.31.9";
 
   src = fetchFromGitHub {
     owner = "palantir";
     repo = "python-language-server";
     rev = version;
-    sha256 = "sha256:1h0w7x7d9g3z7vmxn5w7qxdkjya3sl0xfnklfaaaj8dkb5mjldpi";
+    sha256 = "06hd6a1hhd57hrq4vbwfs0saplkhsrz2krv8kq9kw4fz4hx7zj74";
   };
 
   # The tests require all the providers, disable otherwise.
@@ -53,8 +53,7 @@ buildPythonPackage rec {
     "test_pandas_completions"
     "test_matplotlib_completions"
     "test_snippet_parsing"
-
-  ];
+  ] ++ stdenv.lib.optional isPy27 "test_flake8_lint";
   # checkPhase = ''
   #   HOME=$TEMPDIR pytest -k "not test_pyqt_completion and not 
   # '';
diff --git a/pkgs/development/python-modules/python-mpv-jsonipc/default.nix b/pkgs/development/python-modules/python-mpv-jsonipc/default.nix
index 8b46b105d69..9f9818350bf 100644
--- a/pkgs/development/python-modules/python-mpv-jsonipc/default.nix
+++ b/pkgs/development/python-modules/python-mpv-jsonipc/default.nix
@@ -3,14 +3,14 @@
 
 buildPythonPackage rec {
   pname = "python-mpv-jsonipc";
-  version = "1.1.7";
+  version = "1.1.8";
   disabled = pythonOlder "3.6";
 
   src = fetchFromGitHub {
     owner = "iwalton3";
     repo = "python-mpv-jsonipc";
     rev = "v${version}";
-    sha256 = "1a8lcvgwf7a19d4dj1wkkpxk44c2z9gsyz1xv4wpxi3gxlplcmcz";
+    sha256 = "0f4nfzfka5n76n6dxmgcz0rkaws7a3jrgyh00va6lnfi7h6dsmx4";
   };
 
   # 'mpv-jsonipc' does not have any tests
diff --git a/pkgs/development/python-modules/python-otr/default.nix b/pkgs/development/python-modules/python-otr/default.nix
index 2b08bbffa45..d83d2597245 100644
--- a/pkgs/development/python-modules/python-otr/default.nix
+++ b/pkgs/development/python-modules/python-otr/default.nix
@@ -24,10 +24,13 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "A pure python implementation of OTR";
-    homepage = https://github.com/AGProjects/otr;
+    homepage = "https://github.com/AGProjects/python-otr";
     license = licenses.lgpl21Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ edwtjo ];
+    # The package itself does not support python3, and its transitive
+    # dependencies rely on namespace package support that does not work in
+    # Nix's python2 infra. See #74619 for details.
+    broken = true;
   };
-
 }
diff --git a/pkgs/development/python-modules/python-stdnum/default.nix b/pkgs/development/python-modules/python-stdnum/default.nix
index 556be12872b..39153f4a4da 100644
--- a/pkgs/development/python-modules/python-stdnum/default.nix
+++ b/pkgs/development/python-modules/python-stdnum/default.nix
@@ -1,11 +1,11 @@
 { lib, fetchPypi, buildPythonPackage, nose }:
 
 buildPythonPackage rec {
-  version = "1.12";
+  version = "1.13";
   pname = "python-stdnum";
   src = fetchPypi {
     inherit pname version;
-    sha256 = "19fb5asv0ngnbpiz1bqzq2jhgn845kv9hjcjajsgzgfp2k24f4sc";
+    sha256 = "0q4128rjdgavywhzlm2gz2n5ybc9b9sxs81g50dvxf5q7z9q63qj";
   };
 
   checkInputs = [ nose ];
@@ -15,7 +15,7 @@ buildPythonPackage rec {
   '';
 
   meta = {
-    homepage = https://arthurdejong.org/python-stdnum/;
+    homepage = "https://arthurdejong.org/python-stdnum/";
     description = "Python module to handle standardized numbers and codes";
     maintainers = with lib.maintainers; [ johbo ];
     license = lib.licenses.lgpl2Plus;
diff --git a/pkgs/development/python-modules/python-vipaccess/default.nix b/pkgs/development/python-modules/python-vipaccess/default.nix
index 30c6dff048a..ca82f8aa187 100644
--- a/pkgs/development/python-modules/python-vipaccess/default.nix
+++ b/pkgs/development/python-modules/python-vipaccess/default.nix
@@ -1,7 +1,6 @@
 { stdenv
 , buildPythonPackage
 , fetchPypi
-, lxml
 , oath
 , pycryptodome
 , requests
@@ -10,15 +9,14 @@
 
 buildPythonPackage rec {
   pname = "python-vipaccess";
-  version = "0.10.3";
+  version = "0.12";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1m6b7qipiaj6pz86kjhyq5m5jxxijpk58gpsdkj5bn0wjl6x1pg2";
+    sha256 = "0g6mmf896wp036263zkkvi3ff59zcrzssjsw7csfmbisiszgdnrj";
   };
 
   propagatedBuildInputs = [
-    lxml
     oath
     pycryptodome
     requests
diff --git a/pkgs/development/python-modules/qdarkstyle/default.nix b/pkgs/development/python-modules/qdarkstyle/default.nix
index a1893c88e0e..6b9b94b603f 100644
--- a/pkgs/development/python-modules/qdarkstyle/default.nix
+++ b/pkgs/development/python-modules/qdarkstyle/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "qdarkstyle";
-  version = "2.8";
+  version = "2.8.1";
 
   src = fetchPypi {
     inherit version;
     pname = "QDarkStyle";
-    sha256 = "6a967c4b664446f8bed9df12d1032cf68cb54f186bfc9cbfdbbc756bf9a5d475";
+    sha256 = "0883vzg35fzpyl1aiijzpfcdfvpq5vi325w0m7xkx7nxplh02fym";
   };
 
   # No tests available
@@ -22,7 +22,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "A dark stylesheet for Python and Qt applications";
-    homepage = https://github.com/ColinDuquesnoy/QDarkStyleSheet;
+    homepage = "https://github.com/ColinDuquesnoy/QDarkStyleSheet";
     license = licenses.mit;
     maintainers = with maintainers; [ nyanloutre ];
   };
diff --git a/pkgs/development/python-modules/qiskit-aer/default.nix b/pkgs/development/python-modules/qiskit-aer/default.nix
new file mode 100644
index 00000000000..7c36328f557
--- /dev/null
+++ b/pkgs/development/python-modules/qiskit-aer/default.nix
@@ -0,0 +1,103 @@
+{ lib
+, pythonOlder
+, buildPythonPackage
+, fetchFromGitHub
+, cmake
+, cvxpy
+, cython
+, numpy
+, openblas
+, pybind11
+, scikit-build
+, spdlog
+  # Check Inputs
+, qiskit-terra
+, pytestCheckHook
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "qiskit-aer";
+  version = "0.4.1";
+
+  disabled = pythonOlder "3.5";
+
+  src = fetchFromGitHub {
+    owner = "Qiskit";
+    repo = pname;
+    rev = version;
+    fetchSubmodules = true; # fetch muparserx and other required libraries
+    sha256 = "1j2pv6jx5dlzanjp1qnf32s53d8jrlpv96nvymznkcnjvqn60gv9";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    scikit-build
+  ];
+
+  buildInputs = [
+    openblas
+    spdlog
+  ];
+
+  propagatedBuildInputs = [
+    cvxpy
+    cython  # generates some cython files at runtime that need to be cython-ized
+    numpy
+    pybind11
+  ];
+
+  prePatch = ''
+    # remove dependency on PyPi cmake package, which isn't in Nixpkgs
+    substituteInPlace setup.py --replace "'cmake'" ""
+  '';
+
+  dontUseCmakeConfigure = true;
+
+  cmakeFlags = [
+    "-DBUILD_TESTS=True"
+    "-DAER_THRUST_BACKEND=OMP"
+  ];
+
+  # Needed to find qiskit.providers.aer modules in cython. This exists in GitHub, don't know why it isn't copied by default
+  postFixup = ''
+    touch $out/${python.sitePackages}/qiskit/__init__.pxd
+  '';
+
+  # *** Testing ***
+
+  pythonImportsCheck = [
+    "qiskit.providers.aer"
+    "qiskit.providers.aer.backends.qasm_simulator"
+    "qiskit.providers.aer.backends.controller_wrappers" # Checks C++ files built correctly. Only exists if built & moved to output
+  ];
+  checkInputs = [
+    qiskit-terra
+    pytestCheckHook
+  ];
+  dontUseSetuptoolsCheck = true;  # Otherwise runs tests twice
+
+  preCheck = ''
+    # Tests include a compiled "circuit" which is auto-built in $HOME
+    export HOME=$(mktemp -d)
+    # move tests b/c by default try to find (missing) cython-ized code in /build/source dir
+    cp -r test $HOME
+
+    # Add qiskit-aer compiled files to cython include search
+    pushd $HOME
+  '';
+  postCheck = ''
+    popd
+  '';
+
+  meta = with lib; {
+    description = "High performance simulators for Qiskit";
+    homepage = "https://github.com/QISKit/qiskit-aer";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ drewrisinger ];
+    # Doesn't build on aarch64 (libmuparserx issue).
+    # Can fix by building muparserx from source (https://github.com/beltoforion/muparserx)
+    # or in future updates (e.g. Raspberry Pi enabled via https://github.com/Qiskit/qiskit-aer/pull/651 & https://github.com/Qiskit/qiskit-aer/pull/660)
+    platforms = platforms.x86_64;
+  };
+}
diff --git a/pkgs/development/python-modules/qiskit-aqua/default.nix b/pkgs/development/python-modules/qiskit-aqua/default.nix
new file mode 100644
index 00000000000..ee01a5c4cb5
--- /dev/null
+++ b/pkgs/development/python-modules/qiskit-aqua/default.nix
@@ -0,0 +1,131 @@
+{ lib
+, pythonOlder
+, buildPythonPackage
+, fetchFromGitHub
+, cvxopt
+, dlx
+, docplex
+, fastdtw
+, h5py
+, networkx
+, numpy
+, psutil
+, qiskit-ignis
+, qiskit-terra
+, quandl
+, scikitlearn
+  # Check Inputs
+, parameterized
+, pytestCheckHook
+, qiskit-aer
+}:
+
+buildPythonPackage rec {
+  pname = "qiskit-aqua";
+  version = "0.6.5";
+
+  disabled = pythonOlder "3.5";
+
+  # Pypi's tarball doesn't contain tests
+  src = fetchFromGitHub {
+    owner = "Qiskit";
+    repo = "qiskit-aqua";
+    rev = version;
+    sha256 = "03c0gl2qxyngf3cccjghjb0bhp0w78sdbvhim08cimf3cd577ldz";
+  };
+
+  # Optional packages: pyscf (see below NOTE) & pytorch. Can install via pip/nix if needed.
+  propagatedBuildInputs = [
+    cvxopt
+    docplex
+    dlx # Python Dancing Links package
+    fastdtw
+    h5py
+    networkx
+    numpy
+    psutil
+    qiskit-terra
+    qiskit-ignis
+    quandl
+    scikitlearn
+  ];
+
+  # *** NOTE ***
+  # We make pyscf optional in this package, due to difficulties packaging it in Nix (test failures, complicated flags, etc).
+  # See nixpkgs#78772, nixpkgs#83447. You are welcome to try to package it yourself,
+  # or use the Nix User Repository version (https://github.com/drewrisinger/nur-packages).
+  # It can also be installed at runtime from the pip wheel.
+  # We disable appropriate tests below to allow building without pyscf installed
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "pyscf; sys_platform == 'linux' or (python_version < '3.8' and sys_platform != 'win32')" ""
+
+    # Add ImportWarning when running qiskit.chemistry (pyscf is a chemistry package) that pyscf is not included
+    echo -e "\nimport warnings\ntry: import pyscf;\nexcept:\n    " \
+      "warnings.warn('pyscf is not supported on Nixpkgs so some qiskit features will fail." \
+        "You must install it yourself via pip or add it to your environment from the Nix User Repository." \
+        "See https://github.com/NixOS/nixpkgs/pull/83447 for details', ImportWarning)\n" \
+      >> qiskit/chemistry/__init__.py
+  '';
+
+  checkInputs = [ parameterized qiskit-aer pytestCheckHook ];
+  dontUseSetuptoolsCheck = true;
+  pythonImportsCheck = [
+    "qiskit.aqua"
+    "qiskit.aqua.algorithms"
+    "qiskit.chemistry"
+    "qiskit.finance"
+    "qiskit.ml"
+    "qiskit.optimization"
+  ];
+  pytestFlagsArray = [
+    # Disabled b/c missing pyscf
+    "--ignore=test/chemistry/test_qeom_ee.py"
+    "--ignore=test/chemistry/test_qeom_vqe.py"
+    "--ignore=test/chemistry/test_vqe_uccsd_adapt.py"
+
+    # Following tend to be slow tests, all pass
+    "--ignore=test/aqua/test_vqc.py"
+    "--ignore=test/aqua/test_hhl.py"
+    "--ignore=test/aqua/test_qgan.py"
+    "--ignore=test/aqua/test_mcr.py"
+    "--ignore=test/aqua/test_mcu1.py"
+    "--ignore=test/aqua/test_vqe.py"
+  ];
+  disabledTests = [
+    # Disabled due to missing pyscf
+    "test_validate" # test/chemistry/test_inputparser.py
+
+    # Disabling slow tests > 10 seconds
+    "test_clique_vqe"
+    "test_delta_3_qasm"
+    "test_evaluate_qasm_mode"
+    "test_evolve_1_suzuki"
+    "test_exact_cover_vqe"
+    "test_exchangedata"
+    "test_expected_value_0_statevector"
+    "test_expected_value_1_qasm"
+    "test_expected_value_2_statevector"
+    "test_graph_partition_vqe"
+    "test_lookup_rotation"
+    "test_mct_with_dirty_ancillae_15"
+    "test_mcrz_11"
+    "test_measurement_error_mitigation_auto_refresh"
+    "test_qgan_training"
+    "test_qsvm_multiclass"
+    "test_shor_factoring_0"
+    "test_vertex_cover_vqe"
+    "test_vqc_with_raw_feature_vector_on_wine"
+    "test_vqe_2_iqpe"
+    "test_vqe_qasm"
+    "test_wikipedia"
+  ];
+
+  meta = with lib; {
+    description = "An extensible library of quantum computing algorithms";
+    homepage = "https://github.com/QISKit/qiskit-aqua";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ drewrisinger ];
+  };
+}
diff --git a/pkgs/development/python-modules/qiskit-ibmq-provider/default.nix b/pkgs/development/python-modules/qiskit-ibmq-provider/default.nix
new file mode 100644
index 00000000000..bed1bffe1a6
--- /dev/null
+++ b/pkgs/development/python-modules/qiskit-ibmq-provider/default.nix
@@ -0,0 +1,91 @@
+{ lib
+, pythonOlder
+, buildPythonPackage
+, fetchFromGitHub
+, arrow
+, nest-asyncio
+, qiskit-terra
+, requests
+, requests_ntlm
+, websockets
+  # Visualization inputs
+, ipykernel
+, ipyvuetify
+, ipywidgets
+, matplotlib
+, nbconvert
+, nbformat
+, plotly
+, pyperclip
+, seaborn
+  # check inputs
+, pytestCheckHook
+, pproxy
+, vcrpy
+}:
+
+buildPythonPackage rec {
+  pname = "qiskit-ibmq-provider";
+  version = "0.6.0";
+
+  disabled = pythonOlder "3.6";
+
+  src = fetchFromGitHub {
+    owner = "Qiskit";
+    repo = pname;
+    rev = version;
+    sha256 = "0arbhwaa2kx04jbrj6hk3vvn92wdk6lrr9zx36pr6p22r0yyxnj9";
+  };
+
+  propagatedBuildInputs = [
+    arrow
+    nest-asyncio
+    qiskit-terra
+    requests
+    requests_ntlm
+    websockets
+    # Visualization/Jupyter inputs
+    ipykernel
+    ipyvuetify
+    ipywidgets
+    matplotlib
+    nbconvert
+    nbformat
+    plotly
+    pyperclip
+    seaborn
+  ];
+
+  # websockets seems to be pinned b/c in v8+ it drops py3.5 support. Not an issue here (usually py3.7+, and disabled for older py3.6)
+  prePatch = ''
+    substituteInPlace requirements.txt --replace "websockets>=7,<8" "websockets"
+    substituteInPlace setup.py --replace "websockets>=7,<8" "websockets"
+  '';
+
+  # Most tests require credentials to run on IBMQ
+  checkInputs = [
+    pytestCheckHook
+    pproxy
+    vcrpy
+  ];
+  dontUseSetuptoolsCheck = true;
+
+  pythonImportsCheck = [ "qiskit.providers.ibmq" ];
+  # These disabled tests require internet connection, aren't skipped elsewhere
+  disabledTests = [
+    "test_old_api_url"
+    "test_non_auth_url"
+    "test_non_auth_url_with_hub"
+  ];
+
+  # Skip tests that rely on internet access (mostly to IBM Quantum Experience cloud).
+  # Options defined in qiskit.terra.test.testing_options.py::get_test_options
+  QISKIT_TESTS = "skip_online";
+
+  meta = with lib; {
+    description = "Qiskit provider for accessing the quantum devices and simulators at IBMQ";
+    homepage = "https://github.com/Qiskit/qiskit-ibmq-provider";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ drewrisinger ];
+  };
+}
diff --git a/pkgs/development/python-modules/qiskit-ignis/default.nix b/pkgs/development/python-modules/qiskit-ignis/default.nix
new file mode 100644
index 00000000000..2f0a99dc0f8
--- /dev/null
+++ b/pkgs/development/python-modules/qiskit-ignis/default.nix
@@ -0,0 +1,62 @@
+{ lib
+, pythonOlder
+, buildPythonPackage
+, fetchFromGitHub
+, fetchpatch
+, numpy
+, qiskit-terra
+, scipy
+  # Check Inputs
+, pytestCheckHook
+, qiskit-aer
+}:
+
+buildPythonPackage rec {
+  pname = "qiskit-ignis";
+  version = "0.2.0";
+
+  disabled = pythonOlder "3.5";
+
+  # Pypi's tarball doesn't contain tests
+  src = fetchFromGitHub {
+    owner = "Qiskit";
+    repo = pname;
+    rev = version;
+    sha256 = "08a60xk5dq5wmqc23r4hr2v2nsf9hs0ybz832vbnd6d80dl6izyc";
+  };
+
+  patches = [
+    # Update tests for compatibility with qiskit-aer 0.4 (#342). Remove in version > 0.2.0
+    (fetchpatch {
+      url = "https://github.com/Qiskit/qiskit-ignis/commit/d78c494579f370058e68e360f10149db81b52477.patch";
+      sha256 = "0ygkllf95c0jfvjg7gn399a5fd0wshsjpcn279kj7855m8j306h6";
+    })
+    # Fix statevector test over-eager validation (PR #333)
+    (fetchpatch {
+      url = "https://github.com/Qiskit/qiskit-ignis/commit/7cc8eb2e852b383ea429233fa43d3728931f1707.patch";
+      sha256 = "0mdygykilg4qivdaa731z3y56l3ax4jp1sil9npqv0gn4p03c9g5";
+    })
+  ];
+
+  propagatedBuildInputs = [
+    numpy
+    qiskit-terra
+    scipy
+  ];
+
+  # Tests
+  pythonImportsCheck = [ "qiskit.ignis" ];
+  dontUseSetuptoolsCheck = true;
+  preCheck = ''export HOME=$TMPDIR'';
+  checkInputs = [
+    pytestCheckHook
+    qiskit-aer
+  ];
+
+  meta = with lib; {
+    description = "Qiskit tools for quantum hardware verification, noise characterization, and error correction";
+    homepage = "https://github.com/QISKit/qiskit-ignis";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ drewrisinger ];
+  };
+}
diff --git a/pkgs/development/python-modules/qiskit/default.nix b/pkgs/development/python-modules/qiskit/default.nix
index 89d02f7b803..3b5c9e706dc 100644
--- a/pkgs/development/python-modules/qiskit/default.nix
+++ b/pkgs/development/python-modules/qiskit/default.nix
@@ -1,65 +1,49 @@
-{ stdenv
-, isPy3k
+{ lib
+, pythonOlder
 , buildPythonPackage
-, fetchPypi
-, numpy
-, scipy
-, sympy
-, matplotlib
-, networkx
-, ply
-, pillow
-, cffi
-, requests
-, requests_ntlm
-, IBMQuantumExperience
-, jsonschema
-, psutil
-, cmake
-, llvmPackages 
+, fetchFromGitHub
+  # Python Inputs
+, qiskit-aer
+, qiskit-aqua
+, qiskit-ibmq-provider
+, qiskit-ignis
+, qiskit-terra
+  # Check Inputs
+, pytestCheckHook
 }:
 
 buildPythonPackage rec {
   pname = "qiskit";
-  version = "0.14.0";
+  # NOTE: This version denotes a specific set of subpackages. See https://qiskit.org/documentation/release_notes.html#version-history
+  version = "0.17.0";
 
-  disabled = !isPy3k;
+  disabled = pythonOlder "3.5";
 
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "d086a21d0eee61bb12e1f2cd6148a7292005fd10584ca33d6c404dd5c53ba95f";
+  src = fetchFromGitHub {
+    owner = "Qiskit";
+    repo = "qiskit";
+    rev = version;
+    sha256 = "1cnjcvvzklyq102fipqnwd5ham0sp0451gp7j79cwwsxzvji6pcc";
   };
 
-  buildInputs = [ cmake ]
-    ++ stdenv.lib.optional stdenv.isDarwin llvmPackages.openmp;
-
   propagatedBuildInputs = [
-    numpy
-    matplotlib
-    networkx
-    ply
-    scipy
-    sympy
-    pillow
-    cffi
-    requests
-    requests_ntlm
-    IBMQuantumExperience
-    jsonschema
-    psutil
+    qiskit-aer
+    qiskit-aqua
+    qiskit-ibmq-provider
+    qiskit-ignis
+    qiskit-terra
   ];
 
-  # Pypi's tarball doesn't contain tests
-  doCheck = false;
+  checkInputs = [ pytestCheckHook ];
+  dontUseSetuptoolsCheck = true;
+  # following doesn't work b/c they are distributed across different nix sitePackages dirs. Tested with pytest though.
+  # pythonImportsCheck = [ "qiskit" "qiskit.terra" "qiskit.ignis" "qiskit.aer" "qiskit.aqua" ];
 
   meta = {
-    description = "Quantum Software Development Kit for writing quantum computing experiments, programs, and applications";
-    homepage    = https://github.com/QISKit/qiskit-terra;
-    license     = stdenv.lib.licenses.asl20;
-    maintainers = with stdenv.lib.maintainers; [
-      pandaman
-    ];
-    # Needs to be updated and have its new dependencies added
-    broken = true;
+    description = "Software for developing quantum computing programs";
+    homepage = "https://qiskit.org";
+    downloadPage = "https://github.com/QISKit/qiskit/releases";
+    license = lib.licenses.asl20;
+    maintainers = with lib.maintainers; [ drewrisinger pandaman ];
   };
 }
diff --git a/pkgs/development/python-modules/quandl/default.nix b/pkgs/development/python-modules/quandl/default.nix
index bd73a021331..2d78b626092 100644
--- a/pkgs/development/python-modules/quandl/default.nix
+++ b/pkgs/development/python-modules/quandl/default.nix
@@ -10,12 +10,13 @@
 
 buildPythonPackage rec {
   pname = "quandl";
-  version = "3.4.8";
+  version = "3.5.0";
+  disabled = !isPy3k;
 
   src = fetchPypi {
     inherit version;
     pname = "Quandl";
-    sha256 = "179knz21filz6x6qk66b7dk2pj1x4jnvxxd5x71ap19f367dkkb3";
+    sha256 = "0zpw0nwqr4g56l9z4my0fahfgpcmfx74acbmv6nfx1dmq5ggraf3";
   };
 
   doCheck = true;
@@ -46,10 +47,10 @@ buildPythonPackage rec {
     pyasn1
   ];
 
-  meta = {
-    homepage = "https://github.com/quandl/quandl-python";
+  meta = with lib; {
     description = "Quandl Python client library";
-    maintainers = [ lib.maintainers.ilya-kolpakov ];
-    license = lib.licenses.mit;
+    homepage = "https://github.com/quandl/quandl-python";
+    license = licenses.mit;
+    maintainers = with maintainers; [ ilya-kolpakov ];
   };
 }
diff --git a/pkgs/development/python-modules/roku/default.nix b/pkgs/development/python-modules/roku/default.nix
new file mode 100644
index 00000000000..6cdfa2aa15b
--- /dev/null
+++ b/pkgs/development/python-modules/roku/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub, buildPythonPackage, requests, pytest, flask, isPy27
+}:
+
+buildPythonPackage rec {
+  version = "4.1";
+  pname = "roku";
+  disabled = isPy27;
+
+  src = fetchFromGitHub {
+    owner = "jcarbaugh";
+    repo = "python-roku";
+    rev = "v${version}";
+    sha256 = "09mq59kjll7gj1srw4qc921ncsm7cld95sbz5v3p2bwmgckpqza7";
+  };
+
+  propagatedBuildInputs = [ requests ];
+
+  checkInputs = [ pytest flask ];
+  pythonImportsCheck = [ "roku" ];
+
+  meta = with stdenv.lib; {
+    description = "Screw remotes. Control your Roku with Python.";
+    homepage = "https://github.com/jcarbaugh/python-roku";
+    license = licenses.bsd3;
+  };
+}
diff --git a/pkgs/development/python-modules/rope/default.nix b/pkgs/development/python-modules/rope/default.nix
index 66340f91770..6bcc05fb34d 100644
--- a/pkgs/development/python-modules/rope/default.nix
+++ b/pkgs/development/python-modules/rope/default.nix
@@ -1,12 +1,14 @@
-{ stdenv, buildPythonPackage, fetchPypi, nose }:
+{ stdenv, buildPythonPackage, fetchPypi, pythonAtLeast, nose }:
 
 buildPythonPackage rec {
   pname = "rope";
-  version = "0.14.0";
+  version = "0.16.0";
+
+  disabled = pythonAtLeast "3.8";  # 0.17 should support Python 3.8
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1bwayj0hh459s3yh0sdrxksr9wfilgi3a49izfaj06kvgyladif5";
+    sha256 = "1zlxdrs6ww2hm41izz67h67z9dkm0rlgw8m04vygaip0q91030yj";
   };
 
   checkInputs = [ nose ];
@@ -17,7 +19,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "Python refactoring library";
-    homepage = https://github.com/python-rope/rope;
+    homepage = "https://github.com/python-rope/rope";
     maintainers = with maintainers; [ goibhniu ];
     license = licenses.gpl2;
   };
diff --git a/pkgs/development/python-modules/salmon-mail/default.nix b/pkgs/development/python-modules/salmon-mail/default.nix
index afd915ed840..92def3935e7 100644
--- a/pkgs/development/python-modules/salmon-mail/default.nix
+++ b/pkgs/development/python-modules/salmon-mail/default.nix
@@ -1,22 +1,26 @@
-{ stdenv, buildPythonPackage, fetchPypi, nose, dnspython
-,  chardet, lmtpd, python-daemon, six, jinja2, mock }:
+{ stdenv, buildPythonPackage, fetchPypi, dnspython, chardet, lmtpd
+, python-daemon, six, jinja2, mock, click }:
 
 buildPythonPackage rec {
   pname = "salmon-mail";
-  version = "3.1.1";
+  version = "3.2.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0ddd9nwdmiibk3jaampznm8nai5b7zalp0f8c65l71674300bqnw";
+    sha256 = "0q2m6xri1b7qv46rqpv2qfdgk2jvswj8lpaacnxwjna3m685fhfx";
   };
 
-  checkInputs = [ nose jinja2 mock ];
-  propagatedBuildInputs = [ chardet dnspython lmtpd python-daemon six ];
+  checkInputs = [ jinja2 mock ];
+  propagatedBuildInputs = [ chardet dnspython lmtpd python-daemon six click ];
+
+  # Darwin tests fail without this. See:
+  # https://github.com/NixOS/nixpkgs/pull/82166#discussion_r399909846
+  __darwinAllowLocalNetworking = true;
 
   # The tests use salmon executable installed by salmon itself so we need to add
   # that to PATH
   checkPhase = ''
-    PATH=$out/bin:$PATH nosetests .
+    PATH=$out/bin:$PATH python setup.py test
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/scikit-build/default.nix b/pkgs/development/python-modules/scikit-build/default.nix
index 8d459e24984..745723a01bc 100644
--- a/pkgs/development/python-modules/scikit-build/default.nix
+++ b/pkgs/development/python-modules/scikit-build/default.nix
@@ -1,7 +1,28 @@
-{ lib, buildPythonPackage, fetchPypi, wheel, setuptools, packaging
-, cmake, ninja, cython, codecov, coverage, six, virtualenv, pathpy
-, pytest, pytestcov, pytest-virtualenv, pytest-mock, pytestrunner
-, requests, flake8 }:
+{ lib
+, buildPythonPackage
+, fetchPypi
+, fetchpatch
+, distro
+, packaging
+, setuptools
+, wheel
+# Test Inputs
+, cmake
+, codecov
+, coverage
+, cython
+, flake8
+, ninja
+, pathpy
+, pytest
+, pytestcov
+, pytest-mock
+, pytestrunner
+, pytest-virtualenv
+, requests
+, six
+, virtualenv
+}:
 
 buildPythonPackage rec {
   pname = "scikit-build";
@@ -12,15 +33,41 @@ buildPythonPackage rec {
     sha256 = "7342017cc82dd6178e3b19377389b8a8d1f8b429d9cdb315cfb1094e34a0f526";
   };
 
-  propagatedBuildInputs = [ wheel setuptools packaging ];
-  checkInputs = [ 
-    cmake ninja cython codecov coverage six pathpy
-    pytest pytestcov pytest-mock pytest-virtualenv pytestrunner
-    requests flake8
+  propagatedBuildInputs = [
+    distro
+    packaging
+    setuptools
+    wheel
+  ];
+  checkInputs = [
+    cmake
+    codecov
+    coverage
+    cython
+    flake8
+    ninja
+    pathpy
+    pytest
+    pytestcov
+    pytest-mock
+    pytestrunner
+    pytest-virtualenv
+    requests
+    six
+    virtualenv
   ];
 
   dontUseCmakeConfigure = true;
 
+  # scikit-build PR #458. Remove in version > 0.10.0
+  patches = [
+    (fetchpatch {
+      name = "python38-platform_linux_distribution-fix-458";
+      url = "https://github.com/scikit-build/scikit-build/commit/faa7284e5bc4c72bc8744987acdf3297b5d2e7e4.patch";
+      sha256 = "1hgl3cnkf266zaw534b64c88waxfz9721wha0m6j3hsnxk76ayjv";
+    })
+  ];
+
   disabledTests = lib.concatMapStringsSep " and " (s: "not " + s) ([
     "test_hello_develop" # tries setuptools develop install
     "test_source_distribution" # pip has no way to install missing dependencies
@@ -35,9 +82,9 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    homepage = http://scikit-build.org/;
     description = "Improved build system generator for CPython C/C++/Fortran/Cython extensions";
+    homepage = "http://scikit-build.org/";
     license = with licenses; [ mit bsd2 ]; # BSD due to reuses of PyNE code
-    maintainers = [ maintainers.FlorianFranzen ];
+    maintainers = with maintainers; [ FlorianFranzen ];
   };
 }
diff --git a/pkgs/development/python-modules/scrapy/default.nix b/pkgs/development/python-modules/scrapy/default.nix
index 8fee4b6631a..05c0c43c15c 100644
--- a/pkgs/development/python-modules/scrapy/default.nix
+++ b/pkgs/development/python-modules/scrapy/default.nix
@@ -1,13 +1,60 @@
-{ stdenv, buildPythonPackage, fetchPypi, glibcLocales, mock, pytest, botocore,
-  testfixtures, pillow, six, twisted, w3lib, lxml, queuelib, pyopenssl,
-  service-identity, parsel, pydispatcher, cssselect, lib }:
+{ stdenv
+, buildPythonPackage
+, isPy27
+, fetchPypi
+, glibcLocales
+, pytest
+, testfixtures
+, pillow
+, twisted
+, cryptography
+, w3lib
+, lxml
+, queuelib
+, pyopenssl
+, service-identity
+, parsel
+, pydispatcher
+, cssselect
+, zope_interface
+, protego
+, lib
+, jmespath
+, sybil
+, pytest-twisted
+, botocore
+}:
+
 buildPythonPackage rec {
-  version = "1.8.0";
+  version = "2.0.1";
   pname = "Scrapy";
 
-  checkInputs = [ glibcLocales mock pytest botocore testfixtures pillow ];
+  disabled = isPy27;
+
+  checkInputs = [
+    glibcLocales
+    jmespath
+    pytest
+    sybil
+    testfixtures
+    pillow
+    pytest-twisted
+    botocore
+  ];
+
   propagatedBuildInputs = [
-    six twisted w3lib lxml cssselect queuelib pyopenssl service-identity parsel pydispatcher
+    twisted
+    cryptography
+    cssselect
+    lxml
+    parsel
+    pydispatcher
+    pyopenssl
+    queuelib
+    service-identity
+    w3lib
+    zope_interface
+    protego
   ];
 
   patches = [
@@ -18,20 +65,20 @@ buildPythonPackage rec {
     ./permissions-fix.patch
   ];
 
-  LC_ALL="en_US.UTF-8";
+  LC_ALL = "en_US.UTF-8";
 
   # Disable doctest plugin—enabled in the shipped pytest.ini—because it causes pytest to hang
   # Ignore proxy tests because requires mitmproxy
   # Ignore test_retry_dns_error because tries to resolve an invalid dns and weirdly fails with "Reactor was unclean"
   # Ignore xml encoding test on darwin because lxml can't find encodings https://bugs.launchpad.net/lxml/+bug/707396
   checkPhase = ''
-    substituteInPlace pytest.ini --replace "addopts = --doctest-modules" "addopts ="
+    substituteInPlace pytest.ini --replace "--doctest-modules" ""
     pytest --ignore=tests/test_linkextractors_deprecated.py --ignore=tests/test_proxy_connect.py --deselect tests/test_crawl.py::CrawlTestCase::test_retry_dns_error ${lib.optionalString stdenv.isDarwin "--deselect tests/test_utils_iterators.py::LxmlXmliterTestCase::test_xmliter_encoding"}
   '';
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "fe06576f9a4971de9dc0175c60fd92561e8275f2bad585c1cb5d65c5181b2db0";
+    sha256 = "85581a01f4160a103ca9906ffa4e44474f4ecd1685f0934728892c58ebf111f6";
   };
 
   postInstall = ''
@@ -42,7 +89,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "A fast high-level web crawling and web scraping framework, used to crawl websites and extract structured data from their pages";
-    homepage = https://scrapy.org/;
+    homepage = "https://scrapy.org/";
     license = licenses.bsd3;
     maintainers = with maintainers; [ drewkett marsam ];
     platforms = platforms.unix;
diff --git a/pkgs/development/python-modules/seabreeze/default.nix b/pkgs/development/python-modules/seabreeze/default.nix
index 8555c024c76..7cf062765d3 100644
--- a/pkgs/development/python-modules/seabreeze/default.nix
+++ b/pkgs/development/python-modules/seabreeze/default.nix
@@ -6,8 +6,9 @@
 }:
 
 ## Usage
-# In NixOS, simply add the `udev` multiple output to services.udev.packages:
-#   services.udev.packages = [ pkgs.python3Packages.seabreeze.udev ];
+# In NixOS, add the package to services.udev.packages for non-root plugdev
+# users to get device access permission:
+#    services.udev.packages = [ pkgs.python3Packages.seabreeze ];
 
 buildPythonPackage rec {
   pname = "seabreeze";
@@ -20,11 +21,9 @@ buildPythonPackage rec {
     sha256 = "0bc2s9ic77gz9m40w89snixphxlzib60xa4f49n4zasjrddfz1l8";
   };
 
-  outputs = [ "out" "udev" ];
-
   postInstall = ''
-    mkdir -p $udev/lib/udev/rules.d
-    cp misc/10-oceanoptics.rules $udev/lib/udev/rules.d/10-oceanoptics.rules
+    mkdir -p $out/etc/udev/rules.d
+    cp misc/10-oceanoptics.rules $out/etc/udev/rules.d/10-oceanoptics.rules
   '';
 
   # underlying c libraries are tested and fail
diff --git a/pkgs/development/python-modules/sfepy/default.nix b/pkgs/development/python-modules/sfepy/default.nix
index 36f4f82cb3f..6a7bb38a74d 100644
--- a/pkgs/development/python-modules/sfepy/default.nix
+++ b/pkgs/development/python-modules/sfepy/default.nix
@@ -13,11 +13,11 @@
 
 buildPythonPackage rec {
   name = "sfepy_${version}";
-  version = "2019.2";
+  version = "2019.4";
 
   src = fetchurl {
     url="https://github.com/sfepy/sfepy/archive/release_${version}.tar.gz";
-    sha256 = "17dj0wbchcfa6x27yx4d4jix4z4nk6r2640xkqcsw0mf62x5l1pj";
+    sha256 = "1l9vgcw09l6bwhgfzlbn68fzpvns25r6nkd1pcp7hz5165hs6zzn";
   };
 
   propagatedBuildInputs = [
@@ -33,6 +33,7 @@ buildPythonPackage rec {
   postPatch = ''
     # broken test
     rm tests/test_homogenization_perfusion.py
+    rm tests/test_splinebox.py
 
     # slow tests
     rm tests/test_input_*.py
diff --git a/pkgs/development/python-modules/shapely/default.nix b/pkgs/development/python-modules/shapely/default.nix
index 220726733dc..d895f00285d 100644
--- a/pkgs/development/python-modules/shapely/default.nix
+++ b/pkgs/development/python-modules/shapely/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "Shapely";
-  version = "1.6.4.post2";
+  version = "1.7.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "c4b87bb61fc3de59fc1f85e71a79b0c709dc68364d9584473697aad4aa13240f";
+    sha256 = "07lmrihj6pa7f99m97hbf2anqlhhwippcdz03bqkyihnlkhry6p2";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/shapely/library-paths.patch b/pkgs/development/python-modules/shapely/library-paths.patch
index f75ad7a9486..4081936abe3 100644
--- a/pkgs/development/python-modules/shapely/library-paths.patch
+++ b/pkgs/development/python-modules/shapely/library-paths.patch
@@ -1,9 +1,9 @@
 diff --git a/shapely/geos.py b/shapely/geos.py
-index 09bf1ab..837aa98 100644
+index d5a67d2..19b7ffc 100644
 --- a/shapely/geos.py
 +++ b/shapely/geos.py
-@@ -55,100 +55,10 @@ def load_dll(libname, fallbacks=None, mode=DEFAULT_MODE):
-             "Could not find lib {0} or load any of its variants {1}.".format(
+@@ -61,123 +61,11 @@ def load_dll(libname, fallbacks=None, mode=DEFAULT_MODE):
+             "Could not find lib {} or load any of its variants {}.".format(
                  libname, fallbacks or []))
  
 -_lgeos = None
@@ -16,15 +16,25 @@ index 09bf1ab..837aa98 100644
 -    if len(geos_whl_so) == 1:
 -        _lgeos = CDLL(geos_whl_so[0])
 -        LOG.debug("Found GEOS DLL: %r, using it.", _lgeos)
+-    elif hasattr(sys, 'frozen'):
+-        geos_pyinstaller_so = glob.glob(os.path.join(sys.prefix, 'libgeos_c-*.so.*'))
+-        if len(geos_pyinstaller_so) == 1:
+-            _lgeos = CDLL(geos_pyinstaller_so[0])
+-            LOG.debug("Found GEOS DLL: %r, using it.", _lgeos)
+-    elif os.getenv('CONDA_PREFIX', ''):
+-        # conda package.
+-        _lgeos = CDLL(os.path.join(sys.prefix, 'lib', 'libgeos_c.so'))
 -    else:
 -        alt_paths = [
 -            'libgeos_c.so.1',
 -            'libgeos_c.so',
--            # anaconda
--            os.path.join(sys.prefix, "lib", "libgeos_c.so"),
 -        ]
 -        _lgeos = load_dll('geos_c', fallbacks=alt_paths)
--    free = load_dll('c').free
+-    # Necessary for environments with only libc.musl
+-    c_alt_paths = [
+-        'libc.musl-x86_64.so.1'
+-    ]
+-    free = load_dll('c', fallbacks=c_alt_paths).free
 -    free.argtypes = [c_void_p]
 -    free.restype = None
 -
@@ -32,10 +42,19 @@ index 09bf1ab..837aa98 100644
 -    # Test to see if we have a delocated wheel with a GEOS dylib.
 -    geos_whl_dylib = os.path.abspath(os.path.join(os.path.dirname(
 -        __file__), '.dylibs/libgeos_c.1.dylib'))
+-
 -    if os.path.exists(geos_whl_dylib):
--        _lgeos = CDLL(geos_whl_dylib)
--        LOG.debug("Found GEOS DLL: %r, using it.", _lgeos)
+-        handle = CDLL(None)
+-        if hasattr(handle, "initGEOS_r"):
+-            LOG.debug("GEOS already loaded")
+-            _lgeos = handle
+-        else:
+-            _lgeos = CDLL(geos_whl_dylib)
+-            LOG.debug("Found GEOS DLL: %r, using it.", _lgeos)
 -
+-    elif os.getenv('CONDA_PREFIX', ''):
+-        # conda package.
+-        _lgeos = CDLL(os.path.join(sys.prefix, 'lib', 'libgeos_c.dylib'))
 -    else:
 -        if hasattr(sys, 'frozen'):
 -            try:
@@ -52,12 +71,12 @@ index 09bf1ab..837aa98 100644
 -                        os.path.join(sys._MEIPASS, 'libgeos_c.1.dylib'))
 -        else:
 -            alt_paths = [
--                # anaconda
--                os.path.join(sys.prefix, "lib", "libgeos_c.dylib"),
 -                # The Framework build from Kyng Chaos
 -                "/Library/Frameworks/GEOS.framework/Versions/Current/GEOS",
 -                # macports
 -                '/opt/local/lib/libgeos_c.dylib',
+-                # homebrew
+-                '/usr/local/lib/libgeos_c.dylib',
 -            ]
 -        _lgeos = load_dll('geos_c', fallbacks=alt_paths)
 -
@@ -66,30 +85,34 @@ index 09bf1ab..837aa98 100644
 -    free.restype = None
 -
 -elif sys.platform == 'win32':
--    try:
--        egg_dlls = os.path.abspath(
--            os.path.join(os.path.dirname(__file__), 'DLLs'))
--        if hasattr(sys, "frozen"):
--            wininst_dlls = os.path.normpath(
--                os.path.abspath(sys.executable + '../../DLLS'))
--        else:
--            wininst_dlls = os.path.abspath(os.__file__ + "../../../DLLs")
--        original_path = os.environ['PATH']
--        os.environ['PATH'] = "%s;%s;%s" % \
--            (egg_dlls, wininst_dlls, original_path)
--        _lgeos = load_dll("geos_c.dll", fallbacks=[
--            os.path.join(sys.prefix, "Library", "lib", "geos_c.dll"),
--        ])
--    except (ImportError, WindowsError, OSError):
--        raise
--
--    def free(m):
+-    if os.getenv('CONDA_PREFIX', ''):
+-        # conda package.
+-        _lgeos = CDLL(os.path.join(sys.prefix, 'Library', 'bin', 'geos_c.dll'))
+-    else:
 -        try:
--            cdll.msvcrt.free(m)
--        except WindowsError:
--            # XXX: See http://trac.gispython.org/projects/PCL/ticket/149
--            pass
+-            egg_dlls = os.path.abspath(
+-                os.path.join(os.path.dirname(__file__), 'DLLs'))
+-            if hasattr(sys, '_MEIPASS'):
+-                wininst_dlls = sys._MEIPASS
+-            elif hasattr(sys, "frozen"):
+-                wininst_dlls = os.path.normpath(
+-                    os.path.abspath(sys.executable + '../../DLLS'))
+-            else:
+-                wininst_dlls = os.path.abspath(os.__file__ + "../../../DLLs")
+-            original_path = os.environ['PATH']
+-            os.environ['PATH'] = "%s;%s;%s" % \
+-                (egg_dlls, wininst_dlls, original_path)
+-            _lgeos = load_dll("geos_c.dll")
+-        except (ImportError, WindowsError, OSError):
+-            raise
 -
+-        def free(m):
+-            try:
+-                cdll.msvcrt.free(m)
+-            except WindowsError:
+-                # XXX: See http://trac.gispython.org/projects/PCL/ticket/149
+-                pass
+ 
 -elif sys.platform == 'sunos5':
 -    _lgeos = load_dll('geos_c', fallbacks=['libgeos_c.so.1', 'libgeos_c.so'])
 -    free = CDLL('libc.so.1').free
diff --git a/pkgs/development/python-modules/shodan/default.nix b/pkgs/development/python-modules/shodan/default.nix
index 0c88dcd0fe2..4db1172e041 100644
--- a/pkgs/development/python-modules/shodan/default.nix
+++ b/pkgs/development/python-modules/shodan/default.nix
@@ -10,11 +10,11 @@
 
 buildPythonPackage rec {
   pname = "shodan";
-  version = "1.21.3";
+  version = "1.22.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1mbqdk3jdga4r08dg66j7kawmb40rs0y3nnwb9vh3c1safgqjmiz";
+    sha256 = "0pgkd0pngmygafld283zfx7whlv6yp3ldgd4sjv8bxjcsb19iw59";
   };
 
   propagatedBuildInputs = [
@@ -30,7 +30,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python library and command-line utility for Shodan";
-    homepage = https://github.com/achillean/shodan-python;
+    homepage = "https://github.com/achillean/shodan-python";
     license = licenses.mit;
     maintainers = with maintainers; [ lihop ];
   };
diff --git a/pkgs/development/python-modules/simplekml/default.nix b/pkgs/development/python-modules/simplekml/default.nix
index be149e7edea..4f6cc190f0e 100644
--- a/pkgs/development/python-modules/simplekml/default.nix
+++ b/pkgs/development/python-modules/simplekml/default.nix
@@ -2,14 +2,14 @@
 
 buildPythonPackage rec {
   pname = "simplekml";
-  version = "1.3.3";
+  version = "1.3.5";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "08l24gfql83yjcdqb51nnnvckbnfb7bl89am4q9zr0fslrbcn3vf";
+    sha256 = "17h48r1dsfz4g9xcxh1xq85h20hiz7qzzymc1gla96bj2wh4wyv5";
   };
 
-  doCheck = false; # no tests are defined in 1.3.3
+  doCheck = false; # no tests are defined in 1.3.5
 
   meta = with lib; {
     description = "Generate KML with as little effort as possible";
diff --git a/pkgs/development/python-modules/slob/default.nix b/pkgs/development/python-modules/slob/default.nix
index 8a6971ceb8f..48400f910c4 100644
--- a/pkgs/development/python-modules/slob/default.nix
+++ b/pkgs/development/python-modules/slob/default.nix
@@ -7,8 +7,8 @@
 }:
 
 buildPythonPackage {
-  name = "slob";
-  verison = "unstable-2016-11-03";
+  pname = "slob";
+  version = "unstable-2016-11-03";
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
diff --git a/pkgs/development/python-modules/sly/default.nix b/pkgs/development/python-modules/sly/default.nix
index 011fa1799ab..273972cbe4e 100644
--- a/pkgs/development/python-modules/sly/default.nix
+++ b/pkgs/development/python-modules/sly/default.nix
@@ -7,12 +7,12 @@
 
 buildPythonPackage rec {
   pname = "sly";
-  version = "0.3";
+  version = "0.4";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "be6a3825b042a9e1b6f5730fc747e6d983c917f0f002d798d0b9f86ca5c05ad9";
+    sha256 = "0an31bm5m8wqwphanmcsbbnmycy6l4xkmg4za4bwq8hk4dm2dwp5";
   };
 
   checkInputs = [ pytest ];
@@ -22,7 +22,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "An improved PLY implementation of lex and yacc for Python 3";
-    homepage = https://github.com/dabeaz/sly;
+    homepage = "https://github.com/dabeaz/sly";
     license = licenses.bsd3;
     maintainers = [ maintainers.costrouc ];
   };
diff --git a/pkgs/development/python-modules/snscrape/default.nix b/pkgs/development/python-modules/snscrape/default.nix
index 18a7c2bb209..9f0b805a19d 100644
--- a/pkgs/development/python-modules/snscrape/default.nix
+++ b/pkgs/development/python-modules/snscrape/default.nix
@@ -11,13 +11,13 @@
 
 buildPythonPackage rec {
   pname = "snscrape";
-  version = "0.3.0";
+  version = "0.3.1";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1f3lyq06l8s4kcsmwbxcwcxnv6mvz9c3zj70np8vnx149p3zi983";
+    sha256 = "11jv5mv3l11qjlsjihd74gc1jafq0i7360cksqjkx1wv2hcc32rf";
   };
 
   # There are no tests; make sure the executable works.
@@ -30,7 +30,7 @@ buildPythonPackage rec {
   propagatedBuildInputs = [ setuptools requests lxml beautifulsoup4 ];
 
   meta = with lib; {
-    homepage = https://github.com/JustAnotherArchivist/snscrape;
+    homepage = "https://github.com/JustAnotherArchivist/snscrape";
     description = "A social networking service scraper in Python";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ ivan ];
diff --git a/pkgs/development/python-modules/soco/default.nix b/pkgs/development/python-modules/soco/default.nix
index 4a44b7d0b7a..0af09cc01ce 100644
--- a/pkgs/development/python-modules/soco/default.nix
+++ b/pkgs/development/python-modules/soco/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "soco";
-  version = "0.18.1";
+  version = "0.19";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "de033ad69f86a655f50d407648b3aa2dd9647c69fd7bb317e9adfcd38a1adf4b";
+    sha256 = "0dgca286vhrabm4r4jj545k895z6w2c70ars06vrjhf9cpgg7qck";
   };
 
   postPatch = ''
@@ -27,7 +27,7 @@ buildPythonPackage rec {
   ];
 
   meta = {
-    homepage = http://python-soco.com/;
+    homepage = "http://python-soco.com/";
     description = "A CLI and library to control Sonos speakers";
     license = lib.licenses.mit;
   };
diff --git a/pkgs/development/python-modules/somajo/default.nix b/pkgs/development/python-modules/somajo/default.nix
index f052da2bf7b..306737c4002 100644
--- a/pkgs/development/python-modules/somajo/default.nix
+++ b/pkgs/development/python-modules/somajo/default.nix
@@ -2,14 +2,14 @@
 
 buildPythonPackage rec {
   pname = "SoMaJo";
-  version = "2.0.4";
+  version = "2.0.5";
   disabled = !isPy3k;
 
   src = fetchFromGitHub {
     owner = "tsproisl";
     repo = pname;
     rev = "v${version}";
-    sha256 = "126jaslg8cfap2is3sy3v13xpl9drb80yc5lfsm1nw5s2xcxklqw";
+    sha256 = "01zvmqilnndh2b257z7bhcc7av5vhjm1g8gmdiiw15gcd2xfmqjs";
   };
 
   propagatedBuildInputs = [ regex ];
diff --git a/pkgs/development/python-modules/spacy/models.json b/pkgs/development/python-modules/spacy/models.json
index 4d7eff7fd02..1f1558b23c3 100644
--- a/pkgs/development/python-modules/spacy/models.json
+++ b/pkgs/development/python-modules/spacy/models.json
@@ -1,43 +1,43 @@
 [{
   "pname": "de_core_news_md",
-  "version": "2.2.0",
-  "sha256": "1n61jg0mxpl5mqpydclq9d2xds14v0blnb0plmnf7qhzzfhrmxq9",
+  "version": "2.2.5",
+  "sha256": "1jkc4r0f1916k5qpmpnwawsbnrbscq250q7b1llgxi70f2xyw9gk",
   "license": "cc-by-sa-40"
 },
 {
   "pname": "de_core_news_sm",
-  "version": "2.2.0",
-  "sha256": "06g2snm57k64il3plgn20l27a00dsr9dcxkyyqj6pq5ih91mfycb",
+  "version": "2.2.5",
+  "sha256": "10z30hirfwa692m0zp6wk60ccvqj84i5vjaiyyzd21innysb5y3g",
   "license": "cc-by-sa-40"
 },
 {
   "pname": "el_core_news_md",
-  "version": "2.2.0",
-  "sha256": "0xgyh5wj9mpbl2mdrk60i3m8wmgaxbf5qviy78qk8zb1jvnxzc2n",
+  "version": "2.2.5",
+  "sha256": "1jjmf6rf1hjgqswhpqq2l5w7s351k4kk93c7rr85iv2754f71h36",
   "license": "cc-by-sa-40"
 },
 {
   "pname": "el_core_news_sm",
-  "version": "2.2.0",
-  "sha256": "0qbf16g6s1xfm2clnmrwr3m3vgmvvsziyhy6jbm6axh8c0fy0j8p",
+  "version": "2.2.5",
+  "sha256": "00h55fc27d3jfm3knyidz7a4rasiz7qs4wfs3sl0ndq815yvag0l",
   "license": "cc-by-sa-40"
 },
 {
   "pname": "en_core_web_lg",
-  "version": "2.2.0",
-  "sha256": "1dxy43kf3vbz4jxc7jkr315hyzmi44v41lf09rax53f3s1jghsbh",
+  "version": "2.2.5",
+  "sha256": "1shd4gkshr4a92fhvrjhzn1abywnrcf548cv3dz8dhmi0wxa4klr",
   "license": "cc-by-sa-40"
 },
 {
   "pname": "en_core_web_md",
-  "version": "2.2.0",
-  "sha256": "13fvr8z7fjhyzc9mm55ah6c2snpj27lrrc0rzgyb0hcg7ghd6v58",
+  "version": "2.2.5",
+  "sha256": "1x32vl2a75ps2iyhysjvdygd366zs546s82yzqwj2m7jcsdszrxy",
   "license": "cc-by-sa-40"
 },
 {
   "pname": "en_core_web_sm",
-  "version": "2.2.0",
-  "sha256": "197afra99lhh84yi6wxvxdxibd1ikaybqfsq2nsmm7ahsw9s3kk5",
+  "version": "2.2.5",
+  "sha256": "1vna6zik7863hahxdgz0s80kbbfyw42h4c1k5jby9lkzr5jr1dk0",
   "license": "cc-by-sa-40"
 },
 {
@@ -48,44 +48,44 @@
 },
 {
   "pname": "es_core_news_md",
-  "version": "2.2.0",
-  "sha256": "0sdps0cdmsd2l3irsg63d874sba9vpn0san0n89rk8h3pa49dpab",
+  "version": "2.2.5",
+  "sha256": "0b50gd2mx1klr6ss0fsj58qmw2wpbawwv015pr9vq3j7jq805scl",
   "license": "cc-by-sa-40"
 },
 {
   "pname": "es_core_news_sm",
-  "version": "2.2.0",
-  "sha256": "073dgna796lk4rm7f25gyyl2ml7dfsb4azd4jkk03kxkcy6ypnag",
+  "version": "2.2.5",
+  "sha256": "19hrpxg1a5bvf9j9wlm03rkxfkgrldky7alsgl8bdwnwq3vpbgfi",
   "license": "cc-by-sa-40"
 },
 {
   "pname": "fr_core_news_md",
-  "version": "2.2.0",
-  "sha256": "0061hnw03189z3ya1gb6506bq8yxrg17v9cywg7zbk6izakxcasr",
+  "version": "2.2.5",
+  "sha256": "1y4dqbcwa7gg6z8q84n0j4my7gyia7a2z7pln71sqa78pin06r9b",
   "license": "cc-by-sa-40"
 },
 {
   "pname": "fr_core_news_sm",
-  "version": "2.2.0",
-  "sha256": "0kj31kx4q9mm7ms622ph2i6pkl1ifm8s5ng3f3khf9ia0vr31vbq",
+  "version": "2.2.5",
+  "sha256": "1q2kvznbylyz4frxy5rbvpm5jvm7bfin8g3dks0c1k9hhdymv35y",
   "license": "cc-by-sa-40"
 },
 {
   "pname": "it_core_news_sm",
-  "version": "2.2.0",
-  "sha256": "0gxmknd68kajak8jr443799bfd69pp5j0jnmcbnyx5abzyq6wkzx",
+  "version": "2.2.5",
+  "sha256": "02r3x308s5kn62xpa2cizxfw7cyjk48zm9i6r4vhs8kycmp9z0px",
   "license": "cc-by-sa-40"
 },
 {
   "pname": "lt_core_news_sm",
-  "version": "2.2.0",
-  "sha256": "1j63xnp96qavg8c960y83z752mmvp9qx92r458lydrg1ixmffx9r",
+  "version": "2.2.5",
+  "sha256": "0vy0cff1fw33srqyi93vj03rnzqr8f62p1hwi565b0sb8v3n4p08",
   "license": "cc-by-sa-40"
 },
 {
   "pname": "nb_core_news_sm",
-  "version": "2.2.0",
-  "sha256": "0s0wf3kxrhdzfkgrbxjc53hzin3w8v06iivazh6bpf6rhbiwzfr0",
+  "version": "2.2.5",
+  "sha256": "1kdn3qwlmmd52sjrvi97aiv7xp260bka009jjal79l3qrz4czrw1",
   "license": "mit"
 },
 {
@@ -96,8 +96,8 @@
 },
 {
   "pname": "pt_core_news_sm",
-  "version": "2.2.0",
-  "sha256": "1fi4wick1x96sj46idic1ad26l9zd2p5smi4v7mkry71xp7d9s13",
+  "version": "2.2.5",
+  "sha256": "02p617ybh6wqmq1scch9dgim44rhhj0k81sbw8nysv20pc6wb89a",
   "license": "cc-by-sa-40"
 },
 {
diff --git a/pkgs/development/python-modules/sphinxcontrib-openapi/default.nix b/pkgs/development/python-modules/sphinxcontrib-openapi/default.nix
index 58b24f0dd73..a60a36413ac 100644
--- a/pkgs/development/python-modules/sphinxcontrib-openapi/default.nix
+++ b/pkgs/development/python-modules/sphinxcontrib-openapi/default.nix
@@ -9,11 +9,11 @@
 
 buildPythonPackage rec {
   pname = "sphinxcontrib-openapi";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "2a5883456c0caba0dad90f07968c75a50d5fc425a3aa06d1c538472ddf8c7e22";
+    sha256 = "02pkzcmxikcfvkvcfsclnhymzl1lc84jz6vmdaslbgh4j5vlp5ym";
   };
 
   propagatedBuildInputs = [setuptools_scm pyyaml jsonschema sphinxcontrib_httpdomain];
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/ikalnytskyi/sphinxcontrib-openapi;
+    homepage = "https://github.com/ikalnytskyi/sphinxcontrib-openapi";
     description = "OpenAPI (fka Swagger) spec renderer for Sphinx";
     license = licenses.bsd0;
   };
diff --git a/pkgs/development/python-modules/spotipy/default.nix b/pkgs/development/python-modules/spotipy/default.nix
index e733c269cd0..74ab81c2f08 100644
--- a/pkgs/development/python-modules/spotipy/default.nix
+++ b/pkgs/development/python-modules/spotipy/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "spotipy";
-  version = "2.9.0";
+  version = "2.10.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "163z3j0sd9a7cc9pv9hcrh230gisvvi2fxabh1f6nzhfr8avrncr";
+    sha256 = "0s2f9yxhfkfipbb06965gfjq4lg0khp5vcykijrx6dzxyh20vggm";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/pkgs/development/python-modules/spyder-kernels/default.nix b/pkgs/development/python-modules/spyder-kernels/default.nix
index f4d57ce579e..1f9455c8087 100644
--- a/pkgs/development/python-modules/spyder-kernels/default.nix
+++ b/pkgs/development/python-modules/spyder-kernels/default.nix
@@ -3,11 +3,11 @@
 
 buildPythonPackage rec {
   pname = "spyder-kernels";
-  version = "1.8.1";
+  version = "1.9.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a782fc5961a9dd48d520ddc1c868b960d54b8edb1116c21fc2e3c347fe5a4474";
+    sha256 = "1sqjagabqccrc73a423smfjmiph7lfjzj26r6hn3j3vf3drm3rpj";
   };
 
   propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/spyder/default.nix b/pkgs/development/python-modules/spyder/default.nix
index 65fabc6c7bc..82c45f3cb64 100644
--- a/pkgs/development/python-modules/spyder/default.nix
+++ b/pkgs/development/python-modules/spyder/default.nix
@@ -1,17 +1,19 @@
-{ stdenv, buildPythonPackage, fetchPypi, makeDesktopItem, intervaltree, jedi, pycodestyle,
+{ stdenv, buildPythonPackage, fetchPypi, isPy27, makeDesktopItem, intervaltree, jedi, pycodestyle,
   psutil, pyflakes, rope, numpy, scipy, matplotlib, pylint, keyring, numpydoc,
   qtconsole, qtawesome, nbconvert, mccabe, pyopengl, cloudpickle, pygments,
   spyder-kernels, qtpy, pyzmq, chardet, qdarkstyle, watchdog, python-language-server
-, pyqtwebengine
+, pyqtwebengine, atomicwrites, pyxdg, diff-match-patch
 }:
 
 buildPythonPackage rec {
   pname = "spyder";
-  version = "4.0.1";
+  version = "4.1.2";
+
+  disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "4b279c16487d224368dd2213e1517185fa59fc528f539601fffb34ea97accb7b";
+    sha256 = "0qyisrs9xkzx4hbyin9nasvl10qk7jlxrmyasxycz4zwnvzfvxzf";
   };
 
   nativeBuildInputs = [ pyqtwebengine.wrapQtAppsHook ];
@@ -20,6 +22,7 @@ buildPythonPackage rec {
     intervaltree jedi pycodestyle psutil pyflakes rope numpy scipy matplotlib pylint keyring
     numpydoc qtconsole qtawesome nbconvert mccabe pyopengl cloudpickle spyder-kernels
     pygments qtpy pyzmq chardet pyqtwebengine qdarkstyle watchdog python-language-server
+    atomicwrites pyxdg diff-match-patch
   ];
 
   # There is no test for spyder
@@ -32,7 +35,7 @@ buildPythonPackage rec {
     comment = "Scientific Python Development Environment";
     desktopName = "Spyder";
     genericName = "Python IDE";
-    categories = "Application;Development;Editor;IDE;";
+    categories = "Application;Development;IDE;";
   };
 
   postPatch = ''
@@ -42,8 +45,12 @@ buildPythonPackage rec {
     substituteInPlace setup.py --replace "pyqt5<5.13" "pyqt5"
   '';
 
-  # Create desktop item
   postInstall = ''
+    # add Python libs to env so Spyder subprocesses
+    # created to run compute kernels don't fail with ImportErrors
+    wrapProgram $out/bin/spyder3 --prefix PYTHONPATH : "$PYTHONPATH"
+
+    # Create desktop item
     mkdir -p $out/share/icons
     cp spyder/images/spyder.svg $out/share/icons
     cp -r $desktopItem/share/applications/ $out/share
@@ -66,6 +73,5 @@ buildPythonPackage rec {
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ gebner ];
-    broken = true;
   };
 }
diff --git a/pkgs/development/python-modules/sqlmap/default.nix b/pkgs/development/python-modules/sqlmap/default.nix
index 1e35d4024eb..e6227e4ced3 100644
--- a/pkgs/development/python-modules/sqlmap/default.nix
+++ b/pkgs/development/python-modules/sqlmap/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "sqlmap";
-  version = "1.4.3";
+  version = "1.4.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0qp9j8c92zbkwlbv5ywrszil6kvlkkf3wkc4krh2vdsrwd9cnf2g";
+    sha256 = "0chnb421g4bsshbkx6d1xnhsda4250jsn8zyklg5p1vqyr12mhik";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/starlette/default.nix b/pkgs/development/python-modules/starlette/default.nix
index a6d93465ffc..cad0aa79705 100644
--- a/pkgs/development/python-modules/starlette/default.nix
+++ b/pkgs/development/python-modules/starlette/default.nix
@@ -26,14 +26,14 @@ buildPythonPackage rec {
   # https://github.com/tiangolo/fastapi/issues/683. Please update when
   # possible. FastAPI is currently Starlette's only dependent.
 
-  version = "0.12.9";
+  version = "0.13.2";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "encode";
     repo = pname;
     rev = version;
-    sha256 = "0w44s8ynzy8w8dgm755c8jina9i4dd87vqkcv7jc1kwkg384w9i5";
+    sha256 = "1ls8d121zyyhry5ji7gf7vjvhyqdpr4za3qx1llq48943fmaxxpq";
   };
 
   propagatedBuildInputs = [
@@ -59,7 +59,7 @@ buildPythonPackage rec {
   '';
 
   meta = with lib; {
-    homepage = https://www.starlette.io/;
+    homepage = "https://www.starlette.io/";
     description = "The little ASGI framework that shines";
     license = licenses.bsd3;
     maintainers = with maintainers; [ wd15 ];
diff --git a/pkgs/development/python-modules/stripe/default.nix b/pkgs/development/python-modules/stripe/default.nix
index 4acc694a572..ff520c5ffe3 100644
--- a/pkgs/development/python-modules/stripe/default.nix
+++ b/pkgs/development/python-modules/stripe/default.nix
@@ -2,7 +2,7 @@
 
 buildPythonPackage rec {
   pname = "stripe";
-  version = "2.43.0";
+  version = "2.44.0";
 
   # Tests require network connectivity and there's no easy way to disable
   # them. ~ C.
@@ -10,7 +10,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0jikvcapg2xp3w824wz0wn74mx91nl3vmd92a10il3gli2p4wcnp";
+    sha256 = "0aaaf8dp989im2n0cdmslq0ys4ia970yl1irhxiwwqarmh6fap5i";
   };
 
   propagatedBuildInputs = [ requests ];
diff --git a/pkgs/development/python-modules/subunit/default.nix b/pkgs/development/python-modules/subunit/default.nix
index eeef94e6c76..f4622689187 100644
--- a/pkgs/development/python-modules/subunit/default.nix
+++ b/pkgs/development/python-modules/subunit/default.nix
@@ -1,22 +1,33 @@
 { buildPythonPackage
-, pkgs
-, testtools
+# pkgs dependencies
+, check
+, cppunit
+, pkg-config
+, subunit
+
+# python dependencies
+, fixtures
+, hypothesis
+, pytest
 , testscenarios
+, testtools
 }:
 
 buildPythonPackage {
-  name = pkgs.subunit.name;
-  src = pkgs.subunit.src;
+  inherit (subunit) name src meta;
 
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ check cppunit ];
   propagatedBuildInputs = [ testtools ];
-  checkInputs = [ testscenarios ];
-  nativeBuildInputs = [ pkgs.pkgconfig ];
-  buildInputs = [ pkgs.check pkgs.cppunit ];
 
-  patchPhase = ''
-    sed -i 's/version=VERSION/version="${pkgs.subunit.version}"/' setup.py
+  checkInputs = [ testscenarios hypothesis fixtures pytest ];
+  # ignore tests which call shell code, or call methods which haven't been implemented
+  checkPhase = ''
+    pytest python/subunit \
+      --ignore=python/subunit/tests/test_{output_filter,test_protocol{,2}}.py
   '';
 
-  meta = pkgs.subunit.meta;
-
+  patchPhase = ''
+    sed -i 's/version=VERSION/version="${subunit.version}"/' setup.py
+  '';
 }
diff --git a/pkgs/development/python-modules/sybil/default.nix b/pkgs/development/python-modules/sybil/default.nix
index 8b1677a7b84..358c70d3425 100644
--- a/pkgs/development/python-modules/sybil/default.nix
+++ b/pkgs/development/python-modules/sybil/default.nix
@@ -1,31 +1,28 @@
-{ stdenv, buildPythonApplication, fetchPypi, fetchpatch
-, pytest, nose }:
+{ lib
+, buildPythonApplication
+, fetchPypi
+, pytest
+, nose
+}:
 
 buildPythonApplication rec {
-  pname   = "sybil";
-  version = "1.0.9";
+  pname = "sybil";
+  version = "1.3.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "41d2f1dba8fd1d8ead5e9b1220b590fab8b0d1ca01d43da08555b1fb08d4d8e8";
+    sha256 = "0x34mzxvxj1kkld7sz9n90pdcinxcan56jg6cnnwkv87v7s1vna6";
   };
 
-  patches = [
-    (fetchpatch {
-      url = https://github.com/cjw296/sybil/commit/6461d8156cfb68bd073ec613a5a516916e97e549.patch;
-      sha256 = "0aqny0i7l6g6d7vr025b90zz8wzszqdbmi05mp67dxw5xqjqvxj2";
-    })
-  ];
-
   checkInputs = [ pytest nose ];
 
   checkPhase = ''
     py.test tests
   '';
 
-  meta = with stdenv.lib; {
-    description = "Automated testing for the examples in your documentation.";
-    homepage    = https://github.com/cjw296/sybil/;
-    license     = licenses.mit;
+  meta = with lib; {
+    description = "Automated testing for the examples in your documentation";
+    homepage = "https://github.com/cjw296/sybil";
+    license = licenses.mit;
   };
 }
diff --git a/pkgs/development/python-modules/tbm-utils/default.nix b/pkgs/development/python-modules/tbm-utils/default.nix
index f0593ba1bcc..5c63121812a 100644
--- a/pkgs/development/python-modules/tbm-utils/default.nix
+++ b/pkgs/development/python-modules/tbm-utils/default.nix
@@ -10,28 +10,23 @@
 
 buildPythonPackage rec {
   pname = "tbm-utils";
-  version = "1.0.0";
+  version = "2.5.0";
+  disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "08fb86b5ab469bafdbef19751abb6dc1e08a3043c373ea915e1b6e20d023b529";
+    sha256 = "02bmra9f0p1irhbrklxk9nhkvgwkn8042hx7z6c00qlhac1wlba2";
   };
 
-  postPatch = ''
-    substituteInPlace setup.py --replace ",<19.3" ""
-  '';
+  propagatedBuildInputs = [ attrs pendulum pprintpp wrapt ];
 
   # No tests in archive.
   doCheck = false;
 
-  disabled = pythonOlder "3.6";
-
-  propagatedBuildInputs = [ attrs pendulum pprintpp wrapt ];
-
   meta = {
-    homepage = https://github.com/thebigmunch/tbm-utils;
-    license = with lib.licenses; [ mit ];
     description = "A commonly-used set of utilities";
+    homepage = "https://github.com/thebigmunch/tbm-utils";
+    license = with lib.licenses; [ mit ];
   };
 
 }
diff --git a/pkgs/development/python-modules/tensorflow-estimator/1_15_1.nix b/pkgs/development/python-modules/tensorflow-estimator/1/default.nix
index 39c667357c8..3e3d50bc6f4 100644
--- a/pkgs/development/python-modules/tensorflow-estimator/1_15_1.nix
+++ b/pkgs/development/python-modules/tensorflow-estimator/1/default.nix
@@ -6,6 +6,9 @@
 
 buildPythonPackage rec {
   pname = "tensorflow-estimator";
+  # This is effectively 1.15.0. Upstream tagged 1.15.0 by mistake before
+  # actually updating the version in setup.py, which is why this tag is called
+  # 1.15.1.
   version = "1.15.1";
   format = "wheel";
 
diff --git a/pkgs/development/python-modules/tensorflow-estimator/default.nix b/pkgs/development/python-modules/tensorflow-estimator/2/default.nix
index 47ce0f83b02..47ce0f83b02 100644
--- a/pkgs/development/python-modules/tensorflow-estimator/default.nix
+++ b/pkgs/development/python-modules/tensorflow-estimator/2/default.nix
diff --git a/pkgs/development/python-modules/tensorflow-probability/default.nix b/pkgs/development/python-modules/tensorflow-probability/default.nix
index 99a3a978a4e..b585ab4f81b 100644
--- a/pkgs/development/python-modules/tensorflow-probability/default.nix
+++ b/pkgs/development/python-modules/tensorflow-probability/default.nix
@@ -42,7 +42,7 @@ let
     bazelTarget = ":pip_pkg";
 
     fetchAttrs = {
-      sha256 = "0135nxxvkmjzpd80r1g9fdkk9h62g0xlvp32g5zgk0hkma5kq0bx";
+      sha256 = "0sjjj9z1dhilhpc8pq4154czrb79z9cm044jvn75kxcjv6v5l2m5";
     };
 
     buildAttrs = {
diff --git a/pkgs/development/python-modules/tensorflow-tensorboard/1/default.nix b/pkgs/development/python-modules/tensorflow-tensorboard/1/default.nix
new file mode 100644
index 00000000000..e0108aed5ef
--- /dev/null
+++ b/pkgs/development/python-modules/tensorflow-tensorboard/1/default.nix
@@ -0,0 +1,66 @@
+{ lib, fetchPypi, buildPythonPackage, isPy3k
+, numpy
+, wheel
+, werkzeug
+, protobuf
+, grpcio
+, markdown
+, futures
+, absl-py
+}:
+
+# tensorflow/tensorboard is built from a downloaded wheel, because
+# https://github.com/tensorflow/tensorboard/issues/719 blocks
+# buildBazelPackage.
+
+buildPythonPackage rec {
+  pname = "tensorflow-tensorboard";
+  version = "1.15.0";
+  format = "wheel";
+
+  src = fetchPypi ({
+    pname = "tensorboard";
+    inherit version;
+    format = "wheel";
+  } // (if isPy3k then {
+    python = "py3";
+    sha256 = "1g62i3nrgp8q9wfsyqqjkkfnsz7x2k018c26kdh527h1yrjjrbac";
+  } else {
+    python = "py2";
+    sha256 = "0l3zc8j2sh7h1z4qpy8kfvclv3kzndri55p10i42q6xahs9phav1";
+  }));
+
+  propagatedBuildInputs = [
+    numpy
+    werkzeug
+    protobuf
+    markdown
+    grpcio
+    absl-py
+    # not declared in install_requires, but used at runtime
+    # https://github.com/NixOS/nixpkgs/issues/73840
+    wheel
+  ] ++ lib.optional (!isPy3k) futures;
+
+  # in the absence of a real test suite, run cli and imports
+  checkPhase = ''
+    $out/bin/tensorboard --help > /dev/null
+  '';
+
+  pythonImportsCheck = [
+    "tensorboard"
+    "tensorboard.backend"
+    "tensorboard.compat"
+    "tensorboard.data"
+    "tensorboard.plugins"
+    "tensorboard.summary"
+    "tensorboard.util"
+  ];
+
+  meta = with lib; {
+    description = "TensorFlow's Visualization Toolkit";
+    homepage = http://tensorflow.org;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ abbradar ];
+  };
+}
diff --git a/pkgs/development/python-modules/tensorflow-tensorboard/default.nix b/pkgs/development/python-modules/tensorflow-tensorboard/2/default.nix
index 202b167c7e6..202b167c7e6 100644
--- a/pkgs/development/python-modules/tensorflow-tensorboard/default.nix
+++ b/pkgs/development/python-modules/tensorflow-tensorboard/2/default.nix
diff --git a/pkgs/development/python-modules/tensorflow/1/bin.nix b/pkgs/development/python-modules/tensorflow/1/bin.nix
new file mode 100644
index 00000000000..05d59f9ed0a
--- /dev/null
+++ b/pkgs/development/python-modules/tensorflow/1/bin.nix
@@ -0,0 +1,121 @@
+{ stdenv
+, lib
+, fetchurl
+, buildPythonPackage
+, isPy3k, pythonOlder, isPy38
+, astor
+, gast
+, google-pasta
+, wrapt
+, numpy
+, six
+, termcolor
+, protobuf
+, absl-py
+, grpcio
+, mock
+, backports_weakref
+, tensorflow-estimator_1
+, tensorflow-tensorboard
+, cudaSupport ? false
+, cudatoolkit ? null
+, cudnn ? null
+, nvidia_x11 ? null
+, zlib
+, python
+, symlinkJoin
+, keras-applications
+, keras-preprocessing
+, addOpenGLRunpath
+}:
+
+# We keep this binary build for two reasons:
+# - the source build doesn't work on Darwin.
+# - the source build is currently brittle and not easy to maintain
+
+assert cudaSupport -> cudatoolkit != null
+                   && cudnn != null
+                   && nvidia_x11 != null;
+
+# unsupported combination
+assert ! (stdenv.isDarwin && cudaSupport);
+
+let
+  packages = import ./binary-hashes.nix;
+
+  variant = if cudaSupport then "-gpu" else "";
+  pname = "tensorflow${variant}";
+
+in buildPythonPackage {
+  inherit pname;
+  inherit (packages) version;
+  format = "wheel";
+
+  disabled = isPy38;
+
+  src = let
+    pyVerNoDot = lib.strings.stringAsChars (x: if x == "." then "" else x) python.pythonVersion;
+    pyver = if stdenv.isDarwin then builtins.substring 0 1 pyVerNoDot else pyVerNoDot;
+    platform = if stdenv.isDarwin then "mac" else "linux";
+    unit = if cudaSupport then "gpu" else "cpu";
+    key = "${platform}_py_${pyver}_${unit}";
+  in fetchurl packages.${key};
+
+  propagatedBuildInputs = [
+    protobuf
+    numpy
+    termcolor
+    grpcio
+    six
+    astor
+    absl-py
+    gast
+    google-pasta
+    wrapt
+    tensorflow-estimator_1
+    tensorflow-tensorboard
+    keras-applications
+    keras-preprocessing
+  ] ++ lib.optional (!isPy3k) mock
+    ++ lib.optionals (pythonOlder "3.4") [ backports_weakref ];
+
+  nativeBuildInputs = lib.optional cudaSupport addOpenGLRunpath;
+
+  # Upstream has a pip hack that results in bin/tensorboard being in both tensorflow
+  # and the propageted input tensorflow-tensorboard which causes environment collisions.
+  # another possibility would be to have tensorboard only in the buildInputs
+  # https://github.com/tensorflow/tensorflow/blob/v1.7.1/tensorflow/tools/pip_package/setup.py#L79
+  postInstall = ''
+    rm $out/bin/tensorboard
+  '';
+
+  # Note that we need to run *after* the fixup phase because the
+  # libraries are loaded at runtime. If we run in preFixup then
+  # patchelf --shrink-rpath will remove the cuda libraries.
+  postFixup = let
+    rpath = stdenv.lib.makeLibraryPath
+      ([ stdenv.cc.cc.lib zlib ] ++ lib.optionals cudaSupport [ cudatoolkit.out cudatoolkit.lib cudnn nvidia_x11 ]);
+  in
+  lib.optionalString stdenv.isLinux ''
+    rrPath="$out/${python.sitePackages}/tensorflow/:$out/${python.sitePackages}/tensorflow/contrib/tensor_forest/:${rpath}"
+    internalLibPath="$out/${python.sitePackages}/tensorflow/python/_pywrap_tensorflow_internal.so"
+    find $out -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
+      patchelf --set-rpath "$rrPath" "$lib"
+      ${lib.optionalString cudaSupport ''
+        addOpenGLRunpath "$lib"
+      ''}
+    done
+  '';
+
+
+  meta = with stdenv.lib; {
+    description = "Computation using data flow graphs for scalable machine learning";
+    homepage = http://tensorflow.org;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ jyp abbradar ];
+    platforms = [ "x86_64-linux" "x86_64-darwin" ];
+    # Python 2.7 build uses different string encoding.
+    # See https://github.com/NixOS/nixpkgs/pull/37044#issuecomment-373452253
+    broken = stdenv.isDarwin && !isPy3k;
+  };
+}
diff --git a/pkgs/development/python-modules/tensorflow/1/binary-hashes.nix b/pkgs/development/python-modules/tensorflow/1/binary-hashes.nix
new file mode 100644
index 00000000000..fa4809dc3f1
--- /dev/null
+++ b/pkgs/development/python-modules/tensorflow/1/binary-hashes.nix
@@ -0,0 +1,43 @@
+{
+version = "1.14.0";
+linux_py_27_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.14.0-cp27-none-linux_x86_64.whl";
+  sha256 = "0yywdrfk97dh1bxhibspg0raz70fx9lcczj6xlimqy4xb60clx7k";
+};
+linux_py_35_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.14.0-cp35-cp35m-linux_x86_64.whl";
+  sha256 = "1xvyb6xcrjhlwvrmrhn5vs9xy7g98smqmpv4i3hhpry4qyasphhj";
+};
+linux_py_36_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.14.0-cp36-cp36m-linux_x86_64.whl";
+  sha256 = "1psd9vyxz9f39dwj77nvrg373sxv3p5vdp9fnz81dpsm0b0mwl44";
+};
+linux_py_37_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.14.0-cp37-cp37m-linux_x86_64.whl";
+  sha256 = "0bg2sb1n2ag27r7ww695kg5hb0mjrw4kc5893krmixx2j71860c5";
+};
+linux_py_27_gpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.14.0-cp27-none-linux_x86_64.whl";
+  sha256 = "0y1x91gayg6pjddgl8ndcm63wfzhyv4s5khgl7ffzsgni1ivaqw5";
+};
+linux_py_35_gpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.14.0-cp35-cp35m-linux_x86_64.whl";
+  sha256 = "03piggpbz1jx8m2b95spq3jrdff4w6xx63ji07am7hyw2nsgx3mx";
+};
+linux_py_36_gpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.14.0-cp36-cp36m-linux_x86_64.whl";
+  sha256 = "0ypkp8cfhharsyyikb1qgf44cfm6284km9xswzvzymjzz75vg3gd";
+};
+linux_py_37_gpu = {
+  url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.14.0-cp37-cp37m-linux_x86_64.whl";
+  sha256 = "0virp8nn2ysx4855hq29kas6fm6b3dsiybwzdxy9nnb9n2d8qlm2";
+};
+mac_py_2_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.14.0-py2-none-any.whl";
+  sha256 = "14f86k3pgq7z6i4s4im55zpp38f0drnm7xlclavsgcc0nxnj3z26";
+};
+mac_py_3_cpu = {
+  url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.14.0-py3-none-any.whl";
+  sha256 = "0f3swpcjfgqhj6h5wnx8snc0xjkx4hnkqx83fmlrwpncs8c131d3";
+};
+}
diff --git a/pkgs/development/python-modules/tensorflow/default.nix b/pkgs/development/python-modules/tensorflow/1/default.nix
index 7c80452b20f..1b7c338d2a1 100644
--- a/pkgs/development/python-modules/tensorflow/default.nix
+++ b/pkgs/development/python-modules/tensorflow/1/default.nix
@@ -1,13 +1,13 @@
-{ stdenv, pkgs, bazel_0, buildBazelPackage, lib, fetchFromGitHub, fetchpatch, symlinkJoin
+{ stdenv, pkgs, bazel_0_26, buildBazelPackage, lib, fetchFromGitHub, fetchpatch, symlinkJoin
 , addOpenGLRunpath
 # Python deps
 , buildPythonPackage, isPy3k, isPy27, pythonOlder, pythonAtLeast, python
 # Python libraries
-, numpy, tensorflow-tensorboard, backports_weakref, mock, enum34, absl-py
+, numpy, tensorflow-tensorboard_1, backports_weakref, mock, enum34, absl-py
 , future, setuptools, wheel, keras-preprocessing, keras-applications, google-pasta
 , functools32
 , opt-einsum
-, termcolor, grpcio, six, wrapt, protobuf, tensorflow-estimator_1_15_1
+, termcolor, grpcio, six, wrapt, protobuf, tensorflow-estimator_1
 # Common deps
 , git, swig, which, binutils, glibcLocales, cython
 # Common libraries
@@ -18,6 +18,7 @@
 # it would also make the default tensorflow package unfree. See
 # https://groups.google.com/a/tensorflow.org/forum/#!topic/developers/iRCt5m4qUz0
 , cudaSupport ? false, nvidia_x11 ? null, cudatoolkit ? null, cudnn ? null, nccl ? null
+, mklSupport ? false, mkl ? null
 # XLA without CUDA is broken
 , xlaSupport ? cudaSupport
 # Default from ./configure script
@@ -36,6 +37,8 @@ assert cudaSupport -> nvidia_x11 != null
 # unsupported combination
 assert ! (stdenv.isDarwin && cudaSupport);
 
+assert mklSupport -> mkl != null;
+
 let
   withTensorboard = pythonOlder "3.6";
 
@@ -94,7 +97,7 @@ let
 
   bazel-build = buildBazelPackage {
     name = "${pname}-${version}";
-    bazel = bazel_0;
+    bazel = bazel_0_26;
 
     src = fetchFromGitHub {
       owner = "tensorflow";
@@ -105,9 +108,9 @@ let
 
     patches = [
       # Work around https://github.com/tensorflow/tensorflow/issues/24752
-      ./no-saved-proto.patch
+      ../no-saved-proto.patch
       # Fixes for NixOS jsoncpp
-      ./system-jsoncpp.patch
+      ../system-jsoncpp.patch
 
       # https://github.com/tensorflow/tensorflow/pull/29673
       (fetchpatch {
@@ -121,7 +124,6 @@ let
         sha256 = "1n9ypbrx36fc1kc9cz5b3p9qhg15xxhq4nz6ap3hwqba535nakfz";
       })
 
-
       (fetchpatch {
         # be compatible with gast >0.2 instead of only gast 0.2.2
         name = "gast-update.patch";
@@ -132,7 +134,7 @@ let
 
       # cuda 10.2 does not have "-bin2c-path" option anymore
       # https://github.com/tensorflow/tensorflow/issues/34429
-      ./cuda-10.2-no-bin2c-path.patch
+      ../cuda-10.2-no-bin2c-path.patch
     ];
 
     # On update, it can be useful to steal the changes from gentoo
@@ -168,6 +170,8 @@ let
       cudatoolkit
       cudnn
       nvidia_x11
+    ] ++ lib.optionals mklSupport [
+      mkl
     ] ++ lib.optionals stdenv.isDarwin [
       Foundation
       Security
@@ -285,7 +289,8 @@ let
     ];
     bazelBuildFlags = [
       "--config=opt" # optimize using the flags set in the configure phase
-    ];
+    ]
+    ++ lib.optionals (mklSupport) [ "--config=mkl" ];
 
     bazelTarget = "//tensorflow/tools/pip_package:build_pip_package //tensorflow/tools/lib_package:libtensorflow";
 
@@ -373,7 +378,7 @@ in buildPythonPackage {
     numpy
     six
     protobuf
-    tensorflow-estimator_1_15_1
+    tensorflow-estimator_1
     termcolor
     wrapt
     grpcio
@@ -385,7 +390,7 @@ in buildPythonPackage {
   ] ++ lib.optionals (pythonOlder "3.4") [
     backports_weakref enum34
   ] ++ lib.optionals withTensorboard [
-    tensorflow-tensorboard
+    tensorflow-tensorboard_1
   ];
 
   nativeBuildInputs = lib.optional cudaSupport addOpenGLRunpath;
diff --git a/pkgs/development/python-modules/tensorflow/lift-gast-restriction.patch b/pkgs/development/python-modules/tensorflow/1/lift-gast-restriction.patch
index 30861d92341..30861d92341 100644
--- a/pkgs/development/python-modules/tensorflow/lift-gast-restriction.patch
+++ b/pkgs/development/python-modules/tensorflow/1/lift-gast-restriction.patch
diff --git a/pkgs/development/python-modules/tensorflow/1/prefetcher.sh b/pkgs/development/python-modules/tensorflow/1/prefetcher.sh
new file mode 100755
index 00000000000..d590fb0f173
--- /dev/null
+++ b/pkgs/development/python-modules/tensorflow/1/prefetcher.sh
@@ -0,0 +1,33 @@
+#!/usr/bin/env bash
+
+version=1.14.0
+hashfile=binary-hashes.nix
+rm -f $hashfile
+echo "{" >> $hashfile
+echo "version = \"$version\";" >> $hashfile
+for sys in "linux" "mac"; do
+    for tfpref in "cpu/tensorflow" "gpu/tensorflow_gpu"; do
+        for pykind in "py2-none-any" "py3-none-any" "cp27-none-linux_x86_64" "cp35-cp35m-linux_x86_64" "cp36-cp36m-linux_x86_64" "cp37-cp37m-linux_x86_64"; do
+            if [ $sys == "mac" ]; then
+               [[ $pykind =~ py.* ]] && [[ $tfpref =~ cpu.* ]]
+               result=$?
+               pyver=${pykind:2:1}
+               flavour=cpu
+            else
+               [[ $pykind =~ .*linux.* ]]
+               result=$?
+               pyver=${pykind:2:2}
+               flavour=${tfpref:0:3}
+            fi
+            if [ $result == 0 ]; then
+                url=https://storage.googleapis.com/tensorflow/$sys/$tfpref-$version-$pykind.whl
+                hash=$(nix-prefetch-url $url)
+                echo "${sys}_py_${pyver}_${flavour} = {" >> $hashfile
+                echo "  url = \"$url\";" >> $hashfile
+                echo "  sha256 = \"$hash\";" >> $hashfile
+                echo "};" >> $hashfile
+            fi
+        done
+    done
+done
+echo "}" >> $hashfile
diff --git a/pkgs/development/python-modules/tensorflow/bin.nix b/pkgs/development/python-modules/tensorflow/2/bin.nix
index e81dc2dbd00..95a7b2a3748 100644
--- a/pkgs/development/python-modules/tensorflow/bin.nix
+++ b/pkgs/development/python-modules/tensorflow/2/bin.nix
@@ -18,7 +18,7 @@
 , wheel
 , opt-einsum
 , backports_weakref
-, tensorflow-estimator
+, tensorflow-estimator_2
 , tensorflow-tensorboard
 , cudaSupport ? false
 , cudatoolkit ? null
@@ -76,7 +76,7 @@ in buildPythonPackage {
     opt-einsum
     google-pasta
     wrapt
-    tensorflow-estimator
+    tensorflow-estimator_2
     tensorflow-tensorboard
     keras-applications
     keras-preprocessing
diff --git a/pkgs/development/python-modules/tensorflow/binary-hashes.nix b/pkgs/development/python-modules/tensorflow/2/binary-hashes.nix
index 90848e93273..90848e93273 100644
--- a/pkgs/development/python-modules/tensorflow/binary-hashes.nix
+++ b/pkgs/development/python-modules/tensorflow/2/binary-hashes.nix
diff --git a/pkgs/development/python-modules/tensorflow/2/default.nix b/pkgs/development/python-modules/tensorflow/2/default.nix
new file mode 100644
index 00000000000..2867308f9c4
--- /dev/null
+++ b/pkgs/development/python-modules/tensorflow/2/default.nix
@@ -0,0 +1,427 @@
+{ stdenv, pkgs, bazel_0_29, buildBazelPackage, lib, fetchFromGitHub, fetchpatch, symlinkJoin
+, addOpenGLRunpath
+# Python deps
+, buildPythonPackage, isPy3k, isPy27, pythonOlder, pythonAtLeast, python
+# Python libraries
+, numpy, tensorflow-tensorboard_2, backports_weakref, mock, enum34, absl-py
+, future, setuptools, wheel, keras-preprocessing, keras-applications, google-pasta
+, functools32
+, opt-einsum
+, termcolor, grpcio, six, wrapt, protobuf, tensorflow-estimator_2
+# Common deps
+, git, swig, which, binutils, glibcLocales, cython
+# Common libraries
+, jemalloc, openmpi, astor, gast, grpc, sqlite, openssl, jsoncpp, re2
+, curl, snappy, flatbuffers, icu, double-conversion, libpng, libjpeg, giflib
+# Upsteam by default includes cuda support since tensorflow 1.15. We could do
+# that in nix as well. It would make some things easier and less confusing, but
+# it would also make the default tensorflow package unfree. See
+# https://groups.google.com/a/tensorflow.org/forum/#!topic/developers/iRCt5m4qUz0
+, cudaSupport ? false, nvidia_x11 ? null, cudatoolkit ? null, cudnn ? null, nccl ? null
+, mklSupport ? false, mkl ? null
+# XLA without CUDA is broken
+, xlaSupport ? cudaSupport
+# Default from ./configure script
+, cudaCapabilities ? [ "3.5" "5.2" ]
+, sse42Support ? builtins.elem (stdenv.hostPlatform.platform.gcc.arch or "default") ["westmere" "sandybridge" "ivybridge" "haswell" "broadwell" "skylake" "skylake-avx512"]
+, avx2Support  ? builtins.elem (stdenv.hostPlatform.platform.gcc.arch or "default") [                                     "haswell" "broadwell" "skylake" "skylake-avx512"]
+, fmaSupport   ? builtins.elem (stdenv.hostPlatform.platform.gcc.arch or "default") [                                     "haswell" "broadwell" "skylake" "skylake-avx512"]
+# Darwin deps
+, Foundation, Security
+}:
+
+assert cudaSupport -> nvidia_x11 != null
+                   && cudatoolkit != null
+                   && cudnn != null;
+
+# unsupported combination
+assert ! (stdenv.isDarwin && cudaSupport);
+
+assert mklSupport -> mkl != null;
+
+let
+  withTensorboard = pythonOlder "3.6";
+
+  cudatoolkit_joined = symlinkJoin {
+    name = "${cudatoolkit.name}-merged";
+    paths = [
+      cudatoolkit.lib
+      cudatoolkit.out
+      # for some reason some of the required libs are in the targets/x86_64-linux
+      # directory; not sure why but this works around it
+      "${cudatoolkit}/targets/${stdenv.system}"
+    ];
+  };
+
+  cudatoolkit_cc_joined = symlinkJoin {
+    name = "${cudatoolkit.cc.name}-merged";
+    paths = [
+      cudatoolkit.cc
+      binutils.bintools # for ar, dwp, nm, objcopy, objdump, strip
+    ];
+  };
+
+  # Needed for _some_ system libraries, grep INCLUDEDIR.
+  includes_joined = symlinkJoin {
+    name = "tensorflow-deps-merged";
+    paths = [
+      pkgs.protobuf
+      jsoncpp
+    ];
+  };
+
+  tfFeature = x: if x then "1" else "0";
+
+  version = "2.1.0";
+  variant = if cudaSupport then "-gpu" else "";
+  pname = "tensorflow${variant}";
+
+  pythonEnv = python.withPackages (_:
+    [ # python deps needed during wheel build time (not runtime, see the buildPythonPackage part for that)
+      numpy
+      keras-preprocessing
+      protobuf
+      wrapt
+      gast
+      astor
+      absl-py
+      termcolor
+      keras-applications
+      setuptools
+      wheel
+  ] ++ lib.optionals (!isPy3k)
+  [ future
+    functools32
+    mock
+  ]);
+
+  bazel-build = buildBazelPackage {
+    name = "${pname}-${version}";
+    bazel = bazel_0_29;
+
+    src = fetchFromGitHub {
+      owner = "tensorflow";
+      repo = "tensorflow";
+      rev = "v${version}";
+      sha256 = "1g79xi8yl4sjia8ysk9b7xfzrz83zy28v5dlb2wzmcf0k5pmz60p";
+    };
+
+    patches = [
+      # Work around https://github.com/tensorflow/tensorflow/issues/24752
+      ../no-saved-proto.patch
+      # Fixes for NixOS jsoncpp
+      ../system-jsoncpp.patch
+
+      (fetchpatch {
+        name = "backport-pr-18950.patch";
+        url = "https://github.com/tensorflow/tensorflow/commit/73640aaec2ab0234d9fff138e3c9833695570c0a.patch";
+        sha256 = "1n9ypbrx36fc1kc9cz5b3p9qhg15xxhq4nz6ap3hwqba535nakfz";
+      })
+
+      (fetchpatch {
+        # Don't try to fetch things that don't exist
+        name = "prune-missing-deps.patch";
+        url = "https://github.com/tensorflow/tensorflow/commit/b39b1ed24b4814db27d2f748dc85c10730ae851d.patch";
+        sha256 = "1skysz53nancvw1slij6s7flar2kv3gngnsq60ff4lap88kx5s6c";
+        excludes = [ "tensorflow/cc/saved_model/BUILD" ];
+      })
+
+      ./lift-gast-restriction.patch
+
+      # cuda 10.2 does not have "-bin2c-path" option anymore
+      # https://github.com/tensorflow/tensorflow/issues/34429
+      ../cuda-10.2-no-bin2c-path.patch
+    ];
+
+    # On update, it can be useful to steal the changes from gentoo
+    # https://gitweb.gentoo.org/repo/gentoo.git/tree/sci-libs/tensorflow
+
+    nativeBuildInputs = [
+      swig which pythonEnv
+    ] ++ lib.optional cudaSupport addOpenGLRunpath;
+
+    buildInputs = [
+      jemalloc
+      openmpi
+      glibcLocales
+      git
+
+      # libs taken from system through the TF_SYS_LIBS mechanism
+      # grpc
+      sqlite
+      openssl
+      jsoncpp
+      pkgs.protobuf
+      curl
+      snappy
+      flatbuffers
+      icu
+      double-conversion
+      libpng
+      libjpeg
+      giflib
+      re2
+      pkgs.lmdb
+    ] ++ lib.optionals cudaSupport [
+      cudatoolkit
+      cudnn
+      nvidia_x11
+    ] ++ lib.optionals mklSupport [
+      mkl
+    ] ++ lib.optionals stdenv.isDarwin [
+      Foundation
+      Security
+    ];
+
+    # arbitrarily set to the current latest bazel version, overly careful
+    TF_IGNORE_MAX_BAZEL_VERSION = true;
+
+    # Take as many libraries from the system as possible. Keep in sync with
+    # list of valid syslibs in
+    # https://github.com/tensorflow/tensorflow/blob/master/third_party/systemlibs/syslibs_configure.bzl
+    TF_SYSTEM_LIBS = lib.concatStringsSep "," [
+      "absl_py"
+      "astor_archive"
+      "boringssl"
+      # Not packaged in nixpkgs
+      # "com_github_googleapis_googleapis"
+      # "com_github_googlecloudplatform_google_cloud_cpp"
+      "com_google_protobuf"
+      "com_googlesource_code_re2"
+      "curl"
+      "cython"
+      "double_conversion"
+      "flatbuffers"
+      "gast_archive"
+      # Lots of errors, requires an older version
+      # "grpc"
+      "hwloc"
+      "icu"
+      "jpeg"
+      "jsoncpp_git"
+      "keras_applications_archive"
+      "lmdb"
+      "nasm"
+      # "nsync" # not packaged in nixpkgs
+      "opt_einsum_archive"
+      "org_sqlite"
+      "pasta"
+      "pcre"
+      "six_archive"
+      "snappy"
+      "swig"
+      "termcolor_archive"
+      "wrapt"
+      "zlib_archive"
+    ];
+
+    INCLUDEDIR = "${includes_joined}/include";
+
+    PYTHON_BIN_PATH = pythonEnv.interpreter;
+
+    TF_NEED_GCP = true;
+    TF_NEED_HDFS = true;
+    TF_ENABLE_XLA = tfFeature xlaSupport;
+
+    CC_OPT_FLAGS = " ";
+
+    # https://github.com/tensorflow/tensorflow/issues/14454
+    TF_NEED_MPI = tfFeature cudaSupport;
+
+    TF_NEED_CUDA = tfFeature cudaSupport;
+    TF_CUDA_PATHS = lib.optionalString cudaSupport "${cudatoolkit_joined},${cudnn},${nccl}";
+    GCC_HOST_COMPILER_PREFIX = lib.optionalString cudaSupport "${cudatoolkit_cc_joined}/bin";
+    GCC_HOST_COMPILER_PATH = lib.optionalString cudaSupport "${cudatoolkit_cc_joined}/bin/gcc";
+    TF_CUDA_COMPUTE_CAPABILITIES = lib.concatStringsSep "," cudaCapabilities;
+
+    postPatch = ''
+      # https://github.com/tensorflow/tensorflow/issues/20919
+      sed -i '/androidndk/d' tensorflow/lite/kernels/internal/BUILD
+
+      # Tensorboard pulls in a bunch of dependencies, some of which may
+      # include security vulnerabilities. So we make it optional.
+      # https://github.com/tensorflow/tensorflow/issues/20280#issuecomment-400230560
+      sed -i '/tensorboard >=/d' tensorflow/tools/pip_package/setup.py
+    '';
+
+    preConfigure = let
+      opt_flags = []
+        ++ lib.optionals sse42Support ["-msse4.2"]
+        ++ lib.optionals avx2Support ["-mavx2"]
+        ++ lib.optionals fmaSupport ["-mfma"];
+    in ''
+      patchShebangs configure
+
+      # dummy ldconfig
+      mkdir dummy-ldconfig
+      echo "#!${stdenv.shell}" > dummy-ldconfig/ldconfig
+      chmod +x dummy-ldconfig/ldconfig
+      export PATH="$PWD/dummy-ldconfig:$PATH"
+
+      export PYTHON_LIB_PATH="$NIX_BUILD_TOP/site-packages"
+      export CC_OPT_FLAGS="${lib.concatStringsSep " " opt_flags}"
+      mkdir -p "$PYTHON_LIB_PATH"
+
+      # To avoid mixing Python 2 and Python 3
+      unset PYTHONPATH
+    '';
+
+    configurePhase = ''
+      runHook preConfigure
+      ./configure
+      runHook postConfigure
+    '';
+
+    # FIXME: Tensorflow uses dlopen() for CUDA libraries.
+    NIX_LDFLAGS = lib.optionalString cudaSupport "-lcudart -lcublas -lcufft -lcurand -lcusolver -lcusparse -lcudnn";
+
+    hardeningDisable = [ "format" ];
+
+    bazelFlags = [
+      # temporary fixes to make the build work with bazel 0.27
+      "--incompatible_no_support_tools_in_action_inputs=false"
+    ];
+    bazelBuildFlags = [
+      "--config=opt" # optimize using the flags set in the configure phase
+    ]
+    ++ lib.optionals (mklSupport) [ "--config=mkl" ];
+
+    bazelTarget = "//tensorflow/tools/pip_package:build_pip_package //tensorflow/tools/lib_package:libtensorflow";
+
+    fetchAttrs = {
+      # So that checksums don't depend on these.
+      TF_SYSTEM_LIBS = null;
+
+      # cudaSupport causes fetch of ncclArchive, resulting in different hashes
+      sha256 = if cudaSupport then
+        "0hg3ysy644950a34j28hrb317cz8gcbb9n84d36wdailvnlshghb"
+      else
+        "1gy4pz9kn30wb9c4a9584fibb88c3h38y3dqa99yw1lbsbyyi28c";
+    };
+
+    buildAttrs = {
+      outputs = [ "out" "python" ];
+
+      preBuild = ''
+        patchShebangs .
+      '';
+
+      installPhase = ''
+        mkdir -p "$out"
+        tar -xf bazel-bin/tensorflow/tools/lib_package/libtensorflow.tar.gz -C "$out"
+        # Write pkgconfig file.
+        mkdir "$out/lib/pkgconfig"
+        cat > "$out/lib/pkgconfig/tensorflow.pc" << EOF
+        Name: TensorFlow
+        Version: ${version}
+        Description: Library for computation using data flow graphs for scalable machine learning
+        Requires:
+        Libs: -L$out/lib -ltensorflow
+        Cflags: -I$out/include/tensorflow
+        EOF
+
+        # build the source code, then copy it to $python (build_pip_package
+        # actually builds a symlink farm so we must dereference them).
+        bazel-bin/tensorflow/tools/pip_package/build_pip_package --src "$PWD/dist"
+        cp -Lr "$PWD/dist" "$python"
+      '';
+
+      postFixup = lib.optionalString cudaSupport ''
+        find $out -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
+          addOpenGLRunpath "$lib"
+        done
+      '';
+    };
+
+    meta = with stdenv.lib; {
+      description = "Computation using data flow graphs for scalable machine learning";
+      homepage = http://tensorflow.org;
+      license = licenses.asl20;
+      maintainers = with maintainers; [ jyp abbradar ];
+      platforms = with platforms; linux ++ darwin;
+      # The py2 build fails due to some issue importing protobuf. Possibly related to the fix in
+      # https://github.com/akesandgren/easybuild-easyblocks/commit/1f2e517ddfd1b00a342c6abb55aef3fd93671a2b
+      broken = !(xlaSupport -> cudaSupport) || !isPy3k;
+    };
+  };
+
+in buildPythonPackage {
+  inherit version pname;
+  disabled = isPy27 || (pythonAtLeast "3.8");
+
+  src = bazel-build.python;
+
+  # Upstream has a pip hack that results in bin/tensorboard being in both tensorflow
+  # and the propagated input tensorflow-tensorboard, which causes environment collisions.
+  # Another possibility would be to have tensorboard only in the buildInputs
+  # https://github.com/tensorflow/tensorflow/blob/v1.7.1/tensorflow/tools/pip_package/setup.py#L79
+  postInstall = ''
+    rm $out/bin/tensorboard
+  '';
+
+  setupPyGlobalFlags = [ "--project_name ${pname}" ];
+
+  # tensorflow/tools/pip_package/setup.py
+  propagatedBuildInputs = [
+    absl-py
+    astor
+    gast
+    google-pasta
+    keras-applications
+    keras-preprocessing
+    numpy
+    six
+    protobuf
+    tensorflow-estimator_2
+    termcolor
+    wrapt
+    grpcio
+    opt-einsum
+  ] ++ lib.optionals (!isPy3k) [
+    mock
+    future
+    functools32
+  ] ++ lib.optionals (pythonOlder "3.4") [
+    backports_weakref enum34
+  ] ++ lib.optionals withTensorboard [
+    tensorflow-tensorboard_2
+  ];
+
+  nativeBuildInputs = lib.optional cudaSupport addOpenGLRunpath;
+
+  postFixup = lib.optionalString cudaSupport ''
+    find $out -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
+      addOpenGLRunpath "$lib"
+    done
+  '';
+
+  # Actual tests are slow and impure.
+  # TODO try to run them anyway
+  # TODO better test (files in tensorflow/tools/ci_build/builds/*test)
+  checkPhase = ''
+    ${python.interpreter} <<EOF
+    # A simple "Hello world"
+    import tensorflow as tf
+    hello = tf.constant("Hello, world!")
+    tf.print(hello)
+
+    # Fit a simple model to random data
+    import numpy as np
+    np.random.seed(0)
+    tf.random.set_seed(0)
+    model = tf.keras.models.Sequential([
+        tf.keras.layers.Dense(1, activation="linear")
+    ])
+    model.compile(optimizer="sgd", loss="mse")
+
+    x = np.random.uniform(size=(1,1))
+    y = np.random.uniform(size=(1,))
+    model.fit(x, y, epochs=1)
+    EOF
+  '';
+  # Regression test for #77626 removed because not more `tensorflow.contrib`.
+
+  passthru.libtensorflow = bazel-build.out;
+
+  inherit (bazel-build) meta;
+}
diff --git a/pkgs/development/python-modules/tensorflow/2/lift-gast-restriction.patch b/pkgs/development/python-modules/tensorflow/2/lift-gast-restriction.patch
new file mode 100644
index 00000000000..e0d367f4924
--- /dev/null
+++ b/pkgs/development/python-modules/tensorflow/2/lift-gast-restriction.patch
@@ -0,0 +1,11 @@
+diff --git a/tensorflow/tools/pip_package/setup.py b/tensorflow/tools/pip_package/setup.py
+index 992f2eae22..d9386f9b13 100644
+--- a/tensorflow/tools/pip_package/setup.py
++++ b/tensorflow/tools/pip_package/setup.py
+@@ -54,5 +54,5 @@ REQUIRED_PACKAGES = [
+     'enum34 >= 1.1.6;python_version<"3.4"',
+-    'gast == 0.2.2',
++    'gast >= 0.2.2',
+     'google_pasta >= 0.1.6',
+     'keras_applications >= 1.0.8',
+     'keras_preprocessing >= 1.0.5',
diff --git a/pkgs/development/python-modules/tensorflow/prefetcher.sh b/pkgs/development/python-modules/tensorflow/2/prefetcher.sh
index abb0faac283..abb0faac283 100755
--- a/pkgs/development/python-modules/tensorflow/prefetcher.sh
+++ b/pkgs/development/python-modules/tensorflow/2/prefetcher.sh
diff --git a/pkgs/development/python-modules/tesserocr/default.nix b/pkgs/development/python-modules/tesserocr/default.nix
index 2d4f9d10a8c..df1b0228304 100644
--- a/pkgs/development/python-modules/tesserocr/default.nix
+++ b/pkgs/development/python-modules/tesserocr/default.nix
@@ -13,11 +13,11 @@
 
 buildPythonPackage rec {
   pname = "tesserocr";
-  version = "2.5.0";
+  version = "2.5.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0nj33mwvppacy6p5mqk9a4x26hx9ailshgad84ks60wyms6rgjiv";
+    sha256 = "0cc7d4r11z26rhcwpmcc42fi9kr3f20nq5pk84jrczr18i0g99mh";
   };
 
   nativeBuildInputs = [ cython pkg-config ];
diff --git a/pkgs/development/python-modules/thespian/default.nix b/pkgs/development/python-modules/thespian/default.nix
index 1c59b0cae6b..add36ccf1b6 100644
--- a/pkgs/development/python-modules/thespian/default.nix
+++ b/pkgs/development/python-modules/thespian/default.nix
@@ -1,13 +1,13 @@
 { fetchPypi, buildPythonPackage, lib }:
 
 buildPythonPackage rec {
-  version = "3.9.11";
+  version = "3.10.0";
   pname = "thespian";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "84887f0437ec144f7266ae22678bc5dc5d2a9e60a89f1f7c1707cbea5e03022a";
+    sha256 = "0n85nhj5hr8kv33jk4by8hnxm3kni5f4z1jhiw27dlf6cbgsv892";
   };
 
   # Do not run the test suite: it takes a long time and uses
@@ -18,7 +18,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python Actor concurrency library";
-    homepage = http://thespianpy.com/;
+    homepage = "http://thespianpy.com/";
     license = licenses.mit;
     maintainers = [ maintainers.kquick ];
   };
diff --git a/pkgs/development/python-modules/tkinter/default.nix b/pkgs/development/python-modules/tkinter/default.nix
index ba910f75e19..1efebed9872 100644
--- a/pkgs/development/python-modules/tkinter/default.nix
+++ b/pkgs/development/python-modules/tkinter/default.nix
@@ -6,7 +6,8 @@
 }:
 
 buildPythonPackage {
-  name = "tkinter-${python.version}";
+  pname = "tkinter";
+  version = python.version;
   src = py;
   format = "other";
 
diff --git a/pkgs/development/python-modules/traitsui/default.nix b/pkgs/development/python-modules/traitsui/default.nix
index 8e7a5643d70..617ba227c41 100644
--- a/pkgs/development/python-modules/traitsui/default.nix
+++ b/pkgs/development/python-modules/traitsui/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchPypi, buildPythonPackage
-, traits, pyface, wxPython
+{ lib, fetchPypi, buildPythonPackage
+, traits, pyface, six
 }:
 
 buildPythonPackage rec {
@@ -11,14 +11,14 @@ buildPythonPackage rec {
     sha256 = "0kw1xy5ax6l0lzmk7pfzjw6qs0idv78k3118my7cbvw1n5iiff28";
   };
 
-  propagatedBuildInputs = [ traits pyface wxPython ];
+  propagatedBuildInputs = [ traits pyface six ];
 
   doCheck = false; # Needs X server
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Traits-capable windowing framework";
     homepage = "https://github.com/enthought/traitsui";
-    maintainers = with stdenv.lib.maintainers; [ knedlsepp ];
+    maintainers = with maintainers; [ knedlsepp ];
     license = licenses.bsdOriginal;
   };
 }
diff --git a/pkgs/development/python-modules/trezor/default.nix b/pkgs/development/python-modules/trezor/default.nix
index 2d40ad971db..e7bec00863a 100644
--- a/pkgs/development/python-modules/trezor/default.nix
+++ b/pkgs/development/python-modules/trezor/default.nix
@@ -16,13 +16,13 @@
 
 buildPythonPackage rec {
   pname = "trezor";
-  version = "0.11.6";
+  version = "0.12.0";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1i73j812i0dgjw9n106pipc6qksd9cgs59d0as0b4j5iyl0087hh";
+    sha256 = "0ycmpwjv5xp25993divjhaq5j766zgcy22xx39xfc1pcvldq5g7n";
   };
 
   propagatedBuildInputs = [ typing-extensions protobuf hidapi ecdsa mnemonic requests pyblake2 click construct libusb1 rlp shamir-mnemonic trezor-udev-rules ];
diff --git a/pkgs/development/python-modules/twisted/default.nix b/pkgs/development/python-modules/twisted/default.nix
index 5c4fea3f9b1..2bea54818c2 100644
--- a/pkgs/development/python-modules/twisted/default.nix
+++ b/pkgs/development/python-modules/twisted/default.nix
@@ -16,12 +16,12 @@
 }:
 buildPythonPackage rec {
   pname = "Twisted";
-  version = "19.10.0";
+  version = "20.3.0";
 
   src = fetchPypi {
     inherit pname version;
     extension = "tar.bz2";
-    sha256 = "7394ba7f272ae722a74f3d969dcf599bc4ef093bc392038748a490f1724a515d";
+    sha256 = "040yzha6cyshnn6ljgk2birgh6mh2cnra48xp5ina5vfsnsmab6p";
   };
 
   propagatedBuildInputs = [ zope_interface incremental automat constantly hyperlink pyhamcrest attrs setuptools ];
diff --git a/pkgs/development/python-modules/txtorcon/default.nix b/pkgs/development/python-modules/txtorcon/default.nix
index 3b60c63d964..01a7cd3d87a 100644
--- a/pkgs/development/python-modules/txtorcon/default.nix
+++ b/pkgs/development/python-modules/txtorcon/default.nix
@@ -4,7 +4,7 @@
 
 buildPythonPackage rec {
   pname = "txtorcon";
-  version = "19.1.0";
+  version = "20.0.0";
 
   checkInputs = [ pytest mock lsof GeoIP ];
   propagatedBuildInputs = [
@@ -15,7 +15,7 @@ buildPythonPackage rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "19ayn5w9ayxbb1m84l1s9qlb6kv7sz6sg34mzy8bnidc7qnfbn15";
+    sha256 = "0yipb41w2icbj50d3z1j92d8w6xhbqd1rnmd31vzb5k3g20x0b0j";
   };
 
   # zope.interface issue
@@ -28,7 +28,7 @@ buildPythonPackage rec {
 
   meta = {
     description = "Twisted-based Tor controller client, with state-tracking and configuration abstractions";
-    homepage = https://github.com/meejah/txtorcon;
+    homepage = "https://github.com/meejah/txtorcon";
     maintainers = with lib.maintainers; [ jluttine ];
     # Currently broken on Python 2.7. See
     # https://github.com/NixOS/nixpkgs/issues/71826
diff --git a/pkgs/development/python-modules/uvloop/default.nix b/pkgs/development/python-modules/uvloop/default.nix
index 36c5af1d718..109d8d8efab 100644
--- a/pkgs/development/python-modules/uvloop/default.nix
+++ b/pkgs/development/python-modules/uvloop/default.nix
@@ -6,16 +6,17 @@
 , libuv
 , psutil
 , isPy27
-, pythonAtLeast
 , CoreServices
 , ApplicationServices
+# Check Inputs
+, pytestCheckHook
+# , pytest-asyncio
 }:
 
 buildPythonPackage rec {
   pname = "uvloop";
   version = "0.14.0";
-  # python 3.8 hangs on tests, assuming it's subtly broken with race condition
-  disabled = isPy27 || pythonAtLeast "3.8";
+  disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
@@ -28,20 +29,44 @@ buildPythonPackage rec {
     libuv
   ] ++ lib.optionals stdenv.isDarwin [ CoreServices ApplicationServices ];
 
-  postPatch = ''
-    # Removing code linting tests, which we don't care about
-    rm tests/test_sourcecode.py
-  '';
+  pythonImportsCheck = [
+    "uvloop"
+    "uvloop.loop"
+  ];
+
+  dontUseSetuptoolsCheck = true;
+  checkInputs = [ pytestCheckHook pyopenssl psutil ];
+
+  pytestFlagsArray = [
+    # from pytest.ini, these are NECESSARY to prevent failures
+    "--capture=no"
+    "--assert=plain"
+    "--tb=native"
+    # ignore code linting tests
+    "--ignore=tests/test_sourcecode.py"
+  ];
 
-  checkInputs = [ pyopenssl psutil ];
+  disabledTests = [
+    "test_sock_cancel_add_reader_race"  # asyncio version of test is supposed to be skipped but skip doesn't happen. uvloop version runs fine
+  ];
+
+  # force using installed/compiled uvloop vs source by moving tests to temp dir
+  preCheck = ''
+    export TEST_DIR=$(mktemp -d)
+    cp -r tests $TEST_DIR
+    pushd $TEST_DIR
+  '';
+  postCheck = ''
+    popd
+  '';
 
   # Some of the tests use localhost networking.
   __darwinAllowLocalNetworking = true;
 
   meta = with lib; {
     description = "Fast implementation of asyncio event loop on top of libuv";
-    homepage = https://github.com/MagicStack/uvloop;
+    homepage = "https://github.com/MagicStack/uvloop";
     license = licenses.mit;
-    maintainers = [ maintainers.costrouc ];
+    maintainers = with maintainers; [ costrouc ];
   };
 }
diff --git a/pkgs/development/python-modules/variants/default.nix b/pkgs/development/python-modules/variants/default.nix
new file mode 100644
index 00000000000..11c50646700
--- /dev/null
+++ b/pkgs/development/python-modules/variants/default.nix
@@ -0,0 +1,35 @@
+{ buildPythonPackage
+, isPy27
+, fetchPypi
+, pytestrunner
+, setuptools_scm
+, singledispatch
+, pytest
+, lib
+}:
+
+buildPythonPackage rec {
+  pname = "variants";
+  version = "0.2.0";
+
+  src = fetchPypi {
+    inherit pname version ;
+    sha256 = "511f75b4cf7483c27e4d86d9accf2b5317267900c166d17636beeed118929b90";
+  };
+
+  nativeBuildInputs = [
+    pytestrunner
+    setuptools_scm
+  ];
+
+  checkInputs = [
+    pytest
+  ] ++ lib.optionals isPy27 [ singledispatch ];
+
+  meta = with lib; {
+    description = "Library providing syntactic sugar for creating variant forms of a canonical function";
+    homepage = "https://github.com/python-variants/variants";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ rakesh4g ];
+  };
+}
diff --git a/pkgs/development/python-modules/varint/default.nix b/pkgs/development/python-modules/varint/default.nix
new file mode 100644
index 00000000000..5f32dff4aa5
--- /dev/null
+++ b/pkgs/development/python-modules/varint/default.nix
@@ -0,0 +1,25 @@
+{ buildPythonPackage
+, fetchPypi
+, lib
+}:
+buildPythonPackage rec {
+  pname = "varint";
+  version = "1.0.2";
+
+  src = fetchPypi {
+    inherit pname version ;
+    sha256 = "a6ecc02377ac5ee9d65a6a8ad45c9ff1dac8ccee19400a5950fb51d594214ca5";
+  };
+
+  # No tests are available
+  doCheck = false;
+
+  pythonImportsCheck = [ "varint" ];
+
+  meta = with lib; {
+    description = "A basic varint implementation in python";
+    homepage = "https://github.com/fmoo/python-varint";
+    license = licenses.mit;
+    maintainers = with maintainers; [ rakesh4g ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/python-modules/virtualenv-clone/default.nix b/pkgs/development/python-modules/virtualenv-clone/default.nix
index b1ce764c4ac..cc68d4b7090 100644
--- a/pkgs/development/python-modules/virtualenv-clone/default.nix
+++ b/pkgs/development/python-modules/virtualenv-clone/default.nix
@@ -7,11 +7,11 @@
 
 buildPythonPackage rec {
   pname = "virtualenv-clone";
-  version = "0.5.3";
+  version = "0.5.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "c88ae171a11b087ea2513f260cdac9232461d8e9369bcd1dc143fc399d220557";
+    sha256 = "0absh96fsxk9di7ir76f5djyfm2c214wnyk53avrhjy8akflhpk6";
   };
 
   buildInputs = [ pytest ];
@@ -21,7 +21,7 @@ buildPythonPackage rec {
   doCheck = false;
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/edwardgeorge/virtualenv-clone;
+    homepage = "https://github.com/edwardgeorge/virtualenv-clone";
     description = "Script to clone virtualenvs";
     license = licenses.mit;
   };
diff --git a/pkgs/development/python-modules/vowpalwabbit/default.nix b/pkgs/development/python-modules/vowpalwabbit/default.nix
index 65dbce862a4..ddd36a98cb6 100644
--- a/pkgs/development/python-modules/vowpalwabbit/default.nix
+++ b/pkgs/development/python-modules/vowpalwabbit/default.nix
@@ -15,11 +15,11 @@
 
 buildPythonPackage rec {
   pname = "vowpalwabbit";
-  version = "8.8.0";
+  version = "8.8.1";
 
   src = fetchPypi{
     inherit pname version;
-    sha256 = "bd4c7e49a6ddaa1afedf97b22b822c7322328d686d45151b47a5127fc409c2af";
+    sha256 = "17fw1g4ka9jppd41srw39zbp2b8h81izc71bbggxgf2r0xbdpga6";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/weboob/default.nix b/pkgs/development/python-modules/weboob/default.nix
index d0a5d6116f8..7c3d25068e3 100644
--- a/pkgs/development/python-modules/weboob/default.nix
+++ b/pkgs/development/python-modules/weboob/default.nix
@@ -1,4 +1,5 @@
 { lib, buildPythonPackage, fetchPypi, isPy27
+, Babel
 , cssselect
 , dateutil
 , feedparser
@@ -24,11 +25,11 @@
 
 buildPythonPackage rec {
   pname = "weboob";
-  version = "1.5";
+  version = "2.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1c9z9gid1mbm1cakb2wj6jjkbrmji8y8ac46iqpih9x1h498bhbs";
+    sha256 = "1c69vzf8sg8471lcaafpz9iw2q3rfj5hmcpqrs2k59fkgbvy32zw";
   };
 
   postPatch = ''
@@ -44,13 +45,12 @@ buildPythonPackage rec {
     }; p' weboob/browser/browsers.py weboob/browser/pages.py
   '';
 
-  setupPyBuildFlags = ["--qt" "--xdg"];
-
   checkInputs = [ nose ];
 
   nativeBuildInputs = [ pyqt5 ];
 
   propagatedBuildInputs = [
+    Babel
     cssselect
     dateutil
     feedparser
@@ -77,7 +77,7 @@ buildPythonPackage rec {
   '';
 
   meta = {
-    homepage = http://weboob.org;
+    homepage = "http://weboob.org";
     description = "Collection of applications and APIs to interact with websites without requiring the user to open a browser";
     license = lib.licenses.agpl3;
   };
diff --git a/pkgs/development/python-modules/whisper/default.nix b/pkgs/development/python-modules/whisper/default.nix
index 134d797ecf8..70709d3e666 100644
--- a/pkgs/development/python-modules/whisper/default.nix
+++ b/pkgs/development/python-modules/whisper/default.nix
@@ -2,18 +2,18 @@
 
 buildPythonPackage rec {
   pname = "whisper";
-  version = "1.1.6";
+  version = "1.1.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "8dbb3b7cf4a02a080162467fff5cd38bf77940c3e2b25f7c4f78529427ca9cfe";
+    sha256 = "08biw3g6x6p2aa1nlvfazbgcs1xvf6m0hvskdjhgwnsbwxk1xq46";
   };
 
   propagatedBuildInputs = [ six ];
   checkInputs = [ mock ];
 
   meta = with stdenv.lib; {
-    homepage = http://graphite.wikidot.com/;
+    homepage = "http://graphite.wikidot.com/";
     description = "Fixed size round-robin style database";
     maintainers = with maintainers; [ offline basvandijk ];
     license = licenses.asl20;
diff --git a/pkgs/development/python-modules/xdg/default.nix b/pkgs/development/python-modules/xdg/default.nix
new file mode 100644
index 00000000000..8b2d73b00fb
--- /dev/null
+++ b/pkgs/development/python-modules/xdg/default.nix
@@ -0,0 +1,34 @@
+{ lib, buildPythonPackage, fetchFromGitHub, isPy27
+, clikit
+, poetry
+, pytestCheckHook
+}:
+
+buildPythonPackage rec {
+  version = "4.0.1";
+  pname = "xdg";
+  disabled = isPy27;
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "srstevenson";
+    repo = pname;
+    rev = version;
+    sha256 = "13kgnbwam6wmdbig0m98vmyjcqrp0j62nmfknb6prr33ns2nxbs2";
+  };
+
+  nativeBuildInputs = [ poetry ];
+
+  propagatedBuildInputs = [
+    clikit
+  ];
+
+  checkInputs = [ pytestCheckHook ];
+
+  meta = with lib; {
+    description = "XDG Base Directory Specification for Python";
+    homepage = "https://github.com/srstevenson/xdg";
+    license = licenses.isc;
+    maintainers = with maintainers; [ jonringer ];
+  };
+}
diff --git a/pkgs/development/python-modules/xdis/default.nix b/pkgs/development/python-modules/xdis/default.nix
index 831dd888fae..b4c8e46f146 100644
--- a/pkgs/development/python-modules/xdis/default.nix
+++ b/pkgs/development/python-modules/xdis/default.nix
@@ -6,14 +6,14 @@
 
 buildPythonPackage rec {
   pname = "xdis";
-  version = "4.2.2";
+  version = "4.2.4";
   disabled = isPy27;
 
   src = fetchFromGitHub {
     owner = "rocky";
     repo = "python-xdis";
     rev = version;
-    sha256 = "0d286myx6z6cbih77h8z5p9vscxvww3gy59lmi1w6y2nq6c8sqzb";
+    sha256 = "0nq6ijmj48c2dk75vmb040wgvr4y7wyjxrcm2dyvcwfk2h6phwri";
   };
 
   checkInputs = [ pytest ];
@@ -25,7 +25,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Python cross-version byte-code disassembler and marshal routines";
-    homepage = https://github.com/rocky/python-xdis/;
+    homepage = "https://github.com/rocky/python-xdis/";
     license = licenses.gpl2;
   };
 }
diff --git a/pkgs/development/python-modules/xml2rfc/default.nix b/pkgs/development/python-modules/xml2rfc/default.nix
index cf4eadd99d8..b2bd5af56c8 100644
--- a/pkgs/development/python-modules/xml2rfc/default.nix
+++ b/pkgs/development/python-modules/xml2rfc/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "xml2rfc";
-  version = "2.37.3";
+  version = "2.41.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "4ae4e99a4b482caac89d8ffd93d16a4510db36907475b1879713a1dc885646ad";
+    sha256 = "0xmhgn62a8a7282yd003zz63mrgyajb6sg29bfyllx3mxmdlb0iz";
   };
 
   propagatedBuildInputs = [
@@ -36,7 +36,7 @@ buildPythonPackage rec {
 
   meta = with lib; {
     description = "Tool generating IETF RFCs and drafts from XML sources";
-    homepage = https://tools.ietf.org/tools/xml2rfc/trac/;
+    homepage = "https://tools.ietf.org/tools/xml2rfc/trac/";
     # Well, parts might be considered unfree, if being strict; see:
     # http://metadata.ftp-master.debian.org/changelogs/non-free/x/xml2rfc/xml2rfc_2.9.6-1_copyright
     license = licenses.bsd3;
diff --git a/pkgs/development/python-modules/yamllint/default.nix b/pkgs/development/python-modules/yamllint/default.nix
index b4d5834b242..b883a3d2bc8 100644
--- a/pkgs/development/python-modules/yamllint/default.nix
+++ b/pkgs/development/python-modules/yamllint/default.nix
@@ -3,11 +3,11 @@
 
 buildPythonPackage rec {
   pname = "yamllint";
-  version = "1.20.0";
+  version = "1.21.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1gx3f9wcf8af9cz2v3x3196pab34n8mlqk5iswahhzpxc9i2p4bn";
+    sha256 = "14yijcnmanyd3s2ir38sxl07rzpxgpgw9s6b8sy68jrl7n5nj7ky";
   };
 
   checkInputs = [ nose ];
@@ -19,7 +19,7 @@ buildPythonPackage rec {
 
   meta = with stdenv.lib; {
     description = "A linter for YAML files";
-    homepage = https://github.com/adrienverge/yamllint;
+    homepage = "https://github.com/adrienverge/yamllint";
     license = licenses.gpl3;
     maintainers = with maintainers; [ mikefaille ];
   };
diff --git a/pkgs/development/python-modules/zeroconf/default.nix b/pkgs/development/python-modules/zeroconf/default.nix
index 622de68c6d4..25382fa19ad 100644
--- a/pkgs/development/python-modules/zeroconf/default.nix
+++ b/pkgs/development/python-modules/zeroconf/default.nix
@@ -10,12 +10,12 @@
 
 buildPythonPackage rec {
   pname = "zeroconf";
-  version = "0.24.4";
+  version = "0.24.5";
   disabled = isPy27;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "f66d38f16026097572939ab78b1f46a97f556bca415491eb0fd094d0b5827dfe";
+    sha256 = "0jpgd0rk91si93857mjrizan5gc42kj1q4fi4160qgk68la88fl9";
   };
 
   propagatedBuildInputs = [ ifaddr ]
diff --git a/pkgs/development/python-modules/zetup/default.nix b/pkgs/development/python-modules/zetup/default.nix
index eb3c5ff135c..85e950b830e 100644
--- a/pkgs/development/python-modules/zetup/default.nix
+++ b/pkgs/development/python-modules/zetup/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildPythonPackage, fetchPypi
+{ lib, buildPythonPackage, fetchPypi
 , setuptools_scm, pathpy, nbconvert
 , pytest }:
 
@@ -11,11 +11,10 @@ buildPythonPackage rec {
     sha256 = "b8a9bdcfa4b705d72b55b218658bc9403c157db7b57a14158253c98d03ab713d";
   };
 
-  # Python 3.7 compatibility
-  # See https://github.com/zimmermanncode/zetup/pull/1
+  # Python 3.8 compatibility
   postPatch = ''
     substituteInPlace zetup/zetup_config.py \
-      --replace "'3.6']" "'3.6', '3.7']"
+      --replace "'3.7']" "'3.7', '3.8']"
   '';
 
   checkPhase = ''
@@ -25,11 +24,9 @@ buildPythonPackage rec {
   checkInputs = [ pytest pathpy nbconvert ];
   propagatedBuildInputs = [ setuptools_scm ];
 
-  meta = with stdenv.lib; {
-    description = ''
-      Zimmermann's Extensible Tools for Unified Project setups
-    '';
-    homepage = https://github.com/zimmermanncode/zetup;
+  meta = with lib; {
+    description = "Zimmermann's Extensible Tools for Unified Project setups";
+    homepage = "https://github.com/zimmermanncode/zetup";
     license = licenses.gpl3Plus;
     platforms = platforms.unix;
   };
diff --git a/pkgs/development/ruby-modules/bundled-common/default.nix b/pkgs/development/ruby-modules/bundled-common/default.nix
index 66f33f6e31f..65416d9295b 100644
--- a/pkgs/development/ruby-modules/bundled-common/default.nix
+++ b/pkgs/development/ruby-modules/bundled-common/default.nix
@@ -124,7 +124,7 @@ let
           for i in ${ruby}/bin/*; do
             makeWrapper "$i" $out/bin/$(basename "$i") \
               --set BUNDLE_GEMFILE ${confFiles}/Gemfile \
-              --set BUNDLE_PATH ${basicEnv}/${ruby.gemPath} \
+              --unset BUNDLE_PATH \
               --set BUNDLE_FROZEN 1 \
               --set GEM_HOME ${basicEnv}/${ruby.gemPath} \
               --set GEM_PATH ${basicEnv}/${ruby.gemPath}
diff --git a/pkgs/development/ruby-modules/bundled-common/gen-bin-stubs.rb b/pkgs/development/ruby-modules/bundled-common/gen-bin-stubs.rb
index add5db56d1d..2bf9d84caa0 100644
--- a/pkgs/development/ruby-modules/bundled-common/gen-bin-stubs.rb
+++ b/pkgs/development/ruby-modules/bundled-common/gen-bin-stubs.rb
@@ -32,10 +32,12 @@ paths.each do |path|
 #
 
 ENV["BUNDLE_GEMFILE"] = #{gemfile.dump}
-ENV["BUNDLE_PATH"] = #{bundle_path.dump}
+ENV.delete 'BUNDLE_PATH'
 ENV['BUNDLE_FROZEN'] = '1'
 
-$LOAD_PATH.unshift #{bundler_path.dump} + "/lib"
+Gem.paths = { 'GEM_HOME' => #{bundle_path.dump} }
+
+$LOAD_PATH.unshift #{File.join(bundler_path, "/lib").dump}
 
 require 'bundler'
 Bundler.setup(#{groups.map(&:dump).join(', ')})
diff --git a/pkgs/development/ruby-modules/bundler-app/default.nix b/pkgs/development/ruby-modules/bundler-app/default.nix
index 2fa70664323..0859f08c2f7 100644
--- a/pkgs/development/ruby-modules/bundler-app/default.nix
+++ b/pkgs/development/ruby-modules/bundler-app/default.nix
@@ -53,7 +53,7 @@ in
     ${(lib.concatMapStrings (x: "ln -s '${basicEnv}/bin/${x}' $out/bin/${x};\n") exes)}
     ${(lib.concatMapStrings (s: "makeWrapper $out/bin/$(basename ${s}) $srcdir/${s} " +
                                 "--set BUNDLE_GEMFILE ${basicEnv.confFiles}/Gemfile "+
-                                "--set BUNDLE_PATH ${basicEnv}/${ruby.gemPath} "+
+                                "--unset BUNDLE_PATH "+
                                 "--set BUNDLE_FROZEN 1 "+
                                 "--set GEM_HOME ${basicEnv}/${ruby.gemPath} "+
                                 "--set GEM_PATH ${basicEnv}/${ruby.gemPath} "+
diff --git a/pkgs/development/ruby-modules/bundler/default.nix b/pkgs/development/ruby-modules/bundler/default.nix
index 6190b4210cd..fc2733de3f0 100644
--- a/pkgs/development/ruby-modules/bundler/default.nix
+++ b/pkgs/development/ruby-modules/bundler/default.nix
@@ -4,8 +4,8 @@ buildRubyGem rec {
   inherit ruby;
   name = "${gemName}-${version}";
   gemName = "bundler";
-  version = "1.17.3";
-  source.sha256 = "0ln3gnk7cls81gwsbxvrmlidsfd78s6b2hzlm4d4a9wbaidzfjxw";
+  version = "2.1.4";
+  source.sha256 = "12glbb1357x91fvd004jgkw7ihlkpc9dwr349pd7j83isqhls0ah";
   dontPatchShebangs = true;
 
   postFixup = ''
diff --git a/pkgs/development/ruby-modules/solargraph/Gemfile.lock b/pkgs/development/ruby-modules/solargraph/Gemfile.lock
index c2e4840eab0..d9438a79956 100644
--- a/pkgs/development/ruby-modules/solargraph/Gemfile.lock
+++ b/pkgs/development/ruby-modules/solargraph/Gemfile.lock
@@ -3,41 +3,47 @@ GEM
   specs:
     ast (2.4.0)
     backport (1.1.2)
+    benchmark (0.1.0)
+    e2mmap (0.1.0)
     jaro_winkler (1.5.4)
     maruku (0.7.3)
     mini_portile2 (2.4.0)
-    nokogiri (1.10.5)
+    nokogiri (1.10.9)
       mini_portile2 (~> 2.4.0)
     parallel (1.19.1)
-    parser (2.6.5.0)
+    parser (2.7.0.5)
       ast (~> 2.4.0)
     rainbow (3.0.0)
-    reverse_markdown (1.3.0)
+    reverse_markdown (1.4.0)
       nokogiri
-    rubocop (0.77.0)
+    rexml (3.2.4)
+    rubocop (0.80.1)
       jaro_winkler (~> 1.5.1)
       parallel (~> 1.10)
-      parser (>= 2.6)
+      parser (>= 2.7.0.1)
       rainbow (>= 2.2.2, < 4.0)
+      rexml
       ruby-progressbar (~> 1.7)
       unicode-display_width (>= 1.4.0, < 1.7)
     ruby-progressbar (1.10.1)
-    solargraph (0.38.0)
+    solargraph (0.38.6)
       backport (~> 1.1)
+      benchmark
       bundler (>= 1.17.2)
+      e2mmap
       jaro_winkler (~> 1.5)
       maruku (~> 0.7, >= 0.7.3)
       nokogiri (~> 1.9, >= 1.9.1)
       parser (~> 2.3)
       reverse_markdown (~> 1.0, >= 1.0.5)
       rubocop (~> 0.52)
-      thor (~> 0.19, >= 0.19.4)
+      thor (~> 1.0)
       tilt (~> 2.0)
       yard (~> 0.9)
-    thor (0.20.3)
+    thor (1.0.1)
     tilt (2.0.10)
-    unicode-display_width (1.6.0)
-    yard (0.9.20)
+    unicode-display_width (1.6.1)
+    yard (0.9.24)
 
 PLATFORMS
   ruby
@@ -46,4 +52,4 @@ DEPENDENCIES
   solargraph!
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/development/ruby-modules/solargraph/gemset.nix b/pkgs/development/ruby-modules/solargraph/gemset.nix
index e1ea15fb4e1..a6ec78b7458 100644
--- a/pkgs/development/ruby-modules/solargraph/gemset.nix
+++ b/pkgs/development/ruby-modules/solargraph/gemset.nix
@@ -1,5 +1,6 @@
 {
   ast = {
+    dependencies = [];
     groups = ["default"];
     platforms = [];
     source = {
@@ -10,6 +11,7 @@
     version = "2.4.0";
   };
   backport = {
+    dependencies = [];
     groups = ["default"];
     platforms = [];
     source = {
@@ -19,7 +21,30 @@
     };
     version = "1.1.2";
   };
+  benchmark = {
+    dependencies = [];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jadlpsl504ql436a6bx8ihp0bkg3rvxg7fbi4r1bmra3cqz0h88";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
+  e2mmap = {
+    dependencies = [];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0n8gxjb63dck3vrmsdcqqll7xs7f3wk78mw8w0gdk9wp5nx6pvj5";
+      type = "gem";
+    };
+    version = "0.1.0";
+  };
   jaro_winkler = {
+    dependencies = [];
     groups = ["default"];
     platforms = [];
     source = {
@@ -30,6 +55,7 @@
     version = "1.5.4";
   };
   maruku = {
+    dependencies = [];
     groups = ["default"];
     platforms = [];
     source = {
@@ -40,6 +66,7 @@
     version = "0.7.3";
   };
   mini_portile2 = {
+    dependencies = [];
     groups = ["default"];
     platforms = [];
     source = {
@@ -55,12 +82,13 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "185g3dwba73jqxjr94bd2zk6fil6n9hmcfnfyzh3p1w47vm296r7";
+      sha256 = "12j76d0bp608932xkzmfi638c7aqah57l437q8494znzbj610qnm";
       type = "gem";
     };
-    version = "1.10.5";
+    version = "1.10.9";
   };
   parallel = {
+    dependencies = [];
     groups = ["default"];
     platforms = [];
     source = {
@@ -76,12 +104,13 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09davv4ld6caqlczw64vhwf8hr41apys3cj8v2h96yxs4qg1m2iw";
+      sha256 = "0iirjc36irgwpfb58jdf9gli382cj893y9caqhxas8anpzzlikgc";
       type = "gem";
     };
-    version = "2.6.5.0";
+    version = "2.7.0.5";
   };
   rainbow = {
+    dependencies = [];
     groups = ["default"];
     platforms = [];
     source = {
@@ -97,23 +126,35 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1zb9n227b5s4cg942sc0g3n1bdx9fpcvq5m6w7ap0yc116ivv5w2";
+      sha256 = "0w786j869fjhjf72waj0hc9i4ghi45b78a2am27kij4sa2hmsc53";
+      type = "gem";
+    };
+    version = "1.4.0";
+  };
+  rexml = {
+    dependencies = [];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1mkvkcw9fhpaizrhca0pdgjcrbns48rlz4g6lavl5gjjq3rk2sq3";
       type = "gem";
     };
-    version = "1.3.0";
+    version = "3.2.4";
   };
   rubocop = {
-    dependencies = ["jaro_winkler" "parallel" "parser" "rainbow" "ruby-progressbar" "unicode-display_width"];
+    dependencies = ["jaro_winkler" "parallel" "parser" "rainbow" "rexml" "ruby-progressbar" "unicode-display_width"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0m88b1bgbhmmbdnz2xv6n0il0j4q5qm9jbc0vf1zsaxmxqp06nx9";
+      sha256 = "1i8pw7p4dk11xpahs0j6vlvqlv3rgapaccj933g0i34hbx392lj8";
       type = "gem";
     };
-    version = "0.77.0";
+    version = "0.80.1";
   };
   ruby-progressbar = {
+    dependencies = [];
     groups = ["default"];
     platforms = [];
     source = {
@@ -124,27 +165,29 @@
     version = "1.10.1";
   };
   solargraph = {
-    dependencies = ["backport" "jaro_winkler" "maruku" "nokogiri" "parser" "reverse_markdown" "rubocop" "thor" "tilt" "yard"];
+    dependencies = ["backport" "benchmark" "e2mmap" "jaro_winkler" "maruku" "nokogiri" "parser" "reverse_markdown" "rubocop" "thor" "tilt" "yard"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pdqpxvjj6r6gzrz9rmxfg85cmfjs4y2lyq8p5qfg3kfpqx4rhpw";
+      sha256 = "06kcqm032sq1y4pgg7cl32hv74573b1vsy79x81zglar80ybgzv4";
       type = "gem";
     };
-    version = "0.38.0";
+    version = "0.38.6";
   };
   thor = {
+    dependencies = [];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1yhrnp9x8qcy5vc7g438amd5j9sw83ih7c30dr6g6slgw9zj3g29";
+      sha256 = "1xbhkmyhlxwzshaqa7swy2bx6vd64mm0wrr8g3jywvxy7hg0cwkm";
       type = "gem";
     };
-    version = "0.20.3";
+    version = "1.0.1";
   };
   tilt = {
+    dependencies = [];
     groups = ["default"];
     platforms = [];
     source = {
@@ -155,23 +198,25 @@
     version = "2.0.10";
   };
   unicode-display_width = {
+    dependencies = [];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "08kfiniak1pvg3gn5k6snpigzvhvhyg7slmm0s2qx5zkj62c1z2w";
+      sha256 = "1pppclzq4qb26g321553nm9xqca3zgllvpwb2kqxsdadwj51s09x";
       type = "gem";
     };
-    version = "1.6.0";
+    version = "1.6.1";
   };
   yard = {
+    dependencies = [];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0rxqwry3h2hjz069f0kfr140wgx1khgljnqf112dk5x9rm4l0xny";
+      sha256 = "1g0bw2qcl48fxawrdf68l229508z53mrqisavji2lkxzv4w4j2pp";
       type = "gem";
     };
-    version = "0.9.20";
+    version = "0.9.24";
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/tools/alloy/default.nix b/pkgs/development/tools/alloy/default.nix
index 0b34055274d..01706bd9b68 100644
--- a/pkgs/development/tools/alloy/default.nix
+++ b/pkgs/development/tools/alloy/default.nix
@@ -45,7 +45,7 @@ let generic = { major, version, src }:
       downloadPage = http://alloytools.org/download.html;
       license = licenses.mit;
       platforms = platforms.linux;
-      maintainers = with maintainers; [ aminb ];
+      maintainers = with maintainers; [ notbandali ];
     };
   };
 
diff --git a/pkgs/development/tools/ameba/default.nix b/pkgs/development/tools/ameba/default.nix
index 5ac6c5afa91..2f3ebcbed0a 100644
--- a/pkgs/development/tools/ameba/default.nix
+++ b/pkgs/development/tools/ameba/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ameba";
-  version = "0.11.0";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner  = "crystal-ameba";
     repo   = "ameba";
     rev    = "v${version}";
-    sha256 = "0zjv59f555q2w8ahrvmpdzasrifwjgr0mk6rly9yss4ab3rj8cy2";
+    sha256 = "0g68yijbm2j4ig536fwq49d1z7x2iv9kp4g3gjklf5zn1sbqhm12";
   };
 
   nativeBuildInputs = [ crystal shards ];
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A static code analysis tool for Crystal";
-    homepage = https://crystal-ameba.github.io;
+    homepage = "https://crystal-ameba.github.io";
     license = licenses.mit;
     maintainers = with maintainers; [ kimburgess ];
   };
diff --git a/pkgs/development/tools/analysis/checkstyle/default.nix b/pkgs/development/tools/analysis/checkstyle/default.nix
index 8649c05d73b..539c2f7d191 100644
--- a/pkgs/development/tools/analysis/checkstyle/default.nix
+++ b/pkgs/development/tools/analysis/checkstyle/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, makeWrapper, jre }:
 
 stdenv.mkDerivation rec {
-  version = "8.30";
+  version = "8.31";
   pname = "checkstyle";
 
   src = fetchurl {
     url = "https://github.com/checkstyle/checkstyle/releases/download/checkstyle-${version}/checkstyle-${version}-all.jar";
-    sha256 = "1wsgpfdqasfz6chhy0w5pdjm4by6ih2g0l44lxwks9kik2lrs4av";
+    sha256 = "03dn07lissr2dkhi44wlkrbsby4zfvwai8gykc3xjgs46jy05rf8";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/analysis/codeql/default.nix b/pkgs/development/tools/analysis/codeql/default.nix
index 309ba9d392b..f722a155086 100644
--- a/pkgs/development/tools/analysis/codeql/default.nix
+++ b/pkgs/development/tools/analysis/codeql/default.nix
@@ -12,7 +12,7 @@
 
 stdenv.mkDerivation rec {
   pname = "codeql";
-  version = "2.0.4";
+  version = "2.1.0";
 
   dontConfigure = true;
   dontBuild = true;
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   src = fetchzip {
     url = "https://github.com/github/codeql-cli-binaries/releases/download/v${version}/codeql.zip";
-    sha256 = "02sqs7shxqrq6c6h12ldskk30k7sisa75wjxz99xyg49m4b2lw4m";
+    sha256 = "1vp4f5kwmxc4j59cdzwj0jh0n4c05hkvssvv9ii6w88phzblzpjk";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index 9e7b2d5096d..014c7dea11b 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "flow";
-  version = "0.121.0";
+  version = "0.122.0";
 
   src = fetchFromGitHub {
     owner  = "facebook";
     repo   = "flow";
     rev    = "refs/tags/v${version}";
-    sha256 = "1lx3lfn0blnwpq6iph0x6xcr4nrdhyvfvx6x8qk6axwlmg2swdcy";
+    sha256 = "0a1pcrp0r7l0c8cyrg1qc1qz5dnj0mzd60v9nixgm419a7rrmp93";
   };
 
   installPhase = ''
diff --git a/pkgs/development/tools/analysis/hopper/default.nix b/pkgs/development/tools/analysis/hopper/default.nix
index 14b61eac374..4fbf986e41a 100644
--- a/pkgs/development/tools/analysis/hopper/default.nix
+++ b/pkgs/development/tools/analysis/hopper/default.nix
@@ -12,12 +12,12 @@
 }:
 stdenv.mkDerivation rec {
   pname = "hopper";
-  version = "4.5.21";
+  version = "4.5.22";
   rev = "v${lib.versions.major version}";
 
   src = fetchurl {
     url = "https://d2ap6ypl1xbe4k.cloudfront.net/Hopper-${rev}-${version}-Linux.pkg.tar.xz";
-    sha256 = "0s733n3hmzpsnrvfryq7kzsvwshd1y9fzm16a64gnii8cmfalrqc";
+    sha256 = "1321i9ls5k677diwfccrjinzzb5586ygdgax7ryyha3ccdj1ikda";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/development/tools/analysis/panopticon/default.nix b/pkgs/development/tools/analysis/panopticon/default.nix
index 85fd8c93529..e2c174783d4 100644
--- a/pkgs/development/tools/analysis/panopticon/default.nix
+++ b/pkgs/development/tools/analysis/panopticon/default.nix
@@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec {
     sha256 = "1zv87nqhrzsxx0m891df4vagzssj3kblfv9yp7j96dw0vn9950qa";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake pkgconfig ];
   buildInputs = [ makeWrapper ];
   propagatedBuildInputs = with qt5; [
      qt5.qtbase
@@ -20,7 +20,6 @@ rustPlatform.buildRustPackage rec {
      qtsvg
      qtquickcontrols2
      qtgraphicaleffects
-     pkgconfig
      git
   ];
 
diff --git a/pkgs/development/tools/analysis/radare2/cutter.nix b/pkgs/development/tools/analysis/radare2/cutter.nix
index fd5c58985cf..e64f39a4960 100644
--- a/pkgs/development/tools/analysis/radare2/cutter.nix
+++ b/pkgs/development/tools/analysis/radare2/cutter.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "radare2-cutter";
-  version = "1.10.1";
+  version = "1.10.2";
 
   src = fetchFromGitHub {
     owner = "radareorg";
     repo = "cutter";
     rev = "v${version}";
-    sha256 = "1gvsrcskcdd1hxrjpkpc657anmfs25f174vxk4wzvn385rnmrxd3";
+    sha256 = "1icv56gxpzdjqn37pk3g99vgpljdc77i6k0x601iw2885s7s01n6";
   };
 
   postUnpack = "export sourceRoot=$sourceRoot/src";
diff --git a/pkgs/development/tools/analysis/radare2/default.nix b/pkgs/development/tools/analysis/radare2/default.nix
index fc5244f9644..37dc9e51bea 100644
--- a/pkgs/development/tools/analysis/radare2/default.nix
+++ b/pkgs/development/tools/analysis/radare2/default.nix
@@ -110,7 +110,7 @@ in {
   #<generated>
   # DO NOT EDIT! Automatically generated by ./update.py
   radare2 = generic {
-    version_commit = "23963";
+    version_commit = "24088";
     gittap = "4.3.1";
     gittip = "e7f940d27b3b4eb2738afef78a6ea09ed770318c";
     rev = "4.3.1";
@@ -120,12 +120,12 @@ in {
     cs_sha256 = "0ijwxxk71nr9z91yxw20zfj4bbsbrgvixps5c7cpj163xlzlwba6";
   };
   r2-for-cutter = generic {
-    version_commit = "23963";
-    gittap = "4.2.1";
-    gittip = "08478fdd29d8ce2a6c61fbd7b207bffc10682938";
-    rev = "08478fdd29d8ce2a6c61fbd7b207bffc10682938";
-    version = "2020-01-31";
-    sha256 = "14b9433cgc2nabhz836zfgvgh2dwailcmvy05krsa0inmzbvx9fg";
+    version_commit = "24088";
+    gittap = "4.3.1";
+    gittip = "e7f940d27b3b4eb2738afef78a6ea09ed770318c";
+    rev = "e7f940d27b3b4eb2738afef78a6ea09ed770318c";
+    version = "2020-03-05";
+    sha256 = "0fiy6aj8xf9anpkk2vpkx8x0m2f26rhjb92nmg61xj13dmhchh30";
     cs_ver = "4.0.1";
     cs_sha256 = "0ijwxxk71nr9z91yxw20zfj4bbsbrgvixps5c7cpj163xlzlwba6";
   };
diff --git a/pkgs/development/tools/analysis/randoop/default.nix b/pkgs/development/tools/analysis/randoop/default.nix
index 274418172d1..54c990ee058 100644
--- a/pkgs/development/tools/analysis/randoop/default.nix
+++ b/pkgs/development/tools/analysis/randoop/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, unzip }:
 
 stdenv.mkDerivation rec {
-  version = "4.2.2";
+  version = "4.2.3";
   pname = "randoop";
 
   src = fetchurl {
     url = "https://github.com/randoop/randoop/releases/download/v${version}/${pname}-${version}.zip";
-    sha256 = "1ac4llphh16n5ihc2hb1vggl65mbkw1xd1j3ixfskvmcy8valgqw";
+    sha256 = "0apmwbh761b02z8i4s3d270ms0c1fw98d10rpczngrs2jz37s2m9";
   };
 
   buildInputs = [ unzip ];
diff --git a/pkgs/development/tools/analysis/tflint/default.nix b/pkgs/development/tools/analysis/tflint/default.nix
index 475ff662b85..200df98c0a2 100644
--- a/pkgs/development/tools/analysis/tflint/default.nix
+++ b/pkgs/development/tools/analysis/tflint/default.nix
@@ -1,23 +1,21 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "tflint";
-  version = "0.15.2";
+  version = "0.15.4";
 
   src = fetchFromGitHub {
     owner = "terraform-linters";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1wwdnqb34l0ad6hlvs74acfh0744ir3ssm8wjwpxbsy0sxkrpxcf";
+    sha256 = "1z98zy04dj4hj94k9c9r1sfw167s3ywpxnjbylj7nsyxdlvwj37j";
   };
 
-  modSha256 = "1jbnsqa0ga372lhbgfnqvx8pdzrm0b2phzzwll4sgd0k1hzv2aqv";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "1j6vflvg2k544r0kkdiw64n6v467c0kr7l2m39h8yjbyjbmwl5xz";
 
   subPackages = [ "." ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Terraform linter focused on possible errors, best practices, and so on";
     homepage = "https://github.com/terraform-linters/tflint";
     changelog = "https://github.com/terraform-linters/tflint/releases/tag/v${version}";
diff --git a/pkgs/development/tools/azcopy/default.nix b/pkgs/development/tools/azcopy/default.nix
index 40741d96f56..328092feafc 100644
--- a/pkgs/development/tools/azcopy/default.nix
+++ b/pkgs/development/tools/azcopy/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ stdenv, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   pname = "azure-storage-azcopy";
@@ -11,8 +11,6 @@ buildGoModule rec {
     sha256 = "16pdvcgy1d5dfqk3as23j45rkwfrv232n384cj5wfz9qwijkcy5g";
   };
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   subPackages = [ "." ];
 
   modSha256 = "07cy2zi7m2pkbfdcy659x4k5j2w60cmjy8kxv1dcii3dc6ls4bvb";
diff --git a/pkgs/development/tools/bazel-gazelle/default.nix b/pkgs/development/tools/bazel-gazelle/default.nix
new file mode 100644
index 00000000000..db150b2eef1
--- /dev/null
+++ b/pkgs/development/tools/bazel-gazelle/default.nix
@@ -0,0 +1,31 @@
+{ buildGoModule
+, fetchFromGitHub
+, lib
+}:
+
+buildGoModule rec {
+  pname = "bazel-gazelle";
+  version = "0.20.0";
+
+  src = fetchFromGitHub {
+    owner = "bazelbuild";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1rw9zq8rmc0zr91kk70xl67dl6jx4dswwisv3bd1f16yncqgv2a1";
+  };
+
+  modSha256 = "0bfhy0ig8apxb5qzxjdj6q7jr2i6rdq0ffby0pha8viadah8v2rm";
+
+  subPackages = [ "cmd/gazelle" ];
+
+  meta = with lib; {
+    homepage = https://github.com/bazelbuild/bazel-gazelle;
+    description = ''
+      Gazelle is a Bazel build file generator for Bazel projects. It natively
+      supports Go and protobuf, and it may be extended to support new languages
+      and custom rule sets.
+    '';
+    license = licenses.asl20;
+    maintainers = with maintainers; [ kalbasit ];
+  };
+}
diff --git a/pkgs/development/tools/bazelisk/default.nix b/pkgs/development/tools/bazelisk/default.nix
index a737ddbb0fb..5780cf4382a 100644
--- a/pkgs/development/tools/bazelisk/default.nix
+++ b/pkgs/development/tools/bazelisk/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "bazelisk";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "1w8k659ifapcxbbim0nf7wd7w10bhlagc33q08izh84gcgsh0yyz";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "A user-friendly launcher for Bazel";
     longDescription = ''
diff --git a/pkgs/development/tools/build-managers/alibuild/default.nix b/pkgs/development/tools/build-managers/alibuild/default.nix
index c50e5716063..ad9813cde6f 100644
--- a/pkgs/development/tools/build-managers/alibuild/default.nix
+++ b/pkgs/development/tools/build-managers/alibuild/default.nix
@@ -2,11 +2,11 @@
 
 python.pkgs.buildPythonApplication rec {
   pname = "alibuild";
-  version = "1.5.4rc3";
+  version = "1.5.5";
 
   src = python.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "1mnh0h9m96p78b9ln1gbl4lw1mgl16qbyfi9fj2l13p3nxaq1sib";
+    sha256 = "1sh02avpab4qlyin3p928xw91l4fgs8x5x2rzl623ayqsnfjv19j";
   };
 
   doCheck = false;
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_0/default.nix b/pkgs/development/tools/build-managers/bazel/bazel_0_26/default.nix
index f54868de533..6d4ba50a9fb 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel_0/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/bazel_0_26/default.nix
@@ -161,6 +161,14 @@ stdenv.mkDerivation rec {
   postPatch = let
 
     darwinPatches = ''
+      bazelLinkFlags () {
+        eval set -- "$NIX_LDFLAGS"
+        local flag
+        for flag in "$@"; do
+          printf ' -Wl,%s' "$flag"
+        done
+      }
+
       # Disable Bazel's Xcode toolchain detection which would configure compilers
       # and linkers from Xcode instead of from PATH
       export BAZEL_USE_CPP_ONLY_TOOLCHAIN=1
@@ -170,14 +178,14 @@ stdenv.mkDerivation rec {
 
       # Framework search paths aren't added by bintools hook
       # https://github.com/NixOS/nixpkgs/pull/41914
-      export NIX_LDFLAGS="$NIX_LDFLAGS -F${CoreFoundation}/Library/Frameworks -F${CoreServices}/Library/Frameworks -F${Foundation}/Library/Frameworks"
+      export NIX_LDFLAGS+=" -F${CoreFoundation}/Library/Frameworks -F${CoreServices}/Library/Frameworks -F${Foundation}/Library/Frameworks"
 
       # libcxx includes aren't added by libcxx hook
       # https://github.com/NixOS/nixpkgs/pull/41589
       export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${libcxx}/include/c++/v1"
 
       # don't use system installed Xcode to run clang, use Nix clang instead
-      sed -i -e "s;/usr/bin/xcrun clang;${stdenv.cc}/bin/clang $NIX_CFLAGS_COMPILE $NIX_LDFLAGS -framework CoreFoundation;g" \
+      sed -i -E "s;/usr/bin/xcrun (--sdk macosx )?clang;${stdenv.cc}/bin/clang $NIX_CFLAGS_COMPILE $(bazelLinkFlags) -framework CoreFoundation;g" \
         scripts/bootstrap/compile.sh \
         src/tools/xcode/realpath/BUILD \
         src/tools/xcode/stdredirect/BUILD \
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_0/glibc.patch b/pkgs/development/tools/build-managers/bazel/bazel_0_26/glibc.patch
index c4de48068f1..c4de48068f1 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel_0/glibc.patch
+++ b/pkgs/development/tools/build-managers/bazel/bazel_0_26/glibc.patch
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_0/python-stub-path-fix.patch b/pkgs/development/tools/build-managers/bazel/bazel_0_26/python-stub-path-fix.patch
index cbc4192d2d9..cbc4192d2d9 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel_0/python-stub-path-fix.patch
+++ b/pkgs/development/tools/build-managers/bazel/bazel_0_26/python-stub-path-fix.patch
diff --git a/pkgs/development/tools/build-managers/bazel/bazel-latest/default.nix b/pkgs/development/tools/build-managers/bazel/bazel_0_29/default.nix
index 6c12003b964..19d33235a34 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel-latest/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/bazel_0_29/default.nix
@@ -1,7 +1,7 @@
 { stdenv, callPackage, lib, fetchurl, fetchFromGitHub
 , runCommand, runCommandCC, makeWrapper, recurseIntoAttrs
 # this package (through the fixpoint glass)
-, bazel
+, bazel_self
 , lr, xe, zip, unzip, bash, writeCBin, coreutils
 , which, gawk, gnused, gnutar, gnugrep, gzip, findutils
 # updater
@@ -25,11 +25,11 @@
 }:
 
 let
-  version = "2.1.0";
+  version = "0.29.1";
 
   src = fetchurl {
     url = "https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip";
-    sha256 = "0ijz9lxralyw18r5ra2h79jnafk5521ncr3knaip74cqa28csw9k";
+    sha256 = "1rcd6xy61n07n7m6dgcw23275r8z3gkwmqdkd48nwrq8yb7m4al7";
   };
 
   # Update with `eval $(nix-build -A bazel.updater)`,
@@ -49,12 +49,12 @@ let
       srcs.io_bazel_rules_sass
       srcs.platforms
       (if stdenv.hostPlatform.isDarwin
-       then srcs."java_tools_javac11_darwin-v7.0.zip"
-       else srcs."java_tools_javac11_linux-v7.0.zip")
-      srcs."coverage_output_generator-v2.1.zip"
+       then srcs."java_tools_javac11_darwin-v4.0.zip"
+       else srcs."java_tools_javac11_linux-v4.0.zip")
+      srcs."coverage_output_generator-v1.0.zip"
       srcs.build_bazel_rules_nodejs
-      srcs."android_tools_pkg-0.13.tar.gz"
-      srcs."0.28.3.tar.gz"
+      srcs."android_tools_pkg-0.8.tar.gz"
+      srcs."0.27.1.tar.gz"
       srcs.rules_pkg
       srcs.rules_cc
       srcs.rules_java
@@ -106,12 +106,11 @@ let
   # and libraries path.
   # We prefetch it, patch it, and override it in a global bazelrc.
   system = if stdenv.hostPlatform.isDarwin then "darwin" else "linux";
-  arch = stdenv.hostPlatform.parsed.cpu.name;
 
   remote_java_tools = stdenv.mkDerivation {
     name = "remote_java_tools_${system}";
 
-    src = srcDepsSet."java_tools_javac11_${system}-v7.0.zip";
+    src = srcDepsSet."java_tools_javac11_${system}-v4.0.zip";
 
     nativeBuildInputs = [ autoPatchelfHook unzip ];
     buildInputs = [ gcc-unwrapped ];
@@ -161,6 +160,7 @@ stdenv.mkDerivation rec {
     # This is breaking the build of any C target. This patch removes the last
     # argument if it's found to be an empty string.
     ../trim-last-argument-to-gcc-if-empty.patch
+    ./glibc.patch
 
     # --experimental_strict_action_env (which may one day become the default
     # see bazelbuild/bazel#2574) hardcodes the default
@@ -247,7 +247,7 @@ stdenv.mkDerivation rec {
             touch $out
           '');
 
-      bazelWithNixHacks = bazel.override { enableNixHacks = true; };
+      bazelWithNixHacks = bazel_self.override { enableNixHacks = true; };
 
       bazel-examples = fetchFromGitHub {
         owner = "bazelbuild";
@@ -494,11 +494,9 @@ stdenv.mkDerivation rec {
     mkdir -p $out/bin
 
     # official wrapper scripts that searches for $WORKSPACE_ROOT/tools/bazel
-    # if it can’t find something in tools, it calls $out/bin/bazel-{version}-{os_arch}
-    # The binary _must_ exist with this naming if your project contains a .bazelversion
-    # file.
+    # if it can’t find something in tools, it calls $out/bin/bazel-real
     cp ./bazel_src/scripts/packages/bazel.sh $out/bin/bazel
-    mv ./bazel_src/output/bazel $out/bin/bazel-${version}-${system}-${arch}
+    mv ./bazel_src/output/bazel $out/bin/bazel-real
 
     # shell completion files
     mkdir -p $out/share/bash-completion/completions $out/share/zsh/site-functions
@@ -537,7 +535,7 @@ stdenv.mkDerivation rec {
     exec "$BAZEL_REAL" "$@"
     EOF
 
-    # second call succeeds because it defers to $out/bin/bazel-{version}-{os_arch}
+    # second call succeeds because it defers to $out/bin/bazel-real
     hello_test
   '';
 
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_0_29/glibc.patch b/pkgs/development/tools/build-managers/bazel/bazel_0_29/glibc.patch
new file mode 100644
index 00000000000..c4de48068f1
--- /dev/null
+++ b/pkgs/development/tools/build-managers/bazel/bazel_0_29/glibc.patch
@@ -0,0 +1,78 @@
+From https://github.com/grpc/grpc/commit/57586a1ca7f17b1916aed3dea4ff8de872dbf853
+From: Benjamin Peterson <benjamin@dropbox.com>
+Date: Fri, 3 May 2019 08:11:00 -0700
+Subject: [PATCH] Rename gettid() functions.
+
+glibc 2.30 will declare its own gettid; see https://sourceware.org/git/?p=glibc.git;a=commit;h=1d0fc213824eaa2a8f8c4385daaa698ee8fb7c92. Rename the grpc versions to avoid naming conflicts.
+---
+ src/core/lib/gpr/log_linux.cc          | 6 ++----
+ src/core/lib/gpr/log_posix.cc          | 4 ++--
+ src/core/lib/iomgr/ev_epollex_linux.cc | 4 ++--
+ 3 files changed, 6 insertions(+), 8 deletions(-)
+
+diff --git a/third_party/grpc/src/core/lib/gpr/log_linux.cc b/src/core/lib/gpr/log_linux.cc
+index 81026e5689b..8b597b4cf2f 100644
+--- a/third_party/grpc/src/core/lib/gpr/log_linux.cc
++++ b/third_party/grpc/src/core/lib/gpr/log_linux.cc
+@@ -40,7 +40,7 @@
+ #include <time.h>
+ #include <unistd.h>
+
+-static long gettid(void) { return syscall(__NR_gettid); }
++static long sys_gettid(void) { return syscall(__NR_gettid); }
+
+ void gpr_log(const char* file, int line, gpr_log_severity severity,
+              const char* format, ...) {
+@@ -70,7 +70,7 @@ void gpr_default_log(gpr_log_func_args* args) {
+   gpr_timespec now = gpr_now(GPR_CLOCK_REALTIME);
+   struct tm tm;
+   static __thread long tid = 0;
+-  if (tid == 0) tid = gettid();
++  if (tid == 0) tid = sys_gettid();
+
+   timer = static_cast<time_t>(now.tv_sec);
+   final_slash = strrchr(args->file, '/');
+diff --git a/third_party/grpc/src/core/lib/gpr/log_posix.cc b/src/core/lib/gpr/log_posix.cc
+index b6edc14ab6b..2f7c6ce3760 100644
+--- a/third_party/grpc/src/core/lib/gpr/log_posix.cc
++++ b/third_party/grpc/src/core/lib/gpr/log_posix.cc
+@@ -31,7 +31,7 @@
+ #include <string.h>
+ #include <time.h>
+
+-static intptr_t gettid(void) { return (intptr_t)pthread_self(); }
++static intptr_t sys_gettid(void) { return (intptr_t)pthread_self(); }
+
+ void gpr_log(const char* file, int line, gpr_log_severity severity,
+              const char* format, ...) {
+@@ -86,7 +86,7 @@ void gpr_default_log(gpr_log_func_args* args) {
+   char* prefix;
+   gpr_asprintf(&prefix, "%s%s.%09d %7" PRIdPTR " %s:%d]",
+                gpr_log_severity_string(args->severity), time_buffer,
+-               (int)(now.tv_nsec), gettid(), display_file, args->line);
++               (int)(now.tv_nsec), sys_gettid(), display_file, args->line);
+
+   fprintf(stderr, "%-70s %s\n", prefix, args->message);
+   gpr_free(prefix);
+diff --git a/third_party/grpc/src/core/lib/iomgr/ev_epollex_linux.cc b/src/core/lib/iomgr/ev_epollex_linux.cc
+index c2d80c08ddb..4a83cb6c215 100644
+--- a/third_party/grpc/src/core/lib/iomgr/ev_epollex_linux.cc
++++ b/third_party/grpc/src/core/lib/iomgr/ev_epollex_linux.cc
+@@ -1077,7 +1077,7 @@ static void end_worker(grpc_pollset* pollset, grpc_pollset_worker* worker,
+ }
+
+ #ifndef NDEBUG
+-static long gettid(void) { return syscall(__NR_gettid); }
++static long sys_gettid(void) { return syscall(__NR_gettid); }
+ #endif
+
+ /* pollset->mu lock must be held by the caller before calling this.
+@@ -1097,7 +1097,7 @@ static grpc_error* pollset_work(grpc_pollset* pollset,
+ #define WORKER_PTR (&worker)
+ #endif
+ #ifndef NDEBUG
+-  WORKER_PTR->originator = gettid();
++  WORKER_PTR->originator = sys_gettid();
+ #endif
+   if (GRPC_TRACE_FLAG_ENABLED(grpc_polling_trace)) {
+     gpr_log(GPR_INFO,
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_0_29/src-deps.json b/pkgs/development/tools/build-managers/bazel/bazel_0_29/src-deps.json
new file mode 100644
index 00000000000..f93794249ec
--- /dev/null
+++ b/pkgs/development/tools/build-managers/bazel/bazel_0_29/src-deps.json
@@ -0,0 +1,506 @@
+{
+    "0.16.2.zip": {
+        "name": "0.16.2.zip",
+        "sha256": "9b72bb0aea72d7cbcfc82a01b1e25bf3d85f791e790ddec16c65e2d906382ee0",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_nodejs/archive/0.16.2.zip",
+            "https://github.com/bazelbuild/rules_nodejs/archive/0.16.2.zip"
+        ]
+    },
+    "0.27.1.tar.gz": {
+        "name": "0.27.1.tar.gz",
+        "sha256": "28cb3666da80fbc62d4c46814f5468dd5d0b59f9064c0b933eee3140d706d330",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/bazel-toolchains/archive/0.27.1.tar.gz",
+            "https://github.com/bazelbuild/bazel-toolchains/archive/0.27.1.tar.gz"
+        ]
+    },
+    "0d5f3f2768c6ca2faca0079a997a97ce22997a0c.zip": {
+        "name": "0d5f3f2768c6ca2faca0079a997a97ce22997a0c.zip",
+        "sha256": "36fa66d4d49debd71d05fba55c1353b522e8caef4a20f8080a3d17cdda001d89",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_cc/archive/0d5f3f2768c6ca2faca0079a997a97ce22997a0c.zip",
+            "https://github.com/bazelbuild/rules_cc/archive/0d5f3f2768c6ca2faca0079a997a97ce22997a0c.zip"
+        ]
+    },
+    "41c28e43dffbae39c52dd4b91932d1209e5a8893.tar.gz": {
+        "name": "41c28e43dffbae39c52dd4b91932d1209e5a8893.tar.gz",
+        "sha256": "fdc34621839104b57363a258eab9d821b02ff7837923cfe7fb6fd67182780829",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/skydoc/archive/41c28e43dffbae39c52dd4b91932d1209e5a8893.tar.gz",
+            "https://github.com/bazelbuild/skydoc/archive/41c28e43dffbae39c52dd4b91932d1209e5a8893.tar.gz"
+        ]
+    },
+    "441afe1bfdadd6236988e9cac159df6b5a9f5a98.zip": {
+        "name": "441afe1bfdadd6236988e9cac159df6b5a9f5a98.zip",
+        "sha256": "a07fe5e75964361885db725039c2ba673f0ee0313d971ae4f50c9b18cd28b0b5",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/platforms/archive/441afe1bfdadd6236988e9cac159df6b5a9f5a98.zip",
+            "https://github.com/bazelbuild/platforms/archive/441afe1bfdadd6236988e9cac159df6b5a9f5a98.zip"
+        ]
+    },
+    "7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip": {
+        "name": "7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip",
+        "sha256": "bc81f1ba47ef5cc68ad32225c3d0e70b8c6f6077663835438da8d5733f917598",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip",
+            "https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip"
+        ]
+    },
+    "8ccf4f1c351928b55d5dddf3672e3667f6978d60.tar.gz": {
+        "name": "8ccf4f1c351928b55d5dddf3672e3667f6978d60.tar.gz",
+        "sha256": "d868ce50d592ef4aad7dec4dd32ae68d2151261913450fac8390b3fd474bb898",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_sass/archive/8ccf4f1c351928b55d5dddf3672e3667f6978d60.tar.gz",
+            "https://github.com/bazelbuild/rules_sass/archive/8ccf4f1c351928b55d5dddf3672e3667f6978d60.tar.gz"
+        ]
+    },
+    "android_tools_pkg-0.8.tar.gz": {
+        "name": "android_tools_pkg-0.8.tar.gz",
+        "sha256": "a9eac6e1b27d5549edaaa724b20eb1cdae6253b84f44d5744c30372bd523cfcd",
+        "urls": [
+            "https://mirror.bazel.build/bazel_android_tools/android_tools_pkg-0.8.tar.gz"
+        ]
+    },
+    "b0cc14be5da05168b01db282fe93bdf17aa2b9f4.tar.gz": {
+        "name": "b0cc14be5da05168b01db282fe93bdf17aa2b9f4.tar.gz",
+        "sha256": "88b0a90433866b44bb4450d4c30bc5738b8c4f9c9ba14e9661deb123f56a833d",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_proto/archive/b0cc14be5da05168b01db282fe93bdf17aa2b9f4.tar.gz",
+            "https://github.com/bazelbuild/rules_proto/archive/b0cc14be5da05168b01db282fe93bdf17aa2b9f4.tar.gz"
+        ]
+    },
+    "bazel_j2objc": {
+        "name": "bazel_j2objc",
+        "sha256": "8d3403b5b7db57e347c943d214577f6879e5b175c2b59b7e075c0b6453330e9b",
+        "strip_prefix": "j2objc-2.5",
+        "urls": [
+            "https://miirror.bazel.build/github.com/google/j2objc/releases/download/2.5/j2objc-2.5.zip",
+            "https://github.com/google/j2objc/releases/download/2.5/j2objc-2.5.zip"
+        ]
+    },
+    "bazel_skylib": {
+        "name": "bazel_skylib",
+        "sha256": "ba5d15ca230efca96320085d8e4d58da826d1f81b444ef8afccd8b23e0799b52",
+        "strip_prefix": "bazel-skylib-f83cb8dd6f5658bc574ccd873e25197055265d1c",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/archive/f83cb8dd6f5658bc574ccd873e25197055265d1c.tar.gz",
+            "https://github.com/bazelbuild/bazel-skylib/archive/f83cb8dd6f5658bc574ccd873e25197055265d1c.tar.gz"
+        ]
+    },
+    "bazel_toolchains": {
+        "name": "bazel_toolchains",
+        "sha256": "28cb3666da80fbc62d4c46814f5468dd5d0b59f9064c0b933eee3140d706d330",
+        "strip_prefix": "bazel-toolchains-0.27.1",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/bazel-toolchains/archive/0.27.1.tar.gz",
+            "https://github.com/bazelbuild/bazel-toolchains/archive/0.27.1.tar.gz"
+        ]
+    },
+    "build_bazel_rules_nodejs": {
+        "name": "build_bazel_rules_nodejs",
+        "sha256": "9b72bb0aea72d7cbcfc82a01b1e25bf3d85f791e790ddec16c65e2d906382ee0",
+        "strip_prefix": "rules_nodejs-0.16.2",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_nodejs/archive/0.16.2.zip",
+            "https://github.com/bazelbuild/rules_nodejs/archive/0.16.2.zip"
+        ]
+    },
+    "com_google_googletest": {
+        "name": "com_google_googletest",
+        "sha256": "0fb00ff413f6b9b80ccee44a374ca7a18af7315aea72a43c62f2acd1ca74e9b5",
+        "strip_prefix": "googletest-f13bbe2992d188e834339abe6f715b2b2f840a77",
+        "urls": [
+            "https://mirror.bazel.build/github.com/google/googletest/archive/f13bbe2992d188e834339abe6f715b2b2f840a77.tar.gz",
+            "https://github.com/google/googletest/archive/f13bbe2992d188e834339abe6f715b2b2f840a77.tar.gz"
+        ]
+    },
+    "coverage_output_generator-v1.0.zip": {
+        "name": "coverage_output_generator-v1.0.zip",
+        "sha256": "cc470e529fafb6165b5be3929ff2d99b38429b386ac100878687416603a67889",
+        "urls": [
+            "https://mirror.bazel.build/bazel_coverage_output_generator/releases/coverage_output_generator-v1.0.zip"
+        ]
+    },
+    "desugar_jdk_libs": {
+        "name": "desugar_jdk_libs",
+        "sha256": "fe2e04f91ce8c59d49d91b8102edc6627c6fa2906c1b0e7346f01419ec4f419d",
+        "strip_prefix": "desugar_jdk_libs-e0b0291b2c51fbe5a7cfa14473a1ae850f94f021",
+        "urls": [
+            "https://mirror.bazel.build/github.com/google/desugar_jdk_libs/archive/e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip",
+            "https://github.com/google/desugar_jdk_libs/archive/e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip"
+        ]
+    },
+    "e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip": {
+        "name": "e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip",
+        "sha256": "fe2e04f91ce8c59d49d91b8102edc6627c6fa2906c1b0e7346f01419ec4f419d",
+        "urls": [
+            "https://mirror.bazel.build/github.com/google/desugar_jdk_libs/archive/e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip",
+            "https://github.com/google/desugar_jdk_libs/archive/e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip"
+        ]
+    },
+    "f83cb8dd6f5658bc574ccd873e25197055265d1c.tar.gz": {
+        "name": "f83cb8dd6f5658bc574ccd873e25197055265d1c.tar.gz",
+        "sha256": "ba5d15ca230efca96320085d8e4d58da826d1f81b444ef8afccd8b23e0799b52",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/archive/f83cb8dd6f5658bc574ccd873e25197055265d1c.tar.gz",
+            "https://github.com/bazelbuild/bazel-skylib/archive/f83cb8dd6f5658bc574ccd873e25197055265d1c.tar.gz"
+        ]
+    },
+    "io_bazel_rules_sass": {
+        "name": "io_bazel_rules_sass",
+        "sha256": "d868ce50d592ef4aad7dec4dd32ae68d2151261913450fac8390b3fd474bb898",
+        "strip_prefix": "rules_sass-8ccf4f1c351928b55d5dddf3672e3667f6978d60",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_sass/archive/8ccf4f1c351928b55d5dddf3672e3667f6978d60.tar.gz",
+            "https://github.com/bazelbuild/rules_sass/archive/8ccf4f1c351928b55d5dddf3672e3667f6978d60.tar.gz"
+        ]
+    },
+    "io_bazel_skydoc": {
+        "name": "io_bazel_skydoc",
+        "sha256": "fdc34621839104b57363a258eab9d821b02ff7837923cfe7fb6fd67182780829",
+        "strip_prefix": "skydoc-41c28e43dffbae39c52dd4b91932d1209e5a8893",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/skydoc/archive/41c28e43dffbae39c52dd4b91932d1209e5a8893.tar.gz",
+            "https://github.com/bazelbuild/skydoc/archive/41c28e43dffbae39c52dd4b91932d1209e5a8893.tar.gz"
+        ]
+    },
+    "java_tools_javac11_darwin-v4.0.zip": {
+        "name": "java_tools_javac11_darwin-v4.0.zip",
+        "sha256": "fbf5bf22e9aab9c622e4c8c59314a1eef5ea09eafc5672b4f3250dc0b971bbcc",
+        "urls": [
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v4.0/java_tools_javac11_darwin-v4.0.zip"
+        ]
+    },
+    "java_tools_javac11_linux-v4.0.zip": {
+        "name": "java_tools_javac11_linux-v4.0.zip",
+        "sha256": "96e223094a12c842a66db0bb7bb6866e88e26e678f045842911f9bd6b47161f5",
+        "urls": [
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v4.0/java_tools_javac11_linux-v4.0.zip"
+        ]
+    },
+    "java_tools_javac11_windows-v4.0.zip": {
+        "name": "java_tools_javac11_windows-v4.0.zip",
+        "sha256": "a1de51447b2ba2eab923d589ba6c72c289c16e6091e6a3bb3e67a05ef4ad200c",
+        "urls": [
+            "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v4.0/java_tools_javac11_windows-v4.0.zip"
+        ]
+    },
+    "java_tools_langtools_javac10": {
+        "name": "java_tools_langtools_javac10",
+        "sha256": "0e9c9ac5ef17869de3cb8c3497c4c0d31836ef7b63efe1690506f53783adb212",
+        "urls": [
+            "https://mirror.bazel.build/bazel_java_tools/jdk_langtools/langtools_jdk10_v2.zip"
+        ]
+    },
+    "java_tools_langtools_javac11": {
+        "name": "java_tools_langtools_javac11",
+        "sha256": "cf0814fa002ef3d794582bb086516d8c9ed0958f83f19799cdb08949019fe4c7",
+        "urls": [
+            "https://mirror.bazel.build/bazel_java_tools/jdk_langtools/langtools_jdk11_v2.zip"
+        ]
+    },
+    "java_tools_langtools_javac12": {
+        "name": "java_tools_langtools_javac12",
+        "sha256": "99b107105165a91df82cd7cf82a8efb930d803fb7de1663cf7f780142104cd14",
+        "urls": [
+            "https://mirror.bazel.build/bazel_java_tools/jdk_langtools/langtools_jdk12.zip"
+        ]
+    },
+    "java_tools_langtools_javac9": {
+        "name": "java_tools_langtools_javac9",
+        "sha256": "d94befcfb325a9a62aebc2052e631fde2322b4df5c82a19ed260b38ba12a0ad1",
+        "urls": [
+            "https://mirror.bazel.build/bazel_java_tools/jdk_langtools/langtools_jdk9_v2.zip"
+        ]
+    },
+    "jdk10-server-release-1804.tar.xz": {
+        "name": "jdk10-server-release-1804.tar.xz",
+        "sha256": "b7098b7aaf6ee1ffd4a2d0371a0be26c5a5c87f6aebbe46fe9a92c90583a84be",
+        "urls": [
+            "https://mirror.bazel.build/openjdk.linaro.org/releases/jdk10-server-release-1804.tar.xz"
+        ]
+    },
+    "jdk9-server-release-1708.tar.xz": {
+        "name": "jdk9-server-release-1708.tar.xz",
+        "sha256": "72e7843902b0395e2d30e1e9ad2a5f05f36a4bc62529828bcbc698d54aec6022",
+        "urls": [
+            "https://mirror.bazel.build/openjdk.linaro.org/releases/jdk9-server-release-1708.tar.xz"
+        ]
+    },
+    "openjdk10_linux_archive": {
+        "build_file_content": "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        "name": "openjdk10_linux_archive",
+        "sha256": "b3c2d762091a615b0c1424ebbd05d75cc114da3bf4f25a0dec5c51ea7e84146f",
+        "strip_prefix": "zulu10.2+3-jdk10.0.1-linux_x64",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu10.2+3-jdk10.0.1/zulu10.2+3-jdk10.0.1-linux_x64.tar.gz"
+        ]
+    },
+    "openjdk11_linux_archive": {
+        "build_file_content": "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        "name": "openjdk11_linux_archive",
+        "sha256": "ddb0fd4526089cf1ce2db36282c282263f587a9e8be373fa02f511a12923cc48",
+        "strip_prefix": "zulu11.31.11-ca-jdk11.0.3-linux_x64",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.31.11-ca-jdk11.0.3/zulu11.31.11-ca-jdk11.0.3-linux_x64.tar.gz"
+        ]
+    },
+    "openjdk12_linux_archive": {
+        "build_file_content": "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        "name": "openjdk12_linux_archive",
+        "sha256": "529c99841d69e11a85aea967ccfb9d0fd40b98c5b68dbe1d059002655e0a9c13",
+        "strip_prefix": "zulu12.2.3-ca-jdk12.0.1-linux_x64",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu12.2.3-ca-jdk12.0.1/zulu12.2.3-ca-jdk12.0.1-linux_x64.tar.gz"
+        ]
+    },
+    "openjdk9_linux_archive": {
+        "build_file_content": "java_runtime(name = 'runtime', srcs =  glob(['**']), visibility = ['//visibility:public'])",
+        "name": "openjdk9_linux_archive",
+        "sha256": "45f2dfbee93b91b1468cf81d843fc6d9a47fef1f831c0b7ceff4f1eb6e6851c8",
+        "strip_prefix": "zulu9.0.7.1-jdk9.0.7-linux_x64",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu-9.0.7.1-jdk9.0.7/zulu9.0.7.1-jdk9.0.7-linux_x64.tar.gz"
+        ]
+    },
+    "openjdk_linux": {
+        "downloaded_file_path": "zulu-linux.tar.gz",
+        "name": "openjdk_linux",
+        "sha256": "460d8a4f0c0204160b48086e341b22943c9cca471b195340e75b38ae9eb33c1c",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.29.3-ca-jdk11.0.2/zulu11.29.3-ca-jdk11.0.2-linux_x64-allmodules-90755145cb6e6418584d8603cd5fa9afbb30aecc-1549209950.tar.gz"
+        ]
+    },
+    "openjdk_linux_aarch64": {
+        "downloaded_file_path": "zulu-linux-aarch64.tar.gz",
+        "name": "openjdk_linux_aarch64",
+        "sha256": "23c37c0c3a8fdcbc68e96e70ff5c5c020c14db76deaae9b547849afda4586e5e",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.31.15-ca-jdk11.0.3/zulu11.31.15-ca-jdk11.0.3-linux_aarch64-allmodules-c82eb4878c7dc829455caeb915affe36c89df06f-1561630858.tar.gz"
+        ]
+    },
+    "openjdk_linux_aarch64_minimal": {
+        "downloaded_file_path": "zulu-linux-aarch64-minimal.tar.gz",
+        "name": "openjdk_linux_aarch64_minimal",
+        "sha256": "7af2583fe5ef0a781d4a9dca0c0160d42e7db1305ec1b66f98aa44c91cc875df",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.31.15-ca-jdk11.0.3/zulu11.31.15-ca-jdk11.0.3-linux_aarch64-minimal-c82eb4878c7dc829455caeb915affe36c89df06f-1561630858.tar.gz"
+        ]
+    },
+    "openjdk_linux_aarch64_vanilla": {
+        "downloaded_file_path": "zulu-linux-aarch64-vanilla.tar.gz",
+        "name": "openjdk_linux_aarch64_vanilla",
+        "sha256": "3b0d91611b1bdc4d409afcf9eab4f0e7f4ae09f88fc01bd9f2b48954882ae69b",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.31.15-ca-jdk11.0.3/zulu11.31.15-ca-jdk11.0.3-linux_aarch64.tar.gz"
+        ]
+    },
+    "openjdk_linux_minimal": {
+        "downloaded_file_path": "zulu-linux-minimal.tar.gz",
+        "name": "openjdk_linux_minimal",
+        "sha256": "5123bc8dd21886761d1fd9ca0fb1898b3372d7243064a070ec81ca9c9d1a6791",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.29.3-ca-jdk11.0.2/zulu11.29.3-ca-jdk11.0.2-linux_x64-minimal-524ae2ca2a782c9f15e00f08bd35b3f8ceacbd7f-1556011926.tar.gz"
+        ]
+    },
+    "openjdk_linux_vanilla": {
+        "downloaded_file_path": "zulu-linux-vanilla.tar.gz",
+        "name": "openjdk_linux_vanilla",
+        "sha256": "f3f44b6235508e87b760bf37a49e186cc1fa4e9cd28384c4dbf5a33991921e08",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.29.3-ca-jdk11.0.2/zulu11.29.3-ca-jdk11.0.2-linux_x64.tar.gz"
+        ]
+    },
+    "openjdk_macos": {
+        "downloaded_file_path": "zulu-macos.tar.gz",
+        "name": "openjdk_macos",
+        "sha256": "8fa61d85ca6f657d646fdb50cfc8634987f8f7d8a3250ed39fb7364647633252",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.29.3-ca-jdk11.0.2/zulu11.29.3-ca-jdk11.0.2-macosx_x64-allmodules-90755145cb6e6418584d8603cd5fa9afbb30aecc-1549209951.tar.gz"
+        ]
+    },
+    "openjdk_macos_minimal": {
+        "downloaded_file_path": "zulu-macos-minimal.tar.gz",
+        "name": "openjdk_macos_minimal",
+        "sha256": "ac56e44db46fd56ac78b39b6823daed4faa74a2677ac340c7d217f863884ec0f",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.29.3-ca-jdk11.0.2/zulu11.29.3-ca-jdk11.0.2-macosx_x64-minimal-524ae2ca2a782c9f15e00f08bd35b3f8ceacbd7f-1556003114.tar.gz"
+        ]
+    },
+    "openjdk_macos_vanilla": {
+        "downloaded_file_path": "zulu-macos-vanilla.tar.gz",
+        "name": "openjdk_macos_vanilla",
+        "sha256": "059f8e3484bf07b63a8f2820d5f528f473eff1befdb1896ee4f8ff06be3b8d8f",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.29.3-ca-jdk11.0.2/zulu11.29.3-ca-jdk11.0.2-macosx_x64.zip"
+        ]
+    },
+    "openjdk_win": {
+        "downloaded_file_path": "zulu-win.zip",
+        "name": "openjdk_win",
+        "sha256": "e6ddb361309f8e84eb5fb5ad8b0f5cc031ba3679910139262c31efd8f7579d05",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.29.3-ca-jdk11.0.2/zulu11.29.3-ca-jdk11.0.2-win_x64-allmodules-90755145cb6e6418584d8603cd5fa9afbb30aecc-1549209972.zip"
+        ]
+    },
+    "openjdk_win_minimal": {
+        "downloaded_file_path": "zulu-win-minimal.zip",
+        "name": "openjdk_win_minimal",
+        "sha256": "8e5dada6e9ebcc9ce29b4d051449bb95d3ee1e620e166da862224bbf15211f8b",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.29.3-ca-jdk11.0.2/zulu11.29.3-ca-jdk11.0.2-win_x64-minimal-524ae2ca2a782c9f15e00f08bd35b3f8ceacbd7f-1556003136.zip"
+        ]
+    },
+    "openjdk_win_vanilla": {
+        "downloaded_file_path": "zulu-win-vanilla.zip",
+        "name": "openjdk_win_vanilla",
+        "sha256": "e1f5b4ce1b9148140fae2fcfb8a96d1c9b7eac5b8df0e13fbcad9b8561284880",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.29.3-ca-jdk11.0.2/zulu11.29.3-ca-jdk11.0.2-win_x64.zip"
+        ]
+    },
+    "platforms": {
+        "name": "platforms",
+        "sha256": "a07fe5e75964361885db725039c2ba673f0ee0313d971ae4f50c9b18cd28b0b5",
+        "strip_prefix": "platforms-441afe1bfdadd6236988e9cac159df6b5a9f5a98",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/platforms/archive/441afe1bfdadd6236988e9cac159df6b5a9f5a98.zip",
+            "https://github.com/bazelbuild/platforms/archive/441afe1bfdadd6236988e9cac159df6b5a9f5a98.zip"
+        ]
+    },
+    "rules_cc": {
+        "name": "rules_cc",
+        "sha256": "36fa66d4d49debd71d05fba55c1353b522e8caef4a20f8080a3d17cdda001d89",
+        "strip_prefix": "rules_cc-0d5f3f2768c6ca2faca0079a997a97ce22997a0c",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_cc/archive/0d5f3f2768c6ca2faca0079a997a97ce22997a0c.zip",
+            "https://github.com/bazelbuild/rules_cc/archive/0d5f3f2768c6ca2faca0079a997a97ce22997a0c.zip"
+        ]
+    },
+    "rules_java": {
+        "name": "rules_java",
+        "sha256": "bc81f1ba47ef5cc68ad32225c3d0e70b8c6f6077663835438da8d5733f917598",
+        "strip_prefix": "rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip",
+            "https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip"
+        ]
+    },
+    "rules_pkg": {
+        "name": "rules_pkg",
+        "sha256": "5bdc04987af79bd27bc5b00fe30f59a858f77ffa0bd2d8143d5b31ad8b1bd71c",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/rules_pkg-0.2.0.tar.gz",
+            "https://github.com/bazelbuild/rules_pkg/releases/download/0.2.0/rules_pkg-0.2.0.tar.gz"
+        ]
+    },
+    "rules_pkg-0.2.0.tar.gz": {
+        "name": "rules_pkg-0.2.0.tar.gz",
+        "sha256": "5bdc04987af79bd27bc5b00fe30f59a858f77ffa0bd2d8143d5b31ad8b1bd71c",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/rules_pkg-0.2.0.tar.gz",
+            "https://github.com/bazelbuild/rules_pkg/releases/download/0.2.0/rules_pkg-0.2.0.tar.gz"
+        ]
+    },
+    "rules_proto": {
+        "name": "rules_proto",
+        "sha256": "88b0a90433866b44bb4450d4c30bc5738b8c4f9c9ba14e9661deb123f56a833d",
+        "strip_prefix": "rules_proto-b0cc14be5da05168b01db282fe93bdf17aa2b9f4",
+        "urls": [
+            "https://mirror.bazel.build/github.com/bazelbuild/rules_proto/archive/b0cc14be5da05168b01db282fe93bdf17aa2b9f4.tar.gz",
+            "https://github.com/bazelbuild/rules_proto/archive/b0cc14be5da05168b01db282fe93bdf17aa2b9f4.tar.gz"
+        ]
+    },
+    "zulu10.2+3-jdk10.0.1-linux_x64-allmodules.tar.gz": {
+        "name": "zulu10.2+3-jdk10.0.1-linux_x64-allmodules.tar.gz",
+        "sha256": "57fad3602e74c79587901d6966d3b54ef32cb811829a2552163185d5064fe9b5",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu10.2+3-jdk10.0.1/zulu10.2+3-jdk10.0.1-linux_x64-allmodules.tar.gz"
+        ]
+    },
+    "zulu10.2+3-jdk10.0.1-macosx_x64-allmodules.tar.gz": {
+        "name": "zulu10.2+3-jdk10.0.1-macosx_x64-allmodules.tar.gz",
+        "sha256": "e669c9a897413d855b550b4e39d79614392e6fb96f494e8ef99a34297d9d85d3",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu10.2+3-jdk10.0.1/zulu10.2+3-jdk10.0.1-macosx_x64-allmodules.tar.gz"
+        ]
+    },
+    "zulu10.2+3-jdk10.0.1-win_x64-allmodules.zip": {
+        "name": "zulu10.2+3-jdk10.0.1-win_x64-allmodules.zip",
+        "sha256": "c39e7700a8d41794d60985df5a20352435196e78ecbc6a2b30df7be8637bffd5",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu10.2+3-jdk10.0.1/zulu10.2+3-jdk10.0.1-win_x64-allmodules.zip"
+        ]
+    },
+    "zulu11.2.3-jdk11.0.1-linux_x64.tar.gz": {
+        "name": "zulu11.2.3-jdk11.0.1-linux_x64.tar.gz",
+        "sha256": "232b1c3511f0d26e92582b7c3cc363be7ac633e371854ca2f2e9f2b50eb72a75",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.2.3-jdk11.0.1/zulu11.2.3-jdk11.0.1-linux_x64.tar.gz"
+        ]
+    },
+    "zulu11.2.3-jdk11.0.1-macosx_x64.tar.gz": {
+        "name": "zulu11.2.3-jdk11.0.1-macosx_x64.tar.gz",
+        "sha256": "1edf366ee821e5db8e348152fcb337b28dfd6bf0f97943c270dcc6747cedb6cb",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.2.3-jdk11.0.1/zulu11.2.3-jdk11.0.1-macosx_x64.tar.gz"
+        ]
+    },
+    "zulu11.2.3-jdk11.0.1-win_x64.zip": {
+        "name": "zulu11.2.3-jdk11.0.1-win_x64.zip",
+        "sha256": "8e1e2b8347de6746f3fd1538840dd643201533ab113abc4ed93678e342d28aa3",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.2.3-jdk11.0.1/zulu11.2.3-jdk11.0.1-win_x64.zip"
+        ]
+    },
+    "zulu11.29.3-ca-jdk11.0.2-linux_x64.tar.gz": {
+        "name": "zulu11.29.3-ca-jdk11.0.2-linux_x64.tar.gz",
+        "sha256": "f3f44b6235508e87b760bf37a49e186cc1fa4e9cd28384c4dbf5a33991921e08",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.29.3-ca-jdk11.0.2/zulu11.29.3-ca-jdk11.0.2-linux_x64.tar.gz"
+        ]
+    },
+    "zulu11.29.3-ca-jdk11.0.2-macosx_x64.zip": {
+        "name": "zulu11.29.3-ca-jdk11.0.2-macosx_x64.zip",
+        "sha256": "059f8e3484bf07b63a8f2820d5f528f473eff1befdb1896ee4f8ff06be3b8d8f",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.29.3-ca-jdk11.0.2/zulu11.29.3-ca-jdk11.0.2-macosx_x64.zip"
+        ]
+    },
+    "zulu11.29.3-ca-jdk11.0.2-win_x64.zip": {
+        "name": "zulu11.29.3-ca-jdk11.0.2-win_x64.zip",
+        "sha256": "e1f5b4ce1b9148140fae2fcfb8a96d1c9b7eac5b8df0e13fbcad9b8561284880",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.29.3-ca-jdk11.0.2/zulu11.29.3-ca-jdk11.0.2-win_x64.zip"
+        ]
+    },
+    "zulu11.31.15-ca-jdk11.0.3-linux_aarch64.tar.gz": {
+        "name": "zulu11.31.15-ca-jdk11.0.3-linux_aarch64.tar.gz",
+        "sha256": "3b0d91611b1bdc4d409afcf9eab4f0e7f4ae09f88fc01bd9f2b48954882ae69b",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu11.31.15-ca-jdk11.0.3/zulu11.31.15-ca-jdk11.0.3-linux_aarch64.tar.gz"
+        ]
+    },
+    "zulu9.0.7.1-jdk9.0.7-linux_x64-allmodules.tar.gz": {
+        "name": "zulu9.0.7.1-jdk9.0.7-linux_x64-allmodules.tar.gz",
+        "sha256": "f27cb933de4f9e7fe9a703486cf44c84bc8e9f138be0c270c9e5716a32367e87",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu-9.0.7.1-jdk9.0.7/zulu9.0.7.1-jdk9.0.7-linux_x64-allmodules.tar.gz"
+        ]
+    },
+    "zulu9.0.7.1-jdk9.0.7-macosx_x64-allmodules.tar.gz": {
+        "name": "zulu9.0.7.1-jdk9.0.7-macosx_x64-allmodules.tar.gz",
+        "sha256": "404e7058ff91f956612f47705efbee8e175a38b505fb1b52d8c1ea98718683de",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu-9.0.7.1-jdk9.0.7/zulu9.0.7.1-jdk9.0.7-macosx_x64-allmodules.tar.gz"
+        ]
+    },
+    "zulu9.0.7.1-jdk9.0.7-win_x64-allmodules.zip": {
+        "name": "zulu9.0.7.1-jdk9.0.7-win_x64-allmodules.zip",
+        "sha256": "e738829017f107e7a7cd5069db979398ec3c3f03ef56122f89ba38e7374f63ed",
+        "urls": [
+            "https://mirror.bazel.build/openjdk/azul-zulu-9.0.7.1-jdk9.0.7/zulu9.0.7.1-jdk9.0.7-win_x64-allmodules.zip"
+        ]
+    }
+}
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_1/default.nix b/pkgs/development/tools/build-managers/bazel/bazel_1/default.nix
index ffb5714631c..eff8aede6c1 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel_1/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/bazel_1/default.nix
@@ -1,7 +1,7 @@
 { stdenv, callPackage, lib, fetchurl, fetchFromGitHub
 , runCommand, runCommandCC, makeWrapper, recurseIntoAttrs
 # this package (through the fixpoint glass)
-, bazel_1
+, bazel_self
 , lr, xe, zip, unzip, bash, writeCBin, coreutils
 , which, gawk, gnused, gnutar, gnugrep, gzip, findutils
 # updater
@@ -247,7 +247,7 @@ stdenv.mkDerivation rec {
             touch $out
           '');
 
-      bazelWithNixHacks = bazel_1.override { enableNixHacks = true; };
+      bazelWithNixHacks = bazel_self.override { enableNixHacks = true; };
 
       bazel-examples = fetchFromGitHub {
         owner = "bazelbuild";
@@ -258,20 +258,20 @@ stdenv.mkDerivation rec {
 
     in (if !stdenv.hostPlatform.isDarwin then {
       # `extracted` doesn’t work on darwin
-      shebang = callPackage ./shebang-test.nix { inherit runLocal extracted bazelTest distDir; };
+      shebang = callPackage ../shebang-test.nix { inherit runLocal extracted bazelTest distDir; };
     } else {}) // {
-      bashTools = callPackage ./bash-tools-test.nix { inherit runLocal bazelTest distDir; };
-      cpp = callPackage ./cpp-test.nix { inherit runLocal bazelTest bazel-examples distDir; };
-      java = callPackage ./java-test.nix { inherit runLocal bazelTest bazel-examples distDir; };
-      protobuf = callPackage ./protobuf-test.nix { inherit runLocal bazelTest distDir; };
-      pythonBinPath = callPackage ./python-bin-path-test.nix { inherit runLocal bazelTest distDir; };
-
-      bashToolsWithNixHacks = callPackage ./bash-tools-test.nix { inherit runLocal bazelTest distDir; bazel = bazelWithNixHacks; };
-
-      cppWithNixHacks = callPackage ./cpp-test.nix { inherit runLocal bazelTest bazel-examples distDir; bazel = bazelWithNixHacks; };
-      javaWithNixHacks = callPackage ./java-test.nix { inherit runLocal bazelTest bazel-examples distDir; bazel = bazelWithNixHacks; };
-      protobufWithNixHacks = callPackage ./protobuf-test.nix { inherit runLocal bazelTest distDir; bazel = bazelWithNixHacks; };
-      pythonBinPathWithNixHacks = callPackage ./python-bin-path-test.nix { inherit runLocal bazelTest distDir; bazel = bazelWithNixHacks; };
+      bashTools = callPackage ../bash-tools-test.nix { inherit runLocal bazelTest distDir; };
+      cpp = callPackage ../cpp-test.nix { inherit runLocal bazelTest bazel-examples distDir; };
+      java = callPackage ../java-test.nix { inherit runLocal bazelTest bazel-examples distDir; };
+      protobuf = callPackage ../protobuf-test.nix { inherit runLocal bazelTest distDir; };
+      pythonBinPath = callPackage ../python-bin-path-test.nix { inherit runLocal bazelTest distDir; };
+
+      bashToolsWithNixHacks = callPackage ../bash-tools-test.nix { inherit runLocal bazelTest distDir; bazel = bazelWithNixHacks; };
+
+      cppWithNixHacks = callPackage ../cpp-test.nix { inherit runLocal bazelTest bazel-examples distDir; bazel = bazelWithNixHacks; };
+      javaWithNixHacks = callPackage ../java-test.nix { inherit runLocal bazelTest bazel-examples distDir; bazel = bazelWithNixHacks; };
+      protobufWithNixHacks = callPackage ../protobuf-test.nix { inherit runLocal bazelTest distDir; bazel = bazelWithNixHacks; };
+      pythonBinPathWithNixHacks = callPackage ../python-bin-path-test.nix { inherit runLocal bazelTest distDir; bazel = bazelWithNixHacks; };
 
       # downstream packages using buildBazelPackage
       # fixed-output hashes of the fetch phase need to be spot-checked manually
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_2/default.nix b/pkgs/development/tools/build-managers/bazel/bazel_2/default.nix
new file mode 100644
index 00000000000..edda48c4b99
--- /dev/null
+++ b/pkgs/development/tools/build-managers/bazel/bazel_2/default.nix
@@ -0,0 +1,561 @@
+{ stdenv, callPackage, lib, fetchurl, fetchFromGitHub
+, runCommand, runCommandCC, makeWrapper, recurseIntoAttrs
+# this package (through the fixpoint glass)
+, bazel_self
+, lr, xe, zip, unzip, bash, writeCBin, coreutils
+, which, gawk, gnused, gnutar, gnugrep, gzip, findutils
+# updater
+, python27, python3, writeScript
+# Apple dependencies
+, cctools, libcxx, CoreFoundation, CoreServices, Foundation
+# Allow to independently override the jdks used to build and run respectively
+, buildJdk, runJdk
+, buildJdkName
+, runtimeShell
+# Downstream packages for tests
+, bazel-watcher
+# Always assume all markers valid (this is needed because we remove markers; they are non-deterministic).
+# Also, don't clean up environment variables (so that NIX_ environment variables are passed to compilers).
+, enableNixHacks ? false
+, gcc-unwrapped
+, autoPatchelfHook
+, file
+, substituteAll
+, writeTextFile
+}:
+
+let
+  version = "2.1.0";
+
+  src = fetchurl {
+    url = "https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip";
+    sha256 = "0ijz9lxralyw18r5ra2h79jnafk5521ncr3knaip74cqa28csw9k";
+  };
+
+  # Update with `eval $(nix-build -A bazel.updater)`,
+  # then add new dependencies from the dict in ./src-deps.json as required.
+  srcDeps = lib.attrsets.attrValues srcDepsSet;
+  srcDepsSet =
+    let
+      srcs = (builtins.fromJSON (builtins.readFile ./src-deps.json));
+      toFetchurl = d: lib.attrsets.nameValuePair d.name (fetchurl {
+        urls = d.urls;
+        sha256 = d.sha256;
+        });
+        in builtins.listToAttrs (map toFetchurl [
+      srcs.desugar_jdk_libs
+      srcs.io_bazel_skydoc
+      srcs.bazel_skylib
+      srcs.io_bazel_rules_sass
+      srcs.platforms
+      (if stdenv.hostPlatform.isDarwin
+       then srcs."java_tools_javac11_darwin-v7.0.zip"
+       else srcs."java_tools_javac11_linux-v7.0.zip")
+      srcs."coverage_output_generator-v2.1.zip"
+      srcs.build_bazel_rules_nodejs
+      srcs."android_tools_pkg-0.13.tar.gz"
+      srcs."0.28.3.tar.gz"
+      srcs.rules_pkg
+      srcs.rules_cc
+      srcs.rules_java
+      srcs.rules_proto
+      ]);
+
+  distDir = runCommand "bazel-deps" {} ''
+    mkdir -p $out
+    for i in ${builtins.toString srcDeps}; do cp $i $out/$(stripHash $i); done
+  '';
+
+  defaultShellPath = lib.makeBinPath
+    # Keep this list conservative. For more exotic tools, prefer to use
+    # @rules_nixpkgs to pull in tools from the nix repository. Example:
+    #
+    # WORKSPACE:
+    #
+    #     nixpkgs_git_repository(
+    #         name = "nixpkgs",
+    #         revision = "def5124ec8367efdba95a99523dd06d918cb0ae8",
+    #     )
+    #
+    #     # This defines an external Bazel workspace.
+    #     nixpkgs_package(
+    #         name = "bison",
+    #         repositories = { "nixpkgs": "@nixpkgs//:default.nix" },
+    #     )
+    #
+    # some/BUILD.bazel:
+    #
+    #     genrule(
+    #        ...
+    #        cmd = "$(location @bison//:bin/bison) -other -args",
+    #        tools = [
+    #            ...
+    #            "@bison//:bin/bison",
+    #        ],
+    #     )
+    #
+    [ bash coreutils findutils gawk gnugrep gnutar gnused gzip which unzip file zip ];
+
+  # Java toolchain used for the build and tests
+  javaToolchain = "@bazel_tools//tools/jdk:toolchain_host${buildJdkName}";
+
+  platforms = lib.platforms.linux ++ lib.platforms.darwin;
+
+  # This repository is fetched by bazel at runtime
+  # however it contains prebuilt java binaries, with wrong interpreter
+  # and libraries path.
+  # We prefetch it, patch it, and override it in a global bazelrc.
+  system = if stdenv.hostPlatform.isDarwin then "darwin" else "linux";
+  arch = stdenv.hostPlatform.parsed.cpu.name;
+
+  remote_java_tools = stdenv.mkDerivation {
+    name = "remote_java_tools_${system}";
+
+    src = srcDepsSet."java_tools_javac11_${system}-v7.0.zip";
+
+    nativeBuildInputs = [ autoPatchelfHook unzip ];
+    buildInputs = [ gcc-unwrapped ];
+
+    sourceRoot = ".";
+
+    buildPhase = ''
+      mkdir $out;
+    '';
+
+    installPhase = ''
+      cp -Ra * $out/
+      touch $out/WORKSPACE
+    '';
+  };
+
+  bazelRC = writeTextFile {
+    name = "bazel-rc";
+    text = ''
+      build --override_repository=${remote_java_tools.name}=${remote_java_tools}
+      build --distdir=${distDir}
+      startup --server_javabase=${runJdk}
+
+      # load default location for the system wide configuration
+      try-import /etc/bazel.bazelrc
+    '';
+  };
+
+in
+stdenv.mkDerivation rec {
+  pname = "bazel";
+  inherit version;
+
+  meta = with lib; {
+    homepage = "https://github.com/bazelbuild/bazel/";
+    description = "Build tool that builds code quickly and reliably";
+    license = licenses.asl20;
+    maintainers = [ maintainers.mboes ];
+    inherit platforms;
+  };
+
+  inherit src;
+  sourceRoot = ".";
+
+  patches = [
+    # On Darwin, the last argument to gcc is coming up as an empty string. i.e: ''
+    # This is breaking the build of any C target. This patch removes the last
+    # argument if it's found to be an empty string.
+    ../trim-last-argument-to-gcc-if-empty.patch
+
+    # --experimental_strict_action_env (which may one day become the default
+    # see bazelbuild/bazel#2574) hardcodes the default
+    # action environment to a non hermetic value (e.g. "/usr/local/bin").
+    # This is non hermetic on non-nixos systems. On NixOS, bazel cannot find the required binaries.
+    # So we are replacing this bazel paths by defaultShellPath,
+    # improving hermeticity and making it work in nixos.
+    (substituteAll {
+      src = ../strict_action_env.patch;
+      strictActionEnvPatch = defaultShellPath;
+    })
+
+    # bazel reads its system bazelrc in /etc
+    # override this path to a builtin one
+    (substituteAll {
+      src = ../bazel_rc.patch;
+      bazelSystemBazelRCPath = bazelRC;
+    })
+  ] ++ lib.optional enableNixHacks ../nix-hacks.patch;
+
+
+  # Additional tests that check bazel’s functionality. Execute
+  #
+  #     nix-build . -A bazel.tests
+  #
+  # in the nixpkgs checkout root to exercise them locally.
+  passthru.tests =
+    let
+      runLocal = name: attrs: script:
+      let
+        attrs' = removeAttrs attrs [ "buildInputs" ];
+        buildInputs = [ python3 ] ++ (attrs.buildInputs or []);
+      in
+      runCommandCC name ({
+        inherit buildInputs;
+        preferLocalBuild = true;
+        meta.platforms = platforms;
+      } // attrs') script;
+
+      # bazel wants to extract itself into $install_dir/install every time it runs,
+      # so let’s do that only once.
+      extracted = bazelPkg:
+        let install_dir =
+          # `install_base` field printed by `bazel info`, minus the hash.
+          # yes, this path is kinda magic. Sorry.
+          "$HOME/.cache/bazel/_bazel_nixbld";
+        in runLocal "bazel-extracted-homedir" { passthru.install_dir = install_dir; } ''
+            export HOME=$(mktemp -d)
+            touch WORKSPACE # yeah, everything sucks
+            install_base="$(${bazelPkg}/bin/bazel info | grep install_base)"
+            # assert it’s actually below install_dir
+            [[ "$install_base" =~ ${install_dir} ]] \
+              || (echo "oh no! $install_base but we are \
+            trying to copy ${install_dir} to $out instead!"; exit 1)
+            cp -R ${install_dir} $out
+          '';
+
+      bazelTest = { name, bazelScript, workspaceDir, bazelPkg, buildInputs ? [] }:
+        let
+          be = extracted bazelPkg;
+        in runLocal name { inherit buildInputs; } (
+          # skip extraction caching on Darwin, because nobody knows how Darwin works
+          (lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
+            # set up home with pre-unpacked bazel
+            export HOME=$(mktemp -d)
+            mkdir -p ${be.install_dir}
+            cp -R ${be}/install ${be.install_dir}
+
+            # https://stackoverflow.com/questions/47775668/bazel-how-to-skip-corrupt-installation-on-centos6
+            # Bazel checks whether the mtime of the install dir files
+            # is >9 years in the future, otherwise it extracts itself again.
+            # see PosixFileMTime::IsUntampered in src/main/cpp/util
+            # What the hell bazel.
+            ${lr}/bin/lr -0 -U ${be.install_dir} | ${xe}/bin/xe -N0 -0 touch --date="9 years 6 months" {}
+          '')
+          +
+          ''
+            # Note https://github.com/bazelbuild/bazel/issues/5763#issuecomment-456374609
+            # about why to create a subdir for the workspace.
+            cp -r ${workspaceDir} wd && chmod u+w wd && cd wd
+
+            ${bazelScript}
+
+            touch $out
+          '');
+
+      bazelWithNixHacks = bazel_self.override { enableNixHacks = true; };
+
+      bazel-examples = fetchFromGitHub {
+        owner = "bazelbuild";
+        repo = "examples";
+        rev = "5d8c8961a2516ebf875787df35e98cadd08d43dc";
+        sha256 = "03c1bwlq5bs3hg96v4g4pg2vqwhqq6w538h66rcpw02f83yy7fs8";
+      };
+
+    in (if !stdenv.hostPlatform.isDarwin then {
+      # `extracted` doesn’t work on darwin
+      shebang = callPackage ../shebang-test.nix { inherit runLocal extracted bazelTest distDir; };
+    } else {}) // {
+      bashTools = callPackage ../bash-tools-test.nix { inherit runLocal bazelTest distDir; };
+      cpp = callPackage ../cpp-test.nix { inherit runLocal bazelTest bazel-examples distDir; };
+      java = callPackage ../java-test.nix { inherit runLocal bazelTest bazel-examples distDir; };
+      protobuf = callPackage ../protobuf-test.nix { inherit runLocal bazelTest distDir; };
+      pythonBinPath = callPackage ../python-bin-path-test.nix { inherit runLocal bazelTest distDir; };
+
+      bashToolsWithNixHacks = callPackage ../bash-tools-test.nix { inherit runLocal bazelTest distDir; bazel = bazelWithNixHacks; };
+
+      cppWithNixHacks = callPackage ../cpp-test.nix { inherit runLocal bazelTest bazel-examples distDir; bazel = bazelWithNixHacks; };
+      javaWithNixHacks = callPackage ../java-test.nix { inherit runLocal bazelTest bazel-examples distDir; bazel = bazelWithNixHacks; };
+      protobufWithNixHacks = callPackage ../protobuf-test.nix { inherit runLocal bazelTest distDir; bazel = bazelWithNixHacks; };
+      pythonBinPathWithNixHacks = callPackage ../python-bin-path-test.nix { inherit runLocal bazelTest distDir; bazel = bazelWithNixHacks; };
+
+      # downstream packages using buildBazelPackage
+      # fixed-output hashes of the fetch phase need to be spot-checked manually
+      downstream = recurseIntoAttrs ({
+        inherit bazel-watcher;
+      }
+          # dm-sonnet is only packaged for linux
+      // (lib.optionalAttrs stdenv.isLinux {
+          # TODO(timokau) dm-sonnet is broken currently
+          # dm-sonnet-linux = python3.pkgs.dm-sonnet;
+      }));
+    };
+
+  # update the list of workspace dependencies
+  passthru.updater = writeScript "update-bazel-deps.sh" ''
+    #!${runtimeShell}
+    cat ${runCommand "bazel-deps.json" {} ''
+        ${unzip}/bin/unzip ${src} WORKSPACE
+        ${python3}/bin/python3 ${../update-srcDeps.py} ./WORKSPACE > $out
+    ''} > ${builtins.toString ./src-deps.json}
+  '';
+
+  # Necessary for the tests to pass on Darwin with sandbox enabled.
+  # Bazel starts a local server and needs to bind a local address.
+  __darwinAllowLocalNetworking = true;
+
+  # Bazel expects several utils to be available in Bash even without PATH. Hence this hack.
+  customBash = writeCBin "bash" ''
+    #include <stdio.h>
+    #include <stdlib.h>
+    #include <string.h>
+    #include <unistd.h>
+
+    extern char **environ;
+
+    int main(int argc, char *argv[]) {
+      char *path = getenv("PATH");
+      char *pathToAppend = "${defaultShellPath}";
+      char *newPath;
+      if (path != NULL) {
+        int length = strlen(path) + 1 + strlen(pathToAppend) + 1;
+        newPath = malloc(length * sizeof(char));
+        snprintf(newPath, length, "%s:%s", path, pathToAppend);
+      } else {
+        newPath = pathToAppend;
+      }
+      setenv("PATH", newPath, 1);
+      execve("${bash}/bin/bash", argv, environ);
+      return 0;
+    }
+  '';
+
+  postPatch = let
+
+    darwinPatches = ''
+      bazelLinkFlags () {
+        eval set -- "$NIX_LDFLAGS"
+        local flag
+        for flag in "$@"; do
+          printf ' -Wl,%s' "$flag"
+        done
+      }
+
+      # Disable Bazel's Xcode toolchain detection which would configure compilers
+      # and linkers from Xcode instead of from PATH
+      export BAZEL_USE_CPP_ONLY_TOOLCHAIN=1
+
+      # Explicitly configure gcov since we don't have it on Darwin, so autodetection fails
+      export GCOV=${coreutils}/bin/false
+
+      # Framework search paths aren't added by bintools hook
+      # https://github.com/NixOS/nixpkgs/pull/41914
+      export NIX_LDFLAGS+=" -F${CoreFoundation}/Library/Frameworks -F${CoreServices}/Library/Frameworks -F${Foundation}/Library/Frameworks"
+
+      # libcxx includes aren't added by libcxx hook
+      # https://github.com/NixOS/nixpkgs/pull/41589
+      export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${libcxx}/include/c++/v1"
+
+      # don't use system installed Xcode to run clang, use Nix clang instead
+      sed -i -E "s;/usr/bin/xcrun (--sdk macosx )?clang;${stdenv.cc}/bin/clang $NIX_CFLAGS_COMPILE $(bazelLinkFlags) -framework CoreFoundation;g" \
+        scripts/bootstrap/compile.sh \
+        src/tools/xcode/realpath/BUILD \
+        src/tools/xcode/stdredirect/BUILD \
+        tools/osx/BUILD
+
+      # nixpkgs's libSystem cannot use pthread headers directly, must import GCD headers instead
+      sed -i -e "/#include <pthread\/spawn.h>/i #include <dispatch/dispatch.h>" src/main/cpp/blaze_util_darwin.cc
+
+      # clang installed from Xcode has a compatibility wrapper that forwards
+      # invocations of gcc to clang, but vanilla clang doesn't
+      sed -i -e 's;_find_generic(repository_ctx, "gcc", "CC", overriden_tools);_find_generic(repository_ctx, "clang", "CC", overriden_tools);g' tools/cpp/unix_cc_configure.bzl
+
+      sed -i -e 's;/usr/bin/libtool;${cctools}/bin/libtool;g' tools/cpp/unix_cc_configure.bzl
+      wrappers=( tools/cpp/osx_cc_wrapper.sh tools/cpp/osx_cc_wrapper.sh.tpl )
+      for wrapper in "''${wrappers[@]}"; do
+        sed -i -e "s,/usr/bin/install_name_tool,${cctools}/bin/install_name_tool,g" $wrapper
+      done
+    '';
+
+    genericPatches = ''
+      # Substitute j2objc and objc wrapper's python shebang to plain python path.
+      # These scripts explicitly depend on Python 2.7, hence we use python27.
+      # See also `postFixup` where python27 is added to $out/nix-support
+      substituteInPlace tools/j2objc/j2objc_header_map.py --replace "$!/usr/bin/python2.7" "#!${python27}/bin/python"
+      substituteInPlace tools/j2objc/j2objc_wrapper.py --replace "$!/usr/bin/python2.7" "#!${python27}/bin/python"
+      substituteInPlace tools/objc/j2objc_dead_code_pruner.py --replace "$!/usr/bin/python2.7" "#!${python27}/bin/python"
+
+      # md5sum is part of coreutils
+      sed -i 's|/sbin/md5|md5sum|' \
+        src/BUILD
+
+      # substituteInPlace is rather slow, so prefilter the files with grep
+      grep -rlZ /bin src/main/java/com/google/devtools | while IFS="" read -r -d "" path; do
+        # If you add more replacements here, you must change the grep above!
+        # Only files containing /bin are taken into account.
+        # We default to python3 where possible. See also `postFixup` where
+        # python3 is added to $out/nix-support
+        substituteInPlace "$path" \
+          --replace /bin/bash ${customBash}/bin/bash \
+          --replace "/usr/bin/env bash" ${customBash}/bin/bash \
+          --replace "/usr/bin/env python" ${python3}/bin/python \
+          --replace /usr/bin/env ${coreutils}/bin/env \
+          --replace /bin/true ${coreutils}/bin/true
+      done
+
+      # bazel test runner include references to /bin/bash
+      substituteInPlace tools/build_rules/test_rules.bzl \
+        --replace /bin/bash ${customBash}/bin/bash
+
+      for i in $(find tools/cpp/ -type f)
+      do
+        substituteInPlace $i \
+          --replace /bin/bash ${customBash}/bin/bash
+      done
+
+      # Fixup scripts that generate scripts. Not fixed up by patchShebangs below.
+      substituteInPlace scripts/bootstrap/compile.sh \
+          --replace /bin/bash ${customBash}/bin/bash
+
+      # add nix environment vars to .bazelrc
+      cat >> .bazelrc <<EOF
+      build --distdir=${distDir}
+      fetch --distdir=${distDir}
+      build --copt="$(echo $NIX_CFLAGS_COMPILE | sed -e 's/ /" --copt="/g')"
+      build --host_copt="$(echo $NIX_CFLAGS_COMPILE | sed -e 's/ /" --host_copt="/g')"
+      build --linkopt="-Wl,$(echo $NIX_LDFLAGS | sed -e 's/ /" --linkopt="-Wl,/g')"
+      build --host_linkopt="-Wl,$(echo $NIX_LDFLAGS | sed -e 's/ /" --host_linkopt="-Wl,/g')"
+      build --host_javabase='@local_jdk//:jdk'
+      build --host_java_toolchain='${javaToolchain}'
+      EOF
+
+      # add the same environment vars to compile.sh
+      sed -e "/\$command \\\\$/a --copt=\"$(echo $NIX_CFLAGS_COMPILE | sed -e 's/ /" --copt=\"/g')\" \\\\" \
+          -e "/\$command \\\\$/a --host_copt=\"$(echo $NIX_CFLAGS_COMPILE | sed -e 's/ /" --host_copt=\"/g')\" \\\\" \
+          -e "/\$command \\\\$/a --linkopt=\"-Wl,$(echo $NIX_LDFLAGS | sed -e 's/ /" --linkopt=\"-Wl,/g')\" \\\\" \
+          -e "/\$command \\\\$/a --host_linkopt=\"-Wl,$(echo $NIX_LDFLAGS | sed -e 's/ /" --host_linkopt=\"-Wl,/g')\" \\\\" \
+          -e "/\$command \\\\$/a --host_javabase='@local_jdk//:jdk' \\\\" \
+          -e "/\$command \\\\$/a --host_java_toolchain='${javaToolchain}' \\\\" \
+          -i scripts/bootstrap/compile.sh
+
+      # This is necessary to avoid:
+      # "error: no visible @interface for 'NSDictionary' declares the selector
+      # 'initWithContentsOfURL:error:'"
+      # This can be removed when the apple_sdk is upgraded beyond 10.13+
+      sed -i '/initWithContentsOfURL:versionPlistUrl/ {
+        N
+        s/error:nil\];/\];/
+      }' tools/osx/xcode_locator.m
+
+      # append the PATH with defaultShellPath in tools/bash/runfiles/runfiles.bash
+      echo "PATH=\$PATH:${defaultShellPath}" >> runfiles.bash.tmp
+      cat tools/bash/runfiles/runfiles.bash >> runfiles.bash.tmp
+      mv runfiles.bash.tmp tools/bash/runfiles/runfiles.bash
+
+      patchShebangs .
+    '';
+    in lib.optionalString stdenv.hostPlatform.isDarwin darwinPatches
+     + genericPatches;
+
+  buildInputs = [
+    buildJdk
+    python3
+  ];
+
+  # when a command can’t be found in a bazel build, you might also
+  # need to add it to `defaultShellPath`.
+  nativeBuildInputs = [
+    zip
+    python3
+    unzip
+    makeWrapper
+    which
+    customBash
+  ] ++ lib.optionals (stdenv.isDarwin) [ cctools libcxx CoreFoundation CoreServices Foundation ];
+
+  # Bazel makes extensive use of symlinks in the WORKSPACE.
+  # This causes problems with infinite symlinks if the build output is in the same location as the
+  # Bazel WORKSPACE. This is why before executing the build, the source code is moved into a
+  # subdirectory.
+  # Failing to do this causes "infinite symlink expansion detected"
+  preBuildPhases = ["preBuildPhase"];
+  preBuildPhase = ''
+    mkdir bazel_src
+    shopt -s dotglob extglob
+    mv !(bazel_src) bazel_src
+  '';
+
+  buildPhase = ''
+    # Increasing memory during compilation might be necessary.
+    # export BAZEL_JAVAC_OPTS="-J-Xmx2g -J-Xms200m"
+    ./bazel_src/compile.sh
+    ./bazel_src/scripts/generate_bash_completion.sh \
+        --bazel=./bazel_src/output/bazel \
+        --output=./bazel_src/output/bazel-complete.bash \
+        --prepend=./bazel_src/scripts/bazel-complete-header.bash \
+        --prepend=./bazel_src/scripts/bazel-complete-template.bash
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+
+    # official wrapper scripts that searches for $WORKSPACE_ROOT/tools/bazel
+    # if it can’t find something in tools, it calls $out/bin/bazel-{version}-{os_arch}
+    # The binary _must_ exist with this naming if your project contains a .bazelversion
+    # file.
+    cp ./bazel_src/scripts/packages/bazel.sh $out/bin/bazel
+    mv ./bazel_src/output/bazel $out/bin/bazel-${version}-${system}-${arch}
+
+    # shell completion files
+    mkdir -p $out/share/bash-completion/completions $out/share/zsh/site-functions
+    mv ./bazel_src/output/bazel-complete.bash $out/share/bash-completion/completions/bazel
+    cp ./bazel_src/scripts/zsh_completion/_bazel $out/share/zsh/site-functions/
+  '';
+
+  doInstallCheck = true;
+  installCheckPhase = ''
+    export TEST_TMPDIR=$(pwd)
+
+    hello_test () {
+      $out/bin/bazel test --distdir=${distDir} \
+        --test_output=errors \
+        --java_toolchain='${javaToolchain}' \
+        examples/cpp:hello-success_test \
+        examples/java-native/src/test/java/com/example/myproject:hello
+    }
+
+    cd ./bazel_src
+
+    # test whether $WORKSPACE_ROOT/tools/bazel works
+
+    mkdir -p tools
+    cat > tools/bazel <<"EOF"
+    #!${runtimeShell} -e
+    exit 1
+    EOF
+    chmod +x tools/bazel
+
+    # first call should fail if tools/bazel is used
+    ! hello_test
+
+    cat > tools/bazel <<"EOF"
+    #!${runtimeShell} -e
+    exec "$BAZEL_REAL" "$@"
+    EOF
+
+    # second call succeeds because it defers to $out/bin/bazel-{version}-{os_arch}
+    hello_test
+  '';
+
+  # Save paths to hardcoded dependencies so Nix can detect them.
+  postFixup = ''
+    mkdir -p $out/nix-support
+    echo "${customBash} ${defaultShellPath}" >> $out/nix-support/depends
+    # The templates get tar’d up into a .jar,
+    # so nix can’t detect python is needed in the runtime closure
+    # Some of the scripts explicitly depend on Python 2.7. Otherwise, we
+    # default to using python3. Therefore, both python27 and python3 are
+    # runtime dependencies.
+    echo "${python27}" >> $out/nix-support/depends
+    echo "${python3}" >> $out/nix-support/depends
+  '' + lib.optionalString stdenv.isDarwin ''
+    echo "${cctools}" >> $out/nix-support/depends
+  '';
+
+  dontStrip = true;
+  dontPatchELF = true;
+}
diff --git a/pkgs/development/tools/build-managers/bazel/bazel-latest/src-deps.json b/pkgs/development/tools/build-managers/bazel/bazel_2/src-deps.json
index 7517a8c1b95..7517a8c1b95 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel-latest/src-deps.json
+++ b/pkgs/development/tools/build-managers/bazel/bazel_2/src-deps.json
diff --git a/pkgs/development/tools/build-managers/bear/default.nix b/pkgs/development/tools/build-managers/bear/default.nix
index ec1577c5107..9e2fb13b0e7 100644
--- a/pkgs/development/tools/build-managers/bear/default.nix
+++ b/pkgs/development/tools/build-managers/bear/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, cmake, python }:
+{ stdenv, fetchFromGitHub, cmake, python3 }:
 
 stdenv.mkDerivation rec {
   pname = "bear";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ cmake ];
-  buildInputs = [ python ]; # just for shebang of bin/bear
+  buildInputs = [ python3 ]; # just for shebang of bin/bear
 
   doCheck = false; # all fail
 
diff --git a/pkgs/development/tools/build-managers/bmake/default.nix b/pkgs/development/tools/build-managers/bmake/default.nix
index ed1e6a174ce..944bbd9d4bb 100644
--- a/pkgs/development/tools/build-managers/bmake/default.nix
+++ b/pkgs/development/tools/build-managers/bmake/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bmake";
-  version = "20200212";
+  version = "20200318";
 
   src = fetchurl {
     url    = "http://www.crufty.net/ftp/pub/sjg/${pname}-${version}.tar.gz";
-    sha256 = "134ibplk5rj7s3ig2czbhqs89l45jl6vswg3cy6xzm0anz5smhb2";
+    sha256 = "10rcgv0hd5axm2b41a5xaig6iqbpyqfp2q7llr7zc3mnbacwaz35";
   };
 
   nativeBuildInputs = [ getopt ];
diff --git a/pkgs/development/tools/build-managers/conan/default.nix b/pkgs/development/tools/build-managers/conan/default.nix
index 59b1b14ac5f..114cdc634c8 100644
--- a/pkgs/development/tools/build-managers/conan/default.nix
+++ b/pkgs/development/tools/build-managers/conan/default.nix
@@ -1,5 +1,17 @@
 { lib, python3, git, pkgconfig }:
 
+# Note:
+# Conan has specific dependency demanands; check
+#     https://github.com/conan-io/conan/blob/master/conans/requirements.txt
+#     https://github.com/conan-io/conan/blob/master/conans/requirements_server.txt
+# on the release branch/commit we're packaging.
+#
+# Two approaches are used here to deal with that:
+# Pinning the specific versions it wants in `newPython`,
+# and using `substituteInPlace conans/requirements.txt ...`
+# in `postPatch` to allow newer versions when we know
+# (e.g. from changelogs) that they are compatible.
+
 let newPython = python3.override {
   packageOverrides = self: super: {
     distro = super.distro.overridePythonAttrs (oldAttrs: rec {
@@ -16,20 +28,6 @@ let newPython = python3.override {
         sha256 = "1dv6mjsm67l1razcgmq66riqmsb36wns17mnipqr610v0z0zf5j0";
       };
     });
-    future = super.future.overridePythonAttrs (oldAttrs: rec {
-      version = "0.16.0";
-      src = oldAttrs.src.override {
-        inherit version;
-        sha256 = "1nzy1k4m9966sikp0qka7lirh8sqrsyainyf8rk97db7nwdfv773";
-      };
-    });
-    tqdm = super.tqdm.overridePythonAttrs (oldAttrs: rec {
-      version = "4.28.1";
-      src = oldAttrs.src.override {
-        inherit version;
-        sha256 = "1fyybgbmlr8ms32j7h76hz5g9xc6nf0644mwhc40a0s5k14makav";
-      };
-    });
     pluginbase = super.pluginbase.overridePythonAttrs (oldAttrs: rec {
       version = "0.7";
       src = oldAttrs.src.override {
@@ -41,18 +39,34 @@ let newPython = python3.override {
 };
 
 in newPython.pkgs.buildPythonApplication rec {
-  version = "1.12.3";
+  version = "1.24.0";
   pname = "conan";
 
   src = newPython.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "1cnfy9b57apps4bfai6r67g0mrvgnqa154z9idv0kf93k1nvx53g";
+    sha256 = "0nkh4f6plamijwcfw536ydm0i04y74qmkh5l1nanyb8p0c3z3x0y";
   };
 
   propagatedBuildInputs = with newPython.pkgs; [
-    colorama deprecation distro fasteners bottle
-    future node-semver patch pygments pluginbase
-    pyjwt pylint pyyaml requests six tqdm
+    bottle
+    colorama
+    dateutil
+    deprecation
+    distro
+    fasteners
+    future
+    jinja2
+    node-semver
+    patch-ng
+    pluginbase
+    pygments
+    pyjwt
+    pylint # Not in `requirements.txt` but used in hooks, see https://github.com/conan-io/conan/pull/6152
+    pyyaml
+    requests
+    six
+    tqdm
+    urllib3
   ];
 
   checkInputs = [
@@ -68,15 +82,13 @@ in newPython.pkgs.buildPythonApplication rec {
     webtest
   ]);
 
-  checkPhase = ''
-    export HOME=$TMPDIR
-    pytest conans/test/{utils,unittests} \
-      -k 'not SVN and not ToolsNetTest'
-  '';
+  # Conan 1.14.0 has removed all tests from the Pypi source dist:
+  #     https://github.com/conan-io/conan/pull/4713
+  # We have recommended they be added back:
+  #     https://github.com/conan-io/conan/issues/4563#issuecomment-602225083
+  doCheck = false;
 
   postPatch = ''
-    substituteInPlace conans/requirements_server.txt \
-      --replace "pluginbase>=0.5, < 1.0" "pluginbase>=0.5"
     substituteInPlace conans/requirements.txt \
       --replace "PyYAML>=3.11, <3.14.0" "PyYAML"
   '';
diff --git a/pkgs/development/tools/build-managers/drake/Gemfile.lock b/pkgs/development/tools/build-managers/drake/Gemfile.lock
index 52060a0e625..466133010e0 100644
--- a/pkgs/development/tools/build-managers/drake/Gemfile.lock
+++ b/pkgs/development/tools/build-managers/drake/Gemfile.lock
@@ -12,4 +12,4 @@ DEPENDENCIES
   drake
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/tools/build-managers/dub/default.nix b/pkgs/development/tools/build-managers/dub/default.nix
index ef2b155482f..44c91e93609 100644
--- a/pkgs/development/tools/build-managers/dub/default.nix
+++ b/pkgs/development/tools/build-managers/dub/default.nix
@@ -67,10 +67,9 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Package and build manager for D applications and libraries";
-    homepage = http://code.dlang.org/;
+    homepage = "https://code.dlang.org/";
     license = licenses.mit;
     maintainers = with maintainers; [ ThomasMader ];
     platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ];
   };
 }
-
diff --git a/pkgs/development/tools/build-managers/gn/default.nix b/pkgs/development/tools/build-managers/gn/default.nix
index d8557bfcbc2..599e10af1a9 100644
--- a/pkgs/development/tools/build-managers/gn/default.nix
+++ b/pkgs/development/tools/build-managers/gn/default.nix
@@ -1,31 +1,37 @@
 { stdenv, lib, fetchgit, darwin, writeText
-, git, ninja, python3 }:
+, ninja, python3
+}:
 
 let
-  rev = "64b846c96daeb3eaf08e26d8a84d8451c6cb712b";
-  sha256 = "1v2kzsshhxn0ck6gd5w16gi2m3higwd9vkyylmsczxfxnw8skgpy";
+  # Note: Please use the recommended version for Chromium, e.g.:
+  # https://git.archlinux.org/svntogit/packages.git/tree/trunk/chromium-gn-version.sh?h=packages/gn
+  rev = "fd3d768bcfd44a8d9639fe278581bd9851d0ce3a";
+  revNum = "1718"; # git describe HEAD --match initial-commit | cut -d- -f3
+  version = "2020-03-09";
+  sha256 = "1asc14y8by7qcn10vbk467hvx93s30pif8r0brissl0sihsaqazr";
 
-  shortRev = builtins.substring 0 7 rev;
+  revShort = builtins.substring 0 7 rev;
   lastCommitPosition = writeText "last_commit_position.h" ''
     #ifndef OUT_LAST_COMMIT_POSITION_H_
     #define OUT_LAST_COMMIT_POSITION_H_
 
-    #define LAST_COMMIT_POSITION "(${shortRev})"
+    #define LAST_COMMIT_POSITION_NUM ${revNum}
+    #define LAST_COMMIT_POSITION "${revNum} (${revShort})"
 
     #endif  // OUT_LAST_COMMIT_POSITION_H_
   '';
 
-in
-stdenv.mkDerivation {
-  pname = "gn";
-  version = "20190403";
+in stdenv.mkDerivation {
+  pname = "gn-unstable";
+  inherit version;
 
   src = fetchgit {
+    # Note: The TAR-Archives (+archive/${rev}.tar.gz) are not deterministic!
     url = "https://gn.googlesource.com/gn";
     inherit rev sha256;
   };
 
-  nativeBuildInputs = [ ninja python3 git ];
+  nativeBuildInputs = [ ninja python3 ];
   buildInputs = lib.optionals stdenv.isDarwin (with darwin; with apple_sdk.frameworks; [
     libobjc
     cctools
@@ -49,8 +55,8 @@ stdenv.mkDerivation {
   setupHook = ./setup-hook.sh;
 
   meta = with lib; {
-    description = "A meta-build system that generates NinjaBuild files";
-    homepage = https://gn.googlesource.com/gn;
+    description = "A meta-build system that generates build files for Ninja";
+    homepage = "https://gn.googlesource.com/gn";
     license = licenses.bsd3;
     platforms = platforms.unix;
     maintainers = with maintainers; [ stesie matthewbauer ];
diff --git a/pkgs/development/tools/build-managers/rake/Gemfile.lock b/pkgs/development/tools/build-managers/rake/Gemfile.lock
index 992a0bc8929..f89ceae9344 100644
--- a/pkgs/development/tools/build-managers/rake/Gemfile.lock
+++ b/pkgs/development/tools/build-managers/rake/Gemfile.lock
@@ -10,4 +10,4 @@ DEPENDENCIES
   rake
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/tools/build-managers/samurai/default.nix b/pkgs/development/tools/build-managers/samurai/default.nix
index 063a2c198da..f8b649e0409 100644
--- a/pkgs/development/tools/build-managers/samurai/default.nix
+++ b/pkgs/development/tools/build-managers/samurai/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "samurai";
-  version = "1.0";
+  version = "1.1";
 
   src = fetchFromGitHub {
     owner = "michaelforney";
     repo = pname;
     rev = version;
-    sha256 = "1jsxfpwa6q893x18qlvpsiym29rrw5cj0k805wgmk2n57j9rw4f2";
+    sha256 = "0k0amxpi3v9v68a8vc69r4b86xs12vhzm0wxd7f11vap1pnqz2cz";
   };
 
   makeFlags = [ "DESTDIR=" "PREFIX=${placeholder "out"}" ];
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index 5d2a713cfc4..2336900bf85 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "sbt";
-  version = "1.3.8";
+  version = "1.3.9";
 
   src = fetchurl {
     urls = [
       "https://piccolo.link/sbt-${version}.tgz"
       "https://github.com/sbt/sbt/releases/download/v${version}/sbt-${version}.tgz"
     ];
-    sha256 = "0pcrbpsvccyxdwc7f8h87rkn0kalar0iypnh3gygw4c0fm4yvci7";
+    sha256 = "06k4dyb5gjnqx70akjfb65hiafh683800bncbq33kmq77arfkm7c";
   };
 
   patchPhase = ''
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.scala-sbt.org/;
+    homepage = "https://www.scala-sbt.org/";
     license = licenses.bsd3;
     description = "A build tool for Scala, Java and more";
     maintainers = with maintainers; [ nequissimus ];
diff --git a/pkgs/development/tools/build-managers/scons/common.nix b/pkgs/development/tools/build-managers/scons/common.nix
index 740d04d853f..41ac16bed7a 100644
--- a/pkgs/development/tools/build-managers/scons/common.nix
+++ b/pkgs/development/tools/build-managers/scons/common.nix
@@ -1,25 +1,22 @@
 { version, sha256 }:
 
-{ stdenv, fetchurl, python2Packages }:
+{ stdenv, fetchurl, python3Packages, python2Packages, scons }:
 
-let name = "scons";
-in python2Packages.buildPythonApplication {
-  name = "${name}-${version}";
+python3Packages.buildPythonApplication rec {
+  pname = "scons";
+  inherit version;
 
   src = fetchurl {
-    url = "mirror://sourceforge/scons/${name}-${version}.tar.gz";
+    url = "mirror://sourceforge/scons/${pname}-${version}.tar.gz";
     inherit sha256;
   };
 
-  # Fix a regression in 3.0.0 (causes build errors for some packages)
-  patches = stdenv.lib.optional (version == "3.0.0") ./print-statements.patch;
-
   setupHook = ./setup-hook.sh;
 
+  passthru.py2 = scons.override { python3Packages = python2Packages; };
+
   meta = with stdenv.lib; {
-    homepage = http://scons.org/;
     description = "An improved, cross-platform substitute for Make";
-    license = licenses.mit;
     longDescription = ''
       SCons is an Open Source software construction tool. Think of
       SCons as an improved, cross-platform substitute for the classic
@@ -28,6 +25,9 @@ in python2Packages.buildPythonApplication {
       SCons is an easier, more reliable and faster way to build
       software.
     '';
+    homepage = "https://scons.org/";
+    changelog = "https://raw.githubusercontent.com/SConsProject/scons/rel_${version}/src/CHANGES.txt";
+    license = licenses.mit;
     platforms = platforms.all;
     maintainers = [ maintainers.primeos ];
   };
diff --git a/pkgs/development/tools/build-managers/scons/default.nix b/pkgs/development/tools/build-managers/scons/default.nix
index 0afe2fbe928..19b092b86ba 100644
--- a/pkgs/development/tools/build-managers/scons/default.nix
+++ b/pkgs/development/tools/build-managers/scons/default.nix
@@ -1,12 +1,12 @@
-{ callPackage }:
+{ callPackage, python2Packages }:
 
 let
   mkScons = args: callPackage (import ./common.nix args) { };
 in {
-  scons_3_0_1 = mkScons {
+  scons_3_0_1 = (mkScons {
     version = "3.0.1";
     sha256 = "0wzid419mlwqw9llrg8gsx4nkzhqy16m4m40r0xnh6cwscw5wir4";
-  };
+  }).override { python3Packages = python2Packages; };
   scons_latest = mkScons {
     version = "3.1.2";
     sha256 = "1yzq2gg9zwz9rvfn42v5jzl3g4qf1khhny6zfbi2hib55zvg60bq";
diff --git a/pkgs/development/tools/build-managers/scons/print-statements.patch b/pkgs/development/tools/build-managers/scons/print-statements.patch
deleted file mode 100644
index a963bf78aba..00000000000
--- a/pkgs/development/tools/build-managers/scons/print-statements.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/engine/SCons/Script/SConscript.py b/src/engine/SCons/Script/SConscript.py
-index 558e28f9..8fea9c4d 100644
---- src/engine/SCons/Script/SConscript.py
-+++ src/engine/SCons/Script/SConscript.py
-@@ -5,8 +5,6 @@
- 
- """
- 
--from __future__ import print_function
--
- #
- # __COPYRIGHT__
- #
diff --git a/pkgs/development/tools/build-managers/wafHook/setup-hook.sh b/pkgs/development/tools/build-managers/wafHook/setup-hook.sh
index 38998e8db34..439350c3abc 100644
--- a/pkgs/development/tools/build-managers/wafHook/setup-hook.sh
+++ b/pkgs/development/tools/build-managers/wafHook/setup-hook.sh
@@ -11,17 +11,23 @@ wafConfigurePhase() {
     fi
 
     local flagsArray=(
-        @crossFlags@
         "${flagsArray[@]}"
         $wafConfigureFlags "${wafConfigureFlagsArray[@]}"
         ${configureTargets:-configure}
     )
+    if [ -z "${dontAddWafCrossFlags:-}" ]; then
+        flagsArray+=(@crossFlags@)
+    fi
     echoCmd 'configure flags' "${flagsArray[@]}"
     python "$wafPath" "${flagsArray[@]}"
 
     runHook postConfigure
 }
 
+if [ -z "${dontUseWafConfigure-}" -a -z "${configurePhase-}" ]; then
+    configurePhase=wafConfigurePhase
+fi
+
 wafBuildPhase () {
     runHook preBuild
 
@@ -41,6 +47,10 @@ wafBuildPhase () {
     runHook postBuild
 }
 
+if [ -z "${dontUseWafBuild-}" -a -z "${buildPhase-}" ]; then
+    buildPhase=wafBuildPhase
+fi
+
 wafInstallPhase() {
     runHook preInstall
 
@@ -51,7 +61,7 @@ wafInstallPhase() {
     local flagsArray=(
         $wafFlags ${wafFlagsArray[@]}
         $installFlags ${installFlagsArray[@]}
-	${installTargets:-install}
+        ${installTargets:-install}
     )
 
     echoCmd 'install flags' "${flagsArray[@]}"
@@ -60,6 +70,6 @@ wafInstallPhase() {
     runHook postInstall
 }
 
-configurePhase=wafConfigurePhase
-buildPhase=wafBuildPhase
-installPhase=wafInstallPhase
+if [ -z "${dontUseWafInstall-}" -a -z "${installPhase-}" ]; then
+    installPhase=wafInstallPhase
+fi
diff --git a/pkgs/development/tools/buildah/default.nix b/pkgs/development/tools/buildah/default.nix
index f48aa35852b..7fbb21ffb12 100644
--- a/pkgs/development/tools/buildah/default.nix
+++ b/pkgs/development/tools/buildah/default.nix
@@ -4,13 +4,13 @@
 
 buildGoPackage rec {
   pname = "buildah";
-  version = "1.14.3";
+  version = "1.14.8";
 
   src = fetchFromGitHub {
     owner  = "containers";
     repo   = "buildah";
     rev    = "v${version}";
-    sha256 = "1qghlba8396gj9dfih8hg249gzwx0gpw9cysdw2vh8z52jhi5sx9";
+    sha256 = "187cvb3i5cwm7cwxmzpl2ca7900yb6v6b6cybyz5mnd5ccy5ff1q";
   };
 
   outputs = [ "bin" "man" "out" ];
@@ -39,6 +39,6 @@ buildGoPackage rec {
     homepage = "https://buildah.io/";
     changelog = "https://github.com/containers/buildah/releases/tag/v${version}";
     license = licenses.asl20;
-    maintainers = with maintainers; [ Profpatsch vdemeester saschagrunert ];
+    maintainers = with maintainers; [ Profpatsch ] ++ teams.podman.members;
   };
 }
diff --git a/pkgs/development/tools/cadre/Gemfile.lock b/pkgs/development/tools/cadre/Gemfile.lock
index c14df9cffa6..5d22e69f31c 100644
--- a/pkgs/development/tools/cadre/Gemfile.lock
+++ b/pkgs/development/tools/cadre/Gemfile.lock
@@ -16,4 +16,4 @@ DEPENDENCIES
   cadre (= 1.0.4)
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/development/tools/cbor-diag/Gemfile.lock b/pkgs/development/tools/cbor-diag/Gemfile.lock
index 9f9a160c587..8bebc81ebd9 100644
--- a/pkgs/development/tools/cbor-diag/Gemfile.lock
+++ b/pkgs/development/tools/cbor-diag/Gemfile.lock
@@ -18,4 +18,4 @@ DEPENDENCIES
   cbor-diag
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/tools/cddl/Gemfile.lock b/pkgs/development/tools/cddl/Gemfile.lock
index cd4e1407637..796a7743cac 100644
--- a/pkgs/development/tools/cddl/Gemfile.lock
+++ b/pkgs/development/tools/cddl/Gemfile.lock
@@ -27,4 +27,4 @@ DEPENDENCIES
   cddl
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/tools/chefdk/Gemfile.lock b/pkgs/development/tools/chefdk/Gemfile.lock
index 47346c1bc45..ce23018bd73 100644
--- a/pkgs/development/tools/chefdk/Gemfile.lock
+++ b/pkgs/development/tools/chefdk/Gemfile.lock
@@ -723,4 +723,4 @@ DEPENDENCIES
   test-kitchen
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/development/tools/clj-kondo/default.nix b/pkgs/development/tools/clj-kondo/default.nix
index 8317473570d..163bfeb688a 100644
--- a/pkgs/development/tools/clj-kondo/default.nix
+++ b/pkgs/development/tools/clj-kondo/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec{
   pname = "clj-kondo";
-  version = "2019.12.14";
+  version = "2020.03.20";
 
   reflectionJson = fetchurl {
     name = "reflection.json";
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec{
 
   src = fetchurl {
     url = "https://github.com/borkdude/${pname}/releases/download/v${version}/${pname}-${version}-standalone.jar";
-    sha256 = "1mprwqc5ydqn2wkssrj2g3wbpjss7flv584wss9j0jjfgy7jc4s1";
+    sha256 = "05z80cdzk8aw3j0nxfynzwpb9hhpbl54bbrv18dpqj5dj893mbgm";
   };
 
   dontUnpack = true;
diff --git a/pkgs/development/tools/cloudflare-wrangler/default.nix b/pkgs/development/tools/cloudflare-wrangler/default.nix
index a13433e784b..5a05b7ca7c0 100644
--- a/pkgs/development/tools/cloudflare-wrangler/default.nix
+++ b/pkgs/development/tools/cloudflare-wrangler/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cloudflare-wrangler";
-  version = "1.8.1";
+  version = "1.8.4";
 
   src = fetchFromGitHub {
     owner = "cloudflare";
     repo = "wrangler";
     rev = "v${version}";
-    sha256 = "0lh06cnjddmy5h5xvbkg8f97vw2v0wr5fi7vrs3nnidiz7x4rsja";
+    sha256 = "1lllam0zgr26fbg04hnw1sy35grwrs4br8cx4r9vqjf113cyr80x";
   };
 
-  cargoSha256 = "1q7vilh0bynhdz5bbpig5ibaqvk2153n07gmc715qb80w92sjw7w";
+  cargoSha256 = "0yvnqp15iqv142vcgsmcad07r5nnp417c0iqa9qgyzn39ssgpn0r";
 
   nativeBuildInputs = [ pkg-config ];
 
diff --git a/pkgs/development/tools/compass/Gemfile.lock b/pkgs/development/tools/compass/Gemfile.lock
index 43790d9e7a1..ecae8fdd7f6 100644
--- a/pkgs/development/tools/compass/Gemfile.lock
+++ b/pkgs/development/tools/compass/Gemfile.lock
@@ -28,4 +28,4 @@ DEPENDENCIES
   compass!
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/tools/conftest/default.nix b/pkgs/development/tools/conftest/default.nix
index fe8d58f7682..133526c569a 100644
--- a/pkgs/development/tools/conftest/default.nix
+++ b/pkgs/development/tools/conftest/default.nix
@@ -1,28 +1,26 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "conftest";
-  version = "0.15.0";
+  version = "0.18.1";
 
   src = fetchFromGitHub {
     owner = "instrumenta";
     repo = "conftest";
     rev = "v${version}";
-    sha256 = "0lb644fj80r4igxbslbd5pksirnyf6slz4yn0mznyx8i2bd1g4ic";
+    sha256 = "0ial1zs5aqcwza813ny6zqn9ybq6ibrqjmaccwbbam1k9f5rplqv";
   };
 
-  modSha256 = "1p7fjg1vcrcxb4f5hd00qxx4fqcl051klcjs6ljn4v46qcpn6dcn";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "17j5fhgwfpyg9r7a5g9rmvkaz510xx9s4mbl1cmyzysvddc6f5wp";
 
   buildFlagsArray = ''
     -ldflags=
         -X main.version=${version}
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Write tests against structured configuration data";
-    homepage = https://github.com/instrumenta/conftest;
+    homepage = "https://github.com/instrumenta/conftest";
     license = licenses.asl20;
     maintainers = with maintainers; [ yurrriq ];
     platforms = platforms.all;
diff --git a/pkgs/development/tools/continuous-integration/drone-cli/default.nix b/pkgs/development/tools/continuous-integration/drone-cli/default.nix
index c6e4878d52c..a3df81d2605 100644
--- a/pkgs/development/tools/continuous-integration/drone-cli/default.nix
+++ b/pkgs/development/tools/continuous-integration/drone-cli/default.nix
@@ -1,8 +1,11 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ stdenv, fetchFromGitHub, buildGoModule }:
 
-buildGoModule rec {
+let version = "1.2.1";
+in buildGoModule rec {
+  inherit version;
   pname = "drone-cli";
-  version = "1.2.1";
+  revision = "v${version}";
+  goPackagePath = "github.com/drone/drone-cli";
 
   modSha256 = "0g0vq4vm2hy00r2gjsrhg57xv9sldlqix3wzimiqdli085bcz46b";
 
@@ -13,12 +16,10 @@ buildGoModule rec {
   src = fetchFromGitHub {
     owner = "drone";
     repo = "drone-cli";
-    rev = "v${version}";
+    rev = revision;
     sha256 = "19icihi5nxcafxlh4w61nl4cd0dhvik9zl8g4gqmazikjqsjms2j";
   };
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     maintainers = with maintainers; [ bricewge ];
     license = licenses.asl20;
diff --git a/pkgs/development/tools/continuous-integration/drone/default.nix b/pkgs/development/tools/continuous-integration/drone/default.nix
index e1f0a8de3b8..05257f65af5 100644
--- a/pkgs/development/tools/continuous-integration/drone/default.nix
+++ b/pkgs/development/tools/continuous-integration/drone/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ stdenv, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   name = "drone.io-${version}";
@@ -14,8 +14,6 @@ buildGoModule rec {
     sha256 = "05cgd72qyss836fby0adhrm5p8g7639psk2yslhg6pmz0cqfbq9m";
   };
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     maintainers = with maintainers; [ elohmeier vdemeester ];
     license = licenses.asl20;
diff --git a/pkgs/development/tools/continuous-integration/fly/default.nix b/pkgs/development/tools/continuous-integration/fly/default.nix
index 4093e7e0172..483b8e6b30c 100644
--- a/pkgs/development/tools/continuous-integration/fly/default.nix
+++ b/pkgs/development/tools/continuous-integration/fly/default.nix
@@ -1,17 +1,17 @@
-{ buildGoModule, fetchFromGitHub, stdenv, writeText, Security }:
+{ buildGoModule, fetchFromGitHub, lib, writeText }:
 
 buildGoModule rec {
   pname = "fly";
-  version = "5.8.0";
+  version = "6.0.0";
 
   src = fetchFromGitHub {
     owner = "concourse";
     repo = "concourse";
     rev = "v${version}";
-    sha256 = "0ji3jya4b2b4l6dlvydh3k2jfh6kkhii23d6rmi49ypydhn1qmgj";
+    sha256 = "0chavwymyh5kv4fkvdjvf3p5jjx4yn9aavq66333xnsl5pn7q9dq";
   };
 
-  modSha256 = "14wwspp8x6i4ry23bz8b08mfyzrwc9m7clrylxzr8j67yhg5kw6v";
+  modSha256 = "1wiyfii4rmj3rp8ls0ill0sjpnpjz7l3q5fzrscm8ap1qn90gvzg";
 
   subPackages = [ "fly" ];
 
@@ -20,8 +20,6 @@ buildGoModule rec {
       -X github.com/concourse/concourse.Version=${version}
   '';
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   # The fly.bash file included with this derivation can be replaced by a
   # call to `fly completion bash` once the `completion` subcommand has
   # made it into a release. Similarly, `fly completion zsh` will provide
@@ -30,7 +28,7 @@ buildGoModule rec {
     install -D -m 444 ${./fly.bash} $out/share/bash-completion/completions/fly
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A command line interface to Concourse CI";
     homepage = "https://concourse-ci.org";
     license = licenses.asl20;
diff --git a/pkgs/development/tools/continuous-integration/jenkins/default.nix b/pkgs/development/tools/continuous-integration/jenkins/default.nix
index 0fe4de98f1d..ec02cb26b8e 100644
--- a/pkgs/development/tools/continuous-integration/jenkins/default.nix
+++ b/pkgs/development/tools/continuous-integration/jenkins/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "jenkins";
-  version = "2.204.5";
+  version = "2.222.1";
 
   src = fetchurl {
     url = "http://mirrors.jenkins.io/war-stable/${version}/jenkins.war";
-    sha256 = "17437wshci2fyvvaznzk738m2npqa61w16aw5jslw2ifnyjkziwl";
+    sha256 = "0glmx8xi99mbfr84hi4sn36qkxw00rfn8wlz5n674ygbdj1vnv2s";
   };
 
   buildCommand = ''
diff --git a/pkgs/development/tools/corundum/Gemfile.lock b/pkgs/development/tools/corundum/Gemfile.lock
index 40ad1948394..596a689e3a2 100644
--- a/pkgs/development/tools/corundum/Gemfile.lock
+++ b/pkgs/development/tools/corundum/Gemfile.lock
@@ -53,4 +53,4 @@ DEPENDENCIES
   corundum (= 0.6.2)
 
 BUNDLED WITH
-   1.14.4
+   2.1.4
diff --git a/pkgs/development/tools/cucumber/Gemfile.lock b/pkgs/development/tools/cucumber/Gemfile.lock
index a9a2d073de4..82a97214493 100644
--- a/pkgs/development/tools/cucumber/Gemfile.lock
+++ b/pkgs/development/tools/cucumber/Gemfile.lock
@@ -31,4 +31,4 @@ DEPENDENCIES
   cucumber
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/tools/cue/default.nix b/pkgs/development/tools/cue/default.nix
index 4950e885e25..98bf5249b62 100644
--- a/pkgs/development/tools/cue/default.nix
+++ b/pkgs/development/tools/cue/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchgit, stdenv, Security }:
+{ buildGoModule, fetchgit, stdenv }:
 
 buildGoModule rec {
   pname = "cue";
@@ -12,8 +12,6 @@ buildGoModule rec {
 
   modSha256 = "04dapx75zwi8cv1pj3c6266znrhwihv3df4izm3gjk34r2i07q6s";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   subPackages = [ "cmd/cue" ];
 
   buildFlagsArray = [
diff --git a/pkgs/development/tools/database/dbmate/default.nix b/pkgs/development/tools/database/dbmate/default.nix
index 57aa9c654d7..efc20b6972b 100644
--- a/pkgs/development/tools/database/dbmate/default.nix
+++ b/pkgs/development/tools/database/dbmate/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "dbmate";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "12x3m5bjyx3blh5i51pd99phv73m96pmm6i3ir4vf2kms3viif9i";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "Database migration tool";
     homepage = https://github.com/amacneil/dbmate;
diff --git a/pkgs/development/tools/database/dbmate/deps.nix b/pkgs/development/tools/database/dbmate/deps.nix
new file mode 100644
index 00000000000..97bfc10b20a
--- /dev/null
+++ b/pkgs/development/tools/database/dbmate/deps.nix
@@ -0,0 +1,84 @@
+# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
+[
+  {
+    goPackagePath  = "github.com/davecgh/go-spew";
+    fetch = {
+      type = "git";
+      url = "https://github.com/davecgh/go-spew";
+      rev =  "346938d642f2ec3594ed81d874461961cd0faa76";
+      sha256 = "0d4jfmak5p6lb7n2r6yvf5p1zcw0l8j74kn55ghvr7zr7b7axm6c";
+    };
+  }
+  {
+    goPackagePath  = "github.com/go-sql-driver/mysql";
+    fetch = {
+      type = "git";
+      url = "https://github.com/go-sql-driver/mysql";
+      rev =  "2cc627ac8defc45d65066ae98f898166f580f9a4";
+      sha256 = "0n589y9ak2m6glaqmqlggrfv2hghy5i2906r123svf92ci4r9sww";
+    };
+  }
+  {
+    goPackagePath  = "github.com/joho/godotenv";
+    fetch = {
+      type = "git";
+      url = "https://github.com/joho/godotenv";
+      rev =  "a79fa1e548e2c689c241d10173efd51e5d689d5b";
+      sha256 = "09610yqswxa02905mp9cqgsm50r76saagzddc55sqav4ad04j6qm";
+    };
+  }
+  {
+    goPackagePath  = "github.com/lib/pq";
+    fetch = {
+      type = "git";
+      url = "https://github.com/lib/pq";
+      rev =  "19c8e9ad00952ce0c64489b60e8df88bb16dd514";
+      sha256 = "0lm79ja5id7phf1jwf1vs987azaxis0q7qr69px0r6gqiva0q0vz";
+    };
+  }
+  {
+    goPackagePath  = "github.com/mattn/go-sqlite3";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-sqlite3";
+      rev =  "6c771bb9887719704b210e87e934f08be014bdb1";
+      sha256 = "0x6s7hy3ab3qw6dfl81y7ighjva5j4rrzvqhppf1qwz5alpfmpdm";
+    };
+  }
+  {
+    goPackagePath  = "github.com/pmezard/go-difflib";
+    fetch = {
+      type = "git";
+      url = "https://github.com/pmezard/go-difflib";
+      rev =  "792786c7400a136282c1664665ae0a8db921c6c2";
+      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
+    };
+  }
+  {
+    goPackagePath  = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev =  "b91bfb9ebec76498946beb6af7c0230c7cc7ba6c";
+      sha256 = "178xyfgsbs40jq406aqj0r67ik1b81gdc28z45nbcw6hfhz82rvl";
+    };
+  }
+  {
+    goPackagePath  = "github.com/urfave/cli";
+    fetch = {
+      type = "git";
+      url = "https://github.com/urfave/cli";
+      rev =  "cfb38830724cc34fedffe9a2a29fb54fa9169cd1";
+      sha256 = "0y6f4sbzkiiwrxbl15biivj8c7qwxnvm3zl2dd3mw4wzg4x10ygj";
+    };
+  }
+  {
+    goPackagePath  = "google.golang.org/appengine";
+    fetch = {
+      type = "git";
+      url = "https://github.com/golang/appengine";
+      rev =  "150dc57a1b433e64154302bdc40b6bb8aefa313a";
+      sha256 = "0w3knznv39k8bm85ri62f83czcrxknql7dv6p9hk1a5jx3xljgxq";
+    };
+  }
+]
diff --git a/pkgs/development/tools/database/liquibase/default.nix b/pkgs/development/tools/database/liquibase/default.nix
index 890ef73a73f..d66d54ef45b 100644
--- a/pkgs/development/tools/database/liquibase/default.nix
+++ b/pkgs/development/tools/database/liquibase/default.nix
@@ -10,11 +10,11 @@ in
 
 stdenv.mkDerivation rec {
   pname = "liquibase";
-  version = "3.8.7";
+  version = "3.8.8";
 
   src = fetchurl {
     url = "https://github.com/liquibase/liquibase/releases/download/v${version}/${pname}-${version}.tar.gz";
-    sha256 = "0gs3pmzyx2bz6af2fr5jla3s33vfaw64pgahfvj5bgpj6d7vx1wg";
+    sha256 = "1pl9wgnwykvbnis0ndym0lbsj6a7lvpghrc98cw2hdnp5dglxjjl";
   };
 
   buildInputs = [ jre makeWrapper ];
diff --git a/pkgs/development/tools/database/litecli/default.nix b/pkgs/development/tools/database/litecli/default.nix
index 8881bce1a38..fada7fd1e07 100644
--- a/pkgs/development/tools/database/litecli/default.nix
+++ b/pkgs/development/tools/database/litecli/default.nix
@@ -2,7 +2,7 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "litecli";
-  version = "1.1.0";
+  version = "1.3.2";
 
   # Python 2 won't have prompt_toolkit 2.x.x
   # See: https://github.com/NixOS/nixpkgs/blob/f49e2ad3657dede09dc998a4a98fd5033fb52243/pkgs/top-level/python-packages.nix#L3408
@@ -10,7 +10,7 @@ python3Packages.buildPythonApplication rec {
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "0cqil2cmnbw0jvb14v6kbr7l9yarfgy253cbb8v9znp0l4qfs7ra";
+    sha256 = "0bfx7fw6jnkqxa82xvd10yx1w2wbmrrqxwbh4anp5x9wnl91a9lp";
   };
 
   propagatedBuildInputs = with python3Packages; [
@@ -30,7 +30,8 @@ python3Packages.buildPythonApplication rec {
   preCheck = ''
     export XDG_CONFIG_HOME=$TMP
     # add missing file
-    echo "litecli is awesome!" > tests/test.txt
+    mkdir -p tests/data
+    echo -e "t1,11\nt2,22\n" > tests/data/import_data.csv
   '';
 
   meta = with lib; {
diff --git a/pkgs/development/tools/database/sqlite-web/default.nix b/pkgs/development/tools/database/sqlite-web/default.nix
index a1b8ece1236..9a9314fde9b 100644
--- a/pkgs/development/tools/database/sqlite-web/default.nix
+++ b/pkgs/development/tools/database/sqlite-web/default.nix
@@ -4,11 +4,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "sqlite-web";
-  version = "0.3.5";
+  version = "0.3.6";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "9e0c8938434b0129423544162d4ca6975abf7042c131445f79661a4b9c885d47";
+    sha256 = "17pymadm063358nji70xzma64zkfv26c3pai5i1whsfp9ahqzasg";
   };
 
   propagatedBuildInputs = with python3Packages; [ flask peewee pygments ];
@@ -18,7 +18,7 @@ python3Packages.buildPythonApplication rec {
 
   meta = with lib; {
     description = "Web-based SQLite database browser";
-    homepage = https://github.com/coleifer/sqlite-web;
+    homepage = "https://github.com/coleifer/sqlite-web";
     license = licenses.mit;
     maintainers = [ maintainers.costrouc ];
   };
diff --git a/pkgs/development/tools/distgen/default.nix b/pkgs/development/tools/distgen/default.nix
index 7db4db24689..dbf00ea8e05 100644
--- a/pkgs/development/tools/distgen/default.nix
+++ b/pkgs/development/tools/distgen/default.nix
@@ -2,11 +2,11 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "distgen";
-  version = "1.4";
+  version = "1.5";
 
   src = python3.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "13k940xgpci754gmmnhz3j5rfvlg9hdh21j4yjh8dlr6g88qjc1x";
+    sha256 = "08f9rw5irgv0gw7jizk5f9csn0yhrdnb84k40px1zbypsylvr5c5";
   };
 
   checkInputs = with python3.pkgs; [
diff --git a/pkgs/development/tools/dive/default.nix b/pkgs/development/tools/dive/default.nix
index 91889e80c04..5d4de99ffdb 100644
--- a/pkgs/development/tools/dive/default.nix
+++ b/pkgs/development/tools/dive/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, pkg-config, btrfs-progs, gpgme, lvm2, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub, pkg-config, btrfs-progs, gpgme, lvm2 }:
 
 buildGoModule rec {
   pname = "dive";
@@ -15,8 +15,7 @@ buildGoModule rec {
 
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isLinux [ btrfs-progs gpgme lvm2 ]
-    ++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  buildInputs = stdenv.lib.optionals stdenv.isLinux [ btrfs-progs gpgme lvm2 ];
 
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
diff --git a/pkgs/development/tools/ejson/Gemfile.lock b/pkgs/development/tools/ejson/Gemfile.lock
index 52c82545bf3..d0a51c0a062 100644
--- a/pkgs/development/tools/ejson/Gemfile.lock
+++ b/pkgs/development/tools/ejson/Gemfile.lock
@@ -51,4 +51,4 @@ DEPENDENCIES
   ronn
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/tools/flyway/default.nix b/pkgs/development/tools/flyway/default.nix
index 1498d179d22..746d66c2dbe 100644
--- a/pkgs/development/tools/flyway/default.nix
+++ b/pkgs/development/tools/flyway/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, jre_headless, makeWrapper }:
   let
-    version = "6.2.4";
+    version = "6.3.2";
   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 = "1ng4ygd44hl63amjaizldsngn72jfz5pqw7wgr1vyvdxdzjfcnwm";
+        sha256 = "1av1q7znphpsi1iz4dbh0fgh3jsx9prz980b25yk5r89h518s76q";
       };
       nativeBuildInputs = [ makeWrapper ];
       dontBuild = true;
diff --git a/pkgs/development/tools/fmbt/default.nix b/pkgs/development/tools/fmbt/default.nix
index 3100daae389..71365c01bfd 100644
--- a/pkgs/development/tools/fmbt/default.nix
+++ b/pkgs/development/tools/fmbt/default.nix
@@ -4,14 +4,14 @@
 , tesseract, gts, libXtst
 }:
 stdenv.mkDerivation rec {
-  version = "0.39";
+  version = "0.42";
   pname = "fMBT";
 
   src = fetchFromGitHub {
     owner = "intel";
     repo = "fMBT";
     rev = "v${version}";
-    sha256 = "15sxwdcsjybq50vkla4md2ay8m67ndc4vwcsl5vwsjkim5qlxslb";
+    sha256 = "1jb9nb2mipc5cg99a80dny4m06vz2zral0q30fv75rz2cb6ja4zp";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig flex makeWrapper
diff --git a/pkgs/development/tools/git-repo-updater/default.nix b/pkgs/development/tools/git-repo-updater/default.nix
index 6acb628a322..dbf83677999 100644
--- a/pkgs/development/tools/git-repo-updater/default.nix
+++ b/pkgs/development/tools/git-repo-updater/default.nix
@@ -3,11 +3,11 @@
 
 buildPythonApplication rec {
   pname = "gitup";
-  version = "0.5";
+  version = "0.5.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "11ilz9i2yxrbipyjzpfkj7drx9wkrn3phvd1a60jivphbqdldpgf";
+    sha256 = "1pa612rcc94nc461zs9sag9p46sycc214622b06gdn35rmwp0y2g";
   };
 
   propagatedBuildInputs = [ colorama GitPython ];
diff --git a/pkgs/development/tools/github-changelog-generator/Gemfile.lock b/pkgs/development/tools/github-changelog-generator/Gemfile.lock
index b1b955cba94..d1f67ddd474 100644
--- a/pkgs/development/tools/github-changelog-generator/Gemfile.lock
+++ b/pkgs/development/tools/github-changelog-generator/Gemfile.lock
@@ -46,4 +46,4 @@ DEPENDENCIES
   github_changelog_generator (= 1.14.3)
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/development/tools/go-tools/default.nix b/pkgs/development/tools/go-tools/default.nix
index b047689b81f..1fd17060bd4 100644
--- a/pkgs/development/tools/go-tools/default.nix
+++ b/pkgs/development/tools/go-tools/default.nix
@@ -1,7 +1,6 @@
 { buildGoModule
-, stdenv
+, lib
 , fetchFromGitHub
-, Security
 }:
 
 buildGoModule rec {
@@ -17,11 +16,9 @@ buildGoModule rec {
     sha256 = "0pvi1mzhy6zgx4zfgdypbl4zhvgg11hl5qv7blf2qs0a96j2djhf";
   };
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   modSha256 = "03560xjr2531xj87paskfx2zs364fz6y4kpsid8x08s1syq9nq7p";
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A collection of tools and libraries for working with Go code, including linters and static analysis";
     homepage = https://staticcheck.io;
     license = licenses.mit;
diff --git a/pkgs/development/tools/go2nix/default.nix b/pkgs/development/tools/go2nix/default.nix
index 26458a3ca2e..adf0977c67d 100644
--- a/pkgs/development/tools/go2nix/default.nix
+++ b/pkgs/development/tools/go2nix/default.nix
@@ -19,7 +19,8 @@ buildGoPackage rec {
 
   outputs = [ "bin" "out" "man" ];
 
-  buildInputs = [ go-bindata gotools makeWrapper ];
+  nativeBuildInputs = [ go-bindata gotools makeWrapper ];
+
   preBuild = ''go generate ./...'';
 
   postInstall = ''
diff --git a/pkgs/development/tools/godot/default.nix b/pkgs/development/tools/godot/default.nix
index 56b81f494e1..832d30ee8e8 100644
--- a/pkgs/development/tools/godot/default.nix
+++ b/pkgs/development/tools/godot/default.nix
@@ -10,13 +10,13 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "godot";
-  version = "3.2";
+  version = "3.2.1";
 
   src = fetchFromGitHub {
     owner  = "godotengine";
     repo   = "godot";
     rev    = "${version}-stable";
-    sha256 = "0f15izjl4i2xlz1xj5pcslzl9gm3rmr3c21gh256ynpi2zhhkcdd";
+    sha256 = "1kndls0rklha7kz9l4i2ivjxab4jpk3b2j7dcgcg2qc3s81yd0r6";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/tools/golangci-lint/default.nix b/pkgs/development/tools/golangci-lint/default.nix
index 00858e94bc5..14311b0c7a5 100644
--- a/pkgs/development/tools/golangci-lint/default.nix
+++ b/pkgs/development/tools/golangci-lint/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   pname = "golangci-lint";
@@ -14,9 +14,7 @@ buildGoModule rec {
   modSha256 = "0ab1s8pqkpss15rd9brin39lzx2fqkvq2v3nhk8kfrgpari2addk";
   subPackages = [ "cmd/golangci-lint" ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Linters Runner for Go. 5x faster than gometalinter. Nice colored output.";
     homepage = "https://golangci.com/";
     license = licenses.agpl3;
diff --git a/pkgs/development/tools/haskell/ihaskell/wrapper.nix b/pkgs/development/tools/haskell/ihaskell/wrapper.nix
index 0f42a5e3490..9b33d6e0670 100644
--- a/pkgs/development/tools/haskell/ihaskell/wrapper.nix
+++ b/pkgs/development/tools/haskell/ihaskell/wrapper.nix
@@ -9,7 +9,7 @@ let
   ihaskellSh = writeScriptBin "ihaskell-notebook" ''
     #! ${stdenv.shell}
     export GHC_PACKAGE_PATH="$(echo ${ihaskellEnv}/lib/*/package.conf.d| tr ' ' ':'):$GHC_PACKAGE_PATH"
-    export PATH="${stdenv.lib.makeBinPath ([ ihaskellEnv jupyter ])}\${PATH:+':'}$PATH"
+    export PATH="${stdenv.lib.makeBinPath ([ ihaskellEnv jupyter ])}''${PATH:+':'}$PATH
     ${ihaskellEnv}/bin/ihaskell install -l $(${ihaskellEnv}/bin/ghc --print-libdir) && ${jupyter}/bin/jupyter notebook
   '';
 in
diff --git a/pkgs/development/tools/hcloud/default.nix b/pkgs/development/tools/hcloud/default.nix
index c20f3b9dc12..477a476dfe7 100644
--- a/pkgs/development/tools/hcloud/default.nix
+++ b/pkgs/development/tools/hcloud/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "hcloud";
@@ -15,8 +15,6 @@ buildGoModule rec {
 
   modSha256 = "1zy41hi2qzrdmih3pkpng8im576lhkr64zm66w73p7jyvy0kf9sx";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = [ "-ldflags=" "-w -X github.com/hetznercloud/cli/cli.Version=${version}" ];
 
   postInstall = ''
diff --git a/pkgs/development/tools/jazzy/Gemfile.lock b/pkgs/development/tools/jazzy/Gemfile.lock
index 210dc101a24..f703cb707e6 100644
--- a/pkgs/development/tools/jazzy/Gemfile.lock
+++ b/pkgs/development/tools/jazzy/Gemfile.lock
@@ -100,4 +100,4 @@ DEPENDENCIES
   jazzy
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/development/tools/jsduck/Gemfile.lock b/pkgs/development/tools/jsduck/Gemfile.lock
index 2a95d72c946..d8331181652 100644
--- a/pkgs/development/tools/jsduck/Gemfile.lock
+++ b/pkgs/development/tools/jsduck/Gemfile.lock
@@ -20,4 +20,4 @@ DEPENDENCIES
   jsduck
 
 BUNDLED WITH
-   1.13.6
+   2.1.4
diff --git a/pkgs/development/tools/just/default.nix b/pkgs/development/tools/just/default.nix
index 5641a14e1ab..b0b73d03d10 100644
--- a/pkgs/development/tools/just/default.nix
+++ b/pkgs/development/tools/just/default.nix
@@ -2,16 +2,26 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "just";
-  version = "0.4.5";
+  version = "0.5.10";
 
   src = fetchFromGitHub {
     owner = "casey";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0a4bml9nxvyh110a60l4lc11yr2ds5r8d3iplslccrkq1ka96av9";
+    sha256 = "0s8np28glzn3kmh59dwk86yc9fb2lm9fq2325kzmy7rkb5jsdcl1";
   };
 
-  cargoSha256 = "0wp61zjws9r1aapkapvq2vmad5kylkpw03wa82qhhq30knkpvr7b";
+  cargoSha256 = "05mrzav3aydvwac9jjckdmlxvxnlcncmkfsdb9z7zvxia4k89w1l";
+
+  postInstall = ''
+    # generate completion scripts for just
+
+    mkdir -p "$out/share/"{bash-completion/completions,fish/vendor_completions.d,zsh/site-functions}
+
+    $out/bin/just --completions bash > "$out/share/bash-completion/completions/just"
+    $out/bin/just --completions fish > "$out/share/fish/vendor_completions.d/just.fish"
+    $out/bin/just --completions zsh  > "$out/share/zsh/site-functions/_just"
+  '';
 
   checkInputs = [ coreutils bash dash ];
 
@@ -20,20 +30,25 @@ rustPlatform.buildRustPackage rec {
     export USER=just-user
     export USERNAME=just-user
 
-    sed -i tests/integration.rs \
-        -e "s@/bin/echo@${coreutils}/bin/echo@g" \
-        -e "s@#!/usr/bin/env sh@#!${bash}/bin/sh@g" \
-        -e "s@#!/usr/bin/env cat@#!${coreutils}/bin/cat@g"
-
-    sed -i tests/interrupts.rs \
-        -e "s@/bin/echo@${coreutils}/bin/echo@g" \
-        -e "s@#!/usr/bin/env sh@#!${bash}/bin/sh@g" \
-        -e "s@#!/usr/bin/env cat@#!${coreutils}/bin/cat@g"
-
     sed -i src/justfile.rs \
+        -i tests/*.rs \
         -e "s@/bin/echo@${coreutils}/bin/echo@g" \
         -e "s@#!/usr/bin/env sh@#!${bash}/bin/sh@g" \
-        -e "s@#!/usr/bin/env cat@#!${coreutils}/bin/cat@g"
+        -e "s@#!/usr/bin/env cat@#!${coreutils}/bin/cat@g" \
+        -e "s@#!/usr/bin/env bash@#!${bash}/bin/sh@g"
+  '';
+
+  # Skip "edit" when running "cargo test",
+  # since this test case needs "cat".
+  checkPhase = ''
+    runHook preCheck
+    echo "Running cargo test --
+        --skip edit
+        ''${checkFlags} ''${checkFlagsArray+''${checkFlagsArray[@]}}"
+    cargo test -- \
+        --skip edit \
+        ''${checkFlags} ''${checkFlagsArray+"''${checkFlagsArray[@]}"}
+    runHook postCheck
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/kcli/default.nix b/pkgs/development/tools/kcli/default.nix
index 0d42df3b5e4..bbcb10a354c 100644
--- a/pkgs/development/tools/kcli/default.nix
+++ b/pkgs/development/tools/kcli/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "kcli";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "1wcqh3306q9wxb6pnl8cpk73vmy36bjv2gil03j7j4pajs1f2lwn";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   subPackages = [ "." ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/kubeprompt/default.nix b/pkgs/development/tools/kubeprompt/default.nix
index 0910c061ee5..7c6f3f3396c 100644
--- a/pkgs/development/tools/kubeprompt/default.nix
+++ b/pkgs/development/tools/kubeprompt/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "kubeprompt";
@@ -21,8 +21,6 @@ buildGoModule rec {
   goPackagePath = "github.com/jlesquembre/kubeprompt";
   modSha256 = "0rbpdk2dixywn3wcdgz48f3xw3b7fk8xh7mrlx27wz7fq5wj9v8f";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "Kubernetes prompt";
     homepage = "https://github.com/jlesquembre/kubeprompt";
diff --git a/pkgs/development/tools/kubie/default.nix b/pkgs/development/tools/kubie/default.nix
index cadaf8238b3..c1fc313fbc1 100644
--- a/pkgs/development/tools/kubie/default.nix
+++ b/pkgs/development/tools/kubie/default.nix
@@ -4,16 +4,16 @@ with rustPlatform;
 
 buildRustPackage rec {
   pname = "kubie";
-  version = "0.7.1";
+  version = "0.7.3";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "sbstp";
     repo = "kubie";
-    sha256 = "0c94ggrkzyy8zl2z5r4pgfscyhcjp4x64k3bl2byqp3ysgjwkjqx";
+    sha256 = "186h5fng16gwqhsy2nxswbrrxsx0ysqrb4pqznyygbiz5cd9bgxp";
   };
 
-  cargoSha256 = "1lzyda838s9fmg8hibg2w2wszwyvvqsy20w9877skfcx370rvndi";
+  cargoSha256 = "1yllpi8dp1fy39z4zmhyf1hdjpl62vwh8b8qlj0g778qsdrm9p98";
 
   meta = with stdenv.lib; {
     description =
diff --git a/pkgs/development/tools/kustomize/default.nix b/pkgs/development/tools/kustomize/default.nix
index ce173e89a2c..e60181e9bc4 100644
--- a/pkgs/development/tools/kustomize/default.nix
+++ b/pkgs/development/tools/kustomize/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub, tree }:
 
 buildGoModule rec {
   pname = "kustomize";
@@ -25,9 +25,7 @@ buildGoModule rec {
 
   modSha256 = "1bas6al14ck0d2ccb4235426a5hldqsm0nf8vi76chz4nahzb71g";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Customization of kubernetes YAML configurations";
     longDescription = ''
       kustomize lets you customize raw, template-free YAML files for
diff --git a/pkgs/development/tools/lazygit/default.nix b/pkgs/development/tools/lazygit/default.nix
index 9a27c7d44e9..4b99cfb10e0 100644
--- a/pkgs/development/tools/lazygit/default.nix
+++ b/pkgs/development/tools/lazygit/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "lazygit";
-  version = "0.16.2";
+  version = "0.18";
 
   goPackagePath = "github.com/jesseduffield/lazygit";
 
@@ -12,7 +12,7 @@ buildGoPackage rec {
     owner = "jesseduffield";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0lvhj4iz74h97lkylqg7hl18xcxcl9msxxvap7jqdj2mf2iwxi32";
+    sha256 = "1zc6y386w111ygyng5s74zg49iajzs77dbrcdy33igj0hbnkwq2x";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/metals/default.nix b/pkgs/development/tools/metals/default.nix
index 6a6aafaf9e5..85a27fd9150 100644
--- a/pkgs/development/tools/metals/default.nix
+++ b/pkgs/development/tools/metals/default.nix
@@ -2,7 +2,7 @@
 
 let
   baseName = "metals";
-  version = "0.8.2";
+  version = "0.8.3";
   deps = stdenv.mkDerivation {
     name = "${baseName}-deps-${version}";
     buildCommand = ''
@@ -15,7 +15,7 @@ let
     '';
     outputHashMode = "recursive";
     outputHashAlgo = "sha256";
-    outputHash     = "09acvrfv23q1iv4sq7jhpf5frcv7dk2nq147licma5iixc726bdx";
+    outputHash     = "1l196glr7rbsvrqmq6i7iw532jkz8d1w5m9nh0kh5z12visc7bkk";
   };
 in
 stdenv.mkDerivation rec {
diff --git a/pkgs/development/tools/minizinc/ide.nix b/pkgs/development/tools/minizinc/ide.nix
index 921ee3d158c..aedf2ab881d 100644
--- a/pkgs/development/tools/minizinc/ide.nix
+++ b/pkgs/development/tools/minizinc/ide.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchFromGitHub, qtbase, qtwebengine, qtwebkit, qmake, makeWrapper, minizinc }:
 let
-  version = "2.4.2";
+  version = "2.4.3";
 in
 stdenv.mkDerivation {
   pname = "minizinc-ide";
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
     owner = "MiniZinc";
     repo = "MiniZincIDE";
     rev = version;
-    sha256 = "1xqs27f14r79vcxf9bx72bbnhxc913lpr5d8cv31dacbq5fyxkw7";
+    sha256 = "0dfqh73rnp00336pyr1hlgl1wb4m2kh28zvdkamjgml60gmg6wdr";
   };
 
   sourceRoot = "source/MiniZincIDE";
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://www.minizinc.org/;
+    homepage = "https://www.minizinc.org/";
     description = "IDE for MiniZinc, a medium-level constraint modelling language";
 
     longDescription = ''
diff --git a/pkgs/development/tools/misc/act/default.nix b/pkgs/development/tools/misc/act/default.nix
index 17ff15265f2..885cef99111 100644
--- a/pkgs/development/tools/misc/act/default.nix
+++ b/pkgs/development/tools/misc/act/default.nix
@@ -1,23 +1,21 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ lib, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   pname = "act";
-  version = "0.2.6";
+  version = "0.2.7";
 
   src = fetchFromGitHub {
     owner = "nektos";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0l7id483006mnii4rlcff4p0ricd8a2n24sf74a9b387x0akpbsn";
+    sha256 = "0qx3vwsynmil1h3d2dzvqz0jzshfyy3vin14zjfmd353d915hf06";
   };
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  modSha256 = "04s4p9j6j7gw1s4v271zwzvdny7dvjaazd2pihmyjfik95xmwx9r";
+  modSha256 = "0276dngh29kzgm95d23r8ajjrrkss0v0f0wfq1ribgsxh17v0y5n";
 
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Run your GitHub Actions locally";
     homepage = "https://github.com/nektos/act";
     license = licenses.mit;
diff --git a/pkgs/development/tools/misc/circleci-cli/default.nix b/pkgs/development/tools/misc/circleci-cli/default.nix
index 0ab126b63e7..fde1c68d34d 100644
--- a/pkgs/development/tools/misc/circleci-cli/default.nix
+++ b/pkgs/development/tools/misc/circleci-cli/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ stdenv, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   pname = "circleci-cli";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "199ai38knp50mjjhddjd70qfwx63c69rf7ddw4hpzgx5cm5a04q2";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = [ "-ldflags=-s -w -X github.com/CircleCI-Public/circleci-cli/version.Version=${version}" ];
 
   preBuild = ''
diff --git a/pkgs/development/tools/misc/clojure-lsp/default.nix b/pkgs/development/tools/misc/clojure-lsp/default.nix
index 4f8ae1a4149..c12d0319386 100644
--- a/pkgs/development/tools/misc/clojure-lsp/default.nix
+++ b/pkgs/development/tools/misc/clojure-lsp/default.nix
@@ -2,19 +2,23 @@
 
 stdenv.mkDerivation rec {
   pname = "clojure-lsp";
-  version = "20200305T151710";
+  version = "20200314T202821";
 
   src = fetchurl {
     url = "https://github.com/snoe/clojure-lsp/releases/download/release-${version}/${pname}";
-    sha256 = "0zi05skp36azv0b6spxdscal32cj5rc6g0d0gzfnsaavvxd128lg";
+    sha256 = "1phfy4cw8pdx2ylfqc4gkniawlz5qn1bih64cx0hsc5i8n0v6qjz";
   };
 
   dontUnpack = true;
 
   installPhase = ''
     install -Dm755 $src $out/bin/clojure-lsp
+    sed -i -e '1 s!java!${jre}/bin/java!' $out/bin/clojure-lsp
   '';
 
+  # verify shebang patch
+  installCheckPhase = "PATH= clojure-lsp --version";
+
   meta = with stdenv.lib; {
     description = "Language Server Protocol (LSP) for Clojure";
     homepage = "https://github.com/snoe/clojure-lsp";
diff --git a/pkgs/development/tools/misc/editorconfig-checker/default.nix b/pkgs/development/tools/misc/editorconfig-checker/default.nix
index 335cd2f2524..88c43a8c42a 100644
--- a/pkgs/development/tools/misc/editorconfig-checker/default.nix
+++ b/pkgs/development/tools/misc/editorconfig-checker/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   pname = "editorconfig-checker";
@@ -13,9 +13,7 @@ buildGoModule rec {
 
   modSha256 = "1iiv12ginb3ky739z7v8wf4z5lv24gmghbybs3lzay0kqn449n4x";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A tool to verify that your files are in harmony with your .editorconfig";
     homepage = "https://editorconfig-checker.github.io/";
     license = licenses.mit;
diff --git a/pkgs/development/tools/misc/elfutils/default.nix b/pkgs/development/tools/misc/elfutils/default.nix
index 06f1e2895c0..7d6f3758fd5 100644
--- a/pkgs/development/tools/misc/elfutils/default.nix
+++ b/pkgs/development/tools/misc/elfutils/default.nix
@@ -28,41 +28,6 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  # This program does not cross-build fine. So I only cross-build some parts
-  # I need for the linux perf tool.
-  # On the awful cross-building:
-  # http://comments.gmane.org/gmane.comp.sysutils.elfutils.devel/2005
-  #
-  # I wrote this testing for the nanonote.
-
-  buildPhase = stdenv.lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
-    pushd libebl
-    make
-    popd
-    pushd libelf
-    make
-    popd
-    pushd libdwfl
-    make
-    popd
-    pushd libdw
-    make
-    popd
-  '';
-
-  installPhase = stdenv.lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) ''
-    pushd libelf
-    make install
-    popd
-    pushd libdwfl
-    make install
-    popd
-    pushd libdw
-    make install
-    popd
-    cp version.h $out/include
-  '';
-
   doCheck = false; # fails 3 out of 174 tests
   doInstallCheck = false; # fails 70 out of 174 tests
 
diff --git a/pkgs/development/tools/misc/gdbgui/default.nix b/pkgs/development/tools/misc/gdbgui/default.nix
index b021a3e222b..d5f8cfa173b 100644
--- a/pkgs/development/tools/misc/gdbgui/default.nix
+++ b/pkgs/development/tools/misc/gdbgui/default.nix
@@ -12,7 +12,7 @@
 
 buildPythonApplication rec {
   pname = "gdbgui";
-  version = "0.13.1.1";
+  version = "0.13.2.0";
 
   buildInputs = [ gdb ];
   propagatedBuildInputs = [
@@ -26,7 +26,7 @@ buildPythonApplication rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1ypxgkxwb443ndyrmsa7zx2hn0d9b3s7n2w49ngfghd3l8k0yvi2";
+    sha256 = "0m1fnwafzrpk77yj3p26vszlz11cv4g2lj38kymk1ilcifh4gqw0";
   };
 
   postPatch = ''
diff --git a/pkgs/development/tools/misc/gede/default.nix b/pkgs/development/tools/misc/gede/default.nix
index 00cc411dc40..0965f9fcddc 100644
--- a/pkgs/development/tools/misc/gede/default.nix
+++ b/pkgs/development/tools/misc/gede/default.nix
@@ -2,11 +2,11 @@
 
 mkDerivation rec {
   pname = "gede";
-  version = "2.15.4";
+  version = "2.16.2";
 
   src = fetchurl {
     url = "http://gede.acidron.com/uploads/source/${pname}-${version}.tar.xz";
-    sha256 = "0bg7vyvznn1gn6w5yn14j59xph9psf2fyxr434pk62wmbzdpmkfg";
+    sha256 = "18a8n9yvhgkbc97p2995j7b5ncfdzy1fy13ahdafqmcpkl4r1hrj";
   };
 
   nativeBuildInputs = [ qmake makeWrapper python ];
diff --git a/pkgs/development/tools/misc/go-license-detector/default.nix b/pkgs/development/tools/misc/go-license-detector/default.nix
index 7ab7ff8b742..6675f7ed3e2 100644
--- a/pkgs/development/tools/misc/go-license-detector/default.nix
+++ b/pkgs/development/tools/misc/go-license-detector/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "go-license-detector";
@@ -13,9 +13,7 @@ buildGoModule rec {
 
   modSha256 = "163f1kiy7kqrnaazb8ydaaiz57lv30jyjkvv6i7pczvcg9yfhmdb";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Reliable project licenses detector";
     homepage = "https://github.com/src-d/go-license-detector";
     license = licenses.asl20;
diff --git a/pkgs/development/tools/misc/hydra-cli/default.nix b/pkgs/development/tools/misc/hydra-cli/default.nix
index 5cdd9b0ce1d..b585d27b710 100644
--- a/pkgs/development/tools/misc/hydra-cli/default.nix
+++ b/pkgs/development/tools/misc/hydra-cli/default.nix
@@ -13,11 +13,11 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "1sj80a99iakxxa698gggiszsrxwlwhr2sx4wmsni0cshx6z2x6za";
 
-  buildInputs = lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
+  buildInputs = [ openssl ]
+                ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ];
 
   nativeBuildInputs = [
     pkgconfig
-    openssl
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/misc/hydra/common.nix b/pkgs/development/tools/misc/hydra/common.nix
new file mode 100644
index 00000000000..52a91db6758
--- /dev/null
+++ b/pkgs/development/tools/misc/hydra/common.nix
@@ -0,0 +1,135 @@
+{ stdenv, nix, perlPackages, buildEnv, fetchFromGitHub
+, makeWrapper, autoconf, automake, libtool, unzip, pkgconfig, sqlite, libpqxx
+, gitAndTools, mercurial, darcs, subversion, bazaar, openssl, bzip2, libxslt
+, guile, perl, postgresql, nukeReferences, git, boehmgc, nlohmann_json
+, docbook_xsl, openssh, gnused, coreutils, findutils, gzip, lzma, gnutar
+, rpm, dpkg, cdrkit, pixz, lib, boost, autoreconfHook, src ? null, version ? null
+, migration ? false, patches ? []
+}:
+
+with stdenv;
+
+if lib.versions.major nix.version == "1"
+  then throw "This Hydra version doesn't support Nix 1.x"
+else
+
+let
+  perlDeps = buildEnv {
+    name = "hydra-perl-deps";
+    paths = with perlPackages; lib.closePropagation
+      [ ModulePluggable
+        CatalystActionREST
+        CatalystAuthenticationStoreDBIxClass
+        CatalystDevel
+        CatalystDispatchTypeRegex
+        CatalystPluginAccessLog
+        CatalystPluginAuthorizationRoles
+        CatalystPluginCaptcha
+        CatalystPluginSessionStateCookie
+        CatalystPluginSessionStoreFastMmap
+        CatalystPluginSmartURI
+        CatalystPluginStackTrace
+        CatalystRuntime
+        CatalystTraitForRequestProxyBase
+        CatalystViewDownload
+        CatalystViewJSON
+        CatalystViewTT
+        CatalystXScriptServerStarman
+        CatalystXRoleApplicator
+        CryptRandPasswd
+        DBDPg
+        DBDSQLite
+        DataDump
+        DateTime
+        DigestSHA1
+        EmailMIME
+        EmailSender
+        FileSlurp
+        IOCompress
+        IPCRun
+        JSON
+        JSONAny
+        JSONXS
+        LWP
+        LWPProtocolHttps
+        NetAmazonS3
+        NetPrometheus
+        NetStatsd
+        PadWalker
+        Readonly
+        SQLSplitStatement
+        SetScalar
+        Starman
+        SysHostnameLong
+        TermSizeAny
+        TextDiff
+        TextTable
+        XMLSimple
+        nix
+        nix.perl-bindings
+        git
+        boehmgc
+      ];
+  };
+in stdenv.mkDerivation rec {
+  pname = "hydra";
+
+  inherit stdenv src version patches;
+
+  buildInputs =
+    [ makeWrapper autoconf automake libtool unzip nukeReferences sqlite libpqxx
+      gitAndTools.top-git mercurial /*darcs*/ subversion bazaar openssl bzip2 libxslt
+      perlDeps perl nix
+      postgresql # for running the tests
+      nlohmann_json
+      boost
+    ];
+
+  hydraPath = lib.makeBinPath (
+    [ sqlite subversion openssh nix coreutils findutils pixz
+      gzip bzip2 lzma gnutar unzip git gitAndTools.top-git mercurial /*darcs*/ gnused bazaar
+    ] ++ lib.optionals stdenv.isLinux [ rpm dpkg cdrkit ] );
+
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+
+  configureFlags = [ "--with-docbook-xsl=${docbook_xsl}/xml/xsl/docbook" ];
+
+  NIX_CFLAGS_COMPILE = "-pthread";
+
+  shellHook = ''
+    PATH=$(pwd)/src/script:$(pwd)/src/hydra-eval-jobs:$(pwd)/src/hydra-queue-runner:$(pwd)/src/hydra-evaluator:$PATH
+    PERL5LIB=$(pwd)/src/lib:$PERL5LIB;
+  '';
+
+  enableParallelBuilding = true;
+
+  preCheck = ''
+    patchShebangs .
+    export LOGNAME=''${LOGNAME:-foo}
+  '';
+
+  postInstall = ''
+    mkdir -p $out/nix-support
+    for i in $out/bin/*; do
+        read -n 4 chars < $i
+        if [[ $chars =~ ELF ]]; then continue; fi
+        wrapProgram $i \
+            --prefix PERL5LIB ':' $out/libexec/hydra/lib:$PERL5LIB \
+            --prefix PATH ':' $out/bin:$hydraPath \
+            --set HYDRA_RELEASE ${version} \
+            --set HYDRA_HOME $out/libexec/hydra \
+            --set NIX_RELEASE ${nix.name or "unknown"}
+    done
+  ''; # */
+
+  dontStrip = true;
+
+  passthru = { inherit perlDeps migration; };
+
+  meta = with stdenv.lib; {
+    description = "Nix-based continuous build system";
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ ma27 ];
+  };
+}
diff --git a/pkgs/development/tools/misc/hydra/default.nix b/pkgs/development/tools/misc/hydra/default.nix
index 72aecf20ca3..9e14e16dbaa 100644
--- a/pkgs/development/tools/misc/hydra/default.nix
+++ b/pkgs/development/tools/misc/hydra/default.nix
@@ -1,143 +1,38 @@
-{ stdenv, nix, perlPackages, buildEnv, fetchFromGitHub
-, makeWrapper, autoconf, automake, libtool, unzip, pkgconfig, sqlite, libpqxx
-, gitAndTools, mercurial, darcs, subversion, bazaar, openssl, bzip2, libxslt
-, guile, perl, postgresql, nukeReferences, git, boehmgc, nlohmann_json
-, docbook_xsl, openssh, gnused, coreutils, findutils, gzip, lzma, gnutar
-, rpm, dpkg, cdrkit, pixz, lib, boost, autoreconfHook
-}:
-
-with stdenv;
-
-if lib.versions.major nix.version == "1"
-  then throw "This Hydra version doesn't support Nix 1.x"
-else
-
-let
-  perlDeps = buildEnv {
-    name = "hydra-perl-deps";
-    paths = with perlPackages; lib.closePropagation
-      [ ModulePluggable
-        CatalystActionREST
-        CatalystAuthenticationStoreDBIxClass
-        CatalystDevel
-        CatalystDispatchTypeRegex
-        CatalystPluginAccessLog
-        CatalystPluginAuthorizationRoles
-        CatalystPluginCaptcha
-        CatalystPluginSessionStateCookie
-        CatalystPluginSessionStoreFastMmap
-        CatalystPluginStackTrace
-        CatalystPluginUnicodeEncoding
-        CatalystTraitForRequestProxyBase
-        CatalystViewDownload
-        CatalystViewJSON
-        CatalystViewTT
-        CatalystXScriptServerStarman
-        CatalystXRoleApplicator
-        CryptRandPasswd
-        DBDPg
-        DBDSQLite
-        DataDump
-        DateTime
-        DigestSHA1
-        EmailMIME
-        EmailSender
-        FileSlurp
-        IOCompress
-        IPCRun
-        JSON
-        JSONAny
-        JSONXS
-        LWP
-        LWPProtocolHttps
-        NetAmazonS3
-        NetPrometheus
-        NetStatsd
-        PadWalker
-        Readonly
-        SQLSplitStatement
-        SetScalar
-        Starman
-        SysHostnameLong
-        TermSizeAny
-        TestMore
-        TextDiff
-        TextTable
-        XMLSimple
-        nix
-        nix.perl-bindings
-        git
-        boehmgc
-      ];
+{ fetchFromGitHub, nixStable, callPackage, nixFlakes, fetchpatch }:
+
+{
+  # Package for phase-1 of the db migration for Hydra.
+  # https://github.com/NixOS/hydra/pull/711
+  hydra-migration = callPackage ./common.nix {
+    version = "2020-02-10";
+    src = fetchFromGitHub {
+      owner = "NixOS";
+      repo = "hydra";
+      rev = "add4f610ce6f206fb44702b5a894d877b3a30e3a";
+      sha256 = "1d8hdgjx2ys0zmixi2ydmimdq7ml20h1ji4amwawcyw59kssh6l3";
+    };
+    nix = nixStable;
+    migration = true;
   };
-in stdenv.mkDerivation rec {
-  pname = "hydra";
-  version = "2020-02-06";
 
-  inherit stdenv;
-
-  src = fetchFromGitHub {
-    owner = "NixOS";
-    repo = pname;
-    rev = "2b4f14963b16b21ebfcd6b6bfa7832842e9b2afc";
-    sha256 = "16q0cffcsfx5pqd91n9k19850c1nbh4vvbd9h8yi64ihn7v8bick";
-  };
-
-  buildInputs =
-    [ makeWrapper autoconf automake libtool unzip nukeReferences sqlite libpqxx
-      gitAndTools.top-git mercurial darcs subversion bazaar openssl bzip2 libxslt
-      guile # optional, for Guile + Guix support
-      perlDeps perl nix
-      postgresql # for running the tests
-      nlohmann_json
-      boost
+  # Hydra from latest master branch. Contains breaking changes,
+  # so when having an older version, `pkgs.hydra-migration` should be deployed first.
+
+  hydra-unstable = callPackage ./common.nix {
+    version = "2020-04-07";
+    src = fetchFromGitHub {
+      owner = "NixOS";
+      repo = "hydra";
+      rev = "4cabb37ebdeade1435ad8ebf1913cdd603b9c452";
+      sha256 = "1ccy639x6yyrqqqqli7vlqm6pcvcq5dx1w3ckba77rl8pd5h31f7";
+    };
+    patches = [
+      # https://github.com/NixOS/hydra/pull/732
+      (fetchpatch {
+        url = "https://github.com/NixOS/hydra/commit/2f9d422172235297759f2b224fe0636cad07b6fb.patch";
+        sha256 = "0152nsqqc5d85qdygmwrsk88i9y6nk1b639fj2n042pjvr0kpz6k";
+      })
     ];
-
-  hydraPath = lib.makeBinPath (
-    [ sqlite subversion openssh nix coreutils findutils pixz
-      gzip bzip2 lzma gnutar unzip git gitAndTools.top-git mercurial darcs gnused bazaar
-    ] ++ lib.optionals stdenv.isLinux [ rpm dpkg cdrkit ] );
-
-  nativeBuildInputs = [ autoreconfHook pkgconfig ];
-
-  configureFlags = [ "--with-docbook-xsl=${docbook_xsl}/xml/xsl/docbook" ];
-
-  NIX_CFLAGS_COMPILE = "-pthread";
-
-  shellHook = ''
-    PATH=$(pwd)/src/script:$(pwd)/src/hydra-eval-jobs:$(pwd)/src/hydra-queue-runner:$(pwd)/src/hydra-evaluator:$PATH
-    PERL5LIB=$(pwd)/src/lib:$PERL5LIB;
-  '';
-
-  enableParallelBuilding = true;
-
-  preCheck = ''
-    patchShebangs .
-    export LOGNAME=''${LOGNAME:-foo}
-  '';
-
-  postInstall = ''
-    mkdir -p $out/nix-support
-    for i in $out/bin/*; do
-        read -n 4 chars < $i
-        if [[ $chars =~ ELF ]]; then continue; fi
-        wrapProgram $i \
-            --prefix PERL5LIB ':' $out/libexec/hydra/lib:$PERL5LIB \
-            --prefix PATH ':' $out/bin:$hydraPath \
-            --set HYDRA_RELEASE ${version} \
-            --set HYDRA_HOME $out/libexec/hydra \
-            --set NIX_RELEASE ${nix.name or "unknown"}
-    done
-  ''; # */
-
-  dontStrip = true;
-
-  passthru.perlDeps = perlDeps;
-
-  meta = with stdenv.lib; {
-    description = "Nix-based continuous build system";
-    license = licenses.gpl3;
-    platforms = platforms.linux;
-    maintainers = with maintainers; [ ma27 ];
+    nix = nixFlakes;
   };
 }
diff --git a/pkgs/development/tools/misc/lit/default.nix b/pkgs/development/tools/misc/lit/default.nix
index c4164b41433..1e511cc0f0b 100644
--- a/pkgs/development/tools/misc/lit/default.nix
+++ b/pkgs/development/tools/misc/lit/default.nix
@@ -1,12 +1,16 @@
-{ lib, python2 }:
+{ lib, python3 }:
 
-python2.pkgs.buildPythonApplication rec {
+python3.pkgs.buildPythonApplication rec {
   pname = "lit";
-  version = "0.8.0";
+  version = "0.9.0";
 
-  src = python2.pkgs.fetchPypi {
+  src = python3.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "0lwx1w1vk3a0pc237chwycl8qc6lwq8bzf13036wnmk74m9kwi7c";
+    sha256 = "0vkqv0ijjkfg70j26cxqz75bpn2p78all5j5cw2gfcrn4c5aldf0";
+  };
+
+  passthru = {
+    python = python3;
   };
 
   # Non-standard test suite. Needs custom checkPhase.
@@ -14,7 +18,7 @@ python2.pkgs.buildPythonApplication rec {
 
   meta = {
     description = "Portable tool for executing LLVM and Clang style test suites";
-    homepage = http://llvm.org/docs/CommandGuide/lit.html;
+    homepage = "http://llvm.org/docs/CommandGuide/lit.html";
     license = lib.licenses.ncsa;
     maintainers = with lib.maintainers; [ dtzWill ];
   };
diff --git a/pkgs/development/tools/misc/mdl/Gemfile.lock b/pkgs/development/tools/misc/mdl/Gemfile.lock
index aabcd784d86..04268d3306c 100644
--- a/pkgs/development/tools/misc/mdl/Gemfile.lock
+++ b/pkgs/development/tools/misc/mdl/Gemfile.lock
@@ -18,4 +18,4 @@ DEPENDENCIES
   mdl
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/development/tools/misc/mkcert/default.nix b/pkgs/development/tools/misc/mkcert/default.nix
index 6a114a8de8b..ae0a4a6dfe2 100644
--- a/pkgs/development/tools/misc/mkcert/default.nix
+++ b/pkgs/development/tools/misc/mkcert/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "mkcert";
@@ -19,9 +19,7 @@ buildGoModule rec {
       -X ${goPackagePath}/main.Version=${version}
   '';
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     homepage = https://github.com/FiloSottile/mkcert;
     description = "A simple tool for making locally-trusted development certificates";
     license = licenses.bsd3;
diff --git a/pkgs/development/tools/misc/one_gadget/Gemfile.lock b/pkgs/development/tools/misc/one_gadget/Gemfile.lock
index ea31cc3704f..db20c8b0ffd 100644
--- a/pkgs/development/tools/misc/one_gadget/Gemfile.lock
+++ b/pkgs/development/tools/misc/one_gadget/Gemfile.lock
@@ -14,4 +14,4 @@ DEPENDENCIES
   one_gadget
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/tools/misc/patchelf/default.nix b/pkgs/development/tools/misc/patchelf/default.nix
index 77d03f299f4..778d3079471 100644
--- a/pkgs/development/tools/misc/patchelf/default.nix
+++ b/pkgs/development/tools/misc/patchelf/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
   doCheck = false; # fails 8 out of 24 tests, problems when loading libc.so.6
 
   meta = with stdenv.lib; {
-    homepage = https://nixos.org/patchelf.html;
+    homepage = https://github.com/NixOS/patchelf/blob/master/README;
     license = licenses.gpl3;
     description = "A small utility to modify the dynamic linker and RPATH of ELF executables";
     maintainers = [ maintainers.eelco ];
diff --git a/pkgs/development/tools/misc/patchelf/unstable.nix b/pkgs/development/tools/misc/patchelf/unstable.nix
index f5ff1c74bcc..349c6a4e1eb 100644
--- a/pkgs/development/tools/misc/patchelf/unstable.nix
+++ b/pkgs/development/tools/misc/patchelf/unstable.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   doCheck = !stdenv.isDarwin;
 
   meta = with stdenv.lib; {
-    homepage = https://nixos.org/patchelf.html;
+    homepage = https://github.com/NixOS/patchelf/blob/master/README;
     license = licenses.gpl3;
     description = "A small utility to modify the dynamic linker and RPATH of ELF executables";
     maintainers = [ maintainers.eelco ];
diff --git a/pkgs/development/tools/misc/reviewdog/default.nix b/pkgs/development/tools/misc/reviewdog/default.nix
index aecd373f09e..9af294716ff 100644
--- a/pkgs/development/tools/misc/reviewdog/default.nix
+++ b/pkgs/development/tools/misc/reviewdog/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "reviewdog";
@@ -13,13 +13,11 @@ buildGoModule rec {
 
   modSha256 = "1jf08g0xr4wknh9x15igq73y02cy2faqjdjs2v842ii4p3n4p9dw";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   subPackages = [ "cmd/reviewdog" ];
 
   buildFlagsArray = [ "-ldflags=-s -w -X github.com/reviewdog/reviewdog/commands.Version=${version}" ];
 
-  meta = with stdenv.lib; {
+  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}";
diff --git a/pkgs/development/tools/misc/terracognita/default.nix b/pkgs/development/tools/misc/terracognita/default.nix
index 67e8df9561f..e533b065f41 100644
--- a/pkgs/development/tools/misc/terracognita/default.nix
+++ b/pkgs/development/tools/misc/terracognita/default.nix
@@ -1,25 +1,23 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "terracognita";
-  version = "0.3.0";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "cycloidio";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1d5yi2jxmk04wcz8rjwa5kz9525j8s90d4rj2d4cbgd3lbbk45qq";
+    sha256 = "0ib0p361sxh2qzxccg32pcml4by4mk45abhljwmljwybs34wh5rh";
   };
 
-  modSha256 = "0xlhp8pa5g6an10m56g237pixc4h6ay89hkp1ijdz45iyfn9fk91";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "1cbhm3jwv0z9fh1q8mva56nbsp9rfyjcs03yxrc8ffkvif0gapps";
 
   subPackages = [ "." ];
 
   buildFlagsArray = [ "-ldflags=-s -w -X github.com/cycloidio/terracognita/cmd.Version=${version}" ];
 
-  meta = with stdenv.lib; {
+  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";
     license = licenses.mit;
diff --git a/pkgs/development/tools/misc/travis/Gemfile.lock b/pkgs/development/tools/misc/travis/Gemfile.lock
index c13c9646393..e26b31cbaf0 100644
--- a/pkgs/development/tools/misc/travis/Gemfile.lock
+++ b/pkgs/development/tools/misc/travis/Gemfile.lock
@@ -54,4 +54,4 @@ DEPENDENCIES
   travis
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/development/tools/misc/watson-ruby/Gemfile.lock b/pkgs/development/tools/misc/watson-ruby/Gemfile.lock
index fa157d794f7..9e3c166400f 100644
--- a/pkgs/development/tools/misc/watson-ruby/Gemfile.lock
+++ b/pkgs/development/tools/misc/watson-ruby/Gemfile.lock
@@ -12,4 +12,4 @@ DEPENDENCIES
   watson-ruby
 
 BUNDLED WITH
-   1.14.4
+   2.1.4
diff --git a/pkgs/development/tools/misc/whatstyle/default.nix b/pkgs/development/tools/misc/whatstyle/default.nix
index 0c6e4f568ff..c882d6243fa 100644
--- a/pkgs/development/tools/misc/whatstyle/default.nix
+++ b/pkgs/development/tools/misc/whatstyle/default.nix
@@ -2,12 +2,12 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "whatstyle";
-  version = "0.1.7";
+  version = "0.1.8";
   src = fetchFromGitHub {
     owner = "mikr";
     repo = pname;
     rev = "v${version}";
-    sha256 = "16ak4g149cr764c1lqakiyzmf5s98w8bdc4gk69m8qacimfg3mzm";
+    sha256 = "08lfd8h5fnvy5gci4f3an411cypad7p2yiahvbmlp51r9xwpaiwr";
   };
 
   # Fix references to previous version, to avoid confusion:
@@ -22,7 +22,7 @@ python3.pkgs.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Find a code format style that fits given source files";
-    homepage = https://github.com/mikr/whatstyle;
+    homepage = "https://github.com/mikr/whatstyle";
     license = licenses.mit;
     maintainers = with maintainers; [ dtzWill ];
     platforms = platforms.all;
diff --git a/pkgs/development/tools/mod/default.nix b/pkgs/development/tools/mod/default.nix
index cc94692c023..3261c8af202 100644
--- a/pkgs/development/tools/mod/default.nix
+++ b/pkgs/development/tools/mod/default.nix
@@ -1,23 +1,21 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   pname = "mod";
-  version = "0.2.2";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "marwan-at-work";
     repo = "mod";
     rev = "v${version}";
-    sha256 = "0aw6r90xf29wdhgnq580f837ga8yypzfhlzx1f2zj0kdhc58wbr5";
+    sha256 = "1kcsdi9qls9kgklj96ycyrq5fsz5m2qj3ij63d2rwqjggqk0cab6";
   };
 
-  modSha256 = "0x7bdhvam9l23cbdqpna8kwg0v6yhgmw0hlbm48bbhjl27lg7svc";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "0famjypv5qg9lgzw4pz2kz70l50cn6n6nbjyk7jrzmd6bjzd0ypl";
 
   subPackages = [ "cmd/mod" ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Automated Semantic Import Versioning Upgrades for Go";
     longDescription = ''
       Command line tool to upgrade/downgrade Semantic Import Versioning in Go
diff --git a/pkgs/development/tools/nsis/default.nix b/pkgs/development/tools/nsis/default.nix
index 683d07ed496..ea6203e57c3 100644
--- a/pkgs/development/tools/nsis/default.nix
+++ b/pkgs/development/tools/nsis/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     chmod -R u+w $out/share/nsis
   '';
 
-  nativeBuildInputs = [ scons ];
+  nativeBuildInputs = [ scons.py2 ];
   buildInputs = [ zlib ];
 
   sconsFlags = [
diff --git a/pkgs/development/tools/ocaml/cppo/default.nix b/pkgs/development/tools/ocaml/cppo/default.nix
index d6327010e30..63c169f045f 100644
--- a/pkgs/development/tools/ocaml/cppo/default.nix
+++ b/pkgs/development/tools/ocaml/cppo/default.nix
@@ -6,9 +6,14 @@ in
 assert stdenv.lib.versionAtLeast ocaml.version "3.12";
 
 let param =
-  if stdenv.lib.versionAtLeast ocaml.version "4.02" then {
+  if stdenv.lib.versionAtLeast ocaml.version "4.02" then
+   (if stdenv.lib.versionAtLeast ocaml.version "4.03" then {
+    version = "1.6.6";
+    sha256 = "1smcc0l6fh2n0y6bp96c69j5nw755jja99w0b206wx3yb2m4w2hs";
+   } else {
     version = "1.6.5";
     sha256 = "03c0amszy28shinvz61hm340jz446zz5763a1pdqlza36kwcj0p0";
+   }) // {
     buildInputs = [ dune ];
     extra = {
       inherit (dune) installPhase;
diff --git a/pkgs/development/tools/ocaml/dune/2.nix b/pkgs/development/tools/ocaml/dune/2.nix
index 47e71c41568..510dd183f00 100644
--- a/pkgs/development/tools/ocaml/dune/2.nix
+++ b/pkgs/development/tools/ocaml/dune/2.nix
@@ -6,11 +6,11 @@ else
 
 stdenv.mkDerivation rec {
   pname = "dune";
-  version = "2.4.0";
+  version = "2.5.0";
 
   src = fetchurl {
     url = "https://github.com/ocaml/dune/releases/download/${version}/dune-${version}.tbz";
-    sha256 = "096wp6aawgh1ffhbnjfxgakwqd02kfkz2i6m6cc040w1g554iw98";
+    sha256 = "1nnpg0fvmp4vf5mk203xk83pkkm953pgip3yhs1x2g8pkcdndhcw";
   };
 
   buildInputs = [ ocaml findlib ];
diff --git a/pkgs/development/tools/ocaml/ocamlformat/default.nix b/pkgs/development/tools/ocaml/ocamlformat/default.nix
index 7738139a65a..da134562e32 100644
--- a/pkgs/development/tools/ocaml/ocamlformat/default.nix
+++ b/pkgs/development/tools/ocaml/ocamlformat/default.nix
@@ -2,13 +2,15 @@
 
 with ocamlPackages; buildDunePackage rec {
   pname = "ocamlformat";
-  version = "0.13.0";
+  version = "0.14.0";
 
   minimumOCamlVersion = "4.06";
 
+  useDune2 = true;
+
   src = fetchurl {
-    url = "https://github.com/ocaml-ppx/ocamlformat/releases/download/${version}/ocamlformat-${version}-2.tbz";
-    sha256 = "0ki2flqi3xkhw9mfridivb6laxm7gml8rj9qz42vqmy9yx76jjxq";
+    url = "https://github.com/ocaml-ppx/ocamlformat/releases/download/${version}/ocamlformat-${version}.tbz";
+    sha256 = "070c0x6z5y0lyls56zm34g8lyc093wkr0jfp50dvrkr9fk1sx2wi";
   };
 
   buildInputs = [
@@ -20,6 +22,8 @@ with ocamlPackages; buildDunePackage rec {
     stdio
     uuseg
     uutf
+    fix
+    menhir
   ];
 
   meta = {
diff --git a/pkgs/development/tools/omnisharp-roslyn/default.nix b/pkgs/development/tools/omnisharp-roslyn/default.nix
index 310ef0be151..5daeb384cc5 100644
--- a/pkgs/development/tools/omnisharp-roslyn/default.nix
+++ b/pkgs/development/tools/omnisharp-roslyn/default.nix
@@ -7,11 +7,11 @@
 stdenv.mkDerivation rec {
 
   pname = "omnisharp-roslyn";
-  version = "1.34.11";
+  version = "1.34.15";
   
   src = fetchurl {
     url = "https://github.com/OmniSharp/omnisharp-roslyn/releases/download/v${version}/omnisharp-mono.tar.gz";
-    sha256 = "0j55jrji7ya0pm91hfmyd9s6lkl35xbybr81a1gka90mlyp0gx63";
+    sha256 = "16wjp89lzg33cap99jv1vgqvdx0y0xvb892fpihwg62iafh10b8m";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/overcommit/Gemfile.lock b/pkgs/development/tools/overcommit/Gemfile.lock
index bf88c1bb148..9a6441e76b8 100644
--- a/pkgs/development/tools/overcommit/Gemfile.lock
+++ b/pkgs/development/tools/overcommit/Gemfile.lock
@@ -14,4 +14,4 @@ DEPENDENCIES
   overcommit
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/development/tools/parinfer-rust/default.nix b/pkgs/development/tools/parinfer-rust/default.nix
index a313683f2ae..d016d21b738 100644
--- a/pkgs/development/tools/parinfer-rust/default.nix
+++ b/pkgs/development/tools/parinfer-rust/default.nix
@@ -13,7 +13,8 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "16ylk125p368mcz8nandmfqlygrqjlf8mqaxlbpixqga378saidl";
 
-  buildInputs = [ llvmPackages.libclang llvmPackages.clang ];
+  nativeBuildInputs = [ llvmPackages.clang ];
+  buildInputs = [ llvmPackages.libclang ];
   LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
 
   postInstall = ''
diff --git a/pkgs/development/tools/pet/default.nix b/pkgs/development/tools/pet/default.nix
index f1096e479a7..e7f4fce3c4d 100644
--- a/pkgs/development/tools/pet/default.nix
+++ b/pkgs/development/tools/pet/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   pname = "pet";
@@ -13,11 +13,9 @@ buildGoModule rec {
 
   modSha256 = "06ham8lsx5c1vk5jkwp1aa9g4q4g7sfq7gxz2gkffa98x2vlawyf";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   subPackages = [ "." ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Simple command-line snippet manager, written in Go";
     homepage = https://github.com/knqyf263/pet;
     license = licenses.mit;
diff --git a/pkgs/development/tools/pew/default.nix b/pkgs/development/tools/pew/default.nix
index e4b50f31776..a7fabb78395 100644
--- a/pkgs/development/tools/pew/default.nix
+++ b/pkgs/development/tools/pew/default.nix
@@ -1,34 +1,30 @@
-{ stdenv, python3Packages }:
-with python3Packages; buildPythonApplication rec {
-    pname = "pew";
-    version = "1.1.2";
+{ stdenv, python3 }:
 
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "04anak82p4v9w0lgfs55s7diywxil6amq8c8bhli143ca8l2fcdq";
-    };
+with python3.pkgs;
 
-    propagatedBuildInputs = [ virtualenv virtualenv-clone setuptools ];
+buildPythonApplication rec {
+  pname = "pew";
+  version = "1.2.0";
 
-    LC_ALL = "en_US.UTF-8";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "04anak82p4v9w0lgfs55s7diywxil6amq8c8bhli143ca8l2fcdq";
+  };
 
-    postFixup = ''
-      set -euo pipefail
-      PEW_SITE="$out/lib/${python.libPrefix}/site-packages"
-      SETUPTOOLS="${setuptools}/lib/${python.libPrefix}/site-packages"
-      SETUPTOOLS_SITE=$SETUPTOOLS/$(cat $SETUPTOOLS/setuptools.pth)
-      CLONEVENV_SITE="${virtualenv-clone}/lib/${python.libPrefix}/site-packages"
-      SITE_PACKAGES="[\'$PEW_SITE\',\'$SETUPTOOLS_SITE\',\'$CLONEVENV_SITE\']"
-      substituteInPlace $PEW_SITE/pew/pew.py \
-        --replace "from pew.pew" "import sys; sys.path.extend($SITE_PACKAGES); from pew.pew" \
-        --replace 'sys.executable, "-m", "virtualenv"' "'${virtualenv}/bin/virtualenv'"
-    '';
+  propagatedBuildInputs = [ virtualenv virtualenv-clone setuptools ];
 
-    meta = with stdenv.lib; {
-      homepage = https://github.com/berdario/pew;
-      description = "Tools to manage multiple virtualenvs written in pure python";
-      license = licenses.mit;
-      platforms = platforms.all;
-      maintainers = with maintainers; [ berdario ];
-    };
-  }
+  # no tests are packaged
+  checkPhase = ''
+    $out/bin/pew > /dev/null
+  '';
+
+  pythonImportsCheck = [ "pew" ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/berdario/pew";
+    description = "Tools to manage multiple virtualenvs written in pure python";
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ berdario ];
+  };
+}
diff --git a/pkgs/development/tools/pgformatter/default.nix b/pkgs/development/tools/pgformatter/default.nix
index 87bf826f5c5..c1cb8cea8a6 100644
--- a/pkgs/development/tools/pgformatter/default.nix
+++ b/pkgs/development/tools/pgformatter/default.nix
@@ -2,13 +2,13 @@
 
 perlPackages.buildPerlPackage rec {
   pname = "pgformatter";
-  version = "4.2";
+  version = "4.3";
 
   src = fetchFromGitHub {
     owner = "darold";
     repo = "pgFormatter";
     rev = "v${version}";
-    sha256 = "1fqhbs7q3nxda7acbcx8dyjh99d0mv485dpmiczxia7cy1xqi63g";
+    sha256 = "0n8ydj01nmnkd8glzjb0yrsyax1pmdfvaxb5xj4pkb2mf6zm94qy";
   };
 
   outputs = [ "out" ];
diff --git a/pkgs/development/tools/pgloader/default.nix b/pkgs/development/tools/pgloader/default.nix
index 8aaae2b1c43..94ba95b2d92 100644
--- a/pkgs/development/tools/pgloader/default.nix
+++ b/pkgs/development/tools/pgloader/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, makeWrapper, sbcl, sqlite, freetds, libzip, curl, git, cacert, openssl }:
 stdenv.mkDerivation rec {
   pname = "pgloader";
-  version = "3.6.1";
+  version = "3.6.2";
 
   src = fetchurl {
-    url = "https://github.com/dimitri/pgloader/releases/download/v3.6.1/pgloader-bundle-3.6.1.tgz";
-    sha256 = "1sm8xmq30d1biin5br0y3vrv4fydbrzfqglz1hnvrkdyxrg7d6f9";
+    url = "https://github.com/dimitri/pgloader/releases/download/v3.6.2/pgloader-bundle-3.6.2.tgz";
+    sha256 = "1jqnw6pw11kwyy8zm2g7g85r8197fy0q4l70yybw9wr87wnqqnz3";
   };
 
   nativeBuildInputs = [ git makeWrapper ];
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://pgloader.io/;
+    homepage = "https://pgloader.io/";
     description = "pgloader loads data into PostgreSQL and allows you to implement Continuous Migration from your current database to PostgreSQL";
     maintainers = with maintainers; [ mguentner ];
     license = licenses.postgresql;
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/bin/poetry2nix b/pkgs/development/tools/poetry2nix/poetry2nix/bin/poetry2nix
index 95576b987f5..355cebfd50c 100755
--- a/pkgs/development/tools/poetry2nix/poetry2nix/bin/poetry2nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/bin/poetry2nix
@@ -8,11 +8,16 @@ import json
 import sys
 
 
-argparser = argparse.ArgumentParser(description="Generate overrides for git hashes",)
-argparser.add_argument(
+argparser = argparse.ArgumentParser(description="Poetry2nix CLI")
+
+subparsers = argparser.add_subparsers(dest="subcommand")
+subparsers.required = True
+
+parser_lock = subparsers.add_parser("lock", help="Generate overrides for git hashes",)
+parser_lock.add_argument(
     "--lock", default="poetry.lock", help="Path to input poetry.lock",
 )
-argparser.add_argument(
+parser_lock.add_argument(
     "--out", default="poetry-git-overlay.nix", help="Output file",
 )
 
@@ -74,7 +79,7 @@ if __name__ == "__main__":
                 indent(
                     textwrap.dedent(
                         """
-              %s = super.%s.overrideAttrs (
+              %s = super.%s.overridePythonAttrs (
                 _: {
                   src = pkgs.fetchgit {
                     url = "%s";
@@ -92,7 +97,7 @@ if __name__ == "__main__":
 
         expr = "\n".join(lines)
 
-    with open(args.out, "w") as f:
-        f.write(expr)
+    with open(args.out, "w") as fout:
+        fout.write(expr)
 
     print(f"Wrote {args.out}")
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/cli.nix b/pkgs/development/tools/poetry2nix/poetry2nix/cli.nix
index db85d4ddd3c..fbcee749b7c 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/cli.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/cli.nix
@@ -2,10 +2,8 @@
 , lib ? pkgs.lib
 , version
 }:
-
 let
   inherit (pkgs) python3;
-
 in
 pkgs.stdenv.mkDerivation {
   pname = "poetry2nix";
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/default.nix b/pkgs/development/tools/poetry2nix/poetry2nix/default.nix
index 7d3164fcec6..e7f718519a5 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/default.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/default.nix
@@ -7,7 +7,7 @@ let
   inherit (poetryLib) isCompatible readTOML;
 
   # Poetry2nix version
-  version = "1.6.0";
+  version = "1.7.1";
 
   /* The default list of poetry2nix override overlays */
   defaultPoetryOverrides = (import ./overrides.nix { inherit pkgs lib; });
@@ -34,91 +34,95 @@ let
     , overrides ? [ defaultPoetryOverrides ]
     , python ? pkgs.python3
     , pwd ? projectDir
-    }@attrs: let
-      poetryPkg = poetry.override { inherit python; };
-
-      pyProject = readTOML pyproject;
-      poetryLock = readTOML poetrylock;
-      lockFiles = lib.getAttrFromPath [ "metadata" "files" ] poetryLock;
+    }@attrs:
+      let
+        poetryPkg = poetry.override { inherit python; };
 
-      specialAttrs = [
-        "overrides"
-        "poetrylock"
-        "pwd"
-      ];
-      passedAttrs = builtins.removeAttrs attrs specialAttrs;
+        pyProject = readTOML pyproject;
+        poetryLock = readTOML poetrylock;
+        lockFiles = lib.getAttrFromPath [ "metadata" "files" ] poetryLock;
 
-      evalPep508 = mkEvalPep508 python;
+        specialAttrs = [
+          "overrides"
+          "poetrylock"
+          "projectDir"
+          "pwd"
+        ];
+        passedAttrs = builtins.removeAttrs attrs specialAttrs;
 
-      # Filter packages by their PEP508 markers & pyproject interpreter version
-      partitions = let
-        supportsPythonVersion = pkgMeta: if pkgMeta ? marker then (evalPep508 pkgMeta.marker) else true;
-      in
-        lib.partition supportsPythonVersion poetryLock.package;
+        evalPep508 = mkEvalPep508 python;
 
-      compatible = partitions.right;
-      incompatible = partitions.wrong;
+        # Filter packages by their PEP508 markers & pyproject interpreter version
+        partitions = let
+          supportsPythonVersion = pkgMeta: if pkgMeta ? marker then (evalPep508 pkgMeta.marker) else true;
+        in
+          lib.partition supportsPythonVersion poetryLock.package;
+
+        compatible = partitions.right;
+        incompatible = partitions.wrong;
+
+        # Create an overriden version of pythonPackages
+        #
+        # We need to avoid mixing multiple versions of pythonPackages in the same
+        # closure as python can only ever have one version of a dependency
+        baseOverlay = self: super:
+          let
+            getDep = depName: self.${depName};
+
+            lockPkgs = builtins.listToAttrs (
+              builtins.map (
+                pkgMeta: rec {
+                  name = pkgMeta.name;
+                  value = self.mkPoetryDep (
+                    pkgMeta // {
+                      inherit pwd;
+                      source = pkgMeta.source or null;
+                      files = lockFiles.${name};
+                      pythonPackages = self;
+                      sourceSpec = pyProject.tool.poetry.dependencies.${name} or pyProject.tool.poetry.dev-dependencies.${name};
+                    }
+                  );
+                }
+              ) compatible
+            );
+          in
+            lockPkgs;
+        overlays = builtins.map getFunctorFn (
+          [
+            (
+              self: super:
+                let
+                  hooks = self.callPackage ./hooks {};
+                in
+                  {
+                    mkPoetryDep = self.callPackage ./mk-poetry-dep.nix {
+                      inherit pkgs lib python poetryLib;
+                    };
+                    poetry = poetryPkg;
+                    # The canonical name is setuptools-scm
+                    setuptools-scm = super.setuptools_scm;
+
+                    inherit (hooks) removePathDependenciesHook poetry2nixFixupHook;
+                  }
+            )
+            # Null out any filtered packages, we don't want python.pkgs from nixpkgs
+            (self: super: builtins.listToAttrs (builtins.map (x: { name = x.name; value = null; }) incompatible))
+            # Create poetry2nix layer
+            baseOverlay
+          ] ++ # User provided overrides
+          overrides
+        );
 
-      # Create an overriden version of pythonPackages
-      #
-      # We need to avoid mixing multiple versions of pythonPackages in the same
-      # closure as python can only ever have one version of a dependency
-      baseOverlay = self: super:
-        let
-          getDep = depName: self.${depName};
+        packageOverrides = lib.foldr lib.composeExtensions (self: super: {}) overlays;
 
-          lockPkgs = builtins.listToAttrs (
-            builtins.map (
-              pkgMeta: rec {
-                name = pkgMeta.name;
-                value = self.mkPoetryDep (
-                  pkgMeta // {
-                    inherit pwd;
-                    source = pkgMeta.source or null;
-                    files = lockFiles.${name};
-                    pythonPackages = self;
-                  }
-                );
-              }
-            ) compatible
-          );
-        in
-          lockPkgs;
-      overlays = builtins.map getFunctorFn (
-        [
-          (
-            self: super: let
-              hooks = self.callPackage ./hooks {};
-            in
-              {
-                mkPoetryDep = self.callPackage ./mk-poetry-dep.nix {
-                  inherit pkgs lib python poetryLib;
-                };
-                poetry = poetryPkg;
-                # The canonical name is setuptools-scm
-                setuptools-scm = super.setuptools_scm;
-
-                inherit (hooks) removePathDependenciesHook poetry2nixFixupHook;
-              }
-          )
-          # Null out any filtered packages, we don't want python.pkgs from nixpkgs
-          (self: super: builtins.listToAttrs (builtins.map (x: { name = x.name; value = null; }) incompatible))
-          # Create poetry2nix layer
-          baseOverlay
-        ] ++ # User provided overrides
-        overrides
-      );
-
-      packageOverrides = lib.foldr lib.composeExtensions (self: super: {}) overlays;
-
-      py = python.override { inherit packageOverrides; self = py; };
-    in
-      {
-        python = py;
-        poetryPackages = map (pkg: py.pkgs.${pkg.name}) compatible;
-        poetryLock = poetryLock;
-        inherit pyProject;
-      };
+        py = python.override { inherit packageOverrides; self = py; };
+      in
+        {
+          python = py;
+          poetryPackages = map (pkg: py.pkgs.${pkg.name}) compatible;
+          poetryLock = poetryLock;
+          inherit pyProject;
+        };
 
   /* Returns a package with a python interpreter and all packages specified in the poetry.lock lock file.
 
@@ -153,76 +157,78 @@ let
     , python ? pkgs.python3
     , pwd ? projectDir
     , ...
-    }@attrs: let
-      poetryPython = mkPoetryPackages {
-        inherit pyproject poetrylock overrides python pwd;
-      };
-      py = poetryPython.python;
-
-      inherit (poetryPython) pyProject;
-
-      specialAttrs = [
-        "overrides"
-        "poetrylock"
-        "pwd"
-        "pyproject"
-      ];
-      passedAttrs = builtins.removeAttrs attrs specialAttrs;
-
-      # Get dependencies and filter out depending on interpreter version
-      getDeps = depAttr: let
-        compat = isCompatible py.pythonVersion;
-        deps = pyProject.tool.poetry.${depAttr} or {};
-        depAttrs = builtins.map (d: lib.toLower d) (builtins.attrNames deps);
-      in
-        builtins.map (
-          dep: let
-            pkg = py.pkgs."${dep}";
-            constraints = deps.${dep}.python or "";
-            isCompat = compat constraints;
+    }@attrs:
+      let
+        poetryPython = mkPoetryPackages {
+          inherit pyproject poetrylock overrides python pwd;
+        };
+        py = poetryPython.python;
+
+        inherit (poetryPython) pyProject;
+
+        specialAttrs = [
+          "overrides"
+          "poetrylock"
+          "projectDir"
+          "pwd"
+          "pyproject"
+        ];
+        passedAttrs = builtins.removeAttrs attrs specialAttrs;
+
+        # Get dependencies and filter out depending on interpreter version
+        getDeps = depAttr:
+          let
+            compat = isCompatible py.pythonVersion;
+            deps = pyProject.tool.poetry.${depAttr} or {};
+            depAttrs = builtins.map (d: lib.toLower d) (builtins.attrNames deps);
           in
-            if isCompat then pkg else null
-        ) depAttrs;
-
-      getInputs = attr: attrs.${attr} or [];
-      mkInput = attr: extraInputs: getInputs attr ++ extraInputs;
-
-      buildSystemPkgs = poetryLib.getBuildSystemPkgs {
-        inherit pyProject;
-        pythonPackages = py.pkgs;
-      };
-
-    in
-      py.pkgs.buildPythonApplication (
-        passedAttrs // {
-          pname = pyProject.tool.poetry.name;
-          version = pyProject.tool.poetry.version;
+            builtins.map (
+              dep:
+                let
+                  pkg = py.pkgs."${dep}";
+                  constraints = deps.${dep}.python or "";
+                  isCompat = compat constraints;
+                in
+                  if isCompat then pkg else null
+            ) depAttrs;
+
+        getInputs = attr: attrs.${attr} or [];
+        mkInput = attr: extraInputs: getInputs attr ++ extraInputs;
+
+        buildSystemPkgs = poetryLib.getBuildSystemPkgs {
+          inherit pyProject;
+          pythonPackages = py.pkgs;
+        };
+      in
+        py.pkgs.buildPythonApplication (
+          passedAttrs // {
+            pname = pyProject.tool.poetry.name;
+            version = pyProject.tool.poetry.version;
 
-          inherit src;
+            inherit src;
 
-          format = "pyproject";
+            format = "pyproject";
 
-          buildInputs = mkInput "buildInputs" buildSystemPkgs;
-          propagatedBuildInputs = mkInput "propagatedBuildInputs" (getDeps "dependencies") ++ ([ py.pkgs.setuptools ]);
-          nativeBuildInputs = mkInput "nativeBuildInputs" [ pkgs.yj py.pkgs.removePathDependenciesHook ];
-          checkInputs = mkInput "checkInputs" (getDeps "dev-dependencies");
+            buildInputs = mkInput "buildInputs" buildSystemPkgs;
+            propagatedBuildInputs = mkInput "propagatedBuildInputs" (getDeps "dependencies") ++ ([ py.pkgs.setuptools ]);
+            nativeBuildInputs = mkInput "nativeBuildInputs" [ pkgs.yj py.pkgs.removePathDependenciesHook ];
+            checkInputs = mkInput "checkInputs" (getDeps "dev-dependencies");
 
-          passthru = {
-            python = py;
-          };
+            passthru = {
+              python = py;
+            };
 
-          meta = meta // {
-            inherit (pyProject.tool.poetry) description homepage;
-            inherit (py.meta) platforms;
-            license = getLicenseBySpdxId (pyProject.tool.poetry.license or "unknown");
-          };
+            meta = meta // {
+              inherit (pyProject.tool.poetry) description homepage;
+              inherit (py.meta) platforms;
+              license = getLicenseBySpdxId (pyProject.tool.poetry.license or "unknown");
+            };
 
-        }
-      );
+          }
+        );
 
   /* Poetry2nix CLI used to supplement SHA-256 hashes for git dependencies  */
   cli = import ./cli.nix { inherit pkgs lib version; };
-
 in
 {
   inherit mkPoetryEnv mkPoetryApplication mkPoetryPackages cli version;
@@ -236,11 +242,12 @@ in
   */
   defaultPoetryOverrides = {
     __functor = defaultPoetryOverrides;
-    overrideOverlay = fn: self: super: let
-      defaultSet = defaultPoetryOverrides self super;
-      customSet = fn self super;
-    in
-      defaultSet // customSet;
+    overrideOverlay = fn: self: super:
+      let
+        defaultSet = defaultPoetryOverrides self super;
+        customSet = fn self super;
+      in
+        defaultSet // customSet;
   };
 
   /*
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix b/pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix
index ec3fa0afa69..12d2bc96206 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/hooks/default.nix
@@ -3,7 +3,6 @@
 , makeSetupHook
 , yj
 }:
-
 let
   pythonInterpreter = python.pythonForBuild.interpreter;
 in
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix b/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix
index b816feb38e8..f4497afb8bc 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/lib.nix
@@ -9,29 +9,30 @@ let
   );
 
   # Compare a semver expression with a version
-  isCompatible = version: let
-    operators = {
-      "||" = cond1: cond2: cond1 || cond2;
-      "," = cond1: cond2: cond1 && cond2; # , means &&
-      "&&" = cond1: cond2: cond1 && cond2;
-    };
-    splitRe = "(" + (builtins.concatStringsSep "|" (builtins.map (x: lib.replaceStrings [ "|" ] [ "\\|" ] x) (lib.attrNames operators))) + ")";
-  in
-    expr:
-      let
-        tokens = builtins.filter (x: x != "") (builtins.split splitRe expr);
-        combine = acc: v:
-          let
-            isOperator = builtins.typeOf v == "list";
-            operator = if isOperator then (builtins.elemAt v 0) else acc.operator;
-          in
-            if isOperator then (acc // { inherit operator; }) else {
-              inherit operator;
-              state = operators."${operator}" acc.state (satisfiesSemver version v);
-            };
-        initial = { operator = "&&"; state = true; };
-      in
-        if expr == "" then true else (builtins.foldl' combine initial tokens).state;
+  isCompatible = version:
+    let
+      operators = {
+        "||" = cond1: cond2: cond1 || cond2;
+        "," = cond1: cond2: cond1 && cond2; # , means &&
+        "&&" = cond1: cond2: cond1 && cond2;
+      };
+      splitRe = "(" + (builtins.concatStringsSep "|" (builtins.map (x: lib.replaceStrings [ "|" ] [ "\\|" ] x) (lib.attrNames operators))) + ")";
+    in
+      expr:
+        let
+          tokens = builtins.filter (x: x != "") (builtins.split splitRe expr);
+          combine = acc: v:
+            let
+              isOperator = builtins.typeOf v == "list";
+              operator = if isOperator then (builtins.elemAt v 0) else acc.operator;
+            in
+              if isOperator then (acc // { inherit operator; }) else {
+                inherit operator;
+                state = operators."${operator}" acc.state (satisfiesSemver version v);
+              };
+          initial = { operator = "&&"; state = true; };
+        in
+          if expr == "" then true else (builtins.foldl' combine initial tokens).state;
 
   fromTOML = builtins.fromTOML or
     (
@@ -88,23 +89,25 @@ let
   getBuildSystemPkgs =
     { pythonPackages
     , pyProject
-    }: let
-      buildSystem = lib.getAttrFromPath [ "build-system" "build-backend" ] pyProject;
-      drvAttr = builtins.elemAt (builtins.split "\\.|:" buildSystem) 0;
-    in
-      if buildSystem == "" then [] else (
-        [ pythonPackages.${drvAttr} or (throw "unsupported build system ${buildSystem}") ]
-      );
+    }:
+      let
+        buildSystem = lib.getAttrFromPath [ "build-system" "build-backend" ] pyProject;
+        drvAttr = builtins.elemAt (builtins.split "\\.|:" buildSystem) 0;
+      in
+        if buildSystem == "" then [] else (
+          [ pythonPackages.${drvAttr} or (throw "unsupported build system ${buildSystem}") ]
+        );
 
   # Find gitignore files recursively in parent directory stopping with .git
-  findGitIgnores = path: let
-    parent = path + "/..";
-    gitIgnore = path + "/.gitignore";
-    isGitRoot = builtins.pathExists (path + "/.git");
-    hasGitIgnore = builtins.pathExists gitIgnore;
-    gitIgnores = if hasGitIgnore then [ gitIgnore ] else [];
-  in
-    lib.optionals (builtins.toString path != "/" && ! isGitRoot) (findGitIgnores parent) ++ gitIgnores;
+  findGitIgnores = path:
+    let
+      parent = path + "/..";
+      gitIgnore = path + "/.gitignore";
+      isGitRoot = builtins.pathExists (path + "/.git");
+      hasGitIgnore = builtins.pathExists gitIgnore;
+      gitIgnores = if hasGitIgnore then [ gitIgnore ] else [];
+    in
+      lib.optionals (builtins.toString path != "/" && ! isGitRoot) (findGitIgnores parent) ++ gitIgnores;
 
   /*
   Provides a source filtering mechanism that:
@@ -113,21 +116,21 @@ let
   - Filters pycache/pyc files
   - Uses cleanSourceFilter to filter out .git/.hg, .o/.so, editor backup files & nix result symlinks
   */
-  cleanPythonSources = { src }: let
-    gitIgnores = findGitIgnores src;
-    pycacheFilter = name: type:
-      (type == "directory" && ! lib.strings.hasInfix "__pycache__" name)
-      || (type == "regular" && ! lib.strings.hasSuffix ".pyc" name)
-    ;
-  in
-    lib.cleanSourceWith {
-      filter = lib.cleanSourceFilter;
-      src = lib.cleanSourceWith {
-        filter = pkgs.nix-gitignore.gitignoreFilterPure pycacheFilter gitIgnores src;
-        inherit src;
+  cleanPythonSources = { src }:
+    let
+      gitIgnores = findGitIgnores src;
+      pycacheFilter = name: type:
+        (type == "directory" && ! lib.strings.hasInfix "__pycache__" name)
+        || (type == "regular" && ! lib.strings.hasSuffix ".pyc" name)
+      ;
+    in
+      lib.cleanSourceWith {
+        filter = lib.cleanSourceFilter;
+        src = lib.cleanSourceWith {
+          filter = pkgs.nix-gitignore.gitignoreFilterPure pycacheFilter gitIgnores src;
+          inherit src;
+        };
       };
-    };
-
 in
 {
   inherit
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix b/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix
index 5ae35dfed49..5e71190d28f 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/mk-poetry-dep.nix
@@ -14,6 +14,7 @@
 , pythonPackages
 , python-versions
 , pwd
+, sourceSpec
 , supportedExtensions ? lib.importJSON ./extensions.json
 , ...
 }:
@@ -22,9 +23,7 @@ pythonPackages.callPackage (
   { preferWheel ? false
   , ...
   }@args:
-
     let
-
       inherit (poetryLib) isCompatible getManyLinuxDeps fetchFromPypi;
 
       inherit (import ./pep425.nix {
@@ -68,7 +67,6 @@ pythonPackages.callPackage (
         lockFileEntry = builtins.head entries;
 
         _isEgg = isEgg lockFileEntry;
-
       in
         rec {
           inherit (lockFileEntry) file hash;
@@ -92,7 +90,6 @@ pythonPackages.callPackage (
       baseBuildInputs = lib.optional (! lib.elem name skipSetupToolsSCM) pythonPackages.setuptools-scm;
 
       format = if isLocal then "pyproject" else if isGit then "setuptools" else fileInfo.format;
-
     in
 
       buildPythonPackage {
@@ -123,10 +120,11 @@ pythonPackages.callPackage (
           compat = isCompatible python.pythonVersion;
           deps = lib.filterAttrs (n: v: v) (
             lib.mapAttrs (
-              n: v: let
-                constraints = v.python or "";
-              in
-                compat constraints
+              n: v:
+                let
+                  constraints = v.python or "";
+                in
+                  compat constraints
             ) dependencies
           );
           depAttrs = lib.attrNames deps;
@@ -150,6 +148,7 @@ pythonPackages.callPackage (
           builtins.fetchGit {
             inherit (source) url;
             rev = source.reference;
+            ref = sourceSpec.branch or sourceSpec.rev or sourceSpec.tag or "HEAD";
           }
         ) else if isLocal then (poetryLib.cleanPythonSources { src = localDepPath; }) else fetchFromPypi {
           pname = name;
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix b/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
index 9eb3f92bd12..8301dcd49b8 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/overrides.nix
@@ -6,14 +6,14 @@
 self: super:
 
 {
-  astroid = super.astroid.overrideAttrs (
+  astroid = super.astroid.overridePythonAttrs (
     old: rec {
       buildInputs = old.buildInputs ++ [ self.pytest-runner ];
       doCheck = false;
     }
   );
 
-  av = super.av.overrideAttrs (
+  av = super.av.overridePythonAttrs (
     old: {
       nativeBuildInputs = old.nativeBuildInputs ++ [
         pkgs.pkgconfig
@@ -22,7 +22,7 @@ self: super:
     }
   );
 
-  bcrypt = super.bcrypt.overrideAttrs (
+  bcrypt = super.bcrypt.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [ pkgs.libffi ];
     }
@@ -31,14 +31,14 @@ self: super:
   cffi =
     # cffi is bundled with pypy
     if self.python.implementation == "pypy" then null else (
-      super.cffi.overrideAttrs (
+      super.cffi.overridePythonAttrs (
         old: {
           buildInputs = old.buildInputs ++ [ pkgs.libffi ];
         }
       )
     );
 
-  cftime = super.cftime.overrideAttrs (
+  cftime = super.cftime.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [
         self.cython
@@ -46,14 +46,14 @@ self: super:
     }
   );
 
-  cryptography = super.cryptography.overrideAttrs (
+  cryptography = super.cryptography.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [ pkgs.openssl ];
     }
   );
 
   django = (
-    super.django.overrideAttrs (
+    super.django.overridePythonAttrs (
       old: {
         propagatedNativeBuildInputs = (old.propagatedNativeBuildInputs or [])
         ++ [ pkgs.gettext ];
@@ -61,7 +61,7 @@ self: super:
     )
   );
 
-  django-bakery = super.django-bakery.overrideAttrs (
+  django-bakery = super.django-bakery.overridePythonAttrs (
     old: {
       configurePhase = ''
         if ! test -e LICENSE; then
@@ -71,7 +71,7 @@ self: super:
     }
   );
 
-  dlib = super.dlib.overrideAttrs (
+  dlib = super.dlib.overridePythonAttrs (
     old: {
       # Parallel building enabled
       inherit (pkgs.python.pkgs.dlib) patches;
@@ -87,14 +87,14 @@ self: super:
   # Environment markers are not always included (depending on how a dep was defined)
   enum34 = if self.pythonAtLeast "3.4" then null else super.enum34;
 
-  faker = super.faker.overrideAttrs (
+  faker = super.faker.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [ self.pytest-runner ];
       doCheck = false;
     }
   );
 
-  fancycompleter = super.fancycompleter.overrideAttrs (
+  fancycompleter = super.fancycompleter.overridePythonAttrs (
     old: {
       postPatch = ''
         substituteInPlace setup.py \
@@ -104,14 +104,20 @@ self: super:
     }
   );
 
-  grandalf = super.grandalf.overrideAttrs (
+  fastparquet = super.fastparquet.overridePythonAttrs (
+    old: {
+      buildInputs = old.buildInputs ++ [ self.pytest-runner ];
+    }
+  );
+
+  grandalf = super.grandalf.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [ self.pytest-runner ];
       doCheck = false;
     }
   );
 
-  h5py = super.h5py.overrideAttrs (
+  h5py = super.h5py.overridePythonAttrs (
     old: rec {
       nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkgconfig ];
       buildInputs = old.buildInputs ++ [ pkgs.hdf5 self.pkgconfig self.cython ];
@@ -122,20 +128,20 @@ self: super:
     }
   );
 
-  horovod = super.horovod.overrideAttrs (
+  horovod = super.horovod.overridePythonAttrs (
     old: {
       propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.openmpi ];
     }
   );
 
   # importlib-metadata has an incomplete dependency specification
-  importlib-metadata = super.importlib-metadata.overrideAttrs (
+  importlib-metadata = super.importlib-metadata.overridePythonAttrs (
     old: {
       propagatedBuildInputs = old.propagatedBuildInputs ++ lib.optional self.python.isPy2 self.pathlib2;
     }
   );
 
-  jupyter = super.jupyter.overrideAttrs (
+  jupyter = super.jupyter.overridePythonAttrs (
     old: rec {
       # jupyter is a meta-package. Everything relevant comes from the
       # dependencies. It does however have a jupyter.py file that conflicts
@@ -144,7 +150,7 @@ self: super:
     }
   );
 
-  lap = super.lap.overrideAttrs (
+  lap = super.lap.overridePythonAttrs (
     old: {
       propagatedBuildInputs = old.propagatedBuildInputs ++ [
         self.numpy
@@ -152,7 +158,7 @@ self: super:
     }
   );
 
-  llvmlite = super.llvmlite.overrideAttrs (
+  llvmlite = super.llvmlite.overridePythonAttrs (
     old: {
       nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.llvm ];
 
@@ -175,59 +181,59 @@ self: super:
     }
   );
 
-  lockfile = super.lockfile.overrideAttrs (
+  lockfile = super.lockfile.overridePythonAttrs (
     old: {
       propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.pbr ];
     }
   );
 
-  lxml = super.lxml.overrideAttrs (
+  lxml = super.lxml.overridePythonAttrs (
     old: {
       nativeBuildInputs = with pkgs; old.nativeBuildInputs ++ [ pkgconfig libxml2.dev libxslt.dev ];
       buildInputs = with pkgs; old.buildInputs ++ [ libxml2 libxslt ];
     }
   );
 
-  markupsafe = super.markupsafe.overrideAttrs (
+  markupsafe = super.markupsafe.overridePythonAttrs (
     old: {
       src = old.src.override { pname = builtins.replaceStrings [ "markupsafe" ] [ "MarkupSafe" ] old.pname; };
     }
   );
 
-  matplotlib = super.matplotlib.overrideAttrs (
-    old: let
-      enableGhostscript = old.passthru.enableGhostscript or false;
-      enableGtk3 = old.passthru.enableTk or false;
-      enableQt = old.passthru.enableQt or false;
-      enableTk = old.passthru.enableTk or false;
+  matplotlib = super.matplotlib.overridePythonAttrs (
+    old:
+      let
+        enableGhostscript = old.passthru.enableGhostscript or false;
+        enableGtk3 = old.passthru.enableTk or false;
+        enableQt = old.passthru.enableQt or false;
+        enableTk = old.passthru.enableTk or false;
 
-      inherit (pkgs.darwin.apple_sdk.frameworks) Cocoa;
+        inherit (pkgs.darwin.apple_sdk.frameworks) Cocoa;
+      in
+        {
+          NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-I${pkgs.libcxx}/include/c++/v1";
 
-    in
-      {
-        NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-I${pkgs.libcxx}/include/c++/v1";
+          XDG_RUNTIME_DIR = "/tmp";
 
-        XDG_RUNTIME_DIR = "/tmp";
+          buildInputs = old.buildInputs
+          ++ lib.optional enableGhostscript pkgs.ghostscript
+          ++ lib.optional stdenv.isDarwin [ Cocoa ];
 
-        buildInputs = old.buildInputs
-        ++ lib.optional enableGhostscript pkgs.ghostscript
-        ++ lib.optional stdenv.isDarwin [ Cocoa ];
-
-        nativeBuildInputs = old.nativeBuildInputs ++ [
-          pkgs.pkgconfig
-        ];
+          nativeBuildInputs = old.nativeBuildInputs ++ [
+            pkgs.pkgconfig
+          ];
 
-        propagatedBuildInputs = old.propagatedBuildInputs ++ [
-          pkgs.libpng
-          pkgs.freetype
-        ]
-        ++ stdenv.lib.optionals enableGtk3 [ pkgs.cairo self.pycairo pkgs.gtk3 pkgs.gobject-introspection self.pygobject3 ]
-        ++ stdenv.lib.optionals enableTk [ pkgs.tcl pkgs.tk self.tkinter pkgs.libX11 ]
-        ++ stdenv.lib.optionals enableQt [ self.pyqt5 ]
-        ;
+          propagatedBuildInputs = old.propagatedBuildInputs ++ [
+            pkgs.libpng
+            pkgs.freetype
+          ]
+          ++ stdenv.lib.optionals enableGtk3 [ pkgs.cairo self.pycairo pkgs.gtk3 pkgs.gobject-introspection self.pygobject3 ]
+          ++ stdenv.lib.optionals enableTk [ pkgs.tcl pkgs.tk self.tkinter pkgs.libX11 ]
+          ++ stdenv.lib.optionals enableQt [ self.pyqt5 ]
+          ;
 
-        inherit (super.matplotlib) patches;
-      }
+          inherit (super.matplotlib) patches;
+        }
   );
 
   # Calls Cargo at build time for source builds and is really tricky to package
@@ -235,14 +241,14 @@ self: super:
     preferWheel = true;
   };
 
-  mccabe = super.mccabe.overrideAttrs (
+  mccabe = super.mccabe.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [ self.pytest-runner ];
       doCheck = false;
     }
   );
 
-  netcdf4 = super.netcdf4.overrideAttrs (
+  netcdf4 = super.netcdf4.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [
         self.cython
@@ -265,40 +271,41 @@ self: super:
     }
   );
 
-  numpy = super.numpy.overrideAttrs (
-    old: let
-      blas = old.passthru.args.blas or pkgs.openblasCompat;
-      blasImplementation = lib.nameFromURL blas.name "-";
-      cfg = pkgs.writeTextFile {
-        name = "site.cfg";
-        text = (
-          lib.generators.toINI {} {
-            ${blasImplementation} = {
-              include_dirs = "${blas}/include";
-              library_dirs = "${blas}/lib";
-            } // lib.optionalAttrs (blasImplementation == "mkl") {
-              mkl_libs = "mkl_rt";
-              lapack_libs = "";
-            };
-          }
-        );
-      };
-    in
-      {
-        nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.gfortran ];
-        buildInputs = old.buildInputs ++ [ blas self.cython ];
-        enableParallelBuilding = true;
-        preBuild = ''
-          ln -s ${cfg} site.cfg
-        '';
-        passthru = old.passthru // {
-          blas = blas;
-          inherit blasImplementation cfg;
+  numpy = super.numpy.overridePythonAttrs (
+    old:
+      let
+        blas = old.passthru.args.blas or pkgs.openblasCompat;
+        blasImplementation = lib.nameFromURL blas.name "-";
+        cfg = pkgs.writeTextFile {
+          name = "site.cfg";
+          text = (
+            lib.generators.toINI {} {
+              ${blasImplementation} = {
+                include_dirs = "${blas}/include";
+                library_dirs = "${blas}/lib";
+              } // lib.optionalAttrs (blasImplementation == "mkl") {
+                mkl_libs = "mkl_rt";
+                lapack_libs = "";
+              };
+            }
+          );
         };
-      }
+      in
+        {
+          nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.gfortran ];
+          buildInputs = old.buildInputs ++ [ blas self.cython ];
+          enableParallelBuilding = true;
+          preBuild = ''
+            ln -s ${cfg} site.cfg
+          '';
+          passthru = old.passthru // {
+            blas = blas;
+            inherit blasImplementation cfg;
+          };
+        }
   );
 
-  openexr = super.openexr.overrideAttrs (
+  openexr = super.openexr.overridePythonAttrs (
     old: rec {
       buildInputs = old.buildInputs ++ [ pkgs.openexr pkgs.ilmbase ];
       NIX_CFLAGS_COMPILE = [ "-I${pkgs.openexr.dev}/include/OpenEXR" "-I${pkgs.ilmbase.dev}/include/OpenEXR" ];
@@ -306,38 +313,39 @@ self: super:
   );
 
   peewee = super.peewee.overridePythonAttrs (
-    old: let
-      withPostgres = old.passthru.withPostgres or false;
-      withMysql = old.passthru.withMysql or false;
-    in
-      {
-        buildInputs = old.buildInputs ++ [ self.cython pkgs.sqlite ];
-        propagatedBuildInputs = old.propagatedBuildInputs
-        ++ lib.optional withPostgres self.psycopg2
-        ++ lib.optional withMysql self.mysql-connector;
-      }
+    old:
+      let
+        withPostgres = old.passthru.withPostgres or false;
+        withMysql = old.passthru.withMysql or false;
+      in
+        {
+          buildInputs = old.buildInputs ++ [ self.cython pkgs.sqlite ];
+          propagatedBuildInputs = old.propagatedBuildInputs
+          ++ lib.optional withPostgres self.psycopg2
+          ++ lib.optional withMysql self.mysql-connector;
+        }
   );
 
-  pillow = super.pillow.overrideAttrs (
+  pillow = super.pillow.overridePythonAttrs (
     old: {
       nativeBuildInputs = [ pkgs.pkgconfig ] ++ old.nativeBuildInputs;
       buildInputs = with pkgs; [ freetype libjpeg zlib libtiff libwebp tcl lcms2 ] ++ old.buildInputs;
     }
   );
 
-  psycopg2 = super.psycopg2.overrideAttrs (
+  psycopg2 = super.psycopg2.overridePythonAttrs (
     old: {
       nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.postgresql ];
     }
   );
 
-  psycopg2-binary = super.psycopg2-binary.overrideAttrs (
+  psycopg2-binary = super.psycopg2-binary.overridePythonAttrs (
     old: {
       nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.postgresql ];
     }
   );
 
-  pyarrow = super.pyarrow.overrideAttrs (
+  pyarrow = super.pyarrow.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [
         self.cython
@@ -352,7 +360,7 @@ self: super:
           format = "other";
         }
       )
-    ).overrideAttrs (
+    ).overridePythonAttrs (
       old: {
 
         nativeBuildInputs = old.nativeBuildInputs ++ [
@@ -371,7 +379,7 @@ self: super:
     )
   ) super.pycairo;
 
-  pycocotools = super.pycocotools.overrideAttrs (
+  pycocotools = super.pycocotools.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [
         self.cython
@@ -380,21 +388,21 @@ self: super:
     }
   );
 
-  pygobject = super.pygobject.overrideAttrs (
+  pygobject = super.pygobject.overridePythonAttrs (
     old: {
       nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkgconfig ];
       buildInputs = old.buildInputs ++ [ pkgs.glib pkgs.gobject-introspection ];
     }
   );
 
-  pylint = super.pylint.overrideAttrs (
+  pylint = super.pylint.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [ self.pytest-runner ];
       doCheck = false;
     }
   );
 
-  pyopenssl = super.pyopenssl.overrideAttrs (
+  pyopenssl = super.pyopenssl.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [ pkgs.openssl ];
     }
@@ -501,7 +509,7 @@ self: super:
       }
     );
 
-  pytest-datadir = super.pytest-datadir.overrideAttrs (
+  pytest-datadir = super.pytest-datadir.overridePythonAttrs (
     old: {
       postInstall = ''
         rm -f $out/LICENSE
@@ -517,7 +525,7 @@ self: super:
 
   pytest-runner = super.pytest-runner or super.pytestrunner;
 
-  python-prctl = super.python-prctl.overrideAttrs (
+  python-prctl = super.python-prctl.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [
         pkgs.libcap
@@ -525,14 +533,14 @@ self: super:
     }
   );
 
-  pyzmq = super.pyzmq.overrideAttrs (
+  pyzmq = super.pyzmq.overridePythonAttrs (
     old: {
       nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkgconfig ];
       propagatedBuildInputs = old.propagatedBuildInputs ++ [ pkgs.zeromq ];
     }
   );
 
-  rockset = super.rockset.overrideAttrs (
+  rockset = super.rockset.overridePythonAttrs (
     old: rec {
       postPatch = ''
         cp ./setup_rockset.py ./setup.py
@@ -540,7 +548,7 @@ self: super:
     }
   );
 
-  scaleapi = super.scaleapi.overrideAttrs (
+  scaleapi = super.scaleapi.overridePythonAttrs (
     old: {
       postPatch = ''
         substituteInPlace setup.py --replace "install_requires = ['requests>=2.4.2', 'enum34']" "install_requires = ['requests>=2.4.2']" || true
@@ -548,7 +556,7 @@ self: super:
     }
   );
 
-  pandas = super.pandas.overrideAttrs (
+  pandas = super.pandas.overridePythonAttrs (
     old: {
       nativeBuildInputs = old.nativeBuildInputs ++ [ self.cython ];
     }
@@ -565,7 +573,7 @@ self: super:
     }
   );
 
-  scipy = super.scipy.overrideAttrs (
+  scipy = super.scipy.overridePythonAttrs (
     old: {
       nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.gfortran ];
       propagatedBuildInputs = old.propagatedBuildInputs ++ [ self.pybind11 ];
@@ -599,7 +607,7 @@ self: super:
     }
   );
 
-  shapely = super.shapely.overrideAttrs (
+  shapely = super.shapely.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ [ pkgs.geos self.cython ];
       inherit (pkgs.python3.pkgs.shapely) patches GEOS_LIBRARY_PATH;
@@ -614,7 +622,7 @@ self: super:
     )
   ) else super.shellingham;
 
-  tables = super.tables.overrideAttrs (
+  tables = super.tables.overridePythonAttrs (
     old: {
       HDF5_DIR = "${pkgs.hdf5}";
       nativeBuildInputs = old.nativeBuildInputs ++ [ pkgs.pkgconfig ];
@@ -622,7 +630,7 @@ self: super:
     }
   );
 
-  tensorpack = super.tensorpack.overrideAttrs (
+  tensorpack = super.tensorpack.overridePythonAttrs (
     old: {
       postPatch = ''
         substituteInPlace setup.cfg --replace "# will call find_packages()" ""
@@ -630,7 +638,7 @@ self: super:
     }
   );
 
-  urwidtrees = super.urwidtrees.overrideAttrs (
+  urwidtrees = super.urwidtrees.overridePythonAttrs (
     old: {
       propagatedBuildInputs = old.propagatedBuildInputs ++ [
         self.urwid
@@ -638,7 +646,7 @@ self: super:
     }
   );
 
-  vose-alias-method = super.vose-alias-method.overrideAttrs (
+  vose-alias-method = super.vose-alias-method.overridePythonAttrs (
     old: {
       postInstall = ''
         rm -f $out/LICENSE
@@ -646,7 +654,7 @@ self: super:
     }
   );
 
-  uvloop = super.uvloop.overrideAttrs (
+  uvloop = super.uvloop.overridePythonAttrs (
     old: {
       buildInputs = old.buildInputs ++ lib.optionals stdenv.isDarwin [
         pkgs.darwin.apple_sdk.frameworks.ApplicationServices
@@ -667,16 +675,24 @@ self: super:
   );
 
   zipp =
-    if lib.versionAtLeast super.zipp.version "2.0.0" then (
-      super.zipp.overridePythonAttrs (
-        old: {
-          prePatch = ''
-            substituteInPlace setup.py --replace \
-            'setuptools.setup()' \
-            'setuptools.setup(version="${super.zipp.version}")'
-          '';
-        }
-      )
-    ) else super.zipp;
+    (
+      if lib.versionAtLeast super.zipp.version "2.0.0" then (
+        super.zipp.overridePythonAttrs (
+          old: {
+            prePatch = ''
+              substituteInPlace setup.py --replace \
+              'setuptools.setup()' \
+              'setuptools.setup(version="${super.zipp.version}")'
+            '';
+          }
+        )
+      ) else super.zipp
+    ).overridePythonAttrs (
+      old: {
+        propagatedBuildInputs = old.propagatedBuildInputs ++ [
+          self.toml
+        ];
+      }
+    );
 
 }
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix b/pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix
index b2e11205c36..cda4e8c78d4 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/pep425.nix
@@ -1,5 +1,4 @@
 { lib, stdenv, python, isLinux ? stdenv.isLinux }:
-
 let
   inherit (lib.strings) hasSuffix hasInfix splitString removeSuffix;
 
@@ -94,12 +93,10 @@ let
           if isLinux
           then chooseLinux files
           else chooseOSX files;
-
     in
       if (builtins.length filtered == 0)
       then []
       else choose (filtered);
-
 in
 {
   inherit selectWheel toWheelAttrs isPyVersionCompatible;
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix b/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix
index ae0c29f3683..67ffdddb4bd 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/pep508.nix
@@ -1,5 +1,4 @@
 { lib, stdenv, poetryLib }: python:
-
 let
   inherit (poetryLib) ireplace;
 
@@ -37,195 +36,199 @@ let
   );
 
   # Make a tree out of expression groups (parens)
-  findSubExpressions = expr: let
-    acc = builtins.foldl' findSubExpressionsFun {
-      exprs = [];
-      expr = expr;
-      pos = 0;
-      openP = 0;
-      exprPos = 0;
-      startPos = 0;
-    } (lib.stringToCharacters expr);
-    tailExpr = (substr acc.exprPos acc.pos expr);
-    tailExprs = if tailExpr != "" then [ tailExpr ] else [];
-  in
-    acc.exprs ++ tailExprs;
-
-  parseExpressions = exprs: let
-    splitCond = (
-      s: builtins.map
-        (x: stripStr (if builtins.typeOf x == "list" then (builtins.elemAt x 0) else x))
-        (builtins.split " (and|or) " (s + " "))
-    );
-
-    mapfn = expr: (
-      if (builtins.match "^ ?$" expr != null) then null  # Filter empty
-      else if (builtins.elem expr [ "and" "or" ]) then {
-        type = "bool";
-        value = expr;
-      }
-      else {
-        type = "expr";
-        value = expr;
-      }
-    );
+  findSubExpressions = expr:
+    let
+      acc = builtins.foldl' findSubExpressionsFun {
+        exprs = [];
+        expr = expr;
+        pos = 0;
+        openP = 0;
+        exprPos = 0;
+        startPos = 0;
+      } (lib.stringToCharacters expr);
+      tailExpr = (substr acc.exprPos acc.pos expr);
+      tailExprs = if tailExpr != "" then [ tailExpr ] else [];
+    in
+      acc.exprs ++ tailExprs;
+
+  parseExpressions = exprs:
+    let
+      splitCond = (
+        s: builtins.map
+          (x: stripStr (if builtins.typeOf x == "list" then (builtins.elemAt x 0) else x))
+          (builtins.split " (and|or) " (s + " "))
+      );
 
-    parse = expr: builtins.filter (x: x != null) (builtins.map mapfn (splitCond expr));
+      mapfn = expr: (
+        if (builtins.match "^ ?$" expr != null) then null  # Filter empty
+        else if (builtins.elem expr [ "and" "or" ]) then {
+          type = "bool";
+          value = expr;
+        }
+        else {
+          type = "expr";
+          value = expr;
+        }
+      );
 
-  in
-    builtins.foldl' (
-      acc: v: acc ++ (
-        if builtins.typeOf v == "string" then parse v else [ (parseExpressions v) ]
-      )
-    ) [] exprs;
+      parse = expr: builtins.filter (x: x != null) (builtins.map mapfn (splitCond expr));
+    in
+      builtins.foldl' (
+        acc: v: acc ++ (
+          if builtins.typeOf v == "string" then parse v else [ (parseExpressions v) ]
+        )
+      ) [] exprs;
 
   # Transform individual expressions to structured expressions
   # This function also performs variable substitution, replacing environment markers with their explicit values
-  transformExpressions = exprs: let
-    variables = {
-      os_name = (
-        if python.pname == "jython" then "java"
-        else "posix"
-      );
-      sys_platform = (
-        if stdenv.isLinux then "linux"
-        else if stdenv.isDarwin then "darwin"
-        else throw "Unsupported platform"
-      );
-      platform_machine = stdenv.platform.kernelArch;
-      platform_python_implementation = let
-        impl = python.passthru.implementation;
-      in
-        (
-          if impl == "cpython" then "CPython"
-          else if impl == "pypy" then "PyPy"
-          else throw "Unsupported implementation ${impl}"
+  transformExpressions = exprs:
+    let
+      variables = {
+        os_name = (
+          if python.pname == "jython" then "java"
+          else "posix"
         );
-      platform_release = ""; # Field not reproducible
-      platform_system = (
-        if stdenv.isLinux then "Linux"
-        else if stdenv.isDarwin then "Darwin"
-        else throw "Unsupported platform"
-      );
-      platform_version = ""; # Field not reproducible
-      python_version = python.passthru.pythonVersion;
-      python_full_version = python.version;
-      implementation_name = python.implementation;
-      implementation_version = python.version;
-      extra = "";
-    };
-
-    substituteVar = value: if builtins.hasAttr value variables then (builtins.toJSON variables."${value}") else value;
-
-    processVar = value: builtins.foldl' (acc: v: v acc) value [
-      stripStr
-      substituteVar
-    ];
-
-  in
-    if builtins.typeOf exprs == "set" then (
-      if exprs.type == "expr" then (
-        let
-          mVal = ''[a-zA-Z0-9\'"_\. ]+'';
-          mOp = "in|[!=<>]+";
-          e = stripStr exprs.value;
-          m = builtins.map stripStr (builtins.match ''^(${mVal}) *(${mOp}) *(${mVal})$'' e);
+        sys_platform = (
+          if stdenv.isLinux then "linux"
+          else if stdenv.isDarwin then "darwin"
+          else throw "Unsupported platform"
+        );
+        platform_machine = stdenv.platform.kernelArch;
+        platform_python_implementation = let
+          impl = python.passthru.implementation;
         in
-          {
-            type = "expr";
-            value = {
-              op = builtins.elemAt m 1;
-              values = [
-                (processVar (builtins.elemAt m 0))
-                (processVar (builtins.elemAt m 2))
-              ];
-            };
-          }
-      ) else exprs
-    ) else builtins.map transformExpressions exprs;
+          (
+            if impl == "cpython" then "CPython"
+            else if impl == "pypy" then "PyPy"
+            else throw "Unsupported implementation ${impl}"
+          );
+        platform_release = ""; # Field not reproducible
+        platform_system = (
+          if stdenv.isLinux then "Linux"
+          else if stdenv.isDarwin then "Darwin"
+          else throw "Unsupported platform"
+        );
+        platform_version = ""; # Field not reproducible
+        python_version = python.passthru.pythonVersion;
+        python_full_version = python.version;
+        implementation_name = python.implementation;
+        implementation_version = python.version;
+        extra = "";
+      };
+
+      substituteVar = value: if builtins.hasAttr value variables then (builtins.toJSON variables."${value}") else value;
+
+      processVar = value: builtins.foldl' (acc: v: v acc) value [
+        stripStr
+        substituteVar
+      ];
+    in
+      if builtins.typeOf exprs == "set" then (
+        if exprs.type == "expr" then (
+          let
+            mVal = ''[a-zA-Z0-9\'"_\. ]+'';
+            mOp = "in|[!=<>]+";
+            e = stripStr exprs.value;
+            m = builtins.map stripStr (builtins.match ''^(${mVal}) *(${mOp}) *(${mVal})$'' e);
+          in
+            {
+              type = "expr";
+              value = {
+                op = builtins.elemAt m 1;
+                values = [
+                  (processVar (builtins.elemAt m 0))
+                  (processVar (builtins.elemAt m 2))
+                ];
+              };
+            }
+        ) else exprs
+      ) else builtins.map transformExpressions exprs;
 
   # Recursively eval all expressions
-  evalExpressions = exprs: let
-    unmarshal = v: (
-      # TODO: Handle single quoted values
-      if v == "True" then true
-      else if v == "False" then false
-      else builtins.fromJSON v
-    );
-    hasElem = needle: haystack: builtins.elem needle (builtins.filter (x: builtins.typeOf x == "string") (builtins.split " " haystack));
-    op = {
-      "<=" = x: y: (unmarshal x) <= (unmarshal y);
-      "<" = x: y: (unmarshal x) < (unmarshal y);
-      "!=" = x: y: x != y;
-      "==" = x: y: x == y;
-      ">=" = x: y: (unmarshal x) >= (unmarshal y);
-      ">" = x: y: (unmarshal x) > (unmarshal y);
-      "~=" = v: c: let
-        parts = builtins.splitVersion c;
-        pruned = lib.take ((builtins.length parts) - 1) parts;
-        upper = builtins.toString (
-          (lib.toInt (builtins.elemAt pruned (builtins.length pruned - 1))) + 1
-        );
-        upperConstraint = builtins.concatStringsSep "." (ireplace (builtins.length pruned - 1) upper pruned);
-      in
-        op.">=" v c && op."<" v upperConstraint;
-      "===" = x: y: x == y;
-      "in" = x: y: let
-        values = builtins.filter (x: builtins.typeOf x == "string") (builtins.split " " (unmarshal y));
-      in
-        builtins.elem (unmarshal x) values;
-    };
-  in
-    if builtins.typeOf exprs == "set" then (
-      if exprs.type == "expr" then (
-        let
-          expr = exprs;
-          result = (op."${expr.value.op}") (builtins.elemAt expr.value.values 0) (builtins.elemAt expr.value.values 1);
-        in
-          {
-            type = "value";
-            value = result;
-          }
-      ) else exprs
-    ) else builtins.map evalExpressions exprs;
+  evalExpressions = exprs:
+    let
+      unmarshal = v: (
+        # TODO: Handle single quoted values
+        if v == "True" then true
+        else if v == "False" then false
+        else builtins.fromJSON v
+      );
+      hasElem = needle: haystack: builtins.elem needle (builtins.filter (x: builtins.typeOf x == "string") (builtins.split " " haystack));
+      op = {
+        "<=" = x: y: (unmarshal x) <= (unmarshal y);
+        "<" = x: y: (unmarshal x) < (unmarshal y);
+        "!=" = x: y: x != y;
+        "==" = x: y: x == y;
+        ">=" = x: y: (unmarshal x) >= (unmarshal y);
+        ">" = x: y: (unmarshal x) > (unmarshal y);
+        "~=" = v: c:
+          let
+            parts = builtins.splitVersion c;
+            pruned = lib.take ((builtins.length parts) - 1) parts;
+            upper = builtins.toString (
+              (lib.toInt (builtins.elemAt pruned (builtins.length pruned - 1))) + 1
+            );
+            upperConstraint = builtins.concatStringsSep "." (ireplace (builtins.length pruned - 1) upper pruned);
+          in
+            op.">=" v c && op."<" v upperConstraint;
+        "===" = x: y: x == y;
+        "in" = x: y:
+          let
+            values = builtins.filter (x: builtins.typeOf x == "string") (builtins.split " " (unmarshal y));
+          in
+            builtins.elem (unmarshal x) values;
+      };
+    in
+      if builtins.typeOf exprs == "set" then (
+        if exprs.type == "expr" then (
+          let
+            expr = exprs;
+            result = (op."${expr.value.op}") (builtins.elemAt expr.value.values 0) (builtins.elemAt expr.value.values 1);
+          in
+            {
+              type = "value";
+              value = result;
+            }
+        ) else exprs
+      ) else builtins.map evalExpressions exprs;
 
   # Now that we have performed an eval all that's left to do is to concat the graph into a single bool
-  reduceExpressions = exprs: let
-    cond = {
-      "and" = x: y: x && y;
-      "or" = x: y: x || y;
-    };
-    reduceExpressionsFun = acc: v: (
-      if builtins.typeOf v == "set" then (
-        if v.type == "value" then (
-          acc // {
-            value = cond."${acc.cond}" acc.value v.value;
-          }
-        ) else if v.type == "bool" then (
-          acc // {
-            cond = v.value;
-          }
+  reduceExpressions = exprs:
+    let
+      cond = {
+        "and" = x: y: x && y;
+        "or" = x: y: x || y;
+      };
+      reduceExpressionsFun = acc: v: (
+        if builtins.typeOf v == "set" then (
+          if v.type == "value" then (
+            acc // {
+              value = cond."${acc.cond}" acc.value v.value;
+            }
+          ) else if v.type == "bool" then (
+            acc // {
+              cond = v.value;
+            }
+          ) else throw "Unsupported type"
+        ) else if builtins.typeOf v == "list" then (
+          let
+            ret = builtins.foldl' reduceExpressionsFun {
+              value = true;
+              cond = "and";
+            } v;
+          in
+            acc // {
+              value = cond."${acc.cond}" acc.value ret.value;
+            }
         ) else throw "Unsupported type"
-      ) else if builtins.typeOf v == "list" then (
-        let
-          ret = builtins.foldl' reduceExpressionsFun {
-            value = true;
-            cond = "and";
-          } v;
-        in
-          acc // {
-            value = cond."${acc.cond}" acc.value ret.value;
-          }
-      ) else throw "Unsupported type"
-    );
-  in
-    (
-      builtins.foldl' reduceExpressionsFun {
-        value = true;
-        cond = "and";
-      } exprs
-    ).value;
-
+      );
+    in
+      (
+        builtins.foldl' reduceExpressionsFun {
+          value = true;
+          cond = "and";
+        } exprs
+      ).value;
 in
 e: builtins.foldl' (acc: v: v acc) e [
   findSubExpressions
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/semver.nix b/pkgs/development/tools/poetry2nix/poetry2nix/semver.nix
index 784589a4ca4..07dcbbc5eac 100644
--- a/pkgs/development/tools/poetry2nix/poetry2nix/semver.nix
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/semver.nix
@@ -1,26 +1,27 @@
 { lib, ireplace }:
-
 let
   inherit (builtins) elemAt match;
 
   operators = let
     matchWildCard = s: match "([^\*])(\.[\*])" s;
     mkComparison = ret: version: v: builtins.compareVersions version v == ret;
-    mkIdxComparison = idx: version: v: let
-      ver = builtins.splitVersion v;
-      minor = builtins.toString (lib.toInt (elemAt ver idx) + 1);
-      upper = builtins.concatStringsSep "." (ireplace idx minor ver);
-    in
-      operators.">=" version v && operators."<" version upper;
-    dropWildcardPrecision = f: version: constraint: let
-      m = matchWildCard constraint;
-      hasWildcard = m != null;
-      c = if hasWildcard then (elemAt m 0) else constraint;
-      v =
-        if hasWildcard then (builtins.substring 0 (builtins.stringLength c) version)
-        else version;
-    in
-      f v c;
+    mkIdxComparison = idx: version: v:
+      let
+        ver = builtins.splitVersion v;
+        minor = builtins.toString (lib.toInt (elemAt ver idx) + 1);
+        upper = builtins.concatStringsSep "." (ireplace idx minor ver);
+      in
+        operators.">=" version v && operators."<" version upper;
+    dropWildcardPrecision = f: version: constraint:
+      let
+        m = matchWildCard constraint;
+        hasWildcard = m != null;
+        c = if hasWildcard then (elemAt m 0) else constraint;
+        v =
+          if hasWildcard then (builtins.substring 0 (builtins.stringLength c) version)
+          else version;
+      in
+        f v c;
   in
     {
       # Prefix operators
@@ -33,16 +34,17 @@ let
       # Semver specific operators
       "~" = mkIdxComparison 1;
       "^" = mkIdxComparison 0;
-      "~=" = v: c: let
-        # Prune constraint
-        parts = builtins.splitVersion c;
-        pruned = lib.take ((builtins.length parts) - 1) parts;
-        upper = builtins.toString (
-          (lib.toInt (builtins.elemAt pruned (builtins.length pruned - 1))) + 1
-        );
-        upperConstraint = builtins.concatStringsSep "." (ireplace (builtins.length pruned - 1) upper pruned);
-      in
-        operators.">=" v c && operators."<" v upperConstraint;
+      "~=" = v: c:
+        let
+          # Prune constraint
+          parts = builtins.splitVersion c;
+          pruned = lib.take ((builtins.length parts) - 1) parts;
+          upper = builtins.toString (
+            (lib.toInt (builtins.elemAt pruned (builtins.length pruned - 1))) + 1
+          );
+          upperConstraint = builtins.concatStringsSep "." (ireplace (builtins.length pruned - 1) upper pruned);
+        in
+          operators.">=" v c && operators."<" v upperConstraint;
       # Infix operators
       "-" = version: v: operators.">=" version v.vl && operators."<=" version v.vu;
       # Arbitrary equality clause, just run simple comparison
@@ -55,33 +57,34 @@ let
     version = "([0-9\.\*x]+)";
   };
 
-  parseConstraint = constraint: let
-    constraintStr = builtins.replaceStrings [ " " ] [ "" ] constraint;
-    # The common prefix operators
-    mPre = match "${re.operators} *${re.version}" constraintStr;
-    # There is also an infix operator to match ranges
-    mIn = match "${re.version} *(-) *${re.version}" constraintStr;
-  in
-    (
-      if mPre != null then {
-        op = elemAt mPre 0;
-        v = elemAt mPre 1;
-      }
-        # Infix operators are range matches
-      else if mIn != null then {
-        op = elemAt mIn 1;
-        v = {
-          vl = (elemAt mIn 0);
-          vu = (elemAt mIn 2);
-        };
-      }
-      else throw "Constraint \"${constraintStr}\" could not be parsed"
-    );
-
-  satisfiesSemver = version: constraint: let
-    inherit (parseConstraint constraint) op v;
-  in
-    if constraint == "*" then true else operators."${op}" version v;
+  parseConstraint = constraint:
+    let
+      constraintStr = builtins.replaceStrings [ " " ] [ "" ] constraint;
+      # The common prefix operators
+      mPre = match "${re.operators} *${re.version}" constraintStr;
+      # There is also an infix operator to match ranges
+      mIn = match "${re.version} *(-) *${re.version}" constraintStr;
+    in
+      (
+        if mPre != null then {
+          op = elemAt mPre 0;
+          v = elemAt mPre 1;
+        }
+          # Infix operators are range matches
+        else if mIn != null then {
+          op = elemAt mIn 1;
+          v = {
+            vl = (elemAt mIn 0);
+            vu = (elemAt mIn 2);
+          };
+        }
+        else throw "Constraint \"${constraintStr}\" could not be parsed"
+      );
 
+  satisfiesSemver = version: constraint:
+    let
+      inherit (parseConstraint constraint) op v;
+    in
+      if constraint == "*" then true else operators."${op}" version v;
 in
 { inherit satisfiesSemver; }
diff --git a/pkgs/development/tools/profiling/sysprof/default.nix b/pkgs/development/tools/profiling/sysprof/default.nix
index b7538a2b388..da2043c5bd7 100644
--- a/pkgs/development/tools/profiling/sysprof/default.nix
+++ b/pkgs/development/tools/profiling/sysprof/default.nix
@@ -19,13 +19,13 @@
 
 stdenv.mkDerivation rec {
   pname = "sysprof";
-  version = "3.34.1";
+  version = "3.36.0";
 
   outputs = [ "out" "lib" "dev" ];
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1l4kr1av7933vb4zql9c5lgzivlw64hyky4nr8xin1v5if6vnjw4";
+    sha256 = "hnDbTaz3shnTDFdcRlsXyO1nJNut40fyzelUi/8DkQg=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/tools/proto-contrib/default.nix b/pkgs/development/tools/proto-contrib/default.nix
index adb0df28ce1..83668389556 100644
--- a/pkgs/development/tools/proto-contrib/default.nix
+++ b/pkgs/development/tools/proto-contrib/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   pname = "proto-contrib";
@@ -13,9 +13,7 @@ buildGoModule rec {
 
   modSha256 = "19cqz13jd95d5vibd10420gg69ldgf6afc51mkglhafgmmif56b0";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Contributed tools and other packages on top of the Go proto package";
     homepage = https://github.com/emicklei/proto-contrib;
     license = licenses.mit;
diff --git a/pkgs/development/tools/protoc-gen-doc/default.nix b/pkgs/development/tools/protoc-gen-doc/default.nix
index c25b2d56fe6..77c1df6f43e 100644
--- a/pkgs/development/tools/protoc-gen-doc/default.nix
+++ b/pkgs/development/tools/protoc-gen-doc/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule {
   pname = "protoc-gen-doc-unstable";
@@ -13,9 +13,7 @@ buildGoModule {
 
   modSha256 = "1952ycdkgl00q2s3qmhislhhim15nn6nmlkwbfdvrsfzznqj47rd";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Documentation generator plugin for Google Protocol Buffers";
     longDescription = ''
       This is a documentation generator plugin for the Google Protocol Buffers
diff --git a/pkgs/development/tools/prototool/default.nix b/pkgs/development/tools/prototool/default.nix
index 15a854e4d86..37b0f1fdf8d 100644
--- a/pkgs/development/tools/prototool/default.nix
+++ b/pkgs/development/tools/prototool/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, makeWrapper, protobuf, Security }:
+{ lib, buildGoModule, fetchFromGitHub, makeWrapper, protobuf }:
 
 buildGoModule rec {
   pname = "prototool";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   nativeBuildInputs = [ makeWrapper ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   modSha256 = "1gc8kc9mbi3mlh48zx4lcgpsrf8z879f1qj9wfyr66s7wd1ljazg";
 
   postInstall = ''
@@ -25,7 +23,7 @@ buildGoModule rec {
 
   subPackages = [ "cmd/prototool" ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     homepage = "https://github.com/uber/prototool";
     description = "Your Swiss Army Knife for Protocol Buffers";
     maintainers = [ maintainers.marsam ];
diff --git a/pkgs/development/tools/pry/Gemfile.lock b/pkgs/development/tools/pry/Gemfile.lock
index e6025f50ca1..d76845bc05a 100644
--- a/pkgs/development/tools/pry/Gemfile.lock
+++ b/pkgs/development/tools/pry/Gemfile.lock
@@ -14,4 +14,4 @@ DEPENDENCIES
   pry
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/tools/puppet/puppet-lint/Gemfile.lock b/pkgs/development/tools/puppet/puppet-lint/Gemfile.lock
index 8c5d369fb37..870652b567a 100644
--- a/pkgs/development/tools/puppet/puppet-lint/Gemfile.lock
+++ b/pkgs/development/tools/puppet/puppet-lint/Gemfile.lock
@@ -10,4 +10,4 @@ DEPENDENCIES
   puppet-lint
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/development/tools/redis-dump/Gemfile.lock b/pkgs/development/tools/redis-dump/Gemfile.lock
index 364bdb778f5..f789ae87d8d 100644
--- a/pkgs/development/tools/redis-dump/Gemfile.lock
+++ b/pkgs/development/tools/redis-dump/Gemfile.lock
@@ -18,4 +18,4 @@ DEPENDENCIES
   redis-dump
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/tools/repository-managers/nexus/default.nix b/pkgs/development/tools/repository-managers/nexus/default.nix
index 416dafe2872..82dca2289cf 100644
--- a/pkgs/development/tools/repository-managers/nexus/default.nix
+++ b/pkgs/development/tools/repository-managers/nexus/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "nexus";
-  version = "3.20.1-01";
+  version = "3.22.0-02";
 
   src = fetchurl {
     url = "https://sonatype-download.global.ssl.fastly.net/nexus/3/nexus-${version}-unix.tar.gz";
-    sha256 = "0l8fwcnpbc35lqadyrsljvr4rr5kp9gkx5dxs9i35mg2f0z9bagv";
+    sha256 = "12433fgva03gsgi37xqgkdnbglgq4b66lmzk5cyxfg22szl4xvwz";
   };
 
   preferLocalBuild = true;
diff --git a/pkgs/development/tools/rgp/default.nix b/pkgs/development/tools/rgp/default.nix
new file mode 100644
index 00000000000..dea0512b7d6
--- /dev/null
+++ b/pkgs/development/tools/rgp/default.nix
@@ -0,0 +1,71 @@
+{ lib
+, stdenv
+, makeWrapper
+, fetchurl
+, autoPatchelfHook
+, dbus
+, fontconfig
+, freetype
+, glib
+, libglvnd
+, libX11
+, libxcb
+, libXi
+, ncurses5
+, qtbase
+, zlib
+}:
+
+stdenv.mkDerivation rec {
+  pname = "rgp";
+  version = "1.7.0.29";
+
+  src = fetchurl {
+    url = "https://github.com/GPUOpen-Tools/radeon_gpu_profiler/releases/download/v${lib.versions.majorMinor version}/RadeonGPUProfiler_${version}.tgz";
+    sha256 = "d7d4aa92231796a509dfcf92e9618cac98ae6572c12efd0871eb43afa4e8240a";
+  };
+
+  nativeBuildInputs = [ makeWrapper autoPatchelfHook ];
+
+  buildInputs = [
+    dbus
+    fontconfig
+    freetype
+    glib
+    libglvnd
+    libX11
+    libxcb
+    libXi
+    ncurses5
+    qtbase
+    zlib
+  ];
+
+  runtimeDependencies = [
+    "${placeholder "out"}/opt/rgp"
+    "${placeholder "out"}/opt/rgp/qt"
+  ];
+
+  installPhase = ''
+    mkdir -p $out/opt/rgp $out/bin
+    cp -r . $out/opt/rgp/
+    # Breaks autoPatchelfHook and has no known usage
+    rm $out/opt/rgp/AMDToolsDownloader
+
+    for prog in RadeonGPUProfiler RadeonDeveloperPanel RadeonDeveloperService RadeonDeveloperServiceCLI; do
+      # makeWrapper is needed so that executables are started from the opt
+      # directory, where qt.conf is
+      makeWrapper \
+        $out/opt/rgp/$prog \
+        $out/bin/$prog
+    done
+  '';
+
+  meta = with lib; {
+    description = "A tool from AMD that allows for deep inspection of GPU workloads";
+    homepage = "https://gpuopen.com/gaming-product/radeon-gpu-profiler-rgp/";
+    license = licenses.unfree;
+    platforms = [ "x86_64-linux" ];
+    maintainers = with maintainers; [ Flakebi ];
+  };
+}
diff --git a/pkgs/development/tools/ronn/Gemfile.lock b/pkgs/development/tools/ronn/Gemfile.lock
index c2b90f63494..ff71ebd7a01 100644
--- a/pkgs/development/tools/ronn/Gemfile.lock
+++ b/pkgs/development/tools/ronn/Gemfile.lock
@@ -16,4 +16,4 @@ DEPENDENCIES
   ronn
 
 BUNDLED WITH
-   1.11.2
+   2.1.4
diff --git a/pkgs/development/tools/rshell/default.nix b/pkgs/development/tools/rshell/default.nix
index b209b09eec7..5087b811ac0 100644
--- a/pkgs/development/tools/rshell/default.nix
+++ b/pkgs/development/tools/rshell/default.nix
@@ -2,17 +2,17 @@
 
 buildPythonApplication rec {
   pname = "rshell";
-  version = "0.0.26";
+  version = "0.0.27";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "05nvfaykzwj1y86fcckrnvmrva7849lkbmpxsy2hb9akk0y7li6c";
+    sha256 = "15pm60jfmr5nms43nrh5jlpz4lxxfhaahznfcys6nc4g80r2fwr2";
   };
 
   propagatedBuildInputs = [ pyserial pyudev ];
 
   meta = with lib; {
-    homepage = https://github.com/dhylands/rshell;
+    homepage = "https://github.com/dhylands/rshell";
     description = "Remote Shell for MicroPython";
     license = licenses.mit;
     maintainers = with maintainers; [ c0deaddict ];
diff --git a/pkgs/development/tools/rubocop/Gemfile.lock b/pkgs/development/tools/rubocop/Gemfile.lock
index 9d166f0fad5..0e6e3a7f361 100644
--- a/pkgs/development/tools/rubocop/Gemfile.lock
+++ b/pkgs/development/tools/rubocop/Gemfile.lock
@@ -24,4 +24,4 @@ DEPENDENCIES
   rubocop
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/development/tools/rust/cargo-asm/default.nix b/pkgs/development/tools/rust/cargo-asm/default.nix
index 9d2279fe598..7c1361f6d27 100644
--- a/pkgs/development/tools/rust/cargo-asm/default.nix
+++ b/pkgs/development/tools/rust/cargo-asm/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-asm";
-  version = "0.1.17";
+  version = "2019-12-24";
 
   src = fetchFromGitHub {
     owner = "gnzlbg";
     repo = "cargo-asm";
-    rev = "7f69a17e9c36dfe1f0d7080d7974c72ecc87a145";
-    sha256 = "0zn5p95hsmhvk2slc9hakrpvim6l4zbpgkks2x64ndwyfmzyykws";
+    rev = "577f890ebd4a09c8265710261e976fe7bfce8668";
+    sha256 = "1f6kzsmxgdms9lq5z9ynnmxymk9k2lzlp3caa52wqjvdw1grw0rb";
   };
 
-  cargoSha256 = "1xsfwzn2b7hmb7hwgfa4ss7qfas8957gkw7zys0an9hdj5qr3ywb";
+  cargoSha256 = "0d797cisiydblh64vqpfdjf37wmxrvs77phdrqh582lbrvnfhx2j";
 
   buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
 
diff --git a/pkgs/development/tools/rust/cargo-bloat/default.nix b/pkgs/development/tools/rust/cargo-bloat/default.nix
index d9980df02a0..8374e065356 100644
--- a/pkgs/development/tools/rust/cargo-bloat/default.nix
+++ b/pkgs/development/tools/rust/cargo-bloat/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-bloat";
-  version = "0.9.2";
+  version = "0.9.3";
 
   src = fetchFromGitHub {
     owner = "RazrFalcon";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0h535fnmwm1ix08a3ifasppqcm7z4fiwf6kn32vhqqpn7x9vvl53";
+    sha256 = "04h9yyna47cgn2d232v2fpbgki9gg4lykpmx46ncpsq4g6azl1a9";
   };
 
-  cargoSha256 = "00j2czhb0ag10hwq7ycdwr2ndb6gz99kg12hlmaq4mkaf8h254nn";
+  cargoSha256 = "0lzc2nwz9lpwxv704k40d1416qnf3wy3g6ad8w8xbkfc6ydcaa4l";
 
   meta = with lib; {
     description = "A tool and Cargo subcommand that helps you find out what takes most of the space in your executable";
diff --git a/pkgs/development/tools/rust/cargo-expand/default.nix b/pkgs/development/tools/rust/cargo-expand/default.nix
index 7ffb77f741b..73dcb96201e 100644
--- a/pkgs/development/tools/rust/cargo-expand/default.nix
+++ b/pkgs/development/tools/rust/cargo-expand/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-expand";
-  version = "0.4.18";
+  version = "0.4.19";
 
   src = fetchFromGitHub {
     owner = "dtolnay";
     repo = pname;
     rev = version;
-    sha256 = "1dhrzfy1ii2vg8psvz9rrgk0blj5bl64ghr0z44vh5y0kxn9v62p";
+    sha256 = "15izqd6nbpxjjymdmcpzjmaiygs1vdrpg9cw1nzmrkb8fc4h5ch5";
   };
 
-  cargoSha256 = "13ib0binyw1rzxjg59ly3ahyr53wdq3z7wfp11gd61kzwz34gs9d";
+  cargoSha256 = "0sbpymxhhwxg13w9821b17nda6p3ycqr81i7bj4fxil0n3sb910h";
 
   buildInputs = [ llvmPackages.libclang ]
     ++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
diff --git a/pkgs/development/tools/rust/cargo-make/Cargo.lock b/pkgs/development/tools/rust/cargo-make/Cargo.lock
index bf634d33805..f5ad1b413ca 100644
--- a/pkgs/development/tools/rust/cargo-make/Cargo.lock
+++ b/pkgs/development/tools/rust/cargo-make/Cargo.lock
@@ -104,14 +104,14 @@ dependencies = [
 
 [[package]]
 name = "cargo-make"
-version = "0.29.0"
+version = "0.30.4"
 dependencies = [
- "ci_info 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "ci_info 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "colored 1.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "dirs 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "duckscript 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "duckscriptsdk 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "duckscriptsdk 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "envmnt 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "fern 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "fsio 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -142,7 +142,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "ci_info"
-version = "0.9.1"
+version = "0.10.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "envmnt 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -239,7 +239,7 @@ dependencies = [
 
 [[package]]
 name = "duckscriptsdk"
-version = "0.3.0"
+version = "0.3.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "attohttpc 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -953,7 +953,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 "checksum c2-chacha 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb"
 "checksum cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)" = "95e28fa049fda1c330bcf9d723be7663a899c4679724b34c81e9f5a326aab8cd"
 "checksum cfg-if 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
-"checksum ci_info 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e53a6853eb0aafd4be4d1c7c891982a91a58f84df98838992ce3eb774572bfd9"
+"checksum ci_info 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b407009a4a51ae109dbdfcd7b6e4de38d148f37fad512b8c4623c642c4045e68"
 "checksum clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9"
 "checksum colored 1.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8815e2ab78f3a59928fc32e141fbeece88320a240e43f47b2fd64ea3a88a5b3d"
 "checksum constant_time_eq 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc"
@@ -964,7 +964,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
 "checksum dirs 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3"
 "checksum dirs-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "afa0b23de8fd801745c471deffa6e12d248f962c9fd4b4c33787b055599bde7b"
 "checksum duckscript 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aa4a338912dce0ada9929b9aa81c3b279e51b101583da13541339efaee46dfa9"
-"checksum duckscriptsdk 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9da937d7dc544fe56d34e2b70c68bac038a821f5822e8a567b1ce52d47edd1c0"
+"checksum duckscriptsdk 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0cc45d92450a257a4fbf28126086983c88010dbe2f99f3559d0073a6ed440046"
 "checksum encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec"
 "checksum encoding-index-japanese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "04e8b2ff42e9a05335dbf8b5c6f7567e5591d0d916ccef4e0b1710d32a0d0c91"
 "checksum encoding-index-korean 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "4dc33fb8e6bcba213fe2f14275f0963fd16f0a02c878e3095ecfdf5bee529d81"
diff --git a/pkgs/development/tools/rust/cargo-make/default.nix b/pkgs/development/tools/rust/cargo-make/default.nix
index a7ccc058191..04e7d17503b 100644
--- a/pkgs/development/tools/rust/cargo-make/default.nix
+++ b/pkgs/development/tools/rust/cargo-make/default.nix
@@ -2,7 +2,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-make";
-  version = "0.29.0";
+  version = "0.30.4";
 
   src =
     let
@@ -10,7 +10,7 @@ rustPlatform.buildRustPackage rec {
         owner = "sagiegurari";
         repo = pname;
         rev = version;
-        sha256 = "0sxwc61iaqln37m45a3sy1c92ri4zad8g5h5fgk5plj0qlps80np";
+        sha256 = "14sl7kcr1n3xb912vd3445pwf3v1kp74lgxlwqybnwiyh1dxihvg";
       };
     in
     runCommand "source" {} ''
@@ -24,7 +24,7 @@ rustPlatform.buildRustPackage rec {
   buildInputs = [ openssl ]
     ++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
 
-  cargoSha256 = "1w7nw3amb5by60a8aqvwka4aify8k3csjqys7arzksy98jyn6b4j";
+  cargoSha256 = "06i1z5jjqyadmvjgwxjlxcj2mmb0g83byibl3ap9qffahn0vhf7x";
 
   # Some tests fail because they need network access.
   # However, Travis ensures a proper build.
diff --git a/pkgs/development/tools/rust/cbindgen/default.nix b/pkgs/development/tools/rust/cbindgen/default.nix
index 34d74480746..87e8e081a93 100644
--- a/pkgs/development/tools/rust/cbindgen/default.nix
+++ b/pkgs/development/tools/rust/cbindgen/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rust-cbindgen";
-  version = "0.13.1";
+  version = "0.13.2";
 
   src = fetchFromGitHub {
     owner = "eqrion";
     repo = "cbindgen";
     rev = "v${version}";
-    sha256 = "1x21g66gri6z9bnnfn7zmnf2lwdf5ing76pcmw0ilx4nzpvfhkg0";
+    sha256 = "100ls8p8w6jwcjh3ligly5alg8fzp21aj7b1qbndn9fm0y1nmjam";
   };
 
-  cargoSha256 = "13fbahdih5whll09pfgyb1bjag1f0d0xfwgm2s342bs1krxsrbh3";
+  cargoSha256 = "0d9sz46yzh01dx973q10xzw4k7r7ylvg82s5pkp3zpwcin8smaiw";
 
   buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
 
@@ -22,7 +22,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = "A project for generating C bindings from Rust code";
-    homepage = https://github.com/eqrion/cbindgen;
+    homepage = "https://github.com/eqrion/cbindgen";
     license = licenses.mpl20;
     maintainers = with maintainers; [ jtojnar andir ];
   };
diff --git a/pkgs/development/tools/sass/Gemfile.lock b/pkgs/development/tools/sass/Gemfile.lock
index 1b99dd3a136..9882e1efcc4 100644
--- a/pkgs/development/tools/sass/Gemfile.lock
+++ b/pkgs/development/tools/sass/Gemfile.lock
@@ -18,4 +18,4 @@ DEPENDENCIES
   sass
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/tools/scss-lint/Gemfile.lock b/pkgs/development/tools/scss-lint/Gemfile.lock
index 546dfabe4d7..08e2fe4e64d 100644
--- a/pkgs/development/tools/scss-lint/Gemfile.lock
+++ b/pkgs/development/tools/scss-lint/Gemfile.lock
@@ -22,4 +22,4 @@ DEPENDENCIES
   scss_lint
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/development/tools/setupcfg2nix/default.nix b/pkgs/development/tools/setupcfg2nix/default.nix
index 5d1f015e805..96aefe55a95 100644
--- a/pkgs/development/tools/setupcfg2nix/default.nix
+++ b/pkgs/development/tools/setupcfg2nix/default.nix
@@ -6,7 +6,7 @@ buildSetupcfg rec {
     owner = "target";
     repo = "setupcfg2nix";
     rev = info.version;
-    sha256 = "1zn9njpzwhwikrirgjlyz6ys3xr8gq61ry8blmnpscqvhsdhxcs6";
+    sha256 = "1rj227vxybwp9acwnpwg9np964b1qcw2av3qmx00isnrw5vcps8m";
   };
   application = true;
   meta = {
diff --git a/pkgs/development/tools/setupcfg2nix/info.nix b/pkgs/development/tools/setupcfg2nix/info.nix
index b0d5873ed63..6b65632bf7d 100644
--- a/pkgs/development/tools/setupcfg2nix/info.nix
+++ b/pkgs/development/tools/setupcfg2nix/info.nix
@@ -1,6 +1,6 @@
 {
   pname = ''setupcfg2nix'';
-  version = ''1.1.0'';
+  version = ''2.0.1'';
   install_requires = [
     ''setuptools''
   ];
diff --git a/pkgs/development/tools/skaffold/default.nix b/pkgs/development/tools/skaffold/default.nix
index bab881cf4a4..d1d1200344f 100644
--- a/pkgs/development/tools/skaffold/default.nix
+++ b/pkgs/development/tools/skaffold/default.nix
@@ -2,9 +2,9 @@
 
 buildGoPackage rec {
   pname = "skaffold";
-  version = "1.4.0";
+  version = "1.6.0";
   # rev is the ${version} commit, mainly for skaffold version command output
-  rev = "bb324609b4254ceb9f76d35eb03642a6a1807867";
+  rev = "4cc0be23e41e37d8b1bca1464516538b2cc1bba0";
 
   goPackagePath = "github.com/GoogleContainerTools/skaffold";
   subPackages = ["cmd/skaffold"];
@@ -20,7 +20,7 @@ buildGoPackage rec {
     owner = "GoogleContainerTools";
     repo = "skaffold";
     rev = "v${version}";
-    sha256 = "0nrz2gnp722cq4p8lcfl0nlws53c2bfq17jgr2jad4vyjglgfscw";
+    sha256 = "0wz9x3p0hfajrkm1qrhl4kw7l7r3n6xv16chl4dxigaix8ga068h";
   };
 
   nativeBuildInputs = [ installShellFiles ];
diff --git a/pkgs/development/tools/skopeo/default.nix b/pkgs/development/tools/skopeo/default.nix
index c065629018c..4425640828c 100644
--- a/pkgs/development/tools/skopeo/default.nix
+++ b/pkgs/development/tools/skopeo/default.nix
@@ -1,17 +1,27 @@
-{ stdenv, lib, buildGoPackage, fetchFromGitHub, runCommand
-, gpgme, libgpgerror, lvm2, btrfs-progs, pkgconfig, libselinux
-, go-md2man }:
+{ stdenv
+, lib
+, buildGoPackage
+, fetchFromGitHub
+, runCommand
+, gpgme
+, libgpgerror
+, lvm2
+, btrfs-progs
+, pkg-config
+, libselinux
+, go-md2man
+}:
 
 with stdenv.lib;
 
 let
-  version = "0.1.41";
+  version = "0.2.0";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "containers";
     repo = "skopeo";
-    sha256 = "0aqw17irj2wn4a8g9hzfm5z5azqq33z6r1dbg1gyn2c8qxy1vfxs";
+    sha256 = "09zqzrw6f1s6kaknnj3hra3xz4nq6y86vmw5vk8p4f6g7cwakg1x";
   };
 
   defaultPolicyFile = runCommand "skopeo-default-policy.json" {} "cp ${src}/default-policy.json $out";
@@ -28,7 +38,7 @@ buildGoPackage {
 
   excludedPackages = "integration";
 
-  nativeBuildInputs = [ pkgconfig (lib.getBin go-md2man) ];
+  nativeBuildInputs = [ pkg-config (lib.getBin go-md2man) ];
   buildInputs = [ gpgme ] ++ lib.optionals stdenv.isLinux [ libgpgerror lvm2 btrfs-progs libselinux ];
 
   buildFlagsArray = ''
@@ -49,10 +59,10 @@ buildGoPackage {
     popd
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "A command line utility for various operations on container images and image repositories";
     homepage = "https://github.com/containers/skopeo";
-    maintainers = with stdenv.lib.maintainers; [ vdemeester lewo ];
-    license = stdenv.lib.licenses.asl20;
+    maintainers = with maintainers; [ lewo ] ++ teams.podman.members;
+    license = licenses.asl20;
   };
 }
diff --git a/pkgs/development/tools/sqlint/Gemfile.lock b/pkgs/development/tools/sqlint/Gemfile.lock
index 6fc638615fb..a57d1811b19 100644
--- a/pkgs/development/tools/sqlint/Gemfile.lock
+++ b/pkgs/development/tools/sqlint/Gemfile.lock
@@ -1,8 +1,8 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    pg_query (1.1.0)
-    sqlint (0.1.9)
+    pg_query (1.2.0)
+    sqlint (0.1.10)
       pg_query (~> 1)
 
 PLATFORMS
@@ -12,4 +12,4 @@ DEPENDENCIES
   sqlint
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/tools/sqlint/gemset.nix b/pkgs/development/tools/sqlint/gemset.nix
index b10a56c4c92..a86277363fb 100644
--- a/pkgs/development/tools/sqlint/gemset.nix
+++ b/pkgs/development/tools/sqlint/gemset.nix
@@ -4,10 +4,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "070iy9jdj0snfl42my5n6i2svcnn87cbffcjvvq5068hw0b0296w";
+      sha256 = "0p9s6znavm6v5dwk1hxg9a8h2lrrwh9l0rlk0sy8cx4sq2mq82m1";
       type = "gem";
     };
-    version = "1.1.0";
+    version = "1.2.0";
   };
   sqlint = {
     dependencies = ["pg_query"];
@@ -15,9 +15,9 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pg9c00w520mw1mzq8kls8whwgqva1alksdsv536bh9nq7m2hnky";
+      sha256 = "0ds7qsaqi745fda8nliy15is36l1bkfbfkr43q6smpy103xbk44c";
       type = "gem";
     };
-    version = "0.1.9";
+    version = "0.1.10";
   };
 }
\ No newline at end of file
diff --git a/pkgs/development/tools/sunxi-tools/default.nix b/pkgs/development/tools/sunxi-tools/default.nix
index b3026cdf84d..b9fc3e2d514 100644
--- a/pkgs/development/tools/sunxi-tools/default.nix
+++ b/pkgs/development/tools/sunxi-tools/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pkgconfig, libusb, zlib }:
+{ stdenv, fetchFromGitHub, pkgconfig, libusb1, zlib }:
 
 stdenv.mkDerivation {
   name = "sunxi-tools-20181113";
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libusb zlib ];
+  buildInputs = [ libusb1 zlib ];
 
   makeFlags = [ "PREFIX=$(out)" ];
 
diff --git a/pkgs/development/tools/trellis/default.nix b/pkgs/development/tools/trellis/default.nix
index 130aa87f7ce..d297105ea91 100644
--- a/pkgs/development/tools/trellis/default.nix
+++ b/pkgs/development/tools/trellis/default.nix
@@ -8,24 +8,26 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "trellis";
-  version = "2020.02.04";
+  version = "2020.03.25";
+
   # git describe --tags
   realVersion = with stdenv.lib; with builtins;
-    "1.0-130-g${substring 0 7 (elemAt srcs 0).rev}";
+    "1.0-152-g${substring 0 7 (elemAt srcs 0).rev}";
 
   srcs = [
     (fetchFromGitHub {
        owner  = "SymbiFlow";
        repo   = "prjtrellis";
-       rev    = "4e4b95c8e03583d48d76d1229f9c7825e2ee5be1";
-       sha256 = "02kg48393bjiys56r62b4ks2xvfarw9phi5bips2xsnj9c99pmg0";
+       rev    = "c27bfc220a9f85f04173840d1ea081ba478adc9c";
+       sha256 = "1fyl51246ns2njvij8g7k9a9axvhz8n8g09fny5dym9q7hcx08qh";
        name   = "trellis";
      })
+
     (fetchFromGitHub {
       owner  = "SymbiFlow";
       repo   = "prjtrellis-db";
-      rev    = "717478b757a702bbc7e3e11a5fbecee2a64f7922";
-      sha256 = "0q4j8qz3m2hissn2a82ck542cx62bp4f0wwzl3g22yv59i13yg83";
+      rev    = "c137076fdd8bfca3d2bf9cdacda9983dbbec599a";
+      sha256 = "1br0vw8wwcn2qhs8kxkis5xqlr2nw7r3mf1qwjp8xckd6fa1wlcw";
       name   = "trellis-database";
     })
   ];
diff --git a/pkgs/development/tools/unityhub/default.nix b/pkgs/development/tools/unityhub/default.nix
index f52d790c106..2939df0ba20 100644
--- a/pkgs/development/tools/unityhub/default.nix
+++ b/pkgs/development/tools/unityhub/default.nix
@@ -17,11 +17,11 @@ appimageTools.wrapType2 rec {
 
   src = fetchurl {
     url = "https://public-cdn.cloud.unity3d.com/hub/prod/UnityHub.AppImage";
-    sha256 = "1rx7ih94ig3pd1yx1d3fpx7zpixq3j5birkpnzkh778qqsdrg0nf";
+    sha256 = "05p5kqbwgqyk2aw2lix5dk1ql16aj6iczxrc63a1l0vj8wrha7z4";
   };
 
   meta = with stdenv.lib; {
-    homepage = https://unity3d.com/;
+    homepage = "https://unity3d.com/";
     description = "Game development tool";
     longDescription = ''
       Popular development platform for creating 2D and 3D multiplatform games
diff --git a/pkgs/development/tools/vagrant/default.nix b/pkgs/development/tools/vagrant/default.nix
index ee810012862..677fddd0f60 100644
--- a/pkgs/development/tools/vagrant/default.nix
+++ b/pkgs/development/tools/vagrant/default.nix
@@ -118,7 +118,7 @@ in buildRubyGem rec {
     description = "A tool for building complete development environments";
     homepage = https://www.vagrantup.com/;
     license = licenses.mit;
-    maintainers = with maintainers; [ aneeshusa ma27 ];
+    maintainers = with maintainers; [ ma27 ];
     platforms = with platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/development/tools/vcstool/default.nix b/pkgs/development/tools/vcstool/default.nix
index f9a84937af3..bab3ebd5757 100644
--- a/pkgs/development/tools/vcstool/default.nix
+++ b/pkgs/development/tools/vcstool/default.nix
@@ -5,14 +5,14 @@ with python3Packages;
 
 buildPythonApplication rec {
   pname = "vcstool";
-  version = "0.1.36";
+  version = "0.2.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "3c3d347f46cda641344ec5d613896499981b0540e2bfa299baf6026dab7649ca";
+    sha256 = "1mq8lmb1wh55cqdj7javq7qia4217h6vf5ljc99gsjyibi7g7d3k";
   };
 
-  propagatedBuildInputs = [ pyyaml ];
+  propagatedBuildInputs = [ pyyaml setuptools ];
 
   makeWrapperArgs = ["--prefix" "PATH" ":" (stdenv.lib.makeBinPath [ git bazaar subversion ])];
 
@@ -20,7 +20,7 @@ buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Provides a command line tool to invoke vcs commands on multiple repositories";
-    homepage = https://github.com/dirk-thomas/vcstool;
+    homepage = "https://github.com/dirk-thomas/vcstool";
     license = licenses.asl20;
     maintainers = with maintainers; [ sivteck ];
   };
diff --git a/pkgs/development/tools/wally-cli/default.nix b/pkgs/development/tools/wally-cli/default.nix
index b7333e45644..6020d6fe876 100644
--- a/pkgs/development/tools/wally-cli/default.nix
+++ b/pkgs/development/tools/wally-cli/default.nix
@@ -7,10 +7,9 @@ buildGoPackage rec {
   goPackagePath = "github.com/zsa/wally";
   subPackages = [ "cli" ];
 
-  nativeBuildInputs = [
-    pkg-config
-    libusb1
-  ];
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ libusb1 ];
 
   src = fetchFromGitHub {
     owner = "zsa";
diff --git a/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch b/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch
index e30e9c3d7e5..29886fccd5f 100644
--- a/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch
+++ b/pkgs/development/tools/wasm-bindgen-cli/0001-Add-cargo.lock.patch
@@ -1,19 +1,19 @@
-From 792dcf4aef3144222e3fab9498bda620879664ab Mon Sep 17 00:00:00 2001
+From 786cd8df9e9fa245c4dbab1bfd21b7949b8a5300 Mon Sep 17 00:00:00 2001
 From: Maximilian Bosch <maximilian@mbosch.me>
-Date: Sat, 7 Mar 2020 22:56:36 +0100
+Date: Thu, 26 Mar 2020 01:54:11 +0100
 Subject: [PATCH] Add cargo.lock
 
 ---
- Cargo.lock | 2432 ++++++++++++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 2432 insertions(+)
+ Cargo.lock | 2527 ++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 2527 insertions(+)
  create mode 100644 Cargo.lock
 
 diff --git a/Cargo.lock b/Cargo.lock
 new file mode 100644
-index 00000000..2cd91628
+index 00000000..976ea6d4
 --- /dev/null
 +++ b/Cargo.lock
-@@ -0,0 +1,2432 @@
+@@ -0,0 +1,2527 @@
 +# This file is automatically @generated by Cargo.
 +# It is not intended for manual editing.
 +[[package]]
@@ -31,9 +31,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "aho-corasick"
-+version = "0.7.9"
++version = "0.7.10"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "d5e63fd144e18ba274ae7095c0197a870a7b9468abc801dd62f190d80817d2ec"
++checksum = "8716408b8bc624ed7f65d223ddb9ac2d044c0547b6fa4b0d554f3a9540496ada"
 +dependencies = [
 + "memchr",
 +]
@@ -49,9 +49,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "anyhow"
-+version = "1.0.26"
++version = "1.0.27"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "7825f6833612eb2414095684fcf6c635becf3ce97fe48cf6421321e93bfbd53c"
++checksum = "013a6e0a2cbe3d20f9c60b65458f7a7f7a5e636c5d0f45a5a6aee5d4b1f01785"
 +
 +[[package]]
 +name = "arrayref"
@@ -192,9 +192,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "bumpalo"
-+version = "3.2.0"
++version = "3.2.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1f359dc14ff8911330a51ef78022d376f25ed00248912803b58f00cb1c27f742"
++checksum = "12ae9db68ad7fac5fe51304d20f016c911539251075a214f8e663babefa35187"
 +
 +[[package]]
 +name = "byteorder"
@@ -203,15 +203,6 @@ index 00000000..2cd91628
 +checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de"
 +
 +[[package]]
-+name = "c2-chacha"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "214238caa1bf3a496ec3392968969cab8549f96ff30652c9e56885329315f6bb"
-+dependencies = [
-+ "ppv-lite86",
-+]
-+
-+[[package]]
 +name = "canvas"
 +version = "0.1.0"
 +dependencies = [
@@ -368,9 +359,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "curl"
-+version = "0.4.26"
++version = "0.4.28"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ecb534fed9060d04bccaa8b8e1e2d3d5a0d7a9ec6d9c667691c80a3c6b7d19ef"
++checksum = "eda1c0c03cacf3365d84818a40293f0e3f3953db8759c9c565a3b434edf0b52e"
 +dependencies = [
 + "curl-sys",
 + "libc",
@@ -383,9 +374,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "curl-sys"
-+version = "0.4.28+curl-7.69.0"
++version = "0.4.30+curl-7.69.1"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e2c6b7fa5d36aa192e410788b77af65f339af24c8786419e8b48173689a484bf"
++checksum = "923b38e423a8f47a4058e96f2a1fa2865a6231097ee860debd678d244277d50c"
 +dependencies = [
 + "cc",
 + "libc",
@@ -544,6 +535,31 @@ index 00000000..2cd91628
 +checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
 +
 +[[package]]
++name = "futures"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5c329ae8753502fb44ae4fc2b622fa2a94652c41e795143765ba0927f92ab780"
++dependencies = [
++ "futures-channel",
++ "futures-core",
++ "futures-executor",
++ "futures-io",
++ "futures-sink",
++ "futures-task",
++ "futures-util",
++]
++
++[[package]]
++name = "futures-channel"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f0c77d04ce8edd9cb903932b608268b3fffec4163dc053b3b402bf47eac1f1a8"
++dependencies = [
++ "futures-core",
++ "futures-sink",
++]
++
++[[package]]
 +name = "futures-channel-preview"
 +version = "0.3.0-alpha.19"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -553,12 +569,78 @@ index 00000000..2cd91628
 +]
 +
 +[[package]]
++name = "futures-core"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f25592f769825e89b92358db00d26f965761e094951ac44d3663ef25b7ac464a"
++
++[[package]]
 +name = "futures-core-preview"
 +version = "0.3.0-alpha.19"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
 +checksum = "b35b6263fb1ef523c3056565fa67b1d16f0a8604ff12b11b08c25f28a734c60a"
 +
 +[[package]]
++name = "futures-executor"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "f674f3e1bcb15b37284a90cedf55afdba482ab061c407a9c0ebbd0f3109741ba"
++dependencies = [
++ "futures-core",
++ "futures-task",
++ "futures-util",
++]
++
++[[package]]
++name = "futures-io"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "a638959aa96152c7a4cddf50fcb1e3fede0583b27157c26e67d6f99904090dc6"
++
++[[package]]
++name = "futures-macro"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "9a5081aa3de1f7542a794a397cde100ed903b0630152d0973479018fd85423a7"
++dependencies = [
++ "proc-macro-hack",
++ "proc-macro2 1.0.9",
++ "quote 1.0.3",
++ "syn 1.0.17",
++]
++
++[[package]]
++name = "futures-sink"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "3466821b4bc114d95b087b850a724c6f83115e929bc88f1fa98a3304a944c8a6"
++
++[[package]]
++name = "futures-task"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "7b0a34e53cf6cdcd0178aa573aed466b646eb3db769570841fda0c7ede375a27"
++
++[[package]]
++name = "futures-util"
++version = "0.3.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "22766cf25d64306bedf0384da004d05c9974ab104fcc4528f1236181c18004c5"
++dependencies = [
++ "futures-channel",
++ "futures-core",
++ "futures-io",
++ "futures-macro",
++ "futures-sink",
++ "futures-task",
++ "memchr",
++ "pin-utils",
++ "proc-macro-hack",
++ "proc-macro-nested",
++ "slab",
++]
++
++[[package]]
 +name = "getrandom"
 +version = "0.1.14"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -700,7 +782,7 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "js-sys"
-+version = "0.3.36"
++version = "0.3.37"
 +dependencies = [
 + "wasm-bindgen",
 + "wasm-bindgen-futures",
@@ -729,9 +811,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "libc"
-+version = "0.2.67"
++version = "0.2.68"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "eb147597cdf94ed43ab7a9038716637d2d1bf2bc571da995d0028dec06bd3018"
++checksum = "dea0c0405123bba743ee3f91f49b1c7cfb684eef0da0a50110f758ccf24cdff0"
 +
 +[[package]]
 +name = "libz-sys"
@@ -789,11 +871,11 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "memoffset"
-+version = "0.5.3"
++version = "0.5.4"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "75189eb85871ea5c2e2c15abbdd541185f63b408415e5051f5cac122d8c774b9"
++checksum = "b4fc2c02a7e374099d4ee95a193111f72d2110197fe200272371758f6c3643d8"
 +dependencies = [
-+ "rustc_version",
++ "autocfg 1.0.0",
 +]
 +
 +[[package]]
@@ -949,9 +1031,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "openssl-src"
-+version = "111.6.1+1.1.1d"
++version = "111.7.0+1.1.1e"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c91b04cb43c1a8a90e934e0cd612e2a5715d976d2d6cff4490278a0cddf35005"
++checksum = "6fde5a8c01ef8aa31ff8d0aaf9bae248581ed8840fca0b66e51cc9f294a8cb2c"
 +dependencies = [
 + "cc",
 +]
@@ -1025,6 +1107,12 @@ index 00000000..2cd91628
 +]
 +
 +[[package]]
++name = "pin-utils"
++version = "0.1.0-alpha.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "5894c618ce612a3fa23881b152b608bafb8c56cfc22f434a3ba3120b40f7b587"
++
++[[package]]
 +name = "pkg-config"
 +version = "0.3.17"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1079,31 +1167,43 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "proc-macro-error"
-+version = "0.4.11"
++version = "0.4.12"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e7959c6467d962050d639361f7703b2051c43036d03493c36f01d440fdd3138a"
++checksum = "18f33027081eba0a6d8aba6d1b1c3a3be58cbb12106341c2d5759fcd9b5277e7"
 +dependencies = [
 + "proc-macro-error-attr",
 + "proc-macro2 1.0.9",
 + "quote 1.0.3",
-+ "syn 1.0.16",
++ "syn 1.0.17",
 + "version_check 0.9.1",
 +]
 +
 +[[package]]
 +name = "proc-macro-error-attr"
-+version = "0.4.11"
++version = "0.4.12"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "e4002d9f55991d5e019fb940a90e1a95eb80c24e77cb2462dd4dc869604d543a"
++checksum = "8a5b4b77fdb63c1eca72173d68d24501c54ab1269409f6b672c85deb18af69de"
 +dependencies = [
 + "proc-macro2 1.0.9",
 + "quote 1.0.3",
-+ "syn 1.0.16",
++ "syn 1.0.17",
 + "syn-mid",
 + "version_check 0.9.1",
 +]
 +
 +[[package]]
++name = "proc-macro-hack"
++version = "0.5.14"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "fcfdefadc3d57ca21cf17990a28ef4c0f7c61383a28cb7604cf4a18e6ede1420"
++
++[[package]]
++name = "proc-macro-nested"
++version = "0.1.4"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "8e946095f9d3ed29ec38de908c22f95d9ac008e424c7bcae54c75a79c527c694"
++
++[[package]]
 +name = "proc-macro2"
 +version = "0.4.30"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1198,7 +1298,7 @@ index 00000000..2cd91628
 +dependencies = [
 + "getrandom",
 + "libc",
-+ "rand_chacha 0.2.1",
++ "rand_chacha 0.2.2",
 + "rand_core 0.5.1",
 + "rand_hc 0.2.0",
 +]
@@ -1215,11 +1315,11 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "rand_chacha"
-+version = "0.2.1"
++version = "0.2.2"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "03a2a90da8c7523f554344f921aa97283eadf6ac484a6d2a7d0212fa7f8d6853"
++checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
 +dependencies = [
-+ "c2-chacha",
++ "ppv-lite86",
 + "rand_core 0.5.1",
 +]
 +
@@ -1395,9 +1495,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "regex"
-+version = "1.3.4"
++version = "1.3.6"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "322cf97724bea3ee221b78fe25ac9c46114ebb51747ad5babd51a2fc6a8235a8"
++checksum = "7f6946991529684867e47d86474e3a6d0c0ab9b82d5821e314b1ede31fa3a4b3"
 +dependencies = [
 + "aho-corasick",
 + "memchr",
@@ -1407,9 +1507,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "regex-syntax"
-+version = "0.6.16"
++version = "0.6.17"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1132f845907680735a84409c3bebc64d1364a5683ffbce899550cd09d5eaefc1"
++checksum = "7fe5bd57d1d7414c6b5ed48563a2c855d995ff777729dcd91c369ec7fea395ae"
 +
 +[[package]]
 +name = "remove_dir_all"
@@ -1477,19 +1577,10 @@ index 00000000..2cd91628
 +checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
 +
 +[[package]]
-+name = "rustc_version"
-+version = "0.2.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
-+dependencies = [
-+ "semver",
-+]
-+
-+[[package]]
 +name = "ryu"
-+version = "1.0.2"
++version = "1.0.3"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "bfa8506c1de11c9c4e4c38863ccbe02a305c8188e85a05a784c9e11e1c3910c8"
++checksum = "535622e6be132bccd223f4bb2b8ac8d53cda3c7a6394944d3b2b33fb974f9d76"
 +
 +[[package]]
 +name = "safemem"
@@ -1509,9 +1600,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "schannel"
-+version = "0.1.17"
++version = "0.1.18"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "507a9e6e8ffe0a4e0ebb9a10293e62fdf7657c06f1b8bb07a8fcf697d2abf295"
++checksum = "039c25b130bd8c1321ee2d7de7fde2659fa9c2744e4bb29711cfc852ea53cd19"
 +dependencies = [
 + "lazy_static",
 + "winapi",
@@ -1536,38 +1627,23 @@ index 00000000..2cd91628
 +checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
 +
 +[[package]]
-+name = "semver"
-+version = "0.9.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
-+dependencies = [
-+ "semver-parser",
-+]
-+
-+[[package]]
-+name = "semver-parser"
-+version = "0.7.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
-+
-+[[package]]
 +name = "serde"
-+version = "1.0.104"
++version = "1.0.105"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "414115f25f818d7dfccec8ee535d76949ae78584fc4f79a6f45a904bf8ab4449"
++checksum = "e707fbbf255b8fc8c3b99abb91e7257a622caeb20a9818cbadbeeede4e0932ff"
 +dependencies = [
 + "serde_derive",
 +]
 +
 +[[package]]
 +name = "serde_derive"
-+version = "1.0.104"
++version = "1.0.105"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "128f9e303a5a29922045a830221b8f78ec74a5f544944f3d5984f8ec3895ef64"
++checksum = "ac5d00fc561ba2724df6758a17de23df5914f20e41cb00f94d5b7ae42fffaff8"
 +dependencies = [
 + "proc-macro2 1.0.9",
 + "quote 1.0.3",
-+ "syn 1.0.16",
++ "syn 1.0.17",
 +]
 +
 +[[package]]
@@ -1594,6 +1670,12 @@ index 00000000..2cd91628
 +checksum = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
 +
 +[[package]]
++name = "slab"
++version = "0.4.2"
++source = "registry+https://github.com/rust-lang/crates.io-index"
++checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
++
++[[package]]
 +name = "smallvec"
 +version = "1.2.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1631,9 +1713,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "structopt"
-+version = "0.3.11"
++version = "0.3.12"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "3fe43617218c0805c6eb37160119dc3c548110a67786da7218d1c6555212f073"
++checksum = "c8faa2719539bbe9d77869bfb15d4ee769f99525e707931452c97b693b3f159d"
 +dependencies = [
 + "clap",
 + "lazy_static",
@@ -1642,15 +1724,15 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "structopt-derive"
-+version = "0.4.4"
++version = "0.4.5"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "c6e79c80e0f4efd86ca960218d4e056249be189ff1c42824dcd9a7f51a56f0bd"
++checksum = "3f88b8e18c69496aad6f9ddf4630dd7d585bcaf765786cb415b9aec2fe5a0430"
 +dependencies = [
 + "heck",
 + "proc-macro-error",
 + "proc-macro2 1.0.9",
 + "quote 1.0.3",
-+ "syn 1.0.16",
++ "syn 1.0.17",
 +]
 +
 +[[package]]
@@ -1666,9 +1748,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "syn"
-+version = "1.0.16"
++version = "1.0.17"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "123bd9499cfb380418d509322d7a6d52e5315f064fe4b3ad18a53d6b92c07859"
++checksum = "0df0eb663f387145cab623dea85b09c2c5b4b0aef44e945d928e682fce71bb03"
 +dependencies = [
 + "proc-macro2 1.0.9",
 + "quote 1.0.3",
@@ -1683,7 +1765,7 @@ index 00000000..2cd91628
 +dependencies = [
 + "proc-macro2 1.0.9",
 + "quote 1.0.3",
-+ "syn 1.0.16",
++ "syn 1.0.17",
 +]
 +
 +[[package]]
@@ -1818,9 +1900,9 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "trybuild"
-+version = "1.0.23"
++version = "1.0.24"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "26ff1b18659a2218332848d76ad1c867ce4c6ee37b085e6bc8de9a6d11401220"
++checksum = "24b4e093c5ed1a60b22557090120aa14f90ca801549c0949d775ea07c1407720"
 +dependencies = [
 + "glob",
 + "lazy_static",
@@ -1958,7 +2040,7 @@ index 00000000..2cd91628
 + "heck",
 + "proc-macro2 1.0.9",
 + "quote 1.0.3",
-+ "syn 1.0.16",
++ "syn 1.0.17",
 +]
 +
 +[[package]]
@@ -1969,7 +2051,7 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen"
-+version = "0.2.59"
++version = "0.2.60"
 +dependencies = [
 + "cfg-if",
 + "js-sys",
@@ -1985,7 +2067,7 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-anyref-xform"
-+version = "0.2.59"
++version = "0.2.60"
 +dependencies = [
 + "anyhow",
 + "rayon",
@@ -1997,14 +2079,14 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-backend"
-+version = "0.2.59"
++version = "0.2.60"
 +dependencies = [
 + "bumpalo",
 + "lazy_static",
 + "log 0.4.8",
 + "proc-macro2 1.0.9",
 + "quote 1.0.3",
-+ "syn 1.0.16",
++ "syn 1.0.17",
 + "wasm-bindgen-shared",
 +]
 +
@@ -2018,7 +2100,7 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-cli"
-+version = "0.2.59"
++version = "0.2.60"
 +dependencies = [
 + "anyhow",
 + "assert_cmd",
@@ -2046,7 +2128,7 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-cli-support"
-+version = "0.2.59"
++version = "0.2.60"
 +dependencies = [
 + "anyhow",
 + "base64 0.9.3",
@@ -2068,7 +2150,7 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-futures"
-+version = "0.4.9"
++version = "0.4.10"
 +dependencies = [
 + "cfg-if",
 + "futures-channel-preview",
@@ -2080,7 +2162,7 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-macro"
-+version = "0.2.59"
++version = "0.2.60"
 +dependencies = [
 + "quote 1.0.3",
 + "trybuild",
@@ -2091,18 +2173,18 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-macro-support"
-+version = "0.2.59"
++version = "0.2.60"
 +dependencies = [
 + "proc-macro2 1.0.9",
 + "quote 1.0.3",
-+ "syn 1.0.16",
++ "syn 1.0.17",
 + "wasm-bindgen-backend",
 + "wasm-bindgen-shared",
 +]
 +
 +[[package]]
 +name = "wasm-bindgen-multi-value-xform"
-+version = "0.2.59"
++version = "0.2.60"
 +dependencies = [
 + "anyhow",
 + "rayon",
@@ -2123,11 +2205,11 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-shared"
-+version = "0.2.59"
++version = "0.2.60"
 +
 +[[package]]
 +name = "wasm-bindgen-test"
-+version = "0.3.9"
++version = "0.3.10"
 +dependencies = [
 + "console_error_panic_hook",
 + "js-sys",
@@ -2153,7 +2235,7 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-test-macro"
-+version = "0.3.9"
++version = "0.3.10"
 +dependencies = [
 + "proc-macro2 1.0.9",
 + "quote 1.0.3",
@@ -2161,7 +2243,7 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-threads-xform"
-+version = "0.2.59"
++version = "0.2.60"
 +dependencies = [
 + "anyhow",
 + "walrus",
@@ -2170,7 +2252,7 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-wasm-conventions"
-+version = "0.2.59"
++version = "0.2.60"
 +dependencies = [
 + "anyhow",
 + "walrus",
@@ -2178,7 +2260,7 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-wasm-interpreter"
-+version = "0.2.59"
++version = "0.2.60"
 +dependencies = [
 + "anyhow",
 + "log 0.4.8",
@@ -2189,7 +2271,7 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wasm-bindgen-webidl"
-+version = "0.2.59"
++version = "0.2.60"
 +dependencies = [
 + "anyhow",
 + "env_logger",
@@ -2200,7 +2282,7 @@ index 00000000..2cd91628
 + "quote 1.0.3",
 + "sourcefile",
 + "structopt",
-+ "syn 1.0.16",
++ "syn 1.0.17",
 + "wasm-bindgen-backend",
 + "weedle",
 +]
@@ -2254,25 +2336,25 @@ index 00000000..2cd91628
 +
 +[[package]]
 +name = "wast"
-+version = "9.0.0"
++version = "11.0.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "ee7b16105405ca2aa2376ba522d8d4b1a11604941dd3bb7df9fd2ece60f8d16a"
++checksum = "df4d67ba9266f4fcaf2e8a1afadc5e2a959e51aecc07b1ecbdf85a6ddaf08bde"
 +dependencies = [
 + "leb128",
 +]
 +
 +[[package]]
 +name = "wat"
-+version = "1.0.10"
++version = "1.0.12"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
-+checksum = "56173f7f4fb59aebe35a7e71423845e1c6c7144bfb56362d497931b6b3bed0f6"
++checksum = "9a9400dc1c8512087b2d974b1b9b0a6c4e6e26e7e8acf629e3e351165a1ed301"
 +dependencies = [
-+ "wast 9.0.0",
++ "wast 11.0.0",
 +]
 +
 +[[package]]
 +name = "web-sys"
-+version = "0.3.36"
++version = "0.3.37"
 +dependencies = [
 + "js-sys",
 + "wasm-bindgen",
@@ -2316,6 +2398,19 @@ index 00000000..2cd91628
 +]
 +
 +[[package]]
++name = "webxr"
++version = "0.1.0"
++dependencies = [
++ "futures",
++ "js-sys",
++ "serde",
++ "serde_derive",
++ "wasm-bindgen",
++ "wasm-bindgen-futures",
++ "web-sys",
++]
++
++[[package]]
 +name = "weedle"
 +version = "0.11.0"
 +source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/pkgs/development/tools/wasm-bindgen-cli/default.nix b/pkgs/development/tools/wasm-bindgen-cli/default.nix
index e5afcb30a81..ee9a6ead7fa 100644
--- a/pkgs/development/tools/wasm-bindgen-cli/default.nix
+++ b/pkgs/development/tools/wasm-bindgen-cli/default.nix
@@ -2,19 +2,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wasm-bindgen-cli";
-  version = "0.2.59";
+  version = "0.2.60";
 
   src = fetchFromGitHub {
     owner = "rustwasm";
     repo = "wasm-bindgen";
     rev = version;
-    sha256 = "1i0hdky5dlkrzcphddm122yxfhgcvnszh4q1as0r41vhfs5ss597";
+    sha256 = "1jr4v5y9hbkyg8gjkr3qc2qxwhyagfs8q3y3z248mr1919mcas8h";
   };
 
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security curl ];
   nativeBuildInputs = [ pkgconfig ];
 
-  cargoSha256 = "1ylk9vrpajslx1zy4vqmlyqa5ygcmvir1gcn8hsr6liigf5kcz7p";
+  cargoSha256 = "08g110qahipgm1qyyihgqwnkr23w0gk1gp63ici5dj2qsxnc4mxv";
   cargoPatches = [ ./0001-Add-cargo.lock.patch ];
   cargoBuildFlags = [ "-p" pname ];
 
diff --git a/pkgs/development/tools/wllvm/default.nix b/pkgs/development/tools/wllvm/default.nix
index 18d7be93258..cd002bd2ef6 100644
--- a/pkgs/development/tools/wllvm/default.nix
+++ b/pkgs/development/tools/wllvm/default.nix
@@ -1,17 +1,17 @@
 { stdenv, python3Packages }:
 
 python3Packages.buildPythonApplication rec {
-  version = "1.2.2";
+  version = "1.2.8";
   pname = "wllvm";
   name = "${pname}-${version}";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "1zrjcabv41105mmv632gp488kmhya37n0jwgwxhadps4z3jv2qxb";
+    sha256 = "1d88fzg4ba4r3hwrinnv6agiyj3xxdy4yryb8wz2ml51nc6bi591";
   };
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/travitch/whole-program-llvm;
+    homepage = "https://github.com/travitch/whole-program-llvm";
     description = "A wrapper script to build whole-program LLVM bitcode files";
     license = licenses.mit;
     maintainers = with maintainers; [ mic92 dtzWill ];
diff --git a/pkgs/development/tools/wp-cli/default.nix b/pkgs/development/tools/wp-cli/default.nix
index 14e55f99e0b..901435bb631 100644
--- a/pkgs/development/tools/wp-cli/default.nix
+++ b/pkgs/development/tools/wp-cli/default.nix
@@ -1,10 +1,9 @@
 { stdenv, lib, fetchurl, writeText, php, makeWrapper }:
-
 let
-  version = "2.2.0";
+  version = "2.4.0";
 
   completion = fetchurl {
-    url    = "https://raw.githubusercontent.com/wp-cli/wp-cli/v${version}/utils/wp-completion.bash";
+    url = "https://raw.githubusercontent.com/wp-cli/wp-cli/v${version}/utils/wp-completion.bash";
     sha256 = "15d330x6d3fizrm6ckzmdknqg6wjlx5fr87bmkbd5s6a1ihs0g24";
   };
 
@@ -15,14 +14,14 @@ let
     [Phar]
     phar.readonly = Off
   '';
-
-in stdenv.mkDerivation rec {
+in
+stdenv.mkDerivation rec {
   pname = "wp-cli";
   inherit version;
 
   src = fetchurl {
-    url    = "https://github.com/wp-cli/wp-cli/releases/download/v${version}/${pname}-${version}.phar";
-    sha256 = "0s03jbsjwvkcbyss6rvpgw867hiwvk5p4n1qznkghyzi94j8mvki";
+    url = "https://github.com/wp-cli/wp-cli/releases/download/v${version}/${pname}-${version}.phar";
+    sha256 = "0h5mjxrw4z3648v4wb4pvapz2a1mlmbszgggg4b7bvrrxn3cr78k";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -45,9 +44,9 @@ in stdenv.mkDerivation rec {
 
   meta = with lib; {
     description = "A command line interface for WordPress";
-    homepage    = https://wp-cli.org;
-    license     = licenses.mit;
+    homepage = "https://wp-cli.org";
+    license = licenses.mit;
     maintainers = with maintainers; [ peterhoeg ];
-    platforms   = platforms.all;
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/tools/xcpretty/Gemfile.lock b/pkgs/development/tools/xcpretty/Gemfile.lock
index 6f1ba7545a8..c0b9676d27b 100644
--- a/pkgs/development/tools/xcpretty/Gemfile.lock
+++ b/pkgs/development/tools/xcpretty/Gemfile.lock
@@ -12,4 +12,4 @@ DEPENDENCIES
   xcpretty
 
 BUNDLED WITH
-   1.16.4
+   2.1.4
diff --git a/pkgs/development/tools/yarn/default.nix b/pkgs/development/tools/yarn/default.nix
index 9db4472f672..dfdd921fd03 100644
--- a/pkgs/development/tools/yarn/default.nix
+++ b/pkgs/development/tools/yarn/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "yarn";
-  version = "1.22.2";
+  version = "1.22.4";
 
   src = fetchzip {
     url = "https://github.com/yarnpkg/yarn/releases/download/v${version}/yarn-v${version}.tar.gz";
-    sha256 = "1av52k5hl7xylxz5c0h64akz6ccd1vm64v0pzmny1661pbihiwp5";
+    sha256 = "1s054c9cmlmzy6cfkawhaxvaxhqcq0a17n4sb12p0bp2lzkax9lm";
   };
 
   buildInputs = [ nodejs ];
diff --git a/pkgs/development/web/cypress/default.nix b/pkgs/development/web/cypress/default.nix
index 86f6b129acc..2b6449d9dd4 100644
--- a/pkgs/development/web/cypress/default.nix
+++ b/pkgs/development/web/cypress/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec{
   pname = "cypress";
-  version = "3.8.3";
+  version = "4.2.0";
 
   src = fetchzip {
     url = "https://cdn.cypress.io/desktop/${version}/linux-x64/cypress.zip";
-    sha256 = "1ncq64s5y5dsx0lrz950vab2yzwihl2wd7yapp12305bjjsihj3z";
+    sha256 = "0ksa7c0bpq13xxgk0qizg3kfyjihcqan5wm6f45v7kgz3wwxc4nz";
   };
 
   # don't remove runtime deps
diff --git a/pkgs/development/web/flyctl/default.nix b/pkgs/development/web/flyctl/default.nix
index 05f07fd0260..965a53dcdbd 100644
--- a/pkgs/development/web/flyctl/default.nix
+++ b/pkgs/development/web/flyctl/default.nix
@@ -1,18 +1,16 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   pname = "flyctl";
-  version = "0.0.102";
+  version = "0.0.110";
 
   src = fetchFromGitHub {
     owner = "superfly";
     repo = "flyctl";
     rev = "v${version}";
-    sha256 = "181j248i8j9g7kz5krg0bkbxkvmcwpz2vlknii5q3dy7yhgg19h3";
+    sha256 = "1fvvanyzrai41fq98msjwzgwsidxbaly6f6knma6lwmicv4f9svg";
   };
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   preBuild = ''
     go generate ./...
   '';
@@ -22,9 +20,9 @@ buildGoModule rec {
     rm $out/bin/helpgen
   '';
 
-  modSha256 = "1mqkc7hnavvpbqar9f1d2vnm47p4car9abnk2ikyf27jr5glwmsd";
+  modSha256 = "0lnk2g5msqhhshh99s32sqd793rdlzmp7vhqdb1fd6qafrrrxm5w";
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Command line tools for fly.io services";
     homepage = "https://fly.io/";
     license = licenses.asl20;
diff --git a/pkgs/development/web/grails/default.nix b/pkgs/development/web/grails/default.nix
index 4086566f681..fc68fa53246 100644
--- a/pkgs/development/web/grails/default.nix
+++ b/pkgs/development/web/grails/default.nix
@@ -11,11 +11,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "grails";
-  version = "4.0.2";
+  version = "4.0.3";
 
   src = fetchurl {
     url = "https://github.com/grails/grails-core/releases/download/v${version}/grails-${version}.zip";
-    sha256 = "0ry2z4xn0zmdr38k0aa9qiwvfg3q4yxd1wxdwmhzp1vd3g39cx49";
+    sha256 = "107dvgwv2ldpdr99q1nvb1i93jj635p1n7md6q14v9m4a6a226sa";
   };
 
   buildInputs = [ unzip ];
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
       over configuration to provide a productive and stream-lined development
       experience.
     '';
-    homepage = https://grails.org/;
+    homepage = "https://grails.org/";
     license = licenses.asl20;
     platforms = platforms.linux;
     maintainers = [ maintainers.bjornfor ];
diff --git a/pkgs/development/web/mailcatcher/Gemfile.lock b/pkgs/development/web/mailcatcher/Gemfile.lock
index 560213897c9..69cc56a0029 100644
--- a/pkgs/development/web/mailcatcher/Gemfile.lock
+++ b/pkgs/development/web/mailcatcher/Gemfile.lock
@@ -38,4 +38,4 @@ DEPENDENCIES
   mailcatcher
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/development/web/minify/default.nix b/pkgs/development/web/minify/default.nix
index cd602317c70..3752519d060 100644
--- a/pkgs/development/web/minify/default.nix
+++ b/pkgs/development/web/minify/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   pname = "minify";
@@ -13,11 +13,9 @@ buildGoModule rec {
 
   modSha256 = "09jk3mxf7n9wf1cgyiw9mhsr55fb12k399dmzhnib3vhd9xav15i";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = [ "-ldflags=-s -w -X main.Version=${version}" ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Minifiers for web formats";
     license = licenses.mit;
     homepage = "https://go.tacodewolff.nl/minify";
diff --git a/pkgs/development/web/nodejs/v10.nix b/pkgs/development/web/nodejs/v10.nix
index 815b569a7eb..9a50d5fbd35 100644
--- a/pkgs/development/web/nodejs/v10.nix
+++ b/pkgs/development/web/nodejs/v10.nix
@@ -5,6 +5,6 @@ let
 in
   buildNodejs {
     inherit enableNpm;
-    version = "10.19.0";
-    sha256 = "0sginvcsf7lrlzsnpahj4bj1f673wfvby8kaxgvzlrbb7sy229v2";
+    version = "10.20.0";
+    sha256 = "0cvjwnl0wkcsyw3kannbdv01s235wrnp11n2s6swzjx95gpichfi";
   }
diff --git a/pkgs/development/web/nodejs/v12.nix b/pkgs/development/web/nodejs/v12.nix
index 3fa5216ccf8..6d7f213536a 100644
--- a/pkgs/development/web/nodejs/v12.nix
+++ b/pkgs/development/web/nodejs/v12.nix
@@ -5,6 +5,6 @@ let
 in
   buildNodejs {
     inherit enableNpm;
-    version = "12.16.1";
-    sha256 = "0ba1dla31z6i31z3723l74nky1v04irwbl3iaqmi0iicl1dq958a";
+    version = "12.16.2";
+    sha256 = "0y5yd6h13fr34byi7h5xdjaivgcxiz0ykcmpk9nm5ra01b54fp2m";
   }
diff --git a/pkgs/development/web/nodejs/v13.nix b/pkgs/development/web/nodejs/v13.nix
index c5e3f7c4bdb..8676214b50b 100644
--- a/pkgs/development/web/nodejs/v13.nix
+++ b/pkgs/development/web/nodejs/v13.nix
@@ -5,6 +5,6 @@ let
 in
   buildNodejs {
     inherit enableNpm;
-    version = "13.11.0";
-    sha256 = "07r9xwjmiip9zmgfq77f3av3p93adc5cphj07idph1l8ws1j2h75";
+    version = "13.12.0";
+    sha256 = "199qcvzikdzw0h25v9dws77fff6hbvr8dj50lyzlnkya1dd6fzhd";
   }
diff --git a/pkgs/development/web/postman/default.nix b/pkgs/development/web/postman/default.nix
index aea451ff8ae..ba304972d9a 100644
--- a/pkgs/development/web/postman/default.nix
+++ b/pkgs/development/web/postman/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   pname = "postman";
-  version = "7.20.0";
+  version = "7.21.2";
 
   src = fetchurl {
     url = "https://dl.pstmn.io/download/version/${version}/linux64";
-    sha256 = "1al0kl2snbxzmprn13vbna4wyd72dya5lyfkhjgqabm4b7mign6c";
+    sha256 = "18lb8csfmy5j97zdg3c5l23aaw9hjg04qhfc1sz9pgi7xhwz5g1b";
     name = "${pname}.tar.gz";
   };
 
diff --git a/pkgs/games/alephone/default.nix b/pkgs/games/alephone/default.nix
index 1936c93ab84..879571df7a1 100644
--- a/pkgs/games/alephone/default.nix
+++ b/pkgs/games/alephone/default.nix
@@ -90,10 +90,9 @@ in self // {
           --add-flags $out/data/$pname
       '';
 
-      meta = with stdenv.lib;
-        {
-          maintainers = with maintainers; [ ehmry ];
-          inherit (alephone.meta) platforms;
-        } // meta;
-    } // extraArgs);
+      meta = alephone.meta // {
+        license = stdenv.lib.licenses.free;
+        hydraPlatforms = [ ];
+      } // meta;
+    });
 }
diff --git a/pkgs/games/alephone/infinity/default.nix b/pkgs/games/alephone/infinity/default.nix
index f4cea6c7343..fc3500d0eb9 100644
--- a/pkgs/games/alephone/infinity/default.nix
+++ b/pkgs/games/alephone/infinity/default.nix
@@ -3,13 +3,13 @@
 alephone.makeWrapper rec {
   pname = "marathon-infinity";
   desktopName = "Marathon-Infinity";
-  version = "20150620";
+  version = "20190331";
   icon = alephone.icons + "/marathon-infinity.png";
 
   zip = fetchurl {
     url =
       "https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${version}/MarathonInfinity-${version}-Data.zip";
-    sha256 = "0sgfahppanp9c0p115dg0makrdzghzmbz3iggl6x28fh62j03q64";
+    sha256 = "03vn91arnsm71dakbfzrdfwpwh5vkwildl7i16xqi1apinmvvh86";
   };
 
   meta = {
diff --git a/pkgs/games/alephone/marathon/default.nix b/pkgs/games/alephone/marathon/default.nix
index 84831b6a269..1d0787067af 100644
--- a/pkgs/games/alephone/marathon/default.nix
+++ b/pkgs/games/alephone/marathon/default.nix
@@ -3,13 +3,13 @@
 alephone.makeWrapper rec {
   pname = "marathon";
   desktopName = "Marathon";
-  version = "20150620";
+  version = "20190331";
   icon = alephone.icons + "/marathon.png";
 
   zip = fetchurl {
     url =
       "https://github.com/Aleph-One-Marathon/alephone/releases/download/release-${version}/Marathon-${version}-Data.zip";
-    sha256 = "0cagsigsjlsr8jqfaqjdxv8fs0f079cjzs26679aacyykc6b8k3p";
+    sha256 = "1d18a7hn8s50rqcs9i72ak5fq5a76hwk7nylfinrxjb134c9vlpz";
   };
 
   meta = {
diff --git a/pkgs/games/armagetronad/default.nix b/pkgs/games/armagetronad/default.nix
index 57373d39b54..d4d2cbef164 100644
--- a/pkgs/games/armagetronad/default.nix
+++ b/pkgs/games/armagetronad/default.nix
@@ -2,7 +2,7 @@
 
 let
   versionMajor = "0.2.8";
-  versionMinor = "3.4";
+  versionMinor = "3.5";
   version = "${versionMajor}.${versionMinor}";
 in
 
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
   inherit version;
   src = fetchurl {
     url = "https://launchpad.net/armagetronad/${versionMajor}/${versionMajor}.${versionMinor}/+download/armagetronad-${version}.src.tar.bz2";
-    sha256 = "157pp84wf0q3bdb72rnbm3ck0czwx2ply6lyhj8z7kfdc7csdbr3";
+    sha256 = "1vyja7mzivs3pacxb7kznndsgqhq4p0f7x2zg55dckvzqwprdhqx";
   };
 
   NIX_LDFLAGS = "-lSDL_image";
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
   buildInputs = [ SDL SDL_image libxml2 libjpeg libpng libGLU libGL zlib ];
 
   meta = with stdenv.lib; {
-    homepage = http://armagetronad.org;
+    homepage = "http://armagetronad.org";
     description = "An multiplayer networked arcade racing game in 3D similar to Tron";
     license = licenses.gpl2;
     platforms = platforms.linux;
diff --git a/pkgs/games/cockatrice/default.nix b/pkgs/games/cockatrice/default.nix
index 83ae5816b28..9d07d09e27b 100644
--- a/pkgs/games/cockatrice/default.nix
+++ b/pkgs/games/cockatrice/default.nix
@@ -4,13 +4,13 @@
 
 mkDerivation rec {
   pname = "cockatrice";
-  version = "2019-08-31-Release-2.7.2";
+  version = "2020-03-20-Release-2.7.4";
 
   src = fetchFromGitHub {
     owner = "Cockatrice";
     repo = "Cockatrice";
     rev = "${version}";
-    sha256 = "17nfz4z6zfkiwcrq1rpm8bc7zh4gvcmb3fis9gdjjbji20dvcfxp";
+    sha256 = "1d229gswfcqxch19wb744d9h897qwzf2y9imwrbcwnlhpbr1j62k";
   };
 
   buildInputs = [
diff --git a/pkgs/games/crawl/default.nix b/pkgs/games/crawl/default.nix
index e4cccdd6221..8fe3b20419a 100644
--- a/pkgs/games/crawl/default.nix
+++ b/pkgs/games/crawl/default.nix
@@ -8,13 +8,13 @@
 
 stdenv.mkDerivation rec {
   name = "crawl-${version}${lib.optionalString tileMode "-tiles"}";
-  version = "0.24.0";
+  version = "0.24.1";
 
   src = fetchFromGitHub {
     owner = "crawl";
     repo = "crawl";
     rev = version;
-    sha256 = "1cdjd33z04gj70manavihc3lj9ckpmd75n09vvyw01z41s33fzs0";
+    sha256 = "1fiizkigmbrw0nb1l1m3syl2mw4a4r36l1y0n4z8z7slp79bsbv4";
   };
 
   # Patch hard-coded paths and remove force library builds
@@ -62,7 +62,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Open-source, single-player, role-playing roguelike game";
-    homepage = http://crawl.develz.org/;
+    homepage = "http://crawl.develz.org/";
     longDescription = ''
       Dungeon Crawl: Stone Soup, an open-source, single-player, role-playing
       roguelike game of exploration and treasure-hunting in dungeons filled
diff --git a/pkgs/games/crispy-doom/default.nix b/pkgs/games/crispy-doom/default.nix
index e6b669b8d67..c10e79418be 100644
--- a/pkgs/games/crispy-doom/default.nix
+++ b/pkgs/games/crispy-doom/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "crispy-doom";
-  version = "5.7";
+  version = "5.7.2";
 
   src = fetchFromGitHub {
     owner = "fabiangreffrath";
     repo = pname;
     rev = "${pname}-${version}";
-    sha256 = "1m9bk7hp3d4sdd3y3isvf26rxya7511mnwyv99l2f80adbsv3nq2";
+    sha256 = "002aqbgsksrgzqridwdlkrjincaxh0dkvwlrbb8d2f3kwk7lj4fq";
   };
 
   postPatch = ''
diff --git a/pkgs/games/endless-sky/default.nix b/pkgs/games/endless-sky/default.nix
index 5d1ed1c11a9..f0950cf4d34 100644
--- a/pkgs/games/endless-sky/default.nix
+++ b/pkgs/games/endless-sky/default.nix
@@ -3,7 +3,7 @@
 }:
 
 let
-  version = "0.9.10";
+  version = "0.9.11";
 
 in
 stdenv.mkDerivation {
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
     owner = "endless-sky";
     repo = "endless-sky";
     rev = "v${version}";
-    sha256 = "1wax9qhxakydg6bs92d1jy2fki1n9r0wkps1np02y0pvm1fl189i";
+    sha256 = "0f4svg448bg8qx49f8fr8l4yzks7an6673jwgva15p3zzfxy6w03";
   };
 
   enableParallelBuilding = true;
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
 
   meta = with stdenv.lib; {
     description = "A sandbox-style space exploration game similar to Elite, Escape Velocity, or Star Control";
-    homepage = https://endless-sky.github.io/;
+    homepage = "https://endless-sky.github.io/";
     license = with licenses; [
       gpl3Plus cc-by-sa-30 cc-by-sa-40 publicDomain
     ];
diff --git a/pkgs/games/hyperrogue/default.nix b/pkgs/games/hyperrogue/default.nix
index 09ecd4279e4..fdf8324cd48 100644
--- a/pkgs/games/hyperrogue/default.nix
+++ b/pkgs/games/hyperrogue/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "hyperrogue";
-  version = "11.2d";
+  version = "11.3f";
 
   src = fetchFromGitHub {
     owner = "zenorogue";
     repo = "hyperrogue";
-    rev = stdenv.lib.strings.stringAsChars (x: if x == "." then "" else x) "v${version}";
-    sha256 = "0aj4xy5xjdj32l5mk8796ldh9d7h8rx35kgc1vr7acb4fhpppb0f";
+    rev = "v${version}";
+    sha256 = "0i6dksxx33xga4pq41qsfllqras1hzk14ffqhnk11aj5lrfg98rm";
   };
 
   CPPFLAGS = "-I${SDL.dev}/include/SDL";
diff --git a/pkgs/games/katago/default.nix b/pkgs/games/katago/default.nix
new file mode 100644
index 00000000000..cbbdb538513
--- /dev/null
+++ b/pkgs/games/katago/default.nix
@@ -0,0 +1,97 @@
+{ stdenv
+, gcc8Stdenv
+, lib
+, libzip
+, boost
+, cmake
+, makeWrapper
+, fetchFromGitHub
+, cudnn ? null
+, cudatoolkit ? null
+, libGL_driver ? null
+, opencl-headers ? null
+, ocl-icd ? null
+, gperftools ? null
+, cudaSupport ? false
+, useTcmalloc ? true}:
+
+assert cudaSupport -> (
+  libGL_driver != null && 
+  cudatoolkit != null &&
+  cudnn != null);
+
+assert !cudaSupport -> (
+  opencl-headers != null &&
+  ocl-icd != null);
+
+assert useTcmalloc -> (
+  gperftools != null);
+
+let
+  env = if cudaSupport 
+    then gcc8Stdenv
+    else stdenv;
+
+in env.mkDerivation rec {
+  pname = "katago";
+  version = "1.3.5";
+
+  src = fetchFromGitHub {
+    owner = "lightvector";
+    repo = "katago";
+    rev = "v${version}";
+    sha256 = "1625s3fh0xc2ldgyl6sjdjmpliyys7rzzkcys6h9x6k828g8n0lq";
+  };
+
+  nativeBuildInputs = [
+    cmake
+    makeWrapper
+  ];
+
+  buildInputs = [
+    libzip
+    boost
+  ] ++ lib.optionals cudaSupport [
+    cudnn
+    libGL_driver
+  ] ++ lib.optionals (!cudaSupport) [
+    opencl-headers
+    ocl-icd
+  ] ++ lib.optionals useTcmalloc [
+    gperftools
+  ];
+
+  cmakeFlags = [
+    "-DNO_GIT_REVISION=ON"
+  ] ++ lib.optionals cudaSupport [
+    "-DUSE_BACKEND=CUDA"
+  ] ++ lib.optionals (!cudaSupport) [
+    "-DUSE_BACKEND=OPENCL"
+  ] ++ lib.optionals useTcmalloc [
+    "-DUSE_TCMALLOC=ON"
+  ];
+
+  preConfigure = ''
+    cd cpp/
+  '' + lib.optionalString cudaSupport ''
+    export CUDA_PATH="${cudatoolkit}"
+    export EXTRA_LDFLAGS="-L/run/opengl-driver/lib"
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin; cp katago $out/bin;
+  '' + lib.optionalString cudaSupport ''
+    wrapProgram $out/bin/katago \
+      --prefix LD_LIBRARY_PATH : "/run/opengl-driver/lib"
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Go engine modeled after AlphaGo Zero";
+    homepage    = "https://github.com/lightvector/katago";
+    license     = licenses.mit;
+    maintainers = [ maintainers.omnipotententity ];
+    platforms   = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/games/keeperrl/default.nix b/pkgs/games/keeperrl/default.nix
new file mode 100644
index 00000000000..68426a4aedf
--- /dev/null
+++ b/pkgs/games/keeperrl/default.nix
@@ -0,0 +1,75 @@
+{ stdenv, fetchFromGitHub, requireFile
+, openal, curl, libogg, libvorbis
+, SDL2, SDL2_image, zlib
+, unfree_assets ? false }:
+
+stdenv.mkDerivation rec {
+  pname = "keeperrl";
+  version = "alpha28";
+
+  free-src = fetchFromGitHub {
+    owner = "miki151";
+    repo = "keeperrl";
+    rev = version;
+    sha256 = "0isj8ijn5a89m2r5cxk4lcsq0cydx7c0h87vgr8v5cndm3rd27cy";
+  };
+
+  assets = if unfree_assets then requireFile rec {
+    name = "keeperrl_data_${version}.tar.gz";
+    message = ''
+      This nix expression requires that the KeeperRL art assets are already
+      part of the store. These can be obtained from a purchased copy of the game
+      and found in the "data" directory. Make a tar archive of this directory
+      with
+
+      "tar czf ${name} data"
+
+      Then add this archive to the nix store with
+
+      "nix-prefetch-url file://\$PWD/${name}".
+    '';
+    sha256 = "0115pxdzdyma2vicxgr0j21pp82gxdyrlj090s8ihp0b50f0nk53";
+  } else null;
+
+  sourceRoot = "source";
+
+  srcs = [ free-src ] ++ stdenv.lib.optional unfree_assets assets;
+
+  postUnpack = stdenv.lib.optionalString unfree_assets ''
+    mv data $sourceRoot
+  '';
+
+  buildInputs = [
+    openal curl libogg libvorbis SDL2 SDL2_image zlib
+  ];
+
+  NIX_CFLAGS_COMPILE = [
+    "-I${SDL2.dev}/include/SDL2"
+  ];
+
+  enableParallelBuilding = true;
+
+  makeFlags = [ "OPT=true"
+                "RELEASE=true"
+                "DATA_DIR=$(out)/share"
+                "ENABLE_LOCAL_USER_DIR=true"
+              ];
+
+  installPhase = ''
+    install -Dm755 keeper $out/bin/keeper
+    install -Dm755 appconfig.txt $out/share/appconfig.txt
+
+    cp -r data_free $out/share
+    cp -r data_contrib $out/share
+    ${stdenv.lib.optionalString unfree_assets "cp -r data $out/share"}
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A dungeon management rogue-like";
+    homepage = "https://keeperrl.com/";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ chattered ];
+    # TODO: Add OS X
+    platforms = with platforms; [ "i686-linux" "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/games/mindustry/default.nix b/pkgs/games/mindustry/default.nix
index 3d4f52f2c70..c0c8663868d 100644
--- a/pkgs/games/mindustry/default.nix
+++ b/pkgs/games/mindustry/default.nix
@@ -21,14 +21,14 @@ let
   # Note: when raising the version, ensure that all SNAPSHOT versions in
   # build.gradle are replaced by a fixed version
   # (the current one at the time of release) (see postPatch).
-  version = "103";
+  version = "104.6";
   buildVersion = makeBuildVersion version;
 
   src = fetchFromGitHub {
     owner = "Anuken";
     repo = "Mindustry";
     rev = "v${version}";
-    sha256 = "0s9pzmnq2v3glbmb6kqifar62wi44z4sg14dnayyj0fjkx6sh05s";
+    sha256 = "1crdfiymaz57gnma6bmdcsnbl635nhjdndrjv467c4xfq9vvap2i";
   };
 
   desktopItem = makeDesktopItem {
@@ -70,7 +70,7 @@ let
     '';
     outputHashAlgo = "sha256";
     outputHashMode = "recursive";
-    outputHash = "16k058fw9yk89adx8j1708ynfri5yizmmvh49prls9slw4hipffb";
+    outputHash = "08yrczz1qn78qy3x67gs7d0xvihbfbb8ggiczq2nj812745zcizw";
   };
 
   # Separate commands for building and installing the server and the client
diff --git a/pkgs/games/minecraft-server/default.nix b/pkgs/games/minecraft-server/default.nix
index 4751660af3a..956fbdf3aae 100644
--- a/pkgs/games/minecraft-server/default.nix
+++ b/pkgs/games/minecraft-server/default.nix
@@ -1,10 +1,11 @@
-{ stdenv, fetchurl, jre }:
+{ stdenv, fetchurl, jre_headless }:
 stdenv.mkDerivation {
   pname = "minecraft-server";
   version = "1.15.2";
 
   src = fetchurl {
-    url    = "https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar";
+    url =
+      "https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar";
     sha256 = "12kynrpxgcdg8x12wcvwkxka0fxgm5siqg8qq0nnmv0443f8dkw0";
   };
 
@@ -16,7 +17,7 @@ stdenv.mkDerivation {
 
     cat > $out/bin/minecraft-server << EOF
     #!/bin/sh
-    exec ${jre}/bin/java \$@ -jar $out/lib/minecraft/server.jar nogui
+    exec ${jre_headless}/bin/java \$@ -jar $out/lib/minecraft/server.jar nogui
     EOF
 
     chmod +x $out/bin/minecraft-server
@@ -24,11 +25,11 @@ stdenv.mkDerivation {
 
   phases = "installPhase";
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Minecraft Server";
-    homepage    = "https://minecraft.net";
-    license     = stdenv.lib.licenses.unfreeRedistributable;
-    platforms   = stdenv.lib.platforms.unix;
-    maintainers = with stdenv.lib.maintainers; [ thoughtpolice tomberek costrouc];
+    homepage = "https://minecraft.net";
+    license = licenses.unfreeRedistributable;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ thoughtpolice tomberek costrouc ];
   };
 }
diff --git a/pkgs/games/minecraft/default.nix b/pkgs/games/minecraft/default.nix
index 157fb4b93b9..b29d672d0e7 100644
--- a/pkgs/games/minecraft/default.nix
+++ b/pkgs/games/minecraft/default.nix
@@ -86,11 +86,11 @@ in
  stdenv.mkDerivation rec {
   pname = "minecraft-launcher";
 
-  version = "2.1.11314";
+  version = "2.1.13509";
 
   src = fetchurl {
     url = "https://launcher.mojang.com/download/linux/x86_64/minecraft-launcher_${version}.tar.gz";
-    sha256 = "1wd3zh91zamlpgnqlk7sq3xja2g5qz34amy4v8yhdxkhj79plwhg";
+    sha256 = "1f7b4gr2cnnf6wgxdz38215v31664q2pw00yibb3cjp8a9irvs47";
   };
 
   icon = fetchurl {
diff --git a/pkgs/games/odamex/default.nix b/pkgs/games/odamex/default.nix
index 2afb259ea43..af9bccadeb3 100644
--- a/pkgs/games/odamex/default.nix
+++ b/pkgs/games/odamex/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "odamex";
-  version = "0.8.1";
+  version = "0.8.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${pname}-src-${version}.tar.bz2";
-    sha256 = "1dz0lqdx3vb62mylqddcdq3vxsl2mvv0w2xskvwgpg0p04fcic2c";
+    sha256 = "0d4v1l7kghkz1xz92jxlx50x3iy94z7ix1i3209m5j5545qzxrqq";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
diff --git a/pkgs/games/openttd/default.nix b/pkgs/games/openttd/default.nix
index 704ef3c327e..b0f70775bfd 100644
--- a/pkgs/games/openttd/default.nix
+++ b/pkgs/games/openttd/default.nix
@@ -6,17 +6,17 @@
 
 let
   opengfx = fetchzip {
-    url = "https://binaries.openttd.org/extra/opengfx/0.5.5/opengfx-0.5.5-all.zip";
-    sha256 = "065l0g5nawcd6fkfbsfgviwgq9610y7gxzkpmd19i423d0lrq6d8";
+    url = "https://cdn.openttd.org/opengfx-releases/0.6.0/opengfx-0.6.0-all.zip";
+    sha256 = "1zg871j6kv7r0aqwca68d9kdf3smclgzan8hj76vj4fyfkykh173";
   };
 
   opensfx = fetchzip {
-    url = "https://binaries.openttd.org/extra/opensfx/0.2.3/opensfx-0.2.3-all.zip";
+    url = "https://cdn.openttd.org/opensfx-releases/0.2.3/opensfx-0.2.3-all.zip";
     sha256 = "1bb167kszdd6dqbcdjrxxwab6b7y7jilhzi3qijdhprpm5gf1lp3";
   };
 
   openmsx = fetchzip {
-    url = "https://binaries.openttd.org/extra/openmsx/0.3.1/openmsx-0.3.1-all.zip";
+    url = "https://cdn.openttd.org/openmsx-releases/0.3.1/openmsx-0.3.1-all.zip";
     sha256 = "0qnmfzz0v8vxrrvxnm7szphrlrlvhkwn3y92b4iy0b4b6yam0yd4";
   };
 
@@ -29,11 +29,11 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "openttd";
-  version = "1.9.3";
+  version = "1.10.0";
 
   src = fetchurl {
-    url = "https://proxy.binaries.openttd.org/openttd-releases/${version}/${pname}-${version}-source.tar.xz";
-    sha256 = "0ijq72kgx997ggw40i5f4a3nf7y2g72z37l47i18yjvgbdzy320r";
+    url = "https://cdn.openttd.org/openttd-releases/${version}/${pname}-${version}-source.tar.xz";
+    sha256 = "0lz2y2rjc23k0d97y65cqhy2splw9cmrbvhgz0iqps8xkan1m8hv";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper ];
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
     ''}
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = ''Open source clone of the Microprose game "Transport Tycoon Deluxe"'';
     longDescription = ''
       OpenTTD is a transportation economics simulator. In single player mode,
@@ -86,9 +86,9 @@ stdenv.mkDerivation rec {
         - play cooperatively controlling the same business
         - observe as spectators
     '';
-    homepage = https://www.openttd.org/;
-    license = stdenv.lib.licenses.gpl2;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ jcumming the-kenny fpletz ];
+    homepage = "https://www.openttd.org/";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ jcumming the-kenny fpletz ];
   };
 }
diff --git a/pkgs/games/papermc/default.nix b/pkgs/games/papermc/default.nix
new file mode 100644
index 00000000000..9695a350058
--- /dev/null
+++ b/pkgs/games/papermc/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchurl, jre }:
+let
+  mcVersion = "1.15.2";
+  buildNum = "161";
+  jar = fetchurl {
+    url = "https://papermc.io/api/v1/paper/${mcVersion}/${buildNum}/download";
+    sha256 = "1jngj5djs1fjdj25wg9iszw0dsp56f386j8ydms7x4ky8s8kxyms";
+  };
+in stdenv.mkDerivation {
+  pname = "papermc";
+  version = "${mcVersion}r${buildNum}";
+
+  preferLocalBuild = true;
+
+  dontUnpack = true;
+  installPhase = ''
+    mkdir -p $out/bin
+    cp ${jar} $out/papermc.jar
+    cat > $out/bin/minecraft-server << EOF
+    #!/bin/sh
+    exec ${jre}/bin/java \$@ -jar $out/papermc.jar nogui
+    EOF
+    chmod +x $out/bin/minecraft-server
+  '';
+
+  phases = "installPhase";
+
+  meta = {
+    description = "High-performance Minecraft Server";
+    homepage    = "https://papermc.io/";
+    license     = stdenv.lib.licenses.gpl3;
+    platforms   = stdenv.lib.platforms.unix;
+    maintainers = with stdenv.lib.maintainers; [ aaronjanse ];
+  };
+}
diff --git a/pkgs/games/performous/default.nix b/pkgs/games/performous/default.nix
index 28487a7f8e8..96b07e9787e 100644
--- a/pkgs/games/performous/default.nix
+++ b/pkgs/games/performous/default.nix
@@ -21,6 +21,8 @@ stdenv.mkDerivation rec {
     sha256 = "08j0qhr65l7qnd5vxl4l07523qpvdwi31h4vzl3lfiinx1zcgr4x";
   };
 
+  patches = [ ./performous-cmake.patch ];
+
   nativeBuildInputs = [ cmake pkgconfig gettext ];
 
   buildInputs = [
diff --git a/pkgs/games/performous/performous-cmake.patch b/pkgs/games/performous/performous-cmake.patch
new file mode 100644
index 00000000000..59d2cc9a927
--- /dev/null
+++ b/pkgs/games/performous/performous-cmake.patch
@@ -0,0 +1,86 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-cmake_minimum_required(VERSION 2.8)
++cmake_minimum_required(VERSION 3.6)
+ project(Performous CXX C)
+ 
+ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
+--- a/cmake/Modules/FindPango.cmake
++++ b/cmake/Modules/FindPango.cmake
+@@ -2,31 +2,10 @@
+ # Once done, this will define
+ #
+ #  Pango_FOUND - system has Pango
+-#  Pango_INCLUDE_DIRS - the Pango include directories
+ #  Pango_LIBRARIES - link these to use Pango
+ 
+ include(LibFindMacros)
+ 
+-# Dependencies
+-libfind_package(Pango Freetype)
+-libfind_package(Pango Glib)
+-libfind_package(Pango GObject)
+-
+-# Use pkg-config to get hints about paths
+-libfind_pkg_check_modules(Pango_PKGCONF pango)
+-
+-# Include dir
+-find_path(Pango_INCLUDE_DIR
+-  NAMES pango/pango.h
+-  HINTS ${Pango_PKGCONF_INCLUDE_DIRS}
+-  PATH_SUFFIXES pango-1.0
+-)
+-
+-# Finally the library itself
+-find_library(Pango_LIBRARY
+-  NAMES pango-1.0
+-  HINTS ${Pango_PKGCONF_LIBRARY_DIRS}
+-)
+-
++libfind_pkg_check_modules(Pango_PKGCONF IMPORTED_TARGET pango)
++set(Pango_LIBRARY PkgConfig::Pango_PKGCONF)
+ libfind_process(Pango)
+-
+--- a/cmake/Modules/FindPangoCairo.cmake
++++ b/cmake/Modules/FindPangoCairo.cmake
+@@ -1,35 +1,11 @@
+ # - Try to find PangoCairo
+ # Once done, this will define
+ #
+-#  PangoCairo_FOUND - system has Pango
+-#  PangoCairo_INCLUDE_DIRS - the Pango include directories
+-#  PangoCairo_LIBRARIES - link these to use Pango
++#  PangoCairo_FOUND - system has PangoCairo
++#  PangoCairo_LIBRARIES - link these to use PangoCairo
+ 
+ include(LibFindMacros)
+ 
+-# Dependencies
+-libfind_package(PangoCairo Pango)
+-libfind_package(PangoCairo Cairo)
+-
+-# Use pkg-config to get hints about paths
+-libfind_pkg_check_modules(PangoCairo_PKGCONF pangocairo)
+-
+-# Include dir
+-find_path(PangoCairo_INCLUDE_DIR
+-  NAMES pango/pangocairo.h
+-  HINTS ${PangoCairo_PKGCONF_INCLUDE_DIRS}
+-  PATH_SUFFIXES pango-1.0
+-)
+-
+-# Finally the library itself
+-find_library(PangoCairo_LIBRARY
+-  NAMES pangocairo-1.0
+-  HINTS ${PangoCairo_PKGCONF_LIBRARY_DIRS}
+-)
+-
+-# Set the include dir variables and the libraries and let libfind_process do the rest.
+-# NOTE: Singular variables for this library, plural for libraries this this lib depends on.
+-set(PangoCairo_PROCESS_INCLUDES PangoCairo_INCLUDE_DIR Pango_INCLUDE_DIR Cairo_INCLUDE_DIR)
+-set(PangoCairo_PROCESS_LIBS PangoCairo_LIBRARY Pango_LIBRARY Cairo_LIBRARY)
++libfind_pkg_check_modules(PangoCairo_PKGCONF IMPORTED_TARGET pangocairo)
++set(PangoCairo_LIBRARY PkgConfig::PangoCairo_PKGCONF)
+ libfind_process(PangoCairo)
+-
diff --git a/pkgs/games/pingus/default.nix b/pkgs/games/pingus/default.nix
index 628493a34b1..e96e1a6a6e0 100644
--- a/pkgs/games/pingus/default.nix
+++ b/pkgs/games/pingus/default.nix
@@ -1,34 +1,19 @@
-{stdenv, fetchurl, fetchpatch, scons, SDL, SDL_image, boost, libpng, SDL_mixer
-, pkgconfig, libGLU, libGL}:
-let
-  s = # Generated upstream information
-  {
-    baseName="pingus";
-    version="0.7.6";
-    name="pingus-0.7.6";
-    hash="0q34d2k6anzqvb0mf67x85q92lfx9jr71ry13dlp47jx0x9i573m";
-    url="http://pingus.googlecode.com/files/pingus-0.7.6.tar.bz2";
-    sha256="0q34d2k6anzqvb0mf67x85q92lfx9jr71ry13dlp47jx0x9i573m";
+{stdenv, fetchgit, cmake, SDL2, SDL2_image, boost, libpng, SDL2_mixer
+, pkgconfig, libGLU, libGL, git, jsoncpp }:
+stdenv.mkDerivation rec {
+  pname = "pingus";
+  version = "unstable-0.7.6.0.20191104";
+
+  nativeBuildInputs = [ pkgconfig git ];
+  buildInputs = [ cmake SDL2 SDL2_image boost libpng SDL2_mixer libGLU libGL jsoncpp ];
+  src = fetchgit {
+    url = "https://gitlab.com/pingus/pingus/";
+    rev = "709546d9b9c4d6d5f45fc9112b45ac10c7f9417d";
+    sha256 = "sha256:11mmzk0766riaw5qyd1r5i7s7vczbbzfccm92bvgrm99iy1sj022";
+    fetchSubmodules = true;
   };
-in
-stdenv.mkDerivation {
-  inherit (s) name version;
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [scons SDL SDL_image boost libpng SDL_mixer libGLU libGL];
-  src = fetchurl {
-    inherit (s) url sha256;
-  };
-  patches = [
-    # fix build with gcc7
-    (fetchpatch {
-      url = https://github.com/Pingus/pingus/commit/df6e2f445d3e2925a94d22faeb17be9444513e92.patch;
-      sha256 = "0nqyhznnnvpgfa6rfv8rapjfpw99b67n97jfqp9r3hpib1b3ja6p";
-    })
-  ];
-  makeFlags = [ "PREFIX=${placeholder "out"}" ];
-  dontUseSconsInstall = true;
+
   meta = {
-    inherit (s) version;
     description = ''A puzzle game with mechanics similar to Lemmings'';
     platforms = stdenv.lib.platforms.linux;
     maintainers = [stdenv.lib.maintainers.raskin];
diff --git a/pkgs/games/pingus/default.upstream b/pkgs/games/pingus/default.upstream
deleted file mode 100644
index 6b4eb31aa5f..00000000000
--- a/pkgs/games/pingus/default.upstream
+++ /dev/null
@@ -1 +0,0 @@
-url http://pingus.seul.org/download.html
diff --git a/pkgs/games/robotfindskitten/default.nix b/pkgs/games/robotfindskitten/default.nix
index fa1eb338a89..73beba2e34f 100644
--- a/pkgs/games/robotfindskitten/default.nix
+++ b/pkgs/games/robotfindskitten/default.nix
@@ -4,11 +4,11 @@ with stdenv.lib;
 stdenv.mkDerivation rec {
 
   pname = "robotfindskitten";
-  version = "2.7182818.701";
+  version = "2.8284271.702";
 
   src = fetchurl {
-    url = "mirror://sourceforge/project/rfk/robotfindskitten-POSIX/mayan_apocalypse_edition/${pname}-${version}.tar.gz";
-    sha256 = "06fp6b4li50mzw83j3pkzqspm6dpgxgxw03b60xkxlkgg5qa6jbp";
+    url = "mirror://sourceforge/project/rfk/robotfindskitten-POSIX/ship_it_anyway/${pname}-${version}.tar.gz";
+    sha256 = "1bwrkxm83r9ajpkd6x03nqvmdfpf5vz6yfy0c97pq3v3ykj74082";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Yet another zen simulation; A simple find-the-kitten game";
-    homepage = http://robotfindskitten.org/;
+    homepage = "http://robotfindskitten.org/";
     license = licenses.gpl2;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.unix;
diff --git a/pkgs/games/scummvm/default.nix b/pkgs/games/scummvm/default.nix
index 80fa840cc69..e6efbc6203c 100644
--- a/pkgs/games/scummvm/default.nix
+++ b/pkgs/games/scummvm/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "scummvm";
-  version = "2.1.1";
+  version = "2.1.2";
 
   src = fetchurl {
     url = "http://scummvm.org/frs/scummvm/${version}/${pname}-${version}.tar.xz";
-    sha256 = "1a6waf1ybp91nwva8g650cljlfb1di4l0jv13vg6yfgkas9pclsp";
+    sha256 = "1c4fz1nfg0nqnqx9iipayhzcsiqdmfxm2i95nw9dbhshhsdnrhf4";
   };
 
   nativeBuildInputs = [ nasm ];
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Program to run certain classic graphical point-and-click adventure games (such as Monkey Island)";
-    homepage = https://www.scummvm.org/;
+    homepage = "https://www.scummvm.org/";
     license = licenses.gpl2;
     maintainers = [ maintainers.peterhoeg ];
     platforms = platforms.linux;
diff --git a/pkgs/games/scummvm/games.nix b/pkgs/games/scummvm/games.nix
index a96250e7acb..3cfb87a090a 100644
--- a/pkgs/games/scummvm/games.nix
+++ b/pkgs/games/scummvm/games.nix
@@ -74,6 +74,21 @@ in {
     files = [ "sky.*" ];
   };
 
+  broken-sword-25 = generic rec {
+    plong = "Broken Sword 2.5";
+    pshort = "sword25";
+    pcode = "sword25";
+    description = "A fan game of the Broken Sword series";
+    version = "1.0";
+    src = fetchurl {
+      url = "mirror://sourceforge/scummvm/${pshort}-v${version}.zip";
+      sha256 = "0ivj1vflfpih5bs5a902mab88s4d77fwm3ya3fk7pammzc8gjqzz";
+    };
+    sourceRoot = ".";
+    docs = [ "README" "license-original.txt" ];
+    files = [ "data.b25c" ];
+  };
+
   drascula-the-vampire-strikes-back = generic rec {
     plong = "Drascula: The Vampire Strikes Back";
     pshort = "drascula";
@@ -95,6 +110,21 @@ in {
     files = [ "Packet.001" ];
   };
 
+  dreamweb = generic rec {
+    plong = "Dreamweb";
+    pshort = "dreamweb";
+    pcode = "dreamweb";
+    description = "2D point-and-click cyberpunk top-down adventure game";
+    version = "1.1";
+    src = fetchurl {
+      url = "mirror://sourceforge/scummvm/${pshort}-cd-uk-${version}.zip";
+      sha256 = "0hh1p3rd7s0ckvri14lc6wdry9vv0vn4h4744v2n4zg63j8i6vsa";
+    };
+    sourceRoot = ".";
+    docs = [ "license.txt" ];
+    files = [ "DREAMWEB.*" "SPEECH" "track01.flac" ];
+  };
+
   flight-of-the-amazon-queen = generic rec {
     plong = "Flight of the Amazon Queen";
     pshort = "fotaq";
diff --git a/pkgs/games/spring/default.nix b/pkgs/games/spring/default.nix
index e0dd5f53449..ae09cdf639b 100644
--- a/pkgs/games/spring/default.nix
+++ b/pkgs/games/spring/default.nix
@@ -7,13 +7,18 @@
 
 stdenv.mkDerivation rec {
   pname = "spring";
-  version = "104.0.1";
+  version = "104.0.1-${buildId}-g${shortRev}";
+  # usually the latest in https://github.com/spring/spring/commits/maintenance 
+  rev = "8ecf38a784ed3c4e3d67bc8d59839a77e0f0b83e";
+  shortRev = builtins.substring 0 7 rev;
+  buildId = "1477";
 
+  # taken from https://github.com/spring/spring/commits/maintenance
   src = fetchFromGitHub {
     owner = "spring";
     repo = "spring";
-    rev = "9ee29da876f6d3d23e169185619b58df9c036703";
-    sha256 = "0m94i85k8k5ls1ff9z8djslzhkgr7b7vsbpic2axxjvki6sn2xjv";
+    inherit rev;
+    sha256 = "0iai1wnd7msabgw2979cp2k54sgcfvidfmymhnck31jwbfa6y021";
     fetchSubmodules = true;
   };
 
@@ -28,7 +33,7 @@ stdenv.mkDerivation rec {
     patchShebangs .
     rm rts/build/cmake/FindGLEW.cmake
 
-    echo "104.0.1-1466-g9ee29da maintenance" > VERSION
+    echo "${version} maintenance" > VERSION
   '';
 
   cmakeFlags = ["-DCMAKE_BUILD_WITH_INSTALL_RPATH:BOOL=ON"
diff --git a/pkgs/games/steam/chrootenv.nix b/pkgs/games/steam/chrootenv.nix
index cb85426c23b..56e1a09f36e 100644
--- a/pkgs/games/steam/chrootenv.nix
+++ b/pkgs/games/steam/chrootenv.nix
@@ -105,6 +105,12 @@ in buildFHSUserEnv rec {
 
     # called by steam's setup.sh
     file
+
+    # Prison Architect
+    libGLU
+    libuuid
+    libbsd
+    alsaLib
   ] ++ (if (!nativeOnly) then [
     (steamPackages.steam-runtime-wrapped.override {
       inherit runtimeOnly;
@@ -152,8 +158,6 @@ in buildFHSUserEnv rec {
     xorg.libXt
     xorg.libXmu
     xorg.libxcb
-    libGLU
-    libuuid
     libogg
     libvorbis
     SDL
diff --git a/pkgs/games/steam/runtime-generated.nix b/pkgs/games/steam/runtime-generated.nix
index bb4decfda4d..36f16b6155b 100644
--- a/pkgs/games/steam/runtime-generated.nix
+++ b/pkgs/games/steam/runtime-generated.nix
@@ -274,18 +274,18 @@
       };
     }
     rec {
-      name = "libcurl3_7.22.0-3ubuntu4.17+steamrt1.1+srt5_amd64";
-      sha256 = "a3c56793a0751a819897d5cd40562e0bd04b0c1fe56e4f865f0f1653e7190bab";
-      url = "mirror://steamrt/pool/main/c/curl/libcurl3_7.22.0-3ubuntu4.17+steamrt1.1+srt5_amd64.deb";
+      name = "libcurl3_7.22.0-3ubuntu4.17+steamrt1.2+srt1_amd64";
+      sha256 = "b8ce9330efb568bff45d00b678f461c1b45184db97afb34c85a96320dbedcb45";
+      url = "mirror://steamrt/pool/main/c/curl/libcurl3_7.22.0-3ubuntu4.17+steamrt1.2+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libcurl3.deb";
       };
     }
     rec {
-      name = "libcurl3-gnutls_7.22.0-3ubuntu4.17+steamrt1.1+srt5_amd64";
-      sha256 = "0692b46e931815d81421198c35b9c0923d7685c3d2541ad8cc3251d18981305d";
-      url = "mirror://steamrt/pool/main/c/curl/libcurl3-gnutls_7.22.0-3ubuntu4.17+steamrt1.1+srt5_amd64.deb";
+      name = "libcurl3-gnutls_7.22.0-3ubuntu4.17+steamrt1.2+srt1_amd64";
+      sha256 = "d130968581123872aa448f1bd92b969c3df5c3c47ffb034c7635f723c7f9a9ff";
+      url = "mirror://steamrt/pool/main/c/curl/libcurl3-gnutls_7.22.0-3ubuntu4.17+steamrt1.2+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libcurl3-gnutls.deb";
@@ -328,6 +328,15 @@
       };
     }
     rec {
+      name = "libelf1_0.152-1ubuntu3.1+srt3_amd64";
+      sha256 = "16f5a035ab04bf0a90d2172820265e56e000fa3b4a5461bda293534f3e39a061";
+      url = "mirror://steamrt/pool/main/e/elfutils/libelf1_0.152-1ubuntu3.1+srt3_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libelf1.deb";
+      };
+    }
+    rec {
       name = "libexif12_0.6.20-2ubuntu0.1+srt6_amd64";
       sha256 = "adb05c68a77601a6c133d8bd2fcd0e6dccc7fd9e75b70b191e0fee26dd03c1ae";
       url = "mirror://steamrt/pool/main/libe/libexif/libexif12_0.6.20-2ubuntu0.1+srt6_amd64.deb";
@@ -499,9 +508,9 @@
       };
     }
     rec {
-      name = "libgnutls30_3.4.10-4ubuntu1.4+steamrt1.1+srt4_amd64";
-      sha256 = "3fb1f7644d1c83c1cf2271dd6e30dde50adf5ada859530431d205ba24cef8734";
-      url = "mirror://steamrt/pool/main/g/gnutls28/libgnutls30_3.4.10-4ubuntu1.4+steamrt1.1+srt4_amd64.deb";
+      name = "libgnutls30_3.4.10-4ubuntu1.4+steamrt1.2+srt1_amd64";
+      sha256 = "c6e07fb2f90549d741378a211babd4d1c802e93dde401839c2e89504410ed228";
+      url = "mirror://steamrt/pool/main/g/gnutls28/libgnutls30_3.4.10-4ubuntu1.4+steamrt1.2+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libgnutls30.deb";
@@ -688,6 +697,15 @@
       };
     }
     rec {
+      name = "libjson-glib-1.0-0_1.0.2-1~steamrt1.1+srt1_amd64";
+      sha256 = "636c77a5f10b1861d4ebe7722a0c832e1fdbcc995d248e36280966e387ffaa89";
+      url = "mirror://steamrt/pool/main/j/json-glib/libjson-glib-1.0-0_1.0.2-1~steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libjson-glib-1.0-0.deb";
+      };
+    }
+    rec {
       name = "libjson0_0.9-1ubuntu1.1+srt4_amd64";
       sha256 = "a72824685bfa0dc7fab313606d1fcba41565363c8f90d22c7e90d3f35a74859c";
       url = "mirror://steamrt/pool/main/j/json-c/libjson0_0.9-1ubuntu1.1+srt4_amd64.deb";
@@ -1048,48 +1066,48 @@
       };
     }
     rec {
-      name = "libsdl2_2.0.9.~reimport-0+steamrt1.1+srt2_amd64";
-      sha256 = "907391ea4512c3372f86afd8a9a409632d90b9e260de43f8082f90175e08c56c";
-      url = "mirror://steamrt/pool/main/libs/libsdl2/libsdl2_2.0.9.~reimport-0+steamrt1.1+srt2_amd64.deb";
+      name = "libsdl2-2.0-0_2.0.10-0+steamrt1.3+srt1_amd64";
+      sha256 = "a69cf30f4c0f7ee02d9c37bd2ec25bab76a8c1175674959738e945bae05c7ed6";
+      url = "mirror://steamrt/pool/main/libs/libsdl2/libsdl2-2.0-0_2.0.10-0+steamrt1.3+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
-        name = "libsdl2.deb";
+        name = "libsdl2-2.0-0.deb";
       };
     }
     rec {
-      name = "libsdl2-image_2.0.4.~reimport-0+steamrt1.1+srt2_amd64";
-      sha256 = "136a0c68b520f4eaec9ff81321785b09dc6843431b10ba6941faee82af3b215d";
-      url = "mirror://steamrt/pool/main/libs/libsdl2-image/libsdl2-image_2.0.4.~reimport-0+steamrt1.1+srt2_amd64.deb";
+      name = "libsdl2-image-2.0-0_2.0.5-0+steamrt1.1+srt1_amd64";
+      sha256 = "13a3c69b92a72490eb1dd7e6c09244047b22765882944dc4bb335cb356f423a1";
+      url = "mirror://steamrt/pool/main/libs/libsdl2-image/libsdl2-image-2.0-0_2.0.5-0+steamrt1.1+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
-        name = "libsdl2-image.deb";
+        name = "libsdl2-image-2.0-0.deb";
       };
     }
     rec {
-      name = "libsdl2-mixer_2.0.4.~reimport-0+steamrt1.1+srt2_amd64";
-      sha256 = "98f77bb9019649440a96e9c70bd160fa03aa0bd306fa51110b861882cb62df0d";
-      url = "mirror://steamrt/pool/main/libs/libsdl2-mixer/libsdl2-mixer_2.0.4.~reimport-0+steamrt1.1+srt2_amd64.deb";
+      name = "libsdl2-mixer-2.0-0_2.0.4.~reimport-0+steamrt1.2+srt1_amd64";
+      sha256 = "78860d794928a0f7a31cd4ee83f395151dedb74f0e2613c6833438aa0d3f1d54";
+      url = "mirror://steamrt/pool/main/libs/libsdl2-mixer/libsdl2-mixer-2.0-0_2.0.4.~reimport-0+steamrt1.2+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
-        name = "libsdl2-mixer.deb";
+        name = "libsdl2-mixer-2.0-0.deb";
       };
     }
     rec {
-      name = "libsdl2-net_2.0.1+srt3_amd64";
-      sha256 = "492a6e5f4efc454dd720be4028efd89a212e039d3f3f7b01c94c0144d8d8d621";
-      url = "mirror://steamrt/pool/main/libs/libsdl2-net/libsdl2-net_2.0.1+srt3_amd64.deb";
+      name = "libsdl2-net-2.0-0_2.0.1.~reimport-0+steamrt1.1+srt1_amd64";
+      sha256 = "cea2cc24af441eca4e23227bcc9eef80047befcf4f79c9c5dc796f157068da45";
+      url = "mirror://steamrt/pool/main/libs/libsdl2-net/libsdl2-net-2.0-0_2.0.1.~reimport-0+steamrt1.1+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
-        name = "libsdl2-net.deb";
+        name = "libsdl2-net-2.0-0.deb";
       };
     }
     rec {
-      name = "libsdl2-ttf_2.0.14+srt3_amd64";
-      sha256 = "f117047ffeaf77a93fc0932470e80ace2d07d7e672191c9dd50ca5f2a033f56c";
-      url = "mirror://steamrt/pool/main/libs/libsdl2-ttf/libsdl2-ttf_2.0.14+srt3_amd64.deb";
+      name = "libsdl2-ttf-2.0-0_2.0.15-0+steamrt1.1+srt2_amd64";
+      sha256 = "4444fb73f3bc2b7229dea2564baba233958158d82c73489724d4107bd31e3e6c";
+      url = "mirror://steamrt/pool/main/libs/libsdl2-ttf/libsdl2-ttf-2.0-0_2.0.15-0+steamrt1.1+srt2_amd64.deb";
       source = fetchurl {
         inherit url sha256;
-        name = "libsdl2-ttf.deb";
+        name = "libsdl2-ttf-2.0-0.deb";
       };
     }
     rec {
@@ -1174,6 +1192,33 @@
       };
     }
     rec {
+      name = "libsteam-runtime-tools-0-0_0.20200109.0-0+steamrt1.1+srt1_amd64";
+      sha256 = "680a2855b601ecccc81179df162722081ad0c7f4d1689e25bbce9d19de1a3eb6";
+      url = "mirror://steamrt/pool/main/s/steam-runtime-tools/libsteam-runtime-tools-0-0_0.20200109.0-0+steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libsteam-runtime-tools-0-0.deb";
+      };
+    }
+    rec {
+      name = "libsteam-runtime-tools-0-helpers_0.20200109.0-0+steamrt1.1+srt1_amd64";
+      sha256 = "b33f5c1217c7927057428b54faa4d0fcdddda1b5b18d708f755e96893ed6e108";
+      url = "mirror://steamrt/pool/main/s/steam-runtime-tools/libsteam-runtime-tools-0-helpers_0.20200109.0-0+steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libsteam-runtime-tools-0-helpers.deb";
+      };
+    }
+    rec {
+      name = "libsteam-runtime-tools-0-relocatable-libs_0.20200109.0-0+steamrt1.1+srt1_amd64";
+      sha256 = "4f2ddb4dd6f48636f95bb301541a023ba8235672e1e053be8da9961787958d18";
+      url = "mirror://steamrt/pool/main/s/steam-runtime-tools/libsteam-runtime-tools-0-relocatable-libs_0.20200109.0-0+steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libsteam-runtime-tools-0-relocatable-libs.deb";
+      };
+    }
+    rec {
       name = "libswscale2_0.8.13-0ubuntu0.12.04.1+steamrt1+srt3_amd64";
       sha256 = "dda1950d7e1f50547ce57246bc7e19c3c1ab1166ee81ca637ff86d373e20253c";
       url = "mirror://steamrt/pool/main/liba/libav/libswscale2_0.8.13-0ubuntu0.12.04.1+steamrt1+srt3_amd64.deb";
@@ -1282,33 +1327,78 @@
       };
     }
     rec {
-      name = "libva-glx1_1.7.0-1+steamos1+srt2_amd64";
-      sha256 = "c25662535e0bcc1fc349c1f61710f31dcc1be846ea2ba4282225756809b13e15";
-      url = "mirror://steamrt/pool/main/libv/libva/libva-glx1_1.7.0-1+steamos1+srt2_amd64.deb";
+      name = "libva-drm1_1.7.0-1+steamrt1.1+srt1_amd64";
+      sha256 = "ee98522c6c69c1f6134a37d63a74f6c4f4ef5be2944bd504e8886333115f1f06";
+      url = "mirror://steamrt/pool/main/libv/libva1/libva-drm1_1.7.0-1+steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libva-drm1.deb";
+      };
+    }
+    rec {
+      name = "libva-drm2_2.1.0-3~steamrt1.2+srt1_amd64";
+      sha256 = "5add6487f678a13cc71d039b1ebd6991b1395dd8ce78124ac3675ea80f10e1b8";
+      url = "mirror://steamrt/pool/main/libv/libva/libva-drm2_2.1.0-3~steamrt1.2+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libva-drm2.deb";
+      };
+    }
+    rec {
+      name = "libva-glx1_1.7.0-1+steamrt1.1+srt1_amd64";
+      sha256 = "938db19eecb0a2fbc5058e90962cdbc05f3ef2b1601341b7b6d7be429da97259";
+      url = "mirror://steamrt/pool/main/libv/libva1/libva-glx1_1.7.0-1+steamrt1.1+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libva-glx1.deb";
       };
     }
     rec {
-      name = "libva-x11-1_1.7.0-1+steamos1+srt2_amd64";
-      sha256 = "ddfd440a2bfe3174b33ac5b459ce4261ddbcfa36d443ad237d41e5e41dd17bae";
-      url = "mirror://steamrt/pool/main/libv/libva/libva-x11-1_1.7.0-1+steamos1+srt2_amd64.deb";
+      name = "libva-glx2_2.1.0-3~steamrt1.2+srt1_amd64";
+      sha256 = "7a14fde5181a5c313e97bcb25d6233c7343ebc009c3c5065bb65e8d3ec74f643";
+      url = "mirror://steamrt/pool/main/libv/libva/libva-glx2_2.1.0-3~steamrt1.2+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libva-glx2.deb";
+      };
+    }
+    rec {
+      name = "libva-x11-1_1.7.0-1+steamrt1.1+srt1_amd64";
+      sha256 = "6f0894f499b44346af1d35a3d1300b9cc2d9b1674fca879345daf392620322ae";
+      url = "mirror://steamrt/pool/main/libv/libva1/libva-x11-1_1.7.0-1+steamrt1.1+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libva-x11-1.deb";
       };
     }
     rec {
-      name = "libva1_1.7.0-1+steamos1+srt2_amd64";
-      sha256 = "a06f1a3af4679bb44722458d956177468e78d662cf97dc1ec6c8ee38dc7408a2";
-      url = "mirror://steamrt/pool/main/libv/libva/libva1_1.7.0-1+steamos1+srt2_amd64.deb";
+      name = "libva-x11-2_2.1.0-3~steamrt1.2+srt1_amd64";
+      sha256 = "47f70088a25e92b036374d8ff132e11b38546f26ee2e6cba141d42f766d8c748";
+      url = "mirror://steamrt/pool/main/libv/libva/libva-x11-2_2.1.0-3~steamrt1.2+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libva-x11-2.deb";
+      };
+    }
+    rec {
+      name = "libva1_1.7.0-1+steamrt1.1+srt1_amd64";
+      sha256 = "f0c27f86e0ec4e210e05b2217d2d51fe52994add7df2fe5ff41e7f8aeee6f426";
+      url = "mirror://steamrt/pool/main/libv/libva1/libva1_1.7.0-1+steamrt1.1+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libva1.deb";
       };
     }
     rec {
+      name = "libva2_2.1.0-3~steamrt1.2+srt1_amd64";
+      sha256 = "08c60888e39e4656fa4c41dbbb2baa0d99f91a8fabbf5336261b255c0ea4f185";
+      url = "mirror://steamrt/pool/main/libv/libva/libva2_2.1.0-3~steamrt1.2+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libva2.deb";
+      };
+    }
+    rec {
       name = "libvdpau1_0.4.1-3ubuntu1.2+srt3_amd64";
       sha256 = "c40c31da412fec43c201e88458782dad6884e1eab9593815bdf0d9132eb76baf";
       url = "mirror://steamrt/pool/main/libv/libvdpau/libvdpau1_0.4.1-3ubuntu1.2+srt3_amd64.deb";
@@ -1354,15 +1444,24 @@
       };
     }
     rec {
-      name = "libvulkan1_1.1.73+dfsg-1+steamosc2+srt2_amd64";
-      sha256 = "a3820a7cdceef1cf070b762d81437ec87a4d3a2b41566dadaa1cdcb1f08dad3e";
-      url = "mirror://steamrt/pool/main/v/vulkan/libvulkan1_1.1.73+dfsg-1+steamosc2+srt2_amd64.deb";
+      name = "libvulkan1_1.2.135~srt-0+steamrt1.1+srt1_amd64";
+      sha256 = "99b0d38e6a2240dbea57c3ebee18de7013ee5d346c82bc82243c18e66bc50ae4";
+      url = "mirror://steamrt/pool/main/v/vulkan-loader/libvulkan1_1.2.135~srt-0+steamrt1.1+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libvulkan1.deb";
       };
     }
     rec {
+      name = "libwaffle-1-0_1.6.0-2~steamrt1.3+srt1_amd64";
+      sha256 = "40ebf5f91707d0f183841ab8673f7bdd6d77540f090fc97cb69be54381c382be";
+      url = "mirror://steamrt/pool/main/w/waffle/libwaffle-1-0_1.6.0-2~steamrt1.3+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libwaffle-1-0.deb";
+      };
+    }
+    rec {
       name = "libwind0-heimdal_1.6~git20120311.dfsg.1-2+srt6_amd64";
       sha256 = "e72aabe5b6c20bb667e1746918a354cb6151e07a9892ea0735406966dff019af";
       url = "mirror://steamrt/pool/main/h/heimdal/libwind0-heimdal_1.6~git20120311.dfsg.1-2+srt6_amd64.deb";
@@ -1813,24 +1912,123 @@
       };
     }
     rec {
-      name = "steamrt-legacy_1.20190624.0+srt1_amd64";
-      sha256 = "0a0e96fc8dbe806b2d0b4ac26f217ca5ff49188f295a9a4b0d39cbe0a4da52b0";
-      url = "mirror://steamrt/pool/main/s/steamrt/steamrt-legacy_1.20190624.0+srt1_amd64.deb";
+      name = "steam-runtime-tools-bin_0.20200109.0-0+steamrt1.1+srt1_amd64";
+      sha256 = "b5fcefb31c79a4ac085ef1050cdb2770507fbcf04eae713f9f16fdc3a483a85d";
+      url = "mirror://steamrt/pool/main/s/steam-runtime-tools/steam-runtime-tools-bin_0.20200109.0-0+steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "steam-runtime-tools-bin.deb";
+      };
+    }
+    rec {
+      name = "steamrt-legacy_1.20200128.0+srt1_amd64";
+      sha256 = "16a8adf316032424fa5cd53f498c53472c45a66b572e8c60adb2ff3ae7556eed";
+      url = "mirror://steamrt/pool/main/s/steamrt/steamrt-legacy_1.20200128.0+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
         name = "steamrt-legacy.deb";
       };
     }
     rec {
-      name = "steamrt-libs_1.20190624.0+srt1_amd64";
-      sha256 = "ed7124e8d11d9dd435ec7b7516a0d0e2c766f677b2c5a1d0b257790c03f307a2";
-      url = "mirror://steamrt/pool/main/s/steamrt/steamrt-libs_1.20190624.0+srt1_amd64.deb";
+      name = "steamrt-libs_1.20200128.0+srt1_amd64";
+      sha256 = "18247c8534f8d67f63f4ece884b15276e0eecf540d0758ed6d5ae8b6a6ba510b";
+      url = "mirror://steamrt/pool/main/s/steamrt/steamrt-libs_1.20200128.0+srt1_amd64.deb";
       source = fetchurl {
         inherit url sha256;
         name = "steamrt-libs.deb";
       };
     }
     rec {
+      name = "vainfo_2.1.0+ds1-1~steamrt1.1+srt1_amd64";
+      sha256 = "20758135cdf3ada791e1c6b57cdf8db1505b3dd3f429f3f12a6e92d589f568d9";
+      url = "mirror://steamrt/pool/main/libv/libva-utils/vainfo_2.1.0+ds1-1~steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vainfo.deb";
+      };
+    }
+    rec {
+      name = "vainfo-1_1.7.0-1+steamrt1.1+srt1_amd64";
+      sha256 = "f6f80b18d853edcac5ee09a522d01e83f9d02d3ccc7e7fda09b567c37d9f516e";
+      url = "mirror://steamrt/pool/main/libv/libva1/vainfo-1_1.7.0-1+steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vainfo-1.deb";
+      };
+    }
+    rec {
+      name = "vainfo-1-multiarch_1.7.0-1+steamrt1.1+srt1_amd64";
+      sha256 = "6b4369f80a1d24c3c9fdd73f5c8f00ab67c136ad9ef60dfe70f4b662e5040306";
+      url = "mirror://steamrt/pool/main/libv/libva1/vainfo-1-multiarch_1.7.0-1+steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vainfo-1-multiarch.deb";
+      };
+    }
+    rec {
+      name = "vainfo-multiarch_2.1.0+ds1-1~steamrt1.1+srt1_amd64";
+      sha256 = "3ac30bc566b2c949da526d5d26a957cb9bcce1ea7d109ee4b79e2109ae1ee995";
+      url = "mirror://steamrt/pool/main/libv/libva-utils/vainfo-multiarch_2.1.0+ds1-1~steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vainfo-multiarch.deb";
+      };
+    }
+    rec {
+      name = "vulkan-tools_1.2.131.1+dfsg1-1+steamrt1.1+srt1_amd64";
+      sha256 = "b5c0c3fd9f5329f2aff54ce73f9281e3e61156556e1ee50c697b37f2144b1531";
+      url = "mirror://steamrt/pool/main/v/vulkan-tools/vulkan-tools_1.2.131.1+dfsg1-1+steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vulkan-tools.deb";
+      };
+    }
+    rec {
+      name = "vulkan-tools-multiarch_1.2.131.1+dfsg1-1+steamrt1.1+srt1_amd64";
+      sha256 = "33b03b9413ec308f5ee5b8699e9f9ad939b501b602eea185fdcaa69863deb70c";
+      url = "mirror://steamrt/pool/main/v/vulkan-tools/vulkan-tools-multiarch_1.2.131.1+dfsg1-1+steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vulkan-tools-multiarch.deb";
+      };
+    }
+    rec {
+      name = "vulkan-utils_1.2.131.1+dfsg1-1+steamrt1.1+srt1_all";
+      sha256 = "f10004e20ed5fc93edf035f8f34bb9f8307eb34974a3ed5aae9ba87f00a2c468";
+      url = "mirror://steamrt/pool/main/v/vulkan-tools/vulkan-utils_1.2.131.1+dfsg1-1+steamrt1.1+srt1_all.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vulkan-utils.deb";
+      };
+    }
+    rec {
+      name = "vulkan-utils-multiarch_1.2.131.1+dfsg1-1+steamrt1.1+srt1_amd64";
+      sha256 = "a1e9387bb5cb7effb23c5994dd2724614cfed7a447ec9c449ee4effcab58fd4c";
+      url = "mirror://steamrt/pool/main/v/vulkan-tools/vulkan-utils-multiarch_1.2.131.1+dfsg1-1+steamrt1.1+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vulkan-utils-multiarch.deb";
+      };
+    }
+    rec {
+      name = "waffle-utils_1.6.0-2~steamrt1.3+srt1_amd64";
+      sha256 = "b465d2c357b0376f355a99ac99830e78974747859ec4ca9084bdeff9891920d6";
+      url = "mirror://steamrt/pool/main/w/waffle/waffle-utils_1.6.0-2~steamrt1.3+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "waffle-utils.deb";
+      };
+    }
+    rec {
+      name = "waffle-utils-multiarch_1.6.0-2~steamrt1.3+srt1_amd64";
+      sha256 = "de563095affd9fd5a4ec2941b72481bbd6176bdc210dad587372bab3cec406c1";
+      url = "mirror://steamrt/pool/main/w/waffle/waffle-utils-multiarch_1.6.0-2~steamrt1.3+srt1_amd64.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "waffle-utils-multiarch.deb";
+      };
+    }
+    rec {
       name = "zenity_3.4.0-0ubuntu4+steamrt2+srt6_amd64";
       sha256 = "5eb59aa8d2211153c780aab2304e8694d7eb0204f284193ff2a037dc9e1274db";
       url = "mirror://steamrt/pool/main/z/zenity/zenity_3.4.0-0ubuntu4+steamrt2+srt6_amd64.deb";
@@ -2130,18 +2328,18 @@
       };
     }
     rec {
-      name = "libcurl3_7.22.0-3ubuntu4.17+steamrt1.1+srt5_i386";
-      sha256 = "f92d0bdda8d394104824fca2ac6d19cb9c95a863893ef604e45c43d0eeb16ac1";
-      url = "mirror://steamrt/pool/main/c/curl/libcurl3_7.22.0-3ubuntu4.17+steamrt1.1+srt5_i386.deb";
+      name = "libcurl3_7.22.0-3ubuntu4.17+steamrt1.2+srt1_i386";
+      sha256 = "6199cf8f81ddc6484bf59ac4941e17808cfa09b3c9141895b18a301bd0729547";
+      url = "mirror://steamrt/pool/main/c/curl/libcurl3_7.22.0-3ubuntu4.17+steamrt1.2+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libcurl3.deb";
       };
     }
     rec {
-      name = "libcurl3-gnutls_7.22.0-3ubuntu4.17+steamrt1.1+srt5_i386";
-      sha256 = "b210ce907bded1db660df24365861a10421d758cfd7fdb2fe64b058ecb92cdce";
-      url = "mirror://steamrt/pool/main/c/curl/libcurl3-gnutls_7.22.0-3ubuntu4.17+steamrt1.1+srt5_i386.deb";
+      name = "libcurl3-gnutls_7.22.0-3ubuntu4.17+steamrt1.2+srt1_i386";
+      sha256 = "2ff0f70b5d522f429c4d9607cf3f1f35fb742693276e874c5f6f50d04553c628";
+      url = "mirror://steamrt/pool/main/c/curl/libcurl3-gnutls_7.22.0-3ubuntu4.17+steamrt1.2+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libcurl3-gnutls.deb";
@@ -2184,6 +2382,15 @@
       };
     }
     rec {
+      name = "libelf1_0.152-1ubuntu3.1+srt3_i386";
+      sha256 = "85aab224f4808b664cb827cd46dc4d559a1568e467db56e7047d26493f90cbf1";
+      url = "mirror://steamrt/pool/main/e/elfutils/libelf1_0.152-1ubuntu3.1+srt3_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libelf1.deb";
+      };
+    }
+    rec {
       name = "libexif12_0.6.20-2ubuntu0.1+srt6_i386";
       sha256 = "b9a25a54b70c2294e96c447bf05775c89eb056ff8eb0b4840506a955fcf78d35";
       url = "mirror://steamrt/pool/main/libe/libexif/libexif12_0.6.20-2ubuntu0.1+srt6_i386.deb";
@@ -2355,9 +2562,9 @@
       };
     }
     rec {
-      name = "libgnutls30_3.4.10-4ubuntu1.4+steamrt1.1+srt4_i386";
-      sha256 = "a630adb25ecfa209aef8a1b14fac45293f044f652ee91249489dfe9bb0d5001d";
-      url = "mirror://steamrt/pool/main/g/gnutls28/libgnutls30_3.4.10-4ubuntu1.4+steamrt1.1+srt4_i386.deb";
+      name = "libgnutls30_3.4.10-4ubuntu1.4+steamrt1.2+srt1_i386";
+      sha256 = "b841c274bf8478136cdf8d2dfaa156d680dd0b2bdd20fb96f5645b4e9c09ef9a";
+      url = "mirror://steamrt/pool/main/g/gnutls28/libgnutls30_3.4.10-4ubuntu1.4+steamrt1.2+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libgnutls30.deb";
@@ -2544,6 +2751,15 @@
       };
     }
     rec {
+      name = "libjson-glib-1.0-0_1.0.2-1~steamrt1.1+srt1_i386";
+      sha256 = "e92b6a5be06128f88d885d2da927ce3a2bf274bf9f812ba102a0966fd17fd2ee";
+      url = "mirror://steamrt/pool/main/j/json-glib/libjson-glib-1.0-0_1.0.2-1~steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libjson-glib-1.0-0.deb";
+      };
+    }
+    rec {
       name = "libjson0_0.9-1ubuntu1.1+srt4_i386";
       sha256 = "ae3503b9871e27e98bfb37477c4b6e151dcf31fa7af757309d99e70ffe66e570";
       url = "mirror://steamrt/pool/main/j/json-c/libjson0_0.9-1ubuntu1.1+srt4_i386.deb";
@@ -2904,48 +3120,48 @@
       };
     }
     rec {
-      name = "libsdl2_2.0.9.~reimport-0+steamrt1.1+srt2_i386";
-      sha256 = "b33446315351af70d2cfd602d5ee9e2390e2805b10f199dff383917469a3b344";
-      url = "mirror://steamrt/pool/main/libs/libsdl2/libsdl2_2.0.9.~reimport-0+steamrt1.1+srt2_i386.deb";
+      name = "libsdl2-2.0-0_2.0.10-0+steamrt1.3+srt1_i386";
+      sha256 = "88f38095f8574cf3792b42da2a13b89c4011904e7d5043a911af4cd3f749f62b";
+      url = "mirror://steamrt/pool/main/libs/libsdl2/libsdl2-2.0-0_2.0.10-0+steamrt1.3+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
-        name = "libsdl2.deb";
+        name = "libsdl2-2.0-0.deb";
       };
     }
     rec {
-      name = "libsdl2-image_2.0.4.~reimport-0+steamrt1.1+srt2_i386";
-      sha256 = "4783fc8d0012b5a1b917336af3fd7db097c0c43153bb088df0fdd9018b8c4072";
-      url = "mirror://steamrt/pool/main/libs/libsdl2-image/libsdl2-image_2.0.4.~reimport-0+steamrt1.1+srt2_i386.deb";
+      name = "libsdl2-image-2.0-0_2.0.5-0+steamrt1.1+srt1_i386";
+      sha256 = "27b47158e7af64376f0fc4382e54b9c3130a0990d4d8b4e421b0729bf6e543a9";
+      url = "mirror://steamrt/pool/main/libs/libsdl2-image/libsdl2-image-2.0-0_2.0.5-0+steamrt1.1+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
-        name = "libsdl2-image.deb";
+        name = "libsdl2-image-2.0-0.deb";
       };
     }
     rec {
-      name = "libsdl2-mixer_2.0.4.~reimport-0+steamrt1.1+srt2_i386";
-      sha256 = "4c7f511b947e416898b169694ef112d137674c9add49162ba1185c36e83b3604";
-      url = "mirror://steamrt/pool/main/libs/libsdl2-mixer/libsdl2-mixer_2.0.4.~reimport-0+steamrt1.1+srt2_i386.deb";
+      name = "libsdl2-mixer-2.0-0_2.0.4.~reimport-0+steamrt1.2+srt1_i386";
+      sha256 = "36f917c204f56c0836fb1829ecfb36ca5458b121857387afbf9e5afab6c4a36a";
+      url = "mirror://steamrt/pool/main/libs/libsdl2-mixer/libsdl2-mixer-2.0-0_2.0.4.~reimport-0+steamrt1.2+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
-        name = "libsdl2-mixer.deb";
+        name = "libsdl2-mixer-2.0-0.deb";
       };
     }
     rec {
-      name = "libsdl2-net_2.0.1+srt3_i386";
-      sha256 = "f5eba8169255366fdfc809183c89cd6d7ce88da96c6a56cd3da5f8af68cb31d0";
-      url = "mirror://steamrt/pool/main/libs/libsdl2-net/libsdl2-net_2.0.1+srt3_i386.deb";
+      name = "libsdl2-net-2.0-0_2.0.1.~reimport-0+steamrt1.1+srt1_i386";
+      sha256 = "73316e94bfd4fc2382fd255c93469fdb8fa8a142c64b02522cbd84f972b17acf";
+      url = "mirror://steamrt/pool/main/libs/libsdl2-net/libsdl2-net-2.0-0_2.0.1.~reimport-0+steamrt1.1+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
-        name = "libsdl2-net.deb";
+        name = "libsdl2-net-2.0-0.deb";
       };
     }
     rec {
-      name = "libsdl2-ttf_2.0.14+srt3_i386";
-      sha256 = "db1b89ffc678d7845adb3fa57b04865921521bd97603d28751248fb8f367d909";
-      url = "mirror://steamrt/pool/main/libs/libsdl2-ttf/libsdl2-ttf_2.0.14+srt3_i386.deb";
+      name = "libsdl2-ttf-2.0-0_2.0.15-0+steamrt1.1+srt2_i386";
+      sha256 = "1a0a7c17206ed42dbb0a4c36a6be819b2e405c7f2a5c402b44773422bb717fe0";
+      url = "mirror://steamrt/pool/main/libs/libsdl2-ttf/libsdl2-ttf-2.0-0_2.0.15-0+steamrt1.1+srt2_i386.deb";
       source = fetchurl {
         inherit url sha256;
-        name = "libsdl2-ttf.deb";
+        name = "libsdl2-ttf-2.0-0.deb";
       };
     }
     rec {
@@ -3030,6 +3246,33 @@
       };
     }
     rec {
+      name = "libsteam-runtime-tools-0-0_0.20200109.0-0+steamrt1.1+srt1_i386";
+      sha256 = "dfd80854857cdbc764f799f34acd7f37a4c3e773c4ba5c7c81394071148a140f";
+      url = "mirror://steamrt/pool/main/s/steam-runtime-tools/libsteam-runtime-tools-0-0_0.20200109.0-0+steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libsteam-runtime-tools-0-0.deb";
+      };
+    }
+    rec {
+      name = "libsteam-runtime-tools-0-helpers_0.20200109.0-0+steamrt1.1+srt1_i386";
+      sha256 = "f2c5fc6abcc3a938e2a0b27e8682b56944a2a61416e8d0edb5878af2e16c98cb";
+      url = "mirror://steamrt/pool/main/s/steam-runtime-tools/libsteam-runtime-tools-0-helpers_0.20200109.0-0+steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libsteam-runtime-tools-0-helpers.deb";
+      };
+    }
+    rec {
+      name = "libsteam-runtime-tools-0-relocatable-libs_0.20200109.0-0+steamrt1.1+srt1_i386";
+      sha256 = "c06ea7ec21d2114925c09d5245e87482c81cc4e1928ed31827ab58cb094721ae";
+      url = "mirror://steamrt/pool/main/s/steam-runtime-tools/libsteam-runtime-tools-0-relocatable-libs_0.20200109.0-0+steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libsteam-runtime-tools-0-relocatable-libs.deb";
+      };
+    }
+    rec {
       name = "libswscale2_0.8.13-0ubuntu0.12.04.1+steamrt1+srt3_i386";
       sha256 = "938ac8ecc9f75f070b65b5d8bddea58d89ba8e1673d004d1b20ca0e1f677ba14";
       url = "mirror://steamrt/pool/main/liba/libav/libswscale2_0.8.13-0ubuntu0.12.04.1+steamrt1+srt3_i386.deb";
@@ -3138,33 +3381,78 @@
       };
     }
     rec {
-      name = "libva-glx1_1.7.0-1+steamos1+srt2_i386";
-      sha256 = "d9e84658add810853ef5c07729afa864ea07be31b513a2eb5fd569328a9555a9";
-      url = "mirror://steamrt/pool/main/libv/libva/libva-glx1_1.7.0-1+steamos1+srt2_i386.deb";
+      name = "libva-drm1_1.7.0-1+steamrt1.1+srt1_i386";
+      sha256 = "4f5fdcaf46a2e337fe1cad9c936809b5a38aff7af0b926bb9284930d23a9e09c";
+      url = "mirror://steamrt/pool/main/libv/libva1/libva-drm1_1.7.0-1+steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libva-drm1.deb";
+      };
+    }
+    rec {
+      name = "libva-drm2_2.1.0-3~steamrt1.2+srt1_i386";
+      sha256 = "8f2ca36ca81167017bc3921753ef6d9e3097172d52007ad16484f1f5eaa26a18";
+      url = "mirror://steamrt/pool/main/libv/libva/libva-drm2_2.1.0-3~steamrt1.2+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libva-drm2.deb";
+      };
+    }
+    rec {
+      name = "libva-glx1_1.7.0-1+steamrt1.1+srt1_i386";
+      sha256 = "8360c4e6d65b444e4a985410101ddddcd7c1c955f25debdf20ccda9664695d44";
+      url = "mirror://steamrt/pool/main/libv/libva1/libva-glx1_1.7.0-1+steamrt1.1+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libva-glx1.deb";
       };
     }
     rec {
-      name = "libva-x11-1_1.7.0-1+steamos1+srt2_i386";
-      sha256 = "1d2e3d83d02dbb83156edba8f6b1564baf795e84bf9c4549db100722f42d4a04";
-      url = "mirror://steamrt/pool/main/libv/libva/libva-x11-1_1.7.0-1+steamos1+srt2_i386.deb";
+      name = "libva-glx2_2.1.0-3~steamrt1.2+srt1_i386";
+      sha256 = "41e935fbb2fd67af1d3477959703ff1211bd34c0902d96e53e073e8b18d9def7";
+      url = "mirror://steamrt/pool/main/libv/libva/libva-glx2_2.1.0-3~steamrt1.2+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libva-glx2.deb";
+      };
+    }
+    rec {
+      name = "libva-x11-1_1.7.0-1+steamrt1.1+srt1_i386";
+      sha256 = "bf8a787f375533dbb847aea5ab9bb316476d0c8a3e772d449356920fa9b045ce";
+      url = "mirror://steamrt/pool/main/libv/libva1/libva-x11-1_1.7.0-1+steamrt1.1+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libva-x11-1.deb";
       };
     }
     rec {
-      name = "libva1_1.7.0-1+steamos1+srt2_i386";
-      sha256 = "f32d8049e071903b6b20648b0a30c4300603b2eb0635c71243beb58d9746dce6";
-      url = "mirror://steamrt/pool/main/libv/libva/libva1_1.7.0-1+steamos1+srt2_i386.deb";
+      name = "libva-x11-2_2.1.0-3~steamrt1.2+srt1_i386";
+      sha256 = "766bfc01ee038b21bd48eaacd1aaac1556817a999bdd83c605b4efdaf6c54a1d";
+      url = "mirror://steamrt/pool/main/libv/libva/libva-x11-2_2.1.0-3~steamrt1.2+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libva-x11-2.deb";
+      };
+    }
+    rec {
+      name = "libva1_1.7.0-1+steamrt1.1+srt1_i386";
+      sha256 = "561d0e3f3a670ee8f6d2e1d4cfa41983d688e0d6233f07e541392016e517aa4d";
+      url = "mirror://steamrt/pool/main/libv/libva1/libva1_1.7.0-1+steamrt1.1+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libva1.deb";
       };
     }
     rec {
+      name = "libva2_2.1.0-3~steamrt1.2+srt1_i386";
+      sha256 = "9ea2f165352428378bb6dc987256d37f2d2aace0be23a1ba70db69fab65e82dd";
+      url = "mirror://steamrt/pool/main/libv/libva/libva2_2.1.0-3~steamrt1.2+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libva2.deb";
+      };
+    }
+    rec {
       name = "libvdpau1_0.4.1-3ubuntu1.2+srt3_i386";
       sha256 = "8ec0513551e19a25934d113cf2f9d68cf2c4b3b65a6ba786f7aa780f81fe2cde";
       url = "mirror://steamrt/pool/main/libv/libvdpau/libvdpau1_0.4.1-3ubuntu1.2+srt3_i386.deb";
@@ -3210,15 +3498,24 @@
       };
     }
     rec {
-      name = "libvulkan1_1.1.73+dfsg-1+steamosc2+srt2_i386";
-      sha256 = "cac788c3fd6cea1ff7235f9b14f82eb8121e209743f08d15529e54732e692e05";
-      url = "mirror://steamrt/pool/main/v/vulkan/libvulkan1_1.1.73+dfsg-1+steamosc2+srt2_i386.deb";
+      name = "libvulkan1_1.2.135~srt-0+steamrt1.1+srt1_i386";
+      sha256 = "ac161149e1106247de706788a7ea29dbe5e3c17c2b8aedf97ec892b311abbb75";
+      url = "mirror://steamrt/pool/main/v/vulkan-loader/libvulkan1_1.2.135~srt-0+steamrt1.1+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
         name = "libvulkan1.deb";
       };
     }
     rec {
+      name = "libwaffle-1-0_1.6.0-2~steamrt1.3+srt1_i386";
+      sha256 = "875ebdcc60fd8be86b6e83a2155bea69aa3ef7442d60eef277bcdf814c663452";
+      url = "mirror://steamrt/pool/main/w/waffle/libwaffle-1-0_1.6.0-2~steamrt1.3+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "libwaffle-1-0.deb";
+      };
+    }
+    rec {
       name = "libwind0-heimdal_1.6~git20120311.dfsg.1-2+srt6_i386";
       sha256 = "6eb4a6d45a5a37f96c0b96dd08f9d7dbbf5d67c4dc9627472e5c7f6e8dcdecd2";
       url = "mirror://steamrt/pool/main/h/heimdal/libwind0-heimdal_1.6~git20120311.dfsg.1-2+srt6_i386.deb";
@@ -3669,24 +3966,123 @@
       };
     }
     rec {
-      name = "steamrt-legacy_1.20190624.0+srt1_i386";
-      sha256 = "22bb83259ee421abdb7cb9877365460619011c859eaf4119615e55726defa56b";
-      url = "mirror://steamrt/pool/main/s/steamrt/steamrt-legacy_1.20190624.0+srt1_i386.deb";
+      name = "steam-runtime-tools-bin_0.20200109.0-0+steamrt1.1+srt1_i386";
+      sha256 = "52e587b75463b08e0e903e30cd4b836bd4e39ead8d556807e5628eff36fdc477";
+      url = "mirror://steamrt/pool/main/s/steam-runtime-tools/steam-runtime-tools-bin_0.20200109.0-0+steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "steam-runtime-tools-bin.deb";
+      };
+    }
+    rec {
+      name = "steamrt-legacy_1.20200128.0+srt1_i386";
+      sha256 = "3adf8b89ac83f12eeb431785bd18a569b1174bc81aa24d5c562687b823704f28";
+      url = "mirror://steamrt/pool/main/s/steamrt/steamrt-legacy_1.20200128.0+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
         name = "steamrt-legacy.deb";
       };
     }
     rec {
-      name = "steamrt-libs_1.20190624.0+srt1_i386";
-      sha256 = "f9a38284deb9c08fbe6f3b8d1617bec74bb803d639a0a77d77736f19a1de765a";
-      url = "mirror://steamrt/pool/main/s/steamrt/steamrt-libs_1.20190624.0+srt1_i386.deb";
+      name = "steamrt-libs_1.20200128.0+srt1_i386";
+      sha256 = "8ad6092d1b4d257883ca4f3fac8ee5b9a71413c8bdbc149a9bec843047867311";
+      url = "mirror://steamrt/pool/main/s/steamrt/steamrt-libs_1.20200128.0+srt1_i386.deb";
       source = fetchurl {
         inherit url sha256;
         name = "steamrt-libs.deb";
       };
     }
     rec {
+      name = "vainfo_2.1.0+ds1-1~steamrt1.1+srt1_i386";
+      sha256 = "785128cd89e53ce63317eb958c59546b5526e66183b3819a3d351eb04c599e38";
+      url = "mirror://steamrt/pool/main/libv/libva-utils/vainfo_2.1.0+ds1-1~steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vainfo.deb";
+      };
+    }
+    rec {
+      name = "vainfo-1_1.7.0-1+steamrt1.1+srt1_i386";
+      sha256 = "8d1c25ccfa3f62ccd680673a0b2460ab4090c66bc539c7f1991e60cd50e1ce1b";
+      url = "mirror://steamrt/pool/main/libv/libva1/vainfo-1_1.7.0-1+steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vainfo-1.deb";
+      };
+    }
+    rec {
+      name = "vainfo-1-multiarch_1.7.0-1+steamrt1.1+srt1_i386";
+      sha256 = "f50869e6dc73354ab1aa3472ca9092c07d7868f3949b0ca1e2cd2fc817967f42";
+      url = "mirror://steamrt/pool/main/libv/libva1/vainfo-1-multiarch_1.7.0-1+steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vainfo-1-multiarch.deb";
+      };
+    }
+    rec {
+      name = "vainfo-multiarch_2.1.0+ds1-1~steamrt1.1+srt1_i386";
+      sha256 = "066f979526321c2d74223426fbc40fd7b210ce6c0396ffc58220313358ae155c";
+      url = "mirror://steamrt/pool/main/libv/libva-utils/vainfo-multiarch_2.1.0+ds1-1~steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vainfo-multiarch.deb";
+      };
+    }
+    rec {
+      name = "vulkan-tools_1.2.131.1+dfsg1-1+steamrt1.1+srt1_i386";
+      sha256 = "6a8576cc6fadc4d18c97b100dc24bad1906f6f56cab024997787355025695df4";
+      url = "mirror://steamrt/pool/main/v/vulkan-tools/vulkan-tools_1.2.131.1+dfsg1-1+steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vulkan-tools.deb";
+      };
+    }
+    rec {
+      name = "vulkan-tools-multiarch_1.2.131.1+dfsg1-1+steamrt1.1+srt1_i386";
+      sha256 = "fae0430f540c71bd8f6ab3099f8aa132d2eda858b66facf3d8a586ab38cffde6";
+      url = "mirror://steamrt/pool/main/v/vulkan-tools/vulkan-tools-multiarch_1.2.131.1+dfsg1-1+steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vulkan-tools-multiarch.deb";
+      };
+    }
+    rec {
+      name = "vulkan-utils_1.2.131.1+dfsg1-1+steamrt1.1+srt1_all";
+      sha256 = "f10004e20ed5fc93edf035f8f34bb9f8307eb34974a3ed5aae9ba87f00a2c468";
+      url = "mirror://steamrt/pool/main/v/vulkan-tools/vulkan-utils_1.2.131.1+dfsg1-1+steamrt1.1+srt1_all.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vulkan-utils.deb";
+      };
+    }
+    rec {
+      name = "vulkan-utils-multiarch_1.2.131.1+dfsg1-1+steamrt1.1+srt1_i386";
+      sha256 = "f81b81ef14f11662d2d5e5a7f688c2ef4f9ad9625ec5e59de91aab3f1ad45406";
+      url = "mirror://steamrt/pool/main/v/vulkan-tools/vulkan-utils-multiarch_1.2.131.1+dfsg1-1+steamrt1.1+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "vulkan-utils-multiarch.deb";
+      };
+    }
+    rec {
+      name = "waffle-utils_1.6.0-2~steamrt1.3+srt1_i386";
+      sha256 = "37df214d4f0fd1c5e9afce405756fc1615f2d5cba468b34569b13f3e8a08a2a5";
+      url = "mirror://steamrt/pool/main/w/waffle/waffle-utils_1.6.0-2~steamrt1.3+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "waffle-utils.deb";
+      };
+    }
+    rec {
+      name = "waffle-utils-multiarch_1.6.0-2~steamrt1.3+srt1_i386";
+      sha256 = "5866f8bf43b6c19608670a8c565ce8f0dac9db9c943e65ac25e9cb4f951997a4";
+      url = "mirror://steamrt/pool/main/w/waffle/waffle-utils-multiarch_1.6.0-2~steamrt1.3+srt1_i386.deb";
+      source = fetchurl {
+        inherit url sha256;
+        name = "waffle-utils-multiarch.deb";
+      };
+    }
+    rec {
       name = "zenity_3.4.0-0ubuntu4+steamrt2+srt6_i386";
       sha256 = "1c772d4f96424d204ab4913efcafbe43518257ca5032ca7b23d6c6ab76439117";
       url = "mirror://steamrt/pool/main/z/zenity/zenity_3.4.0-0ubuntu4+steamrt2+srt6_i386.deb";
diff --git a/pkgs/games/tdm/default.nix b/pkgs/games/tdm/default.nix
index 294d4703bb0..32f91f59868 100644
--- a/pkgs/games/tdm/default.nix
+++ b/pkgs/games/tdm/default.nix
@@ -24,7 +24,7 @@ in stdenv.mkDerivation {
     sha256 = "17wdpip8zvm2njz0xrf7xcxl73hnsc6i83zj18kn8rnjkpy50dd6";
   };
   nativeBuildInputs = [
-    p7zip scons gnum4 makeWrapper
+    p7zip scons.py2 gnum4 makeWrapper
   ];
   buildInputs = [
     glibc_multi mesa.dev xorg.libX11.dev openal
diff --git a/pkgs/games/teeworlds/default.nix b/pkgs/games/teeworlds/default.nix
index ff0dfad51a6..13918d2f7a5 100644
--- a/pkgs/games/teeworlds/default.nix
+++ b/pkgs/games/teeworlds/default.nix
@@ -1,5 +1,5 @@
-{ fetchFromGitHub, stdenv, cmake, pkgconfig, python, alsaLib
-, libX11, libGLU, SDL2, lua5_3, zlib, freetype, wavpack
+{ fetchFromGitHub, stdenv, cmake, pkgconfig, python3, alsaLib
+, libX11, libGLU, SDL2, lua5_3, zlib, freetype, wavpack, icoutils
 }:
 
 stdenv.mkDerivation rec {
@@ -21,12 +21,21 @@ stdenv.mkDerivation rec {
                 '#define DATA_DIR "${placeholder "out"}/share/teeworlds/data"'
   '';
 
-  nativeBuildInputs = [ cmake pkgconfig ];
+  nativeBuildInputs = [ cmake pkgconfig icoutils ];
 
   buildInputs = [
-    python alsaLib libX11 libGLU SDL2 lua5_3 zlib freetype wavpack
+    python3 alsaLib libX11 libGLU SDL2 lua5_3 zlib freetype wavpack
   ];
 
+  postInstall = ''
+    # Convert and install desktop icon
+    mkdir -p $out/share/pixmaps
+    icotool --extract --index 1 --output $out/share/pixmaps/teeworlds.png $src/other/icons/teeworlds.ico
+
+    # Install menu item
+    install -D $src/other/teeworlds.desktop $out/share/applications/teeworlds.desktop
+  '';
+
   meta = {
     description = "Retro multiplayer shooter game";
 
diff --git a/pkgs/games/vdrift/default.nix b/pkgs/games/vdrift/default.nix
index 3002216b9d4..3685d24c972 100644
--- a/pkgs/games/vdrift/default.nix
+++ b/pkgs/games/vdrift/default.nix
@@ -20,8 +20,8 @@ let
       sha256 = "001wq3c4n9wzxqfpq40b1jcl16sxbqv2zbkpy9rq2wf9h417q6hg";
     };
 
-    nativeBuildInputs = [ pkgconfig ];
-    buildInputs = [ scons libGLU libGL SDL2 SDL2_image libvorbis bullet curl gettext ];
+    nativeBuildInputs = [ pkgconfig scons.py2 ];
+    buildInputs = [ libGLU libGL SDL2 SDL2_image libvorbis bullet curl gettext ];
 
     patches = [ ./0001-Ignore-missing-data-for-installation.patch ];
 
diff --git a/pkgs/games/xmage/default.nix b/pkgs/games/xmage/default.nix
new file mode 100644
index 00000000000..e8b8eb8a941
--- /dev/null
+++ b/pkgs/games/xmage/default.nix
@@ -0,0 +1,41 @@
+{ stdenv
+, fetchurl
+, jdk8
+, unzip
+}:
+
+stdenv.mkDerivation rec {
+  name    = "xmage";
+  version = "1.4.42V6";
+
+  src = fetchurl {
+    url    = "https://github.com/magefree/mage/releases/download/xmage_1.4.42V6/xmage_${version}.zip";
+    sha256 = "14s4885ldi0rplqmab5m775plsqmmm0m89j402caiqm2q9mzvkhd";
+  };
+
+  preferLocalBuild = true;
+
+  unpackPhase = ''
+    ${unzip}/bin/unzip $src
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp -rv ./* $out
+
+    cat << EOS > $out/bin/xmage
+exec ${jdk8}/bin/java -Xms256m -Xmx512m -XX:MaxPermSize=384m -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar $out/mage-client/lib/mage-client-1.4.42.jar
+EOS
+
+    chmod +x $out/bin/xmage
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Magic Another Game Engine";
+    license = licenses.mit;
+    maintainers = with maintainers; [ matthiasbeyer ];
+    homepage = "http://xmage.de/";
+  };
+
+}
+
diff --git a/pkgs/games/xonotic/default.nix b/pkgs/games/xonotic/default.nix
index f4ce3c86a64..5f36ab4fb9f 100644
--- a/pkgs/games/xonotic/default.nix
+++ b/pkgs/games/xonotic/default.nix
@@ -1,73 +1,31 @@
-{ stdenv, fetchurl
+{ lib, stdenv, fetchurl, fetchzip, makeWrapper, runCommandNoCC, makeDesktopItem
+, xonotic-data
 , # required for both
   unzip, libjpeg, zlib, libvorbis, curl
 , # glx
   libX11, libGLU, libGL, libXpm, libXext, libXxf86vm, alsaLib
 , # sdl
   SDL2
-}:
-
-stdenv.mkDerivation rec {
-  name = "xonotic-0.8.2";
 
-  src = fetchurl {
-    url = "https://dl.xonotic.org/${name}.zip";
-    sha256 = "1mcs6l4clvn7ibfq3q69k2p0z6ww75rxvnngamdq5ic6yhq74bx2";
-  };
+, withSDL ? true
+, withGLX ? false
+, withDedicated ? true
+}:
 
-  buildInputs = [
-    # required for both
-    unzip libjpeg
-    # glx
-    libX11 libGLU libGL libXpm libXext libXxf86vm alsaLib
-    # sdl
-    SDL2
-    zlib libvorbis curl
-  ];
-
-  sourceRoot = "Xonotic/source/darkplaces";
-
-  # "debug", "release", "profile"
-  target = "release";
-
-  dontStrip = target != "release";
-
-  buildPhase = ''
-    DP_FS_BASEDIR="$out/share/xonotic"
-    make DP_FS_BASEDIR=$DP_FS_BASEDIR cl-${target}
-    make DP_FS_BASEDIR=$DP_FS_BASEDIR sdl-${target}
-    make DP_FS_BASEDIR=$DP_FS_BASEDIR sv-${target}
-  '';
-  enableParallelBuilding = true;
-
-  installPhase = ''
-    mkdir -p "$out/bin"
-    cp darkplaces-dedicated "$out/bin/xonotic-dedicated"
-    cp darkplaces-sdl "$out/bin/xonotic-sdl"
-    cp darkplaces-glx "$out/bin/xonotic-glx"
-    cd ../..
-    mkdir -p "$out/share/xonotic"
-    mv data "$out/share/xonotic"
-
-    # default to sdl
-    ln -s "$out/bin/xonotic-sdl" "$out/bin/xonotic"
-  '';
-
-  # Xonotic needs to find libcurl.so at runtime for map downloads
-  dontPatchELF = true;
-  postFixup = ''
-    patchelf --add-needed ${curl.out}/lib/libcurl.so $out/bin/xonotic-dedicated
-    patchelf \
-        --add-needed ${curl.out}/lib/libcurl.so \
-        --add-needed ${libvorbis}/lib/libvorbisfile.so \
-        --add-needed ${libvorbis}/lib/libvorbis.so \
-        $out/bin/xonotic-glx
-    patchelf \
-        --add-needed ${curl.out}/lib/libcurl.so \
-        --add-needed ${libvorbis}/lib/libvorbisfile.so \
-        --add-needed ${libvorbis}/lib/libvorbis.so \
-        $out/bin/xonotic-sdl
-  '';
+let
+  pname = "xonotic";
+  version = "0.8.2";
+  name = "${pname}-${version}";
+  variant =
+    if withSDL && withGLX then
+      ""
+    else if withSDL then
+      "-sdl"
+    else if withGLX then
+      "-glx"
+    else if withDedicated then
+      "-dedicated"
+    else "-what-even-am-i";
 
   meta = {
     description = "A free fast-paced first-person shooter";
@@ -79,10 +37,121 @@ stdenv.mkDerivation rec {
       Nexuiz project with years of development between them, and it
       aims to become the best possible open-source FPS of its kind.
     '';
-    homepage = http://www.xonotic.org;
+    homepage = "https://www.xonotic.org/";
     license = stdenv.lib.licenses.gpl2Plus;
-    maintainers = with stdenv.lib.maintainers; [ astsmtl zalakain ];
+    maintainers = with stdenv.lib.maintainers; [ astsmtl zalakain petabyteboy ];
     platforms = stdenv.lib.platforms.linux;
-    hydraPlatforms = [];
   };
+
+  desktopItem = makeDesktopItem {
+    name = "xonotic";
+    exec = "$out/bin/xonotic";
+    comment = meta.description;
+    desktopName = "Xonotic";
+    categories = "Game;";
+    icon = "xonotic";
+    startupNotify = "false";
+  };
+
+  xonotic-unwrapped = stdenv.mkDerivation rec {
+    pname = "xonotic${variant}-unwrapped";
+    inherit version;
+
+    src = fetchurl {
+      url = "https://dl.xonotic.org/${name}-source.zip";
+      sha256 = "0axxw04fyz6jlfqd0kp7hdrqa0li31sx1pbipf2j5qp9wvqicsay";
+    };
+
+    buildInputs = [ unzip libjpeg zlib libvorbis curl ]
+      ++ lib.optional withGLX [ libX11.dev libGLU.dev libGL.dev libXpm.dev libXext.dev libXxf86vm.dev alsaLib.dev ]
+      ++ lib.optional withSDL [ SDL2.dev ];
+
+    sourceRoot = "Xonotic/source/darkplaces";
+
+    # "debug", "release", "profile"
+    target = "release";
+
+    dontStrip = target != "release";
+
+    buildPhase = lib.optionalString withDedicated ''
+      make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES sv-${target}
+    '' + lib.optionalString withGLX ''
+      make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES cl-${target}
+    '' + lib.optionalString withSDL ''
+      make -j $NIX_BUILD_CORES -l $NIX_BUILD_CORES sdl-${target}
+    '';
+
+    enableParallelBuilding = true;
+
+    installPhase = ''
+      install -Dm644 ../../misc/logos/icons_png/xonotic_128.png $out/share/pixmaps/xonotic.png
+    '' + lib.optionalString withDedicated ''
+      install -Dm755 darkplaces-dedicated "$out/bin/xonotic-dedicated"
+    '' + lib.optionalString withGLX ''
+      install -Dm755 darkplaces-glx "$out/bin/xonotic-glx"
+    '' + lib.optionalString withSDL ''
+      install -Dm755 darkplaces-sdl "$out/bin/xonotic-sdl"
+    '';
+
+    # Xonotic needs to find libcurl.so at runtime for map downloads
+    dontPatchELF = true;
+    postFixup = lib.optionalString withDedicated ''
+      patchelf --add-needed ${curl.out}/lib/libcurl.so $out/bin/xonotic-dedicated
+    '' + lib.optionalString withGLX ''
+      patchelf \
+          --add-needed ${curl.out}/lib/libcurl.so \
+          --add-needed ${libvorbis}/lib/libvorbisfile.so \
+          --add-needed ${libvorbis}/lib/libvorbis.so \
+          --add-needed ${libGL.out}/lib/libGL.so \
+          $out/bin/xonotic-glx
+    '' + lib.optionalString withSDL ''
+      patchelf \
+          --add-needed ${curl.out}/lib/libcurl.so \
+          --add-needed ${libvorbis}/lib/libvorbisfile.so \
+          --add-needed ${libvorbis}/lib/libvorbis.so \
+          $out/bin/xonotic-sdl
+    '';
+  };
+
+in rec {
+  xonotic-data = fetchzip {
+    name = "xonotic-data-${version}";
+    url = "https://dl.xonotic.org/${name}.zip";
+    sha256 = "1ygkh0v68y4sd1w5vpk8dgb65h5jm599hwszdfgjp3ax4d3ml81x";
+    extraPostFetch = ''
+      cd $out
+      rm -rf $(ls | grep -v "^data$")
+    '';
+    meta.hydraPlatforms = [];
+    passthru.version = version;
+  };
+
+  xonotic = runCommandNoCC "xonotic${variant}-${version}" {
+    inherit xonotic-unwrapped;
+    buildInputs = [ makeWrapper ];
+    passthru = {
+      inherit version;
+      meta = meta // {
+        hydraPlatforms = [];
+      };
+    };
+  } (''
+    mkdir -p $out/bin
+  '' + lib.optionalString withDedicated ''
+    ln -s ${xonotic-unwrapped}/bin/xonotic-dedicated $out/bin/
+  '' + lib.optionalString withGLX ''
+    ln -s ${xonotic-unwrapped}/bin/xonotic-glx $out/bin/xonotic-glx
+    ln -s $out/bin/xonotic-glx $out/bin/xonotic
+  '' + lib.optionalString withSDL ''
+    ln -s ${xonotic-unwrapped}/bin/xonotic-sdl $out/bin/xonotic-sdl
+    ln -sf $out/bin/xonotic-sdl $out/bin/xonotic
+  '' + lib.optionalString (withSDL || withGLX) ''
+    mkdir -p $out/share
+    ln -s ${xonotic-unwrapped}/share/pixmaps $out/share/pixmaps
+    ${desktopItem.buildCommand}
+  '' + ''
+    for binary in $out/bin/xonotic-*; do
+      wrapProgram $binary --add-flags "-basedir ${xonotic-data}"
+    done
+  '');
 }
diff --git a/pkgs/misc/documentation-highlighter/default.nix b/pkgs/misc/documentation-highlighter/default.nix
index a9fbcc178bb..72f1da6b0de 100644
--- a/pkgs/misc/documentation-highlighter/default.nix
+++ b/pkgs/misc/documentation-highlighter/default.nix
@@ -2,7 +2,7 @@
 runCommand "documentation-highlighter" {
   meta = {
     description = "Highlight.js sources for the Nix Ecosystem's documentation.";
-    homepage = https://highlightjs.org;
+    homepage = "https://highlightjs.org";
     license = stdenv.lib.licenses.bsd3;
     platforms = stdenv.lib.platforms.all;
     maintainers = [ stdenv.lib.maintainers.grahamc ];
diff --git a/pkgs/misc/drivers/hplip/default.nix b/pkgs/misc/drivers/hplip/default.nix
index 1514e8def97..4678442abd9 100644
--- a/pkgs/misc/drivers/hplip/default.nix
+++ b/pkgs/misc/drivers/hplip/default.nix
@@ -12,16 +12,16 @@
 let
 
   name = "hplip-${version}";
-  version = "3.19.12";
+  version = "3.20.3";
 
   src = fetchurl {
     url = "mirror://sourceforge/hplip/${name}.tar.gz";
-    sha256 = "0mdj0sqgfxjqa550adiw1gn4z9n6wcvn55slivgf0ndn5x89iwxp";
+    sha256 = "0sh6cg7yjc11x1cm4477iaslj9n8ksghs85hqwgfbk7m5b2pw2a1";
   };
 
   plugin = fetchurl {
     url = "https://developers.hp.com/sites/default/files/${name}-plugin.run";
-    sha256 = "1fn8h1a5znjqjh071ifjdywr0xswc14286gwy6h9vvlh8hzrz347";
+    sha256 = "13xyv30jqjysfk7gh0gyn7qj0pb0qvk2rlbhm85a3lw7bjycal8g";
   };
 
   hplipState = substituteAll {
diff --git a/pkgs/misc/drivers/utsushi/default.nix b/pkgs/misc/drivers/utsushi/default.nix
index ad7659d060a..294bb8a0203 100644
--- a/pkgs/misc/drivers/utsushi/default.nix
+++ b/pkgs/misc/drivers/utsushi/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitLab, autoreconfHook, pkg-config, boost, gtkmm2
-, imagemagick, sane-backends, tesseract4, udev, libusb}:
+, imagemagick, sane-backends, tesseract4, udev, libusb1}:
 
 stdenv.mkDerivation rec {
   pname = "utsushi";
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     imagemagick
     sane-backends
     udev.dev
-    libusb.dev
+    libusb1.dev
   ];
 
   NIX_CFLAGS_COMPILE = "-Wno-error=deprecated-declarations -Wno-error=parentheses -Wno-error=unused-variable";
diff --git a/pkgs/misc/drivers/xboxdrv/default.nix b/pkgs/misc/drivers/xboxdrv/default.nix
index e2f2bcc2f24..8b51060acd0 100644
--- a/pkgs/misc/drivers/xboxdrv/default.nix
+++ b/pkgs/misc/drivers/xboxdrv/default.nix
@@ -13,8 +13,8 @@ in stdenv.mkDerivation {
   };
 
   makeFlags = [ "PREFIX=$(out)" ];
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ scons libX11 libusb1 boost glib dbus-glib ];
+  nativeBuildInputs = [ pkgconfig scons.py2 ];
+  buildInputs = [ libX11 libusb1 boost glib dbus-glib ];
   dontUseSconsInstall = true;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/misc/drivers/xow/default.nix b/pkgs/misc/drivers/xow/default.nix
new file mode 100644
index 00000000000..8702c480457
--- /dev/null
+++ b/pkgs/misc/drivers/xow/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, libusb1 }:
+
+stdenv.mkDerivation rec {
+  pname = "xow";
+  version = "0.4";
+
+  src = fetchFromGitHub {
+    owner = "medusalix";
+    repo = "xow";
+    rev = "v${version}";
+    sha256 = "1xkwcx2gqip9v2h3zjmrn7sgcck3midl5alhsmr3zivgdipamynv";
+  };
+
+  makeFlags = [
+    "BUILD=RELEASE"
+    "VERSION=${version}"
+    "BINDIR=${placeholder ''out''}/bin"
+    "UDEVDIR=${placeholder ''out''}/lib/udev/rules.d"
+    "MODLDIR=${placeholder ''out''}/lib/modules-load.d"
+    "MODPDIR=${placeholder ''out''}/lib/modprobe.d"
+    "SYSDDIR=${placeholder ''out''}/lib/systemd/system"
+  ];
+  enableParallelBuilding = true;
+  buildInputs = [ libusb1 ];
+
+  meta = with stdenv.lib; {
+    homepage = "https://github.com/medusalix/xow";
+    description = "Linux driver for the Xbox One wireless dongle";
+    license = licenses.gpl2Plus;
+    maintainers = [ maintainers.jansol ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/misc/drivers/xp-pen-g430/default.nix b/pkgs/misc/drivers/xp-pen-g430/default.nix
new file mode 100644
index 00000000000..c382239f26a
--- /dev/null
+++ b/pkgs/misc/drivers/xp-pen-g430/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchzip, autoPatchelfHook, libusb1, libX11, libXtst, qtbase, wrapQtAppsHook, libglvnd }:
+stdenv.mkDerivation rec {
+  pname = "xp-pen-G430";
+  version = "20190820";
+
+  src = fetchzip {
+    url = "https://download01.xp-pen.com/file/2019/08/Linux%20Beta%20Driver(${version}).zip";
+    sha256 = "091kfqxxj90pdmwncgfl8ldi70pdhwryh3cls30654983m8cgnby";
+  } + /Linux_Pentablet_V1.3.0.0.tar.gz;
+
+  nativeBuildInputs = [
+    autoPatchelfHook
+    wrapQtAppsHook
+  ];
+
+  buildInputs = [
+    libusb1
+    libX11
+    libXtst
+    qtbase
+    libglvnd
+    stdenv.cc.cc.lib
+  ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp {Pentablet_Driver,config.xml} "$out"/bin
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = "https://www.xp-pen.com/download-46.html";
+    description = "Driver for the XP-PEN G430 drawing tablet";
+    license = licenses.unfree;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ ivar ];
+  };
+}
diff --git a/pkgs/misc/emulators/atari800/default.nix b/pkgs/misc/emulators/atari800/default.nix
index 38dc54ea9d7..bb6323d18e0 100644
--- a/pkgs/misc/emulators/atari800/default.nix
+++ b/pkgs/misc/emulators/atari800/default.nix
@@ -1,16 +1,20 @@
-{ stdenv, fetchurl
+{ stdenv, fetchFromGitHub, autoreconfHook
 , unzip, zlib, SDL, readline, libGLU, libGL, libX11 }:
 
 with stdenv.lib;
 stdenv.mkDerivation rec{
   pname = "atari800";
-  version = "4.0.0";
+  version = "4.2.0";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/atari800/atari800/${version}/${pname}-${version}.tar.gz";
-    sha256 = "1dcynsf8i52y7zyg62bkbhl3rdd22ss95zs2s9jm4y5jvn4vks88";
+  src = fetchFromGitHub {
+    owner = "atari800";
+    repo = "atari800";
+    rev = "ATARI800_${replaceChars ["."] ["_"] version}";
+    sha256 = "15l08clqqayi9izrgsz9achan6gl4x57wqsc8mad3yn0xayzz3qy";
   };
 
+  nativeBuildInputs = [ autoreconfHook ];
+
   buildInputs = [ unzip zlib SDL readline libGLU libGL libX11 ];
 
   configureFlags = [
@@ -23,10 +27,8 @@ stdenv.mkDerivation rec{
     "--enable-riodevice"
   ];
 
-  preConfigure = "cd src";
-
   meta = {
-    homepage = http://atari800.sourceforge.net/;
+    homepage = "https://atari800.github.io/";
     description = "An Atari 8-bit emulator";
     longDescription = ''
       Atari800 is the emulator of Atari 8-bit computer systems and
diff --git a/pkgs/misc/emulators/dolphin-emu/default.nix b/pkgs/misc/emulators/dolphin-emu/default.nix
index cc49ef2aa1d..b460aa7a485 100644
--- a/pkgs/misc/emulators/dolphin-emu/default.nix
+++ b/pkgs/misc/emulators/dolphin-emu/default.nix
@@ -1,17 +1,44 @@
-{ stdenv, lib, fetchpatch, pkgconfig, cmake, bluez, ffmpeg, libao, gtk2, glib
-, libGLU, libGL , gettext, libpthreadstubs, libXrandr, libXext, readline
-, openal , libXdmcp, portaudio, fetchFromGitHub, libusb, libevdev
-, wxGTK30, soundtouch, miniupnpc, mbedtls, curl, lzo, sfml
-, libpulseaudio ? null }:
+{ stdenv
+, lib
+, fetchpatch
+, pkgconfig
+, cmake
+, bluez
+, ffmpeg
+, libao
+, gtk2
+, glib
+, libGLU
+, libGL
+, gettext
+, libpthreadstubs
+, libXrandr
+, libXext
+, readline
+, openal
+, libXdmcp
+, portaudio
+, fetchFromGitHub
+, libusb1
+, libevdev
+, wxGTK30
+, soundtouch
+, miniupnpc
+, mbedtls
+, curl
+, lzo
+, sfml
+, libpulseaudio ? null
+}:
 
 stdenv.mkDerivation rec {
   pname = "dolphin-emu";
   version = "5.0";
 
   src = fetchFromGitHub {
-    owner  = "dolphin-emu";
-    repo   = "dolphin";
-    rev    = version;
+    owner = "dolphin-emu";
+    repo = "dolphin";
+    rev = version;
     sha256 = "07mlfnh0hwvk6xarcg315x7z2j0qbg9g7cm040df9c8psiahc3g6";
   };
 
@@ -44,15 +71,45 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ cmake bluez ffmpeg libao libGLU libGL gtk2 glib
-                  gettext libpthreadstubs libXrandr libXext readline openal
-                  libevdev libXdmcp portaudio libusb libpulseaudio
-                  libevdev libXdmcp portaudio libusb libpulseaudio
-                  wxGTK30 soundtouch miniupnpc mbedtls curl lzo sfml ];
+  nativeBuildInputs = [
+    pkgconfig
+    cmake
+  ];
+
+  buildInputs = [
+    bluez
+    ffmpeg
+    libao
+    libGLU
+    libGL
+    gtk2
+    glib
+    gettext
+    libpthreadstubs
+    libXrandr
+    libXext
+    readline
+    openal
+    libevdev
+    libXdmcp
+    portaudio
+    libpulseaudio
+    libevdev
+    libXdmcp
+    portaudio
+    libusb1
+    libpulseaudio
+    wxGTK30
+    soundtouch
+    miniupnpc
+    mbedtls
+    curl
+    lzo
+    sfml
+  ];
 
   meta = with lib; {
-    homepage = https://dolphin-emu.org/;
+    homepage = "https://dolphin-emu.org/";
     description = "Gamecube/Wii/Triforce emulator for x86_64 and ARMv8";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ MP2E ashkitten ];
diff --git a/pkgs/misc/emulators/dolphin-emu/master.nix b/pkgs/misc/emulators/dolphin-emu/master.nix
index e6e19e81242..aa77356600b 100644
--- a/pkgs/misc/emulators/dolphin-emu/master.nix
+++ b/pkgs/misc/emulators/dolphin-emu/master.nix
@@ -1,6 +1,6 @@
 { lib, stdenv, fetchFromGitHub, makeDesktopItem, pkgconfig, cmake
 , wrapQtAppsHook, qtbase, bluez, ffmpeg, libao, libGLU, libGL, pcre, gettext
-, libXrandr, libusb, lzo, libpthreadstubs, libXext, libXxf86vm, libXinerama
+, libXrandr, libusb1, lzo, libpthreadstubs, libXext, libXxf86vm, libXinerama
 , libSM, libXdmcp, readline, openal, udev, libevdev, portaudio, curl, alsaLib
 , miniupnpc, enet, mbedtls, soundtouch, sfml
 , vulkan-loader ? null, libpulseaudio ? null
@@ -21,13 +21,13 @@ let
   };
 in stdenv.mkDerivation rec {
   pname = "dolphin-emu";
-  version = "5.0-11608";
+  version = "5.0-11824";
 
   src = fetchFromGitHub {
     owner = "dolphin-emu";
     repo = "dolphin";
-    rev = "69ee15e5ef369d51681540e6714f02554e3bd8a6";
-    sha256 = "1svi9mnddhjcv64xh3y9l68k3rix7wimq8b0mqf5hp7qrda07lx8";
+    rev = "1b97f081b8eff9012132a4124537968bdb0e03e0";
+    sha256 = "1v96hcn34040vjsw83k8p0r0nb8rrdcz80h4ngirxzm36b3l7w6m";
   };
 
   enableParallelBuilding = true;
@@ -37,7 +37,7 @@ in stdenv.mkDerivation rec {
   buildInputs = [
     curl ffmpeg libao libGLU libGL pcre gettext libpthreadstubs libpulseaudio
     libXrandr libXext libXxf86vm libXinerama libSM readline openal libXdmcp lzo
-    portaudio libusb libpng hidapi miniupnpc enet mbedtls soundtouch sfml
+    portaudio libusb1 libpng hidapi miniupnpc enet mbedtls soundtouch sfml
     qtbase
   ] ++ lib.optionals stdenv.isLinux [
     bluez udev libevdev alsaLib vulkan-loader
diff --git a/pkgs/misc/emulators/higan/default.nix b/pkgs/misc/emulators/higan/default.nix
index c1e64d26b47..63a7e1c43db 100644
--- a/pkgs/misc/emulators/higan/default.nix
+++ b/pkgs/misc/emulators/higan/default.nix
@@ -1,8 +1,9 @@
 { stdenv, fetchurl
-, p7zip, pkgconfig
+, p7zip, pkgconfig, libicns
 , libX11, libXv
 , udev
 , libGLU, libGL, SDL
+, Carbon, Cocoa, OpenGL, OpenAL
 , libao, openal, libpulseaudio
 , gtk2, gtksourceview
 , runtimeShell }:
@@ -21,11 +22,24 @@ stdenv.mkDerivation rec {
   };
 
   patches = [ ./0001-change-flags.diff ];
-  postPatch = "sed '1i#include <cmath>' -i higan/fc/ppu/ppu.cpp";
+  postPatch = ''
+    sed '1i#include <cmath>' -i higan/fc/ppu/ppu.cpp
+
+    for file in icarus/GNUmakefile higan/target-tomoko/GNUmakefile; do
+      substituteInPlace "$file" \
+        --replace 'sips -s format icns data/$(name).png --out out/$(name).app/Contents/Resources/$(name).icns' \
+                  'png2icns out/$(name).app/Contents/Resources/$(name).icns data/$(name).png'
+    done
+  '';
+
+  nativeBuildInputs = [ p7zip pkgconfig ]
+    ++ optional stdenv.isDarwin [ libicns ];
 
   buildInputs =
-  [ p7zip pkgconfig libX11 libXv udev libGLU libGL
-    SDL libao openal libpulseaudio gtk2 gtksourceview ];
+    [ SDL libao ]
+    ++ optionals stdenv.isLinux [ openal libpulseaudio udev libX11 libXv libGLU libGL gtk2 gtksourceview ]
+    ++ optionals stdenv.isDarwin [ Carbon Cocoa OpenGL OpenAL ]
+    ;
 
   unpackPhase = ''
     7z x $src
@@ -38,27 +52,36 @@ stdenv.mkDerivation rec {
   '';
 
   # Now the cheats file will be distributed separately
-  installPhase = ''
-    install -dm 755 $out/bin $out/share/applications $out/share/higan $out/share/pixmaps
-    install -m 755 icarus/out/icarus $out/bin/
-    install -m 755 higan/out/higan $out/bin/
-    install -m 644 higan/data/higan.desktop $out/share/applications/
-    install -m 644 higan/data/higan.png $out/share/pixmaps/higan-icon.png
-    install -m 644 higan/resource/logo/higan.png $out/share/pixmaps/higan-logo.png
+  installPhase = (if !stdenv.isDarwin then ''
+    mkdir -p "$out"/bin "$out"/share/applications "$out"/share/pixmaps
+    install -m 755 icarus/out/icarus "$out"/bin/
+    install -m 755 higan/out/higan "$out"/bin/
+    install -m 644 higan/data/higan.desktop "$out"/share/applications/
+    install -m 644 higan/data/higan.png "$out"/share/pixmaps/higan-icon.png
+    install -m 644 higan/resource/logo/higan.png "$out"/share/pixmaps/higan-logo.png
+  '' else ''
+    mkdir "$out"
+    mv higan/out/higan.app "$out"/
+    mv icarus/out/icarus.app "$out"/
+  '') + ''
+    mkdir -p  "$out"/share/higan
     cp --recursive --no-dereference --preserve='links' --no-preserve='ownership' \
-      higan/systems/* $out/share/higan/
+      higan/systems/* "$out"/share/higan/
   '';
 
-  fixupPhase = ''
+  fixupPhase = let
+    dest = if !stdenv.isDarwin then "\\$HOME/.local/share/higan" else "\\$HOME/Library/Application Support/higan";
+  in ''
     # A dirty workaround, suggested by @cpages:
     # we create a first-run script to populate
     # the local $HOME with all the auxiliary
     # stuff needed by higan at runtime
 
+    mkdir -p "$out"/bin
     cat <<EOF > $out/bin/higan-init.sh
     #!${runtimeShell}
 
-    cp --recursive --update $out/share/higan/*.sys \$HOME/.local/share/higan/
+    cp --recursive --update $out/share/higan/*.sys "${dest}"/
 
     EOF
 
diff --git a/pkgs/misc/emulators/mame/default.nix b/pkgs/misc/emulators/mame/default.nix
index a0455b88bec..2b05a921590 100644
--- a/pkgs/misc/emulators/mame/default.nix
+++ b/pkgs/misc/emulators/mame/default.nix
@@ -1,14 +1,17 @@
 { stdenv, mkDerivation, fetchFromGitHub, makeDesktopItem, makeWrapper
 , python, pkgconfig, SDL2, SDL2_ttf, alsaLib, which, qtbase, libXinerama
+, libpcap, CoreAudioKit, ForceFeedback
 , installShellFiles }:
 
+with stdenv;
+
 let
   majorVersion = "0";
-  minorVersion = "218";
+  minorVersion = "219";
 
   desktopItem = makeDesktopItem {
     name = "MAME";
-    exec = "mame${stdenv.lib.optionalString stdenv.is64bit "64"}";
+    exec = "mame${lib.optionalString stdenv.is64bit "64"}";
     desktopName = "MAME";
     genericName = "MAME is a multi-purpose emulation framework";
     categories = "System;Emulator;";
@@ -23,17 +26,26 @@ in mkDerivation {
     owner = "mamedev";
     repo = "mame";
     rev = "mame${majorVersion}${minorVersion}";
-    sha256 = "11qschyxhi45pbpf9q3k71kybqxmcfhjml8axqpi43sv4q2ack6q";
+    sha256 = "048ar1j2vsrvqqc3spy9qcch2lbxn0ycd9lv4ig5wfnvjkdjdvgr";
   };
 
   hardeningDisable = [ "fortify" ];
-  NIX_CFLAGS_COMPILE = [ "-Wno-error=maybe-uninitialized" ];
+  NIX_CFLAGS_COMPILE = [ "-Wno-error=maybe-uninitialized" "-Wno-error=missing-braces" ];
 
-  makeFlags = [ "TOOLS=1" ];
+  makeFlags = [
+    "TOOLS=1"
+    "USE_LIBSDL=1"
+  ]
+  ++ lib.optionals stdenv.cc.isClang [ "CC=clang" "CXX=clang++" ]
+  ;
 
   dontWrapQtApps = true;
 
-  buildInputs = [ SDL2 SDL2_ttf alsaLib qtbase libXinerama ];
+  buildInputs =
+    [ SDL2 SDL2_ttf qtbase libXinerama ]
+    ++ lib.optional stdenv.isLinux alsaLib
+    ++ lib.optionals stdenv.isDarwin [ libpcap CoreAudioKit ForceFeedback ]
+    ;
   nativeBuildInputs = [ python pkgconfig which makeWrapper installShellFiles ];
 
   # by default MAME assumes that paths with stock resources
@@ -58,16 +70,18 @@ in mkDerivation {
     installManPage ${dest}/docs/man/*.1 ${dest}/docs/man/*.6
 
     mv artwork plugins samples ${dest}
-
+  '' + lib.optionalString stdenv.isLinux ''
     mkdir -p $out/share
     ln -s ${desktopItem}/share/applications $out/share
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Is a multi-purpose emulation framework";
     homepage = https://www.mamedev.org/;
     license = with licenses; [ bsd3 gpl2Plus ];
-    platforms = [ "x86_64-linux" "i686-linux" ];
+    platforms = platforms.unix;
+    # makefile needs fixes for install target
+    badPlatforms = [ "aarch64-linux" ];
     maintainers = with maintainers; [ gnidorah ];
   };
 }
diff --git a/pkgs/misc/emulators/mednafen/default.nix b/pkgs/misc/emulators/mednafen/default.nix
index 777c9f043f4..feedfc2603e 100644
--- a/pkgs/misc/emulators/mednafen/default.nix
+++ b/pkgs/misc/emulators/mednafen/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mednafen";
-  version = "1.22.2";
+  version = "1.24.1";
 
   src = fetchurl {
     url = "https://mednafen.github.io/releases/files/${pname}-${version}.tar.xz";
-    sha256 = "159gvzrf4as1fp74czzc14vamhd6s3hlnvwglfgdd5j6d6n37m7s";
+    sha256 = "1rszcy5lgfrw0f9b62sd69kgz1xziki3d55vpqh6k9jdmwzxyym4";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/misc/emulators/openmsx/default.nix b/pkgs/misc/emulators/openmsx/default.nix
index 6ac6f93750e..68b464f4d35 100644
--- a/pkgs/misc/emulators/openmsx/default.nix
+++ b/pkgs/misc/emulators/openmsx/default.nix
@@ -6,16 +6,17 @@
 , freetype, tcl, zlib
 }:
 
-stdenv.mkDerivation {
+with stdenv.lib;
+stdenv.mkDerivation rec {
 
   pname = "openmsx";
-  version = "git-2017-11-02";
+  version = "0.15.0";
 
   src = fetchFromGitHub {
     owner = "openMSX";
     repo = "openMSX";
-    rev = "eeb74206ae347a3b17e9b99f91f2b4682c5db22c";
-    sha256 = "170amj7k6wjhwx6psbplqljvckvhxxbv3aw72jrdxl1fb8zlnq3s";
+    rev = "RELEASE_0_15_0";
+    sha256 = "1lv5kdw0812mkf7k20z2djzk0pbs792xq2mibbnz9rfjf02whi7l";
     fetchSubmodules = true;
   };
 
@@ -35,13 +36,13 @@ stdenv.mkDerivation {
   # for providing support to Nixpkgs :)
   TCL_CONFIG="${tcl}/lib/";
 
-  meta = with stdenv.lib; {
+  meta = {
     description = "A MSX emulator";
     longDescription = ''
       OpenMSX is an emulator for the MSX home computer system. Its goal is
       to emulate all aspects of the MSX with 100% accuracy.
     '';
-    homepage = https://openmsx.org;
+    homepage = "https://openmsx.org";
     maintainers = with maintainers; [ AndersonTorres ];
     platforms = platforms.unix;
   };
diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix
index e055e5a15fa..3b935bb2b44 100644
--- a/pkgs/misc/emulators/retroarch/cores.nix
+++ b/pkgs/misc/emulators/retroarch/cores.nix
@@ -22,7 +22,7 @@ let
     makeFlags = [
       "platform=${{
         linux = "unix";
-        darwin = "unix";
+        darwin = "osx";
         windows = "win";
       }.${stdenv.hostPlatform.parsed.kernel.name} or stdenv.hostPlatform.parsed.kernel.name}"
       "ARCH=${{
@@ -786,7 +786,7 @@ in with stdenv.lib.licenses;
     SDL_CONFIG = "${SDL.dev}/bin/sdl-config";
     dontAddPrefix = true;
     configurePlatforms = [];
-    meta.badPlatforms = [ "aarch64-linux" ];
+    makeFlags = stdenv.lib.optional stdenv.hostPlatform.isAarch64 [ "platform=aarch64" ];
   };
 
   play = mkLibRetroCore {
diff --git a/pkgs/misc/emulators/rpcs3/default.nix b/pkgs/misc/emulators/rpcs3/default.nix
index 674222dc355..4e022b2868f 100644
--- a/pkgs/misc/emulators/rpcs3/default.nix
+++ b/pkgs/misc/emulators/rpcs3/default.nix
@@ -1,22 +1,22 @@
-{ stdenv, lib, fetchgit, cmake, pkgconfig, git
-, qt5, openal, glew, vulkan-loader, libpng, ffmpeg, libevdev, python27
+{ mkDerivation, lib, fetchgit, cmake, pkgconfig, git
+, qtbase, qtquickcontrols, openal, glew, vulkan-loader, libpng, ffmpeg, libevdev, python3
 , pulseaudioSupport ? true, libpulseaudio
 , waylandSupport ? true, wayland
 , alsaSupport ? true, alsaLib
 }:
 
 let
-  majorVersion = "0.0.6";
-  gitVersion = "8187-790962425"; # echo $(git rev-list HEAD --count)-$(git rev-parse --short HEAD)
+  majorVersion = "0.0.8";
+  gitVersion = "9300-341fdf7eb"; # echo $(git rev-list HEAD --count)-$(git rev-parse --short HEAD)
 in
-stdenv.mkDerivation {
+mkDerivation {
   pname = "rpcs3";
   version = "${majorVersion}-${gitVersion}";
 
   src = fetchgit {
     url = "https://github.com/RPCS3/rpcs3";
-    rev = "790962425cfb893529f72b3ef0dd1424fcc42973";
-    sha256 = "154ys29b9xdws3bp4b7rb3kc0h9hd49g2yf3z9268cdq8aclahaa";
+    rev = "341fdf7eb14763fd06e2eab9a4b2b8f1adf9fdbd";
+    sha256 = "1qx97zkkjl6bmv5rhfyjqynbz0v8h40b2wxqnl59g287wj0yk3y1";
   };
 
   preConfigure = ''
@@ -36,14 +36,14 @@ stdenv.mkDerivation {
   nativeBuildInputs = [ cmake pkgconfig git ];
 
   buildInputs = [
-    qt5.qtbase qt5.qtquickcontrols openal glew vulkan-loader libpng ffmpeg libevdev python27
+    qtbase qtquickcontrols openal glew vulkan-loader libpng ffmpeg libevdev python3
   ] ++ lib.optional pulseaudioSupport libpulseaudio
     ++ lib.optional alsaSupport alsaLib
     ++ lib.optional waylandSupport wayland;
 
   enableParallelBuilding = true;
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "PS3 emulator/debugger";
     homepage = "https://rpcs3.net/";
     maintainers = with maintainers; [ abbradar nocent ];
diff --git a/pkgs/misc/emulators/stella/default.nix b/pkgs/misc/emulators/stella/default.nix
index c2d98cda060..72dc48c1f4d 100644
--- a/pkgs/misc/emulators/stella/default.nix
+++ b/pkgs/misc/emulators/stella/default.nix
@@ -1,18 +1,22 @@
-{ stdenv, fetchurl, pkgconfig, SDL2 }:
+{ stdenv, fetchFromGitHub, pkgconfig, SDL2 }:
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
 
   pname = "stella";
-  version = "4.6.1";
+  version = "6.1.1";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/project/stella/stella/${version}/${pname}-${version}-src.tar.gz";
-    sha256 = "126jph21b70jlxapzmll8pq36i53lb304hbsiap25160vdqid4n1";
+  src = fetchFromGitHub {
+    owner = "stella-emu";
+    repo = "stella";
+    rev = version;
+    sha256 = "1iwhslrkq887v035j68lhblybww8r792515rp2m5qzmdgnjzsvbb";
   };
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ SDL2 ];
+  
+  enableParallelBuilding = true;
 
   meta = {
     description = "An open-source Atari 2600 VCS emulator";
@@ -23,7 +27,7 @@ stdenv.mkDerivation rec {
     maintained by Stephen Anthony.
     As of its 3.5 release, Stella is officially donationware. 
     '';
-    homepage = http://stella.sourceforge.net/;
+    homepage = "http://stella-emu.github.io/";
     license = licenses.gpl2;
     maintainers = [ maintainers.AndersonTorres ];
     platforms = platforms.linux;
diff --git a/pkgs/misc/emulators/vbam/default.nix b/pkgs/misc/emulators/vbam/default.nix
index e44b45dbb4b..2aae72b3e20 100644
--- a/pkgs/misc/emulators/vbam/default.nix
+++ b/pkgs/misc/emulators/vbam/default.nix
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
     description = "A merge of the original Visual Boy Advance forks";
     license = licenses.gpl2;
     maintainers = with maintainers; [ lassulus ];
-    homepage = http://vba-m.com/;
+    homepage = "https://vba-m.com/";
     platforms = stdenv.lib.platforms.linux;
     badPlatforms = [ "aarch64-linux" ];
   };
diff --git a/pkgs/misc/emulators/wine/sources.nix b/pkgs/misc/emulators/wine/sources.nix
index 06b3a950ba0..0e3eb2ce698 100644
--- a/pkgs/misc/emulators/wine/sources.nix
+++ b/pkgs/misc/emulators/wine/sources.nix
@@ -39,16 +39,16 @@ in rec {
 
   unstable = fetchurl rec {
     # NOTE: Don't forget to change the SHA256 for staging as well.
-    version = "5.0";
-    url = "https://dl.winehq.org/wine/source/5.0/wine-${version}.tar.xz";
-    sha256 = "1d0kcy338radq07hrnzcpc9lc9j2fvzjh37q673002x8d6x5058q";
+    version = "5.5";
+    url = "https://dl.winehq.org/wine/source/5.x/wine-${version}.tar.xz";
+    sha256 = "1z7mvl6fgk7cg8vmy157r8azcz89srnckbzvsc6cva7a1fdi7qx0";
     inherit (stable) mono gecko32 gecko64;
   };
 
   staging = fetchFromGitHub rec {
     # https://github.com/wine-staging/wine-staging/releases
     inherit (unstable) version;
-    sha256 = "054m2glvav29qnlgr3p36kahyv3kbxzba82djzqpc7cmsrin0d3f";
+    sha256 = "0wcj73xcxsk5897m5fg14cjir2md167m09jjjv9z9n6157bfr9fw";
     owner = "wine-staging";
     repo = "wine-staging";
     rev = "v${version}";
diff --git a/pkgs/misc/frescobaldi/default.nix b/pkgs/misc/frescobaldi/default.nix
index abf4970c616..830d5bea36a 100644
--- a/pkgs/misc/frescobaldi/default.nix
+++ b/pkgs/misc/frescobaldi/default.nix
@@ -1,7 +1,7 @@
 { lib, buildPythonApplication, fetchFromGitHub, python3Packages, pyqtwebengine, lilypond }:
 
 buildPythonApplication rec {
-  name = "frescobaldi-${version}";
+  pname = "frescobaldi";
   version = "3.1.1";
 
   src = fetchFromGitHub {
@@ -28,7 +28,7 @@ buildPythonApplication rec {
   ];
 
   meta = with lib; {
-    homepage = http://frescobaldi.org/;
+    homepage = "https://frescobaldi.org/";
     description = ''Frescobaldi is a LilyPond sheet music text editor'';
     longDescription = ''
       Powerful text editor with syntax highlighting and automatic completion, 
diff --git a/pkgs/misc/rkdeveloptool/default.nix b/pkgs/misc/rkdeveloptool/default.nix
index e877629bcb0..2e3b456cc9c 100644
--- a/pkgs/misc/rkdeveloptool/default.nix
+++ b/pkgs/misc/rkdeveloptool/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "rkdeveloptool";
-  version = "1.3";
+  version = "unstable-2019-07-01";
 
   src = fetchFromGitHub {
     owner = "rockchip-linux";
     repo = "rkdeveloptool";
-    rev = "081d237ad5bf8f03170c9d60bd94ceefa0352aaf";
-    sha256 = "05hh7j3xgb8l1k1v2lis3nvlc0gp87ihzg6jci7m5lkkm5qgv3ji";
+    rev = "6e92ebcf8b1812da02663494a68972f956e490d3";
+    sha256 = "0zwrkqfxd671iy69v3q0844gfdpm1yk51i9qh2rqc969bd8glxga";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/misc/screensavers/xscreensaver/default.nix b/pkgs/misc/screensavers/xscreensaver/default.nix
index 1937874a49c..1dd09852d27 100644
--- a/pkgs/misc/screensavers/xscreensaver/default.nix
+++ b/pkgs/misc/screensavers/xscreensaver/default.nix
@@ -5,12 +5,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "5.43";
+  version = "5.44";
   pname = "xscreensaver";
 
   src = fetchurl {
     url = "https://www.jwz.org/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "1571pj1a9998sq14y9366s2rw9wd2kq3l3dvvsk610vyd0fki3qm";
+    sha256 = "15bv05vpfjwsrqbazrjmm382jd7vvw0mp6y9vasn6wvxzjf0in3k";
   };
 
   buildInputs =
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
   ;
 
   meta = {
-    homepage = https://www.jwz.org/xscreensaver/;
+    homepage = "https://www.jwz.org/xscreensaver/";
     description = "A set of screensavers";
     maintainers = with stdenv.lib.maintainers; [ raskin ];
     platforms = stdenv.lib.platforms.unix; # Once had cygwin problems
diff --git a/pkgs/misc/solfege/default.nix b/pkgs/misc/solfege/default.nix
index 7ca9843e2e3..08397c8406f 100644
--- a/pkgs/misc/solfege/default.nix
+++ b/pkgs/misc/solfege/default.nix
@@ -1,12 +1,10 @@
 { stdenv, fetchurl, pkgconfig, pythonPackages, gettext, texinfo
 , ghostscript, librsvg, gdk-pixbuf, txt2man, timidity, mpg123
 , alsaUtils, vorbis-tools, csound, lilypond
-, makeWrapper
+, wrapGAppsHook
 }:
 
-let
-  inherit (pythonPackages) python pygtk;
-in stdenv.mkDerivation rec {
+pythonPackages.buildPythonApplication rec {
   name = "solfege-3.22.2";
 
   src = fetchurl {
@@ -14,10 +12,9 @@ in stdenv.mkDerivation rec {
     sha256 = "1r4g93ka7i8jh5glii5nza0zq0wy4sw0gfzpvkcrhj9yr1h0jsp4";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ python pygtk gettext texinfo
-    ghostscript librsvg gdk-pixbuf txt2man makeWrapper
-  ];
+  nativeBuildInputs = [ gettext texinfo pkgconfig wrapGAppsHook ];
+  buildInputs = [ librsvg ];
+  propagatedBuildInputs = [ pythonPackages.pygtk ];
 
   preBuild = ''
     sed -i -e 's|wav_player=.*|wav_player=${alsaUtils}/bin/aplay|' \
@@ -29,12 +26,9 @@ in stdenv.mkDerivation rec {
            default.config
   '';
 
-  postInstall = ''
-      set -x
-      wrapProgram "$out/bin/solfege" \
-          --prefix PYTHONPATH ':' "$PYTHONPATH" \
-          --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE"
-  '';
+  format = "other";
+
+  enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
     description = "Ear training program";
diff --git a/pkgs/misc/tmux-plugins/default.nix b/pkgs/misc/tmux-plugins/default.nix
index 0d10b44ab1e..23c513ea175 100644
--- a/pkgs/misc/tmux-plugins/default.nix
+++ b/pkgs/misc/tmux-plugins/default.nix
@@ -1,6 +1,5 @@
-{ fetchgit
+{ lib
 , fetchFromGitHub
-, lib
 , pkgs
 , reattach-to-user-namespace
 , stdenv
@@ -30,7 +29,7 @@ let
     ...
   }:
     addRtp "${rtpPath}/${path}" rtpFilePath a (stdenv.mkDerivation (a // {
-      name = namePrefix + pluginName;
+      pname = namePrefix + pluginName;
 
       inherit pluginName unpackPhase configurePhase buildPhase addonInfo preInstall postInstall;
 
@@ -56,54 +55,66 @@ in rec {
 
   battery = mkDerivation {
     pluginName = "battery";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-battery";
-      rev = "09be78c35ee84f858f724442b94ad045ade23eb0";
-      sha256 = "0gm6qiay0k5b3yzrabfmh4inyh9r6rfhja2l3r4cixcvc8sgvh8l";
+    version = "unstable-2019-07-04";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-battery";
+      rev = "f8b8e8451990365e0c98c38c184962e4f83b793b";
+      sha256 = "1bhdzsx3kdjqjmm1q4j8937lrpkzf71irr3fqhdbddsghwrrmwim";
     };
   };
 
   continuum = mkDerivation {
     pluginName = "continuum";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-continuum";
-      rev = "90f4a00c41de094864dd4e29231253bcd80d4409";
-      sha256 = "1hviqz62mnq5h4vgcy9bl5004q18yz5b90bnih0ibsna877x3nbc";
+    version = "unstable-2018-02-23";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-continuum";
+      rev = "1531b3770a7cf7373d15fedd239c5331b99342d1";
+      sha256 = "1w3f7gzvv1k25yfr6d1snr2z88p8f87cahrbaslmyphdxpy0fa4m";
     };
     dependencies = [ resurrect ];
   };
 
   copycat = mkDerivation {
     pluginName = "copycat";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-copycat";
-      rev = "6f9b9cd2d93872cef60e3ea7f7ae89598569ed25";
-      sha256 = "12dgn5wnzrhd6sqa64w875ld3lrrny8xvdq6b6lzxyain9q49mrf";
+    version = "unstable-2020-01-09";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-copycat";
+      rev = "77ca3aab2aed8ede3e2b941079b1c92dd221cf5f";
+      sha256 = "1bchwzhai8k5rk32n4lrmh56rw944jqxr8imjk74hyaa7bbn81ds";
     };
   };
 
   cpu = mkDerivation {
     pluginName = "cpu";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-cpu";
-      rev = "12f7a74e25bf59701456e2c0d98b39bb19ec7039";
-      sha256 = "0qxn8ngg297980lj6w8ih2m8m8bxxdbcz5hsjmlia92h5rdkm5kl";
+    version = "unstable-2020-04-05";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-cpu";
+      rev = "8858050756e1fc3c081d37894b441f05ea893a67";
+      sha256 = "1bydzrnd9y5y46hjr844p4ylx2dpijn6pv3w94yyvwbyswmirhff";
     };
   };
 
-  ctrlw = mkDerivation {
+  ctrlw = mkDerivation rec {
     pluginName = "ctrlw";
-    src = fetchgit {
-      url = "https://github.com/eraserhd/tmux-ctrlw";
-      rev = "b456977125c640cd587b786c6a79cb5c7b0f900d";
+    version = "0.1.1";
+    src = fetchFromGitHub {
+      owner = "eraserhd";
+      repo = "tmux-ctrlw";
+      rev = "v${version}";
       sha256 = "1kv5pqfjczd6z7i9jf6j5xmcai50l9bn5p2p1w1l5fi6cj8cz1k1";
     };
   };
 
   fpp = mkDerivation {
     pluginName = "fpp";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-fpp";
+    version = "unstable-2016-03-08";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-fpp";
       rev = "ca125d5a9c80bb156ac114ac3f3d5951a795c80e";
       sha256 = "1b89s6mfzifi7s5iwf22w7niddpq28w48nmqqy00dv38z4yga5ws";
     };
@@ -116,18 +127,22 @@ in rec {
   fzf-tmux-url = mkDerivation {
     pluginName = "fzf-tmux-url";
     rtpFilePath = "fzf-url.tmux";
-    src = fetchgit {
-      url = "https://github.com/wfxr/tmux-fzf-url";
-      rev = "ecd518eec1067234598c01e655b048ff9d06ef2f";
-      sha256 = "0png8hdv91y2nivq5vdii2192mb2qcrkwwn69lzxrdnbfa27qrgv";
+    version = "unstable-2019-12-02";
+    src = fetchFromGitHub {
+      owner = "wfxr";
+      repo = "tmux-fzf-url";
+      rev = "2baa410bf7a0f6ceb62a83770baf90d570406ac0";
+      sha256 = "0rjzzlmxgjrr8g19bg2idcqr9ny07mrq2s39vndg24n0m7znh3fz";
     };
   };
 
   gruvbox = mkDerivation {
     pluginName = "gruvbox";
     rtpFilePath = "gruvbox-tpm.tmux";
-    src = fetchgit {
-      url = "https://github.com/egel/tmux-gruvbox";
+    version = "unstable-2019-05-05";
+    src = fetchFromGitHub {
+      owner = "egel";
+      repo = "tmux-gruvbox";
       rev = "6149fd8b5d6924925b4d5aa6935039780e94f3d6";
       sha256 = "1ykr4yardavd0x7yfrnshd4b0gi8p31pji7i79ib0nss134zncpb";
     };
@@ -135,26 +150,32 @@ in rec {
 
   logging = mkDerivation {
     pluginName = "logging";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-logging";
-      rev = "b2706119cd587230beae02980d3d7fa2d5afebe9";
-      sha256 = "1w1ymscfbz87lypaxgjdva1rg7jw2jyf7nnfgyngghw9m1l2xk2c";
+    version = "unstable-2019-04-19";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-logging";
+      rev = "b085ad423b5d59a2c8b8d71772352e7028b8e1d0";
+      sha256 = "0p0sawysalhi8k2a5hdxniqx6kb24kd8rnvfzkjqigzid5ik37js";
     };
   };
 
   net-speed = mkDerivation {
     pluginName = "net-speed";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-net-speed";
-      rev = "536d2bdd053a3bdfcc5cf7680c0dba76127c95ca";
-      sha256 = "1bly5f40dgiym378jkfwm7qag9xl6qvziqiqnj65yblqd5py325z";
+    version = "unstable-2018-12-02";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-net-speed";
+      rev = "58abb615971cb617821e2e7e41c660334f55a92d";
+      sha256 = "1aj06gdhzcxsydjzf21n9kyxigwf38kh2rg8hh7gnjk260ydqlrc";
     };
   };
 
   maildir-counter = mkDerivation {
     pluginName = "maildir-counter";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-maildir-counter";
+    version = "unstable-2016-11-25";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-maildir-counter";
       rev = "9415f0207e71e37cbd870c9443426dbea6da78b9";
       sha256 = "0dwvqhiv9bjwr01hsi5c57n55jyv5ha5m5q1aqgglf4wyhbnfms4";
     };
@@ -162,8 +183,10 @@ in rec {
 
   online-status = mkDerivation {
     pluginName = "online-status";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-online-status";
+    version = "unstable-2018-11-30";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-online-status";
       rev = "ea86704ced8a20f4a431116aa43f57edcf5a6312";
       sha256 = "1hy3vg8v2sir865ylpm2r4ip1zgd4wlrf24jbwh16m23qdcvc19r";
     };
@@ -171,28 +194,33 @@ in rec {
 
   open = mkDerivation {
     pluginName = "open";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-open";
-      rev = "f99d3189c445188eae5fa9bfeabc95df16deca92";
-      sha256 = "13q3zd5jv7akkjjwhgimmfylrvalxdn54fnpfb14g6xam6h8808m";
+    version = "unstable-2019-12-02";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-open";
+      rev = "cedb4584908bd8458fadc8d3e64101d3cbb48d46";
+      sha256 = "10s0xdhmg0dhpj13ybcq72pw3xgb2dq5v5h2mwidzqyh9g17wndh";
     };
   };
 
   pain-control = mkDerivation {
     pluginName = "pain-control";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-pain-control";
-      rev = "731667692da46d51a6a9dffb4c43384a5d68ff28";
-      sha256 = "1ihpl5wgjmhfgcrasgnydd7vpsar865sx2whra19gpfm4bglmdzl";
+    version = "unstable-2020-02-18";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-pain-control";
+      rev = "2db63de3b08fc64831d833240749133cecb67d92";
+      sha256 = "0w7a6n4n86ysiqcqj12j2hg9r5fznvbp3dz8pzas9q1k3avlk0zk";
     };
   };
 
-  plumb = mkDerivation {
+  plumb = mkDerivation rec {
     pluginName = "plumb";
+    version = "0.1.1";
     src = fetchFromGitHub {
       owner = "eraserhd";
       repo = "tmux-plumb";
-      rev = "v0.1.1";
+      rev = "v${version}";
       sha256 = "1c6k4fdl0az9811r6k164mgd4w5la75xr6x7nabmy046xc0z5i2r";
     };
     postInstall = ''
@@ -202,26 +230,32 @@ in rec {
 
   prefix-highlight = mkDerivation {
     pluginName = "prefix-highlight";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-prefix-highlight";
-      rev = "34f7125ae46e5123bedad03e08027332d1186186";
-      sha256 = "16z8sm8pifg1m9lmv0z50fb0ws9mk5zqs7a1ddl2bfwkqi7yc0c0";
+    version = "unstable-2020-03-26";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-prefix-highlight";
+      rev = "1db6e735aad54503b076391d791c56e1af213917";
+      sha256 = "0ws9blzg00zhz548m51cm6zbrkqlz7jazkr5029vka1f6qk36x0g";
     };
   };
 
   resurrect = mkDerivation {
     pluginName = "resurrect";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-resurrect";
-      rev = "7c77c70483b818d331e46c4cf64c716ded09a152";
-      sha256 = "08gjxwdmfy16xpgi87rp9dj5338imqsy392pixf7xcnr05413ap1";
+    version = "unstable-2020-03-21";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-resurrect";
+      rev = "327c0481ad20c429b4e692e092659f8b3346b08f";
+      sha256 = "0nxfqazww36wwv49dzd39kq4jfls20834hf1458sf5pvmv5cmbyw";
     };
   };
 
   sensible = mkDerivation {
     pluginName = "sensible";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-sensible";
+    version = "unstable-2017-09-05";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-sensible";
       rev = "e91b178ff832b7bcbbf4d99d9f467f63fd1b76b5";
       sha256 = "1z8dfbwblrbmb8sgb0k8h1q0dvfdz7gw57las8nwd5gj6ss1jyvx";
     };
@@ -232,8 +266,10 @@ in rec {
 
   sessionist = mkDerivation {
     pluginName = "sessionist";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-sessionist";
+    version = "unstable-2017-12-03";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-sessionist";
       rev = "09ec86be38eae98ffc27bd0dde605ed10ae0dc89";
       sha256 = "030q2mmj8akbc26jnqn8n7fckg1025p0ildx4wr401b6p1snnlw4";
     };
@@ -241,15 +277,18 @@ in rec {
 
   sidebar = mkDerivation {
     pluginName = "sidebar";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-sidebar";
-      rev = "23014524cab53f8d36373983500fe05a527a444d";
-      sha256 = "1w363587isdip1r81h0vkp5163lpa83lvasg8l04h43sbip2y6i8";
+    version = "unstable-2018-11-30";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-sidebar";
+      rev = "aacbdb45bc5ab69db448a72de4155d0b8dbac677";
+      sha256 = "1bp90zbv19kbbiik0bgb893ybss1jqsnk3353a631993xjwsih7c";
     };
   };
 
   sysstat = mkDerivation {
     pluginName = "sysstat";
+    version = "unstable-2017-12-12";
     src = fetchFromGitHub {
       owner = "samoshkin";
       repo = "tmux-plugin-sysstat";
@@ -260,6 +299,7 @@ in rec {
 
   tmux-colors-solarized = mkDerivation {
     pluginName = "tmuxcolors";
+    version = "unstable-2019-07-14";
     src = fetchFromGitHub {
       owner = "seebi";
       repo = "tmux-colors-solarized";
@@ -270,8 +310,10 @@ in rec {
 
   urlview = mkDerivation {
     pluginName = "urlview";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-urlview";
+    version = "unstable-2016-01-06";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-urlview";
       rev = "b84c876cffdd22990b4ab51247e795cbd7813d53";
       sha256 = "1jp4jq57cn116b3i34v6yy69izd8s6mp2ijr260cw86g0470k0fn";
     };
@@ -284,19 +326,23 @@ in rec {
   vim-tmux-navigator = mkDerivation {
     pluginName = "vim-tmux-navigator";
     rtpFilePath = "vim-tmux-navigator.tmux";
-    src = fetchgit {
-      url = "https://github.com/christoomey/vim-tmux-navigator";
-      rev = "4e1a877f51a17a961b8c2a285ee80aebf05ccf42";
-      sha256 = "1b8sgbzl4pcpaabqk254n97mjz767ganrmqbsr6rqzz3j9a3s1fv";
+    version = "unstable-2019-12-10";
+    src = fetchFromGitHub {
+      owner = "christoomey";
+      repo = "vim-tmux-navigator";
+      rev = "8fdf78292bb3aed1c9de880be7e03efdbf23d306";
+      sha256 = "0y92na4dcfcsj5zbs3m7y6csl3sd46a9968id78cdn9cgg8iwzac";
     };
   };
 
   yank = mkDerivation {
     pluginName = "yank";
-    src = fetchgit {
-      url = "https://github.com/tmux-plugins/tmux-yank";
-      rev = "feb9611b7d1c323ca54cd8a5111a53e3e8265b59";
-      sha256 = "1ywbm09jfh6cm2m6gracmdc3pp5p2dwraalbhfaafqaydjr22qc3";
+    version = "unstable-2019-12-02";
+    src = fetchFromGitHub {
+      owner = "tmux-plugins";
+      repo = "tmux-yank";
+      rev = "648005db64d9bf3c4650eff694ecb6cf3e42b0c8";
+      sha256 = "1zg9k8yk1iw01vl8m44w4sv20lln4l0lq9dafc09lxmgxm9dllj4";
     };
   };
 
diff --git a/pkgs/misc/tpm2-pkcs11/default.nix b/pkgs/misc/tpm2-pkcs11/default.nix
index 9e3be1101a6..a089488b0e0 100644
--- a/pkgs/misc/tpm2-pkcs11/default.nix
+++ b/pkgs/misc/tpm2-pkcs11/default.nix
@@ -6,13 +6,13 @@
 
 stdenv.mkDerivation rec {
   pname = "tpm2-pkcs11";
-  version = "1.1.0";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "tpm2-software";
     repo = pname;
     rev = version;
-    sha256 = "0gqbbxh1y2vcznxw96xn1wpcvg613zzzrbbfrqbw3p7spbn65yfq";
+    sha256 = "0ydd88jc4pyf1v7008h2gf0napv6xpw4jn5w87slj9fphjdkwjiz";
   };
 
   patches = lib.singleton (
diff --git a/pkgs/misc/vim-plugins/aliases.nix b/pkgs/misc/vim-plugins/aliases.nix
index cfdd629369c..4cfb6ccd372 100644
--- a/pkgs/misc/vim-plugins/aliases.nix
+++ b/pkgs/misc/vim-plugins/aliases.nix
@@ -30,12 +30,17 @@ let
                              (removeRecurseForDerivations
                               (checkInPkgs n alias)))
                      aliases;
-in
 
-mapAliases {
+  deprecations = lib.mapAttrs (old: info:
+    throw "${old} was renamed to ${info.new} on ${info.date}. Please update to ${info.new}."
+  ) (builtins.fromJSON (builtins.readFile ./deprecated.json));
+
+in
+mapAliases ({
   airline             = vim-airline;
   alternative         = a-vim; # backwards compat, added 2014-10-21
   bats                = bats-vim;
+  BufOnly             = BufOnly-vim;
   calendar            = calendar-vim;
   coffee-script       = vim-coffee-script;
   coffeeScript        = vim-coffee-script; # backwards compat, added 2014-10-18
@@ -67,7 +72,7 @@ mapAliases {
   ghc-mod-vim         = ghcmod-vim;
   ghcmod              = ghcmod-vim;
   goyo                = goyo-vim;
-  Gist                = gist-vim;
+  Gist                = vim-gist;
   gitgutter           = vim-gitgutter;
   gundo               = gundo-vim;
   Gundo               = gundo-vim; # backwards compat, added 2015-10-03
@@ -133,7 +138,6 @@ mapAliases {
   wombat256           = wombat256-vim; # backwards compat, added 2015-7-8
   yankring            = YankRing-vim;
   Yankring            = YankRing-vim;
-  YouCompleteMe       = youcompleteme;
   xterm-color-table   = xterm-color-table-vim;
   zeavim              = zeavim-vim;
-}
+} // deprecations)
diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix
index 20cbbf275c3..e6bca9484a2 100644
--- a/pkgs/misc/vim-plugins/default.nix
+++ b/pkgs/misc/vim-plugins/default.nix
@@ -11,7 +11,6 @@ let
 
   # TL;DR
   # * Add your plugin to ./vim-plugin-names
-  # * sort -udf ./vim-plugin-names > sorted && mv sorted vim-plugin-names
   # * run ./update.py
   #
   # If additional modifications to the build process are required,
diff --git a/pkgs/misc/vim-plugins/deprecated.json b/pkgs/misc/vim-plugins/deprecated.json
new file mode 100644
index 00000000000..2af94f5df3d
--- /dev/null
+++ b/pkgs/misc/vim-plugins/deprecated.json
@@ -0,0 +1,18 @@
+{
+    "gist-vim": {
+        "date": "2020-03-27",
+        "new": "vim-gist"
+    },
+    "vim-jade": {
+        "date": "2020-03-27",
+        "new": "vim-pug"
+    },
+    "vundle": {
+        "date": "2020-03-27",
+        "new": "Vundle-vim"
+    },
+    "youcompleteme": {
+        "date": "2020-03-27",
+        "new": "YouCompleteMe"
+    }
+}
diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix
index 06667caf5c8..68d2aae23ce 100644
--- a/pkgs/misc/vim-plugins/generated.nix
+++ b/pkgs/misc/vim-plugins/generated.nix
@@ -63,7 +63,7 @@ let
     pname = "ale";
     version = "2020-03-11";
     src = fetchFromGitHub {
-      owner = "w0rp";
+      owner = "dense-analysis";
       repo = "ale";
       rev = "bbe5153fcb36dec9860ced33ae8ff0b5d76ac02a";
       sha256 = "1xvmh66lgii98z6f4lk1mjs73ysrvs55xdlcmf224k3as822jmw0";
@@ -125,6 +125,17 @@ let
     };
   };
 
+  ats-vim = buildVimPluginFrom2Nix {
+    pname = "ats-vim";
+    version = "2020-03-03";
+    src = fetchFromGitHub {
+      owner = "vmchale";
+      repo = "ats-vim";
+      rev = "045fa53f1e0699e980c5c7cd85ecf237ae527ff0";
+      sha256 = "1rpqy40kw0cn2h02ly71syvwz5j77xfmrs4mijkn7k0dxgamhy5s";
+    };
+  };
+
   auto-git-diff = buildVimPluginFrom2Nix {
     pname = "auto-git-diff";
     version = "2019-09-23";
@@ -224,6 +235,17 @@ let
     };
   };
 
+  BufOnly-vim = buildVimPluginFrom2Nix {
+    pname = "BufOnly-vim";
+    version = "2010-10-18";
+    src = fetchFromGitHub {
+      owner = "vim-scripts";
+      repo = "BufOnly.vim";
+      rev = "43dd92303979bdb234a3cb2f5662847f7a3affe7";
+      sha256 = "1gvpaqvvxjma0dl1zai68bpv42608api4054appwkw9pgczkkcdl";
+    };
+  };
+
   calendar-vim = buildVimPluginFrom2Nix {
     pname = "calendar-vim";
     version = "2020-02-14";
@@ -283,7 +305,7 @@ let
     pname = "clang_complete";
     version = "2018-09-19";
     src = fetchFromGitHub {
-      owner = "Rip-Rip";
+      owner = "xavierd";
       repo = "clang_complete";
       rev = "0b98d7533ad967aac3fc4c1a5b0508dafa8a676f";
       sha256 = "04mdhc1kbv66blkn6qn98iyj659dac4z49nmpf3anglz8dgcxjgc";
@@ -367,6 +389,17 @@ let
     };
   };
 
+  coc-fzf = buildVimPluginFrom2Nix {
+    pname = "coc-fzf";
+    version = "2020-03-06";
+    src = fetchFromGitHub {
+      owner = "antoinemadec";
+      repo = "coc-fzf";
+      rev = "ca394b48ac9c78ce95d6cdf3807927a7b6bcfcbe";
+      sha256 = "1nsqdp2zma7rlzynm58z43vk5hyrcz8kn7ak32979p4a3fvdyj5c";
+    };
+  };
+
   coc-highlight = buildVimPluginFrom2Nix {
     pname = "coc-highlight";
     version = "2019-10-18";
@@ -611,12 +644,12 @@ let
 
   coc-tsserver = buildVimPluginFrom2Nix {
     pname = "coc-tsserver";
-    version = "2020-03-09";
+    version = "2020-03-21";
     src = fetchFromGitHub {
       owner = "neoclide";
       repo = "coc-tsserver";
-      rev = "dae0cc36b0245a601d4431ae8dd2319eaa919058";
-      sha256 = "1559c0hwyknz1j6vbigywg1fjads4wf8by59z0sri6aah9q77q2z";
+      rev = "54bea1ec1ab44802a155f876a4d1cc2c44b2bc42";
+      sha256 = "0npjc7c3x9mdqc6asav1f2wwv4p6lb5hk7c1p9b7m3vjg21w0k22";
     };
   };
 
@@ -889,7 +922,7 @@ let
     pname = "denite-extra";
     version = "2019-03-29";
     src = fetchFromGitHub {
-      owner = "chemzqm";
+      owner = "neoclide";
       repo = "denite-extra";
       rev = "af18257544027ce89269dba70c12aba1f5b9e23c";
       sha256 = "0bmq9yhylfd3v6bfwvakw3pbsz5kk8wlmmql0yllqayp6410w25a";
@@ -900,7 +933,7 @@ let
     pname = "denite-git";
     version = "2020-03-02";
     src = fetchFromGitHub {
-      owner = "chemzqm";
+      owner = "neoclide";
       repo = "denite-git";
       rev = "88b5323a6fc0ace197eed5205215d80f3b613f91";
       sha256 = "0b687i64hr8hll7pv7r1xz906b46cl2q62zm18ipikhkpva6iv13";
@@ -909,12 +942,12 @@ let
 
   denite-nvim = buildVimPluginFrom2Nix {
     pname = "denite-nvim";
-    version = "2020-03-18";
+    version = "2020-03-21";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "denite.nvim";
-      rev = "a184e87b7df5e8f35aee115153b37f178e47718c";
-      sha256 = "1na637k62sgpqx69r6j5prad4qdc9dp3psq75jhqyvhm3yq2432w";
+      rev = "c3206a06508a197650ee4e1d85da39ff24e3a56b";
+      sha256 = "1yy6j5zpja8jr1j8sghwc1l0fkb47r8cvv36ckf75x9x5gpylb5m";
     };
   };
 
@@ -933,7 +966,7 @@ let
     pname = "deoplete-clang";
     version = "2019-11-10";
     src = fetchFromGitHub {
-      owner = "zchee";
+      owner = "deoplete-plugins";
       repo = "deoplete-clang";
       rev = "2ea262e98edcb66e828f9077fcc844100320eb63";
       sha256 = "1wvk61f8ph2vpl6llzmir3qs3zwaw3lrphs16d1j7ljkdl3bk49k";
@@ -989,7 +1022,7 @@ let
     pname = "deoplete-go";
     version = "2020-01-01";
     src = fetchFromGitHub {
-      owner = "zchee";
+      owner = "deoplete-plugins";
       repo = "deoplete-go";
       rev = "4f1ccd2ed70211fd025d052ec725c0b835bea487";
       sha256 = "0zmx98kz6pxfpakizr8xm1nrv1rjr0frz19pkik29mk6aj2b2l08";
@@ -1121,12 +1154,12 @@ let
 
   deoplete-nvim = buildVimPluginFrom2Nix {
     pname = "deoplete-nvim";
-    version = "2020-03-18";
+    version = "2020-03-21";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "deoplete.nvim";
-      rev = "db7d2dc5f416634c9917054bcd6e1e5d925bb4d7";
-      sha256 = "1d34zy81j47icsrnbxpp4x9f35ihrmd0lnd0vphi216kdlkxk37b";
+      rev = "1439c621dc94016c504e1732ce8270081a42768f";
+      sha256 = "1c8qx839zmf52cfazlbbnlhxw6cvnsr3ds0rclawgycbl4s1qy8f";
     };
   };
 
@@ -1397,17 +1430,6 @@ let
     };
   };
 
-  gist-vim = buildVimPluginFrom2Nix {
-    pname = "gist-vim";
-    version = "2020-01-29";
-    src = fetchFromGitHub {
-      owner = "mattn";
-      repo = "gist-vim";
-      rev = "2158eceb210b0a354bc17aa4144554e5d8bb6c79";
-      sha256 = "1dz33c63q7gghz35hyrvbshqw20faccs7bvxlda5w70mkbz9h9c4";
-    };
-  };
-
   gitignore-vim = buildVimPluginFrom2Nix {
     pname = "gitignore-vim";
     version = "2014-03-16";
@@ -1452,6 +1474,17 @@ let
     };
   };
 
+  gruvbox-community = buildVimPluginFrom2Nix {
+    pname = "gruvbox-community";
+    version = "2020-02-24";
+    src = fetchFromGitHub {
+      owner = "gruvbox-community";
+      repo = "gruvbox";
+      rev = "f5711c15480b83378bde13306fa997057c0c81cd";
+      sha256 = "0vx289a7av31dxm58c6kmfdnsrwnq1rzj5rwci2pqjdac8ds2qm0";
+    };
+  };
+
   gundo-vim = buildVimPluginFrom2Nix {
     pname = "gundo-vim";
     version = "2020-01-15";
@@ -1816,6 +1849,17 @@ let
     };
   };
 
+  lightline-bufferline = buildVimPluginFrom2Nix {
+    pname = "lightline-bufferline";
+    version = "2020-02-14";
+    src = fetchFromGitHub {
+      owner = "mengelbrecht";
+      repo = "lightline-bufferline";
+      rev = "17683bc5802de7f295f2583a15461e2bc662f98b";
+      sha256 = "1rlamxwk2gm9pyxl9vym9w6rhgimzqa2hjghy3qdqwvif6w8ir6l";
+    };
+  };
+
   lightline-vim = buildVimPluginFrom2Nix {
     pname = "lightline-vim";
     version = "2020-03-16";
@@ -2027,12 +2071,12 @@ let
 
   neoformat = buildVimPluginFrom2Nix {
     pname = "neoformat";
-    version = "2020-03-03";
+    version = "2020-03-20";
     src = fetchFromGitHub {
       owner = "sbdchd";
       repo = "neoformat";
-      rev = "69140aedb7da5a5a0b25b82e7f756f91d08170ea";
-      sha256 = "132ksy20rb01xm18zwwl3lv5zapfhfvaf5zz6md8dnr5hvkvvrgx";
+      rev = "d02b169e70bd6d2b2365bf6cda721967616a30bf";
+      sha256 = "1cya26wfqc7l7dqy854m4kwrq3w66knmn2cgviqh9cnsjzhwxs0d";
     };
   };
 
@@ -2150,7 +2194,7 @@ let
     pname = "nerdcommenter";
     version = "2020-02-19";
     src = fetchFromGitHub {
-      owner = "scrooloose";
+      owner = "preservim";
       repo = "nerdcommenter";
       rev = "c62e618a1ab5a50a4028e3296500ba29d9b033d8";
       sha256 = "0w4bxj423dxxkcxnfmipf8x5jfm058rq4g3m98wzcz5zbambv3qs";
@@ -2161,7 +2205,7 @@ let
     pname = "nerdtree";
     version = "2020-02-20";
     src = fetchFromGitHub {
-      owner = "scrooloose";
+      owner = "preservim";
       repo = "nerdtree";
       rev = "e67324fdea7a192c7ce1b4c6b3c3b9f82f11eee7";
       sha256 = "0y7hd69k0i21cqgs11n80ljv6cl0gfcjjwa0dvdywpd8mmn1ad4k";
@@ -2258,12 +2302,12 @@ let
 
   nvim-lsp = buildVimPluginFrom2Nix {
     pname = "nvim-lsp";
-    version = "2020-03-19";
+    version = "2020-03-21";
     src = fetchFromGitHub {
       owner = "neovim";
       repo = "nvim-lsp";
-      rev = "6d5e81c71bb90568b3bf9ca061980b9b30cdbc15";
-      sha256 = "1va480pw7nk650bmh4z7rvr2a5sqd4q86y19341p6mj12p2r2fcv";
+      rev = "4fe58ec4e1fa3500c7ef98464174bf6c4cb8ce67";
+      sha256 = "1xyqbr0f2pgvbbk0cpg92pswavff910hy8rjkm05grhqw43vkzcg";
     };
   };
 
@@ -2447,7 +2491,7 @@ let
     pname = "purescript-vim";
     version = "2018-12-10";
     src = fetchFromGitHub {
-      owner = "raichoo";
+      owner = "purescript-contrib";
       repo = "purescript-vim";
       rev = "67ca4dc4a0291e5d8c8da48bffc0f3d2c9739e7f";
       sha256 = "1insh39hzbynr6qxb215qxhpifl5m8i5i0d09a3b6v679i7s11i8";
@@ -2590,7 +2634,7 @@ let
     pname = "riv-vim";
     version = "2020-02-17";
     src = fetchFromGitHub {
-      owner = "Rykka";
+      owner = "gu-fan";
       repo = "riv.vim";
       rev = "d52844691ca2f139e4b634db65aa49c57a0fc2b3";
       sha256 = "0s4jvqwlnmmh2zw9v9rlwynwx44ypdrzhhyfb20sippxg9g6z0c5";
@@ -2696,6 +2740,17 @@ let
     };
   };
 
+  SimpylFold = buildVimPluginFrom2Nix {
+    pname = "SimpylFold";
+    version = "2017-06-13";
+    src = fetchFromGitHub {
+      owner = "tmhedberg";
+      repo = "SimpylFold";
+      rev = "aa0371d9d708388f3ba385ccc67a7504586a20d9";
+      sha256 = "1gjv78x2cgh79a04l411kdhkm53f93czs54p07kadpa9659z93ss";
+    };
+  };
+
   sky-color-clock-vim = buildVimPluginFrom2Nix {
     pname = "sky-color-clock-vim";
     version = "2018-11-03";
@@ -2795,6 +2850,17 @@ let
     };
   };
 
+  splitjoin-vim = buildVimPluginFrom2Nix {
+    pname = "splitjoin-vim";
+    version = "2020-03-10";
+    src = fetchFromGitHub {
+      owner = "AndrewRadev";
+      repo = "splitjoin.vim";
+      rev = "fef5079e9dee55c2cf879ce2a4412fb5dcb40808";
+      sha256 = "1v6cm86klzbmzx2grzxprpxci3001yjfbnwdd1891rfggjlm4wj9";
+    };
+  };
+
   starsearch-vim = buildVimPluginFrom2Nix {
     pname = "starsearch-vim";
     version = "2014-09-21";
@@ -2821,7 +2887,7 @@ let
     pname = "sved";
     version = "2019-01-25";
     src = fetchFromGitHub {
-      owner = "peder2tm";
+      owner = "peterbjorgensen";
       repo = "sved";
       rev = "3362db72447e8ac812c7299c15ecfc9f41341713";
       sha256 = "1r2nv069d6r2q6gbiz795x94mfjm9hnv05zka085hhq9a3yf1pgx";
@@ -2843,7 +2909,7 @@ let
     pname = "syntastic";
     version = "2020-01-29";
     src = fetchFromGitHub {
-      owner = "scrooloose";
+      owner = "vim-syntastic";
       repo = "syntastic";
       rev = "f3766538720116f099a8b1517f76ae2f094afd20";
       sha256 = "1bzjav87fcibwlp8siqnx6x8wv8w3mwrrqrd5w19ny9scr5x2a65";
@@ -3568,12 +3634,12 @@ let
 
   vim-codefmt = buildVimPluginFrom2Nix {
     pname = "vim-codefmt";
-    version = "2020-02-26";
+    version = "2020-03-20";
     src = fetchFromGitHub {
       owner = "google";
       repo = "vim-codefmt";
-      rev = "6d69f933f243ed3d7797641bd41c0e65d245c931";
-      sha256 = "0vzzyz7v03ihky3vx12rji4l1r6vbxgslvc1fvi4dznfqn5m9gfn";
+      rev = "d6676620f7a85fa49e8893cad041df59497fd845";
+      sha256 = "01wrlq9h2wzngi8qna0zrwycrp0iqp7qsijyby287zbckrs25rnd";
     };
   };
 
@@ -3867,7 +3933,7 @@ let
     pname = "vim-elixir";
     version = "2020-03-11";
     src = fetchFromGitHub {
-      owner = "elixir-lang";
+      owner = "elixir-editors";
       repo = "vim-elixir";
       rev = "088cfc407460dea7b81c10b29db23843f85e7919";
       sha256 = "1w9w4arzlbjhd5kcvyv5fykq9djc4n4j1nc75qqlzsfggbjjwhbk";
@@ -4041,11 +4107,11 @@ let
 
   vim-fugitive = buildVimPluginFrom2Nix {
     pname = "vim-fugitive";
-    version = "2020-03-12";
+    version = "2020-03-22";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fugitive";
-      rev = "9a4d730270882f9d39a411eb126143eda4d46963";
+      rev = "0e35c9bbc78159318e7b7ffd228f09a96afb8fde";
       sha256 = "098fz3lmfysv6gr5cjwgqsdzxjxygwc0x4ak1sxj3h6djys5x66b";
     };
   };
@@ -4061,6 +4127,17 @@ let
     };
   };
 
+  vim-gist = buildVimPluginFrom2Nix {
+    pname = "vim-gist";
+    version = "2020-01-29";
+    src = fetchFromGitHub {
+      owner = "mattn";
+      repo = "vim-gist";
+      rev = "2158eceb210b0a354bc17aa4144554e5d8bb6c79";
+      sha256 = "1dz33c63q7gghz35hyrvbshqw20faccs7bvxlda5w70mkbz9h9c4";
+    };
+  };
+
   vim-gista = buildVimPluginFrom2Nix {
     pname = "vim-gista";
     version = "2020-01-04";
@@ -4118,12 +4195,12 @@ let
 
   vim-go = buildVimPluginFrom2Nix {
     pname = "vim-go";
-    version = "2020-03-17";
+    version = "2020-03-20";
     src = fetchFromGitHub {
       owner = "fatih";
       repo = "vim-go";
-      rev = "f5d34f40d6757470f40600000c9c08de142d7ced";
-      sha256 = "0a2g8f9xza2m07qm4pcj2aqjh1yvs9cxn8f3zima06swfw2ahdh8";
+      rev = "50d52bafa00448ca8cde2b0e05b0fe71c9397762";
+      sha256 = "1c8dwllscwxiqp409zy7ajwz84bn8g7p9gldqrhx8i9l7q382z0w";
     };
   };
 
@@ -4380,17 +4457,6 @@ let
     };
   };
 
-  vim-jade = buildVimPluginFrom2Nix {
-    pname = "vim-jade";
-    version = "2019-09-23";
-    src = fetchFromGitHub {
-      owner = "digitaltoad";
-      repo = "vim-jade";
-      rev = "ea39cd942cf3194230cf72bfb838901a5344d3b3";
-      sha256 = "07141jkfnaia4ydc6qcg0bc06w720l2lzl7bm4bsjwswqrzmhfam";
-    };
-  };
-
   vim-janah = buildVimPluginFrom2Nix {
     pname = "vim-janah";
     version = "2018-10-01";
@@ -4502,6 +4568,17 @@ let
     };
   };
 
+  vim-kitty-navigator = buildVimPluginFrom2Nix {
+    pname = "vim-kitty-navigator";
+    version = "2019-11-04";
+    src = fetchFromGitHub {
+      owner = "knubie";
+      repo = "vim-kitty-navigator";
+      rev = "c32357892f10117291461631d51a6bfd20e72b9a";
+      sha256 = "0zqvcnbns0vbxkqr0mpiapql8cvp54nn5a6mwc7l24jr6plhiwmn";
+    };
+  };
+
   vim-lastplace = buildVimPluginFrom2Nix {
     pname = "vim-lastplace";
     version = "2020-01-20";
@@ -4614,12 +4691,12 @@ let
 
   vim-lsc = buildVimPluginFrom2Nix {
     pname = "vim-lsc";
-    version = "2020-02-11";
+    version = "2020-03-22";
     src = fetchFromGitHub {
       owner = "natebosch";
       repo = "vim-lsc";
-      rev = "62c6f6aa227b1b3ef5e7cf7df9f0a9c1d855d7fe";
-      sha256 = "1qimz08rqm4ch6dr0znwxl328593kmz0yxdqq15g1yrw4ig0fi22";
+      rev = "3dd7a19e8689847956266e0be1bbfb4ca12da746";
+      sha256 = "0dj1b8v9iz67m833x1z3s7jac0jpfxgs43ylc6m0v3al67qcb0mj";
     };
   };
 
@@ -4964,6 +5041,17 @@ let
     };
   };
 
+  vim-pico8-syntax = buildVimPluginFrom2Nix {
+    pname = "vim-pico8-syntax";
+    version = "2016-10-30";
+    src = fetchFromGitHub {
+      owner = "justinj";
+      repo = "vim-pico8-syntax";
+      rev = "dbdd92fad0533eeaeaea844815d4de11e9507ce7";
+      sha256 = "0say0bb74rdbabgsf7rrbm8x841pmgh80fwr6kn94fgphr3vhm0s";
+    };
+  };
+
   vim-plug = buildVimPluginFrom2Nix {
     pname = "vim-plug";
     version = "2020-01-27";
@@ -5052,6 +5140,17 @@ let
     };
   };
 
+  vim-pug = buildVimPluginFrom2Nix {
+    pname = "vim-pug";
+    version = "2019-09-23";
+    src = fetchFromGitHub {
+      owner = "digitaltoad";
+      repo = "vim-pug";
+      rev = "ea39cd942cf3194230cf72bfb838901a5344d3b3";
+      sha256 = "07141jkfnaia4ydc6qcg0bc06w720l2lzl7bm4bsjwswqrzmhfam";
+    };
+  };
+
   vim-puppet = buildVimPluginFrom2Nix {
     pname = "vim-puppet";
     version = "2019-09-16";
@@ -5063,6 +5162,17 @@ let
     };
   };
 
+  vim-python-pep8-indent = buildVimPluginFrom2Nix {
+    pname = "vim-python-pep8-indent";
+    version = "2019-05-13";
+    src = fetchFromGitHub {
+      owner = "hynek";
+      repo = "vim-python-pep8-indent";
+      rev = "b3a7395ce49b13145bbb54b1cdbfe6a33585bfe9";
+      sha256 = "0gkbjcwdizqivsrn0p1gdn1170jimkk1vyxhyr286nb5qxj2n8hh";
+    };
+  };
+
   vim-qml = buildVimPluginFrom2Nix {
     pname = "vim-qml";
     version = "2019-12-20";
@@ -5527,12 +5637,12 @@ let
 
   vim-test = buildVimPluginFrom2Nix {
     pname = "vim-test";
-    version = "2020-03-17";
+    version = "2020-03-21";
     src = fetchFromGitHub {
-      owner = "janko-m";
+      owner = "janko";
       repo = "vim-test";
-      rev = "d878e9d61f186140f18a7a8a8badc0605d8955ba";
-      sha256 = "06kihjif3g00bibx304vz22w2w9z84v0g6a55cxs1hqlc4ygnl8v";
+      rev = "b302a325116d8708dc0721b7cd97ff59536f4e75";
+      sha256 = "099dzadzhfkhf92lv5cmfk0iawbp40v1rz9xxp462hxxcn3p3c97";
     };
   };
 
@@ -5855,6 +5965,17 @@ let
     };
   };
 
+  vimacs = buildVimPluginFrom2Nix {
+    pname = "vimacs";
+    version = "2016-03-24";
+    src = fetchFromGitHub {
+      owner = "andrep";
+      repo = "vimacs";
+      rev = "7b8e297722d55089f0f0535fe6422533c98112fb";
+      sha256 = "0x92jcpdlvxhhdpwkv7ig9ya7s96yqjy6ms9xnx8djkf12xql16f";
+    };
+  };
+
   vimagit = buildVimPluginFrom2Nix {
     pname = "vimagit";
     version = "2020-01-12";
@@ -5945,12 +6066,12 @@ let
 
   vimtex = buildVimPluginFrom2Nix {
     pname = "vimtex";
-    version = "2020-03-17";
+    version = "2020-03-21";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "16b23314b31862510d3feb8a2569199062b083ac";
-      sha256 = "0vibfwsyamp4jqbaaa872m922yg89fx7k0cfa6kfhr5ks4vhpya5";
+      rev = "8c59031d50feeec8b4f3549f70f82564975265f0";
+      sha256 = "16a7qpp19gci8hq8h2999pwv0gd6x0mqgifv325mlb0jj5lxy7m1";
     };
   };
 
@@ -5998,12 +6119,12 @@ let
     };
   };
 
-  vundle = buildVimPluginFrom2Nix {
-    pname = "vundle";
+  Vundle-vim = buildVimPluginFrom2Nix {
+    pname = "Vundle-vim";
     version = "2019-08-17";
     src = fetchFromGitHub {
-      owner = "gmarik";
-      repo = "vundle";
+      owner = "VundleVim";
+      repo = "Vundle.vim";
       rev = "b255382d6242d7ea3877bf059d2934125e0c4d95";
       sha256 = "0fkmklcq3fgvd6x6irz9bgyvcdaxafykk3k89gsi9p6b0ikw3rw6";
     };
@@ -6099,22 +6220,22 @@ let
 
   yats-vim = buildVimPluginFrom2Nix {
     pname = "yats-vim";
-    version = "2020-03-02";
+    version = "2020-03-21";
     src = fetchFromGitHub {
       owner = "HerringtonDarkholme";
       repo = "yats.vim";
-      rev = "68ef9623656fe9aaa53c1d9ab906f09c2c095f06";
-      sha256 = "0cn1k8lda71vm4gx14ly9gdvk1j17jds0axx9jvjp4w9jid6ksqk";
+      rev = "4d3f69a3a5f56bae9475a96c3291ffdcbd9ff0b1";
+      sha256 = "0f3dq4lrm9xzh780fd471b7ddibfzb9vfq1k6gn53pmqpiw6a498";
       fetchSubmodules = true;
     };
   };
 
-  youcompleteme = buildVimPluginFrom2Nix {
-    pname = "youcompleteme";
+  YouCompleteMe = buildVimPluginFrom2Nix {
+    pname = "YouCompleteMe";
     version = "2020-03-18";
     src = fetchFromGitHub {
-      owner = "valloric";
-      repo = "youcompleteme";
+      owner = "ycm-core";
+      repo = "YouCompleteMe";
       rev = "cf4a76acaeed27eb3ca1dca5adf1115b6abbcfa3";
       sha256 = "0si9by2ag2f7xgxidp5215d6wkg1mdhq9j5c4icdpsly9gv3w5s8";
       fetchSubmodules = true;
@@ -6158,7 +6279,7 @@ let
     pname = "zig-vim";
     version = "2020-02-10";
     src = fetchFromGitHub {
-      owner = "zig-lang";
+      owner = "ziglang";
       repo = "zig.vim";
       rev = "55b690029791022fd7818ebd0ee395e8976899fe";
       sha256 = "10xkrn4yhjda187mpw1y3qw0s6bp7aklk87pansaa3fvysdf3b6c";
diff --git a/pkgs/misc/vim-plugins/overrides.nix b/pkgs/misc/vim-plugins/overrides.nix
index e4710e27193..39596da24bb 100644
--- a/pkgs/misc/vim-plugins/overrides.nix
+++ b/pkgs/misc/vim-plugins/overrides.nix
@@ -393,22 +393,10 @@ self: super: {
     configurePhase = "cd plugins/nvim";
   });
 
-  gist-vim = super.gist-vim.overrideAttrs(old: {
+  vim-gist = super.vim-gist.overrideAttrs(old: {
     dependencies = with super; [ webapi-vim ];
   });
 
-  gruvbox-community = buildVimPluginFrom2Nix {
-    pname = "gruvbox-community";
-    version = "2019-05-31";
-    src = fetchFromGitHub {
-      owner = "gruvbox-community";
-      repo = "gruvbox";
-      rev = "e122091dad968a5524f3e8136615a479c7b6f247";
-      sha256 = "1hncjyfi1gbw62b2pngy5qxyzibrhbyzgfmm9a58sdh1272l8ls8";
-    };
-    meta.maintainers = with stdenv.lib.maintainers; [ minijackson ];
-  };
-
   meson = buildVimPluginFrom2Nix {
     inherit (meson) pname version src;
     preInstall = "cd data/syntax-highlighting/vim";
@@ -460,6 +448,21 @@ self: super: {
       };
     });
 
+  vimacs = super.vimacs.overrideAttrs(old: {
+    buildPhase = ''
+      substituteInPlace bin/vim \
+        --replace '/usr/bin/vim' 'vim' \
+        --replace '/usr/bin/gvim' 'gvim'
+      # remove unnecessary duplicated bin wrapper script
+      rm -r plugin/vimacs
+    '';
+    meta = with stdenv.lib; {
+      description = "Vim-Improved eMACS: Emacs emulation plugin for Vim";
+      homepage = "http://algorithm.com.au/code/vimacs";
+      license = licenses.gpl2Plus;
+      maintainers = with stdenv.lib.maintainers; [ millerjason ];
+    };
+  });
 
   vimshell-vim = super.vimshell-vim.overrideAttrs(old: {
     dependencies = with super; [ vimproc-vim ];
@@ -640,7 +643,7 @@ self: super: {
     sourceRoot = ".";
   });
 
-  youcompleteme = super.youcompleteme.overrideAttrs(old: {
+  YouCompleteMe = super.YouCompleteMe.overrideAttrs(old: {
     buildPhase = ''
       substituteInPlace plugin/youcompleteme.vim \
         --replace "'ycm_path_to_python_interpreter', '''" \
diff --git a/pkgs/misc/vim-plugins/update.py b/pkgs/misc/vim-plugins/update.py
index 0ef93ac569a..fe8cb90d103 100755
--- a/pkgs/misc/vim-plugins/update.py
+++ b/pkgs/misc/vim-plugins/update.py
@@ -1,5 +1,5 @@
 #!/usr/bin/env nix-shell
-#!nix-shell -p nix-prefetch-git -p python3 nix -i python3
+#!nix-shell -p nix-prefetch-git -p python3 -p python3Packages.GitPython nix -i python3
 
 # format:
 # $ nix run nixpkgs.python3Packages.black -c black update.py
@@ -10,12 +10,14 @@
 
 import argparse
 import functools
+import http
 import json
 import os
 import subprocess
 import sys
 import traceback
 import urllib.error
+import urllib.parse
 import urllib.request
 import xml.etree.ElementTree as ET
 from datetime import datetime
@@ -25,6 +27,8 @@ from typing import Dict, List, Optional, Tuple, Union, Any, Callable
 from urllib.parse import urljoin, urlparse
 from tempfile import NamedTemporaryFile
 
+import git
+
 ATOM_ENTRY = "{http://www.w3.org/2005/Atom}entry"  # " vim gets confused here
 ATOM_LINK = "{http://www.w3.org/2005/Atom}link"  # "
 ATOM_UPDATED = "{http://www.w3.org/2005/Atom}updated"  # "
@@ -32,6 +36,7 @@ ATOM_UPDATED = "{http://www.w3.org/2005/Atom}updated"  # "
 ROOT = Path(__file__).parent
 DEFAULT_IN = ROOT.joinpath("vim-plugin-names")
 DEFAULT_OUT = ROOT.joinpath("generated.nix")
+DEPRECATED = ROOT.joinpath("deprecated.json")
 
 import time
 from functools import wraps
@@ -71,9 +76,11 @@ def retry(ExceptionToCheck: Any, tries: int = 4, delay: float = 3, backoff: floa
 
 
 class Repo:
-    def __init__(self, owner: str, name: str) -> None:
+    def __init__(self, owner: str, name: str, alias: Optional[str]) -> None:
         self.owner = owner
         self.name = name
+        self.alias = alias
+        self.redirect: Dict[str, str] = {}
 
     def url(self, path: str) -> str:
         return urljoin(f"https://github.com/{self.owner}/{self.name}/", path)
@@ -96,7 +103,9 @@ class Repo:
 
     @retry(urllib.error.URLError, tries=4, delay=3, backoff=2)
     def latest_commit(self) -> Tuple[str, datetime]:
-        with urllib.request.urlopen(self.url("commits/master.atom"), timeout=10) as req:
+        commit_url = self.url("commits/master.atom")
+        with urllib.request.urlopen(commit_url, timeout=10) as req:
+            self.check_for_redirect(commit_url, req)
             xml = req.read()
             root = ET.fromstring(xml)
             latest_entry = root.find(ATOM_ENTRY)
@@ -111,6 +120,19 @@ class Repo:
             updated = datetime.strptime(updated_tag.text, "%Y-%m-%dT%H:%M:%SZ")
             return Path(str(url.path)).name, updated
 
+    def check_for_redirect(self, url: str, req: http.client.HTTPResponse):
+        response_url = req.geturl()
+        if url != response_url:
+            new_owner, new_name = (
+                urllib.parse.urlsplit(response_url).path.strip("/").split("/")[:2]
+            )
+            end_line = "\n" if self.alias is None else f" as {self.alias}\n"
+            plugin_line = "{owner}/{name}" + end_line
+
+            old_plugin = plugin_line.format(owner=self.owner, name=self.name)
+            new_plugin = plugin_line.format(owner=new_owner, name=new_name)
+            self.redirect[old_plugin] = new_plugin
+
     def prefetch_git(self, ref: str) -> str:
         data = subprocess.check_output(
             ["nix-prefetch-git", "--fetch-submodules", self.url(""), ref]
@@ -197,15 +219,17 @@ def get_current_plugins() -> List[Plugin]:
     return plugins
 
 
-def prefetch_plugin(user: str, repo_name: str, alias: str, cache: "Cache") -> Plugin:
-    repo = Repo(user, repo_name)
+def prefetch_plugin(
+    user: str, repo_name: str, alias: Optional[str], cache: "Optional[Cache]" = None
+) -> Tuple[Plugin, Dict[str, str]]:
+    repo = Repo(user, repo_name, alias)
     commit, date = repo.latest_commit()
     has_submodules = repo.has_submodules()
-    cached_plugin = cache[commit]
+    cached_plugin = cache[commit] if cache else None
     if cached_plugin is not None:
         cached_plugin.name = alias or repo_name
         cached_plugin.date = date
-        return cached_plugin
+        return cached_plugin, repo.redirect
 
     print(f"prefetch {user}/{repo_name}")
     if has_submodules:
@@ -213,7 +237,15 @@ def prefetch_plugin(user: str, repo_name: str, alias: str, cache: "Cache") -> Pl
     else:
         sha256 = repo.prefetch_github(commit)
 
-    return Plugin(alias or repo_name, commit, has_submodules, sha256, date=date)
+    return (
+        Plugin(alias or repo_name, commit, has_submodules, sha256, date=date),
+        repo.redirect,
+    )
+
+
+def fetch_plugin_from_pluginline(plugin_line: str) -> Plugin:
+    plugin, _ = prefetch_plugin(*parse_plugin_line(plugin_line))
+    return plugin
 
 
 def print_download_error(plugin: str, ex: Exception):
@@ -227,20 +259,22 @@ def print_download_error(plugin: str, ex: Exception):
 
 
 def check_results(
-    results: List[Tuple[str, str, Union[Exception, Plugin]]]
-) -> List[Tuple[str, str, Plugin]]:
+    results: List[Tuple[str, str, Union[Exception, Plugin], Dict[str, str]]]
+) -> Tuple[List[Tuple[str, str, Plugin]], Dict[str, str]]:
     failures: List[Tuple[str, Exception]] = []
     plugins = []
-    for (owner, name, result) in results:
+    redirects: Dict[str, str] = {}
+    for (owner, name, result, redirect) in results:
         if isinstance(result, Exception):
             failures.append((name, result))
         else:
             plugins.append((owner, name, result))
+            redirects.update(redirect)
 
     print(f"{len(results) - len(failures)} plugins were checked", end="")
     if len(failures) == 0:
         print()
-        return plugins
+        return plugins, redirects
     else:
         print(f", {len(failures)} plugin(s) could not be downloaded:\n")
 
@@ -328,15 +362,15 @@ class Cache:
 
 def prefetch(
     args: Tuple[str, str, str], cache: Cache
-) -> Tuple[str, str, Union[Exception, Plugin]]:
+) -> Tuple[str, str, Union[Exception, Plugin], dict]:
     assert len(args) == 3
     owner, repo, alias = args
     try:
-        plugin = prefetch_plugin(owner, repo, alias, cache)
+        plugin, redirect = prefetch_plugin(owner, repo, alias, cache)
         cache[plugin.commit] = plugin
-        return (owner, repo, plugin)
+        return (owner, repo, plugin, redirect)
     except Exception as e:
-        return (owner, repo, e)
+        return (owner, repo, e, {})
 
 
 header = (
@@ -386,6 +420,37 @@ in lib.fix' (lib.extends overrides packages)
     print(f"updated {outfile}")
 
 
+def rewrite_input(
+    input_file: Path, redirects: Dict[str, str] = None, append: Tuple = ()
+):
+    with open(input_file, "r") as f:
+        lines = f.readlines()
+
+    lines.extend(append)
+
+    if redirects:
+        lines = [redirects.get(line, line) for line in lines]
+
+        cur_date_iso = datetime.now().strftime("%Y-%m-%d")
+        with open(DEPRECATED, "r") as f:
+            deprecations = json.load(f)
+        for old, new in redirects.items():
+            old_plugin = fetch_plugin_from_pluginline(old)
+            new_plugin = fetch_plugin_from_pluginline(new)
+            if old_plugin.normalized_name != new_plugin.normalized_name:
+                deprecations[old_plugin.normalized_name] = {
+                    "new": new_plugin.normalized_name,
+                    "date": cur_date_iso,
+                }
+        with open(DEPRECATED, "w") as f:
+            json.dump(deprecations, f, indent=4, sort_keys=True)
+
+    lines = sorted(lines, key=str.casefold)
+
+    with open(input_file, "w") as f:
+        f.writelines(lines)
+
+
 def parse_args():
     parser = argparse.ArgumentParser(
         description=(
@@ -394,6 +459,13 @@ def parse_args():
         )
     )
     parser.add_argument(
+        "--add",
+        dest="add_plugins",
+        default=[],
+        action="append",
+        help="Plugin to add to vimPlugins from Github in the form owner/repo",
+    )
+    parser.add_argument(
         "--input-names",
         "-i",
         dest="input_file",
@@ -407,30 +479,77 @@ def parse_args():
         default=DEFAULT_OUT,
         help="Filename to save generated nix code",
     )
-
+    parser.add_argument(
+        "--proc",
+        "-p",
+        dest="proc",
+        type=int,
+        default=30,
+        help="Number of concurrent processes to spawn.",
+    )
     return parser.parse_args()
 
 
-def main() -> None:
+def commit(repo: git.Repo, message: str, files: List[Path]) -> None:
+    files_staged = repo.index.add([str(f.resolve()) for f in files])
 
-    args = parse_args()
-    plugin_names = load_plugin_spec(args.input_file)
-    current_plugins = get_current_plugins()
-    cache = Cache(current_plugins)
+    if files_staged:
+        print(f'committing to nixpkgs "{message}"')
+        repo.index.commit(message)
+    else:
+        print("no changes in working tree to commit")
 
-    prefetch_with_cache = functools.partial(prefetch, cache=cache)
 
-    try:
-        # synchronous variant for debugging
-        # results = list(map(prefetch_with_cache, plugin_names))
-        pool = Pool(processes=30)
-        results = pool.map(prefetch_with_cache, plugin_names)
-    finally:
-        cache.store()
+def get_update(input_file: str, outfile: str, proc: int):
+    cache: Cache = Cache(get_current_plugins())
+    _prefetch = functools.partial(prefetch, cache=cache)
+
+    def update() -> dict:
+        plugin_names = load_plugin_spec(input_file)
+
+        try:
+            pool = Pool(processes=proc)
+            results = pool.map(_prefetch, plugin_names)
+        finally:
+            cache.store()
 
-    plugins = check_results(results)
+        plugins, redirects = check_results(results)
 
-    generate_nix(plugins, args.outfile)
+        generate_nix(plugins, outfile)
+
+        return redirects
+
+    return update
+
+
+def main():
+    args = parse_args()
+    nixpkgs_repo = git.Repo(ROOT, search_parent_directories=True)
+    update = get_update(args.input_file, args.outfile, args.proc)
+
+    redirects = update()
+    rewrite_input(args.input_file, redirects)
+    commit(nixpkgs_repo, "vimPlugins: update", [args.outfile])
+
+    if redirects:
+        update()
+        commit(
+            nixpkgs_repo,
+            "vimPlugins: resolve github repository redirects",
+            [args.outfile, args.input_file, DEPRECATED],
+        )
+
+    for plugin_line in args.add_plugins:
+        rewrite_input(args.input_file, append=(plugin_line + "\n",))
+        update()
+        plugin = fetch_plugin_from_pluginline(plugin_line)
+        commit(
+            nixpkgs_repo,
+            "vimPlugins.{name}: init at {version}".format(
+                name=plugin.normalized_name, version=plugin.version
+            ),
+            [args.outfile, args.input_file],
+        )
 
 
 if __name__ == "__main__":
diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names
index 874b2471d5c..f2a68ab5a79 100644
--- a/pkgs/misc/vim-plugins/vim-plugin-names
+++ b/pkgs/misc/vim-plugins/vim-plugin-names
@@ -9,10 +9,13 @@ alvan/vim-closetag
 alx741/vim-hindent
 alx741/vim-stylishask
 amiorin/ctrlp-z
+andrep/vimacs
 andreshazard/vim-logreview
+AndrewRadev/splitjoin.vim
 andsild/peskcolor.vim
 andviro/flake8-vim
 andys8/vim-elm-syntax
+antoinemadec/coc-fzf
 ap/vim-css-color
 arcticicestudio/nord-vim
 artur-shaik/vim-javacomplete2
@@ -20,8 +23,8 @@ autozimu/LanguageClient-neovim
 ayu-theme/ayu-vim
 bazelbuild/vim-bazel
 bbchung/clighter8
-benmills/vimux
 benizi/vim-automkdir
+benmills/vimux
 bhurlow/vim-parinfer
 bitc/vim-hdevtools
 bkad/camelcasemotion
@@ -35,8 +38,6 @@ brooth/far.vim
 carlitux/deoplete-ternjs
 ccarpita/rtorrent-syntax-file
 cespare/vim-toml
-chemzqm/denite-extra
-chemzqm/denite-git
 Chiel92/vim-autoformat
 chikatoike/concealedyank.vim
 chikatoike/sourcemap.vim
@@ -57,22 +58,25 @@ cocopon/iceberg.vim
 cohama/lexima.vim
 ctjhoa/spacevim
 ctrlpvim/ctrlp.vim
-dag/vim2hs
 dag/vim-fish
+dag/vim2hs
 dannyob/quickfixstatus
 darfink/starsearch.vim
 dart-lang/dart-vim-plugin
 david-a-wheeler/vim-metamath
 davidhalter/jedi-vim
 dcharbon/vim-flatbuffers
+dense-analysis/ale
+deoplete-plugins/deoplete-clang
 deoplete-plugins/deoplete-dictionary
+deoplete-plugins/deoplete-go
 deoplete-plugins/deoplete-jedi
 deoplete-plugins/deoplete-zsh
 derekelkins/agda-vim
 derekwyatt/vim-scala
 dhruvasagar/vim-prosession
 dhruvasagar/vim-table-mode
-digitaltoad/vim-jade
+digitaltoad/vim-pug
 direnv/direnv.vim
 dleonard0/pony-vim-syntax
 dracula/vim
@@ -85,7 +89,7 @@ easymotion/vim-easymotion
 editorconfig/editorconfig-vim
 ehamberg/vim-cute-python
 eikenb/acp
-elixir-lang/vim-elixir
+elixir-editors/vim-elixir
 elmcast/elm-vim
 elzr/vim-json
 embear/vim-localvimrc
@@ -108,7 +112,6 @@ garbas/vim-snipmate
 gentoo/gentoo-syntax
 gibiansky/vim-textobj-haskell
 glts/vim-textobj-comment
-gmarik/vundle
 godlygeek/csapprox
 godlygeek/tabular
 google/vim-codefmt
@@ -117,6 +120,8 @@ google/vim-maktaba
 gorkunov/smartpairs.vim
 gotcha/vimelette
 gregsexton/gitv
+gruvbox-community/gruvbox as gruvbox-community
+gu-fan/riv.vim
 guns/vim-clojure-highlight
 guns/vim-clojure-static
 guns/vim-sexp
@@ -133,6 +138,7 @@ honza/vim-snippets
 hotwatermorning/auto-git-diff
 hsanson/vim-android
 hsitz/VimOrganizer
+hynek/vim-python-pep8-indent
 iamcco/coc-spell-checker
 ianks/vim-tsx
 icymind/NeoSolarized
@@ -147,7 +153,7 @@ itchyny/vim-cursorword
 itchyny/vim-gitbranch
 ivanov/vim-ipython
 jacoborus/tender.vim
-janko-m/vim-test
+janko/vim-test
 jaredgorski/SpaceCamp
 JazzCore/ctrlp-cmatcher
 jceb/vim-hier
@@ -203,6 +209,7 @@ kchmck/vim-coffee-script
 KeitaNakamura/neodark.vim
 keith/swift.vim
 kien/rainbow_parentheses.vim
+knubie/vim-kitty-navigator
 konfekt/fastfold
 kristijanhusak/defx-git
 kristijanhusak/defx-icons
@@ -259,7 +266,7 @@ markonm/traces.vim
 martinda/Jenkinsfile-vim-syntax
 mattn/calendar-vim as mattn-calendar-vim
 mattn/emmet-vim
-mattn/gist-vim
+mattn/vim-gist
 mattn/webapi-vim
 matze/vim-move
 maximbaz/lightline-ale
@@ -267,6 +274,7 @@ MaxMEllon/vim-jsx-pretty
 mbbill/undotree
 megaannum/forms
 megaannum/self
+mengelbrecht/lightline-bufferline
 mfukar/robotframework-vim
 mg979/vim-visual-multi
 mhinz/vim-grepper
@@ -314,8 +322,8 @@ neoclide/coc-neco
 neoclide/coc-pairs
 neoclide/coc-prettier
 neoclide/coc-python
-neoclide/coc-rls
 neoclide/coc-r-lsp
+neoclide/coc-rls
 neoclide/coc-smartf
 neoclide/coc-snippets
 neoclide/coc-solargraph
@@ -329,12 +337,14 @@ neoclide/coc-vimtex
 neoclide/coc-wxml
 neoclide/coc-yaml
 neoclide/coc-yank
+neoclide/denite-extra
+neoclide/denite-git
 neoclide/vim-easygit
 neomake/neomake
+neovim/nvim-lsp
+neovim/nvimdev.nvim
 neovimhaskell/haskell-vim
 neovimhaskell/nvim-hs.vim
-neovim/nvimdev.nvim
-neovim/nvim-lsp
 neutaaaaan/iosvkem
 nfnty/vim-nftables
 nicoe/deoplete-khard
@@ -355,7 +365,7 @@ osyo-manga/vim-watchdogs
 pangloss/vim-javascript
 parsonsmatt/intero-neovim
 pearofducks/ansible-vim
-peder2tm/sved
+peterbjorgensen/sved
 peterhoeg/vim-qml
 phanviet/vim-monokai-pro
 plasticboy/vim-markdown
@@ -363,7 +373,10 @@ ponko2/deoplete-fish
 posva/vim-vue
 powerman/vim-plugin-AnsiEsc
 PProvost/vim-ps1
+preservim/nerdcommenter
+preservim/nerdtree
 ptzz/lf.vim
+purescript-contrib/purescript-vim
 python-mode/python-mode
 qnighy/lalrpop.vim
 qpkorr/vim-bufkill
@@ -372,16 +385,15 @@ racer-rust/vim-racer
 rafaqz/ranger.vim
 rafi/awesome-vim-colorschemes
 raghur/vim-ghost
-raichoo/purescript-vim
 Raimondi/delimitMate
 rakr/vim-one
 rbgrouleff/bclose.vim
 reedes/vim-pencil
+justinj/vim-pico8-syntax
 reedes/vim-wordy
 rhysd/committia.vim
 rhysd/vim-grammarous
 rhysd/vim-operator-surround
-Rip-Rip/clang_complete
 rodjek/vim-puppet
 romainl/vim-cool
 ron89/thesaurus_query.vim
@@ -391,15 +403,11 @@ roxma/nvim-yarp
 RRethy/vim-illuminate
 rust-lang/rust.vim
 ryanoasis/vim-devicons
-Rykka/riv.vim
 ryvnf/readline.vim
 sakhnik/nvim-gdb
 saltstack/salt-vim
 samoshkin/vim-mergetool
 sbdchd/neoformat
-scrooloose/nerdcommenter
-scrooloose/nerdtree
-scrooloose/syntastic
 sebastianmarkow/deoplete-rust
 SevereOverfl0w/deoplete-github
 sheerun/vim-polyglot
@@ -443,6 +451,7 @@ ternjs/tern_for_vim
 terryma/vim-expand-region
 terryma/vim-multiple-cursors
 tex/vimpreviewpandoc
+tmhedberg/SimpylFold
 thinca/vim-ft-diff_fold
 thinca/vim-prettyprint
 thinca/vim-quickrun
@@ -501,22 +510,20 @@ uarun/vim-protobuf
 udalov/kotlin-vim
 ujihisa/neco-look
 unblevable/quick-scope
-valloric/youcompleteme
 Valodim/deoplete-notmuch
 vhda/verilog_systemverilog.vim
 vim-airline/vim-airline
 vim-airline/vim-airline-themes
-vimlab/split-term.vim
-vimoutliner/vimoutliner
 vim-pandoc/vim-pandoc
 vim-pandoc/vim-pandoc-after
 vim-pandoc/vim-pandoc-syntax
 vim-ruby/vim-ruby
+vim-scripts/a.vim
 vim-scripts/align
 vim-scripts/argtextobj.vim
 vim-scripts/autoload_cscope.vim
-vim-scripts/a.vim
 vim-scripts/bats.vim
+vim-scripts/BufOnly.vim
 vim-scripts/changeColorScheme.vim
 vim-scripts/Colour-Sampler-Pack
 vim-scripts/DoxygenToolkit.vim
@@ -537,11 +544,15 @@ vim-scripts/taglist.vim
 vim-scripts/utl.vim
 vim-scripts/wombat256.vim
 vim-scripts/YankRing.vim
+vim-syntastic/syntastic
 vim-utils/vim-husk
+vimlab/split-term.vim
+vimoutliner/vimoutliner
 vimwiki/vimwiki
 vito-c/jq.vim
+vmchale/ats-vim
 vmchale/dhall-vim
-w0rp/ale
+VundleVim/Vundle.vim
 wakatime/vim-wakatime
 wannesm/wmgraphviz.vim
 wellle/targets.vim
@@ -550,11 +561,11 @@ will133/vim-dirdiff
 wincent/command-t
 wincent/ferret
 wsdjeg/vim-fetch
+xavierd/clang_complete
 xolox/vim-easytags
 xolox/vim-misc
 xuhdev/vim-latex-live-preview
+ycm-core/YouCompleteMe
 Yggdroot/indentLine
 zah/nim.vim
-zchee/deoplete-clang
-zchee/deoplete-go
-zig-lang/zig.vim
+ziglang/zig.vim
diff --git a/pkgs/misc/vscode-extensions/cpptools/default.nix b/pkgs/misc/vscode-extensions/cpptools/default.nix
index d129bda33f4..77cf28c552e 100644
--- a/pkgs/misc/vscode-extensions/cpptools/default.nix
+++ b/pkgs/misc/vscode-extensions/cpptools/default.nix
@@ -83,8 +83,8 @@ vscode-utils.buildVscodeMarketplaceExtension {
   mktplcRef = {
     name = "cpptools";
     publisher = "ms-vscode";
-    version = "0.26.3";
-    sha256 = "1rwyvqk3gp5f75x73d33biqvq67xx2vz1lmh3y3ax8kaf9z8jfvr";
+    version = "0.27.0";
+    sha256 = "06l25fjlcj0m7f7883afbh0x2ikgkqi768kv8y4qi1jc1gxndpm0";
   };
 
   buildInputs = [
diff --git a/pkgs/misc/vscode-extensions/python/default.nix b/pkgs/misc/vscode-extensions/python/default.nix
index 604d0fa3ad9..8f5a92e4722 100644
--- a/pkgs/misc/vscode-extensions/python/default.nix
+++ b/pkgs/misc/vscode-extensions/python/default.nix
@@ -41,8 +41,8 @@ in vscode-utils.buildVscodeMarketplaceExtension {
   mktplcRef = {
     name = "python";
     publisher = "ms-python";
-    version = "2020.3.69010";
-    sha256 = "1dg8wfc3yl0msg6c9ccbvwc78f559109slsagi0lgnbc40v6v24b";
+    version = "2020.3.71659";
+    sha256 = "1smhnhkfchmljz8aj1br70023ysgd2hj6pm1ncn1jxphf89qi1ja";
   };
 
   buildInputs = [
diff --git a/pkgs/misc/vscode-extensions/remote-ssh/default.nix b/pkgs/misc/vscode-extensions/remote-ssh/default.nix
index fe053dd7ea3..e58ea98a606 100644
--- a/pkgs/misc/vscode-extensions/remote-ssh/default.nix
+++ b/pkgs/misc/vscode-extensions/remote-ssh/default.nix
@@ -7,7 +7,7 @@
 
 let
   inherit (vscode-utils) buildVscodeMarketplaceExtension;
-  
+
   # patch runs on remote machine hence use of which
   # links to local node if version is 12
   patch = ''
@@ -36,8 +36,8 @@ in
     mktplcRef = {
       name = "remote-ssh";
       publisher = "ms-vscode-remote";
-      version = "0.48.0";
-      sha256 = "04q53gljqh5snkrdf5l69g0ahn1s5z35a4ipfcbf1rsjjmm85a19";
+      version = "0.50.0";
+      sha256 = "01pyd6759p5nkjhjy3iplrl748xblr54l1jphk2g02s1n5ds2qb9";
     };
 
     postPatch = ''
diff --git a/pkgs/misc/vscode-extensions/vscode-utils.nix b/pkgs/misc/vscode-extensions/vscode-utils.nix
index df8f24fcce7..5d446b025d7 100644
--- a/pkgs/misc/vscode-extensions/vscode-utils.nix
+++ b/pkgs/misc/vscode-extensions/vscode-utils.nix
@@ -51,12 +51,15 @@ let
   buildVscodeMarketplaceExtension = a@{
     name ? "",
     src ? null,
+    vsix ? null,
     mktplcRef,
     ...
   }: assert "" == name; assert null == src;
-  buildVscodeExtension ((removeAttrs a [ "mktplcRef" ]) // {
+  buildVscodeExtension ((removeAttrs a [ "mktplcRef" "vsix" ]) // {
     name = "${mktplcRef.publisher}-${mktplcRef.name}-${mktplcRef.version}";
-    src = fetchVsixFromVscodeMarketplace mktplcRef;
+    src = if (vsix != null)
+      then vsix
+      else fetchVsixFromVscodeMarketplace mktplcRef;
     vscodeExtUniqueId = "${mktplcRef.publisher}.${mktplcRef.name}";
   });
 
diff --git a/pkgs/os-specific/darwin/smimesign/default.nix b/pkgs/os-specific/darwin/smimesign/default.nix
index 6e799f1caaa..9efa230d3b7 100644
--- a/pkgs/os-specific/darwin/smimesign/default.nix
+++ b/pkgs/os-specific/darwin/smimesign/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, libobjc, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   pname = "smimesign";
@@ -13,11 +13,9 @@ buildGoModule rec {
 
   modSha256 = "1k3gnjzblfk14y19zhlvwysx045nbw0xr5nngh7zj1wcqxhhm206";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ libobjc Security ];
-
   buildFlagsArray = "-ldflags=-X main.versionString=${version}";
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "An S/MIME signing utility for macOS and Windows that is compatible with Git.";
 
     homepage    = https://github.com/github/smimesign;
diff --git a/pkgs/os-specific/linux/acpi-call/default.nix b/pkgs/os-specific/linux/acpi-call/default.nix
index bd12373da88..bb3aef885a7 100644
--- a/pkgs/os-specific/linux/acpi-call/default.nix
+++ b/pkgs/os-specific/linux/acpi-call/default.nix
@@ -1,43 +1,33 @@
-{ stdenv, fetchgit, fetchpatch, kernel }:
+{ stdenv, fetchFromGitHub, kernel }:
 
-stdenv.mkDerivation {
-  name = "acpi-call-${kernel.version}";
+stdenv.mkDerivation rec {
+  pname = "acpi-call";
+  version = "2020-04-07-${kernel.version}";
 
-  src = fetchgit {
-    url = "git://github.com/mkottman/acpi_call.git";
-    rev = "ac67445bc75ec4fcf46ceb195fb84d74ad350d51";
-    sha256 = "0jl19irz9x9pxab2qp4z8c3jijv2m30zhmnzi6ygbrisqqlg4c75";
+  src = fetchFromGitHub {
+    owner = "nix-community";
+    repo = "acpi_call";
+    rev = "3d7c9fe5ed3fc5ed5bafd39d54b1fdc7a09ce710";
+    sha256 = "09kp8zl392h99wjwzqrdw2xcfnsc944hzmfwi8n1y7m2slpdybv3";
   };
 
-  patches = [
-    (fetchpatch {
-      url = "https://github.com/mkottman/acpi_call/pull/67.patch";
-      sha256 = "0z07apvdl8nvl8iwfk1sl1iidfjyx12fc0345bmp2nq1537kpbri";
-    })
-  ];
-
   hardeningDisable = [ "pic" ];
 
   nativeBuildInputs = kernel.moduleBuildDependencies;
 
-  preBuild = ''
-    sed -e 's/break/true/' -i examples/turn_off_gpu.sh
-    sed -e 's@/bin/bash@.bin/sh@' -i examples/turn_off_gpu.sh
-    sed -e "s@/lib/modules/\$(.*)@${kernel.dev}/lib/modules/${kernel.modDirVersion}@" -i Makefile
-    sed -e 's@acpi/acpi[.]h@linux/acpi.h@g' -i acpi_call.c
-  '';
+  makeFlags = [
+    "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
+  ];
 
   installPhase = ''
-    mkdir -p $out/lib/modules/${kernel.modDirVersion}/misc
-    cp acpi_call.ko $out/lib/modules/${kernel.modDirVersion}/misc
-    mkdir -p $out/bin
-    cp examples/turn_off_gpu.sh $out/bin/test_discrete_video_off.sh
-    chmod a+x $out/bin/test_discrete_video_off.sh
+    install -D acpi_call.ko $out/lib/modules/${kernel.modDirVersion}/misc/acpi_call.ko
+    install -D -m755 examples/turn_off_gpu.sh $out/bin/test_discrete_video_off.sh
   '';
 
-  meta = {
-    maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
+  meta = with stdenv.lib; {
+    maintainers = with maintainers; [ raskin mic92 ];
+    inherit (src.meta) homepage;
+    platforms = platforms.linux;
     description = "A module allowing arbitrary ACPI calls; use case: hybrid video";
   };
 }
diff --git a/pkgs/os-specific/linux/apparmor/cross.patch b/pkgs/os-specific/linux/apparmor/cross.patch
deleted file mode 100644
index f7e95ecfb40..00000000000
--- a/pkgs/os-specific/linux/apparmor/cross.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/parser/libapparmor_re/Makefile	2018-10-14 07:38:06.000000000 +0800
-+++ b/parser/libapparmor_re/Makefile	2019-06-28 16:16:33.741916660 +0800
-@@ -10,6 +10,7 @@
- 
- TARGET=libapparmor_re.a
- 
-+AR ?= ar
- CFLAGS ?= -g -Wall -O2 ${EXTRA_CFLAGS} -std=gnu++0x
- CXXFLAGS := ${CFLAGS} ${INCLUDE_APPARMOR}
- 
-@@ -22,7 +23,7 @@
- UNITTESTS = tst_parse
- 
- libapparmor_re.a: parse.o expr-tree.o hfa.o chfa.o aare_rules.o
--	ar ${ARFLAGS} $@ $^
-+	${AR} ${ARFLAGS} $@ $^
- 
- expr-tree.o: expr-tree.cc expr-tree.h
- 
diff --git a/pkgs/os-specific/linux/apparmor/default.nix b/pkgs/os-specific/linux/apparmor/default.nix
index de9601dc85e..d661b2172b3 100644
--- a/pkgs/os-specific/linux/apparmor/default.nix
+++ b/pkgs/os-specific/linux/apparmor/default.nix
@@ -14,11 +14,11 @@
 
 let
   apparmor-series = "2.13";
-  apparmor-patchver = "3";
+  apparmor-patchver = "4";
   apparmor-version = apparmor-series + "." + apparmor-patchver;
 
   apparmor-meta = component: with stdenv.lib; {
-    homepage = http://apparmor.net/;
+    homepage = "https://apparmor.net/";
     description = "A mandatory access control system - ${component}";
     license = licenses.gpl2;
     maintainers = with maintainers; [ phreedom thoughtpolice joachifm ];
@@ -27,7 +27,7 @@ let
 
   apparmor-sources = fetchurl {
     url = "https://launchpad.net/apparmor/${apparmor-series}/${apparmor-version}/+download/apparmor-${apparmor-version}.tar.gz";
-    sha256 = "0fbnk9fzjsffwcijsv2wwykmybvfdckpqk99qlib3kb89him6w16";
+    sha256 = "03nislxccnbxld89giak2s8xa4mdbwscfxbdwhmw5qpvgz08dgwh";
   };
 
   prePatchCommon = ''
@@ -49,13 +49,6 @@ let
       sha256 = "1m4dx901biqgnr4w4wz8a2z9r9dxyw7wv6m6mqglqwf2lxinqmp4";
     })
     # (alpine patches {1,4,5,6,8} are needed for apparmor 2.11, but not 2.12)
-    ] ++ [
-      ./cross.patch
-      # Support Python 3.8
-      (fetchpatch {
-        url = https://gitlab.com/apparmor/apparmor/commit/ccbf1e0bf1bf5c3bbab47029fbbc5415ef73bac1.patch;
-        sha256 = "0kfzc0wyjybj38n10yvwakaaqvglalzigd3kk7gcrbp1xdn70pq2";
-      })
     ];
 
   # Set to `true` after the next FIXME gets fixed or this gets some
diff --git a/pkgs/os-specific/linux/bcc/default.nix b/pkgs/os-specific/linux/bcc/default.nix
index 949d953c3bd..585ab6ec725 100644
--- a/pkgs/os-specific/linux/bcc/default.nix
+++ b/pkgs/os-specific/linux/bcc/default.nix
@@ -4,8 +4,8 @@
 }:
 
 python.pkgs.buildPythonApplication rec {
+  pname = "bcc";
   version = "0.13.0";
-  name = "bcc-${version}";
 
   src = fetchurl {
     url = "https://github.com/iovisor/bcc/releases/download/v${version}/bcc-src-with-submodule.tar.gz";
diff --git a/pkgs/os-specific/linux/bluez/default.nix b/pkgs/os-specific/linux/bluez/default.nix
index 844a9faf739..29b100a33c5 100644
--- a/pkgs/os-specific/linux/bluez/default.nix
+++ b/pkgs/os-specific/linux/bluez/default.nix
@@ -15,11 +15,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bluez";
-  version = "5.53";
+  version = "5.54";
 
   src = fetchurl {
     url = "mirror://kernel/linux/bluetooth/${pname}-${version}.tar.xz";
-    sha256 = "1g1qg6dz6hl3csrmz75ixr12lwv836hq3ckb259svvrg62l2vaiq";
+    sha256 = "1p2ncvjz6alr9n3l5wvq2arqgc7xjs6dqyar1l9jp0z8cfgapkb8";
   };
 
   pythonPath = with python3.pkgs; [
diff --git a/pkgs/os-specific/linux/ddcci/default.nix b/pkgs/os-specific/linux/ddcci/default.nix
index a399ad7029f..c977db64ee8 100644
--- a/pkgs/os-specific/linux/ddcci/default.nix
+++ b/pkgs/os-specific/linux/ddcci/default.nix
@@ -2,28 +2,26 @@
 
 stdenv.mkDerivation rec {
   pname = "ddcci-driver";
-  version = "0.3.2";
+  version = "0.3.3";
   name = "${pname}-${kernel.version}-${version}";
 
   src = fetchFromGitLab {
     owner = "${pname}-linux";
     repo = "${pname}-linux";
     rev = "v${version}";
-    sha256 = "0jl4l3vvxn85cbqr80p6bgyhf2vx9kbadrwx086wkj9ni8k6x5m6";
+    sha256 = "0vkkja3ykjil783zjpwp0vz7jy2fp9ccazzi3afd4fjk8gldin7f";
   };
 
   hardeningDisable = [ "pic" ];
 
   nativeBuildInputs = kernel.moduleBuildDependencies;
 
-  NIX_CFLAGS_COMPILE = [ "-Wno-error=incompatible-pointer-types" ];
-
   prePatch = ''
     substituteInPlace ./ddcci/Makefile \
-      --replace 'SUBDIRS="$(src)"' 'M=$(PWD)' \
+      --replace '"$(src)"' '$(PWD)' \
       --replace depmod \#
     substituteInPlace ./ddcci-backlight/Makefile \
-      --replace 'SUBDIRS="$(src)"' 'M=$(PWD)' \
+      --replace '"$(src)"' '$(PWD)' \
       --replace depmod \#
   '';
 
diff --git a/pkgs/os-specific/linux/device-tree/raspberrypi.nix b/pkgs/os-specific/linux/device-tree/raspberrypi.nix
index 5e99e870ac8..b5886f6bd11 100644
--- a/pkgs/os-specific/linux/device-tree/raspberrypi.nix
+++ b/pkgs/os-specific/linux/device-tree/raspberrypi.nix
@@ -30,4 +30,7 @@ stdenvNoCC.mkDerivation {
     # Compatible overlays that may be used
     overlays = "${raspberrypifw}/share/raspberrypi/boot/overlays";
   };
+  meta = with stdenvNoCC.lib; {
+    platforms = [ "armv6l-linux" "armv7l-linux" "aarch64-linux" ];
+  };
 }
diff --git a/pkgs/os-specific/linux/earlyoom/default.nix b/pkgs/os-specific/linux/earlyoom/default.nix
index 9725ea66dd4..96283af40d0 100644
--- a/pkgs/os-specific/linux/earlyoom/default.nix
+++ b/pkgs/os-specific/linux/earlyoom/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "earlyoom-${VERSION}";
   # This environment variable is read by make to set the build version.
-  VERSION = "1.3";
+  VERSION = "1.5";
 
   src = fetchFromGitHub {
     owner = "rfjakob";
     repo = "earlyoom";
     rev = "v${VERSION}";
-    sha256 = "0fwbx0y80nqgkxrc9kf9j3iwa0wbps2jmqir3pgqbc2cj0wjh0lr";
+    sha256 = "1wcw2lfd9ajachbrjqywkzj9x6zv32gij2r6yap26x1wdd5x7i93";
   };
 
   installPhase = ''
diff --git a/pkgs/os-specific/linux/ell/default.nix b/pkgs/os-specific/linux/ell/default.nix
index e811dc1bc38..b1a3a4f0891 100644
--- a/pkgs/os-specific/linux/ell/default.nix
+++ b/pkgs/os-specific/linux/ell/default.nix
@@ -7,14 +7,14 @@
 
 stdenv.mkDerivation rec {
   pname = "ell";
-  version = "0.28";
+  version = "0.30";
 
   outputs = [ "out" "dev" ];
 
   src = fetchgit {
      url = "https://git.kernel.org/pub/scm/libs/${pname}/${pname}.git";
      rev = version;
-     sha256 = "1am3ghji271364vmf2w5sxskvlhh4r2mwakza7vjjph16cvsv6a7";
+     sha256 = "0kiglgc02a6hqi1nhnl4d8lxax8b1fljp50pvqswrnbh7pgb5676";
   };
 
   patches = [
diff --git a/pkgs/os-specific/linux/facetimehd/default.nix b/pkgs/os-specific/linux/facetimehd/default.nix
index 99e72c33983..d771563158b 100644
--- a/pkgs/os-specific/linux/facetimehd/default.nix
+++ b/pkgs/os-specific/linux/facetimehd/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, kernel }:
+{ stdenv, lib, fetchFromGitHub, kernel }:
 
 # facetimehd is not supported for kernels older than 3.19";
 assert stdenv.lib.versionAtLeast kernel.version "3.19";
@@ -44,9 +44,14 @@ stdenv.mkDerivation rec {
   '';
 
   hardeningDisable = [ "pic" ];
-  
+
   nativeBuildInputs = kernel.moduleBuildDependencies;
 
+  preBuild = lib.optionalString (stdenv.lib.versionAtLeast kernel.version "5.6")
+  ''
+    sed -i 's/ioremap_nocache/ioremap_cache/g' fthd_drv.c
+  '';
+
   makeFlags = [
     "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
   ];
@@ -55,7 +60,7 @@ stdenv.mkDerivation rec {
     homepage = https://github.com/patjak/bcwc_pcie;
     description = "Linux driver for the Facetime HD (Broadcom 1570) PCIe webcam";
     license = licenses.gpl2;
-    maintainers = with maintainers; [ womfoo grahamc ];
+    maintainers = with maintainers; [ womfoo grahamc kraem ];
     platforms = [ "i686-linux" "x86_64-linux" ];
   };
 }
diff --git a/pkgs/os-specific/linux/ffado/default.nix b/pkgs/os-specific/linux/ffado/default.nix
index 3d2c6ae6dae..5dc5086a8c6 100644
--- a/pkgs/os-specific/linux/ffado/default.nix
+++ b/pkgs/os-specific/linux/ffado/default.nix
@@ -1,21 +1,41 @@
-{ stdenv, fetchurl, scons, pkgconfig, which, makeWrapper, python3
-, libraw1394, libconfig, libavc1394, libiec61883, libxmlxx3
+{ stdenv
+, mkDerivation
+, dbus
+, dbus_cplusplus
+, desktop-file-utils
+, fetchurl
 , glibmm
-, dbus, dbus_cplusplus
+, kernel
+, libavc1394
+, libconfig
+, libiec61883
+, libraw1394
+, libxmlxx3
+, pkgconfig
+, python3
+, scons
+, which
+, wrapQtAppsHook
 }:
 
 let
   inherit (python3.pkgs) pyqt5 dbus-python;
   python = python3.withPackages (pkgs: with pkgs; [ pyqt5 dbus-python ]);
-in stdenv.mkDerivation rec {
+in
+mkDerivation rec {
   pname = "ffado";
-  version = "2.4.1";
+  version = "2.4.2";
 
   src = fetchurl {
     url = "http://www.ffado.org/files/libffado-${version}.tgz";
-    sha256 = "0byr3kv58d1ryy60vr69fd868zlfkvl2gq9hl94dqdn485l9pq9y";
+    sha256 = "09dxy6fkfnvzk45lpr74hkqymii8a45jzlq6054f3jz65m8qvj3d";
   };
 
+  prePatch = ''
+    substituteInPlace ./support/tools/ffado-diag.in \
+      --replace /lib/modules/ "/run/booted-system/kernel-modules/lib/modules/"
+  '';
+
   patches = [
     # fix installing metainfo file
     ./fix-build.patch
@@ -23,13 +43,21 @@ in stdenv.mkDerivation rec {
 
   outputs = [ "out" "bin" "dev" ];
 
-  nativeBuildInputs = [ scons pkgconfig which makeWrapper python pyqt5 ];
+  nativeBuildInputs = [
+    desktop-file-utils
+    scons.py2
+    pkgconfig
+    which
+    python
+    pyqt5
+    wrapQtAppsHook
+  ];
 
   prefixKey = "PREFIX=";
   sconsFlags = [
     "DEBUG=False"
     "ENABLE_ALL=True"
-    "BUILD_TESTS=False"
+    "BUILD_TESTS=True"
     "WILL_DEAL_WITH_XDG_MYSELF=True"
     "BUILD_MIXER=True"
     "UDEVDIR=${placeholder "out"}/lib/udev/rules.d"
@@ -40,29 +68,41 @@ in stdenv.mkDerivation rec {
   ];
 
   buildInputs = [
-    libraw1394
-    libconfig
-    libavc1394
-    libiec61883
     dbus
     dbus_cplusplus
+    glibmm
+    libavc1394
+    libconfig
+    libiec61883
+    libraw1394
     libxmlxx3
     python
-    glibmm
   ];
 
   enableParallelBuilding = true;
+  dontWrapQtApps = true;
 
   postInstall = ''
+    desktop="$bin/share/applications/ffado-mixer.desktop"
+    install -DT -m 444 support/xdg/ffado.org-ffadomixer.desktop $desktop
+    substituteInPlace "$desktop" \
+      --replace Exec=ffado-mixer "Exec=$bin/bin/ffado-mixer" \
+      --replace hi64-apps-ffado ffado-mixer
+    install -DT -m 444 support/xdg/hi64-apps-ffado.png "$bin/share/icons/hicolor/64x64/apps/ffado-mixer.png"
+
     # prevent build tools from leaking into closure
     echo 'See `nix-store --query --tree ${placeholder "out"}`.' > $out/lib/libffado/static_info.txt
   '';
 
+  preFixup = ''
+    wrapQtApp $bin/bin/ffado-mixer
+  '';
+
   meta = with stdenv.lib; {
-    homepage = http://www.ffado.org;
+    homepage = "http://www.ffado.org";
     description = "FireWire audio drivers";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ goibhniu ];
+    maintainers = with maintainers; [ goibhniu michojel ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/os-specific/linux/firejail/default.nix b/pkgs/os-specific/linux/firejail/default.nix
index 678592c0379..4d263194a49 100644
--- a/pkgs/os-specific/linux/firejail/default.nix
+++ b/pkgs/os-specific/linux/firejail/default.nix
@@ -36,10 +36,27 @@ stdenv.mkDerivation {
     sed -e "s@/etc/@$out/etc/@g" -e "/chmod u+s/d" -i Makefile
   '';
 
-  # We need to set the directory for the .local override files to
-  # /etc/firejail so we can actually override them
+  # The profile files provided with the firejail distribution include `.local`
+  # profile files using relative paths. The way firejail works when it comes to
+  # handling includes is by looking target files up in `~/.config/firejail`
+  # first, and then trying `SYSCONFDIR`. The latter normally points to
+  # `/etc/filejail`, but in the case of nixos points to the nix store. This
+  # makes it effectively impossible to place any profile files in
+  # `/etc/firejail`.
+  #
+  # The workaround applied below is by creating a set of `.local` files which
+  # only contain respective includes to `/etc/firejail`. This way
+  # `~/.config/firejail` still takes precedence, but `/etc/firejail` will also
+  # be searched in second order. This replicates the behaviour from
+  # non-nixos platforms.
+  #
+  # See https://github.com/netblue30/firejail/blob/e4cb6b42743ad18bd11d07fd32b51e8576239318/src/firejail/profile.c#L68-L83
+  # for the profile file lookup implementation.
   postInstall = ''
-    sed -E -e 's@^include (.*.local)$@include /etc/firejail/\1@g' -i $out/etc/firejail/*.profile
+    for local in $(grep -Eh '^include.*local$' $out/etc/firejail/*.profile | awk '{print $2}' | sort | uniq)
+    do
+      echo "include /etc/firejail/$local" >$out/etc/firejail/$local
+    done
   '';
 
   # At high parallelism, the build sometimes fails with:
diff --git a/pkgs/os-specific/linux/fscrypt/default.nix b/pkgs/os-specific/linux/fscrypt/default.nix
index bb04efaf1ca..9f734a47c29 100644
--- a/pkgs/os-specific/linux/fscrypt/default.nix
+++ b/pkgs/os-specific/linux/fscrypt/default.nix
@@ -4,19 +4,18 @@
 
 buildGoModule rec {
   pname = "fscrypt";
-  version = "0.2.6";
+  version = "0.2.7";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "fscrypt";
     rev = "v${version}";
-    sha256 = "15pwhz4267kwhkv532k6wgjqfzawawdrrk6vnl017ys5s9ln51a8";
+    sha256 = "0h1ssw9x37hvks8rcnsjq4nsl6djmhx53iiwrw8fw4lf3nlmdzpx";
   };
 
   postPatch = ''
     substituteInPlace Makefile \
       --replace 'TAG_VERSION := $(shell git describe --tags)' "" \
-      --replace '$(shell date)' '$(shell date --date="@0")' \
       --replace "/usr/local" "$out"
   '';
 
@@ -46,6 +45,7 @@ buildGoModule rec {
       directories.
     '';
     inherit (src.meta) homepage;
+    changelog = "https://github.com/google/fscrypt/releases/tag/v${version}";
     license = licenses.asl20;
     platforms = platforms.linux;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/os-specific/linux/fwts/default.nix b/pkgs/os-specific/linux/fwts/default.nix
index c230ecaae79..76ec3c691d0 100644
--- a/pkgs/os-specific/linux/fwts/default.nix
+++ b/pkgs/os-specific/linux/fwts/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   pname = "fwts";
-  version = "20.02.00";
+  version = "20.03.00";
 
   src = fetchzip {
     url = "http://fwts.ubuntu.com/release/${pname}-V${version}.tar.gz";
-    sha256 = "1mplv4866w3w1vixn7abq9cgh8gxgzhdyxsvj952vkhv3b8in4jq";
+    sha256 = "0h56lclvs8l5jf6zh790ki9k4mp9r8sqv2pynnciqlkz8nj71qah";
     stripRoot = false;
   };
 
diff --git a/pkgs/os-specific/linux/g15daemon/default.nix b/pkgs/os-specific/linux/g15daemon/default.nix
new file mode 100644
index 00000000000..d00bf2f7433
--- /dev/null
+++ b/pkgs/os-specific/linux/g15daemon/default.nix
@@ -0,0 +1,88 @@
+{ stdenv
+, lib
+, fetchFromGitHub
+, fetchurl
+, fetchpatch
+, patchelf
+, freetype
+, libusb
+}:
+let
+  license = lib.licenses.gpl2;
+  maintainers = with lib.maintainers; [ peterhoeg ];
+
+  g15src = { pname, version, sha256 }: fetchurl {
+    url = "mirror://sourceforge/g15tools/${pname}/${version}/${pname}-${version}.tar.bz2";
+    inherit sha256;
+  };
+
+  libg15 = stdenv.mkDerivation rec {
+    pname = "libg15";
+    version = "1.2.7";
+
+    src = g15src {
+      inherit pname version;
+      sha256 = "1mkrf622n0cmz57lj8w9q82a9dcr1lmyyxbnrghrxzb6gvifnbqk";
+    };
+
+    buildInputs = [ libusb ];
+
+    enableParallelBuilding = true;
+
+    meta = {
+      description = "Provides low-level access to Logitech G11/G15 keyboards and Z10 speakers";
+      inherit license maintainers;
+    };
+  };
+
+  libg15render = stdenv.mkDerivation rec {
+    pname = "libg15render";
+    version = "1.2";
+
+    src = g15src {
+      inherit pname version;
+      sha256 = "03yjb78j1fnr2fwklxy54sdljwi0imvp29m8kmwl9v0pdapka8yj";
+    };
+
+    buildInputs = [ libg15 ];
+
+    enableParallelBuilding = true;
+
+    meta = {
+      description = "A small graphics library optimised for drawing on an LCD";
+      inherit license maintainers;
+    };
+  };
+in
+stdenv.mkDerivation rec {
+  pname = "g15daemon";
+  version = "1.9.5.3";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/${pname}/G15Daemon%201.9x/${version}/${pname}-${version}.tar.bz2";
+    sha256 = "1613gsp5dgilwbshqxxhiyw73ksngnam7n1iw6yxdjkp9fyd2a3d";
+  };
+
+  patches = let
+    patch = fname: sha256: fetchurl rec {
+      url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/${pname}-${version}-${fname}.patch?h=packages/${pname}";
+      name = "${fname}.patch";
+      inherit sha256;
+    };
+  in
+    [
+      (patch "uinput" "1misfff7a1vg0qgfk3n25y7drnm86a4gq96iflpcwr5x3lw7q0h7")
+      (patch "config-write" "0jkrbqvzqrvxr14h5qi17cb4d32caq7vw9kzlz3qwpxdgxjrjvy2")
+      (patch "recv-oob-answer" "1f67iqpj5hcgpakagi7gbw1xviwhy5vizs546l9bfjimx8r2d29g")
+      ./pid_location.patch
+    ];
+
+  buildInputs = [ libg15 libg15render ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    description = "A daemon that makes it possible to use the Logitech keyboard G-Buttons and draw on various Logitech LCDs";
+    inherit license maintainers;
+  };
+}
diff --git a/pkgs/os-specific/linux/g15daemon/pid_location.patch b/pkgs/os-specific/linux/g15daemon/pid_location.patch
new file mode 100644
index 00000000000..f88c4a80962
--- /dev/null
+++ b/pkgs/os-specific/linux/g15daemon/pid_location.patch
@@ -0,0 +1,25 @@
+diff --git a/g15daemon/main.c b/g15daemon/main.c
+index e674475..97b8242 100644
+--- a/g15daemon/main.c
++++ b/g15daemon/main.c
+@@ -574,7 +574,7 @@ exitnow:
+     g15daemon_quit_refresh();
+     uf_conf_write(lcdlist,"/etc/g15daemon.conf");
+     uf_conf_free(lcdlist);
+-    unlink("/var/run/g15daemon.pid");
++    unlink("/run/g15daemon/g15daemon.pid");
+     }
+     return 0;
+ }
+diff --git a/g15daemon/utility_funcs.c b/g15daemon/utility_funcs.c
+index c93d164..2e9c679 100644
+--- a/g15daemon/utility_funcs.c
++++ b/g15daemon/utility_funcs.c
+@@ -48,7 +48,7 @@
+
+ extern unsigned int g15daemon_debug;
+ extern volatile int leaving;
+-#define G15DAEMON_PIDFILE "/var/run/g15daemon.pid"
++#define G15DAEMON_PIDFILE "/run/g15daemon/g15daemon.pid"
+
+ pthread_cond_t lcd_refresh = PTHREAD_COND_INITIALIZER;
diff --git a/pkgs/os-specific/linux/iproute/default.nix b/pkgs/os-specific/linux/iproute/default.nix
index 8e753121b7f..624644596d9 100644
--- a/pkgs/os-specific/linux/iproute/default.nix
+++ b/pkgs/os-specific/linux/iproute/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, flex, bash, bison, db, iptables, pkgconfig, libelf }:
+{ fetchurl, stdenv, flex, bash, bison, db, iptables, pkgconfig, libelf, libmnl }:
 
 stdenv.mkDerivation rec {
   pname = "iproute2";
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     "CONFDIR=$(out)/etc/iproute2"
   ];
 
-  buildInputs = [ db iptables libelf ];
+  buildInputs = [ db iptables libelf libmnl ];
   nativeBuildInputs = [ bison flex pkgconfig ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/os-specific/linux/iwd/default.nix b/pkgs/os-specific/linux/iwd/default.nix
index f6e98b047df..d93b11bc957 100644
--- a/pkgs/os-specific/linux/iwd/default.nix
+++ b/pkgs/os-specific/linux/iwd/default.nix
@@ -13,12 +13,12 @@
 
 stdenv.mkDerivation rec {
   pname = "iwd";
-  version = "1.5";
+  version = "1.6";
 
   src = fetchgit {
     url = https://git.kernel.org/pub/scm/network/wireless/iwd.git;
     rev = version;
-    sha256 = "09viyfv5j2rl6ly52b2xlc2zbmb6i22dv89jc6823bzdjjimkrg6";
+    sha256 = "0c38c7a234cwdd5y1brq4w56xszs8zlp57rr3nvgp8z8djcy1qvx";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix
index aa75c125da4..70083eb6cc4 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.14.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.14.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "4.14.174";
+  version = "4.14.175";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "12ai2lc2ny38s93d0m5ngrv030vwv1h2hhzp0fs6fhjxasikq8jc";
+    sha256 = "0b12w0d21sk261jr4p1pm32v0r20a5c2j1p5hasdqw80sb2hli6b";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.19.nix b/pkgs/os-specific/linux/kernel/linux-4.19.nix
index 8e260ff6b5d..c7e55b1c9f8 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.19.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.19.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "4.19.112";
+  version = "4.19.114";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0yiyqwgh6wcyshpdj98s7dc4ahyx47y6whvnww6sjmzdq0fb3hi4";
+    sha256 = "03hz6vg5bg728ilbm4z997pf52cgxzsxb03vz5cs55gwdbfa0h0y";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.4.nix b/pkgs/os-specific/linux/kernel/linux-4.4.nix
index 69156f577f6..6f0baf2a53b 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.4.nix
@@ -1,11 +1,11 @@
 { stdenv, buildPackages, fetchurl, perl, buildLinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.4.217";
+  version = "4.4.218";
   extraMeta.branch = "4.4";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0vsjchywznmjn01flgvm9vsja5zqni319rfwgy997afcbz0c9spx";
+    sha256 = "0qzhcy8i111jbpnkpzq7hqf9nkwq4s7smi820hfvnmd2ky7cns7a";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix
index 98d203e481f..3b6a68b7c03 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,11 +1,11 @@
 { stdenv, buildPackages, fetchurl, perl, buildLinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "4.9.217";
+  version = "4.9.218";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "06b8av9f9pk2yp95nzv4322k0d5wsg40sxd9kfim1xzb093abckg";
+    sha256 = "1ka98c8sbfipzll6ss9fcsn26lh4cy60372yfw27pif4brhnwfnz";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.4.nix b/pkgs/os-specific/linux/kernel/linux-5.4.nix
index cdc802b9616..e18048ef4c9 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.4.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "5.4.27";
+  version = "5.4.31";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "0szc1p9y6z8gs2f1nj45nrz52sxcabg2xh7zqlljazv45lvcvf8r";
+    sha256 = "1svf4wf4j1vqhdpgx63ry4c99fc54d9nfi4d1xm7z209z3w86451";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.5.nix b/pkgs/os-specific/linux/kernel/linux-5.5.nix
index 474c6980e4a..3b6555bde53 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.5.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.5.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "5.5.11";
+  version = "5.5.16";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
@@ -13,6 +13,6 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
-    sha256 = "0bplsbjb3slx566assxdhp7rnmm9z2s8iv9hfar574jds77syix5";
+    sha256 = "0207yw1vkyzvnvbfbkyam6nac1dd9p4hmmbqw09ljki0ia531yw5";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.6.nix b/pkgs/os-specific/linux/kernel/linux-5.6.nix
new file mode 100644
index 00000000000..052343467db
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/linux-5.6.nix
@@ -0,0 +1,18 @@
+{ stdenv, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args:
+
+with stdenv.lib;
+
+buildLinux (args // rec {
+  version = "5.6.3";
+
+  # modDirVersion needs to be x.y.z, will automatically add .0 if needed
+  modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg;
+
+  # branchVersion needs to be x.y
+  extraMeta.branch = versions.majorMinor version;
+
+  src = fetchurl {
+    url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
+    sha256 = "1ajh1iw3bplm6ckcycg45wfmmqkvfiqmh6i3m1895dfapfd6h4qx";
+  };
+} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-libre.nix b/pkgs/os-specific/linux/kernel/linux-libre.nix
index c6e850c9907..d167a89ea83 100644
--- a/pkgs/os-specific/linux/kernel/linux-libre.nix
+++ b/pkgs/os-specific/linux/kernel/linux-libre.nix
@@ -1,8 +1,8 @@
 { stdenv, lib, fetchsvn, linux
 , scripts ? fetchsvn {
     url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/";
-    rev = "17387";
-    sha256 = "1a62n326xsbb8r8y610d4k698n3la22rnhlxa56c2zki2q5697h3";
+    rev = "17402";
+    sha256 = "1g151h6hdiwpvpip1r2rhbma8j13xghcyxddh0ppg9h548wwwack";
   }
 , ...
 }:
@@ -22,7 +22,8 @@ in linux.override {
       name = "${linux.name}-libre-src";
       src = linux.src;
       buildPhase = ''
-        ${scripts}/${majorMinor}/deblob-${majorMinor} \
+        # --force flag to skip empty files after deblobbing
+        ${scripts}/${majorMinor}/deblob-${majorMinor} --force \
             ${major} ${minor} ${patch}
       '';
       checkPhase = ''
diff --git a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
index f4b9e5b8da6..456913c5e6d 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
@@ -1,13 +1,13 @@
 { stdenv, buildPackages, fetchgit, fetchpatch, perl, buildLinux, ... } @ args:
 
 buildLinux (args // {
-  version = "5.2.2019.10.12";
-  modDirVersion = "5.2.0";
+  version = "5.3.2020.04.04";
+  modDirVersion = "5.3.0";
 
   src = fetchgit {
     url = "https://evilpiepirate.org/git/bcachefs.git";
-    rev = "de906c3e2eddad291d46bd0e7c81c68eaadcd08a";
-    sha256 = "1ahabp8pd9slf4lchkbyfkagg9vhic0cw3kwvwryzaxxxjmf2hkk";
+    rev = "a27d7265e75f6d65c2b972ce4ac27abfc153c230";
+    sha256 = "0wnjl4xs7073d5ipcsplv5qpcxb7zpfqd5gqvh3mhqc5j3qn816x";
   };
 
   extraConfig = "BCACHEFS_FS m";
diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix
index 4098c30c744..e63fe96be6b 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "5.6-rc5";
+  version = "5.6-rc7";
   extraMeta.branch = "5.6";
 
   # modDirVersion needs to be x.y.z, will always add .0
@@ -11,7 +11,7 @@ buildLinux (args // rec {
 
   src = fetchurl {
     url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
-    sha256 = "0ys4wdv1rf9vshras1n6syy2pgg8kv50f27nprfzhrllni044whr";
+    sha256 = "0wv3ipfm970y2pyadwn5g7hd9bj117qk8jl8sdhrasbsy1p8936i";
   };
 
   # Should the testing kernels ever be built on Hydra?
diff --git a/pkgs/os-specific/linux/lxc/default.nix b/pkgs/os-specific/linux/lxc/default.nix
index fff66fe328a..405c816ea30 100644
--- a/pkgs/os-specific/linux/lxc/default.nix
+++ b/pkgs/os-specific/linux/lxc/default.nix
@@ -9,11 +9,11 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "lxc";
-  version = "3.2.1";
+  version = "4.0.1";
 
   src = fetchurl {
     url = "https://linuxcontainers.org/downloads/lxc/lxc-${version}.tar.gz";
-    sha256 = "1m633j5k700nsc3smca7fxqfhxhypxbamh18x9z60zdilj33k42z";
+    sha256 = "178kqjz0n5nnjw0z8ac5lbfpqprna9xfd9ckakp34zq9vz0smfvh";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/os-specific/linux/lxcfs/default.nix b/pkgs/os-specific/linux/lxcfs/default.nix
index 15a3fa5f04f..65615f5c240 100644
--- a/pkgs/os-specific/linux/lxcfs/default.nix
+++ b/pkgs/os-specific/linux/lxcfs/default.nix
@@ -3,13 +3,13 @@
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "lxcfs-4.0.0";
+  name = "lxcfs-4.0.1";
 
   src = fetchFromGitHub {
     owner = "lxc";
     repo = "lxcfs";
     rev = name;
-    sha256 = "0p9fl7zya65wsxg2vabdc0jrhw6mdz081cacd7np4zrppv16v6dx";
+    sha256 = "09y26ln2wxpi809kd3r352my64aal0yz2a5kin0i25gnvivl32cs";
   };
 
   nativeBuildInputs = [ pkgconfig help2man autoreconfHook ];
diff --git a/pkgs/os-specific/linux/net-tools/default.nix b/pkgs/os-specific/linux/net-tools/default.nix
index 3cd8f224ce4..7b1a0234a4f 100644
--- a/pkgs/os-specific/linux/net-tools/default.nix
+++ b/pkgs/os-specific/linux/net-tools/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "net-tools";
-  version = "1.60_p20170221182432";
+  version = "1.60_p20180626073013";
 
   src = fetchurl {
     url = "mirror://gentoo/distfiles/${pname}-${version}.tar.xz";
-    sha256 = "08r4r2a24g5bm8jwgfa998gs1fld7fgbdf7pilrpsw1m974xn04a";
+    sha256 = "0mzsjjmz5kn676w2glmxwwd8bj0xy9dhhn21aplb435b767045q4";
   };
 
   preBuild =
diff --git a/pkgs/os-specific/linux/nfs-utils/default.nix b/pkgs/os-specific/linux/nfs-utils/default.nix
index 74363be47f4..20dc6a094e7 100644
--- a/pkgs/os-specific/linux/nfs-utils/default.nix
+++ b/pkgs/os-specific/linux/nfs-utils/default.nix
@@ -1,6 +1,7 @@
 { stdenv, fetchurl, fetchpatch, lib, pkgconfig, utillinux, libcap, libtirpc, libevent
 , sqlite, kerberos, kmod, libuuid, keyutils, lvm2, systemd, coreutils, tcp_wrappers
 , python3, buildPackages, nixosTests
+, enablePython ? true
 }:
 
 let
@@ -25,8 +26,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     libtirpc libcap libevent sqlite lvm2
     libuuid keyutils kerberos tcp_wrappers
-    python3
-  ];
+  ] ++ lib.optional enablePython python3;
 
   enableParallelBuilding = true;
 
@@ -96,6 +96,9 @@ stdenv.mkDerivation rec {
         -e "s,/sbin/modprobe,${kmod}/bin/modprobe,g" \
         -e "s,/usr/sbin,$out/bin,g" \
         $out/etc/systemd/system/*
+    '' + lib.optionalString (!enablePython) ''
+      # Remove all scripts that require python (currently mountstats and nfsiostat)
+      grep -l /usr/bin/python $out/bin/* | xargs -I {} rm -v {}
     '';
 
   # One test fails on mips.
diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix
index 9a9c48a7908..e195bf587ee 100644
--- a/pkgs/os-specific/linux/nvidia-x11/default.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/default.nix
@@ -1,4 +1,4 @@
-{ lib, callPackage, fetchurl, stdenv }:
+{ lib, callPackage, fetchpatch, fetchurl, stdenv }:
 
 let
 
@@ -22,10 +22,10 @@ rec {
   # Policy: use the highest stable version as the default (on our master).
   stable = if stdenv.hostPlatform.system == "x86_64-linux"
     then generic {
-      version = "440.59";
-      sha256_64bit = "162gq6w44l8sgnn4qnl2rdlx8c008p04zv4c3i1ps20p21n1mjv1";
-      settingsSha256 = "0vxhmirqzyav5ljf0f04yk0az48ir5v0817dq9z9kyqfdvnby93g";
-      persistencedSha256 = "0npjh7nashasydp8q6bbcp21w8fc1dycgjy50ics775hjnvm61qn";
+      version = "440.82";
+      sha256_64bit = "13km9800skyraa0s312fc4hwyw5pzb0jfkrv1yg6anppyan1bm7d";
+      settingsSha256 = "15psxvd65wi6hmxmd2vvsp2v0m07axw613hb355nh15r1dpkr3ma";
+      persistencedSha256 = "13izz9p2kg9g38gf57g3s2sw7wshp1i9m5pzljh9v82c4c22x1fw";
     }
     else legacy_390;
 
diff --git a/pkgs/os-specific/linux/pcm/default.nix b/pkgs/os-specific/linux/pcm/default.nix
index c00bd67f95c..cc5c2efd46e 100644
--- a/pkgs/os-specific/linux/pcm/default.nix
+++ b/pkgs/os-specific/linux/pcm/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation rec {
-  version = "201902";
+  version = "202003";
   pname = "pcm";
 
   src = fetchFromGitHub {
     owner = "opcm";
     repo = "pcm";
     rev = version;
-    sha256 = "15kh5ry2w1zj2mbg98hlayw8g53jy79q2ixj2wm48g8vagamv77z";
+    sha256 = "1f83dhzrzgcyv5j5xxibvywvpg8sgf1g72f5x40cdb4149nwbfra";
   };
 
   installPhase = ''
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Processor counter monitor";
-    homepage = https://www.intel.com/software/pcm;
+    homepage = "https://www.intel.com/software/pcm";
     license = licenses.bsd3;
     maintainers = with maintainers; [ roosemberth ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/os-specific/linux/plymouth/default.nix b/pkgs/os-specific/linux/plymouth/default.nix
index b074c6d7244..1a8e3685e9c 100644
--- a/pkgs/os-specific/linux/plymouth/default.nix
+++ b/pkgs/os-specific/linux/plymouth/default.nix
@@ -26,34 +26,32 @@ stdenv.mkDerivation rec {
       -e "s#plymouththemedir=.*#plymouththemedir=/etc/plymouth/themes#" \
       -e "s#plymouthpolicydir=.*#plymouthpolicydir=/etc/plymouth/#" \
       configure.ac
+  '';
 
-    configureFlags="
-      --prefix=$out
-      --bindir=$out/bin
-      --sbindir=$out/sbin
-      --exec-prefix=$out
-      --libdir=$out/lib
-      --libexecdir=$out/lib
-      --sysconfdir=/etc
-      --with-systemdunitdir=$out/etc/systemd/system
-      --localstatedir=/var
-      --with-logo=/etc/plymouth/logo.png
-      --with-background-color=0x000000
-      --with-background-start-color-stop=0x000000
-      --with-background-end-color-stop=0x000000
-      --with-release-file=/etc/os-release
-      --without-system-root-install
-      --without-rhgb-compat-link
-      --enable-tracing
-      --enable-systemd-integration
-      --enable-pango
-      --enable-gdm-transition
-      --enable-gtk"
+  configureFlags = [
+    "--sysconfdir=/etc"
+    "--with-systemdunitdir=${placeholder "out"}/etc/systemd/system"
+    "--localstatedir=/var"
+    "--with-logo=/etc/plymouth/logo.png"
+    "--with-background-color=0x000000"
+    "--with-background-start-color-stop=0x000000"
+    "--with-background-end-color-stop=0x000000"
+    "--with-release-file=/etc/os-release"
+    "--without-system-root-install"
+    "--without-rhgb-compat-link"
+    "--enable-tracing"
+    "--enable-systemd-integration"
+    "--enable-pango"
+    "--enable-gdm-transition"
+    "--enable-gtk"
+  ];
 
-    installFlags="
-      plymouthd_defaultsdir=$out/share/plymouth
-      plymouthd_confdir=$out/etc/plymouth"
-  '';
+  configurePlatforms = [ "host" ];
+
+  installFlags = [
+    "plymouthd_defaultsdir=$(out)/share/plymouth"
+    "plymouthd_confdir=$(out)/etc/plymouth"
+  ];
 
   meta = with stdenv.lib; {
     homepage = http://www.freedesktop.org/wiki/Software/Plymouth;
diff --git a/pkgs/os-specific/linux/procdump/default.nix b/pkgs/os-specific/linux/procdump/default.nix
index d24f665cc7c..74ee1533e46 100644
--- a/pkgs/os-specific/linux/procdump/default.nix
+++ b/pkgs/os-specific/linux/procdump/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "procdump";
-  version = "1.1";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "Microsoft";
     repo = "ProcDump-for-Linux";
     rev = version;
-    sha256 = "1pcf6cpslpazla0na0q680dih9wb811q5irr7d2zmw0qmxm33jw2";
+    sha256 = "0h5fhk39d10kjbinzw1yp6nr8w8l300mn9qxrkpivdkyfn6bpq2f";
   };
 
   nativeBuildInputs = [ zlib ];
diff --git a/pkgs/os-specific/linux/rdma-core/default.nix b/pkgs/os-specific/linux/rdma-core/default.nix
index b16b230ce27..1d505523c50 100644
--- a/pkgs/os-specific/linux/rdma-core/default.nix
+++ b/pkgs/os-specific/linux/rdma-core/default.nix
@@ -4,7 +4,7 @@
 } :
 
 let
-  version = "27.0";
+  version = "28.0";
 
 in stdenv.mkDerivation {
   pname = "rdma-core";
@@ -14,7 +14,7 @@ in stdenv.mkDerivation {
     owner = "linux-rdma";
     repo = "rdma-core";
     rev = "v${version}";
-    sha256 = "04mhcrcmbwxcjhswlkhnr6m5nl2389jgjv6aqhd4v0x555cwnfvw";
+    sha256 = "0az2is6p5gkyphi2b978kwn7knry60y33kn6p7cxz49ca79a42cy";
   };
 
   nativeBuildInputs = [ cmake pkgconfig pandoc docutils makeWrapper ];
@@ -26,11 +26,6 @@ in stdenv.mkDerivation {
   ];
 
   postPatch = ''
-    substituteInPlace providers/rxe/rxe_cfg.in \
-      --replace ethtool "${ethtool}/bin/ethtool" \
-      --replace 'ip addr' "${iproute}/bin/ip addr" \
-      --replace 'ip link' "${iproute}/bin/ip link"
-
     substituteInPlace srp_daemon/srp_daemon.sh.in \
       --replace /bin/rm rm
   '';
diff --git a/pkgs/os-specific/linux/s6-linux-utils/default.nix b/pkgs/os-specific/linux/s6-linux-utils/default.nix
index 200e66cb4d8..74bf913df98 100644
--- a/pkgs/os-specific/linux/s6-linux-utils/default.nix
+++ b/pkgs/os-specific/linux/s6-linux-utils/default.nix
@@ -4,8 +4,8 @@ with skawarePackages;
 
 buildPackage {
   pname = "s6-linux-utils";
-  version = "2.5.1.1";
-  sha256 = "00nw2phd9prgv29hzqzwjnh4y0ivkzhx3srn6n1rlyr4ydhikxi5";
+  version = "2.5.1.2";
+  sha256 = "0w4jms9qyb5kx9zcyd3gzri60rrii2rbmh08s59ckg4awy27py86";
 
   description = "A set of minimalistic Linux-specific system utilities";
   platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/os-specific/linux/sdnotify-wrapper/default.nix b/pkgs/os-specific/linux/sdnotify-wrapper/default.nix
index 613a7fd51e6..cf09f047676 100644
--- a/pkgs/os-specific/linux/sdnotify-wrapper/default.nix
+++ b/pkgs/os-specific/linux/sdnotify-wrapper/default.nix
@@ -23,13 +23,13 @@ in runCommandCC "sdnotify-wrapper" {
   mkdir -p $bin/bin
   mkdir $out
 
-  # just dynamic for now
+  # the -lskarnet has to come at the end to support static builds
   $CC \
     -o $bin/bin/sdnotify-wrapper \
     -I${skalibs.dev}/include \
     -L${skalibs.lib}/lib \
-    -lskarnet \
-    ${src}
+    ${src} \
+    -lskarnet
 
   mkdir -p $doc/share/doc/sdnotify-wrapper
   # copy the documentation comment
diff --git a/pkgs/os-specific/linux/sssd/default.nix b/pkgs/os-specific/linux/sssd/default.nix
index 3dbdb99549a..886d5e27718 100644
--- a/pkgs/os-specific/linux/sssd/default.nix
+++ b/pkgs/os-specific/linux/sssd/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, glibc, augeas, dnsutils, c-ares, curl,
+{ stdenv, fetchurl, fetchpatch, glibc, augeas, dnsutils, c-ares, curl,
   cyrus_sasl, ding-libs, libnl, libunistring, nss, samba, nfs-utils, doxygen,
   python, python3, pam, popt, talloc, tdb, tevent, pkgconfig, ldb, openldap,
   pcre, kerberos, cifs-utils, glib, keyutils, dbus, fakeroot, libxslt, libxml2,
@@ -18,6 +18,13 @@ stdenv.mkDerivation rec {
     url = "https://fedorahosted.org/released/sssd/${pname}-${version}.tar.gz";
     sha256 = "0ngr7cgimyjc6flqkm7psxagp1m4jlzpqkn28pliifbmdg6i5ckb";
   };
+  patches = [
+    # Fix build failure against samba 4.12.0rc1
+    (fetchpatch {
+      url = "https://github.com/SSSD/sssd/commit/bc56b10aea999284458dcc293b54cf65288e325d.patch";
+      sha256 = "0q74sx5n41srq3kdn55l5j1sq4xrjsnl5y4v8yh5mwsijj74yh4g";
+    })
+  ];
 
   # Something is looking for <libxml/foo.h> instead of <libxml2/libxml/foo.h>
   NIX_CFLAGS_COMPILE = "-I${libxml2.dev}/include/libxml2";
diff --git a/pkgs/os-specific/linux/sysdig/default.nix b/pkgs/os-specific/linux/sysdig/default.nix
index 61a51afa3a7..b0becd82d19 100644
--- a/pkgs/os-specific/linux/sysdig/default.nix
+++ b/pkgs/os-specific/linux/sysdig/default.nix
@@ -5,13 +5,13 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "sysdig";
-  version = "0.26.5";
+  version = "0.26.6";
 
   src = fetchFromGitHub {
     owner = "draios";
     repo = "sysdig";
     rev = version;
-    sha256 = "145mwg6izrpi4r1qrygi4yb7qd68g4k64i3qmamk0671wxhjqi3c";
+    sha256 = "1rw9s5lamr02036z26vfmnp5dnn97f00hcnp4xv6gdxim6rpmbz7";
   };
 
   nativeBuildInputs = [ cmake perl ];
diff --git a/pkgs/os-specific/linux/udisks/2-default.nix b/pkgs/os-specific/linux/udisks/2-default.nix
index 1d967b38eb9..526def78bb2 100644
--- a/pkgs/os-specific/linux/udisks/2-default.nix
+++ b/pkgs/os-specific/linux/udisks/2-default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, substituteAll, libtool, pkgconfig, gettext, gnused
+{ stdenv, fetchFromGitHub, fetchpatch, substituteAll, libtool, pkgconfig, gettext, gnused
 , gtk-doc, acl, systemd, glib, libatasmart, polkit, coreutils, bash, which
 , expat, libxslt, docbook_xsl, utillinux, mdadm, libgudev, libblockdev, parted
 , gobject-introspection, docbook_xml_dtd_412, docbook_xml_dtd_43, autoconf, automake
@@ -37,6 +37,12 @@ stdenv.mkDerivation rec {
         xfsprogs ntfs3g parted utillinux
       ];
     })
+
+    # Fix tests: https://github.com/storaged-project/udisks/issues/724
+    (fetchpatch {
+      url = "https://github.com/storaged-project/udisks/commit/60a0c1c967821d317046d9494e45b9a8e4e7a1c1.patch";
+      sha256 = "tWl49mSc1zDyB3kV6SKlhHFPi/Kg7mg6OWDlY7vGj2Y=";
+    })
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/os-specific/linux/undervolt/default.nix b/pkgs/os-specific/linux/undervolt/default.nix
index eb8f55ac665..696625761b1 100644
--- a/pkgs/os-specific/linux/undervolt/default.nix
+++ b/pkgs/os-specific/linux/undervolt/default.nix
@@ -1,18 +1,18 @@
 { stdenv, fetchFromGitHub, python3Packages }:
 
 python3Packages.buildPythonApplication rec {
-  version = "0.2.9";
+  version = "0.2.11";
   pname = "undervolt";
 
   src = fetchFromGitHub {
     owner = "georgewhewell";
     repo = "undervolt";
     rev = version;
-    sha256 = "1d934lp8yczrfslmwff6fxzd4arja2vg00s5kwdr949bxpa6w59c";
+    sha256 = "18mnf3x687qal7k8yk2sdxzgbyn3rqchgflbi1sksryznmksqqw5";
   };
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/georgewhewell/undervolt/;
+    homepage = "https://github.com/georgewhewell/undervolt/";
     description = "A program for undervolting Intel CPUs on Linux";
 
     longDescription = ''
diff --git a/pkgs/os-specific/linux/uvcdynctrl/default.nix b/pkgs/os-specific/linux/uvcdynctrl/default.nix
index cfb93684f3b..c2afa23efc0 100644
--- a/pkgs/os-specific/linux/uvcdynctrl/default.nix
+++ b/pkgs/os-specific/linux/uvcdynctrl/default.nix
@@ -15,9 +15,16 @@ stdenv.mkDerivation {
   buildInputs = [ libxml2 ];
 
   prePatch = ''
-    substituteInPlace uvcdynctrl/CMakeLists.txt \
-      --replace "/etc/udev" "$out/etc/udev" \
-      --replace "/lib/udev" "$out/lib/udev"
+    local fixup_list=(
+      uvcdynctrl/CMakeLists.txt
+      uvcdynctrl/udev/rules/80-uvcdynctrl.rules
+      uvcdynctrl/udev/scripts/uvcdynctrl
+    )
+    for f in "''${fixup_list[@]}"; do
+      substituteInPlace "$f" \
+        --replace "/etc/udev" "$out/etc/udev" \
+        --replace "/lib/udev" "$out/lib/udev"
+    done
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/os-specific/linux/wireguard/default.nix b/pkgs/os-specific/linux/wireguard/default.nix
index 8672aeb22fd..890c774081b 100644
--- a/pkgs/os-specific/linux/wireguard/default.nix
+++ b/pkgs/os-specific/linux/wireguard/default.nix
@@ -7,11 +7,11 @@ assert stdenv.lib.versionOlder kernel.version "5.6";
 
 stdenv.mkDerivation rec {
   pname = "wireguard";
-  version = "0.0.20200318";
+  version = "1.0.20200401";
 
   src = fetchzip {
     url = "https://git.zx2c4.com/wireguard-linux-compat/snapshot/wireguard-linux-compat-${version}.tar.xz";
-    sha256 = "1syl3p37fvfxvp4apvfnlp632pg3xwslj9r3s54mpxbxc6d8s3v6";
+    sha256 = "1q4gfpbvbyracnl219xqfz5yqfc08i6g41z6bn2skx5x8jbll3aq";
   };
 
   preConfigure = ''
diff --git a/pkgs/os-specific/linux/zenpower/default.nix b/pkgs/os-specific/linux/zenpower/default.nix
index 8fdf7f23cf8..bc1d803bb10 100644
--- a/pkgs/os-specific/linux/zenpower/default.nix
+++ b/pkgs/os-specific/linux/zenpower/default.nix
@@ -1,21 +1,21 @@
-{ stdenv, kernel, fetchFromGitHub }:
+{ stdenv, kernel, fetchFromGitHub, fetchpatch }:
 
 stdenv.mkDerivation rec {
   pname = "zenpower";
-  version = "0.1.5";
+  version = "0.1.10";
 
   src = fetchFromGitHub {
     owner = "ocerman";
     repo = "zenpower";
     rev = "v${version}";
-    sha256 = "1ay1q666bc7czgc95invw523c0ds2gj85wxypc3wi418vfaha5vy";
+    sha256 = "1fqqaj7fq49yi2yip518036w80r9w7mkxpbkrxqzlydpma1x9v5m";
   };
 
   hardeningDisable = [ "pic" ];
 
   nativeBuildInputs = kernel.moduleBuildDependencies;
 
-  makeFlags = "KERNEL_BUILD=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build";
+  makeFlags = [ "KERNEL_BUILD=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" ];
 
   installPhase = ''
     install -D zenpower.ko -t "$out/lib/modules/${kernel.modDirVersion}/kernel/drivers/hwmon/zenpower/"
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/ocerman/zenpower";
     license = licenses.gpl2;
     maintainers = with maintainers; [ alexbakker ];
-    platforms = platforms.linux;
+    platforms = [ "x86_64-linux" ];
     broken = versionOlder kernel.version "4.14";
   };
 }
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix
index 738171bb5ec..2486f82d2ee 100644
--- a/pkgs/os-specific/linux/zfs/default.nix
+++ b/pkgs/os-specific/linux/zfs/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, utillinux, nukeReferences, coreutils
+{ stdenv, fetchFromGitHub, fetchpatch
+, autoreconfHook, utillinux, nukeReferences, coreutils
 , perl, buildPackages
 , configFile ? "all"
 
@@ -11,6 +12,7 @@
 
 # Kernel dependencies
 , kernel ? null
+, enablePython ? true
 }:
 
 with stdenv.lib;
@@ -40,7 +42,12 @@ let
         inherit rev sha256;
       };
 
-      patches = extraPatches;
+      patches = [ (fetchpatch {
+        # https://github.com/openzfs/zfs/pull/9961#issuecomment-585827288
+        # will be included in zfs 0.5.4 as well
+        url = "https://gist.githubusercontent.com/satmandu/67cbae9c4d461be0e64428a1707aef1c/raw/ba0fb65f17ccce5b710e4ce86a095de577f7dfe1/k5.6.3.patch";
+        sha256 = "0zay7cz078v7wcnk7xl96blp7j6y64q1migb91c7h66zkpikqvgb";
+      }) ] ++ extraPatches;
 
       postPatch = optionalString buildKernel ''
         patchShebangs scripts
@@ -51,7 +58,12 @@ let
       '' + optionalString buildUser ''
         substituteInPlace ./lib/libzfs/libzfs_mount.c --replace "/bin/umount"             "${utillinux}/bin/umount" \
                                                       --replace "/bin/mount"              "${utillinux}/bin/mount"
-        substituteInPlace ./lib/libshare/nfs.c        --replace "/usr/sbin/exportfs"      "${nfs-utils}/bin/exportfs"
+        substituteInPlace ./lib/libshare/nfs.c        --replace "/usr/sbin/exportfs"      "${
+          # We don't *need* python support, but we set it like this to minimize closure size:
+          # If it's disabled by default, no need to enable it, even if we have python enabled
+          # And if it's enabled by default, only change that if we explicitly disable python to remove python from the closure
+          nfs-utils.override (old: { enablePython = old.enablePython or true && enablePython; })
+        }/bin/exportfs"
         substituteInPlace ./config/user-systemd.m4    --replace "/usr/lib/modules-load.d" "$out/etc/modules-load.d"
         substituteInPlace ./config/zfs-build.m4       --replace "\$sysconfdir/init.d"     "$out/etc/init.d"
         substituteInPlace ./etc/zfs/Makefile.am       --replace "\$(sysconfdir)"          "$out/etc"
@@ -86,7 +98,8 @@ let
       nativeBuildInputs = [ autoreconfHook nukeReferences ]
         ++ optionals buildKernel (kernel.moduleBuildDependencies ++ [ perl ]);
       buildInputs = optionals buildUser [ zlib libuuid attr ]
-        ++ optionals (buildUser) [ openssl python3 ]
+        ++ optional buildUser openssl
+        ++ optional (buildUser && enablePython) python3
         ++ optional stdenv.hostPlatform.isMusl libtirpc;
 
       # for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work
@@ -96,7 +109,7 @@ let
 
       configureFlags = [
         "--with-config=${configFile}"
-        (withFeatureAs buildUser "python" python3.interpreter)
+        (withFeatureAs (buildUser && enablePython) "python" python3.interpreter)
       ] ++ optionals buildUser [
         "--with-dracutdir=$(out)/lib/dracut"
         "--with-udevdir=$(out)/lib/udev"
diff --git a/pkgs/servers/amqp/qpid-cpp/default.nix b/pkgs/servers/amqp/qpid-cpp/default.nix
index 02c2e03d90f..4eb56ee4ae2 100644
--- a/pkgs/servers/amqp/qpid-cpp/default.nix
+++ b/pkgs/servers/amqp/qpid-cpp/default.nix
@@ -1,7 +1,8 @@
 { stdenv, fetchurl, cmake, python2, boost, libuuid, ruby, buildEnv, buildPythonPackage, qpid-python }:
 
 let
-  name = "qpid-cpp-${version}";
+  pname = "qpid-cpp";
+  name = "${pname}-${version}";
   version = "1.39.0";
 
   src = fetchurl {
@@ -20,7 +21,7 @@ let
   };
 
   qpid-cpp = stdenv.mkDerivation {
-    inherit src meta name;
+    inherit src meta pname version;
 
     nativeBuildInputs = [ cmake ];
     buildInputs = [ boost libuuid ruby python2 ];
@@ -46,7 +47,7 @@ let
   };
 
   python-frontend = buildPythonPackage {
-    inherit name meta src;
+    inherit pname version meta src;
 
     sourceRoot = "${name}/management/python";
 
diff --git a/pkgs/servers/atlassian/confluence.nix b/pkgs/servers/atlassian/confluence.nix
index db5baf6e5af..d8410c87b76 100644
--- a/pkgs/servers/atlassian/confluence.nix
+++ b/pkgs/servers/atlassian/confluence.nix
@@ -8,11 +8,11 @@ assert withMysql -> (mysql_jdbc != null);
 
 stdenvNoCC.mkDerivation rec {
   pname = "atlassian-confluence";
-  version = "7.2.1";
+  version = "7.3.4";
 
   src = fetchurl {
     url = "https://product-downloads.atlassian.com/software/confluence/downloads/${pname}-${version}.tar.gz";
-    sha256 = "1d37hiabph56frsp8jrn80fmglgw6k1dlc4x8p7m82fb3vild049";
+    sha256 = "13d0vnsvyl8cjdxnp2w284814bnqgbksl8mq7lkjms1x083mhnzi";
   };
 
   buildPhase = ''
diff --git a/pkgs/servers/atlassian/jira.nix b/pkgs/servers/atlassian/jira.nix
index 611db53d645..d0d95d24068 100644
--- a/pkgs/servers/atlassian/jira.nix
+++ b/pkgs/servers/atlassian/jira.nix
@@ -1,15 +1,18 @@
-{ stdenv, lib, fetchurl
+{ stdenv
+, lib
+, fetchurl
+, gawk
 , enableSSO ? false
 , crowdProperties ? null
 }:
 
 stdenv.mkDerivation rec {
   pname = "atlassian-jira";
-  version = "8.7.1";
+  version = "8.8.0";
 
   src = fetchurl {
     url = "https://product-downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-${version}.tar.gz";
-    sha256 = "0f46j94xjb5a5f74fsykjif64s9w2yd9ccy9098yrzaa8lbwdgpz";
+    sha256 = "1gn0iknli8pi3c3kxb8hdn19wzn2fx0193ppf0niw3cqf1h2c5cz";
   };
 
   buildPhase = ''
@@ -18,6 +21,8 @@ stdenv.mkDerivation rec {
     rm -r logs; ln -sf /run/atlassian-jira/logs/ .
     rm -r work; ln -sf /run/atlassian-jira/work/ .
     rm -r temp; ln -sf /run/atlassian-jira/temp/ .
+    substituteInPlace bin/check-java.sh \
+      --replace "awk" "${gawk}/bin/gawk"
   '' + lib.optionalString enableSSO ''
     substituteInPlace atlassian-jira/WEB-INF/classes/seraph-config.xml \
       --replace com.atlassian.jira.security.login.JiraSeraphAuthenticator \
diff --git a/pkgs/servers/caddy/default.nix b/pkgs/servers/caddy/default.nix
index 8b51e584e3e..bcd4b7065b5 100644
--- a/pkgs/servers/caddy/default.nix
+++ b/pkgs/servers/caddy/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "caddy";
@@ -16,8 +16,6 @@ buildGoModule rec {
   };
   modSha256 = "1gc0xvsihr4zp7hkrdfrplvzkaphz1y4q53rgwn2jhd8s98l57an";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   preBuild = ''
     cat << EOF > caddy/main.go
     package main
diff --git a/pkgs/servers/caddy/v2.nix b/pkgs/servers/caddy/v2.nix
index 7330388a785..35c1f497850 100644
--- a/pkgs/servers/caddy/v2.nix
+++ b/pkgs/servers/caddy/v2.nix
@@ -1,8 +1,8 @@
-{ stdenv, callPackage, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, callPackage, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "caddy";
-  version = "2.0.0-beta10";
+  version = "2.0.0-rc.1";
 
   goPackagePath = "github.com/caddyserver/caddy";
 
@@ -12,11 +12,9 @@ buildGoModule rec {
     owner = "caddyserver";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1vagcw6ibri4nbx1n60xp7rffcfr64a2202hjaijyjzc8wcl80na";
+    sha256 = "0ir394nmdrqvslghqky4d2py65ff77fqsp0nmxdlsdps49szwh7h";
   };
-  modSha256 = "1sb8w6n84cpya2rjm0zm798kzf5vjpkr5440j1gfnnnr07jl2aqn";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "0sqnw81l73gssnpd4dsl3vd10584riq0417z4dvbhjnc8b3z4xwv";
 
   meta = with stdenv.lib; {
     homepage = "https://caddyserver.com";
diff --git a/pkgs/servers/clickhouse/default.nix b/pkgs/servers/clickhouse/default.nix
index 40760093462..9521d470a0f 100644
--- a/pkgs/servers/clickhouse/default.nix
+++ b/pkgs/servers/clickhouse/default.nix
@@ -7,13 +7,13 @@
 
 stdenv.mkDerivation rec {
   pname = "clickhouse";
-  version = "19.17.8.54";
+  version = "19.17.9.60";
 
   src = fetchFromGitHub {
     owner  = "yandex";
     repo   = "ClickHouse";
     rev    = "v${version}-stable";
-    sha256 = "0ck6kcifj7y4i2j1jj1a9vf5nfpp9mxk5x8y8557zp9yayjm9qyr";
+    sha256 = "0k1ncn7i4szpw4jlhv3zmw6mrkkm8qfs39nj1zbawjqrkgnw70kg";
   };
 
   nativeBuildInputs = [ cmake libtool lldClang.bintools ninja ];
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
   hardeningDisable = [ "format" ];
 
   meta = with stdenv.lib; {
-    homepage = https://clickhouse.yandex/;
+    homepage = "https://clickhouse.yandex/";
     description = "Column-oriented database management system";
     license = licenses.asl20;
     maintainers = with maintainers; [ orivej ];
diff --git a/pkgs/servers/consul/default.nix b/pkgs/servers/consul/default.nix
index 2a4361d99d2..6a356e73c95 100644
--- a/pkgs/servers/consul/default.nix
+++ b/pkgs/servers/consul/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "consul";
-  version = "1.6.2";
+  version = "1.7.2";
   rev = "v${version}";
 
   goPackagePath = "github.com/hashicorp/consul";
@@ -19,7 +19,7 @@ buildGoPackage rec {
     owner = "hashicorp";
     repo = pname;
     inherit rev;
-    sha256 = "0r9wqxhgspgypvp9xdv931r8g28gjg9njdignp84rrbxljix25my";
+    sha256 = "1q587d8aqfkwg4fymr56fnf038vkxbdqz5yilz96dzny27dhspj4";
   };
 
   preBuild = ''
diff --git a/pkgs/servers/dict/default.nix b/pkgs/servers/dict/default.nix
index b4ad70f8277..c96f3b5c477 100644
--- a/pkgs/servers/dict/default.nix
+++ b/pkgs/servers/dict/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "dictd";
-  version = "1.12.1";
+  version = "1.13.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/dict/dictd-${version}.tar.gz";
-    sha256 = "0min6v60b6z5mrymyjfwzx8nv6rdm8pd8phlwl6v2jl5vkngcdx2";
+    sha256 = "1r413a78sa3mcrgddgdj1za34dj6mnd4dg66csqv2yz8fypm3fpf";
   };
 
   buildInputs = [ libmaa zlib ];
diff --git a/pkgs/servers/dns/coredns/default.nix b/pkgs/servers/dns/coredns/default.nix
index 8388968298e..cbf29b5d7c7 100644
--- a/pkgs/servers/dns/coredns/default.nix
+++ b/pkgs/servers/dns/coredns/default.nix
@@ -1,8 +1,8 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "coredns";
-  version = "1.6.7";
+  version = "1.6.9";
 
   goPackagePath = "github.com/coredns/coredns";
 
@@ -10,12 +10,10 @@ buildGoModule rec {
     owner = "coredns";
     repo = "coredns";
     rev = "v${version}";
-    sha256 = "05r0dm8h23s5dafxisya48izc2ywpn5ywvhf9q6m20qkpwr8gd10";
+    sha256 = "18c02ss0sxxg8lkhdmyaac2x5alfxsizf6jqhck8bqkf6hiyv5hc";
   };
 
-  modSha256 = "0wlffk6wkcyn2lphw2vmdsmzag0wxljcxrvm7sv3i124x2x3yvy4";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "07mlprwa37s6qpg5wvpljbvkiqcvrcljr27qsdwz49wldhdp6im6";
 
   meta = with stdenv.lib; {
     homepage = "https://coredns.io";
diff --git a/pkgs/servers/documize-community/default.nix b/pkgs/servers/documize-community/default.nix
index a6477d61e98..7780d900bad 100644
--- a/pkgs/servers/documize-community/default.nix
+++ b/pkgs/servers/documize-community/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, go-bindata, go-bindata-assetfs, Security }:
+{ lib, buildGoModule, fetchFromGitHub, go-bindata, go-bindata-assetfs }:
 
 buildGoModule rec {
   pname = "documize-community";
@@ -15,8 +15,6 @@ buildGoModule rec {
 
   nativeBuildInputs = [ go-bindata go-bindata-assetfs ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   subPackages = [ "edition/community.go" ];
 
   postInstall = ''
@@ -25,7 +23,7 @@ buildGoModule rec {
     mv $out/bin/community $out/bin/documize
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Open source Confluence alternative for internal & external docs built with Golang + EmberJS";
     license = licenses.agpl3;
     maintainers = with maintainers; [ ma27 elseym ];
diff --git a/pkgs/servers/echoip/default.nix b/pkgs/servers/echoip/default.nix
index ae6057c3469..b3402933f9f 100644
--- a/pkgs/servers/echoip/default.nix
+++ b/pkgs/servers/echoip/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule {
   pname = "echoip";
@@ -13,8 +13,6 @@ buildGoModule {
 
   modSha256 = "025p891klwpid5fw4z39fimgfkwgkcwqpn5276hflzdp1hfv35ly";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   outputs = [ "out" "index" ];
 
   postInstall = ''
@@ -22,7 +20,7 @@ buildGoModule {
     cp $src/index.html $index/index.html
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     homepage = https://github.com/mpolden/echoip;
     license = licenses.bsd3;
     maintainers = with maintainers; [ rvolosatovs ];
diff --git a/pkgs/servers/gobetween/default.nix b/pkgs/servers/gobetween/default.nix
index e66d5581b3c..ff59ad53ed1 100644
--- a/pkgs/servers/gobetween/default.nix
+++ b/pkgs/servers/gobetween/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security, enableStatic ? false }:
+{ buildGoModule, fetchFromGitHub, lib, enableStatic ? false }:
 
 buildGoModule rec {
   pname = "gobetween";
@@ -14,10 +14,8 @@ buildGoModule rec {
   modSha256 =
     "dd91838d20c99c73447590e43edd13c87755276f17ef3e53f24c5df3d0908f78";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildPhase = ''
-    make build${stdenv.lib.optionalString enableStatic "-static"}
+    make build${lib.optionalString enableStatic "-static"}
   '';
 
   installPhase = ''
@@ -27,7 +25,7 @@ buildGoModule rec {
     cp -r config $out/share
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Modern & minimalistic load balancer for the Сloud era";
     homepage = "http://gobetween.io";
     license = licenses.mit;
diff --git a/pkgs/servers/gortr/default.nix b/pkgs/servers/gortr/default.nix
index 3e5dfc87f0e..35c6e145243 100644
--- a/pkgs/servers/gortr/default.nix
+++ b/pkgs/servers/gortr/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ lib, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   pname = "gortr";
@@ -12,9 +12,7 @@ buildGoModule rec {
   };
   modSha256 = "157dpalfz3z1s3mxq63xy6lrkwzyy9xzmvn7wsxkwznjq4djv1a1";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "The RPKI-to-Router server used at Cloudflare";
     homepage = "https://github.com/cloudflare/gortr/";
     license = licenses.gpl3;
diff --git a/pkgs/servers/gotify/default.nix b/pkgs/servers/gotify/default.nix
index 275aaa5d68b..f2014aac9fd 100644
--- a/pkgs/servers/gotify/default.nix
+++ b/pkgs/servers/gotify/default.nix
@@ -1,11 +1,11 @@
 { stdenv
 , buildGoPackage
+, lib
 , fetchFromGitHub
 , buildGoModule
 , packr
 , sqlite
 , callPackage
-, Security
 }:
 
 buildGoModule rec {
@@ -28,8 +28,7 @@ buildGoModule rec {
       --replace 'Version = "unknown"' 'Version = "${version}"'
   '';
 
-  buildInputs = [ sqlite ]
-    ++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  buildInputs = [ sqlite ];
 
   nativeBuildInputs = [ packr ];
 
diff --git a/pkgs/servers/gpsd/default.nix b/pkgs/servers/gpsd/default.nix
index 8ea060a8255..e5dcb3e28e4 100644
--- a/pkgs/servers/gpsd/default.nix
+++ b/pkgs/servers/gpsd/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    scons pkgconfig docbook_xml_dtd_412 docbook_xsl xmlto bc
+    scons.py2 pkgconfig docbook_xml_dtd_412 docbook_xsl xmlto bc
     python2Packages.python
     python2Packages.wrapPython
   ];
diff --git a/pkgs/servers/grocy/default.nix b/pkgs/servers/grocy/default.nix
index 718d4b1bcde..2694765a948 100644
--- a/pkgs/servers/grocy/default.nix
+++ b/pkgs/servers/grocy/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "grocy";
-  version = "2.6.1";
+  version = "2.6.2";
 
   src = fetchurl {
     url = "https://github.com/grocy/grocy/releases/download/v${version}/grocy_${version}.zip";
-    sha256 = "1fq1zlxxhpcxj67xxlgf20dia95xcimgnm13cr56sy9f2vjx58m6";
+    sha256 = "1cjkyv50vwx24xb1mxgy51mr4qqsqgixjww06rql77d9czmmd94k";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/servers/headphones/default.nix b/pkgs/servers/headphones/default.nix
index aab651d5a4a..7259104d145 100644
--- a/pkgs/servers/headphones/default.nix
+++ b/pkgs/servers/headphones/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, python2, makeWrapper }:
 
 python2.pkgs.buildPythonApplication rec {
-  name = "headphones-${version}";
+  pname = "headphones";
   version = "0.5.19";
 
   src = fetchFromGitHub {
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index 6b18dd30f30..8cf5f5a3755 100644
--- a/pkgs/servers/home-assistant/component-packages.nix
+++ b/pkgs/servers/home-assistant/component-packages.nix
@@ -2,7 +2,7 @@
 # Do not edit!
 
 {
-  version = "0.106.6";
+  version = "0.107.7";
   components = {
     "abode" = ps: with ps; [ ]; # missing inputs: abodepy
     "acer_projector" = ps: with ps; [ pyserial];
@@ -15,7 +15,7 @@
     "airvisual" = ps: with ps; [ pyairvisual];
     "aladdin_connect" = ps: with ps; [ ]; # missing inputs: aladdin_connect
     "alarm_control_panel" = ps: with ps; [ ];
-    "alarmdecoder" = ps: with ps; [ ]; # missing inputs: alarmdecoder
+    "alarmdecoder" = ps: with ps; [ alarmdecoder];
     "alarmdotcom" = ps: with ps; [ ]; # missing inputs: pyalarmdotcom
     "alert" = ps: with ps; [ ];
     "alexa" = ps: with ps; [ aiohttp-cors];
@@ -55,9 +55,10 @@
     "aurora_abb_powerone" = ps: with ps; [ ]; # missing inputs: aurorapy
     "auth" = ps: with ps; [ aiohttp-cors];
     "automatic" = ps: with ps; [ aiohttp-cors]; # missing inputs: aioautomatic
-    "automation" = ps: with ps; [ aiohttp-cors];
+    "automation" = ps: with ps; [ ];
     "avea" = ps: with ps; [ ]; # missing inputs: avea
     "avion" = ps: with ps; [ ]; # missing inputs: avion
+    "avri" = ps: with ps; [ ]; # missing inputs: avri-api
     "awair" = ps: with ps; [ ]; # missing inputs: python_awair
     "aws" = ps: with ps; [ ]; # missing inputs: aiobotocore
     "axis" = ps: with ps; [ ]; # missing inputs: axis
@@ -85,7 +86,7 @@
     "bme680" = ps: with ps; [ ]; # missing inputs: bme680 smbus-cffi
     "bmw_connected_drive" = ps: with ps; [ ]; # missing inputs: bimmer_connected
     "bom" = ps: with ps; [ ]; # missing inputs: bomradarloop
-    "braviatv" = ps: with ps; [ getmac]; # missing inputs: bravia-tv
+    "braviatv" = ps: with ps; [ bravia-tv getmac];
     "broadlink" = ps: with ps; [ broadlink];
     "brother" = ps: with ps; [ ]; # missing inputs: brother
     "brottsplatskartan" = ps: with ps; [ ]; # missing inputs: brottsplatskartan
@@ -187,6 +188,7 @@
     "ecovacs" = ps: with ps; [ ]; # missing inputs: sucks
     "eddystone_temperature" = ps: with ps; [ construct]; # missing inputs: beacontools[scan]
     "edimax" = ps: with ps; [ ]; # missing inputs: pyedimax
+    "edl21" = ps: with ps; [ ]; # missing inputs: pysml
     "ee_brightbox" = ps: with ps; [ ]; # missing inputs: eebrightbox
     "efergy" = ps: with ps; [ ];
     "egardia" = ps: with ps; [ ]; # missing inputs: pythonegardia
@@ -217,6 +219,7 @@
     "eufy" = ps: with ps; [ ]; # missing inputs: lakeside
     "everlights" = ps: with ps; [ ]; # missing inputs: pyeverlights
     "evohome" = ps: with ps; [ ]; # missing inputs: evohome-async
+    "ezviz" = ps: with ps; [ ]; # missing inputs: pyezviz
     "facebook" = ps: with ps; [ ];
     "facebox" = ps: with ps; [ ];
     "fail2ban" = ps: with ps; [ ];
@@ -299,6 +302,7 @@
     "graphite" = ps: with ps; [ ];
     "greeneye_monitor" = ps: with ps; [ ]; # missing inputs: greeneye_monitor
     "greenwave" = ps: with ps; [ ]; # missing inputs: greenwavereality
+    "griddy" = ps: with ps; [ ]; # missing inputs: griddypower
     "group" = ps: with ps; [ ];
     "growatt_server" = ps: with ps; [ ]; # missing inputs: growattServer
     "gstreamer" = ps: with ps; [ ]; # missing inputs: gstreamer-player
@@ -307,7 +311,7 @@
     "hangouts" = ps: with ps; [ ]; # missing inputs: hangups
     "harman_kardon_avr" = ps: with ps; [ ]; # missing inputs: hkavr
     "harmony" = ps: with ps; [ ]; # missing inputs: aioharmony
-    "hassio" = ps: with ps; [ aiohttp-cors]; # missing inputs: home-assistant-frontend
+    "hassio" = ps: with ps; [ aiohttp-cors];
     "haveibeenpwned" = ps: with ps; [ ];
     "hddtemp" = ps: with ps; [ ];
     "hdmi_cec" = ps: with ps; [ ]; # missing inputs: pyCEC
@@ -318,14 +322,13 @@
     "hikvisioncam" = ps: with ps; [ ]; # missing inputs: hikvision
     "hisense_aehw4a1" = ps: with ps; [ ]; # missing inputs: pyaehw4a1
     "history" = ps: with ps; [ aiohttp-cors sqlalchemy];
-    "history_graph" = ps: with ps; [ aiohttp-cors sqlalchemy];
     "history_stats" = ps: with ps; [ aiohttp-cors sqlalchemy];
     "hitron_coda" = ps: with ps; [ ];
     "hive" = ps: with ps; [ ]; # missing inputs: pyhiveapi
     "hlk_sw16" = ps: with ps; [ ]; # missing inputs: hlk-sw16
     "homeassistant" = ps: with ps; [ ];
     "homekit" = ps: with ps; [ ]; # missing inputs: HAP-python
-    "homekit_controller" = ps: with ps; [ ]; # missing inputs: homekit[IP]
+    "homekit_controller" = ps: with ps; [ ]; # missing inputs: aiohomekit[IP]
     "homematic" = ps: with ps; [ pyhomematic];
     "homematicip_cloud" = ps: with ps; [ ]; # missing inputs: homematicip
     "homeworks" = ps: with ps; [ ]; # missing inputs: pyhomeworks
@@ -342,6 +345,7 @@
     "hydrawise" = ps: with ps; [ ]; # missing inputs: hydrawiser
     "hyperion" = ps: with ps; [ ];
     "ialarm" = ps: with ps; [ ]; # missing inputs: pyialarm
+    "iammeter" = ps: with ps; [ ]; # missing inputs: iammeter
     "iaqualink" = ps: with ps; [ ]; # missing inputs: iaqualink
     "icloud" = ps: with ps; [ pyicloud];
     "idteck_prox" = ps: with ps; [ ]; # missing inputs: rfk101py
@@ -452,7 +456,7 @@
     "melissa" = ps: with ps; [ ]; # missing inputs: py-melissa-climate
     "meraki" = ps: with ps; [ aiohttp-cors];
     "message_bird" = ps: with ps; [ ]; # missing inputs: messagebird
-    "met" = ps: with ps; [ ]; # missing inputs: pyMetno
+    "met" = ps: with ps; [ pymetno];
     "meteo_france" = ps: with ps; [ ]; # missing inputs: meteofrance vigilancemeteo
     "meteoalarm" = ps: with ps; [ ]; # missing inputs: meteoalertapi
     "metoffice" = ps: with ps; [ ]; # missing inputs: datapoint
@@ -496,7 +500,7 @@
     "n26" = ps: with ps; [ ]; # missing inputs: n26
     "nad" = ps: with ps; [ ]; # missing inputs: nad_receiver
     "namecheapdns" = ps: with ps; [ defusedxml];
-    "nanoleaf" = ps: with ps; [ ]; # missing inputs: pynanoleaf
+    "nanoleaf" = ps: with ps; [ pynanoleaf];
     "neato" = ps: with ps; [ pybotvac];
     "nederlandse_spoorwegen" = ps: with ps; [ ]; # missing inputs: nsapi
     "nello" = ps: with ps; [ ]; # missing inputs: pynello
@@ -517,7 +521,7 @@
     "nmbs" = ps: with ps; [ ]; # missing inputs: pyrail
     "no_ip" = ps: with ps; [ ];
     "noaa_tides" = ps: with ps; [ ]; # missing inputs: py_noaa
-    "norway_air" = ps: with ps; [ ]; # missing inputs: pyMetno
+    "norway_air" = ps: with ps; [ pymetno];
     "notify" = ps: with ps; [ ];
     "notion" = ps: with ps; [ ]; # missing inputs: aionotion
     "nsw_fuel_station" = ps: with ps; [ ]; # missing inputs: nsw-fuel-api-client
@@ -607,6 +611,7 @@
     "qnap" = ps: with ps; [ ]; # missing inputs: qnapstats
     "qrcode" = ps: with ps; [ pillow]; # missing inputs: pyzbar
     "quantum_gateway" = ps: with ps; [ ]; # missing inputs: quantum-gateway
+    "qvr_pro" = ps: with ps; [ ]; # missing inputs: pyqvrpro
     "qwikswitch" = ps: with ps; [ ]; # missing inputs: pyqwikswitch
     "rachio" = ps: with ps; [ aiohttp-cors]; # missing inputs: rachiopy
     "radarr" = ps: with ps; [ ];
@@ -635,7 +640,7 @@
     "ripple" = ps: with ps; [ ]; # missing inputs: python-ripple-api
     "rmvtransport" = ps: with ps; [ ]; # missing inputs: PyRMVtransport
     "rocketchat" = ps: with ps; [ ]; # missing inputs: rocketchat-API
-    "roku" = ps: with ps; [ ]; # missing inputs: roku
+    "roku" = ps: with ps; [ roku];
     "roomba" = ps: with ps; [ ]; # missing inputs: roombapy
     "route53" = ps: with ps; [ boto3]; # missing inputs: ipify
     "rova" = ps: with ps; [ ]; # missing inputs: rova
@@ -652,7 +657,7 @@
     "safe_mode" = ps: with ps; [ aiohttp-cors hass-nabucasa]; # missing inputs: home-assistant-frontend
     "saj" = ps: with ps; [ ]; # missing inputs: pysaj
     "salt" = ps: with ps; [ ]; # missing inputs: saltbox
-    "samsungtv" = ps: with ps; [ ]; # missing inputs: samsungctl[websocket]
+    "samsungtv" = ps: with ps; [ ]; # missing inputs: samsungctl[websocket] samsungtvws[websocket]
     "satel_integra" = ps: with ps; [ ]; # missing inputs: satel_integra
     "scene" = ps: with ps; [ ];
     "scrape" = ps: with ps; [ beautifulsoup4];
@@ -677,7 +682,7 @@
     "shopping_list" = ps: with ps; [ aiohttp-cors];
     "sht31" = ps: with ps; [ ]; # missing inputs: Adafruit-GPIO Adafruit-SHT31
     "sigfox" = ps: with ps; [ ];
-    "sighthound" = ps: with ps; [ ]; # missing inputs: simplehound
+    "sighthound" = ps: with ps; [ pillow]; # missing inputs: simplehound
     "signal_messenger" = ps: with ps; [ ]; # missing inputs: pysignalclirestapi
     "simplepush" = ps: with ps; [ ]; # missing inputs: simplepush
     "simplisafe" = ps: with ps; [ ]; # missing inputs: simplisafe-python
@@ -760,6 +765,7 @@
     "tado" = ps: with ps; [ ]; # missing inputs: python-tado
     "tahoma" = ps: with ps; [ ]; # missing inputs: tahoma-api
     "tank_utility" = ps: with ps; [ ]; # missing inputs: tank_utility
+    "tankerkoenig" = ps: with ps; [ ]; # missing inputs: pytankerkoenig
     "tapsaff" = ps: with ps; [ ]; # missing inputs: tapsaff
     "tautulli" = ps: with ps; [ ]; # missing inputs: pytautulli
     "tcp" = ps: with ps; [ ];
@@ -865,7 +871,6 @@
     "waze_travel_time" = ps: with ps; [ WazeRouteCalculator];
     "weather" = ps: with ps; [ ];
     "webhook" = ps: with ps; [ aiohttp-cors];
-    "weblink" = ps: with ps; [ ];
     "webostv" = ps: with ps; [ ]; # missing inputs: aiopylgtv
     "websocket_api" = ps: with ps; [ aiohttp-cors];
     "wemo" = ps: with ps; [ ]; # missing inputs: pywemo
diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix
index 2b571fe96bf..877c03cb19e 100644
--- a/pkgs/servers/home-assistant/default.nix
+++ b/pkgs/servers/home-assistant/default.nix
@@ -67,7 +67,7 @@ let
   extraBuildInputs = extraPackages py.pkgs;
 
   # Don't forget to run parse-requirements.py after updating
-  hassVersion = "0.106.6";
+  hassVersion = "0.107.7";
 
 in with py.pkgs; buildPythonApplication rec {
   pname = "homeassistant";
@@ -75,7 +75,9 @@ in with py.pkgs; buildPythonApplication rec {
 
   disabled = pythonOlder "3.5";
 
-  patches = [ ./relax-importlib-metadata-pyaml.patch ];
+  patches = [
+    ./relax-deps.patch
+  ];
 
   inherit availableComponents;
 
@@ -84,7 +86,7 @@ in with py.pkgs; buildPythonApplication rec {
     owner = "home-assistant";
     repo = "home-assistant";
     rev = version;
-    sha256 = "11kv5lmm8nxp7yv3w43mzmgzkafddy0z6wl2878p96iyil1w7qhb";
+    sha256 = "1sr7vzsd4hpaix37bb10vbnnqs1v8ll2wb8m713qrvcp3crs6snk";
   };
 
   propagatedBuildInputs = [
@@ -93,12 +95,12 @@ in with py.pkgs; buildPythonApplication rec {
     pyjwt cryptography pip python-slugify pytz pyyaml requests ruamel_yaml
     setuptools voluptuous voluptuous-serialize
     # From http, frontend and recorder components and auth.mfa_modules.totp
-    sqlalchemy aiohttp-cors hass-frontend pyotp pyqrcode
+    sqlalchemy aiohttp-cors hass-frontend pyotp pyqrcode ciso8601
   ] ++ componentBuildInputs ++ extraBuildInputs;
 
   checkInputs = [
     asynctest pytest pytest-aiohttp requests-mock pydispatcher aiohue netdisco
-    hass-nabucasa defusedxml
+    hass-nabucasa defusedxml zeroconf
   ];
 
   postPatch = ''
@@ -112,10 +114,12 @@ in with py.pkgs; buildPythonApplication rec {
     # - components' dependencies are not included, so they cannot be tested
     # - test_merge_id_schema requires pyqwikswitch
     # - unclear why test_merge fails: assert merge_log_err.call_count != 0
-    py.test --ignore tests/components -k "not test_merge_id_schema and not test_merge"
+    # - test_setup_safe_mode_if_no_frontend: requires dependencies for components we have not packaged
+    py.test --ignore tests/components -k "not test_setup_safe_mode_if_no_frontend and not test_merge_id_schema and not test_merge"
+
     # Some basic components should be tested however
     py.test \
-      tests/components/{api,config,configurator,demo,discovery,frontend,group,history,history_graph} \
+      tests/components/{api,config,configurator,demo,discovery,frontend,group,history} \
       tests/components/{homeassistant,http,logger,script,shell_command,system_log,websocket_api}
   '';
 
@@ -125,6 +129,6 @@ in with py.pkgs; buildPythonApplication rec {
     homepage = https://home-assistant.io/;
     description = "Open-source home automation platform running on Python 3";
     license = licenses.asl20;
-    maintainers = with maintainers; [ dotlambda globin ];
+    maintainers = with maintainers; [ dotlambda globin mic92 ];
   };
 }
diff --git a/pkgs/servers/home-assistant/esphome.nix b/pkgs/servers/home-assistant/esphome.nix
index 12b36de4965..2dc023df5a2 100644
--- a/pkgs/servers/home-assistant/esphome.nix
+++ b/pkgs/servers/home-assistant/esphome.nix
@@ -33,11 +33,9 @@ in python.pkgs.buildPythonApplication rec {
     protobuf
   ];
 
+  # remove all version pinning (E.g tornado==5.1.1 -> tornado)
   postPatch = ''
-    substituteInPlace setup.py \
-      --replace "protobuf==3.10.0" "protobuf~=3.10" \
-      --replace "paho-mqtt==1.4.0" "paho-mqtt~=1.4" \
-      --replace "tornado==5.1.1" "tornado~=5.1"
+    sed -i -e "s/==[0-9.]*//" setup.py
   '';
 
   makeWrapperArgs = [
@@ -49,11 +47,14 @@ in python.pkgs.buildPythonApplication rec {
   ];
 
   # Platformio will try to access the network
-  doCheck = false;
+  # Instead, run the executable
+  checkPhase = ''
+    $out/bin/esphome --help > /dev/null
+  '';
 
   meta = with lib; {
     description = "Make creating custom firmwares for ESP32/ESP8266 super easy";
-    homepage = https://esphome.io/;
+    homepage = "https://esphome.io/";
     license = licenses.mit;
     maintainers = with maintainers; [ dotlambda globin ];
   };
diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix
index 1446518fbc5..04cef9fa6d7 100644
--- a/pkgs/servers/home-assistant/frontend.nix
+++ b/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 = "20200220.5";
+  version = "20200318.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0nc44r5ybq0prsz2yid622i0xr7q0qrc4ymbk69bqg6jrmjpbdl1";
+    sha256 = "15by4wd3lpq1pd0hpx04v827i3xywsvxziqb1qrbsraxh1rvsbhz";
   };
 
   # no Python tests implemented
diff --git a/pkgs/servers/home-assistant/relax-deps.patch b/pkgs/servers/home-assistant/relax-deps.patch
new file mode 100644
index 00000000000..5d9716f0683
--- /dev/null
+++ b/pkgs/servers/home-assistant/relax-deps.patch
@@ -0,0 +1,13 @@
+--- a/setup.py	2020-03-18 15:34:35.474693786 +0000
++++ b/setup.py	2020-03-18 15:49:07.185801916 +0000
+@@ -47,8 +47,8 @@
+     "pip>=8.0.3",
+     "python-slugify==4.0.0",
+     "pytz>=2019.03",
+-    "pyyaml==5.3",
+-    "requests==2.23.0",
++    "pyyaml>=5.2",
++    "requests>=2.22.0",
+     "ruamel.yaml==0.15.100",
+     "voluptuous==0.11.7",
+     "voluptuous-serialize==2.3.0",
diff --git a/pkgs/servers/home-assistant/relax-importlib-metadata-pyaml.patch b/pkgs/servers/home-assistant/relax-importlib-metadata-pyaml.patch
deleted file mode 100644
index d35e05c6cd7..00000000000
--- a/pkgs/servers/home-assistant/relax-importlib-metadata-pyaml.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/setup.py b/setup.py
-index 7f9155d9a..f90a0d965 100755
---- a/setup.py
-+++ b/setup.py
-@@ -38,7 +38,7 @@ REQUIRES = [
-     "attrs==19.3.0",
-     "bcrypt==3.1.7",
-     "certifi>=2019.11.28",
--    "importlib-metadata==1.5.0",
-+    "importlib-metadata>=1.3.0",
-     "jinja2>=2.10.3",
-     "PyJWT==1.7.1",
-     # PyJWT has loose dependency. We want the latest one.
-@@ -46,7 +46,7 @@ REQUIRES = [
-     "pip>=8.0.3",
-     "python-slugify==4.0.0",
-     "pytz>=2019.03",
--    "pyyaml==5.3",
-+    "pyyaml>=5.2",
-     "requests==2.22.0",
-     "ruamel.yaml==0.15.100",
-     "voluptuous==0.11.7",
diff --git a/pkgs/servers/http/hyp/default.nix b/pkgs/servers/http/hyp/default.nix
index 3a1eb50f05b..c34959f9d04 100644
--- a/pkgs/servers/http/hyp/default.nix
+++ b/pkgs/servers/http/hyp/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, python3Packages }:
 
 python3Packages.buildPythonPackage rec {
-  name = "hyp-server-${version}";
+  pname = "hyp-server";
   version = "1.2.0";
 
-  src = fetchurl {
-    url    = "mirror://pypi/h/hyp-server/${name}.tar.gz";
+  src = python3Packages.fetchPypi {
+    inherit pname version;
     sha256 = "1lafjdcn9nnq6xc3hhyizfwh6l69lc7rixn6dx65aq71c913jc15";
   };
 
diff --git a/pkgs/servers/http/nginx/generic.nix b/pkgs/servers/http/nginx/generic.nix
index 31a501332ff..67a914b6a98 100644
--- a/pkgs/servers/http/nginx/generic.nix
+++ b/pkgs/servers/http/nginx/generic.nix
@@ -135,7 +135,7 @@ stdenv.mkDerivation {
 
   meta = if meta != null then meta else {
     description = "A reverse proxy and lightweight webserver";
-    homepage    = http://nginx.org;
+    homepage    = "http://nginx.org";
     license     = licenses.bsd2;
     platforms   = platforms.all;
     maintainers = with maintainers; [ thoughtpolice raskin fpletz globin ];
diff --git a/pkgs/servers/http/nginx/mainline.nix b/pkgs/servers/http/nginx/mainline.nix
index 8626dd4a762..b382d2891f9 100644
--- a/pkgs/servers/http/nginx/mainline.nix
+++ b/pkgs/servers/http/nginx/mainline.nix
@@ -1,6 +1,6 @@
 { callPackage, ... }@args:
 
 callPackage ./generic.nix args {
-  version = "1.17.8";
-  sha256 = "0nwn4md8sxhks2j77qq1nvk5pfz3yykfhh2b507b6l2idp7kxllp";
+  version = "1.17.9";
+  sha256 = "12dnrdxwnlid0wr797vdxj9z1fmxnk7ib55bznvl2g3mbi05vmkx";
 }
diff --git a/pkgs/servers/http/nginx/nix-etag-1.15.4.patch b/pkgs/servers/http/nginx/nix-etag-1.15.4.patch
index c1473ccdb1b..d001b842f33 100644
--- a/pkgs/servers/http/nginx/nix-etag-1.15.4.patch
+++ b/pkgs/servers/http/nginx/nix-etag-1.15.4.patch
@@ -2,38 +2,35 @@ This patch makes it possible to serve static content from Nix store paths, by
 using the hash of the store path for the ETag header.
 
 diff --git a/src/http/ngx_http_core_module.c b/src/http/ngx_http_core_module.c
-index cb49ef74..f88dc77c 100644
+index cb49ef74..7b456993 100644
 --- a/src/http/ngx_http_core_module.c
 +++ b/src/http/ngx_http_core_module.c
-@@ -1583,6 +1583,7 @@ ngx_http_set_etag(ngx_http_request_t *r)
+@@ -1583,6 +1583,8 @@ ngx_http_set_etag(ngx_http_request_t *r)
  {
      ngx_table_elt_t           *etag;
      ngx_http_core_loc_conf_t  *clcf;
 +    u_char                    *real, *ptr1, *ptr2;
++    ngx_err_t                 err;
  
      clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module);
  
-@@ -1598,16 +1599,62 @@ ngx_http_set_etag(ngx_http_request_t *r)
+@@ -1598,16 +1600,60 @@ ngx_http_set_etag(ngx_http_request_t *r)
      etag->hash = 1;
      ngx_str_set(&etag->key, "ETag");
  
 -    etag->value.data = ngx_pnalloc(r->pool, NGX_OFF_T_LEN + NGX_TIME_T_LEN + 3);
 -    if (etag->value.data == NULL) {
+-        etag->hash = 0;
+-        return NGX_ERROR;
++    err = ngx_errno;
 +    real = ngx_realpath(clcf->root.data, NULL);
++    ngx_set_errno(err);
 +
-+    if (real == NULL) {
-         etag->hash = 0;
-         return NGX_ERROR;
-     }
- 
--    etag->value.len = ngx_sprintf(etag->value.data, "\"%xT-%xO\"",
--                                  r->headers_out.last_modified_time,
--                                  r->headers_out.content_length_n)
--                      - etag->value.data;
 +    #define NIX_STORE_DIR "@nixStoreDir@"
 +    #define NIX_STORE_LEN @nixStoreDirLen@
 +
 +    if (r->headers_out.last_modified_time == 1
++        && real != NULL
 +        && !ngx_strncmp(real, NIX_STORE_DIR, NIX_STORE_LEN)
 +        && real[NIX_STORE_LEN] == '/'
 +        && real[NIX_STORE_LEN + 1] != '\0')
@@ -76,8 +73,12 @@ index cb49ef74..f88dc77c 100644
 +                                      r->headers_out.last_modified_time,
 +                                      r->headers_out.content_length_n)
 +                          - etag->value.data;
-+    }
-+
+     }
+ 
+-    etag->value.len = ngx_sprintf(etag->value.data, "\"%xT-%xO\"",
+-                                  r->headers_out.last_modified_time,
+-                                  r->headers_out.content_length_n)
+-                      - etag->value.data;
 +    ngx_free(real);
  
      r->headers_out.etag = etag;
diff --git a/pkgs/servers/http/openresty/default.nix b/pkgs/servers/http/openresty/default.nix
index 55e813a2ce7..4b5b4259ca4 100644
--- a/pkgs/servers/http/openresty/default.nix
+++ b/pkgs/servers/http/openresty/default.nix
@@ -9,11 +9,11 @@
 callPackage ../nginx/generic.nix args rec {
   pname = "openresty";
   nginxVersion = "1.15.8";
-  version = "${nginxVersion}.2";
+  version = "${nginxVersion}.3";
 
   src = fetchurl {
     url = "https://openresty.org/download/openresty-${version}.tar.gz";
-    sha256 = "05jxrb8hv758nm38jil8n63q1nhrz3d249bsrwc7maa7sn24wss3";
+    sha256 = "1a1la7vszv1parsnhphydblz64ffhycazncn3ividnvqg2mg735n";
   };
 
   fixPatch = patch:
diff --git a/pkgs/servers/http/showoff/Gemfile.lock b/pkgs/servers/http/showoff/Gemfile.lock
index ccf0415d440..34b90b3fd2f 100644
--- a/pkgs/servers/http/showoff/Gemfile.lock
+++ b/pkgs/servers/http/showoff/Gemfile.lock
@@ -70,4 +70,4 @@ DEPENDENCIES
   showoff
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/servers/http/unit/default.nix b/pkgs/servers/http/unit/default.nix
index c56e994ed54..96bc88b9f04 100644
--- a/pkgs/servers/http/unit/default.nix
+++ b/pkgs/servers/http/unit/default.nix
@@ -1,8 +1,8 @@
 { stdenv, fetchFromGitHub, which
 , withPython2 ? false, python2
 , withPython3 ? true, python3, ncurses
-, withPHP72 ? false, php72
-, withPHP73 ? true, php73
+, withPHP72 ? false, php72base
+, withPHP73 ? true, php73base
 , withPerl528 ? false, perl528
 , withPerl530 ? true, perl530
 , withPerldevel ? false, perldevel
@@ -16,7 +16,19 @@
 
 with stdenv.lib;
 
-stdenv.mkDerivation rec {
+let
+  phpConfig = {
+    config.php.embed = true;
+    config.php.apxs2 = false;
+    config.php.systemd = false;
+    config.php.phpdbg = false;
+    config.php.cgi = false;
+    config.php.fpm = false;
+  };
+
+  php72-unit = php72base.override phpConfig;
+  php73-unit = php73base.override phpConfig;
+in stdenv.mkDerivation rec {
   version = "1.16.0";
   pname = "unit";
 
@@ -37,8 +49,8 @@ stdenv.mkDerivation rec {
   buildInputs = [ ]
     ++ optional withPython2 python2
     ++ optionals withPython3 [ python3 ncurses ]
-    ++ optional withPHP72 php72
-    ++ optional withPHP73 php73
+    ++ optional withPHP72 php72-unit
+    ++ optional withPHP73 php73-unit
     ++ optional withPerl528 perl528
     ++ optional withPerl530 perl530
     ++ optional withPerldevel perldevel
@@ -59,8 +71,8 @@ stdenv.mkDerivation rec {
   postConfigure = ''
     ${optionalString withPython2    "./configure python --module=python2  --config=${python2}/bin/python2-config  --lib-path=${python2}/lib"}
     ${optionalString withPython3    "./configure python --module=python3  --config=${python3}/bin/python3-config  --lib-path=${python3}/lib"}
-    ${optionalString withPHP72      "./configure php    --module=php72    --config=${php72.dev}/bin/php-config    --lib-path=${php72}/lib"}
-    ${optionalString withPHP73      "./configure php    --module=php73    --config=${php73.dev}/bin/php-config    --lib-path=${php73}/lib"}
+    ${optionalString withPHP72      "./configure php    --module=php72    --config=${php72-unit.dev}/bin/php-config    --lib-path=${php72-unit}/lib"}
+    ${optionalString withPHP73      "./configure php    --module=php73    --config=${php73-unit.dev}/bin/php-config    --lib-path=${php73-unit}/lib"}
     ${optionalString withPerl528    "./configure perl   --module=perl528  --perl=${perl528}/bin/perl"}
     ${optionalString withPerl530    "./configure perl   --module=perl530  --perl=${perl530}/bin/perl"}
     ${optionalString withPerldevel  "./configure perl   --module=perldev  --perl=${perldevel}/bin/perl"}
diff --git a/pkgs/servers/hydron/default.nix b/pkgs/servers/hydron/default.nix
index 6ac37a98dee..145d341bb51 100644
--- a/pkgs/servers/hydron/default.nix
+++ b/pkgs/servers/hydron/default.nix
@@ -15,8 +15,10 @@ buildGoPackage {
   };
 
   enableParallelBuilding = true;
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ ffmpeg-full graphicsmagick quicktemplate go-bindata easyjson ];
+
+  nativeBuildInputs = [ pkgconfig go-bindata ];
+
+  buildInputs = [ ffmpeg-full graphicsmagick quicktemplate easyjson ];
 
   meta = with stdenv.lib; {
     homepage = "https://github.com/bakape/hydron";
diff --git a/pkgs/servers/imgproxy/default.nix b/pkgs/servers/imgproxy/default.nix
index c7d0d910ac1..faaad1ac7a7 100644
--- a/pkgs/servers/imgproxy/default.nix
+++ b/pkgs/servers/imgproxy/default.nix
@@ -1,28 +1,27 @@
-{ stdenv, buildGoModule, fetchFromGitHub, pkg-config, vips, gobject-introspection, Security }:
+{ lib, buildGoModule, fetchFromGitHub, pkg-config, vips, gobject-introspection }:
 
 buildGoModule rec {
   pname = "imgproxy";
-  version = "2.8.1";
+  version = "2.11.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
-    sha256 = "00hhgh6nrzg2blc6yl8rph5h5w7swlkbh0zgsj7xr0lkm10879pc";
+    sha256 = "1n91snf5sxsiy2r8y2nksw4ah70f70nxamy7k0ylgkpfxp4dxwb8";
     rev = "v${version}";
   };
 
-  modSha256 = "0kgd8lwcdns3skvd4bj4z85mq6hkk79mb0zzwky0wqxni8f73s6w";
+  modSha256 = "1fm3s1ksah0w86xv8xjhrbf5ia0ynfg2qgajnldy3dpdbxa3yh7s";
 
   nativeBuildInputs = [ pkg-config ];
 
-  buildInputs = [ gobject-introspection vips ]
-    ++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  buildInputs = [ gobject-introspection vips ];
 
   preBuild = ''
     export CGO_LDFLAGS_ALLOW='-(s|w)'
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Fast and secure on-the-fly image processing server written in Go";
     homepage = "https://imgproxy.net";
     license = licenses.mit;
diff --git a/pkgs/servers/jackett/default.nix b/pkgs/servers/jackett/default.nix
index 9d9ae4e25b4..1b01ffe5d69 100644
--- a/pkgs/servers/jackett/default.nix
+++ b/pkgs/servers/jackett/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "jackett";
-  version = "0.13.467";
+  version = "0.14.365";
 
   src = fetchurl {
     url = "https://github.com/Jackett/Jackett/releases/download/v${version}/Jackett.Binaries.LinuxAMDx64.tar.gz";
-    sha256 = "1hjihafb8w9gcqdi2i8dmimbbg17c5hwwqhav3avfizq2drsrv5c";
+    sha256 = "0xvlknjhc75km12d8li50ifqpfyl6whymb6gd7ccwyd9lv9xxm27";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/jellyfin/default.nix b/pkgs/servers/jellyfin/default.nix
index 6cac79bdd4e..9e79faef0f9 100644
--- a/pkgs/servers/jellyfin/default.nix
+++ b/pkgs/servers/jellyfin/default.nix
@@ -18,12 +18,12 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "jellyfin";
-  version = "10.5.0";
+  version = "10.5.3";
 
   # Impossible to build anything offline with dotnet
   src = fetchurl {
     url = "https://github.com/jellyfin/jellyfin/releases/download/v${version}/jellyfin_${version}_portable.tar.gz";
-    sha256 = "1r6ljl535f8jchm5zvrwfl4aqjk5bg7sqbwr03yyjxgriqgf36lp";
+    sha256 = "04fq3g6yddyqiixgk45x3c90zjdhkm7glahlb71fyx8ivf1qkcvs";
   };
 
   buildInputs = [
diff --git a/pkgs/servers/keycloak/default.nix b/pkgs/servers/keycloak/default.nix
index 5fe684cfe31..b5fec49b910 100644
--- a/pkgs/servers/keycloak/default.nix
+++ b/pkgs/servers/keycloak/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname   = "keycloak";
-  version = "9.0.0";
+  version = "9.0.2";
 
   src = fetchzip {
     url    = "https://downloads.jboss.org/keycloak/${version}/keycloak-${version}.zip";
-    sha256 = "1w2d76v1rjghvdks1w32qi08gh88cd37vbf6vx0kq9a2gnhn7hip";
+    sha256 = "0yavkmwhjb8i4j3g57nda77simlf1dj1m751xzbgxxq6nd0q73lw";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -28,6 +28,7 @@ stdenv.mkDerivation rec {
     homepage    = "https://www.keycloak.org/";
     description = "Identity and access management for modern applications and services";
     license     = licenses.asl20;
+    platforms   = jre.meta.platforms;
     maintainers = [ maintainers.ngerstle ];
   };
 
diff --git a/pkgs/servers/livepeer/default.nix b/pkgs/servers/livepeer/default.nix
index 64edcb2ef4f..547a106a398 100644
--- a/pkgs/servers/livepeer/default.nix
+++ b/pkgs/servers/livepeer/default.nix
@@ -16,7 +16,9 @@ buildGoPackage rec {
     sha256 = "07vhw787wq5q4xm7zvswjdsmr20pwfa39wfkgamb7hkrffn3k2ia";
   };
 
-  buildInputs = [ pkgconfig ffmpeg ];
+  nativeBuildInputs = [ pkgconfig ];
+
+  buildInputs = [ ffmpeg ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/servers/mail/rspamd/default.nix b/pkgs/servers/mail/rspamd/default.nix
index 79020ce7848..7b9e766f246 100644
--- a/pkgs/servers/mail/rspamd/default.nix
+++ b/pkgs/servers/mail/rspamd/default.nix
@@ -10,13 +10,13 @@ assert withHyperscan -> stdenv.isx86_64;
 
 stdenv.mkDerivation rec {
   pname = "rspamd";
-  version = "2.4";
+  version = "2.5";
 
   src = fetchFromGitHub {
     owner = "rspamd";
     repo = "rspamd";
     rev = version;
-    sha256 = "15rdxcvnfn3fzjpjz6z2ljrzhlmhn2y4sxz09z2789k442n4m1qv";
+    sha256 = "01fhh07dddc6v7a5kq6h1z221vl0d4af43cchqkf54ycyxxxw06h";
   };
 
   nativeBuildInputs = [ cmake pkgconfig perl ];
diff --git a/pkgs/servers/mail/sympa/default.nix b/pkgs/servers/mail/sympa/default.nix
index 46cbcc61f94..c5c9b440049 100644
--- a/pkgs/servers/mail/sympa/default.nix
+++ b/pkgs/servers/mail/sympa/default.nix
@@ -1,5 +1,4 @@
-{ stdenv, perl, fetchFromGitHub, autoreconfHook
-}:
+{ stdenv, perl, fetchFromGitHub, autoreconfHook, nixosTests }:
 
 let
   dataDir = "/var/lib/sympa";
@@ -64,16 +63,17 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "sympa";
-  version = "6.2.52";
+  version = "6.2.54";
 
   src = fetchFromGitHub {
     owner = "sympa-community";
     repo = pname;
     rev = version;
-    sha256 = "071kx6ryifs2f6fhfky9g297frzp5584kn444af1vb2imzydsbnh";
+    sha256 = "07wfvr8rrg7pwkl2zglrdri7n42rl9gwrjbaffb8m37wq67s7fca";
   };
 
   configureFlags = [
+    "--enable-fhs"
     "--without-initdir"
     "--without-unitsdir"
     "--without-smrshdir"
@@ -106,6 +106,10 @@ stdenv.mkDerivation rec {
     rm -rf "$TMP/bin"
   '';
 
+  passthru.tests = {
+    inherit (nixosTests) sympa;
+  };
+
   meta = with stdenv.lib; {
     description = "Open source mailing list manager";
     homepage = "https://www.sympa.org";
diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix
index 8da5d4676d6..6b06a493509 100644
--- a/pkgs/servers/matrix-synapse/default.nix
+++ b/pkgs/servers/matrix-synapse/default.nix
@@ -23,11 +23,11 @@ let
 
 in buildPythonApplication rec {
   pname = "matrix-synapse";
-  version = "1.11.1";
+  version = "1.12.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0xd4bxsmk67r6pfj5lh0hn36r8z51mxsl39fjfrfdidvl1qqbxnk";
+    sha256 = "0l3a5dvnahrzwqh8p0cnfr019bxxgd769jk2wprfvfd65h7p0g1r";
   };
 
   patches = [
diff --git a/pkgs/servers/matterbridge/default.nix b/pkgs/servers/matterbridge/default.nix
index 2eec5d52bb9..1f39278de62 100644
--- a/pkgs/servers/matterbridge/default.nix
+++ b/pkgs/servers/matterbridge/default.nix
@@ -1,19 +1,17 @@
-{ stdenv, buildGoModule, fetchurl, Security }:
+{ stdenv, buildGoModule, fetchurl }:
 
 buildGoModule rec {
   pname = "matterbridge";
-  version = "1.16.5";
+  version = "1.17.1";
 
   goPackagePath = "github.com/42wim/matterbridge";
-  modSha256 = "0nnp9jxdsr2bs1pg00vd7wpv452iyxws8g3ljzypkb7hzlphcxqh";
+  modSha256 = "1mqp8dlwa4p70iv9ksq3pxx5zbxdh56xyksvd98zk0vkrz4f1rij";
 
   src = fetchurl {
     url = "https://github.com/42wim/matterbridge/archive/v${version}.tar.gz";
-    sha256 = "15wgjzy9l3xlgih2zb56l4jmval4nhcs42wn9axvz2h7kqfbmw3d";
+    sha256 = "0xf0s1bvlzqnxz2kvqx1h9gmgqxdlf34s27s3zradi8fwd8hriv6";
   };
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "Simple bridge between Mattermost, IRC, XMPP, Gitter, Slack, Discord, Telegram, Rocket.Chat, Hipchat(via xmpp), Matrix and Steam";
     homepage = "https://github.com/42wim/matterbridge";
diff --git a/pkgs/servers/mautrix-telegram/default.nix b/pkgs/servers/mautrix-telegram/default.nix
index 73a008d3fe7..f5f624c06d9 100644
--- a/pkgs/servers/mautrix-telegram/default.nix
+++ b/pkgs/servers/mautrix-telegram/default.nix
@@ -4,12 +4,12 @@ with python3.pkgs;
 
 buildPythonPackage rec {
   pname = "mautrix-telegram";
-  version = "0.7.1";
+  version = "0.7.2";
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1yi4h37lhlpa095hzd0gwn1ifbycq8878kj5n2sjhw8kk6nblda9";
+    sha256 = "1ahchkhrhyd160fwlg6g0d2v8v56j9f3h9rnm71nxibgfjcb6m3n";
   };
 
   postPatch = ''
diff --git a/pkgs/servers/mautrix-whatsapp/default.nix b/pkgs/servers/mautrix-whatsapp/default.nix
index b94eb00547a..0b4aff676fe 100644
--- a/pkgs/servers/mautrix-whatsapp/default.nix
+++ b/pkgs/servers/mautrix-whatsapp/default.nix
@@ -1,19 +1,17 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule {
   pname = "mautrix-whatsapp-unstable";
-  version = "2020-02-09";
+  version = "2020-04-02";
 
   src = fetchFromGitHub {
     owner = "tulir";
     repo = "mautrix-whatsapp";
-    rev = "260555b69ccd20f247405e4d8cab3d49fabda070";
-    sha256 = "1ykhwrp8bvhzzw4lg4m1w430ybgzd0zqgrs4jrvfd1m0als2iff7";
+    rev = "064b5b8fedb6896d04509aa0e094a8d9f83426c2";
+    sha256 = "1xky31x5jk7yxh875nk20vvsn9givy6vxdqhqg5qwf4xjj2zqh2p";
   };
 
-  modSha256 = "0ypj79rjwj5bls6aq2cz0d034dnv1sddl43iz51b4fl2bfv0drm9";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "0qcxxhfp3fkx90r3lwhi0lkzg3digwrnxk8cack11k717szg7zrd";
 
   meta = with stdenv.lib; {
     homepage = https://github.com/tulir/mautrix-whatsapp;
diff --git a/pkgs/servers/meguca/default.nix b/pkgs/servers/meguca/default.nix
index 47530ba9db6..3088ee190e7 100644
--- a/pkgs/servers/meguca/default.nix
+++ b/pkgs/servers/meguca/default.nix
@@ -17,10 +17,10 @@ buildGoPackage {
   };
 
   enableParallelBuilding = true;
-  nativeBuildInputs = [ pkgconfig cmake ];
+  nativeBuildInputs = [ pkgconfig cmake go-bindata ];
 
   buildInputs = [
-    ffmpeg-full graphicsmagick ghostscript quicktemplate go-bindata
+    ffmpeg-full graphicsmagick ghostscript quicktemplate
     easyjson emscripten opencv statik
   ];
 
diff --git a/pkgs/servers/memcached/default.nix b/pkgs/servers/memcached/default.nix
index 98bd92c7531..c6c8ddbfbed 100644
--- a/pkgs/servers/memcached/default.nix
+++ b/pkgs/servers/memcached/default.nix
@@ -1,24 +1,14 @@
-{stdenv, fetchurl, fetchpatch, cyrus_sasl, libevent}:
+{stdenv, fetchurl, cyrus_sasl, libevent, nixosTests }:
 
 stdenv.mkDerivation rec {
-  version = "1.5.22";
+  version = "1.6.3";
   pname = "memcached";
 
   src = fetchurl {
     url = "https://memcached.org/files/${pname}-${version}.tar.gz";
-    sha256 = "14qzbxgz40j4yhi3lzrsdjd6kyy3zwv9c8kw11kj6njp42fpxd62";
+    sha256 = "0h0mlg3xz1y889xj6lcsb4sz9bar1birc2wzjf7x4ig31qib6r0w";
   };
 
-  patches = [
-    # Fixes compilation error on Darwin due to redeclaration of
-    # htonll. The fix should appear in 1.5.23.
-    # https://github.com/memcached/memcached/issues/598
-    (fetchpatch {
-      url = "https://github.com/memcached/memcached/commit/95c67710aaf5cfe188d94b510faef8c66d6f5604.diff";
-      sha256 = "0ab5l24p4n4fpx78ilmg7jvs9nl84pdza90jbpbx3ns5n23pqbfs";
-    })
-  ];
-
   configureFlags = [
      "ac_cv_c_endian=${if stdenv.hostPlatform.isBigEndian then "big" else "little"}"
   ];
@@ -32,9 +22,12 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A distributed memory object caching system";
     repositories.git = https://github.com/memcached/memcached.git;
-    homepage = http://memcached.org/;
+    homepage = "http://memcached.org/";
     license = licenses.bsd3;
     maintainers = [ maintainers.coconnor ];
     platforms = platforms.linux ++ platforms.darwin;
   };
+  passthru.tests = {
+    smoke-tests = nixosTests.memcached;
+  };
 }
diff --git a/pkgs/servers/metabase/default.nix b/pkgs/servers/metabase/default.nix
index 2a4ac3e1776..b2e040748ab 100644
--- a/pkgs/servers/metabase/default.nix
+++ b/pkgs/servers/metabase/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "metabase";
-  version = "0.34.3";
+  version = "0.35.1";
 
   src = fetchurl {
     url = "http://downloads.metabase.com/v${version}/metabase.jar";
-    sha256 = "0kvjqdzr9zb65c2kaqb39x8s71ynpp56aax2h1x37rds4zxdg2yg";
+    sha256 = "1c8mxadf8siakhgdkbw5d8r6ph9lqxrw5wlrrc8a5ycp43h0z226";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/meteor/default.nix b/pkgs/servers/meteor/default.nix
index c2f0ffa59b9..b6abec241a5 100644
--- a/pkgs/servers/meteor/default.nix
+++ b/pkgs/servers/meteor/default.nix
@@ -1,7 +1,7 @@
 { stdenv, lib, fetchurl, zlib, patchelf, runtimeShell }:
 
 let
-  version = "1.8.2";
+  version = "1.9.3";
 in
 
 stdenv.mkDerivation {
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
   pname = "meteor";
   src = fetchurl {
     url = "https://static-meteor.netdna-ssl.com/packages-bootstrap/${version}/meteor-bootstrap-os.linux.x86_64.tar.gz";
-    sha256 = "1pydmwx1yjbw54qfq7ndw2l3i3v302bvasvf71x4y9572r2p99mp";
+    sha256 = "1njp2db939w3ah5k943bkgm62k969fj47qwmlzvhmmg87xwnq3fb";
   };
 
   #dontStrip = true;
@@ -82,7 +82,7 @@ stdenv.mkDerivation {
 
   meta = with lib; {
     description = "Complete open source platform for building web and mobile apps in pure JavaScript";
-    homepage = http://www.meteor.com;
+    homepage = "http://www.meteor.com";
     license = licenses.mit;
     platforms = [ "x86_64-linux" ];
     maintainers = with maintainers; [ cstrahan ];
diff --git a/pkgs/servers/minio/default.nix b/pkgs/servers/minio/default.nix
index 1fae973066a..953cc9fb77c 100644
--- a/pkgs/servers/minio/default.nix
+++ b/pkgs/servers/minio/default.nix
@@ -1,19 +1,17 @@
-{ stdenv, buildGoModule, fetchFromGitHub, CoreServices }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "minio";
-  version = "2020-03-06T22-23-56Z";
+  version = "2020-03-25T07-03-04Z";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "minio";
     rev = "RELEASE.${version}";
-    sha256 = "0h5zsdxm2b2by6lzqaa7jj0z773kjr89cl13gq9ddabml34f0kxh";
+    sha256 = "0xdflc7pfx1misbh695x8kmqpysi5iydsarr9mwmjragf5b1kbl5";
   };
 
-  modSha256 = "0ikid628v673f7lvp3psk05s3liqlyc3arppg33lfi2cmbaf8hmr";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
+  modSha256 = "09kbibsfa7qq55paqr7wcs4gpwk6g5pknc5fjssmd12nm2cji96k";
 
   subPackages = [ "." ];
 
@@ -22,7 +20,7 @@ buildGoModule rec {
   ''];
 
   meta = with stdenv.lib; {
-    homepage = https://www.minio.io/;
+    homepage = "https://www.minio.io/";
     description = "An S3-compatible object storage server";
     maintainers = with maintainers; [ eelco bachp ];
     platforms = platforms.unix;
diff --git a/pkgs/servers/monitoring/grafana/default.nix b/pkgs/servers/monitoring/grafana/default.nix
index ff283396e22..ac50717208a 100644
--- a/pkgs/servers/monitoring/grafana/default.nix
+++ b/pkgs/servers/monitoring/grafana/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "grafana";
-  version = "6.7.1";
+  version = "6.7.2";
 
   goPackagePath = "github.com/grafana/grafana";
 
@@ -12,12 +12,12 @@ buildGoPackage rec {
     rev = "v${version}";
     owner = "grafana";
     repo = "grafana";
-    sha256 = "0isidfnny4rds9mq7gfm3qmsjsg9higiqliri5zy5bc68lz1gnbz";
+    sha256 = "03f6f9caxphrfbps0ljwwiq246vfjlznd8xs7a7va7kb823ff5li";
   };
 
   srcStatic = fetchurl {
     url = "https://dl.grafana.com/oss/release/grafana-${version}.linux-amd64.tar.gz";
-    sha256 = "0pa5g9pgifdi49vklcxnip2a156f5x64i9r2pshdg4gxfdqbxkxy";
+    sha256 = "0sgpc34jfldi0hkbqx9idkzm1n1jy82yhg29kdsvndxvi44z49lv";
   };
 
   postPatch = ''
diff --git a/pkgs/servers/monitoring/loki/default.nix b/pkgs/servers/monitoring/loki/default.nix
index b5e63a3aed4..a4117d923e3 100644
--- a/pkgs/servers/monitoring/loki/default.nix
+++ b/pkgs/servers/monitoring/loki/default.nix
@@ -1,7 +1,7 @@
 { stdenv, buildGoPackage, fetchFromGitHub, makeWrapper, systemd }:
 
 buildGoPackage rec {
-  version = "1.3.0";
+  version = "1.4.0";
   pname = "grafana-loki";
   goPackagePath = "github.com/grafana/loki";
 
@@ -11,7 +11,7 @@ buildGoPackage rec {
     rev = "v${version}";
     owner = "grafana";
     repo = "loki";
-    sha256 = "0b1dpb3vh5i18467qk8kpb5ic14p4p1dfyr8hjkznf6bs7g8ka1q";
+    sha256 = "0dz0icbkwpmysl5jyljmj783xdzrbbxbfxfkizw7gcs8jjxbqvfl";
   };
 
   postPatch = ''
diff --git a/pkgs/servers/monitoring/mtail/default.nix b/pkgs/servers/monitoring/mtail/default.nix
index 75b58b65a9c..64966e183fe 100644
--- a/pkgs/servers/monitoring/mtail/default.nix
+++ b/pkgs/servers/monitoring/mtail/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ lib, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   pname = "mtail";
@@ -14,8 +14,6 @@ buildGoModule rec {
   modSha256 = "0h3q1qd9a01wlfkk0yv74a4bk5nilpsppq522cv7kl8ysnrjh5yi";
   subPackages = [ "cmd/mtail" ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   preBuild = ''
     go generate -x ./internal/vm/
   '';
@@ -24,7 +22,7 @@ buildGoModule rec {
     "-ldflags=-X main.Version=${version}"
   ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     license = licenses.asl20;
     homepage = "https://github.com/google/mtail";
     description = "Tool for extracting metrics from application logs";
diff --git a/pkgs/servers/monitoring/munin/default.nix b/pkgs/servers/monitoring/munin/default.nix
index 22f768b94e1..02a81bfe33c 100644
--- a/pkgs/servers/monitoring/munin/default.nix
+++ b/pkgs/servers/monitoring/munin/default.nix
@@ -3,14 +3,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "2.0.51";
+  version = "2.0.59";
   pname = "munin";
 
   src = fetchFromGitHub {
     owner = "munin-monitoring";
     repo = "munin";
     rev = version;
-    sha256 = "1r018lbk1dncg6v3ai7wvnk1qr4ddsjc5g605dq086z0l0xg7ras";
+    sha256 = "1i28ba53gh9z0mb3fk0y3cb88wh73qdlbg7rl5g9mc6iwqrbvg97";
   };
 
   buildInputs = [
@@ -134,7 +134,7 @@ stdenv.mkDerivation rec {
       interface. Munin can help analyze resource trends and 'what just happened
       to kill our performance?' problems.
     '';
-    homepage = http://munin-monitoring.org/;
+    homepage = "http://munin-monitoring.org/";
     license = licenses.gpl2;
     maintainers = [ maintainers.domenkozar maintainers.bjornfor ];
     platforms = platforms.linux;
diff --git a/pkgs/servers/monitoring/prometheus/default.nix b/pkgs/servers/monitoring/prometheus/default.nix
index a01f4559a11..d0b413a10a0 100644
--- a/pkgs/servers/monitoring/prometheus/default.nix
+++ b/pkgs/servers/monitoring/prometheus/default.nix
@@ -1,13 +1,13 @@
 { lib, go, buildGoPackage, fetchFromGitHub, mkYarnPackage }:
 
 let
-  version = "2.16.0";
+  version = "2.17.1";
 
   src = fetchFromGitHub {
     rev = "v${version}";
     owner = "prometheus";
     repo = "prometheus";
-    sha256 = "1bfcl3bvjb991ic8jw6y6i9pn7y03v8gwzzc78j1k5lhpqzbxkzd";
+    sha256 = "0ai9l7gx25x5m07617c0cjzwxknywwq822fn2q5b850hvs48whyv";
   };
 
   webui = mkYarnPackage {
diff --git a/pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix b/pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix
index 773fddd311b..c8013e6bc15 100644
--- a/pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/dnsmasq-exporter.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "dnsmasq_exporter";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "1ag1k0z35zkazaxj8hh2wxfj73xg63xdybfm1565il2vxs5986dh";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     inherit (src.meta) homepage;
     description = "A dnsmasq exporter for Prometheus";
diff --git a/pkgs/servers/monitoring/prometheus/mikrotik-exporter.nix b/pkgs/servers/monitoring/prometheus/mikrotik-exporter.nix
index 96526d246a6..12341eee911 100644
--- a/pkgs/servers/monitoring/prometheus/mikrotik-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/mikrotik-exporter.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "mikrotik-exporter-unstable";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "1cqjn6j3dfq51ssjx0qrajprlac1h0lb1r4af44lfpigzmrfyi07";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     inherit (src.meta) homepage;
     description = "Prometheus MikroTik device(s) exporter";
diff --git a/pkgs/servers/monitoring/prometheus/varnish-exporter.nix b/pkgs/servers/monitoring/prometheus/varnish-exporter.nix
index a0e3c6b1783..d7767567195 100644
--- a/pkgs/servers/monitoring/prometheus/varnish-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/varnish-exporter.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, makeWrapper, varnish, Security }:
+{ lib, buildGoModule, fetchFromGitHub, makeWrapper, varnish }:
 
 buildGoModule rec {
   pname = "prometheus_varnish_exporter";
@@ -15,8 +15,6 @@ buildGoModule rec {
 
   nativeBuildInputs = [ makeWrapper ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   postInstall = ''
     wrapProgram $out/bin/prometheus_varnish_exporter \
       --prefix PATH : "${varnish}/bin"
@@ -24,10 +22,10 @@ buildGoModule rec {
 
   doCheck = true;
 
-  meta = with stdenv.lib; {
+  meta = {
     homepage = "https://github.com/jonnenauha/prometheus_varnish_exporter";
     description = "Varnish exporter for Prometheus";
-    license = licenses.mit;
-    maintainers = with maintainers; [ MostAwesomeDude willibutz ];
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ MostAwesomeDude willibutz ];
   };
 }
diff --git a/pkgs/servers/monitoring/prometheus/webui-package.json b/pkgs/servers/monitoring/prometheus/webui-package.json
index 71b9a45f906..5ae33ae62df 100644
--- a/pkgs/servers/monitoring/prometheus/webui-package.json
+++ b/pkgs/servers/monitoring/prometheus/webui-package.json
@@ -18,6 +18,7 @@
     "@types/react-resize-detector": "^4.0.2",
     "@types/sanitize-html": "^1.20.2",
     "bootstrap": "^4.2.1",
+    "css.escape": "^1.5.1",
     "downshift": "^3.2.2",
     "enzyme-to-json": "^3.4.3",
     "fuzzy": "^0.1.3",
@@ -33,7 +34,7 @@
     "react-copy-to-clipboard": "^5.0.1",
     "react-dom": "^16.7.0",
     "react-resize-detector": "^4.2.1",
-    "react-scripts": "^3.2.0",
+    "react-scripts": "^3.4.0",
     "react-test-renderer": "^16.9.0",
     "reactstrap": "^8.0.1",
     "sanitize-html": "^1.20.1",
diff --git a/pkgs/servers/monitoring/prometheus/webui-yarndeps.nix b/pkgs/servers/monitoring/prometheus/webui-yarndeps.nix
index 1793b4a5c3f..0d8652982cd 100644
--- a/pkgs/servers/monitoring/prometheus/webui-yarndeps.nix
+++ b/pkgs/servers/monitoring/prometheus/webui-yarndeps.nix
@@ -2,771 +2,811 @@
   offline_cache = linkFarm "offline" packages;
   packages = [
     {
-      name = "_babel_code_frame___code_frame_7.5.5.tgz";
+      name = "_babel_code_frame___code_frame_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_code_frame___code_frame_7.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.5.5.tgz";
-        sha1 = "bc0782f6d69f7b7d49531219699b988f669a8f9d";
+        name = "_babel_code_frame___code_frame_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.8.3.tgz";
+        sha1 = "33e25903d7481181534e12ec0a25f16b6fcf419e";
       };
     }
     {
-      name = "_babel_core___core_7.6.0.tgz";
+      name = "_babel_compat_data___compat_data_7.8.5.tgz";
       path = fetchurl {
-        name = "_babel_core___core_7.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/core/-/core-7.6.0.tgz";
-        sha1 = "9b00f73554edd67bebc86df8303ef678be3d7b48";
+        name = "_babel_compat_data___compat_data_7.8.5.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.8.5.tgz";
+        sha1 = "d28ce872778c23551cbb9432fc68d28495b613b9";
       };
     }
     {
-      name = "_babel_core___core_7.6.4.tgz";
+      name = "_babel_core___core_7.8.4.tgz";
       path = fetchurl {
-        name = "_babel_core___core_7.6.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/core/-/core-7.6.4.tgz";
-        sha1 = "6ebd9fe00925f6c3e177bb726a188b5f578088ff";
+        name = "_babel_core___core_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/core/-/core-7.8.4.tgz";
+        sha1 = "d496799e5c12195b3602d0fddd77294e3e38e80e";
       };
     }
     {
-      name = "_babel_generator___generator_7.6.4.tgz";
+      name = "_babel_generator___generator_7.8.4.tgz";
       path = fetchurl {
-        name = "_babel_generator___generator_7.6.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.6.4.tgz";
-        sha1 = "a4f8437287bf9671b07f483b76e3bb731bc97671";
+        name = "_babel_generator___generator_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/generator/-/generator-7.8.4.tgz";
+        sha1 = "35bbc74486956fe4251829f9f6c48330e8d0985e";
       };
     }
     {
-      name = "_babel_helper_annotate_as_pure___helper_annotate_as_pure_7.0.0.tgz";
+      name = "_babel_helper_annotate_as_pure___helper_annotate_as_pure_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_annotate_as_pure___helper_annotate_as_pure_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz";
-        sha1 = "323d39dd0b50e10c7c06ca7d7638e6864d8c5c32";
+        name = "_babel_helper_annotate_as_pure___helper_annotate_as_pure_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz";
+        sha1 = "60bc0bc657f63a0924ff9a4b4a0b24a13cf4deee";
       };
     }
     {
-      name = "_babel_helper_builder_binary_assignment_operator_visitor___helper_builder_binary_assignment_operator_visitor_7.1.0.tgz";
+      name = "_babel_helper_builder_binary_assignment_operator_visitor___helper_builder_binary_assignment_operator_visitor_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_builder_binary_assignment_operator_visitor___helper_builder_binary_assignment_operator_visitor_7.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz";
-        sha1 = "6b69628dfe4087798e0c4ed98e3d4a6b2fbd2f5f";
+        name = "_babel_helper_builder_binary_assignment_operator_visitor___helper_builder_binary_assignment_operator_visitor_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.8.3.tgz";
+        sha1 = "c84097a427a061ac56a1c30ebf54b7b22d241503";
       };
     }
     {
-      name = "_babel_helper_builder_react_jsx___helper_builder_react_jsx_7.3.0.tgz";
+      name = "_babel_helper_builder_react_jsx___helper_builder_react_jsx_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_builder_react_jsx___helper_builder_react_jsx_7.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.3.0.tgz";
-        sha1 = "a1ac95a5d2b3e88ae5e54846bf462eeb81b318a4";
+        name = "_babel_helper_builder_react_jsx___helper_builder_react_jsx_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.8.3.tgz";
+        sha1 = "dee98d7d79cc1f003d80b76fe01c7f8945665ff6";
       };
     }
     {
-      name = "_babel_helper_call_delegate___helper_call_delegate_7.4.4.tgz";
+      name = "_babel_helper_call_delegate___helper_call_delegate_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_call_delegate___helper_call_delegate_7.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.4.4.tgz";
-        sha1 = "87c1f8ca19ad552a736a7a27b1c1fcf8b1ff1f43";
+        name = "_babel_helper_call_delegate___helper_call_delegate_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-call-delegate/-/helper-call-delegate-7.8.3.tgz";
+        sha1 = "de82619898aa605d409c42be6ffb8d7204579692";
       };
     }
     {
-      name = "_babel_helper_create_class_features_plugin___helper_create_class_features_plugin_7.6.0.tgz";
+      name = "_babel_helper_compilation_targets___helper_compilation_targets_7.8.4.tgz";
       path = fetchurl {
-        name = "_babel_helper_create_class_features_plugin___helper_create_class_features_plugin_7.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.6.0.tgz";
-        sha1 = "769711acca889be371e9bc2eb68641d55218021f";
+        name = "_babel_helper_compilation_targets___helper_compilation_targets_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.8.4.tgz";
+        sha1 = "03d7ecd454b7ebe19a254f76617e61770aed2c88";
       };
     }
     {
-      name = "_babel_helper_define_map___helper_define_map_7.5.5.tgz";
+      name = "_babel_helper_create_class_features_plugin___helper_create_class_features_plugin_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_define_map___helper_define_map_7.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.5.5.tgz";
-        sha1 = "3dec32c2046f37e09b28c93eb0b103fd2a25d369";
+        name = "_babel_helper_create_class_features_plugin___helper_create_class_features_plugin_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.8.3.tgz";
+        sha1 = "5b94be88c255f140fd2c10dd151e7f98f4bff397";
       };
     }
     {
-      name = "_babel_helper_explode_assignable_expression___helper_explode_assignable_expression_7.1.0.tgz";
+      name = "_babel_helper_create_regexp_features_plugin___helper_create_regexp_features_plugin_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_explode_assignable_expression___helper_explode_assignable_expression_7.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz";
-        sha1 = "537fa13f6f1674df745b0c00ec8fe4e99681c8f6";
+        name = "_babel_helper_create_regexp_features_plugin___helper_create_regexp_features_plugin_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.3.tgz";
+        sha1 = "c774268c95ec07ee92476a3862b75cc2839beb79";
       };
     }
     {
-      name = "_babel_helper_function_name___helper_function_name_7.1.0.tgz";
+      name = "_babel_helper_define_map___helper_define_map_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_function_name___helper_function_name_7.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz";
-        sha1 = "a0ceb01685f73355d4360c1247f582bfafc8ff53";
+        name = "_babel_helper_define_map___helper_define_map_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-define-map/-/helper-define-map-7.8.3.tgz";
+        sha1 = "a0655cad5451c3760b726eba875f1cd8faa02c15";
       };
     }
     {
-      name = "_babel_helper_get_function_arity___helper_get_function_arity_7.0.0.tgz";
+      name = "_babel_helper_explode_assignable_expression___helper_explode_assignable_expression_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_get_function_arity___helper_get_function_arity_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz";
-        sha1 = "83572d4320e2a4657263734113c42868b64e49c3";
+        name = "_babel_helper_explode_assignable_expression___helper_explode_assignable_expression_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.8.3.tgz";
+        sha1 = "a728dc5b4e89e30fc2dfc7d04fa28a930653f982";
       };
     }
     {
-      name = "_babel_helper_hoist_variables___helper_hoist_variables_7.4.4.tgz";
+      name = "_babel_helper_function_name___helper_function_name_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_hoist_variables___helper_hoist_variables_7.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.4.4.tgz";
-        sha1 = "0298b5f25c8c09c53102d52ac4a98f773eb2850a";
+        name = "_babel_helper_function_name___helper_function_name_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz";
+        sha1 = "eeeb665a01b1f11068e9fb86ad56a1cb1a824cca";
       };
     }
     {
-      name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.5.5.tgz";
+      name = "_babel_helper_get_function_arity___helper_get_function_arity_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.5.5.tgz";
-        sha1 = "1fb5b8ec4453a93c439ee9fe3aeea4a84b76b590";
+        name = "_babel_helper_get_function_arity___helper_get_function_arity_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz";
+        sha1 = "b894b947bd004381ce63ea1db9f08547e920abd5";
       };
     }
     {
-      name = "_babel_helper_module_imports___helper_module_imports_7.0.0.tgz";
+      name = "_babel_helper_hoist_variables___helper_hoist_variables_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_module_imports___helper_module_imports_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz";
-        sha1 = "96081b7111e486da4d2cd971ad1a4fe216cc2e3d";
+        name = "_babel_helper_hoist_variables___helper_hoist_variables_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.8.3.tgz";
+        sha1 = "1dbe9b6b55d78c9b4183fc8cdc6e30ceb83b7134";
       };
     }
     {
-      name = "_babel_helper_module_transforms___helper_module_transforms_7.5.5.tgz";
+      name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_module_transforms___helper_module_transforms_7.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.5.5.tgz";
-        sha1 = "f84ff8a09038dcbca1fd4355661a500937165b4a";
+        name = "_babel_helper_member_expression_to_functions___helper_member_expression_to_functions_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz";
+        sha1 = "659b710498ea6c1d9907e0c73f206eee7dadc24c";
       };
     }
     {
-      name = "_babel_helper_optimise_call_expression___helper_optimise_call_expression_7.0.0.tgz";
+      name = "_babel_helper_module_imports___helper_module_imports_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_optimise_call_expression___helper_optimise_call_expression_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz";
-        sha1 = "a2920c5702b073c15de51106200aa8cad20497d5";
+        name = "_babel_helper_module_imports___helper_module_imports_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz";
+        sha1 = "7fe39589b39c016331b6b8c3f441e8f0b1419498";
       };
     }
     {
-      name = "_babel_helper_plugin_utils___helper_plugin_utils_7.0.0.tgz";
+      name = "_babel_helper_module_transforms___helper_module_transforms_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_plugin_utils___helper_plugin_utils_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz";
-        sha1 = "bbb3fbee98661c569034237cc03967ba99b4f250";
+        name = "_babel_helper_module_transforms___helper_module_transforms_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.8.3.tgz";
+        sha1 = "d305e35d02bee720fbc2c3c3623aa0c316c01590";
       };
     }
     {
-      name = "_babel_helper_regex___helper_regex_7.5.5.tgz";
+      name = "_babel_helper_optimise_call_expression___helper_optimise_call_expression_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_regex___helper_regex_7.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.5.5.tgz";
-        sha1 = "0aa6824f7100a2e0e89c1527c23936c152cab351";
+        name = "_babel_helper_optimise_call_expression___helper_optimise_call_expression_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz";
+        sha1 = "7ed071813d09c75298ef4f208956006b6111ecb9";
       };
     }
     {
-      name = "_babel_helper_remap_async_to_generator___helper_remap_async_to_generator_7.1.0.tgz";
+      name = "_babel_helper_plugin_utils___helper_plugin_utils_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_remap_async_to_generator___helper_remap_async_to_generator_7.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz";
-        sha1 = "361d80821b6f38da75bd3f0785ece20a88c5fe7f";
+        name = "_babel_helper_plugin_utils___helper_plugin_utils_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz";
+        sha1 = "9ea293be19babc0f52ff8ca88b34c3611b208670";
       };
     }
     {
-      name = "_babel_helper_replace_supers___helper_replace_supers_7.5.5.tgz";
+      name = "_babel_helper_regex___helper_regex_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_replace_supers___helper_replace_supers_7.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.5.5.tgz";
-        sha1 = "f84ce43df031222d2bad068d2626cb5799c34bc2";
+        name = "_babel_helper_regex___helper_regex_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-regex/-/helper-regex-7.8.3.tgz";
+        sha1 = "139772607d51b93f23effe72105b319d2a4c6965";
       };
     }
     {
-      name = "_babel_helper_simple_access___helper_simple_access_7.1.0.tgz";
+      name = "_babel_helper_remap_async_to_generator___helper_remap_async_to_generator_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_simple_access___helper_simple_access_7.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz";
-        sha1 = "65eeb954c8c245beaa4e859da6188f39d71e585c";
+        name = "_babel_helper_remap_async_to_generator___helper_remap_async_to_generator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.3.tgz";
+        sha1 = "273c600d8b9bf5006142c1e35887d555c12edd86";
       };
     }
     {
-      name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.4.4.tgz";
+      name = "_babel_helper_replace_supers___helper_replace_supers_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz";
-        sha1 = "ff94894a340be78f53f06af038b205c49d993677";
+        name = "_babel_helper_replace_supers___helper_replace_supers_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.8.3.tgz";
+        sha1 = "91192d25f6abbcd41da8a989d4492574fb1530bc";
       };
     }
     {
-      name = "_babel_helper_wrap_function___helper_wrap_function_7.2.0.tgz";
+      name = "_babel_helper_simple_access___helper_simple_access_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helper_wrap_function___helper_wrap_function_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz";
-        sha1 = "c4e0012445769e2815b55296ead43a958549f6fa";
+        name = "_babel_helper_simple_access___helper_simple_access_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz";
+        sha1 = "7f8109928b4dab4654076986af575231deb639ae";
       };
     }
     {
-      name = "_babel_helpers___helpers_7.6.2.tgz";
+      name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_helpers___helpers_7.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.6.2.tgz";
-        sha1 = "681ffe489ea4dcc55f23ce469e58e59c1c045153";
+        name = "_babel_helper_split_export_declaration___helper_split_export_declaration_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz";
+        sha1 = "31a9f30070f91368a7182cf05f831781065fc7a9";
       };
     }
     {
-      name = "_babel_highlight___highlight_7.5.0.tgz";
+      name = "_babel_helper_wrap_function___helper_wrap_function_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_highlight___highlight_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.5.0.tgz";
-        sha1 = "56d11312bd9248fa619591d02472be6e8cb32540";
+        name = "_babel_helper_wrap_function___helper_wrap_function_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz";
+        sha1 = "9dbdb2bb55ef14aaa01fe8c99b629bd5352d8610";
       };
     }
     {
-      name = "_babel_parser___parser_7.6.4.tgz";
+      name = "_babel_helpers___helpers_7.8.4.tgz";
       path = fetchurl {
-        name = "_babel_parser___parser_7.6.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.6.4.tgz";
-        sha1 = "cb9b36a7482110282d5cb6dd424ec9262b473d81";
+        name = "_babel_helpers___helpers_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.8.4.tgz";
+        sha1 = "754eb3ee727c165e0a240d6c207de7c455f36f73";
       };
     }
     {
-      name = "_babel_plugin_proposal_async_generator_functions___plugin_proposal_async_generator_functions_7.2.0.tgz";
+      name = "_babel_highlight___highlight_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_proposal_async_generator_functions___plugin_proposal_async_generator_functions_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz";
-        sha1 = "b289b306669dce4ad20b0252889a15768c9d417e";
+        name = "_babel_highlight___highlight_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.8.3.tgz";
+        sha1 = "28f173d04223eaaa59bc1d439a3836e6d1265797";
       };
     }
     {
-      name = "_babel_plugin_proposal_class_properties___plugin_proposal_class_properties_7.5.5.tgz";
+      name = "_babel_parser___parser_7.8.4.tgz";
       path = fetchurl {
-        name = "_babel_plugin_proposal_class_properties___plugin_proposal_class_properties_7.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.5.5.tgz";
-        sha1 = "a974cfae1e37c3110e71f3c6a2e48b8e71958cd4";
+        name = "_babel_parser___parser_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/parser/-/parser-7.8.4.tgz";
+        sha1 = "d1dbe64691d60358a974295fa53da074dd2ce8e8";
       };
     }
     {
-      name = "_babel_plugin_proposal_decorators___plugin_proposal_decorators_7.6.0.tgz";
+      name = "_babel_plugin_proposal_async_generator_functions___plugin_proposal_async_generator_functions_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_proposal_decorators___plugin_proposal_decorators_7.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.6.0.tgz";
-        sha1 = "6659d2572a17d70abd68123e89a12a43d90aa30c";
+        name = "_babel_plugin_proposal_async_generator_functions___plugin_proposal_async_generator_functions_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.3.tgz";
+        sha1 = "bad329c670b382589721b27540c7d288601c6e6f";
       };
     }
     {
-      name = "_babel_plugin_proposal_dynamic_import___plugin_proposal_dynamic_import_7.5.0.tgz";
+      name = "_babel_plugin_proposal_class_properties___plugin_proposal_class_properties_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_proposal_dynamic_import___plugin_proposal_dynamic_import_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.5.0.tgz";
-        sha1 = "e532202db4838723691b10a67b8ce509e397c506";
+        name = "_babel_plugin_proposal_class_properties___plugin_proposal_class_properties_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.8.3.tgz";
+        sha1 = "5e06654af5cd04b608915aada9b2a6788004464e";
       };
     }
     {
-      name = "_babel_plugin_proposal_json_strings___plugin_proposal_json_strings_7.2.0.tgz";
+      name = "_babel_plugin_proposal_decorators___plugin_proposal_decorators_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_proposal_json_strings___plugin_proposal_json_strings_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz";
-        sha1 = "568ecc446c6148ae6b267f02551130891e29f317";
+        name = "_babel_plugin_proposal_decorators___plugin_proposal_decorators_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.8.3.tgz";
+        sha1 = "2156860ab65c5abf068c3f67042184041066543e";
       };
     }
     {
-      name = "_babel_plugin_proposal_object_rest_spread___plugin_proposal_object_rest_spread_7.5.5.tgz";
+      name = "_babel_plugin_proposal_dynamic_import___plugin_proposal_dynamic_import_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_proposal_object_rest_spread___plugin_proposal_object_rest_spread_7.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.5.tgz";
-        sha1 = "61939744f71ba76a3ae46b5eea18a54c16d22e58";
+        name = "_babel_plugin_proposal_dynamic_import___plugin_proposal_dynamic_import_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.3.tgz";
+        sha1 = "38c4fe555744826e97e2ae930b0fb4cc07e66054";
       };
     }
     {
-      name = "_babel_plugin_proposal_object_rest_spread___plugin_proposal_object_rest_spread_7.6.2.tgz";
+      name = "_babel_plugin_proposal_json_strings___plugin_proposal_json_strings_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_proposal_object_rest_spread___plugin_proposal_object_rest_spread_7.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.6.2.tgz";
-        sha1 = "8ffccc8f3a6545e9f78988b6bf4fe881b88e8096";
+        name = "_babel_plugin_proposal_json_strings___plugin_proposal_json_strings_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.8.3.tgz";
+        sha1 = "da5216b238a98b58a1e05d6852104b10f9a70d6b";
       };
     }
     {
-      name = "_babel_plugin_proposal_optional_catch_binding___plugin_proposal_optional_catch_binding_7.2.0.tgz";
+      name = "_babel_plugin_proposal_nullish_coalescing_operator___plugin_proposal_nullish_coalescing_operator_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_proposal_optional_catch_binding___plugin_proposal_optional_catch_binding_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz";
-        sha1 = "135d81edb68a081e55e56ec48541ece8065c38f5";
+        name = "_babel_plugin_proposal_nullish_coalescing_operator___plugin_proposal_nullish_coalescing_operator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.8.3.tgz";
+        sha1 = "e4572253fdeed65cddeecfdab3f928afeb2fd5d2";
       };
     }
     {
-      name = "_babel_plugin_proposal_unicode_property_regex___plugin_proposal_unicode_property_regex_7.6.2.tgz";
+      name = "_babel_plugin_proposal_numeric_separator___plugin_proposal_numeric_separator_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_proposal_unicode_property_regex___plugin_proposal_unicode_property_regex_7.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.6.2.tgz";
-        sha1 = "05413762894f41bfe42b9a5e80919bd575dcc802";
+        name = "_babel_plugin_proposal_numeric_separator___plugin_proposal_numeric_separator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.8.3.tgz";
+        sha1 = "5d6769409699ec9b3b68684cd8116cedff93bad8";
       };
     }
     {
-      name = "_babel_plugin_syntax_async_generators___plugin_syntax_async_generators_7.2.0.tgz";
+      name = "_babel_plugin_proposal_object_rest_spread___plugin_proposal_object_rest_spread_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_syntax_async_generators___plugin_syntax_async_generators_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz";
-        sha1 = "69e1f0db34c6f5a0cf7e2b3323bf159a76c8cb7f";
+        name = "_babel_plugin_proposal_object_rest_spread___plugin_proposal_object_rest_spread_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.8.3.tgz";
+        sha1 = "eb5ae366118ddca67bed583b53d7554cad9951bb";
       };
     }
     {
-      name = "_babel_plugin_syntax_decorators___plugin_syntax_decorators_7.2.0.tgz";
+      name = "_babel_plugin_proposal_optional_catch_binding___plugin_proposal_optional_catch_binding_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_syntax_decorators___plugin_syntax_decorators_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.2.0.tgz";
-        sha1 = "c50b1b957dcc69e4b1127b65e1c33eef61570c1b";
+        name = "_babel_plugin_proposal_optional_catch_binding___plugin_proposal_optional_catch_binding_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.3.tgz";
+        sha1 = "9dee96ab1650eed88646ae9734ca167ac4a9c5c9";
       };
     }
     {
-      name = "_babel_plugin_syntax_dynamic_import___plugin_syntax_dynamic_import_7.2.0.tgz";
+      name = "_babel_plugin_proposal_optional_chaining___plugin_proposal_optional_chaining_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_syntax_dynamic_import___plugin_syntax_dynamic_import_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz";
-        sha1 = "69c159ffaf4998122161ad8ebc5e6d1f55df8612";
+        name = "_babel_plugin_proposal_optional_chaining___plugin_proposal_optional_chaining_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.8.3.tgz";
+        sha1 = "ae10b3214cb25f7adb1f3bc87ba42ca10b7e2543";
       };
     }
     {
-      name = "_babel_plugin_syntax_flow___plugin_syntax_flow_7.2.0.tgz";
+      name = "_babel_plugin_proposal_unicode_property_regex___plugin_proposal_unicode_property_regex_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_syntax_flow___plugin_syntax_flow_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.2.0.tgz";
-        sha1 = "a765f061f803bc48f240c26f8747faf97c26bf7c";
+        name = "_babel_plugin_proposal_unicode_property_regex___plugin_proposal_unicode_property_regex_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.8.3.tgz";
+        sha1 = "b646c3adea5f98800c9ab45105ac34d06cd4a47f";
       };
     }
     {
-      name = "_babel_plugin_syntax_json_strings___plugin_syntax_json_strings_7.2.0.tgz";
+      name = "_babel_plugin_syntax_async_generators___plugin_syntax_async_generators_7.8.4.tgz";
       path = fetchurl {
-        name = "_babel_plugin_syntax_json_strings___plugin_syntax_json_strings_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz";
-        sha1 = "72bd13f6ffe1d25938129d2a186b11fd62951470";
+        name = "_babel_plugin_syntax_async_generators___plugin_syntax_async_generators_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz";
+        sha1 = "a983fb1aeb2ec3f6ed042a210f640e90e786fe0d";
       };
     }
     {
-      name = "_babel_plugin_syntax_jsx___plugin_syntax_jsx_7.2.0.tgz";
+      name = "_babel_plugin_syntax_decorators___plugin_syntax_decorators_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_syntax_jsx___plugin_syntax_jsx_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.2.0.tgz";
-        sha1 = "0b85a3b4bc7cdf4cc4b8bf236335b907ca22e7c7";
+        name = "_babel_plugin_syntax_decorators___plugin_syntax_decorators_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.8.3.tgz";
+        sha1 = "8d2c15a9f1af624b0025f961682a9d53d3001bda";
       };
     }
     {
-      name = "_babel_plugin_syntax_object_rest_spread___plugin_syntax_object_rest_spread_7.2.0.tgz";
+      name = "_babel_plugin_syntax_dynamic_import___plugin_syntax_dynamic_import_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_syntax_object_rest_spread___plugin_syntax_object_rest_spread_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz";
-        sha1 = "3b7a3e733510c57e820b9142a6579ac8b0dfad2e";
+        name = "_babel_plugin_syntax_dynamic_import___plugin_syntax_dynamic_import_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz";
+        sha1 = "62bf98b2da3cd21d626154fc96ee5b3cb68eacb3";
       };
     }
     {
-      name = "_babel_plugin_syntax_optional_catch_binding___plugin_syntax_optional_catch_binding_7.2.0.tgz";
+      name = "_babel_plugin_syntax_flow___plugin_syntax_flow_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_syntax_optional_catch_binding___plugin_syntax_optional_catch_binding_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz";
-        sha1 = "a94013d6eda8908dfe6a477e7f9eda85656ecf5c";
+        name = "_babel_plugin_syntax_flow___plugin_syntax_flow_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.8.3.tgz";
+        sha1 = "f2c883bd61a6316f2c89380ae5122f923ba4527f";
       };
     }
     {
-      name = "_babel_plugin_syntax_typescript___plugin_syntax_typescript_7.3.3.tgz";
+      name = "_babel_plugin_syntax_json_strings___plugin_syntax_json_strings_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_syntax_typescript___plugin_syntax_typescript_7.3.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.3.3.tgz";
-        sha1 = "a7cc3f66119a9f7ebe2de5383cce193473d65991";
+        name = "_babel_plugin_syntax_json_strings___plugin_syntax_json_strings_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz";
+        sha1 = "01ca21b668cd8218c9e640cb6dd88c5412b2c96a";
       };
     }
     {
-      name = "_babel_plugin_transform_arrow_functions___plugin_transform_arrow_functions_7.2.0.tgz";
+      name = "_babel_plugin_syntax_jsx___plugin_syntax_jsx_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_arrow_functions___plugin_transform_arrow_functions_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz";
-        sha1 = "9aeafbe4d6ffc6563bf8f8372091628f00779550";
+        name = "_babel_plugin_syntax_jsx___plugin_syntax_jsx_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.8.3.tgz";
+        sha1 = "521b06c83c40480f1e58b4fd33b92eceb1d6ea94";
       };
     }
     {
-      name = "_babel_plugin_transform_async_to_generator___plugin_transform_async_to_generator_7.5.0.tgz";
+      name = "_babel_plugin_syntax_nullish_coalescing_operator___plugin_syntax_nullish_coalescing_operator_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_async_to_generator___plugin_transform_async_to_generator_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.5.0.tgz";
-        sha1 = "89a3848a0166623b5bc481164b5936ab947e887e";
+        name = "_babel_plugin_syntax_nullish_coalescing_operator___plugin_syntax_nullish_coalescing_operator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz";
+        sha1 = "167ed70368886081f74b5c36c65a88c03b66d1a9";
       };
     }
     {
-      name = "_babel_plugin_transform_block_scoped_functions___plugin_transform_block_scoped_functions_7.2.0.tgz";
+      name = "_babel_plugin_syntax_numeric_separator___plugin_syntax_numeric_separator_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_block_scoped_functions___plugin_transform_block_scoped_functions_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz";
-        sha1 = "5d3cc11e8d5ddd752aa64c9148d0db6cb79fd190";
+        name = "_babel_plugin_syntax_numeric_separator___plugin_syntax_numeric_separator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.8.3.tgz";
+        sha1 = "0e3fb63e09bea1b11e96467271c8308007e7c41f";
       };
     }
     {
-      name = "_babel_plugin_transform_block_scoping___plugin_transform_block_scoping_7.6.3.tgz";
+      name = "_babel_plugin_syntax_object_rest_spread___plugin_syntax_object_rest_spread_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_block_scoping___plugin_transform_block_scoping_7.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.6.3.tgz";
-        sha1 = "6e854e51fbbaa84351b15d4ddafe342f3a5d542a";
+        name = "_babel_plugin_syntax_object_rest_spread___plugin_syntax_object_rest_spread_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz";
+        sha1 = "60e225edcbd98a640332a2e72dd3e66f1af55871";
       };
     }
     {
-      name = "_babel_plugin_transform_classes___plugin_transform_classes_7.5.5.tgz";
+      name = "_babel_plugin_syntax_optional_catch_binding___plugin_syntax_optional_catch_binding_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_classes___plugin_transform_classes_7.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.5.5.tgz";
-        sha1 = "d094299d9bd680a14a2a0edae38305ad60fb4de9";
+        name = "_babel_plugin_syntax_optional_catch_binding___plugin_syntax_optional_catch_binding_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz";
+        sha1 = "6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1";
       };
     }
     {
-      name = "_babel_plugin_transform_computed_properties___plugin_transform_computed_properties_7.2.0.tgz";
+      name = "_babel_plugin_syntax_optional_chaining___plugin_syntax_optional_chaining_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_computed_properties___plugin_transform_computed_properties_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz";
-        sha1 = "83a7df6a658865b1c8f641d510c6f3af220216da";
+        name = "_babel_plugin_syntax_optional_chaining___plugin_syntax_optional_chaining_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz";
+        sha1 = "4f69c2ab95167e0180cd5336613f8c5788f7d48a";
       };
     }
     {
-      name = "_babel_plugin_transform_destructuring___plugin_transform_destructuring_7.6.0.tgz";
+      name = "_babel_plugin_syntax_top_level_await___plugin_syntax_top_level_await_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_destructuring___plugin_transform_destructuring_7.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.6.0.tgz";
-        sha1 = "44bbe08b57f4480094d57d9ffbcd96d309075ba6";
+        name = "_babel_plugin_syntax_top_level_await___plugin_syntax_top_level_await_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.8.3.tgz";
+        sha1 = "3acdece695e6b13aaf57fc291d1a800950c71391";
       };
     }
     {
-      name = "_babel_plugin_transform_dotall_regex___plugin_transform_dotall_regex_7.6.2.tgz";
+      name = "_babel_plugin_syntax_typescript___plugin_syntax_typescript_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_dotall_regex___plugin_transform_dotall_regex_7.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.6.2.tgz";
-        sha1 = "44abb948b88f0199a627024e1508acaf8dc9b2f9";
+        name = "_babel_plugin_syntax_typescript___plugin_syntax_typescript_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.8.3.tgz";
+        sha1 = "c1f659dda97711a569cef75275f7e15dcaa6cabc";
       };
     }
     {
-      name = "_babel_plugin_transform_duplicate_keys___plugin_transform_duplicate_keys_7.5.0.tgz";
+      name = "_babel_plugin_transform_arrow_functions___plugin_transform_arrow_functions_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_duplicate_keys___plugin_transform_duplicate_keys_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz";
-        sha1 = "c5dbf5106bf84cdf691222c0974c12b1df931853";
+        name = "_babel_plugin_transform_arrow_functions___plugin_transform_arrow_functions_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.8.3.tgz";
+        sha1 = "82776c2ed0cd9e1a49956daeb896024c9473b8b6";
       };
     }
     {
-      name = "_babel_plugin_transform_exponentiation_operator___plugin_transform_exponentiation_operator_7.2.0.tgz";
+      name = "_babel_plugin_transform_async_to_generator___plugin_transform_async_to_generator_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_exponentiation_operator___plugin_transform_exponentiation_operator_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz";
-        sha1 = "a63868289e5b4007f7054d46491af51435766008";
+        name = "_babel_plugin_transform_async_to_generator___plugin_transform_async_to_generator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.8.3.tgz";
+        sha1 = "4308fad0d9409d71eafb9b1a6ee35f9d64b64086";
       };
     }
     {
-      name = "_babel_plugin_transform_flow_strip_types___plugin_transform_flow_strip_types_7.4.4.tgz";
+      name = "_babel_plugin_transform_block_scoped_functions___plugin_transform_block_scoped_functions_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_flow_strip_types___plugin_transform_flow_strip_types_7.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.4.4.tgz";
-        sha1 = "d267a081f49a8705fc9146de0768c6b58dccd8f7";
+        name = "_babel_plugin_transform_block_scoped_functions___plugin_transform_block_scoped_functions_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.8.3.tgz";
+        sha1 = "437eec5b799b5852072084b3ae5ef66e8349e8a3";
       };
     }
     {
-      name = "_babel_plugin_transform_for_of___plugin_transform_for_of_7.4.4.tgz";
+      name = "_babel_plugin_transform_block_scoping___plugin_transform_block_scoping_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_for_of___plugin_transform_for_of_7.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz";
-        sha1 = "0267fc735e24c808ba173866c6c4d1440fc3c556";
+        name = "_babel_plugin_transform_block_scoping___plugin_transform_block_scoping_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.8.3.tgz";
+        sha1 = "97d35dab66857a437c166358b91d09050c868f3a";
       };
     }
     {
-      name = "_babel_plugin_transform_function_name___plugin_transform_function_name_7.4.4.tgz";
+      name = "_babel_plugin_transform_classes___plugin_transform_classes_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_function_name___plugin_transform_function_name_7.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.4.4.tgz";
-        sha1 = "e1436116abb0610c2259094848754ac5230922ad";
+        name = "_babel_plugin_transform_classes___plugin_transform_classes_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.8.3.tgz";
+        sha1 = "46fd7a9d2bb9ea89ce88720477979fe0d71b21b8";
       };
     }
     {
-      name = "_babel_plugin_transform_literals___plugin_transform_literals_7.2.0.tgz";
+      name = "_babel_plugin_transform_computed_properties___plugin_transform_computed_properties_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_literals___plugin_transform_literals_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz";
-        sha1 = "690353e81f9267dad4fd8cfd77eafa86aba53ea1";
+        name = "_babel_plugin_transform_computed_properties___plugin_transform_computed_properties_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.8.3.tgz";
+        sha1 = "96d0d28b7f7ce4eb5b120bb2e0e943343c86f81b";
       };
     }
     {
-      name = "_babel_plugin_transform_member_expression_literals___plugin_transform_member_expression_literals_7.2.0.tgz";
+      name = "_babel_plugin_transform_destructuring___plugin_transform_destructuring_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_member_expression_literals___plugin_transform_member_expression_literals_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz";
-        sha1 = "fa10aa5c58a2cb6afcf2c9ffa8cb4d8b3d489a2d";
+        name = "_babel_plugin_transform_destructuring___plugin_transform_destructuring_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.8.3.tgz";
+        sha1 = "20ddfbd9e4676906b1056ee60af88590cc7aaa0b";
       };
     }
     {
-      name = "_babel_plugin_transform_modules_amd___plugin_transform_modules_amd_7.5.0.tgz";
+      name = "_babel_plugin_transform_dotall_regex___plugin_transform_dotall_regex_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_modules_amd___plugin_transform_modules_amd_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz";
-        sha1 = "ef00435d46da0a5961aa728a1d2ecff063e4fb91";
+        name = "_babel_plugin_transform_dotall_regex___plugin_transform_dotall_regex_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.3.tgz";
+        sha1 = "c3c6ec5ee6125c6993c5cbca20dc8621a9ea7a6e";
       };
     }
     {
-      name = "_babel_plugin_transform_modules_commonjs___plugin_transform_modules_commonjs_7.6.0.tgz";
+      name = "_babel_plugin_transform_duplicate_keys___plugin_transform_duplicate_keys_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_modules_commonjs___plugin_transform_modules_commonjs_7.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.6.0.tgz";
-        sha1 = "39dfe957de4420445f1fcf88b68a2e4aa4515486";
+        name = "_babel_plugin_transform_duplicate_keys___plugin_transform_duplicate_keys_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.8.3.tgz";
+        sha1 = "8d12df309aa537f272899c565ea1768e286e21f1";
       };
     }
     {
-      name = "_babel_plugin_transform_modules_systemjs___plugin_transform_modules_systemjs_7.5.0.tgz";
+      name = "_babel_plugin_transform_exponentiation_operator___plugin_transform_exponentiation_operator_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_modules_systemjs___plugin_transform_modules_systemjs_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.5.0.tgz";
-        sha1 = "e75266a13ef94202db2a0620977756f51d52d249";
+        name = "_babel_plugin_transform_exponentiation_operator___plugin_transform_exponentiation_operator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.8.3.tgz";
+        sha1 = "581a6d7f56970e06bf51560cd64f5e947b70d7b7";
       };
     }
     {
-      name = "_babel_plugin_transform_modules_umd___plugin_transform_modules_umd_7.2.0.tgz";
+      name = "_babel_plugin_transform_flow_strip_types___plugin_transform_flow_strip_types_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_modules_umd___plugin_transform_modules_umd_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz";
-        sha1 = "7678ce75169f0877b8eb2235538c074268dd01ae";
+        name = "_babel_plugin_transform_flow_strip_types___plugin_transform_flow_strip_types_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.8.3.tgz";
+        sha1 = "da705a655466b2a9b36046b57bf0cbcd53551bd4";
       };
     }
     {
-      name = "_babel_plugin_transform_named_capturing_groups_regex___plugin_transform_named_capturing_groups_regex_7.6.3.tgz";
+      name = "_babel_plugin_transform_for_of___plugin_transform_for_of_7.8.4.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_named_capturing_groups_regex___plugin_transform_named_capturing_groups_regex_7.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.6.3.tgz";
-        sha1 = "aaa6e409dd4fb2e50b6e2a91f7e3a3149dbce0cf";
+        name = "_babel_plugin_transform_for_of___plugin_transform_for_of_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.8.4.tgz";
+        sha1 = "6fe8eae5d6875086ee185dd0b098a8513783b47d";
       };
     }
     {
-      name = "_babel_plugin_transform_new_target___plugin_transform_new_target_7.4.4.tgz";
+      name = "_babel_plugin_transform_function_name___plugin_transform_function_name_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_new_target___plugin_transform_new_target_7.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz";
-        sha1 = "18d120438b0cc9ee95a47f2c72bc9768fbed60a5";
+        name = "_babel_plugin_transform_function_name___plugin_transform_function_name_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.8.3.tgz";
+        sha1 = "279373cb27322aaad67c2683e776dfc47196ed8b";
       };
     }
     {
-      name = "_babel_plugin_transform_object_super___plugin_transform_object_super_7.5.5.tgz";
+      name = "_babel_plugin_transform_literals___plugin_transform_literals_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_object_super___plugin_transform_object_super_7.5.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz";
-        sha1 = "c70021df834073c65eb613b8679cc4a381d1a9f9";
+        name = "_babel_plugin_transform_literals___plugin_transform_literals_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.8.3.tgz";
+        sha1 = "aef239823d91994ec7b68e55193525d76dbd5dc1";
       };
     }
     {
-      name = "_babel_plugin_transform_parameters___plugin_transform_parameters_7.4.4.tgz";
+      name = "_babel_plugin_transform_member_expression_literals___plugin_transform_member_expression_literals_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_parameters___plugin_transform_parameters_7.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz";
-        sha1 = "7556cf03f318bd2719fe4c922d2d808be5571e16";
+        name = "_babel_plugin_transform_member_expression_literals___plugin_transform_member_expression_literals_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.8.3.tgz";
+        sha1 = "963fed4b620ac7cbf6029c755424029fa3a40410";
       };
     }
     {
-      name = "_babel_plugin_transform_property_literals___plugin_transform_property_literals_7.2.0.tgz";
+      name = "_babel_plugin_transform_modules_amd___plugin_transform_modules_amd_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_property_literals___plugin_transform_property_literals_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz";
-        sha1 = "03e33f653f5b25c4eb572c98b9485055b389e905";
+        name = "_babel_plugin_transform_modules_amd___plugin_transform_modules_amd_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.8.3.tgz";
+        sha1 = "65606d44616b50225e76f5578f33c568a0b876a5";
       };
     }
     {
-      name = "_babel_plugin_transform_react_constant_elements___plugin_transform_react_constant_elements_7.6.3.tgz";
+      name = "_babel_plugin_transform_modules_commonjs___plugin_transform_modules_commonjs_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_react_constant_elements___plugin_transform_react_constant_elements_7.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.6.3.tgz";
-        sha1 = "9fc9ea060b983c7c035acbe481cbe1fb1245bfff";
+        name = "_babel_plugin_transform_modules_commonjs___plugin_transform_modules_commonjs_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.8.3.tgz";
+        sha1 = "df251706ec331bd058a34bdd72613915f82928a5";
       };
     }
     {
-      name = "_babel_plugin_transform_react_display_name___plugin_transform_react_display_name_7.2.0.tgz";
+      name = "_babel_plugin_transform_modules_systemjs___plugin_transform_modules_systemjs_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_react_display_name___plugin_transform_react_display_name_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.2.0.tgz";
-        sha1 = "ebfaed87834ce8dc4279609a4f0c324c156e3eb0";
+        name = "_babel_plugin_transform_modules_systemjs___plugin_transform_modules_systemjs_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.8.3.tgz";
+        sha1 = "d8bbf222c1dbe3661f440f2f00c16e9bb7d0d420";
       };
     }
     {
-      name = "_babel_plugin_transform_react_jsx_self___plugin_transform_react_jsx_self_7.2.0.tgz";
+      name = "_babel_plugin_transform_modules_umd___plugin_transform_modules_umd_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_react_jsx_self___plugin_transform_react_jsx_self_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.2.0.tgz";
-        sha1 = "461e21ad9478f1031dd5e276108d027f1b5240ba";
+        name = "_babel_plugin_transform_modules_umd___plugin_transform_modules_umd_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.8.3.tgz";
+        sha1 = "592d578ce06c52f5b98b02f913d653ffe972661a";
       };
     }
     {
-      name = "_babel_plugin_transform_react_jsx_source___plugin_transform_react_jsx_source_7.5.0.tgz";
+      name = "_babel_plugin_transform_named_capturing_groups_regex___plugin_transform_named_capturing_groups_regex_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_react_jsx_source___plugin_transform_react_jsx_source_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.5.0.tgz";
-        sha1 = "583b10c49cf057e237085bcbd8cc960bd83bd96b";
+        name = "_babel_plugin_transform_named_capturing_groups_regex___plugin_transform_named_capturing_groups_regex_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.8.3.tgz";
+        sha1 = "a2a72bffa202ac0e2d0506afd0939c5ecbc48c6c";
       };
     }
     {
-      name = "_babel_plugin_transform_react_jsx___plugin_transform_react_jsx_7.3.0.tgz";
+      name = "_babel_plugin_transform_new_target___plugin_transform_new_target_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_react_jsx___plugin_transform_react_jsx_7.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.3.0.tgz";
-        sha1 = "f2cab99026631c767e2745a5368b331cfe8f5290";
+        name = "_babel_plugin_transform_new_target___plugin_transform_new_target_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.8.3.tgz";
+        sha1 = "60cc2ae66d85c95ab540eb34babb6434d4c70c43";
       };
     }
     {
-      name = "_babel_plugin_transform_regenerator___plugin_transform_regenerator_7.4.5.tgz";
+      name = "_babel_plugin_transform_object_super___plugin_transform_object_super_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_regenerator___plugin_transform_regenerator_7.4.5.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.4.5.tgz";
-        sha1 = "629dc82512c55cee01341fb27bdfcb210354680f";
+        name = "_babel_plugin_transform_object_super___plugin_transform_object_super_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.8.3.tgz";
+        sha1 = "ebb6a1e7a86ffa96858bd6ac0102d65944261725";
       };
     }
     {
-      name = "_babel_plugin_transform_reserved_words___plugin_transform_reserved_words_7.2.0.tgz";
+      name = "_babel_plugin_transform_parameters___plugin_transform_parameters_7.8.4.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_reserved_words___plugin_transform_reserved_words_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz";
-        sha1 = "4792af87c998a49367597d07fedf02636d2e1634";
+        name = "_babel_plugin_transform_parameters___plugin_transform_parameters_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.8.4.tgz";
+        sha1 = "1d5155de0b65db0ccf9971165745d3bb990d77d3";
       };
     }
     {
-      name = "_babel_plugin_transform_runtime___plugin_transform_runtime_7.6.0.tgz";
+      name = "_babel_plugin_transform_property_literals___plugin_transform_property_literals_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_runtime___plugin_transform_runtime_7.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.6.0.tgz";
-        sha1 = "85a3cce402b28586138e368fce20ab3019b9713e";
+        name = "_babel_plugin_transform_property_literals___plugin_transform_property_literals_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.8.3.tgz";
+        sha1 = "33194300d8539c1ed28c62ad5087ba3807b98263";
       };
     }
     {
-      name = "_babel_plugin_transform_shorthand_properties___plugin_transform_shorthand_properties_7.2.0.tgz";
+      name = "_babel_plugin_transform_react_constant_elements___plugin_transform_react_constant_elements_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_shorthand_properties___plugin_transform_shorthand_properties_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz";
-        sha1 = "6333aee2f8d6ee7e28615457298934a3b46198f0";
+        name = "_babel_plugin_transform_react_constant_elements___plugin_transform_react_constant_elements_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.8.3.tgz";
+        sha1 = "784c25294bddaad2323eb4ff0c9f4a3f6c87d6bc";
       };
     }
     {
-      name = "_babel_plugin_transform_spread___plugin_transform_spread_7.6.2.tgz";
+      name = "_babel_plugin_transform_react_display_name___plugin_transform_react_display_name_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_spread___plugin_transform_spread_7.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.6.2.tgz";
-        sha1 = "fc77cf798b24b10c46e1b51b1b88c2bf661bb8dd";
+        name = "_babel_plugin_transform_react_display_name___plugin_transform_react_display_name_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.8.3.tgz";
+        sha1 = "70ded987c91609f78353dd76d2fb2a0bb991e8e5";
       };
     }
     {
-      name = "_babel_plugin_transform_sticky_regex___plugin_transform_sticky_regex_7.2.0.tgz";
+      name = "_babel_plugin_transform_react_jsx_self___plugin_transform_react_jsx_self_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_sticky_regex___plugin_transform_sticky_regex_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz";
-        sha1 = "a1e454b5995560a9c1e0d537dfc15061fd2687e1";
+        name = "_babel_plugin_transform_react_jsx_self___plugin_transform_react_jsx_self_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.8.3.tgz";
+        sha1 = "c4f178b2aa588ecfa8d077ea80d4194ee77ed702";
       };
     }
     {
-      name = "_babel_plugin_transform_template_literals___plugin_transform_template_literals_7.4.4.tgz";
+      name = "_babel_plugin_transform_react_jsx_source___plugin_transform_react_jsx_source_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_template_literals___plugin_transform_template_literals_7.4.4.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz";
-        sha1 = "9d28fea7bbce637fb7612a0750989d8321d4bcb0";
+        name = "_babel_plugin_transform_react_jsx_source___plugin_transform_react_jsx_source_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.8.3.tgz";
+        sha1 = "951e75a8af47f9f120db731be095d2b2c34920e0";
       };
     }
     {
-      name = "_babel_plugin_transform_typeof_symbol___plugin_transform_typeof_symbol_7.2.0.tgz";
+      name = "_babel_plugin_transform_react_jsx___plugin_transform_react_jsx_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_typeof_symbol___plugin_transform_typeof_symbol_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz";
-        sha1 = "117d2bcec2fbf64b4b59d1f9819894682d29f2b2";
+        name = "_babel_plugin_transform_react_jsx___plugin_transform_react_jsx_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.8.3.tgz";
+        sha1 = "4220349c0390fdefa505365f68c103562ab2fc4a";
       };
     }
     {
-      name = "_babel_plugin_transform_typescript___plugin_transform_typescript_7.6.3.tgz";
+      name = "_babel_plugin_transform_regenerator___plugin_transform_regenerator_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_typescript___plugin_transform_typescript_7.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.6.3.tgz";
-        sha1 = "dddb50cf3b8b2ef70b22e5326e9a91f05a1db13b";
+        name = "_babel_plugin_transform_regenerator___plugin_transform_regenerator_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.8.3.tgz";
+        sha1 = "b31031e8059c07495bf23614c97f3d9698bc6ec8";
       };
     }
     {
-      name = "_babel_plugin_transform_unicode_regex___plugin_transform_unicode_regex_7.6.2.tgz";
+      name = "_babel_plugin_transform_reserved_words___plugin_transform_reserved_words_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_plugin_transform_unicode_regex___plugin_transform_unicode_regex_7.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.6.2.tgz";
-        sha1 = "b692aad888a7e8d8b1b214be6b9dc03d5031f698";
+        name = "_babel_plugin_transform_reserved_words___plugin_transform_reserved_words_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.8.3.tgz";
+        sha1 = "9a0635ac4e665d29b162837dd3cc50745dfdf1f5";
       };
     }
     {
-      name = "_babel_preset_env___preset_env_7.6.0.tgz";
+      name = "_babel_plugin_transform_runtime___plugin_transform_runtime_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_preset_env___preset_env_7.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.6.0.tgz";
-        sha1 = "aae4141c506100bb2bfaa4ac2a5c12b395619e50";
+        name = "_babel_plugin_transform_runtime___plugin_transform_runtime_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.8.3.tgz";
+        sha1 = "c0153bc0a5375ebc1f1591cb7eea223adea9f169";
       };
     }
     {
-      name = "_babel_preset_env___preset_env_7.6.3.tgz";
+      name = "_babel_plugin_transform_shorthand_properties___plugin_transform_shorthand_properties_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_preset_env___preset_env_7.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.6.3.tgz";
-        sha1 = "9e1bf05a2e2d687036d24c40e4639dc46cef2271";
+        name = "_babel_plugin_transform_shorthand_properties___plugin_transform_shorthand_properties_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.8.3.tgz";
+        sha1 = "28545216e023a832d4d3a1185ed492bcfeac08c8";
       };
     }
     {
-      name = "_babel_preset_react___preset_react_7.0.0.tgz";
+      name = "_babel_plugin_transform_spread___plugin_transform_spread_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_preset_react___preset_react_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.0.0.tgz";
-        sha1 = "e86b4b3d99433c7b3e9e91747e2653958bc6b3c0";
+        name = "_babel_plugin_transform_spread___plugin_transform_spread_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.8.3.tgz";
+        sha1 = "9c8ffe8170fdfb88b114ecb920b82fb6e95fe5e8";
       };
     }
     {
-      name = "_babel_preset_react___preset_react_7.6.3.tgz";
+      name = "_babel_plugin_transform_sticky_regex___plugin_transform_sticky_regex_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_preset_react___preset_react_7.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.6.3.tgz";
-        sha1 = "d5242c828322520205ae4eda5d4f4f618964e2f6";
+        name = "_babel_plugin_transform_sticky_regex___plugin_transform_sticky_regex_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.8.3.tgz";
+        sha1 = "be7a1290f81dae767475452199e1f76d6175b100";
       };
     }
     {
-      name = "_babel_preset_typescript___preset_typescript_7.6.0.tgz";
+      name = "_babel_plugin_transform_template_literals___plugin_transform_template_literals_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_preset_typescript___preset_typescript_7.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.6.0.tgz";
-        sha1 = "25768cb8830280baf47c45ab1a519a9977498c98";
+        name = "_babel_plugin_transform_template_literals___plugin_transform_template_literals_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.8.3.tgz";
+        sha1 = "7bfa4732b455ea6a43130adc0ba767ec0e402a80";
       };
     }
     {
-      name = "_babel_runtime___runtime_7.6.0.tgz";
+      name = "_babel_plugin_transform_typeof_symbol___plugin_transform_typeof_symbol_7.8.4.tgz";
       path = fetchurl {
-        name = "_babel_runtime___runtime_7.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.6.0.tgz";
-        sha1 = "4fc1d642a9fd0299754e8b5de62c631cf5568205";
+        name = "_babel_plugin_transform_typeof_symbol___plugin_transform_typeof_symbol_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.8.4.tgz";
+        sha1 = "ede4062315ce0aaf8a657a920858f1a2f35fc412";
       };
     }
     {
-      name = "_babel_runtime___runtime_7.6.3.tgz";
+      name = "_babel_plugin_transform_typescript___plugin_transform_typescript_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_runtime___runtime_7.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.6.3.tgz";
-        sha1 = "935122c74c73d2240cafd32ddb5fc2a6cd35cf1f";
+        name = "_babel_plugin_transform_typescript___plugin_transform_typescript_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.8.3.tgz";
+        sha1 = "be6f01a7ef423be68e65ace1f04fc407e6d88917";
       };
     }
     {
-      name = "_babel_template___template_7.6.0.tgz";
+      name = "_babel_plugin_transform_unicode_regex___plugin_transform_unicode_regex_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_template___template_7.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.6.0.tgz";
-        sha1 = "7f0159c7f5012230dad64cca42ec9bdb5c9536e6";
+        name = "_babel_plugin_transform_unicode_regex___plugin_transform_unicode_regex_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.8.3.tgz";
+        sha1 = "0cef36e3ba73e5c57273effb182f46b91a1ecaad";
       };
     }
     {
-      name = "_babel_traverse___traverse_7.6.3.tgz";
+      name = "_babel_preset_env___preset_env_7.8.4.tgz";
       path = fetchurl {
-        name = "_babel_traverse___traverse_7.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.6.3.tgz";
-        sha1 = "66d7dba146b086703c0fb10dd588b7364cec47f9";
+        name = "_babel_preset_env___preset_env_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.8.4.tgz";
+        sha1 = "9dac6df5f423015d3d49b6e9e5fa3413e4a72c4e";
       };
     }
     {
-      name = "_babel_types___types_7.6.3.tgz";
+      name = "_babel_preset_react___preset_react_7.8.3.tgz";
       path = fetchurl {
-        name = "_babel_types___types_7.6.3.tgz";
-        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.6.3.tgz";
-        sha1 = "3f07d96f854f98e2fbd45c64b0cb942d11e8ba09";
+        name = "_babel_preset_react___preset_react_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.8.3.tgz";
+        sha1 = "23dc63f1b5b0751283e04252e78cf1d6589273d2";
       };
     }
     {
-      name = "_cnakazawa_watch___watch_1.0.3.tgz";
+      name = "_babel_preset_typescript___preset_typescript_7.8.3.tgz";
       path = fetchurl {
-        name = "_cnakazawa_watch___watch_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.3.tgz";
-        sha1 = "099139eaec7ebf07a27c1786a3ff64f39464d2ef";
+        name = "_babel_preset_typescript___preset_typescript_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.8.3.tgz";
+        sha1 = "90af8690121beecd9a75d0cc26c6be39d1595d13";
+      };
+    }
+    {
+      name = "_babel_runtime___runtime_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_runtime___runtime_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.8.4.tgz";
+        sha1 = "d79f5a2040f7caa24d53e563aad49cbc05581308";
+      };
+    }
+    {
+      name = "_babel_template___template_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_template___template_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/template/-/template-7.8.3.tgz";
+        sha1 = "e02ad04fe262a657809327f578056ca15fd4d1b8";
+      };
+    }
+    {
+      name = "_babel_traverse___traverse_7.8.4.tgz";
+      path = fetchurl {
+        name = "_babel_traverse___traverse_7.8.4.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.8.4.tgz";
+        sha1 = "f0845822365f9d5b0e312ed3959d3f827f869e3c";
+      };
+    }
+    {
+      name = "_babel_types___types_7.8.3.tgz";
+      path = fetchurl {
+        name = "_babel_types___types_7.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/@babel/types/-/types-7.8.3.tgz";
+        sha1 = "5a383dffa5416db1b73dedffd311ffd0788fb31c";
+      };
+    }
+    {
+      name = "_cnakazawa_watch___watch_1.0.4.tgz";
+      path = fetchurl {
+        name = "_cnakazawa_watch___watch_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz";
+        sha1 = "f864ae85004d0fcab6f50be9141c4da368d1656a";
       };
     }
     {
@@ -778,51 +818,51 @@
       };
     }
     {
-      name = "_csstools_normalize.css___normalize.css_9.0.1.tgz";
+      name = "_csstools_normalize.css___normalize.css_10.1.0.tgz";
       path = fetchurl {
-        name = "_csstools_normalize.css___normalize.css_9.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/@csstools/normalize.css/-/normalize.css-9.0.1.tgz";
-        sha1 = "c27b391d8457d1e893f1eddeaf5e5412d12ffbb5";
+        name = "_csstools_normalize.css___normalize.css_10.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/@csstools/normalize.css/-/normalize.css-10.1.0.tgz";
+        sha1 = "f0950bba18819512d42f7197e56c518aa491cf18";
       };
     }
     {
-      name = "_fortawesome_fontawesome_common_types___fontawesome_common_types_0.2.25.tgz";
+      name = "_fortawesome_fontawesome_common_types___fontawesome_common_types_0.2.27.tgz";
       path = fetchurl {
-        name = "_fortawesome_fontawesome_common_types___fontawesome_common_types_0.2.25.tgz";
-        url  = "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-0.2.25.tgz";
-        sha1 = "6df015905081f2762e5cfddeb7a20d2e9b16c786";
+        name = "_fortawesome_fontawesome_common_types___fontawesome_common_types_0.2.27.tgz";
+        url  = "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-0.2.27.tgz";
+        sha1 = "19706345859fc46adf3684ed01d11b40903b87e9";
       };
     }
     {
-      name = "_fortawesome_fontawesome_svg_core___fontawesome_svg_core_1.2.25.tgz";
+      name = "_fortawesome_fontawesome_svg_core___fontawesome_svg_core_1.2.27.tgz";
       path = fetchurl {
-        name = "_fortawesome_fontawesome_svg_core___fontawesome_svg_core_1.2.25.tgz";
-        url  = "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-1.2.25.tgz";
-        sha1 = "24b03391d14f0c6171e8cad7057c687b74049790";
+        name = "_fortawesome_fontawesome_svg_core___fontawesome_svg_core_1.2.27.tgz";
+        url  = "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-1.2.27.tgz";
+        sha1 = "e4db8e3be81a40988213507c3e3d0c158a6641a3";
       };
     }
     {
-      name = "_fortawesome_free_solid_svg_icons___free_solid_svg_icons_5.11.2.tgz";
+      name = "_fortawesome_free_solid_svg_icons___free_solid_svg_icons_5.12.1.tgz";
       path = fetchurl {
-        name = "_fortawesome_free_solid_svg_icons___free_solid_svg_icons_5.11.2.tgz";
-        url  = "https://registry.yarnpkg.com/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-5.11.2.tgz";
-        sha1 = "2f2f1459743a27902b76655a0d0bc5ec4d945631";
+        name = "_fortawesome_free_solid_svg_icons___free_solid_svg_icons_5.12.1.tgz";
+        url  = "https://registry.yarnpkg.com/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-5.12.1.tgz";
+        sha1 = "76b6f958a3471821ff146f8f955e6d7cfe87147c";
       };
     }
     {
-      name = "_fortawesome_react_fontawesome___react_fontawesome_0.1.6.tgz";
+      name = "_fortawesome_react_fontawesome___react_fontawesome_0.1.8.tgz";
       path = fetchurl {
-        name = "_fortawesome_react_fontawesome___react_fontawesome_0.1.6.tgz";
-        url  = "https://registry.yarnpkg.com/@fortawesome/react-fontawesome/-/react-fontawesome-0.1.6.tgz";
-        sha1 = "b798b96401e25d07c30bbe1b9ec0e6d8a33760a5";
+        name = "_fortawesome_react_fontawesome___react_fontawesome_0.1.8.tgz";
+        url  = "https://registry.yarnpkg.com/@fortawesome/react-fontawesome/-/react-fontawesome-0.1.8.tgz";
+        sha1 = "cb6d4dd3aeec45b6ff2d48c812317a6627618511";
       };
     }
     {
-      name = "_hapi_address___address_2.1.2.tgz";
+      name = "_hapi_address___address_2.1.4.tgz";
       path = fetchurl {
-        name = "_hapi_address___address_2.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/@hapi/address/-/address-2.1.2.tgz";
-        sha1 = "1c794cd6dbf2354d1eb1ef10e0303f573e1c7222";
+        name = "_hapi_address___address_2.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/@hapi/address/-/address-2.1.4.tgz";
+        sha1 = "5d67ed43f3fd41a69d4b9ff7b56e7c0d1d0a81e5";
       };
     }
     {
@@ -834,11 +874,11 @@
       };
     }
     {
-      name = "_hapi_hoek___hoek_8.3.1.tgz";
+      name = "_hapi_hoek___hoek_8.5.1.tgz";
       path = fetchurl {
-        name = "_hapi_hoek___hoek_8.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-8.3.1.tgz";
-        sha1 = "227d29efdb158e4a64590224add90c820f94d20e";
+        name = "_hapi_hoek___hoek_8.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-8.5.1.tgz";
+        sha1 = "fde96064ca446dec8c55a8c2f130957b070c6e06";
       };
     }
     {
@@ -954,27 +994,19 @@
       };
     }
     {
-      name = "_reach_auto_id___auto_id_0.2.0.tgz";
+      name = "_reach_router___router_1.3.1.tgz";
       path = fetchurl {
-        name = "_reach_auto_id___auto_id_0.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/@reach/auto-id/-/auto-id-0.2.0.tgz";
-        sha1 = "97f9e48fe736aa5c6f4f32cf73c1f19d005f8550";
+        name = "_reach_router___router_1.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/@reach/router/-/router-1.3.1.tgz";
+        sha1 = "0a49f75fa9621323d6e21c803447bcfcde1713b2";
       };
     }
     {
-      name = "_reach_router___router_1.2.1.tgz";
+      name = "_sinonjs_commons___commons_1.7.1.tgz";
       path = fetchurl {
-        name = "_reach_router___router_1.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/@reach/router/-/router-1.2.1.tgz";
-        sha1 = "34ae3541a5ac44fa7796e5506a5d7274a162be4e";
-      };
-    }
-    {
-      name = "_sinonjs_commons___commons_1.6.0.tgz";
-      path = fetchurl {
-        name = "_sinonjs_commons___commons_1.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.6.0.tgz";
-        sha1 = "ec7670432ae9c8eb710400d112c201a362d83393";
+        name = "_sinonjs_commons___commons_1.7.1.tgz";
+        url  = "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.7.1.tgz";
+        sha1 = "da5fd19a5f71177a53778073978873964f49acf1";
       };
     }
     {
@@ -1106,35 +1138,35 @@
       };
     }
     {
-      name = "_svgr_webpack___webpack_4.3.2.tgz";
+      name = "_svgr_webpack___webpack_4.3.3.tgz";
       path = fetchurl {
-        name = "_svgr_webpack___webpack_4.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-4.3.2.tgz";
-        sha1 = "319d4471c8f3d5c3af35059274834d9b5b8fb956";
+        name = "_svgr_webpack___webpack_4.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-4.3.3.tgz";
+        sha1 = "13cc2423bf3dff2d494f16b17eb7eacb86895017";
       };
     }
     {
-      name = "_testing_library_react_hooks___react_hooks_3.1.1.tgz";
+      name = "_testing_library_react_hooks___react_hooks_3.2.1.tgz";
       path = fetchurl {
-        name = "_testing_library_react_hooks___react_hooks_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/@testing-library/react-hooks/-/react-hooks-3.1.1.tgz";
-        sha1 = "5c93e463c0252bea6ac237ec8d9c982c27d67208";
+        name = "_testing_library_react_hooks___react_hooks_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/@testing-library/react-hooks/-/react-hooks-3.2.1.tgz";
+        sha1 = "19b6caa048ef15faa69d439c469033873ea01294";
       };
     }
     {
-      name = "_types_babel__core___babel__core_7.1.3.tgz";
+      name = "_types_babel__core___babel__core_7.1.5.tgz";
       path = fetchurl {
-        name = "_types_babel__core___babel__core_7.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.3.tgz";
-        sha1 = "e441ea7df63cd080dfcd02ab199e6d16a735fc30";
+        name = "_types_babel__core___babel__core_7.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.5.tgz";
+        sha1 = "e4d84704b4df868b3ad538365a13da2fa6dbc023";
       };
     }
     {
-      name = "_types_babel__generator___babel__generator_7.6.0.tgz";
+      name = "_types_babel__generator___babel__generator_7.6.1.tgz";
       path = fetchurl {
-        name = "_types_babel__generator___babel__generator_7.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.0.tgz";
-        sha1 = "f1ec1c104d1bb463556ecb724018ab788d0c172a";
+        name = "_types_babel__generator___babel__generator_7.6.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.1.tgz";
+        sha1 = "4901767b397e8711aeb99df8d396d7ba7b7f0e04";
       };
     }
     {
@@ -1146,19 +1178,19 @@
       };
     }
     {
-      name = "_types_babel__traverse___babel__traverse_7.0.7.tgz";
+      name = "_types_babel__traverse___babel__traverse_7.0.9.tgz";
       path = fetchurl {
-        name = "_types_babel__traverse___babel__traverse_7.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.7.tgz";
-        sha1 = "2496e9ff56196cc1429c72034e07eab6121b6f3f";
+        name = "_types_babel__traverse___babel__traverse_7.0.9.tgz";
+        url  = "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.0.9.tgz";
+        sha1 = "be82fab304b141c3eee81a4ce3b034d0eba1590a";
       };
     }
     {
-      name = "_types_cheerio___cheerio_0.22.13.tgz";
+      name = "_types_cheerio___cheerio_0.22.16.tgz";
       path = fetchurl {
-        name = "_types_cheerio___cheerio_0.22.13.tgz";
-        url  = "https://registry.yarnpkg.com/@types/cheerio/-/cheerio-0.22.13.tgz";
-        sha1 = "5eecda091a24514185dcba99eda77e62bf6523e6";
+        name = "_types_cheerio___cheerio_0.22.16.tgz";
+        url  = "https://registry.yarnpkg.com/@types/cheerio/-/cheerio-0.22.16.tgz";
+        sha1 = "c748a97b8a6f781b04bbda4a552e11b35bcc77e4";
       };
     }
     {
@@ -1178,19 +1210,19 @@
       };
     }
     {
-      name = "_types_enzyme_adapter_react_16___enzyme_adapter_react_16_1.0.5.tgz";
+      name = "_types_enzyme_adapter_react_16___enzyme_adapter_react_16_1.0.6.tgz";
       path = fetchurl {
-        name = "_types_enzyme_adapter_react_16___enzyme_adapter_react_16_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/@types/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.0.5.tgz";
-        sha1 = "1bf30a166f49be69eeda4b81e3f24113c8b4e9d5";
+        name = "_types_enzyme_adapter_react_16___enzyme_adapter_react_16_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/@types/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.0.6.tgz";
+        sha1 = "8aca7ae2fd6c7137d869b6616e696d21bb8b0cec";
       };
     }
     {
-      name = "_types_enzyme___enzyme_3.10.3.tgz";
+      name = "_types_enzyme___enzyme_3.10.5.tgz";
       path = fetchurl {
-        name = "_types_enzyme___enzyme_3.10.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/enzyme/-/enzyme-3.10.3.tgz";
-        sha1 = "02b6c5ac7d0472005944a652e79045e2f6c66804";
+        name = "_types_enzyme___enzyme_3.10.5.tgz";
+        url  = "https://registry.yarnpkg.com/@types/enzyme/-/enzyme-3.10.5.tgz";
+        sha1 = "fe7eeba3550369eed20e7fb565bfb74eec44f1f0";
       };
     }
     {
@@ -1202,6 +1234,14 @@
       };
     }
     {
+      name = "_types_events___events_3.0.0.tgz";
+      path = fetchurl {
+        name = "_types_events___events_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/events/-/events-3.0.0.tgz";
+        sha1 = "2862f3f58a9a7f7c3e78d79f130dd4d71c25c2a7";
+      };
+    }
+    {
       name = "_types_flot___flot_0.0.31.tgz";
       path = fetchurl {
         name = "_types_flot___flot_0.0.31.tgz";
@@ -1210,11 +1250,19 @@
       };
     }
     {
-      name = "_types_history___history_4.7.3.tgz";
+      name = "_types_glob___glob_7.1.1.tgz";
+      path = fetchurl {
+        name = "_types_glob___glob_7.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/glob/-/glob-7.1.1.tgz";
+        sha1 = "aa59a1c6e3fbc421e07ccd31a944c30eba521575";
+      };
+    }
+    {
+      name = "_types_history___history_4.7.5.tgz";
       path = fetchurl {
-        name = "_types_history___history_4.7.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/history/-/history-4.7.3.tgz";
-        sha1 = "856c99cdc1551d22c22b18b5402719affec9839a";
+        name = "_types_history___history_4.7.5.tgz";
+        url  = "https://registry.yarnpkg.com/@types/history/-/history-4.7.5.tgz";
+        sha1 = "527d20ef68571a4af02ed74350164e7a67544860";
       };
     }
     {
@@ -1234,11 +1282,11 @@
       };
     }
     {
-      name = "_types_istanbul_lib_report___istanbul_lib_report_1.1.1.tgz";
+      name = "_types_istanbul_lib_report___istanbul_lib_report_3.0.0.tgz";
       path = fetchurl {
-        name = "_types_istanbul_lib_report___istanbul_lib_report_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz";
-        sha1 = "e5471e7fa33c61358dd38426189c037a58433b8c";
+        name = "_types_istanbul_lib_report___istanbul_lib_report_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz";
+        sha1 = "c14c24f18ea8190c118ee7562b7ff99a36552686";
       };
     }
     {
@@ -1250,35 +1298,35 @@
       };
     }
     {
-      name = "_types_jest_diff___jest_diff_20.0.1.tgz";
+      name = "_types_jest___jest_24.9.1.tgz";
       path = fetchurl {
-        name = "_types_jest_diff___jest_diff_20.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/@types/jest-diff/-/jest-diff-20.0.1.tgz";
-        sha1 = "35cc15b9c4f30a18ef21852e255fdb02f6d59b89";
+        name = "_types_jest___jest_24.9.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/jest/-/jest-24.9.1.tgz";
+        sha1 = "02baf9573c78f1b9974a5f36778b366aa77bd534";
       };
     }
     {
-      name = "_types_jest___jest_24.0.20.tgz";
+      name = "_types_jquery___jquery_3.3.32.tgz";
       path = fetchurl {
-        name = "_types_jest___jest_24.0.20.tgz";
-        url  = "https://registry.yarnpkg.com/@types/jest/-/jest-24.0.20.tgz";
-        sha1 = "729d5fe8684e7fb06368d3bd557ac6d91289d861";
+        name = "_types_jquery___jquery_3.3.32.tgz";
+        url  = "https://registry.yarnpkg.com/@types/jquery/-/jquery-3.3.32.tgz";
+        sha1 = "93e27fdc45dd38ee07f2f0acf34b59c1ccee036f";
       };
     }
     {
-      name = "_types_jquery___jquery_3.3.31.tgz";
+      name = "_types_json_schema___json_schema_7.0.4.tgz";
       path = fetchurl {
-        name = "_types_jquery___jquery_3.3.31.tgz";
-        url  = "https://registry.yarnpkg.com/@types/jquery/-/jquery-3.3.31.tgz";
-        sha1 = "27c706e4bf488474e1cb54a71d8303f37c93451b";
+        name = "_types_json_schema___json_schema_7.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.4.tgz";
+        sha1 = "38fd73ddfd9b55abb1e1b2ed578cb55bd7b7d339";
       };
     }
     {
-      name = "_types_json_schema___json_schema_7.0.3.tgz";
+      name = "_types_minimatch___minimatch_3.0.3.tgz";
       path = fetchurl {
-        name = "_types_json_schema___json_schema_7.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.3.tgz";
-        sha1 = "bdfd69d61e464dcc81b25159c270d75a73c1a636";
+        name = "_types_minimatch___minimatch_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.3.tgz";
+        sha1 = "3dca0e3f33b200fc7d1139c0cd96c1268cadfd9d";
       };
     }
     {
@@ -1290,11 +1338,27 @@
       };
     }
     {
-      name = "_types_node___node_12.11.1.tgz";
+      name = "_types_node___node_13.7.4.tgz";
+      path = fetchurl {
+        name = "_types_node___node_13.7.4.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-13.7.4.tgz";
+        sha1 = "76c3cb3a12909510f52e5dc04a6298cdf9504ffd";
+      };
+    }
+    {
+      name = "_types_node___node_12.12.28.tgz";
       path = fetchurl {
-        name = "_types_node___node_12.11.1.tgz";
-        url  = "https://registry.yarnpkg.com/@types/node/-/node-12.11.1.tgz";
-        sha1 = "1fd7b821f798b7fa29f667a1be8f3442bb8922a3";
+        name = "_types_node___node_12.12.28.tgz";
+        url  = "https://registry.yarnpkg.com/@types/node/-/node-12.12.28.tgz";
+        sha1 = "3a2b5f8d21f96ace690a8832ae9779114612575f";
+      };
+    }
+    {
+      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";
       };
     }
     {
@@ -1314,11 +1378,11 @@
       };
     }
     {
-      name = "_types_reach__router___reach__router_1.2.6.tgz";
+      name = "_types_reach__router___reach__router_1.3.0.tgz";
       path = fetchurl {
-        name = "_types_reach__router___reach__router_1.2.6.tgz";
-        url  = "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.2.6.tgz";
-        sha1 = "b14cf1adbd1a365d204bbf6605cd9dd7b8816c87";
+        name = "_types_reach__router___reach__router_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/reach__router/-/reach__router-1.3.0.tgz";
+        sha1 = "4c05a947ccecca05c72bb335a0f7bb43fec12446";
       };
     }
     {
@@ -1330,43 +1394,43 @@
       };
     }
     {
-      name = "_types_react_dom___react_dom_16.9.2.tgz";
+      name = "_types_react_dom___react_dom_16.9.5.tgz";
       path = fetchurl {
-        name = "_types_react_dom___react_dom_16.9.2.tgz";
-        url  = "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.9.2.tgz";
-        sha1 = "90f9e6c161850be1feb31d2f448121be2a4f3b47";
+        name = "_types_react_dom___react_dom_16.9.5.tgz";
+        url  = "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.9.5.tgz";
+        sha1 = "5de610b04a35d07ffd8f44edad93a71032d9aaa7";
       };
     }
     {
-      name = "_types_react_resize_detector___react_resize_detector_4.0.2.tgz";
+      name = "_types_react_resize_detector___react_resize_detector_4.2.0.tgz";
       path = fetchurl {
-        name = "_types_react_resize_detector___react_resize_detector_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/@types/react-resize-detector/-/react-resize-detector-4.0.2.tgz";
-        sha1 = "5c046301a881fe9af741536e0dd4c34dfb155c6e";
+        name = "_types_react_resize_detector___react_resize_detector_4.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/react-resize-detector/-/react-resize-detector-4.2.0.tgz";
+        sha1 = "ee8802e25cfb34439aa7f52626932ea62dc5792e";
       };
     }
     {
-      name = "_types_react_test_renderer___react_test_renderer_16.9.1.tgz";
+      name = "_types_react_test_renderer___react_test_renderer_16.9.2.tgz";
       path = fetchurl {
-        name = "_types_react_test_renderer___react_test_renderer_16.9.1.tgz";
-        url  = "https://registry.yarnpkg.com/@types/react-test-renderer/-/react-test-renderer-16.9.1.tgz";
-        sha1 = "9d432c46c515ebe50c45fa92c6fb5acdc22e39c4";
+        name = "_types_react_test_renderer___react_test_renderer_16.9.2.tgz";
+        url  = "https://registry.yarnpkg.com/@types/react-test-renderer/-/react-test-renderer-16.9.2.tgz";
+        sha1 = "e1c408831e8183e5ad748fdece02214a7c2ab6c5";
       };
     }
     {
-      name = "_types_react___react_16.9.9.tgz";
+      name = "_types_react___react_16.9.21.tgz";
       path = fetchurl {
-        name = "_types_react___react_16.9.9.tgz";
-        url  = "https://registry.yarnpkg.com/@types/react/-/react-16.9.9.tgz";
-        sha1 = "a62c6f40f04bc7681be5e20975503a64fe783c3a";
+        name = "_types_react___react_16.9.21.tgz";
+        url  = "https://registry.yarnpkg.com/@types/react/-/react-16.9.21.tgz";
+        sha1 = "99e274e2ecfab6bb93920e918341daa3198b348d";
       };
     }
     {
-      name = "_types_reactstrap___reactstrap_8.0.5.tgz";
+      name = "_types_reactstrap___reactstrap_8.4.1.tgz";
       path = fetchurl {
-        name = "_types_reactstrap___reactstrap_8.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/@types/reactstrap/-/reactstrap-8.0.5.tgz";
-        sha1 = "6c6429bcfcc1d97d9a89bcb73a07bbb698bfe945";
+        name = "_types_reactstrap___reactstrap_8.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/reactstrap/-/reactstrap-8.4.1.tgz";
+        sha1 = "6dff4d1fdf59233877925e3caec406272050b632";
       };
     }
     {
@@ -1378,11 +1442,11 @@
       };
     }
     {
-      name = "_types_sinon___sinon_7.5.0.tgz";
+      name = "_types_sinon___sinon_7.5.1.tgz";
       path = fetchurl {
-        name = "_types_sinon___sinon_7.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/sinon/-/sinon-7.5.0.tgz";
-        sha1 = "f5a10c27175465a0b001b68d8b9f761582967cc6";
+        name = "_types_sinon___sinon_7.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/@types/sinon/-/sinon-7.5.1.tgz";
+        sha1 = "d27b81af0d1cfe1f9b24eebe7a24f74ae40f5b7c";
       };
     }
     {
@@ -1402,91 +1466,59 @@
       };
     }
     {
-      name = "_types_testing_library__react_hooks___testing_library__react_hooks_2.0.0.tgz";
-      path = fetchurl {
-        name = "_types_testing_library__react_hooks___testing_library__react_hooks_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/testing-library__react-hooks/-/testing-library__react-hooks-2.0.0.tgz";
-        sha1 = "7b289d64945517ae8ba9cbcb0c5b282432aaeffa";
-      };
-    }
-    {
-      name = "_types_yargs_parser___yargs_parser_13.1.0.tgz";
-      path = fetchurl {
-        name = "_types_yargs_parser___yargs_parser_13.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-13.1.0.tgz";
-        sha1 = "c563aa192f39350a1d18da36c5a8da382bbd8228";
-      };
-    }
-    {
-      name = "_types_yargs___yargs_13.0.3.tgz";
-      path = fetchurl {
-        name = "_types_yargs___yargs_13.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.3.tgz";
-        sha1 = "76482af3981d4412d65371a318f992d33464a380";
-      };
-    }
-    {
-      name = "_typescript_eslint_eslint_plugin___eslint_plugin_2.5.0.tgz";
-      path = fetchurl {
-        name = "_typescript_eslint_eslint_plugin___eslint_plugin_2.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.5.0.tgz";
-        sha1 = "101d96743ce3365b3223df73d641078c9b775903";
-      };
-    }
-    {
-      name = "_typescript_eslint_eslint_plugin___eslint_plugin_2.4.0.tgz";
+      name = "_types_testing_library__react_hooks___testing_library__react_hooks_3.2.0.tgz";
       path = fetchurl {
-        name = "_typescript_eslint_eslint_plugin___eslint_plugin_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.4.0.tgz";
-        sha1 = "aaf6b542ff75b78f4191a8bf1c519184817caa24";
+        name = "_types_testing_library__react_hooks___testing_library__react_hooks_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/testing-library__react-hooks/-/testing-library__react-hooks-3.2.0.tgz";
+        sha1 = "52f3a109bef06080e3b1e3ae7ea1c014ce859897";
       };
     }
     {
-      name = "_typescript_eslint_experimental_utils___experimental_utils_2.4.0.tgz";
+      name = "_types_yargs_parser___yargs_parser_15.0.0.tgz";
       path = fetchurl {
-        name = "_typescript_eslint_experimental_utils___experimental_utils_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.4.0.tgz";
-        sha1 = "dd8f3f466be25c3610a06fed22cfb6e6aa17f6d9";
+        name = "_types_yargs_parser___yargs_parser_15.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-15.0.0.tgz";
+        sha1 = "cb3f9f741869e20cce330ffbeb9271590483882d";
       };
     }
     {
-      name = "_typescript_eslint_experimental_utils___experimental_utils_2.5.0.tgz";
+      name = "_types_yargs___yargs_13.0.8.tgz";
       path = fetchurl {
-        name = "_typescript_eslint_experimental_utils___experimental_utils_2.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.5.0.tgz";
-        sha1 = "383a97ded9a7940e5053449f6d73995e782b8fb1";
+        name = "_types_yargs___yargs_13.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.8.tgz";
+        sha1 = "a38c22def2f1c2068f8971acb3ea734eb3c64a99";
       };
     }
     {
-      name = "_typescript_eslint_parser___parser_2.5.0.tgz";
+      name = "_typescript_eslint_eslint_plugin___eslint_plugin_2.20.0.tgz";
       path = fetchurl {
-        name = "_typescript_eslint_parser___parser_2.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.5.0.tgz";
-        sha1 = "858030ddd808fbbe88e03f42e5971efaccb8218a";
+        name = "_typescript_eslint_eslint_plugin___eslint_plugin_2.20.0.tgz";
+        url  = "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.20.0.tgz";
+        sha1 = "a522d0e1e4898f7c9c6a8e1ed3579b60867693fa";
       };
     }
     {
-      name = "_typescript_eslint_parser___parser_2.4.0.tgz";
+      name = "_typescript_eslint_experimental_utils___experimental_utils_2.20.0.tgz";
       path = fetchurl {
-        name = "_typescript_eslint_parser___parser_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.4.0.tgz";
-        sha1 = "fe43ed5fec14af03d3594fce2c3b7ec4c8df0243";
+        name = "_typescript_eslint_experimental_utils___experimental_utils_2.20.0.tgz";
+        url  = "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.20.0.tgz";
+        sha1 = "3b6fa5a6b8885f126d5a4280e0d44f0f41e73e32";
       };
     }
     {
-      name = "_typescript_eslint_typescript_estree___typescript_estree_2.4.0.tgz";
+      name = "_typescript_eslint_parser___parser_2.20.0.tgz";
       path = fetchurl {
-        name = "_typescript_eslint_typescript_estree___typescript_estree_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.4.0.tgz";
-        sha1 = "722c95493e1b7682893edaaaec0e69f36917feef";
+        name = "_typescript_eslint_parser___parser_2.20.0.tgz";
+        url  = "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-2.20.0.tgz";
+        sha1 = "608e5bb06ba98a415b64ace994c79ab20f9772a9";
       };
     }
     {
-      name = "_typescript_eslint_typescript_estree___typescript_estree_2.5.0.tgz";
+      name = "_typescript_eslint_typescript_estree___typescript_estree_2.20.0.tgz";
       path = fetchurl {
-        name = "_typescript_eslint_typescript_estree___typescript_estree_2.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.5.0.tgz";
-        sha1 = "40ada624d6217ef092a3a79ed30d947ad4f212ce";
+        name = "_typescript_eslint_typescript_estree___typescript_estree_2.20.0.tgz";
+        url  = "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.20.0.tgz";
+        sha1 = "90a0f5598826b35b966ca83483b1a621b1a4d0c9";
       };
     }
     {
@@ -1650,11 +1682,11 @@
       };
     }
     {
-      name = "abab___abab_2.0.2.tgz";
+      name = "abab___abab_2.0.3.tgz";
       path = fetchurl {
-        name = "abab___abab_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/abab/-/abab-2.0.2.tgz";
-        sha1 = "a2fba1b122c69a85caa02d10f9270c7219709a9d";
+        name = "abab___abab_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/abab/-/abab-2.0.3.tgz";
+        sha1 = "623e2075e02eb2d3f2475e49f99c91846467907a";
       };
     }
     {
@@ -1706,11 +1738,11 @@
       };
     }
     {
-      name = "acorn___acorn_6.3.0.tgz";
+      name = "acorn___acorn_6.4.0.tgz";
       path = fetchurl {
-        name = "acorn___acorn_6.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/acorn/-/acorn-6.3.0.tgz";
-        sha1 = "0087509119ffa4fc0a0041d1e93a417e68cb856e";
+        name = "acorn___acorn_6.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/acorn/-/acorn-6.4.0.tgz";
+        sha1 = "b659d2ffbafa24baf5db1cdbb2c94a983ecd2784";
       };
     }
     {
@@ -1738,6 +1770,14 @@
       };
     }
     {
+      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 = "airbnb_prop_types___airbnb_prop_types_2.15.0.tgz";
       path = fetchurl {
         name = "airbnb_prop_types___airbnb_prop_types_2.15.0.tgz";
@@ -1762,11 +1802,11 @@
       };
     }
     {
-      name = "ajv___ajv_6.10.2.tgz";
+      name = "ajv___ajv_6.11.0.tgz";
       path = fetchurl {
-        name = "ajv___ajv_6.10.2.tgz";
-        url  = "https://registry.yarnpkg.com/ajv/-/ajv-6.10.2.tgz";
-        sha1 = "d3cea04d6b017b2894ad69040fec8b623eb4bd52";
+        name = "ajv___ajv_6.11.0.tgz";
+        url  = "https://registry.yarnpkg.com/ajv/-/ajv-6.11.0.tgz";
+        sha1 = "c3607cbc8ae392d8a5a536f25b21f8e5f3f87fe9";
       };
     }
     {
@@ -1794,11 +1834,11 @@
       };
     }
     {
-      name = "ansi_escapes___ansi_escapes_4.2.1.tgz";
+      name = "ansi_escapes___ansi_escapes_4.3.0.tgz";
       path = fetchurl {
-        name = "ansi_escapes___ansi_escapes_4.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.2.1.tgz";
-        sha1 = "4dccdb846c3eee10f6d64dea66273eab90c37228";
+        name = "ansi_escapes___ansi_escapes_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.0.tgz";
+        sha1 = "a4ce2b33d6b214b7950d8595c212f12ac9cc569d";
       };
     }
     {
@@ -1834,6 +1874,14 @@
       };
     }
     {
+      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";
@@ -1970,11 +2018,11 @@
       };
     }
     {
-      name = "array_includes___array_includes_3.0.3.tgz";
+      name = "array_includes___array_includes_3.1.1.tgz";
       path = fetchurl {
-        name = "array_includes___array_includes_3.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz";
-        sha1 = "184b48f62d92d7452bb31b323165c7f8bd02266d";
+        name = "array_includes___array_includes_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.1.tgz";
+        sha1 = "cdd67e6852bdf9c1215460786732255ed2459348";
       };
     }
     {
@@ -2010,11 +2058,11 @@
       };
     }
     {
-      name = "array.prototype.flat___array.prototype.flat_1.2.2.tgz";
+      name = "array.prototype.flat___array.prototype.flat_1.2.3.tgz";
       path = fetchurl {
-        name = "array.prototype.flat___array.prototype.flat_1.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.2.tgz";
-        sha1 = "8f3c71d245ba349b6b64b4078f76f5576f1fd723";
+        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";
       };
     }
     {
@@ -2138,11 +2186,11 @@
       };
     }
     {
-      name = "autoprefixer___autoprefixer_9.6.5.tgz";
+      name = "autoprefixer___autoprefixer_9.7.4.tgz";
       path = fetchurl {
-        name = "autoprefixer___autoprefixer_9.6.5.tgz";
-        url  = "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.6.5.tgz";
-        sha1 = "98f4afe7e93cccf323287515d426019619775e5e";
+        name = "autoprefixer___autoprefixer_9.7.4.tgz";
+        url  = "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-9.7.4.tgz";
+        sha1 = "f8bf3e06707d047f0641d87aee8cfb174b2a5378";
       };
     }
     {
@@ -2154,19 +2202,19 @@
       };
     }
     {
-      name = "aws4___aws4_1.8.0.tgz";
+      name = "aws4___aws4_1.9.1.tgz";
       path = fetchurl {
-        name = "aws4___aws4_1.8.0.tgz";
-        url  = "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz";
-        sha1 = "f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f";
+        name = "aws4___aws4_1.9.1.tgz";
+        url  = "https://registry.yarnpkg.com/aws4/-/aws4-1.9.1.tgz";
+        sha1 = "7e33d8f7d449b3f673cd72deb9abdc552dbe528e";
       };
     }
     {
-      name = "axobject_query___axobject_query_2.0.2.tgz";
+      name = "axobject_query___axobject_query_2.1.2.tgz";
       path = fetchurl {
-        name = "axobject_query___axobject_query_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.0.2.tgz";
-        sha1 = "ea187abe5b9002b377f925d8bf7d1c561adf38f9";
+        name = "axobject_query___axobject_query_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/axobject-query/-/axobject-query-2.1.2.tgz";
+        sha1 = "2bdffc0371e643e5f03ba99065d5179b9ca79799";
       };
     }
     {
@@ -2234,19 +2282,19 @@
       };
     }
     {
-      name = "babel_plugin_macros___babel_plugin_macros_2.6.1.tgz";
+      name = "babel_plugin_macros___babel_plugin_macros_2.8.0.tgz";
       path = fetchurl {
-        name = "babel_plugin_macros___babel_plugin_macros_2.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.6.1.tgz";
-        sha1 = "41f7ead616fc36f6a93180e89697f69f51671181";
+        name = "babel_plugin_macros___babel_plugin_macros_2.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz";
+        sha1 = "0f958a7cc6556b1e65344465d99111a1e5e10138";
       };
     }
     {
-      name = "babel_plugin_named_asset_import___babel_plugin_named_asset_import_0.3.4.tgz";
+      name = "babel_plugin_named_asset_import___babel_plugin_named_asset_import_0.3.6.tgz";
       path = fetchurl {
-        name = "babel_plugin_named_asset_import___babel_plugin_named_asset_import_0.3.4.tgz";
-        url  = "https://registry.yarnpkg.com/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.4.tgz";
-        sha1 = "4a8fc30e9a3e2b1f5ed36883386ab2d84e1089bd";
+        name = "babel_plugin_named_asset_import___babel_plugin_named_asset_import_0.3.6.tgz";
+        url  = "https://registry.yarnpkg.com/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.6.tgz";
+        sha1 = "c9750a1b38d85112c9e166bf3ef7c5dbc605f4be";
       };
     }
     {
@@ -2282,11 +2330,11 @@
       };
     }
     {
-      name = "babel_preset_react_app___babel_preset_react_app_9.0.2.tgz";
+      name = "babel_preset_react_app___babel_preset_react_app_9.1.1.tgz";
       path = fetchurl {
-        name = "babel_preset_react_app___babel_preset_react_app_9.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/babel-preset-react-app/-/babel-preset-react-app-9.0.2.tgz";
-        sha1 = "247d37e883d6d6f4b4691e5f23711bb2dd80567d";
+        name = "babel_preset_react_app___babel_preset_react_app_9.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/babel-preset-react-app/-/babel-preset-react-app-9.1.1.tgz";
+        sha1 = "d1ceb47cbe48b285fdd5c562c54c432ed5a41e0e";
       };
     }
     {
@@ -2370,11 +2418,19 @@
       };
     }
     {
-      name = "bluebird___bluebird_3.7.1.tgz";
+      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.1.tgz";
-        url  = "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.1.tgz";
-        sha1 = "df70e302b471d7473489acf26a93d63b53f874de";
+        name = "bluebird___bluebird_3.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz";
+        sha1 = "9f229c15be272454ffa973ace0dbee79a1b0c36f";
       };
     }
     {
@@ -2410,11 +2466,11 @@
       };
     }
     {
-      name = "bootstrap___bootstrap_4.3.1.tgz";
+      name = "bootstrap___bootstrap_4.4.1.tgz";
       path = fetchurl {
-        name = "bootstrap___bootstrap_4.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.3.1.tgz";
-        sha1 = "280ca8f610504d99d7b6b4bfc4b68cec601704ac";
+        name = "bootstrap___bootstrap_4.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.4.1.tgz";
+        sha1 = "8582960eea0c5cd2bede84d8b0baf3789c3e8b01";
       };
     }
     {
@@ -2514,27 +2570,27 @@
       };
     }
     {
-      name = "browserslist___browserslist_4.7.0.tgz";
+      name = "browserslist___browserslist_4.8.6.tgz";
       path = fetchurl {
-        name = "browserslist___browserslist_4.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.0.tgz";
-        sha1 = "9ee89225ffc07db03409f2fee524dc8227458a17";
+        name = "browserslist___browserslist_4.8.6.tgz";
+        url  = "https://registry.yarnpkg.com/browserslist/-/browserslist-4.8.6.tgz";
+        sha1 = "96406f3f5f0755d272e27a66f4163ca821590a7e";
       };
     }
     {
-      name = "browserslist___browserslist_4.7.1.tgz";
+      name = "browserslist___browserslist_4.8.7.tgz";
       path = fetchurl {
-        name = "browserslist___browserslist_4.7.1.tgz";
-        url  = "https://registry.yarnpkg.com/browserslist/-/browserslist-4.7.1.tgz";
-        sha1 = "bd400d1aea56538580e8c4d5f1c54ac11b5ab468";
+        name = "browserslist___browserslist_4.8.7.tgz";
+        url  = "https://registry.yarnpkg.com/browserslist/-/browserslist-4.8.7.tgz";
+        sha1 = "ec8301ff415e6a42c949d0e66b405eb539c532d0";
       };
     }
     {
-      name = "bser___bser_2.1.0.tgz";
+      name = "bser___bser_2.1.1.tgz";
       path = fetchurl {
-        name = "bser___bser_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/bser/-/bser-2.1.0.tgz";
-        sha1 = "65fc784bf7f87c009b973c12db6546902fa9c7b5";
+        name = "bser___bser_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz";
+        sha1 = "e6787da20ece9d07998533cfd9de6f5c38f4bc05";
       };
     }
     {
@@ -2562,11 +2618,11 @@
       };
     }
     {
-      name = "buffer___buffer_4.9.1.tgz";
+      name = "buffer___buffer_4.9.2.tgz";
       path = fetchurl {
-        name = "buffer___buffer_4.9.1.tgz";
-        url  = "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz";
-        sha1 = "6d1bb601b07a4efced97094132093027c95bc298";
+        name = "buffer___buffer_4.9.2.tgz";
+        url  = "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz";
+        sha1 = "230ead344002988644841ab0244af8c44bbe3ef8";
       };
     }
     {
@@ -2602,6 +2658,14 @@
       };
     }
     {
+      name = "cacache___cacache_13.0.1.tgz";
+      path = fetchurl {
+        name = "cacache___cacache_13.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/cacache/-/cacache-13.0.1.tgz";
+        sha1 = "a8000c21697089082f85287a1aec6e382024a71c";
+      };
+    }
+    {
       name = "cache_base___cache_base_1.0.1.tgz";
       path = fetchurl {
         name = "cache_base___cache_base_1.0.1.tgz";
@@ -2650,11 +2714,11 @@
       };
     }
     {
-      name = "camel_case___camel_case_3.0.0.tgz";
+      name = "camel_case___camel_case_4.1.1.tgz";
       path = fetchurl {
-        name = "camel_case___camel_case_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz";
-        sha1 = "ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73";
+        name = "camel_case___camel_case_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.1.tgz";
+        sha1 = "1fc41c854f00e2f7d0139dfeba1542d6896fe547";
       };
     }
     {
@@ -2666,14 +2730,6 @@
       };
     }
     {
-      name = "camelcase___camelcase_4.1.0.tgz";
-      path = fetchurl {
-        name = "camelcase___camelcase_4.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz";
-        sha1 = "d545635be1e33c542649c69173e5de6acfae34dd";
-      };
-    }
-    {
       name = "camelcase___camelcase_5.3.1.tgz";
       path = fetchurl {
         name = "camelcase___camelcase_5.3.1.tgz";
@@ -2690,11 +2746,11 @@
       };
     }
     {
-      name = "caniuse_lite___caniuse_lite_1.0.30000999.tgz";
+      name = "caniuse_lite___caniuse_lite_1.0.30001028.tgz";
       path = fetchurl {
-        name = "caniuse_lite___caniuse_lite_1.0.30000999.tgz";
-        url  = "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000999.tgz";
-        sha1 = "427253a69ad7bea4aa8d8345687b8eec51ca0e43";
+        name = "caniuse_lite___caniuse_lite_1.0.30001028.tgz";
+        url  = "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001028.tgz";
+        sha1 = "f2241242ac70e0fa9cda55c2776d32a0867971c2";
       };
     }
     {
@@ -2706,11 +2762,11 @@
       };
     }
     {
-      name = "case_sensitive_paths_webpack_plugin___case_sensitive_paths_webpack_plugin_2.2.0.tgz";
+      name = "case_sensitive_paths_webpack_plugin___case_sensitive_paths_webpack_plugin_2.3.0.tgz";
       path = fetchurl {
-        name = "case_sensitive_paths_webpack_plugin___case_sensitive_paths_webpack_plugin_2.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.2.0.tgz";
-        sha1 = "3371ef6365ef9c25fa4b81c16ace0e9c7dc58c3e";
+        name = "case_sensitive_paths_webpack_plugin___case_sensitive_paths_webpack_plugin_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.3.0.tgz";
+        sha1 = "23ac613cc9a856e4f88ff8bb73bbb5e989825cf7";
       };
     }
     {
@@ -2762,19 +2818,19 @@
       };
     }
     {
-      name = "chokidar___chokidar_3.2.2.tgz";
+      name = "chokidar___chokidar_3.3.1.tgz";
       path = fetchurl {
-        name = "chokidar___chokidar_3.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/chokidar/-/chokidar-3.2.2.tgz";
-        sha1 = "a433973350021e09f2b853a2287781022c0dc935";
+        name = "chokidar___chokidar_3.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/chokidar/-/chokidar-3.3.1.tgz";
+        sha1 = "c84e5b3d18d9a4d77558fef466b1bf16bbeb3450";
       };
     }
     {
-      name = "chownr___chownr_1.1.3.tgz";
+      name = "chownr___chownr_1.1.4.tgz";
       path = fetchurl {
-        name = "chownr___chownr_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/chownr/-/chownr-1.1.3.tgz";
-        sha1 = "42d837d5239688d55f303003a508230fa6727142";
+        name = "chownr___chownr_1.1.4.tgz";
+        url  = "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz";
+        sha1 = "6fc9d7b42d32a583596337666e7d08084da2cc6b";
       };
     }
     {
@@ -2818,19 +2874,27 @@
       };
     }
     {
-      name = "clean_css___clean_css_4.2.1.tgz";
+      name = "clean_css___clean_css_4.2.3.tgz";
       path = fetchurl {
-        name = "clean_css___clean_css_4.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.1.tgz";
-        sha1 = "2d411ef76b8569b6d0c84068dabe85b0aa5e5c17";
+        name = "clean_css___clean_css_4.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz";
+        sha1 = "507b5de7d97b48ee53d84adb0160ff6216380f78";
       };
     }
     {
-      name = "cli_cursor___cli_cursor_2.1.0.tgz";
+      name = "clean_stack___clean_stack_2.2.0.tgz";
       path = fetchurl {
-        name = "cli_cursor___cli_cursor_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz";
-        sha1 = "b35dac376479facc3e94747d41d0d0f5238ffcb5";
+        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 = "cli_cursor___cli_cursor_3.1.0.tgz";
+      path = fetchurl {
+        name = "cli_cursor___cli_cursor_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz";
+        sha1 = "264305a7ae490d1d03bf0c9ba7c925d1753af307";
       };
     }
     {
@@ -2954,22 +3018,6 @@
       };
     }
     {
-      name = "commander___commander_2.17.1.tgz";
-      path = fetchurl {
-        name = "commander___commander_2.17.1.tgz";
-        url  = "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz";
-        sha1 = "bd77ab7de6de94205ceacc72f1716d29f20a77bf";
-      };
-    }
-    {
-      name = "commander___commander_2.20.0.tgz";
-      path = fetchurl {
-        name = "commander___commander_2.20.0.tgz";
-        url  = "https://registry.yarnpkg.com/commander/-/commander-2.20.0.tgz";
-        sha1 = "d58bb2b5c1ee8f87b0d340027e9e94e222c5a422";
-      };
-    }
-    {
       name = "commander___commander_2.20.3.tgz";
       path = fetchurl {
         name = "commander___commander_2.20.3.tgz";
@@ -2978,11 +3026,11 @@
       };
     }
     {
-      name = "commander___commander_2.19.0.tgz";
+      name = "commander___commander_4.1.1.tgz";
       path = fetchurl {
-        name = "commander___commander_2.19.0.tgz";
-        url  = "https://registry.yarnpkg.com/commander/-/commander-2.19.0.tgz";
-        sha1 = "f6198aa84e5b83c46054b94ddedbfed5ee9ff12a";
+        name = "commander___commander_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz";
+        sha1 = "9fd602bd936294e9e9ef46a3f4d6964044b18068";
       };
     }
     {
@@ -3018,11 +3066,11 @@
       };
     }
     {
-      name = "compressible___compressible_2.0.17.tgz";
+      name = "compressible___compressible_2.0.18.tgz";
       path = fetchurl {
-        name = "compressible___compressible_2.0.17.tgz";
-        url  = "https://registry.yarnpkg.com/compressible/-/compressible-2.0.17.tgz";
-        sha1 = "6e8c108a16ad58384a977f3a482ca20bff2f38c1";
+        name = "compressible___compressible_2.0.18.tgz";
+        url  = "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz";
+        sha1 = "af53cca6b070d4c3c0750fbd77286a6d7cc46fba";
       };
     }
     {
@@ -3034,11 +3082,11 @@
       };
     }
     {
-      name = "compute_scroll_into_view___compute_scroll_into_view_1.0.11.tgz";
+      name = "compute_scroll_into_view___compute_scroll_into_view_1.0.13.tgz";
       path = fetchurl {
-        name = "compute_scroll_into_view___compute_scroll_into_view_1.0.11.tgz";
-        url  = "https://registry.yarnpkg.com/compute-scroll-into-view/-/compute-scroll-into-view-1.0.11.tgz";
-        sha1 = "7ff0a57f9aeda6314132d8994cce7aeca794fecf";
+        name = "compute_scroll_into_view___compute_scroll_into_view_1.0.13.tgz";
+        url  = "https://registry.yarnpkg.com/compute-scroll-into-view/-/compute-scroll-into-view-1.0.13.tgz";
+        sha1 = "be1b1663b0e3f56cd5f7713082549f562a3477e2";
       };
     }
     {
@@ -3074,11 +3122,11 @@
       };
     }
     {
-      name = "console_browserify___console_browserify_1.1.0.tgz";
+      name = "console_browserify___console_browserify_1.2.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";
+        url  = "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz";
+        sha1 = "67063cef57ceb6cf4993a2ab3a55840ae8c49336";
       };
     }
     {
@@ -3122,11 +3170,11 @@
       };
     }
     {
-      name = "convert_source_map___convert_source_map_1.6.0.tgz";
+      name = "convert_source_map___convert_source_map_1.7.0.tgz";
       path = fetchurl {
-        name = "convert_source_map___convert_source_map_1.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.6.0.tgz";
-        sha1 = "51b537a8c43e0f04dec1993bffcdd504e758ac20";
+        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";
       };
     }
     {
@@ -3170,43 +3218,35 @@
       };
     }
     {
-      name = "copy_to_clipboard___copy_to_clipboard_3.2.0.tgz";
+      name = "copy_to_clipboard___copy_to_clipboard_3.2.1.tgz";
       path = fetchurl {
-        name = "copy_to_clipboard___copy_to_clipboard_3.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.2.0.tgz";
-        sha1 = "d2724a3ccbfed89706fac8a894872c979ac74467";
+        name = "copy_to_clipboard___copy_to_clipboard_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/copy-to-clipboard/-/copy-to-clipboard-3.2.1.tgz";
+        sha1 = "b1a1137100e5665d5a96015cb579e30e90e07c44";
       };
     }
     {
-      name = "core_js_compat___core_js_compat_3.3.2.tgz";
+      name = "core_js_compat___core_js_compat_3.6.4.tgz";
       path = fetchurl {
-        name = "core_js_compat___core_js_compat_3.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.3.2.tgz";
-        sha1 = "1096c989c1b929ede06b5b6b4768dc4439078c03";
+        name = "core_js_compat___core_js_compat_3.6.4.tgz";
+        url  = "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.6.4.tgz";
+        sha1 = "938476569ebb6cda80d339bcf199fae4f16fff17";
       };
     }
     {
-      name = "core_js___core_js_3.2.1.tgz";
+      name = "core_js___core_js_2.6.11.tgz";
       path = fetchurl {
-        name = "core_js___core_js_3.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/core-js/-/core-js-3.2.1.tgz";
-        sha1 = "cd41f38534da6cc59f7db050fe67307de9868b09";
+        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_1.2.7.tgz";
+      name = "core_js___core_js_3.6.4.tgz";
       path = fetchurl {
-        name = "core_js___core_js_1.2.7.tgz";
-        url  = "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz";
-        sha1 = "652294c14651db28fa93bd2d5ff2983a4f08c636";
-      };
-    }
-    {
-      name = "core_js___core_js_2.6.10.tgz";
-      path = fetchurl {
-        name = "core_js___core_js_2.6.10.tgz";
-        url  = "https://registry.yarnpkg.com/core-js/-/core-js-2.6.10.tgz";
-        sha1 = "8a5b8391f8cc7013da703411ce5b585706300d7f";
+        name = "core_js___core_js_3.6.4.tgz";
+        url  = "https://registry.yarnpkg.com/core-js/-/core-js-3.6.4.tgz";
+        sha1 = "440a83536b458114b9cb2ac1580ba377dc470647";
       };
     }
     {
@@ -3226,6 +3266,14 @@
       };
     }
     {
+      name = "cosmiconfig___cosmiconfig_6.0.0.tgz";
+      path = fetchurl {
+        name = "cosmiconfig___cosmiconfig_6.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-6.0.0.tgz";
+        sha1 = "da4fee853c52f6b1e6935f41c1a2fc50bd4a9982";
+      };
+    }
+    {
       name = "create_ecdh___create_ecdh_4.0.3.tgz";
       path = fetchurl {
         name = "create_ecdh___create_ecdh_4.0.3.tgz";
@@ -3250,14 +3298,6 @@
       };
     }
     {
-      name = "create_react_context___create_react_context_0.2.3.tgz";
-      path = fetchurl {
-        name = "create_react_context___create_react_context_0.2.3.tgz";
-        url  = "https://registry.yarnpkg.com/create-react-context/-/create-react-context-0.2.3.tgz";
-        sha1 = "9ec140a6914a22ef04b8b09b7771de89567cb6f3";
-      };
-    }
-    {
       name = "create_react_context___create_react_context_0.3.0.tgz";
       path = fetchurl {
         name = "create_react_context___create_react_context_0.3.0.tgz";
@@ -3274,6 +3314,14 @@
       };
     }
     {
+      name = "cross_spawn___cross_spawn_7.0.1.tgz";
+      path = fetchurl {
+        name = "cross_spawn___cross_spawn_7.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.1.tgz";
+        sha1 = "0ab56286e0f7c24e153d04cc2aa027e43a9a5d14";
+      };
+    }
+    {
       name = "cross_spawn___cross_spawn_6.0.5.tgz";
       path = fetchurl {
         name = "cross_spawn___cross_spawn_6.0.5.tgz";
@@ -3322,11 +3370,11 @@
       };
     }
     {
-      name = "css_loader___css_loader_2.1.1.tgz";
+      name = "css_loader___css_loader_3.4.2.tgz";
       path = fetchurl {
-        name = "css_loader___css_loader_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/css-loader/-/css-loader-2.1.1.tgz";
-        sha1 = "d8254f72e412bb2238bb44dd674ffbef497333ea";
+        name = "css_loader___css_loader_3.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/css-loader/-/css-loader-3.4.2.tgz";
+        sha1 = "d3fdb3358b43f233b78501c5ed7b1c6da6133202";
       };
     }
     {
@@ -3354,43 +3402,43 @@
       };
     }
     {
-      name = "css_select___css_select_2.0.2.tgz";
+      name = "css_select___css_select_2.1.0.tgz";
       path = fetchurl {
-        name = "css_select___css_select_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/css-select/-/css-select-2.0.2.tgz";
-        sha1 = "ab4386cec9e1f668855564b17c3733b43b2a5ede";
+        name = "css_select___css_select_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/css-select/-/css-select-2.1.0.tgz";
+        sha1 = "6a34653356635934a81baca68d0255432105dbef";
       };
     }
     {
-      name = "css_tree___css_tree_1.0.0_alpha.29.tgz";
+      name = "css_tree___css_tree_1.0.0_alpha.37.tgz";
       path = fetchurl {
-        name = "css_tree___css_tree_1.0.0_alpha.29.tgz";
-        url  = "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.29.tgz";
-        sha1 = "3fa9d4ef3142cbd1c301e7664c1f352bd82f5a39";
+        name = "css_tree___css_tree_1.0.0_alpha.37.tgz";
+        url  = "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.37.tgz";
+        sha1 = "98bebd62c4c1d9f960ec340cf9f7522e30709a22";
       };
     }
     {
-      name = "css_tree___css_tree_1.0.0_alpha.33.tgz";
+      name = "css_what___css_what_2.1.3.tgz";
       path = fetchurl {
-        name = "css_tree___css_tree_1.0.0_alpha.33.tgz";
-        url  = "https://registry.yarnpkg.com/css-tree/-/css-tree-1.0.0-alpha.33.tgz";
-        sha1 = "970e20e5a91f7a378ddd0fc58d0b6c8d4f3be93e";
+        name = "css_what___css_what_2.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz";
+        sha1 = "a6d7604573365fe74686c3f311c56513d88285f2";
       };
     }
     {
-      name = "css_unit_converter___css_unit_converter_1.1.1.tgz";
+      name = "css_what___css_what_3.2.1.tgz";
       path = fetchurl {
-        name = "css_unit_converter___css_unit_converter_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/css-unit-converter/-/css-unit-converter-1.1.1.tgz";
-        sha1 = "d9b9281adcfd8ced935bdbaba83786897f64e996";
+        name = "css_what___css_what_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/css-what/-/css-what-3.2.1.tgz";
+        sha1 = "f4a8f12421064621b456755e34a03a2c22df5da1";
       };
     }
     {
-      name = "css_what___css_what_2.1.3.tgz";
+      name = "css.escape___css.escape_1.5.1.tgz";
       path = fetchurl {
-        name = "css_what___css_what_2.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz";
-        sha1 = "a6d7604573365fe74686c3f311c56513d88285f2";
+        name = "css.escape___css.escape_1.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz";
+        sha1 = "42e27d4fa04ae32f931a4b4d4191fa9cddee97cb";
       };
     }
     {
@@ -3474,11 +3522,11 @@
       };
     }
     {
-      name = "csso___csso_3.5.1.tgz";
+      name = "csso___csso_4.0.2.tgz";
       path = fetchurl {
-        name = "csso___csso_3.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/csso/-/csso-3.5.1.tgz";
-        sha1 = "7b9eb8be61628973c1b261e169d2f024008e758b";
+        name = "csso___csso_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/csso/-/csso-4.0.2.tgz";
+        sha1 = "e5f81ab3a56b8eefb7f0092ce7279329f454de3d";
       };
     }
     {
@@ -3490,11 +3538,11 @@
       };
     }
     {
-      name = "cssom___cssom_0.4.1.tgz";
+      name = "cssom___cssom_0.4.4.tgz";
       path = fetchurl {
-        name = "cssom___cssom_0.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/cssom/-/cssom-0.4.1.tgz";
-        sha1 = "b24111d236b6dbd00cdfacb5ab67a20473381fe3";
+        name = "cssom___cssom_0.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz";
+        sha1 = "5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10";
       };
     }
     {
@@ -3506,19 +3554,19 @@
       };
     }
     {
-      name = "cssstyle___cssstyle_2.0.0.tgz";
+      name = "cssstyle___cssstyle_2.2.0.tgz";
       path = fetchurl {
-        name = "cssstyle___cssstyle_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.0.0.tgz";
-        sha1 = "911f0fe25532db4f5d44afc83f89cc4b82c97fe3";
+        name = "cssstyle___cssstyle_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.2.0.tgz";
+        sha1 = "e4c44debccd6b7911ed617a4395e5754bba59992";
       };
     }
     {
-      name = "csstype___csstype_2.6.7.tgz";
+      name = "csstype___csstype_2.6.9.tgz";
       path = fetchurl {
-        name = "csstype___csstype_2.6.7.tgz";
-        url  = "https://registry.yarnpkg.com/csstype/-/csstype-2.6.7.tgz";
-        sha1 = "20b0024c20b6718f4eda3853a1f5a1cce7f5e4a5";
+        name = "csstype___csstype_2.6.9.tgz";
+        url  = "https://registry.yarnpkg.com/csstype/-/csstype-2.6.9.tgz";
+        sha1 = "05141d0cd557a56b8891394c1911c40c8a98d098";
       };
     }
     {
@@ -3538,11 +3586,11 @@
       };
     }
     {
-      name = "damerau_levenshtein___damerau_levenshtein_1.0.5.tgz";
+      name = "damerau_levenshtein___damerau_levenshtein_1.0.6.tgz";
       path = fetchurl {
-        name = "damerau_levenshtein___damerau_levenshtein_1.0.5.tgz";
-        url  = "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.5.tgz";
-        sha1 = "780cf7144eb2e8dbd1c3bb83ae31100ccc31a414";
+        name = "damerau_levenshtein___damerau_levenshtein_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz";
+        sha1 = "143c1641cb3d85c60c32329e26899adea8701791";
       };
     }
     {
@@ -3562,14 +3610,6 @@
       };
     }
     {
-      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";
@@ -3602,14 +3642,6 @@
       };
     }
     {
-      name = "decamelize___decamelize_2.0.0.tgz";
-      path = fetchurl {
-        name = "decamelize___decamelize_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/decamelize/-/decamelize-2.0.0.tgz";
-        sha1 = "656d7bbc8094c4c788ea53c5840908c9c7d063c7";
-      };
-    }
-    {
       name = "decode_uri_component___decode_uri_component_0.2.0.tgz";
       path = fetchurl {
         name = "decode_uri_component___decode_uri_component_0.2.0.tgz";
@@ -3618,11 +3650,11 @@
       };
     }
     {
-      name = "deep_equal___deep_equal_1.1.0.tgz";
+      name = "deep_equal___deep_equal_1.1.1.tgz";
       path = fetchurl {
-        name = "deep_equal___deep_equal_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.0.tgz";
-        sha1 = "3103cdf8ab6d32cf4a8df7865458f2b8d33f3745";
+        name = "deep_equal___deep_equal_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz";
+        sha1 = "b5c98c942ceffaf7cb051e24e1434a25a2e6076a";
       };
     }
     {
@@ -3682,11 +3714,11 @@
       };
     }
     {
-      name = "del___del_3.0.0.tgz";
+      name = "del___del_4.1.1.tgz";
       path = fetchurl {
-        name = "del___del_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz";
-        sha1 = "53ecf699ffcbcb39637691ab13baf160819766e5";
+        name = "del___del_4.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/del/-/del-4.1.1.tgz";
+        sha1 = "9e8f117222ea44a31ff3a156c049b99052a9f0b4";
       };
     }
     {
@@ -3714,11 +3746,11 @@
       };
     }
     {
-      name = "des.js___des.js_1.0.0.tgz";
+      name = "des.js___des.js_1.0.1.tgz";
       path = fetchurl {
-        name = "des.js___des.js_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz";
-        sha1 = "c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc";
+        name = "des.js___des.js_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/des.js/-/des.js-1.0.1.tgz";
+        sha1 = "5382142e1bdc53f85d86d53e5f4aa7deb91e0843";
       };
     }
     {
@@ -3866,11 +3898,11 @@
       };
     }
     {
-      name = "dom_serializer___dom_serializer_0.2.1.tgz";
+      name = "dom_serializer___dom_serializer_0.2.2.tgz";
       path = fetchurl {
-        name = "dom_serializer___dom_serializer_0.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.1.tgz";
-        sha1 = "13650c850daffea35d8b626a4cfc4d3a17643fdb";
+        name = "dom_serializer___dom_serializer_0.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.2.2.tgz";
+        sha1 = "1afb81f533717175d478655debc5e332d9f9bb51";
       };
     }
     {
@@ -3938,11 +3970,19 @@
       };
     }
     {
-      name = "dot_prop___dot_prop_4.2.0.tgz";
+      name = "dot_case___dot_case_3.0.3.tgz";
+      path = fetchurl {
+        name = "dot_case___dot_case_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.3.tgz";
+        sha1 = "21d3b52efaaba2ea5fda875bb1aa8124521cf4aa";
+      };
+    }
+    {
+      name = "dot_prop___dot_prop_5.2.0.tgz";
       path = fetchurl {
-        name = "dot_prop___dot_prop_4.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz";
-        sha1 = "1f19e0c2e1aa0e32797c49799f2837ac6af69c57";
+        name = "dot_prop___dot_prop_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.2.0.tgz";
+        sha1 = "c34ecc29556dc45f1f4c22697b6f4904e0cc4fcb";
       };
     }
     {
@@ -3954,19 +3994,19 @@
       };
     }
     {
-      name = "dotenv___dotenv_6.2.0.tgz";
+      name = "dotenv___dotenv_8.2.0.tgz";
       path = fetchurl {
-        name = "dotenv___dotenv_6.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/dotenv/-/dotenv-6.2.0.tgz";
-        sha1 = "941c0410535d942c8becf28d3f357dbd9d476064";
+        name = "dotenv___dotenv_8.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/dotenv/-/dotenv-8.2.0.tgz";
+        sha1 = "97e619259ada750eea3e4ea3e26bceea5424b16a";
       };
     }
     {
-      name = "downshift___downshift_3.3.5.tgz";
+      name = "downshift___downshift_3.4.8.tgz";
       path = fetchurl {
-        name = "downshift___downshift_3.3.5.tgz";
-        url  = "https://registry.yarnpkg.com/downshift/-/downshift-3.3.5.tgz";
-        sha1 = "635f465ab45f577814a98901024873637649ce6f";
+        name = "downshift___downshift_3.4.8.tgz";
+        url  = "https://registry.yarnpkg.com/downshift/-/downshift-3.4.8.tgz";
+        sha1 = "06b7ad9e9c423a58e8a9049b2a00a5d19c7ef954";
       };
     }
     {
@@ -4002,19 +4042,19 @@
       };
     }
     {
-      name = "electron_to_chromium___electron_to_chromium_1.3.284.tgz";
+      name = "electron_to_chromium___electron_to_chromium_1.3.356.tgz";
       path = fetchurl {
-        name = "electron_to_chromium___electron_to_chromium_1.3.284.tgz";
-        url  = "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.284.tgz";
-        sha1 = "b24359fa4f49b3a7c52afc005d59ec3aa9f6796e";
+        name = "electron_to_chromium___electron_to_chromium_1.3.356.tgz";
+        url  = "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.356.tgz";
+        sha1 = "fb985ee0f3023e6e11b97547ff3f738bdd8643d2";
       };
     }
     {
-      name = "elliptic___elliptic_6.5.1.tgz";
+      name = "elliptic___elliptic_6.5.2.tgz";
       path = fetchurl {
-        name = "elliptic___elliptic_6.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.1.tgz";
-        sha1 = "c380f5f909bf1b9b4428d028cd18d3b0efd6b52b";
+        name = "elliptic___elliptic_6.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.2.tgz";
+        sha1 = "05c5678d7173c049d8ca433552224a495d0e3762";
       };
     }
     {
@@ -4026,6 +4066,14 @@
       };
     }
     {
+      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";
@@ -4034,19 +4082,19 @@
       };
     }
     {
-      name = "encodeurl___encodeurl_1.0.2.tgz";
+      name = "emojis_list___emojis_list_3.0.0.tgz";
       path = fetchurl {
-        name = "encodeurl___encodeurl_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz";
-        sha1 = "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59";
+        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 = "encoding___encoding_0.1.12.tgz";
+      name = "encodeurl___encodeurl_1.0.2.tgz";
       path = fetchurl {
-        name = "encoding___encoding_0.1.12.tgz";
-        url  = "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz";
-        sha1 = "538b66f3ee62cd1ab51ec323829d1f9480c74beb";
+        name = "encodeurl___encodeurl_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz";
+        sha1 = "ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59";
       };
     }
     {
@@ -4082,43 +4130,43 @@
       };
     }
     {
-      name = "enzyme_adapter_react_16___enzyme_adapter_react_16_1.15.1.tgz";
+      name = "enzyme_adapter_react_16___enzyme_adapter_react_16_1.15.2.tgz";
       path = fetchurl {
-        name = "enzyme_adapter_react_16___enzyme_adapter_react_16_1.15.1.tgz";
-        url  = "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.1.tgz";
-        sha1 = "8ad55332be7091dc53a25d7d38b3485fc2ba50d5";
+        name = "enzyme_adapter_react_16___enzyme_adapter_react_16_1.15.2.tgz";
+        url  = "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.2.tgz";
+        sha1 = "b16db2f0ea424d58a808f9df86ab6212895a4501";
       };
     }
     {
-      name = "enzyme_adapter_utils___enzyme_adapter_utils_1.12.1.tgz";
+      name = "enzyme_adapter_utils___enzyme_adapter_utils_1.13.0.tgz";
       path = fetchurl {
-        name = "enzyme_adapter_utils___enzyme_adapter_utils_1.12.1.tgz";
-        url  = "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.12.1.tgz";
-        sha1 = "e828e0d038e2b1efa4b9619ce896226f85c9dd88";
+        name = "enzyme_adapter_utils___enzyme_adapter_utils_1.13.0.tgz";
+        url  = "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.13.0.tgz";
+        sha1 = "01c885dde2114b4690bf741f8dc94cee3060eb78";
       };
     }
     {
-      name = "enzyme_shallow_equal___enzyme_shallow_equal_1.0.0.tgz";
+      name = "enzyme_shallow_equal___enzyme_shallow_equal_1.0.1.tgz";
       path = fetchurl {
-        name = "enzyme_shallow_equal___enzyme_shallow_equal_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/enzyme-shallow-equal/-/enzyme-shallow-equal-1.0.0.tgz";
-        sha1 = "d8e4603495e6ea279038eef05a4bf4887b55dc69";
+        name = "enzyme_shallow_equal___enzyme_shallow_equal_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/enzyme-shallow-equal/-/enzyme-shallow-equal-1.0.1.tgz";
+        sha1 = "7afe03db3801c9b76de8440694096412a8d9d49e";
       };
     }
     {
-      name = "enzyme_to_json___enzyme_to_json_3.4.3.tgz";
+      name = "enzyme_to_json___enzyme_to_json_3.4.4.tgz";
       path = fetchurl {
-        name = "enzyme_to_json___enzyme_to_json_3.4.3.tgz";
-        url  = "https://registry.yarnpkg.com/enzyme-to-json/-/enzyme-to-json-3.4.3.tgz";
-        sha1 = "ed4386f48768ed29e2d1a2910893542c34e7e0af";
+        name = "enzyme_to_json___enzyme_to_json_3.4.4.tgz";
+        url  = "https://registry.yarnpkg.com/enzyme-to-json/-/enzyme-to-json-3.4.4.tgz";
+        sha1 = "b30726c59091d273521b6568c859e8831e94d00e";
       };
     }
     {
-      name = "enzyme___enzyme_3.10.0.tgz";
+      name = "enzyme___enzyme_3.11.0.tgz";
       path = fetchurl {
-        name = "enzyme___enzyme_3.10.0.tgz";
-        url  = "https://registry.yarnpkg.com/enzyme/-/enzyme-3.10.0.tgz";
-        sha1 = "7218e347c4a7746e133f8e964aada4a3523452f6";
+        name = "enzyme___enzyme_3.11.0.tgz";
+        url  = "https://registry.yarnpkg.com/enzyme/-/enzyme-3.11.0.tgz";
+        sha1 = "71d680c580fe9349f6f5ac6c775bc3e6b7a79c28";
       };
     }
     {
@@ -4138,35 +4186,27 @@
       };
     }
     {
-      name = "es_abstract___es_abstract_1.15.0.tgz";
+      name = "es_abstract___es_abstract_1.17.4.tgz";
       path = fetchurl {
-        name = "es_abstract___es_abstract_1.15.0.tgz";
-        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.15.0.tgz";
-        sha1 = "8884928ec7e40a79e3c9bc812d37d10c8b24cc57";
+        name = "es_abstract___es_abstract_1.17.4.tgz";
+        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.17.4.tgz";
+        sha1 = "e3aedf19706b20e7c2594c35fc0d57605a79e184";
       };
     }
     {
-      name = "es_abstract___es_abstract_1.16.0.tgz";
+      name = "es_to_primitive___es_to_primitive_1.2.1.tgz";
       path = fetchurl {
-        name = "es_abstract___es_abstract_1.16.0.tgz";
-        url  = "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.16.0.tgz";
-        sha1 = "d3a26dc9c3283ac9750dca569586e976d9dcc06d";
+        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 = "es_to_primitive___es_to_primitive_1.2.0.tgz";
+      name = "es5_ext___es5_ext_0.10.53.tgz";
       path = fetchurl {
-        name = "es_to_primitive___es_to_primitive_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz";
-        sha1 = "edf72478033456e8dda8ef09e00ad9650707f377";
-      };
-    }
-    {
-      name = "es5_ext___es5_ext_0.10.51.tgz";
-      path = fetchurl {
-        name = "es5_ext___es5_ext_0.10.51.tgz";
-        url  = "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.51.tgz";
-        sha1 = "ed2d7d9d48a12df86e0299287e93a09ff478842f";
+        name = "es5_ext___es5_ext_0.10.53.tgz";
+        url  = "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.53.tgz";
+        sha1 = "93c5a3acfdbef275220ad72644ad02ee18368de1";
       };
     }
     {
@@ -4178,11 +4218,11 @@
       };
     }
     {
-      name = "es6_symbol___es6_symbol_3.1.2.tgz";
+      name = "es6_symbol___es6_symbol_3.1.3.tgz";
       path = fetchurl {
-        name = "es6_symbol___es6_symbol_3.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.2.tgz";
-        sha1 = "859fdd34f32e905ff06d752e7171ddd4444a7ed1";
+        name = "es6_symbol___es6_symbol_3.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz";
+        sha1 = "bad5d3c1bcdac28269f4cb331e431c78ac705d18";
       };
     }
     {
@@ -4194,6 +4234,14 @@
       };
     }
     {
+      name = "escape_string_regexp___escape_string_regexp_2.0.0.tgz";
+      path = fetchurl {
+        name = "escape_string_regexp___escape_string_regexp_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz";
+        sha1 = "a30304e99daa32e23b2fd20f51babd07cffca344";
+      };
+    }
+    {
       name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
       path = fetchurl {
         name = "escape_string_regexp___escape_string_regexp_1.0.5.tgz";
@@ -4202,51 +4250,51 @@
       };
     }
     {
-      name = "escodegen___escodegen_1.12.0.tgz";
+      name = "escodegen___escodegen_1.14.1.tgz";
       path = fetchurl {
-        name = "escodegen___escodegen_1.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/escodegen/-/escodegen-1.12.0.tgz";
-        sha1 = "f763daf840af172bb3a2b6dd7219c0e17f7ff541";
+        name = "escodegen___escodegen_1.14.1.tgz";
+        url  = "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.1.tgz";
+        sha1 = "ba01d0c8278b5e95a9a45350142026659027a457";
       };
     }
     {
-      name = "eslint_config_prettier___eslint_config_prettier_6.4.0.tgz";
+      name = "eslint_config_prettier___eslint_config_prettier_6.10.0.tgz";
       path = fetchurl {
-        name = "eslint_config_prettier___eslint_config_prettier_6.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.4.0.tgz";
-        sha1 = "0a04f147e31d33c6c161b2dd0971418ac52d0477";
+        name = "eslint_config_prettier___eslint_config_prettier_6.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.10.0.tgz";
+        sha1 = "7b15e303bf9c956875c948f6b21500e48ded6a7f";
       };
     }
     {
-      name = "eslint_config_react_app___eslint_config_react_app_5.0.2.tgz";
+      name = "eslint_config_react_app___eslint_config_react_app_5.2.0.tgz";
       path = fetchurl {
-        name = "eslint_config_react_app___eslint_config_react_app_5.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-config-react-app/-/eslint-config-react-app-5.0.2.tgz";
-        sha1 = "df40d73a1402986030680c040bbee520db5a32a4";
+        name = "eslint_config_react_app___eslint_config_react_app_5.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-config-react-app/-/eslint-config-react-app-5.2.0.tgz";
+        sha1 = "135110ba56a9e378f7acfe5f36e2ae76a2317899";
       };
     }
     {
-      name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.2.tgz";
+      name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.3.tgz";
       path = fetchurl {
-        name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz";
-        sha1 = "58f15fb839b8d0576ca980413476aab2472db66a";
+        name = "eslint_import_resolver_node___eslint_import_resolver_node_0.3.3.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.3.tgz";
+        sha1 = "dbaa52b6b2816b50bc6711af75422de808e98404";
       };
     }
     {
-      name = "eslint_loader___eslint_loader_3.0.2.tgz";
+      name = "eslint_loader___eslint_loader_3.0.3.tgz";
       path = fetchurl {
-        name = "eslint_loader___eslint_loader_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-loader/-/eslint-loader-3.0.2.tgz";
-        sha1 = "5a627316a51d6f41d357b9f6f0554e91506cdd6e";
+        name = "eslint_loader___eslint_loader_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-loader/-/eslint-loader-3.0.3.tgz";
+        sha1 = "e018e3d2722381d982b1201adb56819c73b480ca";
       };
     }
     {
-      name = "eslint_module_utils___eslint_module_utils_2.4.1.tgz";
+      name = "eslint_module_utils___eslint_module_utils_2.5.2.tgz";
       path = fetchurl {
-        name = "eslint_module_utils___eslint_module_utils_2.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.4.1.tgz";
-        sha1 = "7b4675875bf96b0dbf1b21977456e5bb1f5e018c";
+        name = "eslint_module_utils___eslint_module_utils_2.5.2.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.5.2.tgz";
+        sha1 = "7878f7504824e1b857dd2505b59a8e5eda26a708";
       };
     }
     {
@@ -4258,11 +4306,27 @@
       };
     }
     {
-      name = "eslint_plugin_import___eslint_plugin_import_2.18.2.tgz";
+      name = "eslint_plugin_flowtype___eslint_plugin_flowtype_4.6.0.tgz";
       path = fetchurl {
-        name = "eslint_plugin_import___eslint_plugin_import_2.18.2.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.18.2.tgz";
-        sha1 = "02f1180b90b077b33d447a17a2326ceb400aceb6";
+        name = "eslint_plugin_flowtype___eslint_plugin_flowtype_4.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-flowtype/-/eslint-plugin-flowtype-4.6.0.tgz";
+        sha1 = "82b2bd6f21770e0e5deede0228e456cb35308451";
+      };
+    }
+    {
+      name = "eslint_plugin_import___eslint_plugin_import_2.20.0.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_import___eslint_plugin_import_2.20.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.20.0.tgz";
+        sha1 = "d749a7263fb6c29980def8e960d380a6aa6aecaa";
+      };
+    }
+    {
+      name = "eslint_plugin_import___eslint_plugin_import_2.20.1.tgz";
+      path = fetchurl {
+        name = "eslint_plugin_import___eslint_plugin_import_2.20.1.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-import/-/eslint-plugin-import-2.20.1.tgz";
+        sha1 = "802423196dcb11d9ce8435a5fc02a6d3b46939b3";
       };
     }
     {
@@ -4274,11 +4338,11 @@
       };
     }
     {
-      name = "eslint_plugin_prettier___eslint_plugin_prettier_3.1.1.tgz";
+      name = "eslint_plugin_prettier___eslint_plugin_prettier_3.1.2.tgz";
       path = fetchurl {
-        name = "eslint_plugin_prettier___eslint_plugin_prettier_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.1.tgz";
-        sha1 = "507b8562410d02a03f0ddc949c616f877852f2ba";
+        name = "eslint_plugin_prettier___eslint_plugin_prettier_3.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.1.2.tgz";
+        sha1 = "432e5a667666ab84ce72f945c72f77d996a5c9ba";
       };
     }
     {
@@ -4290,19 +4354,19 @@
       };
     }
     {
-      name = "eslint_plugin_react___eslint_plugin_react_7.14.3.tgz";
+      name = "eslint_plugin_react___eslint_plugin_react_7.18.0.tgz";
       path = fetchurl {
-        name = "eslint_plugin_react___eslint_plugin_react_7.14.3.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.14.3.tgz";
-        sha1 = "911030dd7e98ba49e1b2208599571846a66bdf13";
+        name = "eslint_plugin_react___eslint_plugin_react_7.18.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.18.0.tgz";
+        sha1 = "2317831284d005b30aff8afb7c4e906f13fa8e7e";
       };
     }
     {
-      name = "eslint_plugin_react___eslint_plugin_react_7.16.0.tgz";
+      name = "eslint_plugin_react___eslint_plugin_react_7.18.3.tgz";
       path = fetchurl {
-        name = "eslint_plugin_react___eslint_plugin_react_7.16.0.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.16.0.tgz";
-        sha1 = "9928e4f3e2122ed3ba6a5b56d0303ba3e41d8c09";
+        name = "eslint_plugin_react___eslint_plugin_react_7.18.3.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.18.3.tgz";
+        sha1 = "8be671b7f6be095098e79d27ac32f9580f599bc8";
       };
     }
     {
@@ -4322,11 +4386,11 @@
       };
     }
     {
-      name = "eslint_utils___eslint_utils_1.4.2.tgz";
+      name = "eslint_utils___eslint_utils_1.4.3.tgz";
       path = fetchurl {
-        name = "eslint_utils___eslint_utils_1.4.2.tgz";
-        url  = "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.2.tgz";
-        sha1 = "166a5180ef6ab7eb462f162fd0e6f2463d7309ab";
+        name = "eslint_utils___eslint_utils_1.4.3.tgz";
+        url  = "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-1.4.3.tgz";
+        sha1 = "74fec7c54d0776b6f67e0251040b5806564e981f";
       };
     }
     {
@@ -4338,27 +4402,19 @@
       };
     }
     {
-      name = "eslint___eslint_6.5.1.tgz";
-      path = fetchurl {
-        name = "eslint___eslint_6.5.1.tgz";
-        url  = "https://registry.yarnpkg.com/eslint/-/eslint-6.5.1.tgz";
-        sha1 = "828e4c469697d43bb586144be152198b91e96ed6";
-      };
-    }
-    {
-      name = "espree___espree_6.1.1.tgz";
+      name = "eslint___eslint_6.8.0.tgz";
       path = fetchurl {
-        name = "espree___espree_6.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/espree/-/espree-6.1.1.tgz";
-        sha1 = "7f80e5f7257fc47db450022d723e356daeb1e5de";
+        name = "eslint___eslint_6.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/eslint/-/eslint-6.8.0.tgz";
+        sha1 = "62262d6729739f9275723824302fb227c8c93ffb";
       };
     }
     {
-      name = "esprima___esprima_3.1.3.tgz";
+      name = "espree___espree_6.1.2.tgz";
       path = fetchurl {
-        name = "esprima___esprima_3.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz";
-        sha1 = "fdca51cee6133895e3c88d535ce49dbff62a4633";
+        name = "espree___espree_6.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/espree/-/espree-6.1.2.tgz";
+        sha1 = "6c272650932b4f91c3714e5e7b5f5e2ecf47262d";
       };
     }
     {
@@ -4370,11 +4426,11 @@
       };
     }
     {
-      name = "esquery___esquery_1.0.1.tgz";
+      name = "esquery___esquery_1.1.0.tgz";
       path = fetchurl {
-        name = "esquery___esquery_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/esquery/-/esquery-1.0.1.tgz";
-        sha1 = "406c51658b1f5991a5f9b62b1dc25b00e3e5c708";
+        name = "esquery___esquery_1.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/esquery/-/esquery-1.1.0.tgz";
+        sha1 = "c5c0b66f383e7656404f86b31334d72524eddb48";
       };
     }
     {
@@ -4418,11 +4474,11 @@
       };
     }
     {
-      name = "events___events_3.0.0.tgz";
+      name = "events___events_3.1.0.tgz";
       path = fetchurl {
-        name = "events___events_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/events/-/events-3.0.0.tgz";
-        sha1 = "9a0a0dfaf62893d92b875b8f2698ca4114973e88";
+        name = "events___events_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/events/-/events-3.1.0.tgz";
+        sha1 = "84279af1b34cb75aa88bf5ff291f6d0bd9b31a59";
       };
     }
     {
@@ -4442,11 +4498,11 @@
       };
     }
     {
-      name = "exec_sh___exec_sh_0.3.2.tgz";
+      name = "exec_sh___exec_sh_0.3.4.tgz";
       path = fetchurl {
-        name = "exec_sh___exec_sh_0.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.2.tgz";
-        sha1 = "6738de2eb7c8e671d0366aea0b0db8c6f7d7391b";
+        name = "exec_sh___exec_sh_0.3.4.tgz";
+        url  = "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.4.tgz";
+        sha1 = "3a018ceb526cc6f6df2bb504b2bfe8e3a4934ec5";
       };
     }
     {
@@ -4490,6 +4546,14 @@
       };
     }
     {
+      name = "ext___ext_1.4.0.tgz";
+      path = fetchurl {
+        name = "ext___ext_1.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/ext/-/ext-1.4.0.tgz";
+        sha1 = "89ae7a07158f79d35517882904324077e4379244";
+      };
+    }
+    {
       name = "extend_shallow___extend_shallow_2.0.1.tgz";
       path = fetchurl {
         name = "extend_shallow___extend_shallow_2.0.1.tgz";
@@ -4546,11 +4610,11 @@
       };
     }
     {
-      name = "fast_deep_equal___fast_deep_equal_2.0.1.tgz";
+      name = "fast_deep_equal___fast_deep_equal_3.1.1.tgz";
       path = fetchurl {
-        name = "fast_deep_equal___fast_deep_equal_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz";
-        sha1 = "7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49";
+        name = "fast_deep_equal___fast_deep_equal_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz";
+        sha1 = "545145077c501491e33b15ec408c294376e94ae4";
       };
     }
     {
@@ -4570,11 +4634,11 @@
       };
     }
     {
-      name = "fast_json_stable_stringify___fast_json_stable_stringify_2.0.0.tgz";
+      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.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz";
-        sha1 = "d5142c0caee6b1189f87d3a76111064f86c8bbf2";
+        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";
       };
     }
     {
@@ -4602,19 +4666,11 @@
       };
     }
     {
-      name = "fb_watchman___fb_watchman_2.0.0.tgz";
+      name = "fb_watchman___fb_watchman_2.0.1.tgz";
       path = fetchurl {
-        name = "fb_watchman___fb_watchman_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz";
-        sha1 = "54e9abf7dfa2f26cd9b1636c588c1afc05de5d58";
-      };
-    }
-    {
-      name = "fbjs___fbjs_0.8.17.tgz";
-      path = fetchurl {
-        name = "fbjs___fbjs_0.8.17.tgz";
-        url  = "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.17.tgz";
-        sha1 = "c4d598ead6949112653d6588b01a5cdcd9f90fdd";
+        name = "fb_watchman___fb_watchman_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz";
+        sha1 = "fc84fb39d2709cf3ff6d743706157bb5708a8a85";
       };
     }
     {
@@ -4626,11 +4682,11 @@
       };
     }
     {
-      name = "figures___figures_2.0.0.tgz";
+      name = "figures___figures_3.2.0.tgz";
       path = fetchurl {
-        name = "figures___figures_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz";
-        sha1 = "3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962";
+        name = "figures___figures_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz";
+        sha1 = "625c18bd293c604dc4a8ddb2febf0c88341746af";
       };
     }
     {
@@ -4642,19 +4698,27 @@
       };
     }
     {
-      name = "file_loader___file_loader_3.0.1.tgz";
+      name = "file_loader___file_loader_4.3.0.tgz";
+      path = fetchurl {
+        name = "file_loader___file_loader_4.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/file-loader/-/file-loader-4.3.0.tgz";
+        sha1 = "780f040f729b3d18019f20605f723e844b8a58af";
+      };
+    }
+    {
+      name = "file_uri_to_path___file_uri_to_path_1.0.0.tgz";
       path = fetchurl {
-        name = "file_loader___file_loader_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/file-loader/-/file-loader-3.0.1.tgz";
-        sha1 = "f8e0ba0b599918b51adfe45d66d1e771ad560faa";
+        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 = "filesize___filesize_3.6.1.tgz";
+      name = "filesize___filesize_6.0.1.tgz";
       path = fetchurl {
-        name = "filesize___filesize_3.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/filesize/-/filesize-3.6.1.tgz";
-        sha1 = "090bb3ee01b6f801a8a8be99d31710b3422bb317";
+        name = "filesize___filesize_6.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/filesize/-/filesize-6.0.1.tgz";
+        sha1 = "f850b509909c7c86f7e450ea19006c31c2ed3d2f";
       };
     }
     {
@@ -4698,11 +4762,19 @@
       };
     }
     {
-      name = "find_up___find_up_3.0.0.tgz";
+      name = "find_cache_dir___find_cache_dir_3.2.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_cache_dir___find_cache_dir_3.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.2.0.tgz";
+        sha1 = "e7fe44c1abc1299f516146e563108fd1006c1874";
+      };
+    }
+    {
+      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";
       };
     }
     {
@@ -4722,6 +4794,14 @@
       };
     }
     {
+      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 = "flat_cache___flat_cache_2.0.1.tgz";
       path = fetchurl {
         name = "flat_cache___flat_cache_2.0.1.tgz";
@@ -4738,19 +4818,11 @@
       };
     }
     {
-      name = "flatten___flatten_1.0.2.tgz";
-      path = fetchurl {
-        name = "flatten___flatten_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz";
-        sha1 = "dae46a9d78fbe25292258cc1e780a41d95c03782";
-      };
-    }
-    {
-      name = "flot___flot_3.2.13.tgz";
+      name = "flatten___flatten_1.0.3.tgz";
       path = fetchurl {
-        name = "flot___flot_3.2.13.tgz";
-        url  = "https://registry.yarnpkg.com/flot/-/flot-3.2.13.tgz";
-        sha1 = "f4457fd6042fe4ac4e4e124e7a7c7256e69f5362";
+        name = "flatten___flatten_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/flatten/-/flatten-1.0.3.tgz";
+        sha1 = "c1283ac9f27b368abc1e36d1ff7b04501a30356b";
       };
     }
     {
@@ -4762,11 +4834,11 @@
       };
     }
     {
-      name = "follow_redirects___follow_redirects_1.9.0.tgz";
+      name = "follow_redirects___follow_redirects_1.10.0.tgz";
       path = fetchurl {
-        name = "follow_redirects___follow_redirects_1.9.0.tgz";
-        url  = "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.9.0.tgz";
-        sha1 = "8d5bcdc65b7108fe1508649c79c12d732dcedb4f";
+        name = "follow_redirects___follow_redirects_1.10.0.tgz";
+        url  = "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.10.0.tgz";
+        sha1 = "01f5263aee921c6a54fb91667f08f4155ce169eb";
       };
     }
     {
@@ -4802,11 +4874,11 @@
       };
     }
     {
-      name = "fork_ts_checker_webpack_plugin___fork_ts_checker_webpack_plugin_1.5.0.tgz";
+      name = "fork_ts_checker_webpack_plugin___fork_ts_checker_webpack_plugin_3.1.1.tgz";
       path = fetchurl {
-        name = "fork_ts_checker_webpack_plugin___fork_ts_checker_webpack_plugin_1.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-1.5.0.tgz";
-        sha1 = "ce1d77190b44d81a761b10b6284a373795e41f0c";
+        name = "fork_ts_checker_webpack_plugin___fork_ts_checker_webpack_plugin_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-3.1.1.tgz";
+        sha1 = "a1642c0d3e65f50c2cc1742e9c0a80f441f86b19";
       };
     }
     {
@@ -4850,14 +4922,6 @@
       };
     }
     {
-      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_extra___fs_extra_4.0.3.tgz";
       path = fetchurl {
         name = "fs_extra___fs_extra_4.0.3.tgz";
@@ -4866,6 +4930,14 @@
       };
     }
     {
+      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_extra___fs_extra_8.1.0.tgz";
       path = fetchurl {
         name = "fs_extra___fs_extra_8.1.0.tgz";
@@ -4882,6 +4954,14 @@
       };
     }
     {
+      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";
@@ -4898,27 +4978,19 @@
       };
     }
     {
-      name = "fsevents___fsevents_2.0.7.tgz";
+      name = "fsevents___fsevents_2.1.2.tgz";
       path = fetchurl {
-        name = "fsevents___fsevents_2.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-2.0.7.tgz";
-        sha1 = "382c9b443c6cbac4c57187cdda23aa3bf1ccfc2a";
+        name = "fsevents___fsevents_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.2.tgz";
+        sha1 = "4c0a1fb34bc68e543b4b82a9ec392bfbda840805";
       };
     }
     {
-      name = "fsevents___fsevents_1.2.9.tgz";
+      name = "fsevents___fsevents_1.2.11.tgz";
       path = fetchurl {
-        name = "fsevents___fsevents_1.2.9.tgz";
-        url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.9.tgz";
-        sha1 = "3f5ed66583ccd6f400b5a00db6f7e861363e388f";
-      };
-    }
-    {
-      name = "fsevents___fsevents_2.1.1.tgz";
-      path = fetchurl {
-        name = "fsevents___fsevents_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.1.tgz";
-        sha1 = "74c64e21df71721845d0c44fe54b7f56b82995a9";
+        name = "fsevents___fsevents_1.2.11.tgz";
+        url  = "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.11.tgz";
+        sha1 = "67bf57f4758f02ede88fb2a1712fef4d15358be3";
       };
     }
     {
@@ -4930,11 +5002,11 @@
       };
     }
     {
-      name = "function.prototype.name___function.prototype.name_1.1.1.tgz";
+      name = "function.prototype.name___function.prototype.name_1.1.2.tgz";
       path = fetchurl {
-        name = "function.prototype.name___function.prototype.name_1.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.1.tgz";
-        sha1 = "6d252350803085abc2ad423d4fe3be2f9cbda392";
+        name = "function.prototype.name___function.prototype.name_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.2.tgz";
+        sha1 = "5cdf79d7c05db401591dfde83e3b70c5123e9a45";
       };
     }
     {
@@ -4946,11 +5018,11 @@
       };
     }
     {
-      name = "functions_have_names___functions_have_names_1.2.0.tgz";
+      name = "functions_have_names___functions_have_names_1.2.1.tgz";
       path = fetchurl {
-        name = "functions_have_names___functions_have_names_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.0.tgz";
-        sha1 = "83da7583e4ea0c9ac5ff530f73394b033e0bf77d";
+        name = "functions_have_names___functions_have_names_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.1.tgz";
+        sha1 = "a981ac397fa0c9964551402cdc5533d7a4d52f91";
       };
     }
     {
@@ -4970,6 +5042,14 @@
       };
     }
     {
+      name = "gensync___gensync_1.0.0_beta.1.tgz";
+      path = fetchurl {
+        name = "gensync___gensync_1.0.0_beta.1.tgz";
+        url  = "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz";
+        sha1 = "58f4361ff987e5ff6e1e7a210827aa371eaac269";
+      };
+    }
+    {
       name = "get_caller_file___get_caller_file_1.0.3.tgz";
       path = fetchurl {
         name = "get_caller_file___get_caller_file_1.0.3.tgz";
@@ -4986,11 +5066,11 @@
       };
     }
     {
-      name = "get_own_enumerable_property_symbols___get_own_enumerable_property_symbols_3.0.1.tgz";
+      name = "get_own_enumerable_property_symbols___get_own_enumerable_property_symbols_3.0.2.tgz";
       path = fetchurl {
-        name = "get_own_enumerable_property_symbols___get_own_enumerable_property_symbols_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.1.tgz";
-        sha1 = "6f7764f88ea11e0b514bd9bd860a132259992ca4";
+        name = "get_own_enumerable_property_symbols___get_own_enumerable_property_symbols_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz";
+        sha1 = "b5fde77f22cbe35f390b4e089922c50bce6ef664";
       };
     }
     {
@@ -5050,11 +5130,11 @@
       };
     }
     {
-      name = "glob___glob_7.1.4.tgz";
+      name = "glob___glob_7.1.6.tgz";
       path = fetchurl {
-        name = "glob___glob_7.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/glob/-/glob-7.1.4.tgz";
-        sha1 = "aa608a2f6c577ad357e1ae5a5c26d9a8d1969255";
+        name = "glob___glob_7.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz";
+        sha1 = "141f33b81a7c2492e125594307480c46679278a6";
       };
     }
     {
@@ -5082,6 +5162,14 @@
       };
     }
     {
+      name = "globals___globals_12.3.0.tgz";
+      path = fetchurl {
+        name = "globals___globals_12.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/globals/-/globals-12.3.0.tgz";
+        sha1 = "1e564ee5c4dded2ab098b0f88f24702a3c56be13";
+      };
+    }
+    {
       name = "globby___globby_8.0.2.tgz";
       path = fetchurl {
         name = "globby___globby_8.0.2.tgz";
@@ -5098,11 +5186,11 @@
       };
     }
     {
-      name = "graceful_fs___graceful_fs_4.2.2.tgz";
+      name = "graceful_fs___graceful_fs_4.2.3.tgz";
       path = fetchurl {
-        name = "graceful_fs___graceful_fs_4.2.2.tgz";
-        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.2.tgz";
-        sha1 = "6f0952605d0140c1cfdb138ed005775b92d67b02";
+        name = "graceful_fs___graceful_fs_4.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz";
+        sha1 = "4a12ff1b60376ef09862c2093edd908328be8423";
       };
     }
     {
@@ -5138,14 +5226,6 @@
       };
     }
     {
-      name = "handlebars___handlebars_4.4.3.tgz";
-      path = fetchurl {
-        name = "handlebars___handlebars_4.4.3.tgz";
-        url  = "https://registry.yarnpkg.com/handlebars/-/handlebars-4.4.3.tgz";
-        sha1 = "180bae52c1d0e9ec0c15d7e82a4362d662762f6e";
-      };
-    }
-    {
       name = "har_schema___har_schema_2.0.0.tgz";
       path = fetchurl {
         name = "har_schema___har_schema_2.0.0.tgz";
@@ -5186,11 +5266,19 @@
       };
     }
     {
-      name = "has_symbols___has_symbols_1.0.0.tgz";
+      name = "has_flag___has_flag_4.0.0.tgz";
       path = fetchurl {
-        name = "has_symbols___has_symbols_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz";
-        sha1 = "ba1a8f1af2a0fc39650f5c850367704122063b44";
+        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";
       };
     }
     {
@@ -5322,11 +5410,11 @@
       };
     }
     {
-      name = "html_element_map___html_element_map_1.1.0.tgz";
+      name = "html_element_map___html_element_map_1.2.0.tgz";
       path = fetchurl {
-        name = "html_element_map___html_element_map_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/html-element-map/-/html-element-map-1.1.0.tgz";
-        sha1 = "e5aab9a834caf883b421f8bd9eaedcaac887d63c";
+        name = "html_element_map___html_element_map_1.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/html-element-map/-/html-element-map-1.2.0.tgz";
+        sha1 = "dfbb09efe882806af63d990cf6db37993f099f22";
       };
     }
     {
@@ -5346,19 +5434,27 @@
       };
     }
     {
-      name = "html_minifier___html_minifier_3.5.21.tgz";
+      name = "html_escaper___html_escaper_2.0.0.tgz";
       path = fetchurl {
-        name = "html_minifier___html_minifier_3.5.21.tgz";
-        url  = "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.21.tgz";
-        sha1 = "d0040e054730e354db008463593194015212d20c";
+        name = "html_escaper___html_escaper_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.0.tgz";
+        sha1 = "71e87f931de3fe09e56661ab9a29aadec707b491";
       };
     }
     {
-      name = "html_webpack_plugin___html_webpack_plugin_4.0.0_beta.5.tgz";
+      name = "html_minifier_terser___html_minifier_terser_5.0.4.tgz";
       path = fetchurl {
-        name = "html_webpack_plugin___html_webpack_plugin_4.0.0_beta.5.tgz";
-        url  = "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.0.0-beta.5.tgz";
-        sha1 = "2c53083c1151bfec20479b1f8aaf0039e77b5513";
+        name = "html_minifier_terser___html_minifier_terser_5.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.0.4.tgz";
+        sha1 = "e8cc02748acb983bd7912ea9660bd31c0702ec32";
+      };
+    }
+    {
+      name = "html_webpack_plugin___html_webpack_plugin_4.0.0_beta.11.tgz";
+      path = fetchurl {
+        name = "html_webpack_plugin___html_webpack_plugin_4.0.0_beta.11.tgz";
+        url  = "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-4.0.0-beta.11.tgz";
+        sha1 = "3059a69144b5aecef97708196ca32f9e68677715";
       };
     }
     {
@@ -5458,14 +5554,6 @@
       };
     }
     {
-      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_4.1.1.tgz";
       path = fetchurl {
         name = "icss_utils___icss_utils_4.1.1.tgz";
@@ -5546,11 +5634,11 @@
       };
     }
     {
-      name = "import_fresh___import_fresh_3.1.0.tgz";
+      name = "import_fresh___import_fresh_3.2.1.tgz";
       path = fetchurl {
-        name = "import_fresh___import_fresh_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.1.0.tgz";
-        sha1 = "6d33fa1dcef6df930fae003446f33415af905118";
+        name = "import_fresh___import_fresh_3.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.2.1.tgz";
+        sha1 = "633ff618506e793af5ac91bf48b72677e15cbe66";
       };
     }
     {
@@ -5578,6 +5666,14 @@
       };
     }
     {
+      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";
@@ -5634,19 +5730,11 @@
       };
     }
     {
-      name = "inquirer___inquirer_6.5.0.tgz";
+      name = "inquirer___inquirer_7.0.4.tgz";
       path = fetchurl {
-        name = "inquirer___inquirer_6.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.0.tgz";
-        sha1 = "2303317efc9a4ea7ec2e2df6f86569b734accf42";
-      };
-    }
-    {
-      name = "inquirer___inquirer_6.5.2.tgz";
-      path = fetchurl {
-        name = "inquirer___inquirer_6.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz";
-        sha1 = "ad50942375d036d327ff528c08bd5fab089928ca";
+        name = "inquirer___inquirer_7.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/inquirer/-/inquirer-7.0.4.tgz";
+        sha1 = "99af5bde47153abca23f5c7fc30db247f39da703";
       };
     }
     {
@@ -5658,6 +5746,14 @@
       };
     }
     {
+      name = "internal_slot___internal_slot_1.0.2.tgz";
+      path = fetchurl {
+        name = "internal_slot___internal_slot_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.2.tgz";
+        sha1 = "9c2e9fb3cd8e5e4256c6f45fe310067fcfa378a3";
+      };
+    }
+    {
       name = "invariant___invariant_2.2.4.tgz";
       path = fetchurl {
         name = "invariant___invariant_2.2.4.tgz";
@@ -5714,6 +5810,14 @@
       };
     }
     {
+      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";
@@ -5770,11 +5874,11 @@
       };
     }
     {
-      name = "is_boolean_object___is_boolean_object_1.0.0.tgz";
+      name = "is_boolean_object___is_boolean_object_1.0.1.tgz";
       path = fetchurl {
-        name = "is_boolean_object___is_boolean_object_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.0.0.tgz";
-        sha1 = "98f8b28030684219a95f375cfbd88ce3405dff93";
+        name = "is_boolean_object___is_boolean_object_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.0.1.tgz";
+        sha1 = "10edc0900dd127697a92f6f9807c7617d68ac48e";
       };
     }
     {
@@ -5786,11 +5890,11 @@
       };
     }
     {
-      name = "is_callable___is_callable_1.1.4.tgz";
+      name = "is_callable___is_callable_1.1.5.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.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.5.tgz";
+        sha1 = "f7e46b596890456db74e7f6e976cb3273d06faab";
       };
     }
     {
@@ -5826,11 +5930,11 @@
       };
     }
     {
-      name = "is_date_object___is_date_object_1.0.1.tgz";
+      name = "is_date_object___is_date_object_1.0.2.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_date_object___is_date_object_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.2.tgz";
+        sha1 = "bda736f2cd8fd06d32844e7743bfa7494c3bfd7e";
       };
     }
     {
@@ -5858,6 +5962,14 @@
       };
     }
     {
+      name = "is_docker___is_docker_2.0.0.tgz";
+      path = fetchurl {
+        name = "is_docker___is_docker_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-docker/-/is-docker-2.0.0.tgz";
+        sha1 = "2cb0df0e75e2d064fe1864c37cdeacb7b2dcf25b";
+      };
+    }
+    {
       name = "is_extendable___is_extendable_0.1.1.tgz";
       path = fetchurl {
         name = "is_extendable___is_extendable_0.1.1.tgz";
@@ -5898,6 +6010,14 @@
       };
     }
     {
+      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_generator_fn___is_generator_fn_2.1.0.tgz";
       path = fetchurl {
         name = "is_generator_fn___is_generator_fn_2.1.0.tgz";
@@ -5922,11 +6042,11 @@
       };
     }
     {
-      name = "is_number_object___is_number_object_1.0.3.tgz";
+      name = "is_number_object___is_number_object_1.0.4.tgz";
       path = fetchurl {
-        name = "is_number_object___is_number_object_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.3.tgz";
-        sha1 = "f265ab89a9f445034ef6aff15a8f00b00f551799";
+        name = "is_number_object___is_number_object_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.4.tgz";
+        sha1 = "36ac95e741cf18b283fc1ddf5e83da798e3ec197";
       };
     }
     {
@@ -5954,27 +6074,35 @@
       };
     }
     {
-      name = "is_path_cwd___is_path_cwd_1.0.0.tgz";
+      name = "is_obj___is_obj_2.0.0.tgz";
+      path = fetchurl {
+        name = "is_obj___is_obj_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz";
+        sha1 = "473fb05d973705e3fd9620545018ca8e22ef4982";
+      };
+    }
+    {
+      name = "is_path_cwd___is_path_cwd_2.2.0.tgz";
       path = fetchurl {
-        name = "is_path_cwd___is_path_cwd_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz";
-        sha1 = "d225ec23132e89edd38fda767472e62e65f1106d";
+        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_1.0.1.tgz";
+      name = "is_path_in_cwd___is_path_in_cwd_2.1.0.tgz";
       path = fetchurl {
-        name = "is_path_in_cwd___is_path_in_cwd_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz";
-        sha1 = "5ac48b345ef675339bd6c7a48a912110b241cf52";
+        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_1.0.1.tgz";
+      name = "is_path_inside___is_path_inside_2.1.0.tgz";
       path = fetchurl {
-        name = "is_path_inside___is_path_inside_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz";
-        sha1 = "8ef5b7de50437a3fdca6b4e865ef7aa55cb48036";
+        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";
       };
     }
     {
@@ -6002,11 +6130,11 @@
       };
     }
     {
-      name = "is_regex___is_regex_1.0.4.tgz";
+      name = "is_regex___is_regex_1.0.5.tgz";
       path = fetchurl {
-        name = "is_regex___is_regex_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz";
-        sha1 = "5517489b547091b0930e095654ced25ee97e9491";
+        name = "is_regex___is_regex_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.5.tgz";
+        sha1 = "39d589a358bf18967f726967120b8fc1aed74eae";
       };
     }
     {
@@ -6042,11 +6170,11 @@
       };
     }
     {
-      name = "is_string___is_string_1.0.4.tgz";
+      name = "is_string___is_string_1.0.5.tgz";
       path = fetchurl {
-        name = "is_string___is_string_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/is-string/-/is-string-1.0.4.tgz";
-        sha1 = "cc3a9b69857d621e963725a24caeec873b826e64";
+        name = "is_string___is_string_1.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/is-string/-/is-string-1.0.5.tgz";
+        sha1 = "40493ed198ef3ff477b8c7f92f644ec82a5cd3a6";
       };
     }
     {
@@ -6066,11 +6194,11 @@
       };
     }
     {
-      name = "is_symbol___is_symbol_1.0.2.tgz";
+      name = "is_symbol___is_symbol_1.0.3.tgz";
       path = fetchurl {
-        name = "is_symbol___is_symbol_1.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz";
-        sha1 = "a055f6ae57192caee329e7a860118b497a950f38";
+        name = "is_symbol___is_symbol_1.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.3.tgz";
+        sha1 = "38e1014b9e6329be0de9d24a414fd7441ec61937";
       };
     }
     {
@@ -6098,6 +6226,14 @@
       };
     }
     {
+      name = "is_wsl___is_wsl_2.1.1.tgz";
+      path = fetchurl {
+        name = "is_wsl___is_wsl_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.1.1.tgz";
+        sha1 = "4a1c152d429df3d441669498e2486d3596ebaf1d";
+      };
+    }
+    {
       name = "isarray___isarray_0.0.1.tgz";
       path = fetchurl {
         name = "isarray___isarray_0.0.1.tgz";
@@ -6138,14 +6274,6 @@
       };
     }
     {
-      name = "isomorphic_fetch___isomorphic_fetch_2.2.1.tgz";
-      path = fetchurl {
-        name = "isomorphic_fetch___isomorphic_fetch_2.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz";
-        sha1 = "611ae1acf14f5e81f729507472819fe9733558a9";
-      };
-    }
-    {
       name = "isstream___isstream_0.1.2.tgz";
       path = fetchurl {
         name = "isstream___isstream_0.1.2.tgz";
@@ -6186,11 +6314,11 @@
       };
     }
     {
-      name = "istanbul_reports___istanbul_reports_2.2.6.tgz";
+      name = "istanbul_reports___istanbul_reports_2.2.7.tgz";
       path = fetchurl {
-        name = "istanbul_reports___istanbul_reports_2.2.6.tgz";
-        url  = "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.6.tgz";
-        sha1 = "7b4f2660d82b29303a8fe6091f8ca4bf058da1af";
+        name = "istanbul_reports___istanbul_reports_2.2.7.tgz";
+        url  = "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-2.2.7.tgz";
+        sha1 = "5d939f6237d7b48393cc0959eab40cd4fd056931";
       };
     }
     {
@@ -6242,11 +6370,11 @@
       };
     }
     {
-      name = "jest_environment_jsdom_fourteen___jest_environment_jsdom_fourteen_0.1.0.tgz";
+      name = "jest_environment_jsdom_fourteen___jest_environment_jsdom_fourteen_1.0.1.tgz";
       path = fetchurl {
-        name = "jest_environment_jsdom_fourteen___jest_environment_jsdom_fourteen_0.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/jest-environment-jsdom-fourteen/-/jest-environment-jsdom-fourteen-0.1.0.tgz";
-        sha1 = "aad6393a9d4b565b69a609109bf469f62bf18ccc";
+        name = "jest_environment_jsdom_fourteen___jest_environment_jsdom_fourteen_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/jest-environment-jsdom-fourteen/-/jest-environment-jsdom-fourteen-1.0.1.tgz";
+        sha1 = "4cd0042f58b4ab666950d96532ecb2fc188f96fb";
       };
     }
     {
@@ -6410,11 +6538,11 @@
       };
     }
     {
-      name = "jest_watch_typeahead___jest_watch_typeahead_0.4.0.tgz";
+      name = "jest_watch_typeahead___jest_watch_typeahead_0.4.2.tgz";
       path = fetchurl {
-        name = "jest_watch_typeahead___jest_watch_typeahead_0.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/jest-watch-typeahead/-/jest-watch-typeahead-0.4.0.tgz";
-        sha1 = "4d5356839a85421588ce452d2440bf0d25308397";
+        name = "jest_watch_typeahead___jest_watch_typeahead_0.4.2.tgz";
+        url  = "https://registry.yarnpkg.com/jest-watch-typeahead/-/jest-watch-typeahead-0.4.2.tgz";
+        sha1 = "e5be959698a7fa2302229a5082c488c3c8780a4a";
       };
     }
     {
@@ -6434,6 +6562,14 @@
       };
     }
     {
+      name = "jest_worker___jest_worker_25.1.0.tgz";
+      path = fetchurl {
+        name = "jest_worker___jest_worker_25.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/jest-worker/-/jest-worker-25.1.0.tgz";
+        sha1 = "75d038bad6fdf58eba0d2ec1835856c497e3907a";
+      };
+    }
+    {
       name = "jest___jest_24.9.0.tgz";
       path = fetchurl {
         name = "jest___jest_24.9.0.tgz";
@@ -6458,14 +6594,6 @@
       };
     }
     {
-      name = "js_levenshtein___js_levenshtein_1.1.6.tgz";
-      path = fetchurl {
-        name = "js_levenshtein___js_levenshtein_1.1.6.tgz";
-        url  = "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.6.tgz";
-        sha1 = "c6cee58eb3550372df8deb85fad5ce66ce01d59d";
-      };
-    }
-    {
       name = "js_tokens___js_tokens_4.0.0.tgz";
       path = fetchurl {
         name = "js_tokens___js_tokens_4.0.0.tgz";
@@ -6514,11 +6642,11 @@
       };
     }
     {
-      name = "jsdom___jsdom_15.2.0.tgz";
+      name = "jsdom___jsdom_15.2.1.tgz";
       path = fetchurl {
-        name = "jsdom___jsdom_15.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/jsdom/-/jsdom-15.2.0.tgz";
-        sha1 = "4baead4f464e733533ed6ac607ce440918cf5cbb";
+        name = "jsdom___jsdom_15.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/jsdom/-/jsdom-15.2.1.tgz";
+        sha1 = "d2feb1aef7183f86be521b8c6833ff5296d07ec5";
       };
     }
     {
@@ -6634,11 +6762,11 @@
       };
     }
     {
-      name = "jsx_ast_utils___jsx_ast_utils_2.2.1.tgz";
+      name = "jsx_ast_utils___jsx_ast_utils_2.2.3.tgz";
       path = fetchurl {
-        name = "jsx_ast_utils___jsx_ast_utils_2.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.1.tgz";
-        sha1 = "4d4973ebf8b9d2837ee91a8208cc66f3a2776cfb";
+        name = "jsx_ast_utils___jsx_ast_utils_2.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.2.3.tgz";
+        sha1 = "8a9364e402448a3ce7f14d357738310d9248054f";
       };
     }
     {
@@ -6690,11 +6818,11 @@
       };
     }
     {
-      name = "kind_of___kind_of_6.0.2.tgz";
+      name = "kind_of___kind_of_6.0.3.tgz";
       path = fetchurl {
-        name = "kind_of___kind_of_6.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz";
-        sha1 = "01146b36a6218e64e58f3a8d66de5d7fc6f6d051";
+        name = "kind_of___kind_of_6.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz";
+        sha1 = "07c05034a6c349fa06e24fa35aa76db4580ce4dd";
       };
     }
     {
@@ -6754,6 +6882,14 @@
       };
     }
     {
+      name = "levenary___levenary_1.1.1.tgz";
+      path = fetchurl {
+        name = "levenary___levenary_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/levenary/-/levenary-1.1.1.tgz";
+        sha1 = "842a9ee98d2075aa7faeedbe32679e9205f46f77";
+      };
+    }
+    {
       name = "levn___levn_0.3.0.tgz";
       path = fetchurl {
         name = "levn___levn_0.3.0.tgz";
@@ -6762,6 +6898,14 @@
       };
     }
     {
+      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";
@@ -6802,6 +6946,14 @@
       };
     }
     {
+      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 = "locate_path___locate_path_2.0.0.tgz";
       path = fetchurl {
         name = "locate_path___locate_path_2.0.0.tgz";
@@ -6818,6 +6970,14 @@
       };
     }
     {
+      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_es___lodash_es_4.17.15.tgz";
       path = fetchurl {
         name = "lodash_es___lodash_es_4.17.15.tgz";
@@ -6874,22 +7034,6 @@
       };
     }
     {
-      name = "lodash.isfunction___lodash.isfunction_3.0.9.tgz";
-      path = fetchurl {
-        name = "lodash.isfunction___lodash.isfunction_3.0.9.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz";
-        sha1 = "06de25df4db327ac931981d1bdb067e5af68d051";
-      };
-    }
-    {
-      name = "lodash.isobject___lodash.isobject_3.0.2.tgz";
-      path = fetchurl {
-        name = "lodash.isobject___lodash.isobject_3.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.isobject/-/lodash.isobject-3.0.2.tgz";
-        sha1 = "3c8fb8d5b5bf4bf90ae06e14f2a530a4ed935e1d";
-      };
-    }
-    {
       name = "lodash.isplainobject___lodash.isplainobject_4.0.6.tgz";
       path = fetchurl {
         name = "lodash.isplainobject___lodash.isplainobject_4.0.6.tgz";
@@ -6946,22 +7090,6 @@
       };
     }
     {
-      name = "lodash.tonumber___lodash.tonumber_4.0.3.tgz";
-      path = fetchurl {
-        name = "lodash.tonumber___lodash.tonumber_4.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.tonumber/-/lodash.tonumber-4.0.3.tgz";
-        sha1 = "0b96b31b35672793eb7f5a63ee791f1b9e9025d9";
-      };
-    }
-    {
-      name = "lodash.unescape___lodash.unescape_4.0.1.tgz";
-      path = fetchurl {
-        name = "lodash.unescape___lodash.unescape_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/lodash.unescape/-/lodash.unescape-4.0.1.tgz";
-        sha1 = "bf2249886ce514cda112fae9218cdc065211fc9c";
-      };
-    }
-    {
       name = "lodash.uniq___lodash.uniq_4.5.0.tgz";
       path = fetchurl {
         name = "lodash.uniq___lodash.uniq_4.5.0.tgz";
@@ -6978,11 +7106,11 @@
       };
     }
     {
-      name = "loglevel___loglevel_1.6.4.tgz";
+      name = "loglevel___loglevel_1.6.7.tgz";
       path = fetchurl {
-        name = "loglevel___loglevel_1.6.4.tgz";
-        url  = "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.4.tgz";
-        sha1 = "f408f4f006db8354d0577dcf6d33485b3cb90d56";
+        name = "loglevel___loglevel_1.6.7.tgz";
+        url  = "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.7.tgz";
+        sha1 = "b3e034233188c68b889f5b862415306f565e2c56";
       };
     }
     {
@@ -6994,6 +7122,14 @@
       };
     }
     {
+      name = "lolex___lolex_5.1.2.tgz";
+      path = fetchurl {
+        name = "lolex___lolex_5.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/lolex/-/lolex-5.1.2.tgz";
+        sha1 = "953694d098ce7c07bc5ed6d0e42bc6c0c6d5a367";
+      };
+    }
+    {
       name = "loose_envify___loose_envify_1.4.0.tgz";
       path = fetchurl {
         name = "loose_envify___loose_envify_1.4.0.tgz";
@@ -7002,11 +7138,11 @@
       };
     }
     {
-      name = "lower_case___lower_case_1.1.4.tgz";
+      name = "lower_case___lower_case_2.0.1.tgz";
       path = fetchurl {
-        name = "lower_case___lower_case_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz";
-        sha1 = "9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac";
+        name = "lower_case___lower_case_2.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.1.tgz";
+        sha1 = "39eeb36e396115cc05e29422eaea9e692c9408c7";
       };
     }
     {
@@ -7026,6 +7162,14 @@
       };
     }
     {
+      name = "make_dir___make_dir_3.0.2.tgz";
+      path = fetchurl {
+        name = "make_dir___make_dir_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/make-dir/-/make-dir-3.0.2.tgz";
+        sha1 = "04a1acbf22221e1d6ef43559f43e05a90dbb4392";
+      };
+    }
+    {
       name = "makeerror___makeerror_1.0.11.tgz";
       path = fetchurl {
         name = "makeerror___makeerror_1.0.11.tgz";
@@ -7082,14 +7226,6 @@
       };
     }
     {
-      name = "mdn_data___mdn_data_1.1.4.tgz";
-      path = fetchurl {
-        name = "mdn_data___mdn_data_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/mdn-data/-/mdn-data-1.1.4.tgz";
-        sha1 = "50b5d4ffc4575276573c4eedb8780812a8419f01";
-      };
-    }
-    {
       name = "media_typer___media_typer_0.3.0.tgz";
       path = fetchurl {
         name = "media_typer___media_typer_0.3.0.tgz";
@@ -7186,27 +7322,19 @@
       };
     }
     {
-      name = "mime_db___mime_db_1.40.0.tgz";
-      path = fetchurl {
-        name = "mime_db___mime_db_1.40.0.tgz";
-        url  = "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz";
-        sha1 = "a65057e998db090f732a68f6c276d387d4126c32";
-      };
-    }
-    {
-      name = "mime_db___mime_db_1.42.0.tgz";
+      name = "mime_db___mime_db_1.43.0.tgz";
       path = fetchurl {
-        name = "mime_db___mime_db_1.42.0.tgz";
-        url  = "https://registry.yarnpkg.com/mime-db/-/mime-db-1.42.0.tgz";
-        sha1 = "3e252907b4c7adb906597b4b65636272cf9e7bac";
+        name = "mime_db___mime_db_1.43.0.tgz";
+        url  = "https://registry.yarnpkg.com/mime-db/-/mime-db-1.43.0.tgz";
+        sha1 = "0a12e0502650e473d735535050e7c8f4eb4fae58";
       };
     }
     {
-      name = "mime_types___mime_types_2.1.24.tgz";
+      name = "mime_types___mime_types_2.1.26.tgz";
       path = fetchurl {
-        name = "mime_types___mime_types_2.1.24.tgz";
-        url  = "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.24.tgz";
-        sha1 = "b6f8d0b3e951efb77dedeca194cff6d16f676f81";
+        name = "mime_types___mime_types_2.1.26.tgz";
+        url  = "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.26.tgz";
+        sha1 = "9c921fc09b7e149a65dfdc0da4d20997200b0a06";
       };
     }
     {
@@ -7226,14 +7354,6 @@
       };
     }
     {
-      name = "mimic_fn___mimic_fn_1.2.0.tgz";
-      path = fetchurl {
-        name = "mimic_fn___mimic_fn_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz";
-        sha1 = "820c86a39334640e99516928bd03fca88057d022";
-      };
-    }
-    {
       name = "mimic_fn___mimic_fn_2.1.0.tgz";
       path = fetchurl {
         name = "mimic_fn___mimic_fn_2.1.0.tgz";
@@ -7242,11 +7362,11 @@
       };
     }
     {
-      name = "mini_css_extract_plugin___mini_css_extract_plugin_0.8.0.tgz";
+      name = "mini_css_extract_plugin___mini_css_extract_plugin_0.9.0.tgz";
       path = fetchurl {
-        name = "mini_css_extract_plugin___mini_css_extract_plugin_0.8.0.tgz";
-        url  = "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.8.0.tgz";
-        sha1 = "81d41ec4fe58c713a96ad7c723cdb2d0bd4d70e1";
+        name = "mini_css_extract_plugin___mini_css_extract_plugin_0.9.0.tgz";
+        url  = "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.9.0.tgz";
+        sha1 = "47f2cf07aa165ab35733b1fc97d4c46c0564339e";
       };
     }
     {
@@ -7290,11 +7410,27 @@
       };
     }
     {
-      name = "minimist___minimist_0.0.10.tgz";
+      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.2.tgz";
       path = fetchurl {
-        name = "minimist___minimist_0.0.10.tgz";
-        url  = "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz";
-        sha1 = "de3f98543dbf96082be48ad1a0c7cda836301dcf";
+        name = "minipass_pipeline___minipass_pipeline_1.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.2.tgz";
+        sha1 = "3dcb6bb4a546e32969c7ad710f2c79a86abba93a";
       };
     }
     {
@@ -7306,6 +7442,14 @@
       };
     }
     {
+      name = "minipass___minipass_3.1.1.tgz";
+      path = fetchurl {
+        name = "minipass___minipass_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/minipass/-/minipass-3.1.1.tgz";
+        sha1 = "7607ce778472a185ad6d89082aa2070f79cedcd5";
+      };
+    }
+    {
       name = "minizlib___minizlib_1.3.3.tgz";
       path = fetchurl {
         name = "minizlib___minizlib_1.3.3.tgz";
@@ -7370,11 +7514,11 @@
       };
     }
     {
-      name = "moo___moo_0.4.3.tgz";
+      name = "moo___moo_0.5.1.tgz";
       path = fetchurl {
-        name = "moo___moo_0.4.3.tgz";
-        url  = "https://registry.yarnpkg.com/moo/-/moo-0.4.3.tgz";
-        sha1 = "3f847a26f31cf625a956a87f2b10fbc013bfd10e";
+        name = "moo___moo_0.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/moo/-/moo-0.5.1.tgz";
+        sha1 = "7aae7f384b9b09f620b6abf6f74ebbcd1b65dbc4";
       };
     }
     {
@@ -7426,11 +7570,11 @@
       };
     }
     {
-      name = "mute_stream___mute_stream_0.0.7.tgz";
+      name = "mute_stream___mute_stream_0.0.8.tgz";
       path = fetchurl {
-        name = "mute_stream___mute_stream_0.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz";
-        sha1 = "3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab";
+        name = "mute_stream___mute_stream_0.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz";
+        sha1 = "1630c42b2251ff81e2a283de96a5497ea92e5e0d";
       };
     }
     {
@@ -7458,19 +7602,19 @@
       };
     }
     {
-      name = "nearley___nearley_2.19.0.tgz";
+      name = "nearley___nearley_2.19.1.tgz";
       path = fetchurl {
-        name = "nearley___nearley_2.19.0.tgz";
-        url  = "https://registry.yarnpkg.com/nearley/-/nearley-2.19.0.tgz";
-        sha1 = "37717781d0fd0f2bfc95e233ebd75678ca4bda46";
+        name = "nearley___nearley_2.19.1.tgz";
+        url  = "https://registry.yarnpkg.com/nearley/-/nearley-2.19.1.tgz";
+        sha1 = "4af4006e16645ff800e9f993c3af039857d9dbdc";
       };
     }
     {
-      name = "needle___needle_2.4.0.tgz";
+      name = "needle___needle_2.3.2.tgz";
       path = fetchurl {
-        name = "needle___needle_2.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/needle/-/needle-2.4.0.tgz";
-        sha1 = "6833e74975c444642590e15a750288c5f939b57c";
+        name = "needle___needle_2.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/needle/-/needle-2.3.2.tgz";
+        sha1 = "3342dea100b7160960a450dc8c22160ac712a528";
       };
     }
     {
@@ -7506,19 +7650,19 @@
       };
     }
     {
-      name = "nise___nise_1.5.2.tgz";
+      name = "nise___nise_1.5.3.tgz";
       path = fetchurl {
-        name = "nise___nise_1.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/nise/-/nise-1.5.2.tgz";
-        sha1 = "b6d29af10e48b321b307e10e065199338eeb2652";
+        name = "nise___nise_1.5.3.tgz";
+        url  = "https://registry.yarnpkg.com/nise/-/nise-1.5.3.tgz";
+        sha1 = "9d2cfe37d44f57317766c6e9408a359c5d3ac1f7";
       };
     }
     {
-      name = "no_case___no_case_2.3.2.tgz";
+      name = "no_case___no_case_3.0.3.tgz";
       path = fetchurl {
-        name = "no_case___no_case_2.3.2.tgz";
-        url  = "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz";
-        sha1 = "60b813396be39b3f1288a4c1ed5d1e7d28b464ac";
+        name = "no_case___no_case_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/no-case/-/no-case-3.0.3.tgz";
+        sha1 = "c21b434c1ffe48b39087e86cfb4d2582e9df18f8";
       };
     }
     {
@@ -7530,14 +7674,6 @@
       };
     }
     {
-      name = "node_fetch___node_fetch_1.7.3.tgz";
-      path = fetchurl {
-        name = "node_fetch___node_fetch_1.7.3.tgz";
-        url  = "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz";
-        sha1 = "980f6f72d85211a5347c6b2bc18c5b84c3eb47ef";
-      };
-    }
-    {
       name = "node_forge___node_forge_0.9.0.tgz";
       path = fetchurl {
         name = "node_forge___node_forge_0.9.0.tgz";
@@ -7578,19 +7714,19 @@
       };
     }
     {
-      name = "node_pre_gyp___node_pre_gyp_0.12.0.tgz";
+      name = "node_pre_gyp___node_pre_gyp_0.14.0.tgz";
       path = fetchurl {
-        name = "node_pre_gyp___node_pre_gyp_0.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz";
-        sha1 = "39ba4bb1439da030295f899e3b520b7785766149";
+        name = "node_pre_gyp___node_pre_gyp_0.14.0.tgz";
+        url  = "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz";
+        sha1 = "9a0596533b877289bcad4e143982ca3d904ddc83";
       };
     }
     {
-      name = "node_releases___node_releases_1.1.36.tgz";
+      name = "node_releases___node_releases_1.1.49.tgz";
       path = fetchurl {
-        name = "node_releases___node_releases_1.1.36.tgz";
-        url  = "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.36.tgz";
-        sha1 = "44b7cb8254138e87bdbfa47761d0f825e20900b4";
+        name = "node_releases___node_releases_1.1.49.tgz";
+        url  = "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.49.tgz";
+        sha1 = "67ba5a3fac2319262675ef864ed56798bb33b93e";
       };
     }
     {
@@ -7650,19 +7786,27 @@
       };
     }
     {
-      name = "npm_bundled___npm_bundled_1.0.6.tgz";
+      name = "npm_bundled___npm_bundled_1.1.1.tgz";
       path = fetchurl {
-        name = "npm_bundled___npm_bundled_1.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.0.6.tgz";
-        sha1 = "e7ba9aadcef962bb61248f91721cd932b3fe6bdd";
+        name = "npm_bundled___npm_bundled_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.1.tgz";
+        sha1 = "1edd570865a94cdb1bc8220775e29466c9fb234b";
       };
     }
     {
-      name = "npm_packlist___npm_packlist_1.4.6.tgz";
+      name = "npm_normalize_package_bin___npm_normalize_package_bin_1.0.1.tgz";
       path = fetchurl {
-        name = "npm_packlist___npm_packlist_1.4.6.tgz";
-        url  = "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.6.tgz";
-        sha1 = "53ba3ed11f8523079f1457376dd379ee4ea42ff4";
+        name = "npm_normalize_package_bin___npm_normalize_package_bin_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz";
+        sha1 = "6e79a41f23fd235c0623218228da7d9c23b8f6e2";
+      };
+    }
+    {
+      name = "npm_packlist___npm_packlist_1.4.8.tgz";
+      path = fetchurl {
+        name = "npm_packlist___npm_packlist_1.4.8.tgz";
+        url  = "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz";
+        sha1 = "56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e";
       };
     }
     {
@@ -7706,11 +7850,11 @@
       };
     }
     {
-      name = "nwsapi___nwsapi_2.1.4.tgz";
+      name = "nwsapi___nwsapi_2.2.0.tgz";
       path = fetchurl {
-        name = "nwsapi___nwsapi_2.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.1.4.tgz";
-        sha1 = "e006a878db23636f8e8a67d33ca0e4edf61a842f";
+        name = "nwsapi___nwsapi_2.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz";
+        sha1 = "204879a9e3d068ff2a55139c2c772780681a38b7";
       };
     }
     {
@@ -7738,27 +7882,27 @@
       };
     }
     {
-      name = "object_hash___object_hash_1.3.1.tgz";
+      name = "object_hash___object_hash_2.0.3.tgz";
       path = fetchurl {
-        name = "object_hash___object_hash_1.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/object-hash/-/object-hash-1.3.1.tgz";
-        sha1 = "fde452098a951cb145f039bb7d455449ddc126df";
+        name = "object_hash___object_hash_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/object-hash/-/object-hash-2.0.3.tgz";
+        sha1 = "d12db044e03cd2ca3d77c0570d87225b02e1e6ea";
       };
     }
     {
-      name = "object_inspect___object_inspect_1.6.0.tgz";
+      name = "object_inspect___object_inspect_1.7.0.tgz";
       path = fetchurl {
-        name = "object_inspect___object_inspect_1.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz";
-        sha1 = "c70b6cbf72f274aab4c34c0c82f5167bf82cf15b";
+        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_is___object_is_1.0.1.tgz";
+      name = "object_is___object_is_1.0.2.tgz";
       path = fetchurl {
-        name = "object_is___object_is_1.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/object-is/-/object-is-1.0.1.tgz";
-        sha1 = "0aa60ec9989a0b3ed795cf4d06f62cf1ad6539b6";
+        name = "object_is___object_is_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/object-is/-/object-is-1.0.2.tgz";
+        sha1 = "6b80eb84fe451498f65007982f035a5b445edec4";
       };
     }
     {
@@ -7794,27 +7938,27 @@
       };
     }
     {
-      name = "object.entries___object.entries_1.1.0.tgz";
+      name = "object.entries___object.entries_1.1.1.tgz";
       path = fetchurl {
-        name = "object.entries___object.entries_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz";
-        sha1 = "2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519";
+        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.fromentries___object.fromentries_2.0.1.tgz";
+      name = "object.fromentries___object.fromentries_2.0.2.tgz";
       path = fetchurl {
-        name = "object.fromentries___object.fromentries_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.1.tgz";
-        sha1 = "050f077855c7af8ae6649f45c80b16ee2d31e704";
+        name = "object.fromentries___object.fromentries_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.2.tgz";
+        sha1 = "4a09c9b9bb3843dd0f89acdb517a794d4f355ac9";
       };
     }
     {
-      name = "object.getownpropertydescriptors___object.getownpropertydescriptors_2.0.3.tgz";
+      name = "object.getownpropertydescriptors___object.getownpropertydescriptors_2.1.0.tgz";
       path = fetchurl {
-        name = "object.getownpropertydescriptors___object.getownpropertydescriptors_2.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz";
-        sha1 = "8758c846f5b407adab0f236e0986f14b051caa16";
+        name = "object.getownpropertydescriptors___object.getownpropertydescriptors_2.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz";
+        sha1 = "369bf1f9592d8ab89d712dced5cb81c7c5352649";
       };
     }
     {
@@ -7826,11 +7970,11 @@
       };
     }
     {
-      name = "object.values___object.values_1.1.0.tgz";
+      name = "object.values___object.values_1.1.1.tgz";
       path = fetchurl {
-        name = "object.values___object.values_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/object.values/-/object.values-1.1.0.tgz";
-        sha1 = "bf6810ef5da3e5325790eaaa2be213ea84624da9";
+        name = "object.values___object.values_1.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/object.values/-/object.values-1.1.1.tgz";
+        sha1 = "68a99ecde356b7e9295a3c5e0ce31dc8c953de5e";
       };
     }
     {
@@ -7866,19 +8010,19 @@
       };
     }
     {
-      name = "onetime___onetime_2.0.1.tgz";
+      name = "onetime___onetime_5.1.0.tgz";
       path = fetchurl {
-        name = "onetime___onetime_2.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz";
-        sha1 = "067428230fd67443b2794b22bba528b6867962d4";
+        name = "onetime___onetime_5.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/onetime/-/onetime-5.1.0.tgz";
+        sha1 = "fff0f3c91617fe62bb50189636e99ac8a6df7be5";
       };
     }
     {
-      name = "open___open_6.4.0.tgz";
+      name = "open___open_7.0.2.tgz";
       path = fetchurl {
-        name = "open___open_6.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/open/-/open-6.4.0.tgz";
-        sha1 = "5c13e96d0dc894686164f18965ecfe889ecfc8a9";
+        name = "open___open_7.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/open/-/open-7.0.2.tgz";
+        sha1 = "fb3681f11f157f2361d2392307548ca1792960e8";
       };
     }
     {
@@ -7890,14 +8034,6 @@
       };
     }
     {
-      name = "optimist___optimist_0.6.1.tgz";
-      path = fetchurl {
-        name = "optimist___optimist_0.6.1.tgz";
-        url  = "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz";
-        sha1 = "da3ea74686fa21a19a111c326e90eb15a0196686";
-      };
-    }
-    {
       name = "optimize_css_assets_webpack_plugin___optimize_css_assets_webpack_plugin_5.0.3.tgz";
       path = fetchurl {
         name = "optimize_css_assets_webpack_plugin___optimize_css_assets_webpack_plugin_5.0.3.tgz";
@@ -7906,11 +8042,11 @@
       };
     }
     {
-      name = "optionator___optionator_0.8.2.tgz";
+      name = "optionator___optionator_0.8.3.tgz";
       path = fetchurl {
-        name = "optionator___optionator_0.8.2.tgz";
-        url  = "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz";
-        sha1 = "364c5e409d3f4d6301d6c0b4c05bba50180aeb64";
+        name = "optionator___optionator_0.8.3.tgz";
+        url  = "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz";
+        sha1 = "84fa1d036fe9d3c7e21d99884b601167ec8fb495";
       };
     }
     {
@@ -8002,11 +8138,11 @@
       };
     }
     {
-      name = "p_limit___p_limit_2.2.1.tgz";
+      name = "p_limit___p_limit_2.2.2.tgz";
       path = fetchurl {
-        name = "p_limit___p_limit_2.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.1.tgz";
-        sha1 = "aa07a788cc3151c939b5131f63570f0dd2009537";
+        name = "p_limit___p_limit_2.2.2.tgz";
+        url  = "https://registry.yarnpkg.com/p-limit/-/p-limit-2.2.2.tgz";
+        sha1 = "61279b67721f5287aa1c13a9a7fbbc48c9291b1e";
       };
     }
     {
@@ -8026,11 +8162,27 @@
       };
     }
     {
-      name = "p_map___p_map_1.2.0.tgz";
+      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_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz";
-        sha1 = "e4e94f311eabbc8633a1e79908165fca26241b6b";
+        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_3.0.0.tgz";
+      path = fetchurl {
+        name = "p_map___p_map_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/p-map/-/p-map-3.0.0.tgz";
+        sha1 = "d704d9af8a2ba684e2600d9a215983d4141a979d";
       };
     }
     {
@@ -8042,6 +8194,14 @@
       };
     }
     {
+      name = "p_retry___p_retry_3.0.1.tgz";
+      path = fetchurl {
+        name = "p_retry___p_retry_3.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/p-retry/-/p-retry-3.0.1.tgz";
+        sha1 = "316b4c8893e2c8dc1cfa891f406c4b422bebf328";
+      };
+    }
+    {
       name = "p_try___p_try_1.0.0.tgz";
       path = fetchurl {
         name = "p_try___p_try_1.0.0.tgz";
@@ -8058,11 +8218,11 @@
       };
     }
     {
-      name = "pako___pako_1.0.10.tgz";
+      name = "pako___pako_1.0.11.tgz";
       path = fetchurl {
-        name = "pako___pako_1.0.10.tgz";
-        url  = "https://registry.yarnpkg.com/pako/-/pako-1.0.10.tgz";
-        sha1 = "4328badb5086a426aa90f541977d4955da5c9732";
+        name = "pako___pako_1.0.11.tgz";
+        url  = "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz";
+        sha1 = "6c9599d340d54dfd3946380252a35705a6b992bf";
       };
     }
     {
@@ -8074,11 +8234,11 @@
       };
     }
     {
-      name = "param_case___param_case_2.1.1.tgz";
+      name = "param_case___param_case_3.0.3.tgz";
       path = fetchurl {
-        name = "param_case___param_case_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz";
-        sha1 = "df94fd8cf6531ecf75e6bef9a0858fbc72be2247";
+        name = "param_case___param_case_3.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/param-case/-/param-case-3.0.3.tgz";
+        sha1 = "4be41f8399eff621c56eebb829a5e451d9801238";
       };
     }
     {
@@ -8114,6 +8274,14 @@
       };
     }
     {
+      name = "parse_json___parse_json_5.0.0.tgz";
+      path = fetchurl {
+        name = "parse_json___parse_json_5.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/parse-json/-/parse-json-5.0.0.tgz";
+        sha1 = "73e5114c986d143efa3712d4ea24db9a4266f60f";
+      };
+    }
+    {
       name = "parse5___parse5_4.0.0.tgz";
       path = fetchurl {
         name = "parse5___parse5_4.0.0.tgz";
@@ -8146,6 +8314,14 @@
       };
     }
     {
+      name = "pascal_case___pascal_case_3.1.1.tgz";
+      path = fetchurl {
+        name = "pascal_case___pascal_case_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.1.tgz";
+        sha1 = "5ac1975133ed619281e88920973d2cd1f279de5f";
+      };
+    }
+    {
       name = "pascalcase___pascalcase_0.1.1.tgz";
       path = fetchurl {
         name = "pascalcase___pascalcase_0.1.1.tgz";
@@ -8186,6 +8362,14 @@
       };
     }
     {
+      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";
@@ -8210,6 +8394,14 @@
       };
     }
     {
+      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";
@@ -8226,11 +8418,11 @@
       };
     }
     {
-      name = "path_to_regexp___path_to_regexp_1.7.0.tgz";
+      name = "path_to_regexp___path_to_regexp_1.8.0.tgz";
       path = fetchurl {
-        name = "path_to_regexp___path_to_regexp_1.7.0.tgz";
-        url  = "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.7.0.tgz";
-        sha1 = "59fde0f435badacba103a84e9d3bc64e96b9937d";
+        name = "path_to_regexp___path_to_regexp_1.8.0.tgz";
+        url  = "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.8.0.tgz";
+        sha1 = "887b3ba9d84393e87a0a0b9f4cb756198b53548a";
       };
     }
     {
@@ -8250,6 +8442,14 @@
       };
     }
     {
+      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.0.17.tgz";
       path = fetchurl {
         name = "pbkdf2___pbkdf2_3.0.17.tgz";
@@ -8266,11 +8466,11 @@
       };
     }
     {
-      name = "picomatch___picomatch_2.0.7.tgz";
+      name = "picomatch___picomatch_2.2.1.tgz";
       path = fetchurl {
-        name = "picomatch___picomatch_2.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/picomatch/-/picomatch-2.0.7.tgz";
-        sha1 = "514169d8c7cd0bdbeecc8a2609e34a7163de69f6";
+        name = "picomatch___picomatch_2.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.1.tgz";
+        sha1 = "21bac888b6ed8601f831ce7816e335bc779f0a4a";
       };
     }
     {
@@ -8346,11 +8546,19 @@
       };
     }
     {
-      name = "pkg_up___pkg_up_2.0.0.tgz";
+      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 = "pkg_up___pkg_up_3.1.0.tgz";
       path = fetchurl {
-        name = "pkg_up___pkg_up_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/pkg-up/-/pkg-up-2.0.0.tgz";
-        sha1 = "c819ac728059a461cab1c3889a2be3c49a004d7f";
+        name = "pkg_up___pkg_up_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/pkg-up/-/pkg-up-3.1.0.tgz";
+        sha1 = "100ec235cc150e4fd42519412596a28512a0def5";
       };
     }
     {
@@ -8362,19 +8570,19 @@
       };
     }
     {
-      name = "pnp_webpack_plugin___pnp_webpack_plugin_1.5.0.tgz";
+      name = "pnp_webpack_plugin___pnp_webpack_plugin_1.6.0.tgz";
       path = fetchurl {
-        name = "pnp_webpack_plugin___pnp_webpack_plugin_1.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.5.0.tgz";
-        sha1 = "62a1cd3068f46d564bb33c56eb250e4d586676eb";
+        name = "pnp_webpack_plugin___pnp_webpack_plugin_1.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.0.tgz";
+        sha1 = "d5c068013a2fdc82224ca50ed179c8fba9036a8e";
       };
     }
     {
-      name = "popper.js___popper.js_1.16.0.tgz";
+      name = "popper.js___popper.js_1.16.1.tgz";
       path = fetchurl {
-        name = "popper.js___popper.js_1.16.0.tgz";
-        url  = "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.0.tgz";
-        sha1 = "2e1816bcbbaa518ea6c2e15a466f4cb9c6e2fbb3";
+        name = "popper.js___popper.js_1.16.1.tgz";
+        url  = "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1.tgz";
+        sha1 = "2a223cb3dc7b6213d740e40372be40de43e65b1b";
       };
     }
     {
@@ -8394,27 +8602,27 @@
       };
     }
     {
-      name = "postcss_attribute_case_insensitive___postcss_attribute_case_insensitive_4.0.1.tgz";
+      name = "postcss_attribute_case_insensitive___postcss_attribute_case_insensitive_4.0.2.tgz";
       path = fetchurl {
-        name = "postcss_attribute_case_insensitive___postcss_attribute_case_insensitive_4.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.1.tgz";
-        sha1 = "b2a721a0d279c2f9103a36331c88981526428cc7";
+        name = "postcss_attribute_case_insensitive___postcss_attribute_case_insensitive_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz";
+        sha1 = "d93e46b504589e94ac7277b0463226c68041a880";
       };
     }
     {
-      name = "postcss_browser_comments___postcss_browser_comments_2.0.0.tgz";
+      name = "postcss_browser_comments___postcss_browser_comments_3.0.0.tgz";
       path = fetchurl {
-        name = "postcss_browser_comments___postcss_browser_comments_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-browser-comments/-/postcss-browser-comments-2.0.0.tgz";
-        sha1 = "dc48d6a8ddbff188a80a000b7393436cb18aed88";
+        name = "postcss_browser_comments___postcss_browser_comments_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-browser-comments/-/postcss-browser-comments-3.0.0.tgz";
+        sha1 = "1248d2d935fb72053c8e1f61a84a57292d9f65e9";
       };
     }
     {
-      name = "postcss_calc___postcss_calc_7.0.1.tgz";
+      name = "postcss_calc___postcss_calc_7.0.2.tgz";
       path = fetchurl {
-        name = "postcss_calc___postcss_calc_7.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.1.tgz";
-        sha1 = "36d77bab023b0ecbb9789d84dcb23c4941145436";
+        name = "postcss_calc___postcss_calc_7.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-7.0.2.tgz";
+        sha1 = "504efcd008ca0273120568b0792b16cdcde8aac1";
       };
     }
     {
@@ -8602,11 +8810,11 @@
       };
     }
     {
-      name = "postcss_initial___postcss_initial_3.0.1.tgz";
+      name = "postcss_initial___postcss_initial_3.0.2.tgz";
       path = fetchurl {
-        name = "postcss_initial___postcss_initial_3.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-3.0.1.tgz";
-        sha1 = "99d319669a13d6c06ef8e70d852f68cb1b399b61";
+        name = "postcss_initial___postcss_initial_3.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-initial/-/postcss-initial-3.0.2.tgz";
+        sha1 = "f018563694b3c16ae8eaabe3c585ac6319637b2d";
       };
     }
     {
@@ -8706,27 +8914,27 @@
       };
     }
     {
-      name = "postcss_modules_local_by_default___postcss_modules_local_by_default_2.0.6.tgz";
+      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_2.0.6.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-2.0.6.tgz";
-        sha1 = "dd9953f6dd476b5fd1ef2d8830c8929760b56e63";
+        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_scope___postcss_modules_scope_2.1.0.tgz";
+      name = "postcss_modules_scope___postcss_modules_scope_2.1.1.tgz";
       path = fetchurl {
-        name = "postcss_modules_scope___postcss_modules_scope_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.1.0.tgz";
-        sha1 = "ad3f5bf7856114f6fcab901b0502e2a2bc39d4eb";
+        name = "postcss_modules_scope___postcss_modules_scope_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-2.1.1.tgz";
+        sha1 = "33d4fc946602eb5e9355c4165d68a10727689dba";
       };
     }
     {
-      name = "postcss_modules_values___postcss_modules_values_2.0.0.tgz";
+      name = "postcss_modules_values___postcss_modules_values_3.0.0.tgz";
       path = fetchurl {
-        name = "postcss_modules_values___postcss_modules_values_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-2.0.0.tgz";
-        sha1 = "479b46dc0c5ca3dc7fa5270851836b9ec7152f64";
+        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";
       };
     }
     {
@@ -8810,11 +9018,11 @@
       };
     }
     {
-      name = "postcss_normalize___postcss_normalize_7.0.1.tgz";
+      name = "postcss_normalize___postcss_normalize_8.0.1.tgz";
       path = fetchurl {
-        name = "postcss_normalize___postcss_normalize_7.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-normalize/-/postcss-normalize-7.0.1.tgz";
-        sha1 = "eb51568d962b8aa61a8318383c8bb7e54332282e";
+        name = "postcss_normalize___postcss_normalize_8.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-normalize/-/postcss-normalize-8.0.1.tgz";
+        sha1 = "90e80a7763d7fdf2da6f2f0f82be832ce4f66776";
       };
     }
     {
@@ -8914,11 +9122,11 @@
       };
     }
     {
-      name = "postcss_selector_parser___postcss_selector_parser_3.1.1.tgz";
+      name = "postcss_selector_parser___postcss_selector_parser_3.1.2.tgz";
       path = fetchurl {
-        name = "postcss_selector_parser___postcss_selector_parser_3.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz";
-        sha1 = "4f875f4afb0c96573d5cf4d74011aee250a7e865";
+        name = "postcss_selector_parser___postcss_selector_parser_3.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz";
+        sha1 = "b310f5c4c0fdaf76f94902bbaa30db6aa84f5270";
       };
     }
     {
@@ -8962,11 +9170,11 @@
       };
     }
     {
-      name = "postcss_value_parser___postcss_value_parser_4.0.2.tgz";
+      name = "postcss_value_parser___postcss_value_parser_4.0.3.tgz";
       path = fetchurl {
-        name = "postcss_value_parser___postcss_value_parser_4.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.2.tgz";
-        sha1 = "482282c09a42706d1fc9a069b73f44ec08391dc9";
+        name = "postcss_value_parser___postcss_value_parser_4.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.0.3.tgz";
+        sha1 = "651ff4593aa9eda8d5d0d66593a2417aeaeb325d";
       };
     }
     {
@@ -8978,19 +9186,19 @@
       };
     }
     {
-      name = "postcss___postcss_7.0.14.tgz";
+      name = "postcss___postcss_7.0.21.tgz";
       path = fetchurl {
-        name = "postcss___postcss_7.0.14.tgz";
-        url  = "https://registry.yarnpkg.com/postcss/-/postcss-7.0.14.tgz";
-        sha1 = "4527ed6b1ca0d82c53ce5ec1a2041c2346bbd6e5";
+        name = "postcss___postcss_7.0.21.tgz";
+        url  = "https://registry.yarnpkg.com/postcss/-/postcss-7.0.21.tgz";
+        sha1 = "06bb07824c19c2021c5d056d5b10c35b989f7e17";
       };
     }
     {
-      name = "postcss___postcss_7.0.18.tgz";
+      name = "postcss___postcss_7.0.27.tgz";
       path = fetchurl {
-        name = "postcss___postcss_7.0.18.tgz";
-        url  = "https://registry.yarnpkg.com/postcss/-/postcss-7.0.18.tgz";
-        sha1 = "4b9cda95ae6c069c67a4d933029eddd4838ac233";
+        name = "postcss___postcss_7.0.27.tgz";
+        url  = "https://registry.yarnpkg.com/postcss/-/postcss-7.0.27.tgz";
+        sha1 = "cc67cdc6b0daa375105b7c424a85567345fc54d9";
       };
     }
     {
@@ -9018,11 +9226,11 @@
       };
     }
     {
-      name = "prettier___prettier_1.18.2.tgz";
+      name = "prettier___prettier_1.19.1.tgz";
       path = fetchurl {
-        name = "prettier___prettier_1.18.2.tgz";
-        url  = "https://registry.yarnpkg.com/prettier/-/prettier-1.18.2.tgz";
-        sha1 = "6823e7c5900017b4bd3acf46fe9ac4b4d7bda9ea";
+        name = "prettier___prettier_1.19.1.tgz";
+        url  = "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz";
+        sha1 = "f7d7f5ff8a9cd872a7be4ca142095956a60797cb";
       };
     }
     {
@@ -9106,19 +9314,11 @@
       };
     }
     {
-      name = "promise___promise_7.3.1.tgz";
-      path = fetchurl {
-        name = "promise___promise_7.3.1.tgz";
-        url  = "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz";
-        sha1 = "064b72602b18f90f29192b8b1bc418ffd1ebd3bf";
-      };
-    }
-    {
-      name = "prompts___prompts_2.2.1.tgz";
+      name = "prompts___prompts_2.3.1.tgz";
       path = fetchurl {
-        name = "prompts___prompts_2.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/prompts/-/prompts-2.2.1.tgz";
-        sha1 = "f901dd2a2dfee080359c0e20059b24188d75ad35";
+        name = "prompts___prompts_2.3.1.tgz";
+        url  = "https://registry.yarnpkg.com/prompts/-/prompts-2.3.1.tgz";
+        sha1 = "b63a9ce2809f106fa9ae1277c275b167af46ea05";
       };
     }
     {
@@ -9154,11 +9354,11 @@
       };
     }
     {
-      name = "psl___psl_1.4.0.tgz";
+      name = "psl___psl_1.7.0.tgz";
       path = fetchurl {
-        name = "psl___psl_1.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/psl/-/psl-1.4.0.tgz";
-        sha1 = "5dd26156cdb69fa1fdb8ab1991667d3f80ced7c2";
+        name = "psl___psl_1.7.0.tgz";
+        url  = "https://registry.yarnpkg.com/psl/-/psl-1.7.0.tgz";
+        sha1 = "f1c4c47a8ef97167dea5d6bbf4816d736e884a3c";
       };
     }
     {
@@ -9346,59 +9546,51 @@
       };
     }
     {
-      name = "react_app_polyfill___react_app_polyfill_1.0.4.tgz";
-      path = fetchurl {
-        name = "react_app_polyfill___react_app_polyfill_1.0.4.tgz";
-        url  = "https://registry.yarnpkg.com/react-app-polyfill/-/react-app-polyfill-1.0.4.tgz";
-        sha1 = "4dd2636846b585c2d842b1e44e1bc29044345874";
-      };
-    }
-    {
-      name = "react_copy_to_clipboard___react_copy_to_clipboard_5.0.1.tgz";
+      name = "react_app_polyfill___react_app_polyfill_1.0.6.tgz";
       path = fetchurl {
-        name = "react_copy_to_clipboard___react_copy_to_clipboard_5.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/react-copy-to-clipboard/-/react-copy-to-clipboard-5.0.1.tgz";
-        sha1 = "8eae107bb400be73132ed3b6a7b4fb156090208e";
+        name = "react_app_polyfill___react_app_polyfill_1.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/react-app-polyfill/-/react-app-polyfill-1.0.6.tgz";
+        sha1 = "890f8d7f2842ce6073f030b117de9130a5f385f0";
       };
     }
     {
-      name = "react_dev_utils___react_dev_utils_9.1.0.tgz";
+      name = "react_copy_to_clipboard___react_copy_to_clipboard_5.0.2.tgz";
       path = fetchurl {
-        name = "react_dev_utils___react_dev_utils_9.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-9.1.0.tgz";
-        sha1 = "3ad2bb8848a32319d760d0a84c56c14bdaae5e81";
+        name = "react_copy_to_clipboard___react_copy_to_clipboard_5.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/react-copy-to-clipboard/-/react-copy-to-clipboard-5.0.2.tgz";
+        sha1 = "d82a437e081e68dfca3761fbd57dbf2abdda1316";
       };
     }
     {
-      name = "react_dom___react_dom_16.10.2.tgz";
+      name = "react_dev_utils___react_dev_utils_10.2.0.tgz";
       path = fetchurl {
-        name = "react_dom___react_dom_16.10.2.tgz";
-        url  = "https://registry.yarnpkg.com/react-dom/-/react-dom-16.10.2.tgz";
-        sha1 = "4840bce5409176bc3a1f2bd8cb10b92db452fda6";
+        name = "react_dev_utils___react_dev_utils_10.2.0.tgz";
+        url  = "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-10.2.0.tgz";
+        sha1 = "b11cc48aa2be2502fb3c27a50d1dfa95cfa9dfe0";
       };
     }
     {
-      name = "react_error_overlay___react_error_overlay_6.0.3.tgz";
+      name = "react_dom___react_dom_16.12.0.tgz";
       path = fetchurl {
-        name = "react_error_overlay___react_error_overlay_6.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.3.tgz";
-        sha1 = "c378c4b0a21e88b2e159a3e62b2f531fd63bf60d";
+        name = "react_dom___react_dom_16.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/react-dom/-/react-dom-16.12.0.tgz";
+        sha1 = "0da4b714b8d13c2038c9396b54a92baea633fe11";
       };
     }
     {
-      name = "react_is___react_is_16.11.0.tgz";
+      name = "react_error_overlay___react_error_overlay_6.0.6.tgz";
       path = fetchurl {
-        name = "react_is___react_is_16.11.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-is/-/react-is-16.11.0.tgz";
-        sha1 = "b85dfecd48ad1ce469ff558a882ca8e8313928fa";
+        name = "react_error_overlay___react_error_overlay_6.0.6.tgz";
+        url  = "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.6.tgz";
+        sha1 = "ac4d9dc4c1b5c536c2c312bf66aa2b09bfa384e2";
       };
     }
     {
-      name = "react_is___react_is_16.10.2.tgz";
+      name = "react_is___react_is_16.12.0.tgz";
       path = fetchurl {
-        name = "react_is___react_is_16.10.2.tgz";
-        url  = "https://registry.yarnpkg.com/react-is/-/react-is-16.10.2.tgz";
-        sha1 = "984120fd4d16800e9a738208ab1fba422d23b5ab";
+        name = "react_is___react_is_16.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/react-is/-/react-is-16.12.0.tgz";
+        sha1 = "2cc0fe0fba742d97fd527c42a13bec4eeb06241c";
       };
     }
     {
@@ -9410,11 +9602,11 @@
       };
     }
     {
-      name = "react_popper___react_popper_1.3.4.tgz";
+      name = "react_popper___react_popper_1.3.7.tgz";
       path = fetchurl {
-        name = "react_popper___react_popper_1.3.4.tgz";
-        url  = "https://registry.yarnpkg.com/react-popper/-/react-popper-1.3.4.tgz";
-        sha1 = "f0cd3b0d30378e1f663b0d79bcc8614221652ced";
+        name = "react_popper___react_popper_1.3.7.tgz";
+        url  = "https://registry.yarnpkg.com/react-popper/-/react-popper-1.3.7.tgz";
+        sha1 = "f6a3471362ef1f0d10a4963673789de1baca2324";
       };
     }
     {
@@ -9426,19 +9618,19 @@
       };
     }
     {
-      name = "react_scripts___react_scripts_3.2.0.tgz";
+      name = "react_scripts___react_scripts_3.4.0.tgz";
       path = fetchurl {
-        name = "react_scripts___react_scripts_3.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-scripts/-/react-scripts-3.2.0.tgz";
-        sha1 = "58ccd6b4ffa27f1b4d2986cbdcaa916660e9e33c";
+        name = "react_scripts___react_scripts_3.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/react-scripts/-/react-scripts-3.4.0.tgz";
+        sha1 = "f413680f0b5b937c8879ba1ffdae9b8c5b364bf5";
       };
     }
     {
-      name = "react_test_renderer___react_test_renderer_16.11.0.tgz";
+      name = "react_test_renderer___react_test_renderer_16.12.0.tgz";
       path = fetchurl {
-        name = "react_test_renderer___react_test_renderer_16.11.0.tgz";
-        url  = "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.11.0.tgz";
-        sha1 = "72574566496462c808ac449b0287a4c0a1a7d8f8";
+        name = "react_test_renderer___react_test_renderer_16.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.12.0.tgz";
+        sha1 = "11417ffda579306d4e841a794d32140f3da1b43f";
       };
     }
     {
@@ -9450,19 +9642,19 @@
       };
     }
     {
-      name = "react___react_16.10.2.tgz";
+      name = "react___react_16.12.0.tgz";
       path = fetchurl {
-        name = "react___react_16.10.2.tgz";
-        url  = "https://registry.yarnpkg.com/react/-/react-16.10.2.tgz";
-        sha1 = "a5ede5cdd5c536f745173c8da47bda64797a4cf0";
+        name = "react___react_16.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/react/-/react-16.12.0.tgz";
+        sha1 = "0c0a9c6a142429e3614834d5a778e18aa78a0b83";
       };
     }
     {
-      name = "reactstrap___reactstrap_8.0.1.tgz";
+      name = "reactstrap___reactstrap_8.4.1.tgz";
       path = fetchurl {
-        name = "reactstrap___reactstrap_8.0.1.tgz";
-        url  = "https://registry.yarnpkg.com/reactstrap/-/reactstrap-8.0.1.tgz";
-        sha1 = "0b663c8195f540bc1d6d5dbcbcf73cab56fe7c79";
+        name = "reactstrap___reactstrap_8.4.1.tgz";
+        url  = "https://registry.yarnpkg.com/reactstrap/-/reactstrap-8.4.1.tgz";
+        sha1 = "c7f63b9057f58b52833061711ebe235b9ec4e3e5";
       };
     }
     {
@@ -9498,19 +9690,19 @@
       };
     }
     {
-      name = "readable_stream___readable_stream_2.3.6.tgz";
+      name = "readable_stream___readable_stream_2.3.7.tgz";
       path = fetchurl {
-        name = "readable_stream___readable_stream_2.3.6.tgz";
-        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz";
-        sha1 = "b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf";
+        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_3.4.0.tgz";
+      name = "readable_stream___readable_stream_3.6.0.tgz";
       path = fetchurl {
-        name = "readable_stream___readable_stream_3.4.0.tgz";
-        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.4.0.tgz";
-        sha1 = "a51c26754658e0a3c21dbf59163bd45ba6f447fc";
+        name = "readable_stream___readable_stream_3.6.0.tgz";
+        url  = "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz";
+        sha1 = "337bbda3adc0706bd3e024426a286d4b4b2c9198";
       };
     }
     {
@@ -9522,11 +9714,11 @@
       };
     }
     {
-      name = "readdirp___readdirp_3.2.0.tgz";
+      name = "readdirp___readdirp_3.3.0.tgz";
       path = fetchurl {
-        name = "readdirp___readdirp_3.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/readdirp/-/readdirp-3.2.0.tgz";
-        sha1 = "c30c33352b12c96dfb4b895421a49fd5a9593839";
+        name = "readdirp___readdirp_3.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/readdirp/-/readdirp-3.3.0.tgz";
+        sha1 = "984458d13a1e42e2e9f5841b129e162f369aff17";
       };
     }
     {
@@ -9570,14 +9762,6 @@
       };
     }
     {
-      name = "regenerator_runtime___regenerator_runtime_0.13.3.tgz";
-      path = fetchurl {
-        name = "regenerator_runtime___regenerator_runtime_0.13.3.tgz";
-        url  = "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz";
-        sha1 = "7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5";
-      };
-    }
-    {
       name = "regenerator_runtime___regenerator_runtime_0.11.1.tgz";
       path = fetchurl {
         name = "regenerator_runtime___regenerator_runtime_0.11.1.tgz";
@@ -9586,6 +9770,14 @@
       };
     }
     {
+      name = "regenerator_runtime___regenerator_runtime_0.13.3.tgz";
+      path = fetchurl {
+        name = "regenerator_runtime___regenerator_runtime_0.13.3.tgz";
+        url  = "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz";
+        sha1 = "7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5";
+      };
+    }
+    {
       name = "regenerator_transform___regenerator_transform_0.14.1.tgz";
       path = fetchurl {
         name = "regenerator_transform___regenerator_transform_0.14.1.tgz";
@@ -9610,11 +9802,11 @@
       };
     }
     {
-      name = "regexp.prototype.flags___regexp.prototype.flags_1.2.0.tgz";
+      name = "regexp.prototype.flags___regexp.prototype.flags_1.3.0.tgz";
       path = fetchurl {
-        name = "regexp.prototype.flags___regexp.prototype.flags_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.2.0.tgz";
-        sha1 = "6b30724e306a27833eeb171b66ac8890ba37e41c";
+        name = "regexp.prototype.flags___regexp.prototype.flags_1.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz";
+        sha1 = "7aba89b3c13a64509dabcf3ca8d9fbb9bdf5cb75";
       };
     }
     {
@@ -9626,6 +9818,14 @@
       };
     }
     {
+      name = "regexpp___regexpp_3.0.0.tgz";
+      path = fetchurl {
+        name = "regexpp___regexpp_3.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/regexpp/-/regexpp-3.0.0.tgz";
+        sha1 = "dd63982ee3300e67b41c1956f850aa680d9d330e";
+      };
+    }
+    {
       name = "regexpu_core___regexpu_core_4.6.0.tgz";
       path = fetchurl {
         name = "regexpu_core___regexpu_core_4.6.0.tgz";
@@ -9634,19 +9834,19 @@
       };
     }
     {
-      name = "regjsgen___regjsgen_0.5.0.tgz";
+      name = "regjsgen___regjsgen_0.5.1.tgz";
       path = fetchurl {
-        name = "regjsgen___regjsgen_0.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.0.tgz";
-        sha1 = "a7634dc08f89209c2049adda3525711fb97265dd";
+        name = "regjsgen___regjsgen_0.5.1.tgz";
+        url  = "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.5.1.tgz";
+        sha1 = "48f0bf1a5ea205196929c0d9798b42d1ed98443c";
       };
     }
     {
-      name = "regjsparser___regjsparser_0.6.0.tgz";
+      name = "regjsparser___regjsparser_0.6.3.tgz";
       path = fetchurl {
-        name = "regjsparser___regjsparser_0.6.0.tgz";
-        url  = "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.0.tgz";
-        sha1 = "f1e6ae8b7da2bae96c99399b868cd6c933a2ba9c";
+        name = "regjsparser___regjsparser_0.6.3.tgz";
+        url  = "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.6.3.tgz";
+        sha1 = "74192c5805d35e9f5ebe3c1fb5b40d40a8a38460";
       };
     }
     {
@@ -9690,27 +9890,27 @@
       };
     }
     {
-      name = "request_promise_core___request_promise_core_1.1.2.tgz";
+      name = "request_promise_core___request_promise_core_1.1.3.tgz";
       path = fetchurl {
-        name = "request_promise_core___request_promise_core_1.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.2.tgz";
-        sha1 = "339f6aababcafdb31c799ff158700336301d3346";
+        name = "request_promise_core___request_promise_core_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.3.tgz";
+        sha1 = "e9a3c081b51380dfea677336061fea879a829ee9";
       };
     }
     {
-      name = "request_promise_native___request_promise_native_1.0.7.tgz";
+      name = "request_promise_native___request_promise_native_1.0.8.tgz";
       path = fetchurl {
-        name = "request_promise_native___request_promise_native_1.0.7.tgz";
-        url  = "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.7.tgz";
-        sha1 = "a49868a624bdea5069f1251d0a836e0d89aa2c59";
+        name = "request_promise_native___request_promise_native_1.0.8.tgz";
+        url  = "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.8.tgz";
+        sha1 = "a455b960b826e44e2bf8999af64dff2bfe58cb36";
       };
     }
     {
-      name = "request___request_2.88.0.tgz";
+      name = "request___request_2.88.2.tgz";
       path = fetchurl {
-        name = "request___request_2.88.0.tgz";
-        url  = "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz";
-        sha1 = "9c2fca4f7d35b592efe57c7f0a55e81052124fef";
+        name = "request___request_2.88.2.tgz";
+        url  = "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz";
+        sha1 = "d73c918731cb5a87da047e207234146f664d12b3";
       };
     }
     {
@@ -9778,11 +9978,11 @@
       };
     }
     {
-      name = "resolve_url_loader___resolve_url_loader_3.1.0.tgz";
+      name = "resolve_url_loader___resolve_url_loader_3.1.1.tgz";
       path = fetchurl {
-        name = "resolve_url_loader___resolve_url_loader_3.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve-url-loader/-/resolve-url-loader-3.1.0.tgz";
-        sha1 = "54d8181d33cd1b66a59544d05cadf8e4aa7d37cc";
+        name = "resolve_url_loader___resolve_url_loader_3.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/resolve-url-loader/-/resolve-url-loader-3.1.1.tgz";
+        sha1 = "28931895fa1eab9be0647d3b2958c100ae3c0bf0";
       };
     }
     {
@@ -9802,19 +10002,27 @@
       };
     }
     {
-      name = "resolve___resolve_1.12.0.tgz";
+      name = "resolve___resolve_1.15.0.tgz";
+      path = fetchurl {
+        name = "resolve___resolve_1.15.0.tgz";
+        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.15.0.tgz";
+        sha1 = "1b7ca96073ebb52e741ffd799f6b39ea462c67f5";
+      };
+    }
+    {
+      name = "resolve___resolve_1.15.1.tgz";
       path = fetchurl {
-        name = "resolve___resolve_1.12.0.tgz";
-        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.12.0.tgz";
-        sha1 = "3fc644a35c84a48554609ff26ec52b66fa577df6";
+        name = "resolve___resolve_1.15.1.tgz";
+        url  = "https://registry.yarnpkg.com/resolve/-/resolve-1.15.1.tgz";
+        sha1 = "27bdcdeffeaf2d6244b95bb0f9f4b4653451f3e8";
       };
     }
     {
-      name = "restore_cursor___restore_cursor_2.0.0.tgz";
+      name = "restore_cursor___restore_cursor_3.1.0.tgz";
       path = fetchurl {
-        name = "restore_cursor___restore_cursor_2.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz";
-        sha1 = "9f7ee287f82fd326d4fd162923d62129eee0dfaf";
+        name = "restore_cursor___restore_cursor_3.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz";
+        sha1 = "39f67c54b3a7a58cea5236d95cf0034239631f7e";
       };
     }
     {
@@ -9826,6 +10034,14 @@
       };
     }
     {
+      name = "retry___retry_0.12.0.tgz";
+      path = fetchurl {
+        name = "retry___retry_0.12.0.tgz";
+        url  = "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz";
+        sha1 = "1b42a6266a21f07421d1b0b54b7dc167b01c013b";
+      };
+    }
+    {
       name = "rework_visit___rework_visit_1.0.0.tgz";
       path = fetchurl {
         name = "rework_visit___rework_visit_1.0.0.tgz";
@@ -9914,11 +10130,11 @@
       };
     }
     {
-      name = "rxjs___rxjs_6.5.3.tgz";
+      name = "rxjs___rxjs_6.5.4.tgz";
       path = fetchurl {
-        name = "rxjs___rxjs_6.5.3.tgz";
-        url  = "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.3.tgz";
-        sha1 = "510e26317f4db91a7eb1de77d9dd9ba0a4899a3a";
+        name = "rxjs___rxjs_6.5.4.tgz";
+        url  = "https://registry.yarnpkg.com/rxjs/-/rxjs-6.5.4.tgz";
+        sha1 = "e0777fe0d184cec7872df147f303572d414e211c";
       };
     }
     {
@@ -9962,19 +10178,27 @@
       };
     }
     {
-      name = "sanitize_html___sanitize_html_1.20.1.tgz";
+      name = "sanitize_html___sanitize_html_1.21.1.tgz";
       path = fetchurl {
-        name = "sanitize_html___sanitize_html_1.20.1.tgz";
-        url  = "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-1.20.1.tgz";
-        sha1 = "f6effdf55dd398807171215a62bfc21811bacf85";
+        name = "sanitize_html___sanitize_html_1.21.1.tgz";
+        url  = "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-1.21.1.tgz";
+        sha1 = "1647d15c0c672901aa41eac1b86d0c38146d30ce";
       };
     }
     {
-      name = "sass_loader___sass_loader_7.2.0.tgz";
+      name = "sanitize.css___sanitize.css_10.0.0.tgz";
       path = fetchurl {
-        name = "sass_loader___sass_loader_7.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/sass-loader/-/sass-loader-7.2.0.tgz";
-        sha1 = "e34115239309d15b2527cb62b5dfefb62a96ff7f";
+        name = "sanitize.css___sanitize.css_10.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/sanitize.css/-/sanitize.css-10.0.0.tgz";
+        sha1 = "b5cb2547e96d8629a60947544665243b1dc3657a";
+      };
+    }
+    {
+      name = "sass_loader___sass_loader_8.0.2.tgz";
+      path = fetchurl {
+        name = "sass_loader___sass_loader_8.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/sass-loader/-/sass-loader-8.0.2.tgz";
+        sha1 = "debecd8c3ce243c76454f2e8290482150380090d";
       };
     }
     {
@@ -9994,19 +10218,11 @@
       };
     }
     {
-      name = "scheduler___scheduler_0.16.2.tgz";
+      name = "scheduler___scheduler_0.18.0.tgz";
       path = fetchurl {
-        name = "scheduler___scheduler_0.16.2.tgz";
-        url  = "https://registry.yarnpkg.com/scheduler/-/scheduler-0.16.2.tgz";
-        sha1 = "f74cd9d33eff6fc554edfb79864868e4819132c1";
-      };
-    }
-    {
-      name = "scheduler___scheduler_0.17.0.tgz";
-      path = fetchurl {
-        name = "scheduler___scheduler_0.17.0.tgz";
-        url  = "https://registry.yarnpkg.com/scheduler/-/scheduler-0.17.0.tgz";
-        sha1 = "7c9c673e4ec781fac853927916d1c426b6f3ddfe";
+        name = "scheduler___scheduler_0.18.0.tgz";
+        url  = "https://registry.yarnpkg.com/scheduler/-/scheduler-0.18.0.tgz";
+        sha1 = "5901ad6659bc1d8f3fdaf36eb7a67b0d6746b1c4";
       };
     }
     {
@@ -10018,11 +10234,11 @@
       };
     }
     {
-      name = "schema_utils___schema_utils_2.5.0.tgz";
+      name = "schema_utils___schema_utils_2.6.4.tgz";
       path = fetchurl {
-        name = "schema_utils___schema_utils_2.5.0.tgz";
-        url  = "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.5.0.tgz";
-        sha1 = "8f254f618d402cc80257486213c8970edfd7c22f";
+        name = "schema_utils___schema_utils_2.6.4.tgz";
+        url  = "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.6.4.tgz";
+        sha1 = "a27efbf6e4e78689d91872ee3ccfa57d7bdd0f53";
       };
     }
     {
@@ -10058,6 +10274,14 @@
       };
     }
     {
+      name = "semver___semver_7.0.0.tgz";
+      path = fetchurl {
+        name = "semver___semver_7.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz";
+        sha1 = "5f3ca35761e47e05b206c6daff2cf814f0316b8e";
+      };
+    }
+    {
       name = "send___send_0.17.1.tgz";
       path = fetchurl {
         name = "send___send_0.17.1.tgz";
@@ -10066,11 +10290,11 @@
       };
     }
     {
-      name = "serialize_javascript___serialize_javascript_1.9.1.tgz";
+      name = "serialize_javascript___serialize_javascript_2.1.2.tgz";
       path = fetchurl {
-        name = "serialize_javascript___serialize_javascript_1.9.1.tgz";
-        url  = "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.9.1.tgz";
-        sha1 = "cfc200aef77b600c47da9bb8149c943e798c2fdb";
+        name = "serialize_javascript___serialize_javascript_2.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-2.1.2.tgz";
+        sha1 = "ecec53b0e0317bdc95ef76ab7074b7384785fa61";
       };
     }
     {
@@ -10162,6 +10386,14 @@
       };
     }
     {
+      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";
@@ -10170,6 +10402,14 @@
       };
     }
     {
+      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 = "shell_quote___shell_quote_1.7.2.tgz";
       path = fetchurl {
         name = "shell_quote___shell_quote_1.7.2.tgz";
@@ -10186,6 +10426,14 @@
       };
     }
     {
+      name = "side_channel___side_channel_1.0.2.tgz";
+      path = fetchurl {
+        name = "side_channel___side_channel_1.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.2.tgz";
+        sha1 = "df5d1abadb4e4bf4af1cd8852bf132d2f7876947";
+      };
+    }
+    {
       name = "signal_exit___signal_exit_3.0.2.tgz";
       path = fetchurl {
         name = "signal_exit___signal_exit_3.0.2.tgz";
@@ -10210,11 +10458,11 @@
       };
     }
     {
-      name = "sisteransi___sisteransi_1.0.3.tgz";
+      name = "sisteransi___sisteransi_1.0.4.tgz";
       path = fetchurl {
-        name = "sisteransi___sisteransi_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.3.tgz";
-        sha1 = "98168d62b79e3a5e758e27ae63c4a053d748f4eb";
+        name = "sisteransi___sisteransi_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.4.tgz";
+        sha1 = "386713f1ef688c7c0304dc4c0632898941cad2e3";
       };
     }
     {
@@ -10274,14 +10522,6 @@
       };
     }
     {
-      name = "sockjs_client___sockjs_client_1.3.0.tgz";
-      path = fetchurl {
-        name = "sockjs_client___sockjs_client_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.3.0.tgz";
-        sha1 = "12fc9d6cb663da5739d3dc5fb6e8687da95cb177";
-      };
-    }
-    {
       name = "sockjs_client___sockjs_client_1.4.0.tgz";
       path = fetchurl {
         name = "sockjs_client___sockjs_client_1.4.0.tgz";
@@ -10314,19 +10554,19 @@
       };
     }
     {
-      name = "source_map_resolve___source_map_resolve_0.5.2.tgz";
+      name = "source_map_resolve___source_map_resolve_0.5.3.tgz";
       path = fetchurl {
-        name = "source_map_resolve___source_map_resolve_0.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz";
-        sha1 = "72e2cc34095543e43b2c62b2c4c10d4a9054f259";
+        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.5.13.tgz";
+      name = "source_map_support___source_map_support_0.5.16.tgz";
       path = fetchurl {
-        name = "source_map_support___source_map_support_0.5.13.tgz";
-        url  = "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.13.tgz";
-        sha1 = "31b24a9c2e73c2de85066c0feb7d44767ed52932";
+        name = "source_map_support___source_map_support_0.5.16.tgz";
+        url  = "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.16.tgz";
+        sha1 = "0ae069e7fe3ba7538c64c98515e35339eac5a042";
       };
     }
     {
@@ -10442,6 +10682,14 @@
       };
     }
     {
+      name = "ssri___ssri_7.1.0.tgz";
+      path = fetchurl {
+        name = "ssri___ssri_7.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/ssri/-/ssri-7.1.0.tgz";
+        sha1 = "92c241bf6de82365b5c7fb4bd76e975522e1294d";
+      };
+    }
+    {
       name = "stable___stable_0.1.8.tgz";
       path = fetchurl {
         name = "stable___stable_0.1.8.tgz";
@@ -10506,11 +10754,11 @@
       };
     }
     {
-      name = "stream_shift___stream_shift_1.0.0.tgz";
+      name = "stream_shift___stream_shift_1.0.1.tgz";
       path = fetchurl {
-        name = "stream_shift___stream_shift_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz";
-        sha1 = "d5c752825e5367e786f78e18e445ea223a155952";
+        name = "stream_shift___stream_shift_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz";
+        sha1 = "d7088281559ab2778424279b0877da3c392d5a3d";
       };
     }
     {
@@ -10562,27 +10810,43 @@
       };
     }
     {
-      name = "string.prototype.trim___string.prototype.trim_1.2.0.tgz";
+      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.prototype.matchall___string.prototype.matchall_4.0.2.tgz";
+      path = fetchurl {
+        name = "string.prototype.matchall___string.prototype.matchall_4.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.2.tgz";
+        sha1 = "48bb510326fb9fdeb6a33ceaa81a6ea04ef7648e";
+      };
+    }
+    {
+      name = "string.prototype.trim___string.prototype.trim_1.2.1.tgz";
       path = fetchurl {
-        name = "string.prototype.trim___string.prototype.trim_1.2.0.tgz";
-        url  = "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.0.tgz";
-        sha1 = "75a729b10cfc1be439543dae442129459ce61e3d";
+        name = "string.prototype.trim___string.prototype.trim_1.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.1.tgz";
+        sha1 = "141233dff32c82bfad80684d7e5f0869ee0fb782";
       };
     }
     {
-      name = "string.prototype.trimleft___string.prototype.trimleft_2.1.0.tgz";
+      name = "string.prototype.trimleft___string.prototype.trimleft_2.1.1.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.trimleft___string.prototype.trimleft_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz";
+        sha1 = "9bdb8ac6abd6d602b17a4ed321870d2f8dcefc74";
       };
     }
     {
-      name = "string.prototype.trimright___string.prototype.trimright_2.1.0.tgz";
+      name = "string.prototype.trimright___string.prototype.trimright_2.1.1.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.trimright___string.prototype.trimright_2.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz";
+        sha1 = "440314b15996c866ce8a0341894d45186200c5d9";
       };
     }
     {
@@ -10610,11 +10874,11 @@
       };
     }
     {
-      name = "strip_ansi___strip_ansi_5.2.0.tgz";
+      name = "strip_ansi___strip_ansi_6.0.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";
+        url  = "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.0.tgz";
+        sha1 = "0b1571dd7669ccd4f3e06e14ef1eed26225ae532";
       };
     }
     {
@@ -10634,6 +10898,14 @@
       };
     }
     {
+      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_bom___strip_bom_3.0.0.tgz";
       path = fetchurl {
         name = "strip_bom___strip_bom_3.0.0.tgz";
@@ -10674,11 +10946,11 @@
       };
     }
     {
-      name = "style_loader___style_loader_1.0.0.tgz";
+      name = "style_loader___style_loader_0.23.1.tgz";
       path = fetchurl {
-        name = "style_loader___style_loader_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/style-loader/-/style-loader-1.0.0.tgz";
-        sha1 = "1d5296f9165e8e2c85d24eee0b7caf9ec8ca1f82";
+        name = "style_loader___style_loader_0.23.1.tgz";
+        url  = "https://registry.yarnpkg.com/style-loader/-/style-loader-0.23.1.tgz";
+        sha1 = "cb9154606f3e771ab6c4ab637026a1049174d925";
       };
     }
     {
@@ -10714,19 +10986,27 @@
       };
     }
     {
-      name = "svg_parser___svg_parser_2.0.2.tgz";
+      name = "supports_color___supports_color_7.1.0.tgz";
       path = fetchurl {
-        name = "svg_parser___svg_parser_2.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.2.tgz";
-        sha1 = "d134cc396fa2681dc64f518330784e98bd801ec8";
+        name = "supports_color___supports_color_7.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/supports-color/-/supports-color-7.1.0.tgz";
+        sha1 = "68e32591df73e25ad1c4b49108a2ec507962bfd1";
       };
     }
     {
-      name = "svgo___svgo_1.3.0.tgz";
+      name = "svg_parser___svg_parser_2.0.3.tgz";
       path = fetchurl {
-        name = "svgo___svgo_1.3.0.tgz";
-        url  = "https://registry.yarnpkg.com/svgo/-/svgo-1.3.0.tgz";
-        sha1 = "bae51ba95ded9a33a36b7c46ce9c359ae9154313";
+        name = "svg_parser___svg_parser_2.0.3.tgz";
+        url  = "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.3.tgz";
+        sha1 = "a38f2e4e5442986f7ecb554c11f1411cfcf8c2b9";
+      };
+    }
+    {
+      name = "svgo___svgo_1.3.2.tgz";
+      path = fetchurl {
+        name = "svgo___svgo_1.3.2.tgz";
+        url  = "https://registry.yarnpkg.com/svgo/-/svgo-1.3.2.tgz";
+        sha1 = "b6dc511c063346c9e415b81e43401145b96d4167";
       };
     }
     {
@@ -10778,19 +11058,27 @@
       };
     }
     {
-      name = "terser_webpack_plugin___terser_webpack_plugin_1.4.1.tgz";
+      name = "terser_webpack_plugin___terser_webpack_plugin_2.3.4.tgz";
       path = fetchurl {
-        name = "terser_webpack_plugin___terser_webpack_plugin_1.4.1.tgz";
-        url  = "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.1.tgz";
-        sha1 = "61b18e40eaee5be97e771cdbb10ed1280888c2b4";
+        name = "terser_webpack_plugin___terser_webpack_plugin_2.3.4.tgz";
+        url  = "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-2.3.4.tgz";
+        sha1 = "ac045703bd8da0936ce910d8fb6350d0e1dee5fe";
       };
     }
     {
-      name = "terser___terser_4.3.9.tgz";
+      name = "terser_webpack_plugin___terser_webpack_plugin_1.4.3.tgz";
       path = fetchurl {
-        name = "terser___terser_4.3.9.tgz";
-        url  = "https://registry.yarnpkg.com/terser/-/terser-4.3.9.tgz";
-        sha1 = "e4be37f80553d02645668727777687dad26bbca8";
+        name = "terser_webpack_plugin___terser_webpack_plugin_1.4.3.tgz";
+        url  = "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz";
+        sha1 = "5ecaf2dbdc5fb99745fd06791f46fc9ddb1c9a7c";
+      };
+    }
+    {
+      name = "terser___terser_4.6.3.tgz";
+      path = fetchurl {
+        name = "terser___terser_4.6.3.tgz";
+        url  = "https://registry.yarnpkg.com/terser/-/terser-4.6.3.tgz";
+        sha1 = "e33aa42461ced5238d352d2df2a67f21921f8d87";
       };
     }
     {
@@ -10954,14 +11242,6 @@
       };
     }
     {
-      name = "tough_cookie___tough_cookie_2.4.3.tgz";
-      path = fetchurl {
-        name = "tough_cookie___tough_cookie_2.4.3.tgz";
-        url  = "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz";
-        sha1 = "53f36da3f47783b0925afa06ff9f3b165280f781";
-      };
-    }
-    {
       name = "tr46___tr46_1.0.1.tgz";
       path = fetchurl {
         name = "tr46___tr46_1.0.1.tgz";
@@ -10970,19 +11250,27 @@
       };
     }
     {
-      name = "ts_pnp___ts_pnp_1.1.4.tgz";
+      name = "ts_pnp___ts_pnp_1.1.5.tgz";
+      path = fetchurl {
+        name = "ts_pnp___ts_pnp_1.1.5.tgz";
+        url  = "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.5.tgz";
+        sha1 = "840e0739c89fce5f3abd9037bb091dbff16d9dec";
+      };
+    }
+    {
+      name = "ts_pnp___ts_pnp_1.1.6.tgz";
       path = fetchurl {
-        name = "ts_pnp___ts_pnp_1.1.4.tgz";
-        url  = "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.4.tgz";
-        sha1 = "ae27126960ebaefb874c6d7fa4729729ab200d90";
+        name = "ts_pnp___ts_pnp_1.1.6.tgz";
+        url  = "https://registry.yarnpkg.com/ts-pnp/-/ts-pnp-1.1.6.tgz";
+        sha1 = "389a24396d425a0d3162e96d2b4638900fdc289a";
       };
     }
     {
-      name = "tslib___tslib_1.10.0.tgz";
+      name = "tslib___tslib_1.11.0.tgz";
       path = fetchurl {
-        name = "tslib___tslib_1.10.0.tgz";
-        url  = "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz";
-        sha1 = "c3c19f95973fb0a62973fb09d90d961ee43e5c8a";
+        name = "tslib___tslib_1.11.0.tgz";
+        url  = "https://registry.yarnpkg.com/tslib/-/tslib-1.11.0.tgz";
+        sha1 = "f1f3528301621a53220d58373ae510ff747a66bc";
       };
     }
     {
@@ -11034,11 +11322,11 @@
       };
     }
     {
-      name = "type_fest___type_fest_0.5.2.tgz";
+      name = "type_fest___type_fest_0.8.1.tgz";
       path = fetchurl {
-        name = "type_fest___type_fest_0.5.2.tgz";
-        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.5.2.tgz";
-        sha1 = "d6ef42a0356c6cd45f49485c3b6281fc148e48a2";
+        name = "type_fest___type_fest_0.8.1.tgz";
+        url  = "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz";
+        sha1 = "09e249ebde851d3b1e48d27c105444667f17b83d";
       };
     }
     {
@@ -11058,6 +11346,14 @@
       };
     }
     {
+      name = "type___type_2.0.0.tgz";
+      path = fetchurl {
+        name = "type___type_2.0.0.tgz";
+        url  = "https://registry.yarnpkg.com/type/-/type-2.0.0.tgz";
+        sha1 = "5f16ff6ef2eb44f260494dae271033b29c09a9c3";
+      };
+    }
+    {
       name = "typed_styles___typed_styles_0.0.7.tgz";
       path = fetchurl {
         name = "typed_styles___typed_styles_0.0.7.tgz";
@@ -11074,35 +11370,11 @@
       };
     }
     {
-      name = "typescript___typescript_3.7.2.tgz";
-      path = fetchurl {
-        name = "typescript___typescript_3.7.2.tgz";
-        url  = "https://registry.yarnpkg.com/typescript/-/typescript-3.7.2.tgz";
-        sha1 = "27e489b95fa5909445e9fef5ee48d81697ad18fb";
-      };
-    }
-    {
-      name = "ua_parser_js___ua_parser_js_0.7.20.tgz";
-      path = fetchurl {
-        name = "ua_parser_js___ua_parser_js_0.7.20.tgz";
-        url  = "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.20.tgz";
-        sha1 = "7527178b82f6a62a0f243d1f94fd30e3e3c21098";
-      };
-    }
-    {
-      name = "uglify_js___uglify_js_3.4.10.tgz";
-      path = fetchurl {
-        name = "uglify_js___uglify_js_3.4.10.tgz";
-        url  = "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.4.10.tgz";
-        sha1 = "9ad9563d8eb3acdfb8d38597d2af1d815f6a755f";
-      };
-    }
-    {
-      name = "uglify_js___uglify_js_3.6.2.tgz";
+      name = "typescript___typescript_3.8.2.tgz";
       path = fetchurl {
-        name = "uglify_js___uglify_js_3.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.6.2.tgz";
-        sha1 = "fd8048c86d990ddd29fe99d3300e0cb329103f4d";
+        name = "typescript___typescript_3.8.2.tgz";
+        url  = "https://registry.yarnpkg.com/typescript/-/typescript-3.8.2.tgz";
+        sha1 = "91d6868aaead7da74f493c553aeff76c0c0b1d5a";
       };
     }
     {
@@ -11218,14 +11490,6 @@
       };
     }
     {
-      name = "upper_case___upper_case_1.1.3.tgz";
-      path = fetchurl {
-        name = "upper_case___upper_case_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz";
-        sha1 = "f6b4501c2ec4cdd26ba78be7222961de77621598";
-      };
-    }
-    {
       name = "uri_js___uri_js_4.2.2.tgz";
       path = fetchurl {
         name = "uri_js___uri_js_4.2.2.tgz";
@@ -11242,11 +11506,11 @@
       };
     }
     {
-      name = "url_loader___url_loader_2.1.0.tgz";
+      name = "url_loader___url_loader_2.3.0.tgz";
       path = fetchurl {
-        name = "url_loader___url_loader_2.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/url-loader/-/url-loader-2.1.0.tgz";
-        sha1 = "bcc1ecabbd197e913eca23f5e0378e24b4412961";
+        name = "url_loader___url_loader_2.3.0.tgz";
+        url  = "https://registry.yarnpkg.com/url-loader/-/url-loader-2.3.0.tgz";
+        sha1 = "e0e2ef658f003efb8ca41b0f3ffbf76bab88658b";
       };
     }
     {
@@ -11290,6 +11554,14 @@
       };
     }
     {
+      name = "util.promisify___util.promisify_1.0.1.tgz";
+      path = fetchurl {
+        name = "util.promisify___util.promisify_1.0.1.tgz";
+        url  = "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz";
+        sha1 = "6baf7774b80eeb0f7520d8b81d07982a59abbaee";
+      };
+    }
+    {
       name = "util___util_0.10.3.tgz";
       path = fetchurl {
         name = "util___util_0.10.3.tgz";
@@ -11322,11 +11594,11 @@
       };
     }
     {
-      name = "uuid___uuid_3.3.3.tgz";
+      name = "uuid___uuid_3.4.0.tgz";
       path = fetchurl {
-        name = "uuid___uuid_3.3.3.tgz";
-        url  = "https://registry.yarnpkg.com/uuid/-/uuid-3.3.3.tgz";
-        sha1 = "4568f0216e78760ee1dbf3a4d2cf53e224112866";
+        name = "uuid___uuid_3.4.0.tgz";
+        url  = "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz";
+        sha1 = "b23e4358afa8a202fe7a100af1f5f883f02007ee";
       };
     }
     {
@@ -11354,11 +11626,11 @@
       };
     }
     {
-      name = "vendors___vendors_1.0.3.tgz";
+      name = "vendors___vendors_1.0.4.tgz";
       path = fetchurl {
-        name = "vendors___vendors_1.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/vendors/-/vendors-1.0.3.tgz";
-        sha1 = "a6467781abd366217c050f8202e7e50cc9eef8c0";
+        name = "vendors___vendors_1.0.4.tgz";
+        url  = "https://registry.yarnpkg.com/vendors/-/vendors-1.0.4.tgz";
+        sha1 = "e2b800a53e7a29b93506c3cf41100d16c4c4ad8e";
       };
     }
     {
@@ -11370,11 +11642,11 @@
       };
     }
     {
-      name = "vm_browserify___vm_browserify_1.1.0.tgz";
+      name = "vm_browserify___vm_browserify_1.1.2.tgz";
       path = fetchurl {
-        name = "vm_browserify___vm_browserify_1.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.0.tgz";
-        sha1 = "bd76d6a23323e2ca8ffa12028dc04559c75f9019";
+        name = "vm_browserify___vm_browserify_1.1.2.tgz";
+        url  = "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-1.1.2.tgz";
+        sha1 = "78641c488b8e6ca91a75f511e7a3b32a86e5dda0";
       };
     }
     {
@@ -11402,14 +11674,6 @@
       };
     }
     {
-      name = "warning___warning_3.0.0.tgz";
-      path = fetchurl {
-        name = "warning___warning_3.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz";
-        sha1 = "32e5377cb572de4ab04753bdf8821c01ed605b7c";
-      };
-    }
-    {
       name = "warning___warning_4.0.3.tgz";
       path = fetchurl {
         name = "warning___warning_4.0.3.tgz";
@@ -11450,11 +11714,11 @@
       };
     }
     {
-      name = "webpack_dev_server___webpack_dev_server_3.2.1.tgz";
+      name = "webpack_dev_server___webpack_dev_server_3.10.2.tgz";
       path = fetchurl {
-        name = "webpack_dev_server___webpack_dev_server_3.2.1.tgz";
-        url  = "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.2.1.tgz";
-        sha1 = "1b45ce3ecfc55b6ebe5e36dab2777c02bc508c4e";
+        name = "webpack_dev_server___webpack_dev_server_3.10.2.tgz";
+        url  = "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-3.10.2.tgz";
+        sha1 = "3403287d674c7407aab6d9b3f72259ecd0aa0874";
       };
     }
     {
@@ -11466,11 +11730,11 @@
       };
     }
     {
-      name = "webpack_manifest_plugin___webpack_manifest_plugin_2.1.1.tgz";
+      name = "webpack_manifest_plugin___webpack_manifest_plugin_2.2.0.tgz";
       path = fetchurl {
-        name = "webpack_manifest_plugin___webpack_manifest_plugin_2.1.1.tgz";
-        url  = "https://registry.yarnpkg.com/webpack-manifest-plugin/-/webpack-manifest-plugin-2.1.1.tgz";
-        sha1 = "6b3e280327815b83152c79f42d0ca13b665773c4";
+        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";
       };
     }
     {
@@ -11482,11 +11746,11 @@
       };
     }
     {
-      name = "webpack___webpack_4.41.0.tgz";
+      name = "webpack___webpack_4.41.5.tgz";
       path = fetchurl {
-        name = "webpack___webpack_4.41.0.tgz";
-        url  = "https://registry.yarnpkg.com/webpack/-/webpack-4.41.0.tgz";
-        sha1 = "db6a254bde671769f7c14e90a1a55e73602fc70b";
+        name = "webpack___webpack_4.41.5.tgz";
+        url  = "https://registry.yarnpkg.com/webpack/-/webpack-4.41.5.tgz";
+        sha1 = "3210f1886bce5310e62bb97204d18c263341b77c";
       };
     }
     {
@@ -11546,11 +11810,11 @@
       };
     }
     {
-      name = "whatwg_url___whatwg_url_7.0.0.tgz";
+      name = "whatwg_url___whatwg_url_7.1.0.tgz";
       path = fetchurl {
-        name = "whatwg_url___whatwg_url_7.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.0.0.tgz";
-        sha1 = "fde926fa54a599f3adf82dff25a9f7be02dc6edd";
+        name = "whatwg_url___whatwg_url_7.1.0.tgz";
+        url  = "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.1.0.tgz";
+        sha1 = "c2c492f1eca612988efd3d2266be1b9fc6170d06";
       };
     }
     {
@@ -11570,27 +11834,27 @@
       };
     }
     {
-      name = "wide_align___wide_align_1.1.3.tgz";
+      name = "which___which_2.0.2.tgz";
       path = fetchurl {
-        name = "wide_align___wide_align_1.1.3.tgz";
-        url  = "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz";
-        sha1 = "ae074e6bdc0c14a431e804e624549c633b000457";
+        name = "which___which_2.0.2.tgz";
+        url  = "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz";
+        sha1 = "7c6a8dd0a636a0327e10b59c9286eee93f3f51b1";
       };
     }
     {
-      name = "wordwrap___wordwrap_0.0.3.tgz";
+      name = "wide_align___wide_align_1.1.3.tgz";
       path = fetchurl {
-        name = "wordwrap___wordwrap_0.0.3.tgz";
-        url  = "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz";
-        sha1 = "a3d5da6cd5c0bc0008d37234bbaf1bed63059107";
+        name = "wide_align___wide_align_1.1.3.tgz";
+        url  = "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz";
+        sha1 = "ae074e6bdc0c14a431e804e624549c633b000457";
       };
     }
     {
-      name = "wordwrap___wordwrap_1.0.0.tgz";
+      name = "word_wrap___word_wrap_1.2.3.tgz";
       path = fetchurl {
-        name = "wordwrap___wordwrap_1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz";
-        sha1 = "27584810891456a4171c8d0226441ade90cbcaeb";
+        name = "word_wrap___word_wrap_1.2.3.tgz";
+        url  = "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz";
+        sha1 = "610636f6b1f703891bd34771ccb17fb93b47079c";
       };
     }
     {
@@ -11794,11 +12058,11 @@
       };
     }
     {
-      name = "ws___ws_7.1.2.tgz";
+      name = "ws___ws_7.2.1.tgz";
       path = fetchurl {
-        name = "ws___ws_7.1.2.tgz";
-        url  = "https://registry.yarnpkg.com/ws/-/ws-7.1.2.tgz";
-        sha1 = "c672d1629de8bb27a9699eb599be47aeeedd8f73";
+        name = "ws___ws_7.2.1.tgz";
+        url  = "https://registry.yarnpkg.com/ws/-/ws-7.2.1.tgz";
+        sha1 = "03ed52423cd744084b2cf42ed197c8b65a936b8e";
       };
     }
     {
@@ -11818,14 +12082,6 @@
       };
     }
     {
-      name = "xregexp___xregexp_4.0.0.tgz";
-      path = fetchurl {
-        name = "xregexp___xregexp_4.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/xregexp/-/xregexp-4.0.0.tgz";
-        sha1 = "e698189de49dd2a18cc5687b05e17c8e43943020";
-      };
-    }
-    {
       name = "xtend___xtend_4.0.2.tgz";
       path = fetchurl {
         name = "xtend___xtend_4.0.2.tgz";
@@ -11850,11 +12106,27 @@
       };
     }
     {
-      name = "yargs_parser___yargs_parser_10.1.0.tgz";
+      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.7.2.tgz";
+      path = fetchurl {
+        name = "yaml___yaml_1.7.2.tgz";
+        url  = "https://registry.yarnpkg.com/yaml/-/yaml-1.7.2.tgz";
+        sha1 = "f26aabf738590ab61efaca502358e48dc9f348b2";
+      };
+    }
+    {
+      name = "yargs_parser___yargs_parser_11.1.1.tgz";
       path = fetchurl {
-        name = "yargs_parser___yargs_parser_10.1.0.tgz";
-        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-10.1.0.tgz";
-        sha1 = "7202265b89f7e9e9f2e5765e0fe735a905edbaa8";
+        name = "yargs_parser___yargs_parser_11.1.1.tgz";
+        url  = "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz";
+        sha1 = "879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4";
       };
     }
     {
@@ -11866,11 +12138,11 @@
       };
     }
     {
-      name = "yargs___yargs_12.0.2.tgz";
+      name = "yargs___yargs_12.0.5.tgz";
       path = fetchurl {
-        name = "yargs___yargs_12.0.2.tgz";
-        url  = "https://registry.yarnpkg.com/yargs/-/yargs-12.0.2.tgz";
-        sha1 = "fe58234369392af33ecbef53819171eff0f5aadc";
+        name = "yargs___yargs_12.0.5.tgz";
+        url  = "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz";
+        sha1 = "05f5997b609647b64f66b81e3b4b10a368e7ad13";
       };
     }
     {
diff --git a/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix b/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix
index 1a7a2ebdf21..240dc626331 100644
--- a/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/wireguard-exporter.nix
@@ -2,25 +2,19 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "wireguard-exporter";
-  version = "3.2.2";
+  version = "3.3.0";
 
   src = fetchFromGitHub {
     owner = "MindFlavor";
     repo = "prometheus_wireguard_exporter";
     rev = version;
-    sha256 = "18khym7ygj29w98zf6i1l5c2pz84zla2z34l5jnh595xvwfl94pc";
+    sha256 = "1c6zadqnn4b83yglcdn1hw54jj1c4makbdy6fli3cfb7sha1ynml";
   };
 
-  cargoSha256 = "0m7xa610k260gxn2xg6bc2y6fww0p72mvvik7278j2d15044c4yl";
+  cargoSha256 = "148982ypkxhab2kmijk9zwwi5l6nk4rcdwaz0r1j9fni47q49f35";
 
   buildInputs = lib.optional stdenv.isDarwin Security;
 
-  # Commonly used hack in nixpkgs to allow unstable features on a stable rustc. This is needed
-  # since `prometheus_exporter_base` uses `#!feature[]` to enable async which
-  # is actually not needed as `async` is part of rustc 1.39.0-stable. This can be removed
-  # as soon as https://github.com/MindFlavor/prometheus_exporter_base/pull/15 is merged.
-  RUSTC_BOOTSTRAP = 1;
-
   meta = with lib; {
     description = "A Prometheus exporter for WireGuard, written in Rust.";
     homepage = "https://github.com/MindFlavor/prometheus_wireguard_exporter";
diff --git a/pkgs/servers/monitoring/riemann-dash/Gemfile.lock b/pkgs/servers/monitoring/riemann-dash/Gemfile.lock
index ed780f6ce4b..51e1bcc7948 100644
--- a/pkgs/servers/monitoring/riemann-dash/Gemfile.lock
+++ b/pkgs/servers/monitoring/riemann-dash/Gemfile.lock
@@ -35,4 +35,4 @@ DEPENDENCIES
   riemann-dash (= 0.2.14)
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/servers/monitoring/sensu-go/default.nix b/pkgs/servers/monitoring/sensu-go/default.nix
index adba0277bf7..f109b08d1a6 100644
--- a/pkgs/servers/monitoring/sensu-go/default.nix
+++ b/pkgs/servers/monitoring/sensu-go/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 let
   generic = { subPackages, pname, postInstall ? "" }:
@@ -20,8 +20,6 @@ let
 
       modSha256 = "02h4cav6ivzs3z0qakwxzf5lfy6hzax5c0i2icp0qymqc2789npw";
 
-      buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
       buildFlagsArray = let
         versionPkg = "github.com/sensu/sensu-go/version";
       in ''
@@ -30,11 +28,11 @@ let
           -X ${versionPkg}.BuildSHA=${shortRev}
       '';
 
-      meta = with stdenv.lib; {
+      meta = {
         homepage = "https://sensu.io";
         description = "Open source monitoring tool for ephemeral infrastructure & distributed applications";
-        license = licenses.mit;
-        maintainers = with maintainers; [ thefloweringash ];
+        license = lib.licenses.mit;
+        maintainers = with lib.maintainers; [ thefloweringash ];
       };
     };
 in
diff --git a/pkgs/servers/monitoring/sensu/Gemfile.lock b/pkgs/servers/monitoring/sensu/Gemfile.lock
index 2d0b31e999f..9b36bb090f6 100644
--- a/pkgs/servers/monitoring/sensu/Gemfile.lock
+++ b/pkgs/servers/monitoring/sensu/Gemfile.lock
@@ -159,4 +159,4 @@ DEPENDENCIES
   sensu-plugins-systemd
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/servers/monitoring/telegraf/default.nix b/pkgs/servers/monitoring/telegraf/default.nix
index c6189e12471..4785d78ab18 100644
--- a/pkgs/servers/monitoring/telegraf/default.nix
+++ b/pkgs/servers/monitoring/telegraf/default.nix
@@ -1,8 +1,8 @@
-{ lib, buildGoPackage, fetchFromGitHub, nixosTests }:
+{ lib, buildGoModule, fetchFromGitHub, nixosTests }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "telegraf";
-  version = "1.13.4";
+  version = "1.14.0";
 
   goPackagePath = "github.com/influxdata/telegraf";
 
@@ -13,22 +13,22 @@ buildGoPackage rec {
   src = fetchFromGitHub {
     owner = "influxdata";
     repo = "telegraf";
-    rev = version;
-    sha256 = "031hq9dg87cqj4am7qkbgfan2s6bqc2hf48h0gnrv78hbz8icxa1";
+    rev = "v${version}";
+    sha256 = "062j4sm7im4iv5i9afr771724srvwwcqbhkyznlzncaz06mk1sn7";
   };
 
+  modSha256 = "1q7il1x1pfyz15z23cs0kk7zyacn6b3y28b1q52bqi30l1x8bdbp";
+
   buildFlagsArray = [ ''-ldflags=
     -w -s -X main.version=${version}
   '' ];
 
   passthru.tests = { inherit (nixosTests) telegraf; };
 
-  goDeps = ./deps.nix;
-
   meta = with lib; {
     description = "The plugin-driven server agent for collecting & reporting metrics.";
     license = licenses.mit;
-    homepage = https://www.influxdata.com/time-series-platform/telegraf/;
+    homepage = "https://www.influxdata.com/time-series-platform/telegraf/";
     maintainers = with maintainers; [ mic92 roblabla foxit64 ];
   };
 }
diff --git a/pkgs/servers/monitoring/telegraf/deps.nix b/pkgs/servers/monitoring/telegraf/deps.nix
deleted file mode 100644
index 4292d9aa791..00000000000
--- a/pkgs/servers/monitoring/telegraf/deps.nix
+++ /dev/null
@@ -1,1344 +0,0 @@
-# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
-[
-  {
-    goPackagePath  = "cloud.google.com/go";
-    fetch = {
-      type = "git";
-      url = "https://code.googlesource.com/gocloud";
-      rev =  "c728a003b238b26cef9ab6753a5dc424b331c3ad";
-      sha256 = "010bxkx0gkbsn7xi6632xp2nq0577zx7imw16irxv8hzvq49q38i";
-    };
-  }
-  {
-    goPackagePath  = "code.cloudfoundry.org/clock";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cloudfoundry/clock";
-      rev =  "02e53af36e6c978af692887ed449b74026d76fec";
-      sha256 = "0bpfxf21flb9lqwjr95skaw58zajb54s62g3h68lcxxcp4gfdba4";
-    };
-  }
-  {
-    goPackagePath  = "collectd.org";
-    fetch = {
-      type = "git";
-      url = "https://github.com/collectd/go-collectd";
-      rev =  "2ce144541b8903101fb8f1483cc0497a68798122";
-      sha256 = "0rr9rnc777jk27a7yxhdb7vgkj493158a8k6q44x51s30dkp78x3";
-    };
-  }
-  {
-    goPackagePath  = "contrib.go.opencensus.io/exporter/stackdriver";
-    fetch = {
-      type = "git";
-      url = "https://github.com/census-ecosystem/opencensus-go-exporter-stackdriver";
-      rev =  "2b93072101d466aa4120b3c23c2e1b08af01541c";
-      sha256 = "0qhxpfmzn5jsh1qrq7w2zkg87xvalqam2ciq65qfq38mfkssda3v";
-    };
-  }
-  {
-    goPackagePath  = "github.com/Azure/azure-pipeline-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/azure-pipeline-go";
-      rev =  "b8e3409182fd52e74f7d7bdfbff5833591b3b655";
-      sha256 = "0p2m31l893377na7dmsjfpjd5swqnb7p0vhsng3vyn237i8f1336";
-    };
-  }
-  {
-    goPackagePath  = "github.com/Azure/azure-storage-queue-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/azure-storage-queue-go";
-      rev =  "6ed74e755687d1a74f08d9aab5a9e3f2fbe7d162";
-      sha256 = "0zw9hcbgsbzy2k3ipbnv95kfp7f24qbr3hgw89pnsf29hld27hba";
-    };
-  }
-  {
-    goPackagePath  = "github.com/Azure/go-autorest";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/go-autorest";
-      rev =  "3492b2aff5036c67228ab3c7dba3577c871db200";
-      sha256 = "0ih4vjcfsgd575971cdkmpbpk0s1j562ryl5qrh9f4ddn2l85x74";
-    };
-  }
-  {
-    goPackagePath  = "github.com/Microsoft/ApplicationInsights-Go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Microsoft/ApplicationInsights-Go";
-      rev =  "d2df5d440eda5372f24fcac03839a64d6cb5f7e5";
-      sha256 = "0lr7cq5ghphm94y13injczg2fzxljql0xlw5sj61hfba50lvmbs5";
-    };
-  }
-  {
-    goPackagePath  = "github.com/Microsoft/go-winio";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Microsoft/go-winio";
-      rev =  "a6d595ae73cf27a1b8fc32930668708f45ce1c85";
-      sha256 = "1plx73f1hm6czcdwcw2sl9xqyq3dnsrd92m2y2yzhcy5y369dijj";
-    };
-  }
-  {
-    goPackagePath  = "github.com/Shopify/sarama";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Shopify/sarama";
-      rev =  "675b0b1ff204c259877004140a540d6adf38db17";
-      sha256 = "0h63maidp2yzjvrk4pd9b51frdw8yym91k6s1vcqzmcx4956gq72";
-    };
-  }
-  {
-    goPackagePath  = "github.com/StackExchange/wmi";
-    fetch = {
-      type = "git";
-      url = "https://github.com/StackExchange/wmi";
-      rev =  "5d049714c4a64225c3c79a7cf7d02f7fb5b96338";
-      sha256 = "1slw6v1fl8i0hz4db9lph55pbhnrxhqyndq6vm27dgvpj22k29fk";
-    };
-  }
-  {
-    goPackagePath  = "github.com/aerospike/aerospike-client-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/aerospike/aerospike-client-go";
-      rev =  "1dc8cf203d24cd454e71ce40ab4cd0bf3112df90";
-      sha256 = "0mzw88fdggmrab6yavq702lq2x2k785gy6ag5ryl5n5k6bqnlp13";
-    };
-  }
-  {
-    goPackagePath  = "github.com/alecthomas/units";
-    fetch = {
-      type = "git";
-      url = "https://github.com/alecthomas/units";
-      rev =  "2efee857e7cfd4f3d0138cc3cbb1b4966962b93a";
-      sha256 = "1j65b91qb9sbrml9cpabfrcf07wmgzzghrl7809hjjhrmbzri5bl";
-    };
-  }
-  {
-    goPackagePath  = "github.com/amir/raidman";
-    fetch = {
-      type = "git";
-      url = "https://github.com/amir/raidman";
-      rev =  "1ccc43bfb9c93cb401a4025e49c64ba71e5e668b";
-      sha256 = "074ckbyslrwn23q4x01hn3j7c3xngagn36lbli2g51n9j3x14jxr";
-    };
-  }
-  {
-    goPackagePath  = "github.com/apache/thrift";
-    fetch = {
-      type = "git";
-      url = "https://github.com/apache/thrift";
-      rev =  "f2867c24984aa53edec54a138c03db934221bdea";
-      sha256 = "1k72gjsxa2xzwn5rikc5pm5n025bkr3hl2nhv0x65i7rp3bda2qb";
-    };
-  }
-  {
-    goPackagePath  = "github.com/aws/aws-sdk-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/aws/aws-sdk-go";
-      rev =  "5312c8dac9067d339c4e68d7e0dd5507b2f01849";
-      sha256 = "1ddm89qbnmnr6dh040m7093mn2zk15ncvdnw9w1ifj75sn5q69pn";
-    };
-  }
-  {
-    goPackagePath  = "github.com/beorn7/perks";
-    fetch = {
-      type = "git";
-      url = "https://github.com/beorn7/perks";
-      rev =  "3a771d992973f24aa725d07868b467d1ddfceafb";
-      sha256 = "1l2lns4f5jabp61201sh88zf3b0q793w4zdgp9nll7mmfcxxjif3";
-    };
-  }
-  {
-    goPackagePath  = "github.com/caio/go-tdigest";
-    fetch = {
-      type = "git";
-      url = "https://github.com/caio/go-tdigest";
-      rev =  "f3c8d94f65d3096ac96eda54ffcd10c0fe1477f1";
-      sha256 = "0w3imv58rhb34x63w8m0k18yr6bnc2bf2rpz23dh82yvdg57nl6r";
-    };
-  }
-  {
-    goPackagePath  = "github.com/cenkalti/backoff";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cenkalti/backoff";
-      rev =  "2ea60e5f094469f9e65adb9cd103795b73ae743e";
-      sha256 = "0k4899ifpir6kmfxli8a2xfj5zdh0xb2jd0fq2r38wzd4pk25ipr";
-    };
-  }
-  {
-    goPackagePath  = "github.com/cisco-ie/nx-telemetry-proto";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cisco-ie/nx-telemetry-proto";
-      rev =  "82441e232cf6af9be0f808bf0c6421ee8519880e";
-      sha256 = "15l4a71hmw6w9pkq2dh1lpjb7sjq0v57qn8wkdhsyls3f2bczw9p";
-    };
-  }
-  {
-    goPackagePath  = "github.com/couchbase/go-couchbase";
-    fetch = {
-      type = "git";
-      url = "https://github.com/couchbase/go-couchbase";
-      rev =  "16db1f1fe037412f12738fa4d8448c549c4edd77";
-      sha256 = "0ivlzin23a3s9jj8764mr9rwy3hw5bd97gfv0zc2vzdd3psi28g2";
-    };
-  }
-  {
-    goPackagePath  = "github.com/couchbase/gomemcached";
-    fetch = {
-      type = "git";
-      url = "https://github.com/couchbase/gomemcached";
-      rev =  "0da75df145308b9a4e6704d762ca9d9b77752efc";
-      sha256 = "0sscy1n3vpi1gcpzw2vh8a7mnvg8nlxc37b6580k6h7xbpx1mq9z";
-    };
-  }
-  {
-    goPackagePath  = "github.com/couchbase/goutils";
-    fetch = {
-      type = "git";
-      url = "https://github.com/couchbase/goutils";
-      rev =  "e865a1461c8ac0032bd37e2d4dab3289faea3873";
-      sha256 = "1306m4gbm555akni5rwwgafkq7j1ps8k40lfrvib5jv5pgdygrcd";
-    };
-  }
-  {
-    goPackagePath  = "github.com/davecgh/go-spew";
-    fetch = {
-      type = "git";
-      url = "https://github.com/davecgh/go-spew";
-      rev =  "346938d642f2ec3594ed81d874461961cd0faa76";
-      sha256 = "0d4jfmak5p6lb7n2r6yvf5p1zcw0l8j74kn55ghvr7zr7b7axm6c";
-    };
-  }
-  {
-    goPackagePath  = "github.com/denisenkom/go-mssqldb";
-    fetch = {
-      type = "git";
-      url = "https://github.com/denisenkom/go-mssqldb";
-      rev =  "2be1aa521ff4499e74b7861a2779ba1e96e3e2c5";
-      sha256 = "0c502ycxg7sdnpvwky5wm2xbxw03lspsjxbmvpabp78dlf3gnmhb";
-    };
-  }
-  {
-    goPackagePath  = "github.com/dgrijalva/jwt-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dgrijalva/jwt-go";
-      rev =  "06ea1031745cb8b3dab3f6a236daf2b0aa468b7e";
-      sha256 = "08m27vlms74pfy5z79w67f9lk9zkx6a9jd68k3c4msxy75ry36mp";
-    };
-  }
-  {
-    goPackagePath  = "github.com/dimchansky/utfbom";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dimchansky/utfbom";
-      rev =  "d2133a1ce379ef6fa992b0514a77146c60db9d1c";
-      sha256 = "06s61wwd32fad1p8qn5blqjd5791avzb13fnqflkkg993adw49ww";
-    };
-  }
-  {
-    goPackagePath  = "github.com/docker/distribution";
-    fetch = {
-      type = "git";
-      url = "https://github.com/docker/distribution";
-      rev =  "edc3ab29cdff8694dd6feb85cfeb4b5f1b38ed9c";
-      sha256 = "1nqjaq1q6fs3c0avpb02sib0a906xfbk3m74hk2mqjdbyx9y8b4m";
-    };
-  }
-  {
-    goPackagePath  = "github.com/docker/docker";
-    fetch = {
-      type = "git";
-      url = "https://github.com/docker/docker";
-      rev =  "ed7b6428c133e7c59404251a09b7d6b02fa83cc2";
-      sha256 = "0da19ndf29jsy3w0ddw05hnw8m5hmrr9p70g02z3icjydl387mrs";
-    };
-  }
-  {
-    goPackagePath  = "github.com/docker/go-connections";
-    fetch = {
-      type = "git";
-      url = "https://github.com/docker/go-connections";
-      rev =  "3ede32e2033de7505e6500d6c868c2b9ed9f169d";
-      sha256 = "0v1pkr8apwmhyzbjfriwdrs1ihlk6pw7izm57r24mf9jdmg3fyb0";
-    };
-  }
-  {
-    goPackagePath  = "github.com/docker/go-units";
-    fetch = {
-      type = "git";
-      url = "https://github.com/docker/go-units";
-      rev =  "47565b4f722fb6ceae66b95f853feed578a4a51c";
-      sha256 = "0npxsb3pp89slwf4a73fxm20hykad8xggij6i6hcd5jy19bjrd93";
-    };
-  }
-  {
-    goPackagePath  = "github.com/docker/libnetwork";
-    fetch = {
-      type = "git";
-      url = "https://github.com/docker/libnetwork";
-      rev =  "d7b61745d16675c9f548b19f06fda80d422a74f0";
-      sha256 = "1mbdhgy14gl8263cynfv210ag6gm6i6yply9i022ib3y2s5ffxhd";
-    };
-  }
-  {
-    goPackagePath  = "github.com/eapache/go-resiliency";
-    fetch = {
-      type = "git";
-      url = "https://github.com/eapache/go-resiliency";
-      rev =  "ea41b0fad31007accc7f806884dcdf3da98b79ce";
-      sha256 = "1zmgw3c4w5r6m2r340n4jc5l5ll3m3nbszqrmrgbqc2xixxyk2gx";
-    };
-  }
-  {
-    goPackagePath  = "github.com/eapache/go-xerial-snappy";
-    fetch = {
-      type = "git";
-      url = "https://github.com/eapache/go-xerial-snappy";
-      rev =  "040cc1a32f578808623071247fdbd5cc43f37f5f";
-      sha256 = "1y3gs5ghf8wza8k85hcy98g9ygcfb6k3zhiac4nnyrahwckf5whz";
-    };
-  }
-  {
-    goPackagePath  = "github.com/eapache/queue";
-    fetch = {
-      type = "git";
-      url = "https://github.com/eapache/queue";
-      rev =  "44cc805cf13205b55f69e14bcb69867d1ae92f98";
-      sha256 = "07dp54n94gn3gsvdcki56yqh7py7wqqigxbamhxwgbr05n61fqyg";
-    };
-  }
-  {
-    goPackagePath  = "github.com/eclipse/paho.mqtt.golang";
-    fetch = {
-      type = "git";
-      url = "https://github.com/eclipse/paho.mqtt.golang";
-      rev =  "adca289fdcf8c883800aafa545bc263452290bae";
-      sha256 = "1f81ia8pkfz2084bla4kirrh7yrfg8dy11gsi84m75j25nf762zn";
-    };
-  }
-  {
-    goPackagePath  = "github.com/ericchiang/k8s";
-    fetch = {
-      type = "git";
-      url = "https://github.com/ericchiang/k8s";
-      rev =  "d1bbc0cffaf9849ddcae7b9efffae33e2dd52e9a";
-      sha256 = "1qv7iggr4144g4bwqm1slnnjp6zs2dh370p4yfqp7id3sxk3893n";
-    };
-  }
-  {
-    goPackagePath  = "github.com/ghodss/yaml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/ghodss/yaml";
-      rev =  "25d852aebe32c875e9c044af3eef9c7dc6bc777f";
-      sha256 = "1w9yq0bxzygc4qwkwwiy7k1k1yviaspcqqv18255k2xkjv5ipccz";
-    };
-  }
-  {
-    goPackagePath  = "github.com/glinton/ping";
-    fetch = {
-      type = "git";
-      url = "https://github.com/glinton/ping";
-      rev =  "d3c0ecf4df108179eccdff2176f4ff569c3aab37";
-      sha256 = "172h22kv78ickxdhvl0lhaffylhg11ab4wb4nn15vcc164d6lwil";
-    };
-  }
-  {
-    goPackagePath  = "github.com/go-logfmt/logfmt";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-logfmt/logfmt";
-      rev =  "07c9b44f60d7ffdfb7d8efe1ad539965737836dc";
-      sha256 = "06smxc112xmixz78nyvk3b2hmc7wasf2sl5vxj1xz62kqcq9lzm9";
-    };
-  }
-  {
-    goPackagePath  = "github.com/go-ole/go-ole";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-ole/go-ole";
-      rev =  "a41e3c4b706f6ae8dfbff342b06e40fa4d2d0506";
-      sha256 = "114h8x7dh4jp7w7k678fm98lr9icavsf74v6jfipyq7q35bsfr1p";
-    };
-  }
-  {
-    goPackagePath  = "github.com/go-redis/redis";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-redis/redis";
-      rev =  "83fb42932f6145ce52df09860384a4653d2d332a";
-      sha256 = "0zrp1w6jcbnhk8q5fl3fm11j9s4yjyks2hzi6kwjhngzhjmdn1sh";
-    };
-  }
-  {
-    goPackagePath  = "github.com/go-sql-driver/mysql";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-sql-driver/mysql";
-      rev =  "72cd26f257d44c1114970e19afddcd812016007e";
-      sha256 = "1fvsvwc1v2i0gqn01mynvi1shp5xm0xaym6xng09fcbqb56lbjx1";
-    };
-  }
-  {
-    goPackagePath  = "github.com/gobwas/glob";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gobwas/glob";
-      rev =  "5ccd90ef52e1e632236f7326478d4faa74f99438";
-      sha256 = "0jxk1x806zn5x86342s72dq2qy64ksb3zrvrlgir2avjhwb18n6z";
-    };
-  }
-  {
-    goPackagePath  = "github.com/gofrs/uuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gofrs/uuid";
-      rev =  "3a54a6416087bae7aa0ac32dd79fe1bf87bc99e4";
-      sha256 = "0b0hnr7d8zxwk0djifffp8y8x71vv1i03r8y1wpzp79v54jz28m3";
-    };
-  }
-  {
-    goPackagePath  = "github.com/gogo/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gogo/protobuf";
-      rev =  "636bf0302bc95575d69441b25a2603156ffdddf1";
-      sha256 = "1525pq7r6h3s8dncvq8gxi893p2nq8dxpzvq0nfl5b4p6mq0v1c2";
-    };
-  }
-  {
-    goPackagePath  = "github.com/golang/mock";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/mock";
-      rev =  "9fa652df1129bef0e734c9cf9bf6dbae9ef3b9fa";
-      sha256 = "0wxsjz98v2df4cy1p297cyphdaja0bgg4d2w4kbhsaky022vn7g2";
-    };
-  }
-  {
-    goPackagePath  = "github.com/golang/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/protobuf";
-      rev =  "b4deda0973fb4c70b50d226b1af49f3da59f5265";
-      sha256 = "0ya4ha7m20bw048m1159ppqzlvda4x0vdprlbk5sdgmy74h3xcdq";
-    };
-  }
-  {
-    goPackagePath  = "github.com/golang/snappy";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/snappy";
-      rev =  "2e65f85255dbc3072edf28d6b5b8efc472979f5a";
-      sha256 = "05w6mpc4qcy0pv8a2bzng8nf4s5rf5phfang4jwy9rgf808q0nxf";
-    };
-  }
-  {
-    goPackagePath  = "github.com/google/go-cmp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-cmp";
-      rev =  "3af367b6b30c263d47e8895973edcca9a49cf029";
-      sha256 = "1fbv0x27k9sn8svafc0hjwsnckk864lv4yi7bvzrxvmd3d5hskds";
-    };
-  }
-  {
-    goPackagePath  = "github.com/google/go-github";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-github";
-      rev =  "7462feb2032c2da9e3b85e9b04e6853a6e9e14ca";
-      sha256 = "1sk43llk5fgb00l99rmrmfrk81da2gsvjl1m6r1k1chpjaghxj11";
-    };
-  }
-  {
-    goPackagePath  = "github.com/google/go-querystring";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-querystring";
-      rev =  "44c6ddd0a2342c386950e880b658017258da92fc";
-      sha256 = "0xl12bqyvmn4xcnf8p9ksj9rmnr7s40pvppsdmy8n9bzw1db0iwz";
-    };
-  }
-  {
-    goPackagePath  = "github.com/google/uuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/uuid";
-      rev =  "064e2069ce9c359c118179501254f67d7d37ba24";
-      sha256 = "1b1ibx3rbiv7xwa9kz4b4zpp1fza5cjnn8v6749b4vrkjjmp3rqb";
-    };
-  }
-  {
-    goPackagePath  = "github.com/googleapis/gax-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/googleapis/gax-go";
-      rev =  "317e0006254c44a0ac427cc52a0e083ff0b9622f";
-      sha256 = "0h92x579vbrv2fka8q2ddy1kq6a63qbqa8zc09ygl6skzn9gw1dh";
-    };
-  }
-  {
-    goPackagePath  = "github.com/gorilla/context";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gorilla/context";
-      rev =  "08b5f424b9271eedf6f9f0ce86cb9396ed337a42";
-      sha256 = "03p4hn87vcmfih0p9w663qbx9lpsf7i7j3lc7yl7n84la3yz63m4";
-    };
-  }
-  {
-    goPackagePath  = "github.com/gorilla/mux";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gorilla/mux";
-      rev =  "e3702bed27f0d39777b0b37b664b6280e8ef8fbf";
-      sha256 = "0pvzm23hklxysspnz52mih6h1q74vfrdhjfm1l3sa9r8hhqmmld2";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hailocab/go-hostpool";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hailocab/go-hostpool";
-      rev =  "e80d13ce29ede4452c43dea11e79b9bc8a15b478";
-      sha256 = "05ld4wp3illkbgl043yf8jq9y1ld0zzvrcg8jdij129j50xgfxny";
-    };
-  }
-  {
-    goPackagePath  = "github.com/harlow/kinesis-consumer";
-    fetch = {
-      type = "git";
-      url = "https://github.com/harlow/kinesis-consumer";
-      rev =  "2f58b136fee036f5de256b81a8461cc724fdf9df";
-      sha256 = "1m8ns5gipxxs2fkln494gqy1axhz8393cjan5wkdxc6xfchd0wa5";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/consul";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/consul";
-      rev =  "39f93f011e591c842acc8053a7f5972aa6e592fd";
-      sha256 = "0l255iy37m3mycdzk90629n8zjvi3cj8k2sxpm40h2r539ayawly";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/go-cleanhttp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/go-cleanhttp";
-      rev =  "d5fe4b57a186c716b0e00b8c301cbd9b4182694d";
-      sha256 = "1m20y90syky4xr81sm3980jpil81nnpzmi6kv0vjr6p584gl1hn8";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/go-rootcerts";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/go-rootcerts";
-      rev =  "6bb64b370b90e7ef1fa532be9e591a81c3493e00";
-      sha256 = "1a81fcm1i0ji2iva0dcimiichgwpbcb7lx0vyaks87zj5wf04qy9";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/go-uuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/go-uuid";
-      rev =  "4f571afc59f3043a65f8fe6bf46d887b10a01d43";
-      sha256 = "0jvb88m0rq41bwgirsadgw7mnayl27av3gd2vqa3xvxp3fy0hp5k";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/serf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/serf";
-      rev =  "d6574a5bb1226678d7010325fb6c985db20ee458";
-      sha256 = "1arakjvhyasrk52vhxas2ghlrby3i3wj59r7sjrkbpln2cdbqnlx";
-    };
-  }
-  {
-    goPackagePath  = "github.com/influxdata/go-syslog";
-    fetch = {
-      type = "git";
-      url = "https://github.com/influxdata/go-syslog";
-      rev =  "0cd00a9f0a5e5607d5ef9a294c260f77a74e3b5a";
-      sha256 = "0a8xbghb1s59viiqs8s8vd4ydqrf7z7nh020si4aqwmsm9gchkzz";
-    };
-  }
-  {
-    goPackagePath  = "github.com/influxdata/tail";
-    fetch = {
-      type = "git";
-      url = "https://github.com/influxdata/tail";
-      rev =  "c43482518d410361b6c383d7aebce33d0471d7bc";
-      sha256 = "0kf155nz9wvwawsbgaa76q4r975l7945nlvnh4ig60xm0jv8580b";
-    };
-  }
-  {
-    goPackagePath  = "github.com/influxdata/toml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/influxdata/toml";
-      rev =  "270119a8ce653b297f12189c9099ef1409979f2b";
-      sha256 = "1dprq2nx1kh78fqr6awir27ankjkbsjw2rza07ri5m2pxd3kxhsv";
-    };
-  }
-  {
-    goPackagePath  = "github.com/influxdata/wlog";
-    fetch = {
-      type = "git";
-      url = "https://github.com/influxdata/wlog";
-      rev =  "7c63b0a71ef8300adc255344d275e10e5c3a71ec";
-      sha256 = "04kw4kivxvr3kkmghj3427b1xyhzbhnfr971qfn3lv2vvhs8kpfl";
-    };
-  }
-  {
-    goPackagePath  = "github.com/jackc/pgx";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jackc/pgx";
-      rev =  "c73e7d75061bb42b0282945710f344cfe1113d10";
-      sha256 = "1am1iggch89mn4a99bxnawjhc5yrgd8fjlmzq0b9l9qy5w1gzr1f";
-    };
-  }
-  {
-    goPackagePath  = "github.com/jcmturner/gofork";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jcmturner/gofork";
-      rev =  "dc7c13fece037a4a36e2b3c69db4991498d30692";
-      sha256 = "0xzsnjqv3d59w9pgqzf6550wdwaqnac7zcdgqfd25w65yhcffzhr";
-    };
-  }
-  {
-    goPackagePath  = "github.com/jmespath/go-jmespath";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jmespath/go-jmespath";
-      rev =  "c2b33e84";
-      sha256 = "1r6w7ydx8ydryxk3sfhzsk8m6f1nsik9jg3i1zhi69v4kfl4d5cz";
-    };
-  }
-  {
-    goPackagePath  = "github.com/kardianos/service";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kardianos/service";
-      rev =  "56787a3ea05e9b262708192e7ce3b500aba73561";
-      sha256 = "0srikxxl78grkn85w1chxpxi0bc9zhsfl4794k1qsgykgipkz078";
-    };
-  }
-  {
-    goPackagePath  = "github.com/karrick/godirwalk";
-    fetch = {
-      type = "git";
-      url = "https://github.com/karrick/godirwalk";
-      rev =  "532e518bccc921708e14b29e16503b1bf5c898cc";
-      sha256 = "0d1w72w99aqxzlf4w0s9s0ji4w01xfry207q1pm4wlllk7m2mh1c";
-    };
-  }
-  {
-    goPackagePath  = "github.com/kballard/go-shellquote";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kballard/go-shellquote";
-      rev =  "95032a82bc518f77982ea72343cc1ade730072f0";
-      sha256 = "1rspvmnsikdq95jmx3dykxd4k1rmgl98ryjrysvl0cf18hl1vq80";
-    };
-  }
-  {
-    goPackagePath  = "github.com/klauspost/compress";
-    fetch = {
-      type = "git";
-      url = "https://github.com/klauspost/compress";
-      rev =  "4e96aec082898e4dad17d8aca1a7e2d01362ff6c";
-      sha256 = "12bxybwcgkfi1a32d60y0v1s7s58q1xgavrf428lnzljsm1cak2n";
-    };
-  }
-  {
-    goPackagePath  = "github.com/kr/logfmt";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/logfmt";
-      rev =  "b84e30acd515aadc4b783ad4ff83aff3299bdfe0";
-      sha256 = "02ldzxgznrfdzvghfraslhgp19la1fczcbzh7wm2zdc6lmpd1qq9";
-    };
-  }
-  {
-    goPackagePath  = "github.com/kubernetes/apimachinery";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kubernetes/apimachinery";
-      rev =  "d41becfba9ee9bf8e55cec1dd3934cd7cfc04b99";
-      sha256 = "0d7akj020fahqgmicig39vfbs1nvkxachwbyw8wk2w90pfsicff1";
-    };
-  }
-  {
-    goPackagePath  = "github.com/leodido/ragel-machinery";
-    fetch = {
-      type = "git";
-      url = "https://github.com/leodido/ragel-machinery";
-      rev =  "299bdde78165d4ca4bc7d064d8d6a4f39ac6de8c";
-      sha256 = "0ir7gf9a9p99pgsz3b5qijhkz41xqk4axlbx0cl4w2rwv2spvyw5";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mailru/easyjson";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mailru/easyjson";
-      rev =  "efc7eb8984d6655c26b5c9d2e65c024e5767c37c";
-      sha256 = "02wzdl0hxkqvim1ymnp7s0d0ysw0ba2mdsrkhi7k93zs2wf1wswd";
-    };
-  }
-  {
-    goPackagePath  = "github.com/matttproud/golang_protobuf_extensions";
-    fetch = {
-      type = "git";
-      url = "https://github.com/matttproud/golang_protobuf_extensions";
-      rev =  "c12348ce28de40eed0136aa2b644d0ee0650e56c";
-      sha256 = "1d0c1isd2lk9pnfq2nk0aih356j30k3h1gi2w0ixsivi5csl7jya";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mdlayher/apcupsd";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mdlayher/apcupsd";
-      rev =  "eb3dd99a75fe58389e357b732691320dcf706b5f";
-      sha256 = "0s1m6l4pnazqiymb8y89ajbxfl2cn0ahvhws10nvxvc4jjivlbbq";
-    };
-  }
-  {
-    goPackagePath  = "github.com/miekg/dns";
-    fetch = {
-      type = "git";
-      url = "https://github.com/miekg/dns";
-      rev =  "f4db2ca6edc3af0ee51bf332099cc480bcf3ef9d";
-      sha256 = "1mr9ia1r2ai9gwrljycj6i64r1i612nxp0n8fk1ajkkf7dwnjk33";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mitchellh/go-homedir";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/go-homedir";
-      rev =  "af06845cf3004701891bf4fdb884bfe4920b3727";
-      sha256 = "0ydzkipf28hwj2bfxqmwlww47khyk6d152xax4bnyh60f4lq3nx1";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mitchellh/mapstructure";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/mapstructure";
-      rev =  "f15292f7a699fcc1a38a80977f80a046874ba8ac";
-      sha256 = "0zm3nhdvmj3f8q0vg2sjfw1sm3pwsw0ggz501awz95w99664a8al";
-    };
-  }
-  {
-    goPackagePath  = "github.com/multiplay/go-ts3";
-    fetch = {
-      type = "git";
-      url = "https://github.com/multiplay/go-ts3";
-      rev =  "d0d44555495c8776880a17e439399e715a4ef319";
-      sha256 = "04n2rkbbgs09m47w24i9x7ah2a3mdwq378ayhsizyzjv3a0xhd9b";
-    };
-  }
-  {
-    goPackagePath  = "github.com/naoina/go-stringutil";
-    fetch = {
-      type = "git";
-      url = "https://github.com/naoina/go-stringutil";
-      rev =  "6b638e95a32d0c1131db0e7fe83775cbea4a0d0b";
-      sha256 = "00831p1wn3rimybk1z8l30787kn1akv5jax5wx743nn76qcmkmc6";
-    };
-  }
-  {
-    goPackagePath  = "github.com/nats-io/gnatsd";
-    fetch = {
-      type = "git";
-      url = "https://github.com/nats-io/gnatsd";
-      rev =  "6608e9ac3be979dcb0614b772cc86a87b71acaa3";
-      sha256 = "186xywzdrmvlhlh9wgjs71rqvgab8vinlr3gkzkknny82nv7hcjw";
-    };
-  }
-  {
-    goPackagePath  = "github.com/nats-io/go-nats";
-    fetch = {
-      type = "git";
-      url = "https://github.com/nats-io/go-nats";
-      rev =  "062418ea1c2181f52dc0f954f6204370519a868b";
-      sha256 = "1sccsfvfhwaqpkr4j3c1sa1jkjwqhkhr35br3iaw2qzlidhdypml";
-    };
-  }
-  {
-    goPackagePath  = "github.com/nats-io/nuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/nats-io/nuid";
-      rev =  "289cccf02c178dc782430d534e3c1f5b72af807f";
-      sha256 = "1dpk8qzl43gfdaj2nbw52a0xyrmpmq26a9v9dfl27vkijssb20p4";
-    };
-  }
-  {
-    goPackagePath  = "github.com/nsqio/go-nsq";
-    fetch = {
-      type = "git";
-      url = "https://github.com/nsqio/go-nsq";
-      rev =  "eee57a3ac4174c55924125bb15eeeda8cffb6e6f";
-      sha256 = "194wdmgsc0qhdjx95ka7blly58r9bj2vc0bgls7jawzszfpsbx8x";
-    };
-  }
-  {
-    goPackagePath  = "github.com/openconfig/gnmi";
-    fetch = {
-      type = "git";
-      url = "https://github.com/openconfig/gnmi";
-      rev =  "33a1865c302903e7a2e06f35960e6bc31e84b9f6";
-      sha256 = "0yzsda16k9kwhq4kvsixsg6cb67vyn177x0h5n1s9zrrdxbvm05c";
-    };
-  }
-  {
-    goPackagePath  = "github.com/opencontainers/go-digest";
-    fetch = {
-      type = "git";
-      url = "https://github.com/opencontainers/go-digest";
-      rev =  "279bed98673dd5bef374d3b6e4b09e2af76183bf";
-      sha256 = "01gc7fpn8ax429024p2fcx3yb18axwz5bjf2hqxlii1jbsgw4bh9";
-    };
-  }
-  {
-    goPackagePath  = "github.com/opencontainers/image-spec";
-    fetch = {
-      type = "git";
-      url = "https://github.com/opencontainers/image-spec";
-      rev =  "d60099175f88c47cd379c4738d158884749ed235";
-      sha256 = "03dvbj3dln8c55v9gp79mgmz2yi2ws3r08iyz2fk41y3i22iaw1q";
-    };
-  }
-  {
-    goPackagePath  = "github.com/opentracing-contrib/go-observer";
-    fetch = {
-      type = "git";
-      url = "https://github.com/opentracing-contrib/go-observer";
-      rev =  "a52f2342449246d5bcc273e65cbdcfa5f7d6c63c";
-      sha256 = "1q7z458m2vh3bzml4x9vm2paffqn1jcgiydbisl0zg2asfniq7k3";
-    };
-  }
-  {
-    goPackagePath  = "github.com/opentracing/opentracing-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/opentracing/opentracing-go";
-      rev =  "1949ddbfd147afd4d964a9f00b24eb291e0e7c38";
-      sha256 = "0i0ghg94dg8lk05mw5n23983wq04yjvkjmdkc9z5y1f3508938h9";
-    };
-  }
-  {
-    goPackagePath  = "github.com/openzipkin/zipkin-go-opentracing";
-    fetch = {
-      type = "git";
-      url = "https://github.com/openzipkin/zipkin-go-opentracing";
-      rev =  "26cf9707480e6b90e5eff22cf0bbf05319154232";
-      sha256 = "1yiyqh0k72985hxwc7hh639cyyg7igkx9bg9923x4knq635m2f32";
-    };
-  }
-  {
-    goPackagePath  = "github.com/pierrec/lz4";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pierrec/lz4";
-      rev =  "1958fd8fff7f115e79725b1288e0b878b3e06b00";
-      sha256 = "1c4xi40bvcp91a3lw9nw1hylvdmb51hviwrqv5f6zj1sswkv24ps";
-    };
-  }
-  {
-    goPackagePath  = "github.com/pkg/errors";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pkg/errors";
-      rev =  "645ef00459ed84a119197bfb8d8205042c6df63d";
-      sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
-    };
-  }
-  {
-    goPackagePath  = "github.com/pmezard/go-difflib";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pmezard/go-difflib";
-      rev =  "792786c7400a136282c1664665ae0a8db921c6c2";
-      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
-    };
-  }
-  {
-    goPackagePath  = "github.com/prometheus/client_golang";
-    fetch = {
-      type = "git";
-      url = "https://github.com/prometheus/client_golang";
-      rev =  "505eaef017263e299324067d40ca2c48f6a2cf50";
-      sha256 = "02b4yg6rfag0m3j0i39sillcm5xczwv8h133vn12yr8qw04cnigs";
-    };
-  }
-  {
-    goPackagePath  = "github.com/prometheus/client_model";
-    fetch = {
-      type = "git";
-      url = "https://github.com/prometheus/client_model";
-      rev =  "5c3871d89910bfb32f5fcab2aa4b9ec68e65a99f";
-      sha256 = "04psf81l9fjcwascsys428v03fx4fi894h7fhrj2vvcz723q57k0";
-    };
-  }
-  {
-    goPackagePath  = "github.com/prometheus/common";
-    fetch = {
-      type = "git";
-      url = "https://github.com/prometheus/common";
-      rev =  "7600349dcfe1abd18d72d3a1770870d9800a7801";
-      sha256 = "0lsp94dqpj35dny4m4x15kg4wgwawlm3in7cnpajkkacgyxagk5f";
-    };
-  }
-  {
-    goPackagePath  = "github.com/prometheus/procfs";
-    fetch = {
-      type = "git";
-      url = "https://github.com/prometheus/procfs";
-      rev =  "ae68e2d4c00fed4943b5f6698d504a5fe083da8a";
-      sha256 = "04sar4k99w8nvq3kwx6chz0mbp4s6xfjfxww7aqfd950xgs2jv5f";
-    };
-  }
-  {
-    goPackagePath  = "github.com/rcrowley/go-metrics";
-    fetch = {
-      type = "git";
-      url = "https://github.com/rcrowley/go-metrics";
-      rev =  "e2704e165165ec55d062f5919b4b29494e9fa790";
-      sha256 = "1yvvwqyfdnnjgnc3j4y0g1b897ad0wwlgn6x4dx83s20ax2lyz2q";
-    };
-  }
-  {
-    goPackagePath  = "github.com/safchain/ethtool";
-    fetch = {
-      type = "git";
-      url = "https://github.com/safchain/ethtool";
-      rev =  "f459e2d136648a780248aba0fcac44740fe3b500";
-      sha256 = "0zhxq588vkicxy4cbjjd20l4n1pzpi7q734595y6zz4zljsp24cs";
-    };
-  }
-  {
-    goPackagePath  = "github.com/samuel/go-zookeeper";
-    fetch = {
-      type = "git";
-      url = "https://github.com/samuel/go-zookeeper";
-      rev =  "c4fab1ac1bec58281ad0667dc3f0907a9476ac47";
-      sha256 = "0i7mxg9hz8ymglq2xcwwswy1pvcr53qd57lzcdlf3d5bjki73a4w";
-    };
-  }
-  {
-    goPackagePath  = "github.com/satori/go.uuid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/satori/go.uuid";
-      rev =  "b2ce2384e17bbe0c6d34077efa39dbab3e09123b";
-      sha256 = "1yz4cx02377ijlf8mnn84j1dcmlwh8ncx7y3kw1zg2qw0z4x119c";
-    };
-  }
-  {
-    goPackagePath  = "github.com/shirou/gopsutil";
-    fetch = {
-      type = "git";
-      url = "https://github.com/shirou/gopsutil";
-      rev =  "fc7e5e7af6052e36e83e5539148015ed2c09d8f9";
-      sha256 = "1p51r5qwbv7dkk3k3ndhz77hi08b76zpz9ik8qakgg5l6p5h8n7l";
-    };
-  }
-  {
-    goPackagePath  = "github.com/shirou/w32";
-    fetch = {
-      type = "git";
-      url = "https://github.com/shirou/w32";
-      rev =  "bb4de0191aa41b5507caa14b0650cdbddcd9280b";
-      sha256 = "0xh5vqblhr2c3mlaswawx6nipi4rc2x73rbdvlkakmgi0nnl50m4";
-    };
-  }
-  {
-    goPackagePath  = "github.com/sirupsen/logrus";
-    fetch = {
-      type = "git";
-      url = "https://github.com/sirupsen/logrus";
-      rev =  "c155da19408a8799da419ed3eeb0cb5db0ad5dbc";
-      sha256 = "0g5z7al7kky11ai2dhac6gkp3b5pxsvx72yj3xg4wg3265gbn7yz";
-    };
-  }
-  {
-    goPackagePath  = "github.com/soniah/gosnmp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/soniah/gosnmp";
-      rev =  "40eae407a1f8cbbe3f3f14c57bde0b16db1cfe85";
-      sha256 = "1da492l2d9rc9nfc482fmyx8z9a3gmwca87kbizpwibkix9b7b02";
-    };
-  }
-  {
-    goPackagePath  = "github.com/streadway/amqp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/streadway/amqp";
-      rev =  "e5adc2ada8b8efff032bf61173a233d143e9318e";
-      sha256 = "0qc5h9h1fcyblpiprbijrlc92fdbbnzf87648k20afgfjv8kciab";
-    };
-  }
-  {
-    goPackagePath  = "github.com/stretchr/objx";
-    fetch = {
-      type = "git";
-      url = "https://github.com/stretchr/objx";
-      rev =  "477a77ecc69700c7cdeb1fa9e129548e1c1c393c";
-      sha256 = "0iph0qmpyqg4kwv8jsx6a56a7hhqq8swrazv40ycxk9rzr0s8yls";
-    };
-  }
-  {
-    goPackagePath  = "github.com/stretchr/testify";
-    fetch = {
-      type = "git";
-      url = "https://github.com/stretchr/testify";
-      rev =  "3ebf1ddaeb260c4b1ae502a01c7844fa8c1fa0e9";
-      sha256 = "09r89m1wy4cjv2nps1ykp00qjpi0531r07q3s34hr7m6njk4srkl";
-    };
-  }
-  {
-    goPackagePath  = "github.com/tidwall/gjson";
-    fetch = {
-      type = "git";
-      url = "https://github.com/tidwall/gjson";
-      rev =  "d7c940e59395fdcaff4584cb442b2e7808f6711e";
-      sha256 = "14x1g5gnziyh3vpr5mxpw2r5h65mncn548xdvamrpzngjm1idzhi";
-    };
-  }
-  {
-    goPackagePath  = "github.com/tidwall/match";
-    fetch = {
-      type = "git";
-      url = "https://github.com/tidwall/match";
-      rev =  "1731857f09b1f38450e2c12409748407822dc6be";
-      sha256 = "14nv96h0mjki5q685qx8y331h4yga6hlfh3z9nz6acvnv284q578";
-    };
-  }
-  {
-    goPackagePath  = "github.com/tidwall/pretty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/tidwall/pretty";
-      rev =  "1166b9ac2b65e46a43d8618d30d1554f4652d49b";
-      sha256 = "1jwpj5903lh8hsj9apm2gwd70809zq0gjgmivkxaq4iq29wnv0n9";
-    };
-  }
-  {
-    goPackagePath  = "github.com/vishvananda/netlink";
-    fetch = {
-      type = "git";
-      url = "https://github.com/vishvananda/netlink";
-      rev =  "b2de5d10e38ecce8607e6b438b6d174f389a004e";
-      sha256 = "06kic677b2q752sgvk3lyjfh8gmq7bpfl38h8k1jsz92fav1y8gl";
-    };
-  }
-  {
-    goPackagePath  = "github.com/vishvananda/netns";
-    fetch = {
-      type = "git";
-      url = "https://github.com/vishvananda/netns";
-      rev =  "13995c7128ccc8e51e9a6bd2b551020a27180abd";
-      sha256 = "1zk6w8158qi4niva5rijchbv9ixgmijsgqshh54wdaav4xrhjshn";
-    };
-  }
-  {
-    goPackagePath  = "github.com/vjeantet/grok";
-    fetch = {
-      type = "git";
-      url = "https://github.com/vjeantet/grok";
-      rev =  "ce01e59abcf6fbc9833b7deb5e4b8ee1769bcc53";
-      sha256 = "172j83ndkmh5dhglgskpsg5csz31ah5mnprqhcra5x7dczc2f8hv";
-    };
-  }
-  {
-    goPackagePath  = "github.com/vmware/govmomi";
-    fetch = {
-      type = "git";
-      url = "https://github.com/vmware/govmomi";
-      rev =  "3617f28d167d448f93f282a867870f109516d2a5";
-      sha256 = "1a82g4vzfgzp8ppcq3dhgv8van85am467ckx788yqk7rj4c3i5ir";
-    };
-  }
-  {
-    goPackagePath  = "github.com/wavefronthq/wavefront-sdk-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/wavefronthq/wavefront-sdk-go";
-      rev =  "fa87530cd02a8ad08bd179e1c39fb319a0cc0dae";
-      sha256 = "000ynkkpg2m4xynkmdx47asydw66nzp94f276gifws1a90yacay0";
-    };
-  }
-  {
-    goPackagePath  = "github.com/wvanbergen/kafka";
-    fetch = {
-      type = "git";
-      url = "https://github.com/wvanbergen/kafka";
-      rev =  "e2edea948ddfee841ea9a263b32ccca15f7d6c2f";
-      sha256 = "1m712xywbx6nja2rbmrphwxbwfzkhadq139k5d19m8964695sp10";
-    };
-  }
-  {
-    goPackagePath  = "github.com/wvanbergen/kazoo-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/wvanbergen/kazoo-go";
-      rev =  "f72d8611297a7cf105da904c04198ad701a60101";
-      sha256 = "05yx57kbjm9v54j46zi2c21zb3d239lzv996b2qqxpkfbqadqyxm";
-    };
-  }
-  {
-    goPackagePath  = "github.com/yuin/gopher-lua";
-    fetch = {
-      type = "git";
-      url = "https://github.com/yuin/gopher-lua";
-      rev =  "46796da1b0b4794e1e341883a399f12cc7574b55";
-      sha256 = "0yq5ks1smqx0kgmwyl6xxd2mn9bvdi8qz7di4xs0xy5cs7f2zanw";
-    };
-  }
-  {
-    goPackagePath  = "go.opencensus.io";
-    fetch = {
-      type = "git";
-      url = "https://github.com/census-instrumentation/opencensus-go";
-      rev =  "79993219becaa7e29e3b60cb67f5b8e82dee11d6";
-      sha256 = "0y2jzm1b5dw8x5s9fjy2aj1gd0wwkhl71wj3ysby86g60ja5lp1z";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/crypto";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/crypto.git";
-      rev =  "87dc89f01550277dc22b74ffcf4cd89fa2f40f4c";
-      sha256 = "0z4i1m2yn3f31ci7wvcm2rxkx2yiv7a78mfzklncmsz2k97rlh2g";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/net";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/net.git";
-      rev =  "a680a1efc54dd51c040b3b5ce4939ea3cf2ea0d1";
-      sha256 = "018zmn4kmg2mbngcciqal54slc3pl4ry5vlv0bw36fcxvnazxnbp";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/oauth2";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/oauth2.git";
-      rev =  "d2e6202438beef2727060aa7cabdd924d92ebfd9";
-      sha256 = "0wbn75fd10485nb93bm4kqldqifdim5xqy4v7r5sdvimvf3fyhn7";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/sync";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/sync.git";
-      rev =  "42b317875d0fa942474b76e1b46a6060d720ae6e";
-      sha256 = "0mrjhk7al7yyh76x9flvxy4jm5jyqh2fxbxagpaazxn1xdgkaif3";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/sys.git";
-      rev =  "51ab0e2deafac1f46c46ad59cf0921be2f180c3d";
-      sha256 = "0xdhpckbql3bsqkpc2k5b1cpnq3q1qjqjjq2j3p707rfwb8nm91a";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/text";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/text.git";
-      rev =  "f21a4dfb5e38f5895301dc265a8def02365cc3d0";
-      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
-    };
-  }
-  {
-    goPackagePath  = "google.golang.org/api";
-    fetch = {
-      type = "git";
-      url = "https://code.googlesource.com/google-api-go-client";
-      rev =  "19ff8768a5c0b8e46ea281065664787eefc24121";
-      sha256 = "0b34xb74pnwawlf911w6f0dhb95i8vi20i799asnvrmyn1lm2ldk";
-    };
-  }
-  {
-    goPackagePath  = "google.golang.org/appengine";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/appengine";
-      rev =  "b1f26356af11148e710935ed1ac8a7f5702c7612";
-      sha256 = "1pz202zszg8f35dk5pfhwgcdi3r6dx1l4yk6x6ly7nb4j45zi96x";
-    };
-  }
-  {
-    goPackagePath  = "google.golang.org/genproto";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-genproto";
-      rev =  "fedd2861243fd1a8152376292b921b394c7bef7e";
-      sha256 = "08324j170skzacglhjmpkpsivp9gwcvmljx1nq6a2d2h2qksfdbp";
-    };
-  }
-  {
-    goPackagePath  = "google.golang.org/grpc";
-    fetch = {
-      type = "git";
-      url = "https://github.com/grpc/grpc-go";
-      rev =  "168a6198bcb0ef175f7dacec0b8691fc141dc9b8";
-      sha256 = "0d8vj372ri55mrqfc0rhjl3albp5ykwfjhda1s5cgm5n40v70pr3";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/asn1-ber.v1";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-asn1-ber/asn1-ber";
-      rev =  "379148ca0225df7a432012b8df0355c2a2063ac0";
-      sha256 = "1y8bvzbxpw0lfnn7pbcdwzqj4l90qj6xf88dvv9pxd9yl5g6cskx";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/fatih/pool.v2";
-    fetch = {
-      type = "git";
-      url = "https://github.com/fatih/pool";
-      rev =  "010e0b745d12eaf8426c95f9c3924d81dd0b668f";
-      sha256 = "0dxsq7058w47d6ynbwjlfgnwcf5bf1q7m23dsgljd01sd8ilrq9x";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/fsnotify.v1";
-    fetch = {
-      type = "git";
-      url = "https://github.com/fsnotify/fsnotify";
-      rev =  "c2828203cd70a50dcccfb2761f8b1f8ceef9a8e9";
-      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/gorethink/gorethink.v3";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gorethink/gorethink";
-      rev =  "7f5bdfd858bb064d80559b2a32b86669c5de5d3b";
-      sha256 = "1k4flhx93jbrcsi8k35dcdm7rcq3r8i8my4h8zhf5y9ayhcyph1m";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/inf.v0";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-inf/inf";
-      rev =  "d2d2541c53f18d2a059457998ce2876cc8e67cbf";
-      sha256 = "00k5iqjcp371fllqxncv7jkf80hn1zww92zm78cclbcn4ybigkng";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/jcmturner/aescts.v1";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jcmturner/aescts";
-      rev =  "f6abebb3171c4c1b1fea279cb7c7325020a26290";
-      sha256 = "0rbq4zf3db48xa2gqdp2swws7wizmbwagigqkr1zxzd1ramps6rv";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/jcmturner/dnsutils.v1";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jcmturner/dnsutils";
-      rev =  "13eeb8d49ffb74d7a75784c35e4d900607a3943c";
-      sha256 = "0l543c64pyzbnrc00jspg21672l3a0kjjw9pbdxwna93w8d8m927";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/jcmturner/gokrb5.v7";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jcmturner/gokrb5";
-      rev =  "363118e62befa8a14ff01031c025026077fe5d6d";
-      sha256 = "08mbag2283q1pyfi696g80521r9n1id3804r6sssrhf3kxzkfhnv";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/jcmturner/rpc.v1";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jcmturner/rpc";
-      rev =  "99a8ce2fbf8b8087b6ed12a37c61b10f04070043";
-      sha256 = "0hkmvf8qdcifnzym8kv1xhq7lq0wpr0i6gzff159lh9xn0wfg175";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/ldap.v3";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-ldap/ldap";
-      rev =  "caa044a2bfa324b735baee1722e8e2e372f76864";
-      sha256 = "000jfdx38k10irfy9952jjzqn04ji3lnlfpvabvq9l78zs96n91p";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/mgo.v2";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-mgo/mgo";
-      rev =  "9856a29383ce1c59f308dd1cf0363a79b5bef6b5";
-      sha256 = "1gfbcmvpwwf1lydxj3g42wv2g9w3pf0y02igqk4f4f21h02sazkw";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/olivere/elastic.v5";
-    fetch = {
-      type = "git";
-      url = "https://github.com/olivere/elastic";
-      rev =  "52741dc2ce53629cbe1e673869040d886cba2cd5";
-      sha256 = "11dgj31jxmp9fdnnwzzwg08p3iwrbnd63kyf6drvlw4qsgslk4lh";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/tomb.v1";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-tomb/tomb";
-      rev =  "dd632973f1e7218eb1089048e0798ec9ae7dceb8";
-      sha256 = "1lqmq1ag7s4b3gc3ddvr792c5xb5k6sfn0cchr3i2s7f1c231zjv";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/yaml.v2";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-yaml/yaml";
-      rev =  "5420a8b6744d3b0345ab293f6fcba19c978f1183";
-      sha256 = "0dwjrs2lp2gdlscs7bsrmyc5yf6mm4fvgw71bzr9mv2qrd2q73s1";
-    };
-  }
-]
\ No newline at end of file
diff --git a/pkgs/servers/monitoring/thanos/default.nix b/pkgs/servers/monitoring/thanos/default.nix
index a246249d7d7..f307032f414 100644
--- a/pkgs/servers/monitoring/thanos/default.nix
+++ b/pkgs/servers/monitoring/thanos/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 buildGoModule rec {
   pname = "thanos";
   version = "0.11.0";
@@ -12,8 +12,6 @@ buildGoModule rec {
 
   modSha256 = "1pdypyyy352l6wy5lr94fv8j890lh863h8zg2hxchiymrs5pgq1c";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   subPackages = "cmd/thanos";
 
   buildFlagsArray = let t = "github.com/prometheus/common/version"; in ''
diff --git a/pkgs/servers/monitoring/zabbix/versions.nix b/pkgs/servers/monitoring/zabbix/versions.nix
index 2e7afe5266e..2b7fb972c90 100644
--- a/pkgs/servers/monitoring/zabbix/versions.nix
+++ b/pkgs/servers/monitoring/zabbix/versions.nix
@@ -1,12 +1,12 @@
 generic: {
   v44 = generic {
-    version = "4.4.6";
-    sha256 = "03mf4sklnw1x0ixp41vnibkz0794yi9jhws7ixld8jj2czk2ifr2";
+    version = "4.4.7";
+    sha256 = "13gckz5ysmqr257mcmbbbf8l43f1jdk4iyn6a3ad8xjmj3kqyys9";
   };
 
   v40 = generic {
-    version = "4.0.18";
-    sha256 = "105f0mifgm56dd1y8vychq8m2f2wx9a7gv380xv0hrs1q038i1ki";
+    version = "4.0.19";
+    sha256 = "0csiva0iddzdf18lii7vwlvp91kh3vfl8r90jpcsnsivaqwfnkbr";
   };
 
   v30 = generic {
diff --git a/pkgs/servers/mpd/default.nix b/pkgs/servers/mpd/default.nix
index e328a79afa6..4f97e3fc783 100644
--- a/pkgs/servers/mpd/default.nix
+++ b/pkgs/servers/mpd/default.nix
@@ -102,13 +102,13 @@ let
 
     in stdenv.mkDerivation rec {
       pname = "mpd";
-      version = "0.21.20";
+      version = "0.21.21";
 
       src = fetchFromGitHub {
         owner  = "MusicPlayerDaemon";
         repo   = "MPD";
         rev    = "v${version}";
-        sha256 = "05148zwaf1ix369i1n1fx84j66qa1ab1p3m7781lk3dz5hqf185x";
+        sha256 = "0ysyjlmmfm1y5jqyv83bs9p7zqr9pgj1hmdq2b7kx9kridclbnng";
       };
 
       buildInputs = [ glib boost ]
diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix
index 9b23e9ac501..29c5cb59111 100644
--- a/pkgs/servers/nextcloud/default.nix
+++ b/pkgs/servers/nextcloud/default.nix
@@ -1,24 +1,37 @@
 { stdenv, fetchurl }:
 
-stdenv.mkDerivation rec {
-  pname = "nextcloud";
-  version = "18.0.2";
+let
+  generic = { version, sha256, insecure ? false }: stdenv.mkDerivation rec {
+    pname = "nextcloud";
+    inherit version;
 
-  src = fetchurl {
-    url = "https://download.nextcloud.com/server/releases/${pname}-${version}.tar.bz2";
-    sha256 = "10fbdq0366iai2kpw6v6p78mnn9gz8x0xzsbqrp109yx4c4nccyh";
-  };
+    src = fetchurl {
+      url = "https://download.nextcloud.com/server/releases/${pname}-${version}.tar.bz2";
+      inherit sha256;
+    };
+
+    installPhase = ''
+      mkdir -p $out/
+      cp -R . $out/
+    '';
 
-  installPhase = ''
-    mkdir -p $out/
-    cp -R . $out/
-  '';
+    meta = with stdenv.lib; {
+      description = "Sharing solution for files, calendars, contacts and more";
+      homepage = https://nextcloud.com;
+      maintainers = with maintainers; [ schneefux bachp globin fpletz ma27 ];
+      license = licenses.agpl3Plus;
+      platforms = with platforms; unix;
+      knownVulnerabilities = optional insecure "Nextcloud version ${version} is EOL";
+    };
+  };
+in {
+  nextcloud17 = generic {
+    version = "17.0.4";
+    sha256 = "0cj5mng0nmj3hz30pyz3g19kj3mkm5ca8si3sw3arv61dmw6c5g6";
+  };
 
-  meta = {
-    description = "Sharing solution for files, calendars, contacts and more";
-    homepage = https://nextcloud.com;
-    maintainers = with stdenv.lib.maintainers; [ schneefux bachp globin fpletz ];
-    license = stdenv.lib.licenses.agpl3Plus;
-    platforms = with stdenv.lib.platforms; unix;
+  nextcloud18 = generic {
+    version = "18.0.3";
+    sha256 = "0wpxa35zj81i541j3cjq6klsjwwc5slryzvjjl7zjc32004yfrvv";
   };
 }
diff --git a/pkgs/servers/nginx-sso/default.nix b/pkgs/servers/nginx-sso/default.nix
index 10a0c99996d..cee4b3f4356 100644
--- a/pkgs/servers/nginx-sso/default.nix
+++ b/pkgs/servers/nginx-sso/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "nginx-sso";
-  version = "0.24.0";
+  version = "0.24.1";
   rev = "v${version}";
 
   goPackagePath = "github.com/Luzifer/nginx-sso";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     inherit rev;
     owner = "Luzifer";
     repo = "nginx-sso";
-    sha256 = "0jkmd1hdr40i1wd3001ixjv1nminsxmwhvnhcgfqcdn5gnaradwn";
+    sha256 = "1wij0a5ban2l6ahfra4n4dji7i5ndkqk1mgrblwm2ski7bl8yszx";
   };
 
   postInstall = ''
diff --git a/pkgs/servers/nosql/mongodb/asio-no-experimental-string-view.patch b/pkgs/servers/nosql/mongodb/asio-no-experimental-string-view.patch
new file mode 100644
index 00000000000..eb5db1818fe
--- /dev/null
+++ b/pkgs/servers/nosql/mongodb/asio-no-experimental-string-view.patch
@@ -0,0 +1,20 @@
+diff --git a/src/third_party/asio-master/asio/include/asio/detail/config.hpp b/src/third_party/asio-master/asio/include/asio/detail/config.hpp
+index 7fe6a95a..ff4cc56b 100644
+--- a/src/third_party/asio-master/asio/include/asio/detail/config.hpp
++++ b/src/third_party/asio-master/asio/include/asio/detail/config.hpp
+@@ -786,7 +786,6 @@
+ #   if (__cplusplus >= 201402)
+ #    if __has_include(<experimental/string_view>)
+ #     define ASIO_HAS_STD_STRING_VIEW 1
+-#     define ASIO_HAS_STD_EXPERIMENTAL_STRING_VIEW 1
+ #    endif // __has_include(<experimental/string_view>)
+ #   endif // (__cplusplus >= 201402)
+ #  endif // defined(__clang__)
+@@ -794,7 +793,6 @@
+ #   if ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 9)) || (__GNUC__ > 4)
+ #    if (__cplusplus >= 201402)
+ #     define ASIO_HAS_STD_STRING_VIEW 1
+-#     define ASIO_HAS_STD_EXPERIMENTAL_STRING_VIEW 1
+ #    endif // (__cplusplus >= 201402)
+ #   endif // ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 7)) || (__GNUC__ > 4)
+ #  endif // defined(__GNUC__)
diff --git a/pkgs/servers/nosql/mongodb/forget-build-dependencies-3-4.patch b/pkgs/servers/nosql/mongodb/forget-build-dependencies-3-4.patch
new file mode 100644
index 00000000000..ca2c043deb2
--- /dev/null
+++ b/pkgs/servers/nosql/mongodb/forget-build-dependencies-3-4.patch
@@ -0,0 +1,17 @@
+--- a/site_scons/mongo_scons_utils.py
++++ b/site_scons/mongo_scons_utils.py
+@@ -84,14 +84,11 @@
+ def default_buildinfo_environment_data():
+     return (
+         ('distmod', '$MONGO_DISTMOD', True, True,),
+         ('distarch', '$MONGO_DISTARCH', True, True,),
+         ('cc', '$CC_VERSION', True, False,),
+-        ('ccflags', '$CCFLAGS', True, False,),
+         ('cxx', '$CXX_VERSION', True, False,),
+-        ('cxxflags', '$CXXFLAGS', True, False,),
+-        ('linkflags', '$LINKFLAGS', True, False,),
+         ('target_arch', '$TARGET_ARCH', True, True,),
+         ('target_os', '$TARGET_OS', True, False,),
+     )
+ 
+ # If you want buildInfo and --version to be relatively empty, set
diff --git a/pkgs/servers/nosql/mongodb/forget-build-dependencies.patch b/pkgs/servers/nosql/mongodb/forget-build-dependencies.patch
index ca2c043deb2..897618cceb1 100644
--- a/pkgs/servers/nosql/mongodb/forget-build-dependencies.patch
+++ b/pkgs/servers/nosql/mongodb/forget-build-dependencies.patch
@@ -1,8 +1,6 @@
---- a/site_scons/mongo_scons_utils.py
-+++ b/site_scons/mongo_scons_utils.py
-@@ -84,14 +84,11 @@
- def default_buildinfo_environment_data():
-     return (
+--- a/site_scons/mongo/generators.py
++++ b/site_scons/mongo/generators.py
+@@ -18,10 +18,7 @@ def default_buildinfo_environment_data():
          ('distmod', '$MONGO_DISTMOD', True, True,),
          ('distarch', '$MONGO_DISTARCH', True, True,),
          ('cc', '$CC_VERSION', True, False,),
@@ -13,5 +11,3 @@
          ('target_arch', '$TARGET_ARCH', True, True,),
          ('target_os', '$TARGET_OS', True, False,),
      )
- 
- # If you want buildInfo and --version to be relatively empty, set
diff --git a/pkgs/servers/nosql/mongodb/default.nix b/pkgs/servers/nosql/mongodb/mongodb.nix
index c2ae83f3e8a..e3d277ba5af 100644
--- a/pkgs/servers/nosql/mongodb/default.nix
+++ b/pkgs/servers/nosql/mongodb/mongodb.nix
@@ -1,58 +1,63 @@
-{ stdenv, fetchurl, fetchpatch, scons, boost, gperftools, pcre-cpp, snappy
-, zlib, libyamlcpp, sasl, openssl, libpcap, Security
-}:
+{ stdenv, fetchurl, scons, boost, gperftools, pcre-cpp, snappy, zlib, libyamlcpp
+, sasl, openssl, libpcap, python27, curl, Security, CoreFoundation, cctools }:
 
 # Note:
 # The command line tools are written in Go as part of a different package (mongodb-tools)
 
 with stdenv.lib;
 
-let version = "3.4.10";
-    system-libraries = [
-      "pcre"
-      #"asio" -- XXX use package?
-      #"wiredtiger"
-      "boost"
-      "snappy"
-      "zlib"
-      #"valgrind" -- mongodb only requires valgrind.h, which is vendored in the source.
-      #"stemmer"  -- not nice to package yet (no versioning, no makefile, no shared libs).
-      "yaml"
-    ] ++ optionals stdenv.isLinux [ "tcmalloc" ];
-
-in stdenv.mkDerivation {
-  pname = "mongodb";
+{ version, sha256, patches ? [] }@args:
+
+let
+  python = python27.withPackages (ps: with ps; [ pyyaml typing cheetah ]);
+  system-libraries = [
+    "boost"
+    "pcre"
+    "snappy"
+    "yaml"
+    "zlib"
+    #"asio" -- XXX use package?
+    #"stemmer"  -- not nice to package yet (no versioning, no makefile, no shared libs).
+    #"valgrind" -- mongodb only requires valgrind.h, which is vendored in the source.
+    #"wiredtiger"
+  ] ++ optionals stdenv.isLinux [ "tcmalloc" ];
+  inherit (stdenv.lib) systems subtractLists;
+
+in stdenv.mkDerivation rec {
   inherit version;
+  name = "mongodb-${version}";
 
   src = fetchurl {
     url = "https://fastdl.mongodb.org/src/mongodb-src-r${version}.tar.gz";
-    sha256 = "1wz2mhl9z0b1bdkg6m8v8mvw9k60mdv5ybq554xn3yjj9z500f24";
+    inherit sha256;
   };
 
-  nativeBuildInputs = [ scons ];
+  nativeBuildInputs = [ scons.py2 ];
   buildInputs = [
-    sasl boost gperftools pcre-cpp snappy
-    zlib libyamlcpp sasl openssl.dev openssl.out libpcap
-  ] ++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  patches =
-    [
-      # MongoDB keeps track of its build parameters, which tricks nix into
-      # keeping dependencies to build inputs in the final output.
-      # We remove the build flags from buildInfo data.
-      ./forget-build-dependencies.patch
-      (fetchpatch {
-        url = https://projects.archlinux.org/svntogit/community.git/plain/trunk/boost160.patch?h=packages/mongodb;
-        name = "boost160.patch";
-        sha256 = "0bvsf3499zj55pzamwjmsssr6x63w434944w76273fr5rxwzcmh8";
-      })
-    ];
+    boost
+    curl
+    gperftools
+    libpcap
+    libyamlcpp
+    openssl
+    pcre-cpp
+    python
+    sasl
+    snappy
+    zlib
+  ] ++ stdenv.lib.optionals stdenv.isDarwin [ Security CoreFoundation cctools ];
+
+  # MongoDB keeps track of its build parameters, which tricks nix into
+  # keeping dependencies to build inputs in the final output.
+  # We remove the build flags from buildInfo data.
+  inherit patches;
 
   postPatch = ''
     # fix environment variable reading
     substituteInPlace SConstruct \
         --replace "env = Environment(" "env = Environment(ENV = os.environ,"
   '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    substituteInPlace src/third_party/mozjs-45/extract/js/src/jsmath.cpp --replace 'defined(HAVE_SINCOS)' 0
 
     substituteInPlace src/third_party/s2/s1angle.cc --replace drem remainder
     substituteInPlace src/third_party/s2/s1interval.cc --replace drem remainder
@@ -66,13 +71,14 @@ in stdenv.mkDerivation {
       --replace 'engine("wiredTiger")' 'engine("mmapv1")'
   '';
 
-  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang "-Wno-unused-command-line-argument";
+  NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isClang
+    "-Wno-unused-command-line-argument";
 
   sconsFlags = [
     "--release"
     "--ssl"
     #"--rocksdb" # Don't have this packaged yet
-    "--wiredtiger=${if stdenv.is64bit then "on" else "off"}"
+    "--wiredtiger=on"
     "--js-engine=mozjs"
     "--use-sasl-client"
     "--disable-warnings-as-errors"
@@ -87,8 +93,13 @@ in stdenv.mkDerivation {
   '';
 
   preInstall = ''
-    mkdir -p $out/lib
+    mkdir -p "$out/lib"
   '';
+
+  postInstall = ''
+    rm -f "$out/bin/install_compass" || true
+  '';
+
   prefixKey = "--prefix=";
 
   enableParallelBuilding = true;
@@ -97,10 +108,10 @@ in stdenv.mkDerivation {
 
   meta = {
     description = "A scalable, high-performance, open source NoSQL database";
-    homepage = http://www.mongodb.org;
-    license = licenses.agpl3;
+    homepage = "http://www.mongodb.org";
+    license = licenses.sspl;
 
     maintainers = with maintainers; [ bluescreen303 offline cstrahan ];
-    platforms = platforms.unix;
+    platforms = subtractLists systems.doubles.i686 systems.doubles.unix;
   };
 }
diff --git a/pkgs/servers/nosql/mongodb/mozjs-45_fix-3-byte-opcode.patch b/pkgs/servers/nosql/mongodb/mozjs-45_fix-3-byte-opcode.patch
new file mode 100644
index 00000000000..8c60cdd1e68
--- /dev/null
+++ b/pkgs/servers/nosql/mongodb/mozjs-45_fix-3-byte-opcode.patch
@@ -0,0 +1,27 @@
+# HG changeset patch
+# User Dan Gohman <sunfish@mozilla.com>
+# Parent  d9b405d82cffb07343a5f2fd941e029298c7f6c4
+# Bug 1390214 - IonMonkey: Don't test for a 3-byte opcode in a 2-byte opcode predicate.
+# https://bug1390214.bmoattachments.org/attachment.cgi?id=8902972
+
+diff --git a/src/third_party/mozjs-45/extract/js/src/jit/x86-shared/Encoding-x86-shared.h b/src/third_party/mozjs-45/extract/js/src/jit/x86-shared/Encoding-x86-shared.h
+--- a/src/third_party/mozjs-45/extract/js/src/jit/x86-shared/Encoding-x86-shared.h
++++ b/src/third_party/mozjs-45/extract/js/src/jit/x86-shared/Encoding-x86-shared.h
+@@ -310,17 +310,16 @@ enum ThreeByteOpcodeID {
+ 
+ // Test whether the given opcode should be printed with its operands reversed.
+ inline bool IsXMMReversedOperands(TwoByteOpcodeID opcode)
+ {
+     switch (opcode) {
+       case OP2_MOVSD_WsdVsd: // also OP2_MOVPS_WpsVps
+       case OP2_MOVAPS_WsdVsd:
+       case OP2_MOVDQ_WdqVdq:
+-      case OP3_PEXTRD_EdVdqIb:
+         return true;
+       default:
+         break;
+     }
+     return false;
+ }
+ 
+ enum ThreeByteEscape {
diff --git a/pkgs/servers/nosql/mongodb/v3_4.nix b/pkgs/servers/nosql/mongodb/v3_4.nix
new file mode 100644
index 00000000000..2f02ae7f72a
--- /dev/null
+++ b/pkgs/servers/nosql/mongodb/v3_4.nix
@@ -0,0 +1,15 @@
+{ stdenv, callPackage, lib, sasl, boost, Security, CoreFoundation, cctools }:
+
+let
+  buildMongoDB = callPackage ./mongodb.nix {
+    inherit sasl;
+    inherit boost;
+    inherit Security;
+    inherit CoreFoundation;
+    inherit cctools;
+  };
+in buildMongoDB {
+  version = "3.4.24";
+  sha256 = "0j6mvgv0jnsnvgkl8505bl88kbxkba66qijlpi1la0dd5pd1imfr";
+  patches = [ ./forget-build-dependencies-3-4.patch ];
+}
diff --git a/pkgs/servers/nosql/mongodb/v3_6.nix b/pkgs/servers/nosql/mongodb/v3_6.nix
new file mode 100644
index 00000000000..68f83631c80
--- /dev/null
+++ b/pkgs/servers/nosql/mongodb/v3_6.nix
@@ -0,0 +1,16 @@
+{ stdenv, callPackage, lib, sasl, boost, Security, CoreFoundation, cctools }:
+
+let
+  buildMongoDB = callPackage ./mongodb.nix {
+    inherit sasl;
+    inherit boost;
+    inherit Security;
+    inherit CoreFoundation;
+    inherit cctools;
+  };
+in buildMongoDB {
+  version = "3.6.13";
+  sha256 = "1mbvk4bmabrswjdm01jssxcygjpq5799zqyx901nsi12vlcymwg4";
+  patches = [ ./forget-build-dependencies.patch ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ ./asio-no-experimental-string-view.patch ];
+}
diff --git a/pkgs/servers/nosql/mongodb/v4_0.nix b/pkgs/servers/nosql/mongodb/v4_0.nix
new file mode 100644
index 00000000000..51ce1e25062
--- /dev/null
+++ b/pkgs/servers/nosql/mongodb/v4_0.nix
@@ -0,0 +1,17 @@
+{ stdenv, callPackage, lib, sasl, boost, Security, CoreFoundation, cctools }:
+
+let
+  buildMongoDB = callPackage ./mongodb.nix {
+    inherit sasl;
+    inherit boost;
+    inherit Security;
+    inherit CoreFoundation;
+    inherit cctools;
+  };
+in buildMongoDB {
+  version = "4.0.12";
+  sha256 = "1j8dqa4jr623y87jrdanyib9r7x18srrvdx952q4azcc8zrdwci1";
+  patches =
+    [ ./forget-build-dependencies.patch ./mozjs-45_fix-3-byte-opcode.patch ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ ./asio-no-experimental-string-view.patch ];
+}
diff --git a/pkgs/servers/nosql/victoriametrics/default.nix b/pkgs/servers/nosql/victoriametrics/default.nix
index f85c4aebd51..75d309fe909 100644
--- a/pkgs/servers/nosql/victoriametrics/default.nix
+++ b/pkgs/servers/nosql/victoriametrics/default.nix
@@ -1,21 +1,18 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "VictoriaMetrics";
-  version = "1.33.1";
+  version = "1.34.5";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "1irc3zahp72631ai9rafc8n7vayr4hzlh8qla05chlsb2fwzqrrd";
+    sha256 = "0isifyvbrv0f6l32dycka67cpnizwh2c9ns2q8pz6r2myzbdsf3s";
   };
 
-  modSha256 = "0qzh3jmj7ps6xmnnmfr8bnq97kdkn58p6dxppmlypanar3zsn7vk";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  modSha256 = "0fr5yah4qicqjfgina1ghflaz8dlzsqk3rrpsvg5l68jb6l7nxkb";
+  meta = with lib; {
     homepage = "https://victoriametrics.com/";
     description = "fast, cost-effective and scalable time series database, long-term remote storage for Prometheus";
     license = licenses.asl20;
diff --git a/pkgs/servers/plex/raw.nix b/pkgs/servers/plex/raw.nix
index d4dd993b329..0b259f9c753 100644
--- a/pkgs/servers/plex/raw.nix
+++ b/pkgs/servers/plex/raw.nix
@@ -8,13 +8,13 @@
 # server, and the FHS userenv and corresponding NixOS module should
 # automatically pick up the changes.
 stdenv.mkDerivation rec {
-  version = "1.18.8.2527-740d4c206";
+  version = "1.19.1.2630-72c16a276";
   pname = "plexmediaserver";
 
   # Fetch the source
   src = fetchurl {
     url = "https://downloads.plex.tv/plex-media-server-new/${version}/redhat/plexmediaserver-${version}.x86_64.rpm";
-    sha256 = "05543nkhmp6wq88vz5cnv3cfd5hbd8rqs1rylfy7njgvb0pxl107";
+    sha256 = "0mjw7qx94p5avvzmbz5rkxdmvddn48s1l84d91lnvwvcdc7smj58";
   };
 
   outputs = [ "out" "basedb" ];
diff --git a/pkgs/servers/pulseaudio/default.nix b/pkgs/servers/pulseaudio/default.nix
index 49909510d2e..1a98af05587 100644
--- a/pkgs/servers/pulseaudio/default.nix
+++ b/pkgs/servers/pulseaudio/default.nix
@@ -17,7 +17,7 @@
 
 , airtunesSupport ? false
 
-, bluetoothSupport ? false
+, bluetoothSupport ? true
 
 , remoteControlSupport ? false
 
diff --git a/pkgs/servers/pulseaudio/qpaeq.nix b/pkgs/servers/pulseaudio/qpaeq.nix
index c84cc29f652..2ed4009b670 100644
--- a/pkgs/servers/pulseaudio/qpaeq.nix
+++ b/pkgs/servers/pulseaudio/qpaeq.nix
@@ -13,7 +13,7 @@ let
     icon = "audio-volume-high";
     desktopName = "qpaeq";
     genericName = "Audio equalizer";
-    categories = "Music;Sound;";
+    categories = "AudioVideo;Audio;Mixer;";
     startupNotify = "false";
   };
 in
diff --git a/pkgs/servers/radicale/1.x.nix b/pkgs/servers/radicale/1.x.nix
index bfc681c921b..83fa2506800 100644
--- a/pkgs/servers/radicale/1.x.nix
+++ b/pkgs/servers/radicale/1.x.nix
@@ -29,6 +29,6 @@ pythonPackages.buildPythonApplication rec {
     '';
     license = licenses.gpl3Plus;
     platforms = platforms.all;
-    maintainers = with maintainers; [ edwtjo pSub aneeshusa ];
+    maintainers = with maintainers; [ edwtjo pSub ];
   };
 }
diff --git a/pkgs/servers/rainloop/default.nix b/pkgs/servers/rainloop/default.nix
index ff6cb8c98eb..6d5016961e9 100644
--- a/pkgs/servers/rainloop/default.nix
+++ b/pkgs/servers/rainloop/default.nix
@@ -2,7 +2,7 @@
   common = { edition, sha256 }:
     stdenv.mkDerivation (rec {
       pname = "rainloop${stdenv.lib.optionalString (edition != "") "-${edition}"}";
-      version = "1.13.0";
+      version = "1.14.0";
 
       buildInputs = [ unzip ];
 
@@ -35,10 +35,10 @@
   in {
     rainloop-community = common {
       edition = "community";
-      sha256 = "1skwq6bn98142xf8r77b818fy00nb4x0s1ii3mw5849ih94spx40";
+      sha256 = "0a8qafm4khwj8cnaiaxvjb9073w6fr63vk1b89nks4hmfv10jn6y";
     };
     rainloop-standard = common {
       edition = "";
-      sha256 = "e3ec8209cb3b9f092938a89094e645ef27659763432bedbe7fad4fa650554222";
+      sha256 = "0961g4mci080f7y98zx9r4qw620l4z3na1ivvlyhhr1v4dywqvch";
     };
   }
diff --git a/pkgs/servers/samba/4.x.nix b/pkgs/servers/samba/4.x.nix
index 27139ed846c..1d6951bb8c1 100644
--- a/pkgs/servers/samba/4.x.nix
+++ b/pkgs/servers/samba/4.x.nix
@@ -1,30 +1,52 @@
-{ lib, stdenv, fetchurl, fetchpatch, python, pkgconfig, perl, libxslt, docbook_xsl, rpcgen
+{ stdenv
+, fetchurl
+, python
+, pkgconfig
+, bison
+, flex
+, perl
+, libxslt
+, docbook_xsl
+, rpcgen
 , fixDarwinDylibNames
-, docbook_xml_dtd_42, readline
-, popt, iniparser, libbsd, libarchive, libiconv, gettext
-, krb5Full, zlib, openldap, cups, pam, avahi, acl, libaio, fam, libceph, glusterfs
-, gnutls, ncurses, libunwind, systemd, jansson, lmdb, gpgme, libuuid
+, docbook_xml_dtd_45
+, readline
+, popt
+, libbsd
+, libarchive
+, zlib
+, liburing
+, fam
+, gnutls
+, libunwind
+, systemd
+, jansson
+, libtasn1
+, tdb
+, cmocka
 
-, enableLDAP ? false
-, enablePrinting ? false
-, enableMDNS ? false
-, enableDomainController ? false
-, enableRegedit ? true
-, enableCephFS ? false
-, enableGlusterFS ? false
-, enableAcl ? (!stdenv.isDarwin)
-, enablePam ? (!stdenv.isDarwin)
+, enableLDAP ? false, openldap
+, enablePrinting ? false, cups
+, enableProfiling ? true
+, enableMDNS ? false, avahi
+, enableDomainController ? false, gpgme, lmdb
+, enableKerberos ? true, krb5Full
+, enableRegedit ? true, ncurses
+, enableCephFS ? false, libceph
+, enableGlusterFS ? false, glusterfs, libuuid
+, enableAcl ? (!stdenv.isDarwin), acl
+, enablePam ? (!stdenv.isDarwin), pam
 }:
 
-with lib;
+with stdenv.lib;
 
 stdenv.mkDerivation rec {
   pname = "samba";
-  version = "4.11.5";
+  version = "4.12.0";
 
   src = fetchurl {
     url = "mirror://samba/pub/samba/stable/${pname}-${version}.tar.gz";
-    sha256 = "0gyr773dl0krcra6pvyp8i9adj3r16ihrrm2b71c0974cbzrkqpk";
+    sha256 = "1zk5jqnkifkfi6ssn02bh2ih7vyw2nsr0angsd6kyg3xaq5bgh3f";
   };
 
   outputs = [ "out" "dev" "man" ];
@@ -34,24 +56,42 @@ stdenv.mkDerivation rec {
     ./patch-source3__libads__kerberos_keytab.c.patch
     ./4.x-no-persistent-install-dynconfig.patch
     ./4.x-fix-makeflags-parsing.patch
-    (fetchpatch {
-      name = "test-oLschema2ldif-fmemopen.patch";
-      url = "https://gitlab.com/samba-team/samba/commit/5e517e57c9d4d35e1042a49d3592652b05f0c45b.patch";
-      sha256 = "1bbldf794svsdvcbp649imghmj0jck7545d3k9xs953qkkgwkbxi";
-    })
   ];
 
-  nativeBuildInputs = optionals stdenv.isDarwin [ rpcgen fixDarwinDylibNames ];
+  nativeBuildInputs = [
+    pkgconfig
+    bison
+    flex
+    perl
+    perl.pkgs.ParseYapp
+    libxslt
+    docbook_xsl
+    docbook_xml_dtd_45
+    cmocka
+  ] ++ optionals stdenv.isDarwin [
+    rpcgen
+    fixDarwinDylibNames
+  ];
 
   buildInputs = [
-    python pkgconfig perl libxslt docbook_xsl docbook_xml_dtd_42 /*
-    docbook_xml_dtd_45 */ readline popt iniparser jansson
-    libbsd libarchive zlib fam libiconv gettext libunwind krb5Full gnutls
-  ] ++ optionals stdenv.isLinux [ libaio systemd ]
+    python
+    readline
+    popt
+    jansson
+    libbsd
+    libarchive
+    zlib
+    fam
+    libunwind
+    gnutls
+    libtasn1
+    tdb
+  ] ++ optionals stdenv.isLinux [ liburing systemd ]
     ++ optional enableLDAP openldap
     ++ optional (enablePrinting && stdenv.isLinux) cups
     ++ optional enableMDNS avahi
     ++ optionals enableDomainController [ gpgme lmdb ]
+    ++ optional enableKerberos krb5Full
     ++ optional enableRegedit ncurses
     ++ optional (enableCephFS && stdenv.isLinux) libceph
     ++ optionals (enableGlusterFS && stdenv.isLinux) [ glusterfs libuuid ]
@@ -71,8 +111,6 @@ stdenv.mkDerivation rec {
   configureFlags = [
     "--with-static-modules=NONE"
     "--with-shared-modules=ALL"
-    "--with-system-mitkrb5"
-    "--with-system-mitkdc" krb5Full
     "--enable-fhs"
     "--sysconfdir=/etc"
     "--localstatedir=/var"
@@ -80,7 +118,13 @@ stdenv.mkDerivation rec {
   ] ++ singleton (if enableDomainController
          then "--with-experimental-mit-ad-dc"
          else "--without-ad-dc")
-    ++ optionals (!enableLDAP) [ "--without-ldap" "--without-ads" ]
+    ++ optionals enableKerberos [
+    "--with-system-mitkrb5"
+    "--with-system-mitkdc=${krb5Full}"
+  ] ++ optionals (!enableLDAP) [
+    "--without-ldap"
+    "--without-ads"
+  ] ++ optional enableProfiling "--with-profiling-data"
     ++ optional (!enableAcl) "--without-acl-support"
     ++ optional (!enablePam) "--without-pam";
 
diff --git a/pkgs/servers/search/groonga/default.nix b/pkgs/servers/search/groonga/default.nix
index 57f3b2e0f1b..3877740c84c 100644
--- a/pkgs/servers/search/groonga/default.nix
+++ b/pkgs/servers/search/groonga/default.nix
@@ -7,11 +7,11 @@
 stdenv.mkDerivation rec {
 
   pname = "groonga";
-  version = "9.1.2";
+  version = "10.0.0";
 
   src = fetchurl {
     url    = "https://packages.groonga.org/source/groonga/${pname}-${version}.tar.gz";
-    sha256 = "0zj9zribkg4x6c6175pwl4i6jpxg045bca1ywfrfcdsxkjllvk7g";
+    sha256 = "01wacd9rijnjydshsl7z0waasr87gxkwr0kr647chczcxlh1b9gr";
   };
 
   buildInputs = with stdenv.lib;
diff --git a/pkgs/servers/search/solr/default.nix b/pkgs/servers/search/solr/default.nix
index 701d3880cbd..0da61861207 100644
--- a/pkgs/servers/search/solr/default.nix
+++ b/pkgs/servers/search/solr/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "solr";
-  version = "8.4.1";
+  version = "8.5.0";
 
   src = fetchurl {
     url = "mirror://apache/lucene/${pname}/${version}/${pname}-${version}.tgz";
-    sha256 = "00a35a6ppd4ngp80dxak3bqrp8vmx0wixr4x2h2p9qxj4khf2fgc";
+    sha256 = "1pb1vja9spybkp2qw150kymy47njy06b5pic7mrfjq5as0d72m4y";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/sickbeard/sickgear.nix b/pkgs/servers/sickbeard/sickgear.nix
index 8df674111ad..cd98af51e08 100644
--- a/pkgs/servers/sickbeard/sickgear.nix
+++ b/pkgs/servers/sickbeard/sickgear.nix
@@ -4,13 +4,13 @@ let
   pythonEnv = python2.withPackages(ps: with ps; [ cheetah ]);
 in stdenv.mkDerivation rec {
   pname = "sickgear";
-  version = "0.21.17";
+  version = "0.21.22";
 
   src = fetchFromGitHub {
     owner = "SickGear";
     repo = "SickGear";
     rev = "release_${version}";
-    sha256 = "0hyrsxaill7x9g4bp6mri9i3ll75y7j1xxc226gw2c817zc6ayms";
+    sha256 = "16jwvg9mcv0yr94ldncfs6bczyv4n3q9v7g7v0ssrkrnkxh722zx";
   };
 
   dontBuild = true;
diff --git a/pkgs/servers/sickbeard/sickrage.nix b/pkgs/servers/sickbeard/sickrage.nix
index cbde11e3dc0..1a187dffd23 100644
--- a/pkgs/servers/sickbeard/sickrage.nix
+++ b/pkgs/servers/sickbeard/sickrage.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, python2, makeWrapper }:
 
 python2.pkgs.buildPythonApplication rec {
-  name = "sickrage-${version}";
+  pname = "sickrage";
   version = "v2018.07.21-1";
 
   src = fetchFromGitHub {
diff --git a/pkgs/servers/sozu/default.nix b/pkgs/servers/sozu/default.nix
new file mode 100644
index 00000000000..f7feda5e916
--- /dev/null
+++ b/pkgs/servers/sozu/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, rustPlatform, fetchFromGitHub }:
+
+rustPlatform.buildRustPackage rec {
+    pname = "sozu";
+    version = "0.11.46";
+
+    src = fetchFromGitHub {
+        owner = "sozu-proxy";
+        repo = pname;
+        rev = version;
+        sha256 = "0anng5qvdx9plxs9qqr5wmjjz0gx5113jq28xwbxaaklvd4ni7cm";
+    };
+
+    cargoSha256 = "19c2s9h4jk9pff72wdqw384mvrf40d8x4sx7qysnpb4hayq2ijh3";
+
+    meta = with stdenv.lib; {
+        description = "Open Source HTTP Reverse Proxy built in Rust for Immutable Infrastructures";
+        homepage = "https://sozu.io";
+        license = licenses.agpl3;
+        maintainers = with maintainers; [ filalex77 ];
+    };
+}
\ No newline at end of file
diff --git a/pkgs/servers/sql/dolt/default.nix b/pkgs/servers/sql/dolt/default.nix
index 27ab7d444bf..6f7f81f2378 100644
--- a/pkgs/servers/sql/dolt/default.nix
+++ b/pkgs/servers/sql/dolt/default.nix
@@ -1,23 +1,21 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ stdenv, fetchFromGitHub, lib, buildGoModule }:
 
 buildGoModule rec {
     pname = "dolt";
-    version = "0.15.0";
+    version = "0.15.2";
 
     src = fetchFromGitHub {
         owner = "liquidata-inc";
         repo = "dolt";
         rev = "v${version}";
-        sha256 = "1zn5ws6x42niwq9rscn63ddpp0558k0lgncmf01p243jlkdnfsg3";
+        sha256 = "0av21czfxpwy4y7n9x6hy6m2fliqcazjx7ww0rwm6kdwxipq1xsz";
     };
 
     modRoot = "./go";
     subPackages = [ "cmd/dolt" "cmd/git-dolt" "cmd/git-dolt-smudge" ];
-    modSha256 = "04bsj8mfamnbq3y2aqbx1605azi8v15nbdh1zk5grni0ihlal75a";
+    modSha256 = "0c120gkkswg0cqvvhjkxvalr4fsjv81khwg0x0fm8fr6lipkfksn";
 
-    buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-    meta = with stdenv.lib; {
+    meta = with lib; {
         description = "Relational database with version control and CLI a-la Git.";
         homepage = "https://github.com/liquidata-inc/dolt";
         license = licenses.asl20;
diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix
index 2b287c8f6ff..9c23da852f5 100644
--- a/pkgs/servers/sql/mariadb/default.nix
+++ b/pkgs/servers/sql/mariadb/default.nix
@@ -1,9 +1,12 @@
-{ stdenv, fetchurl, fetchFromGitHub, cmake, pkgconfig, makeWrapper, ncurses, zlib, xz, lzo, lz4, bzip2, snappy
+{ stdenv, fetchurl, fetchFromGitHub, cmake, pkgconfig, makeWrapper, ncurses
 , libiconv, openssl, pcre, boost, judy, bison, libxml2, libkrb5, linux-pam, curl
-, libaio, libevent, jemalloc, cracklib, systemd, perl
+, libaio, libevent, jemalloc450, jemalloc, cracklib, systemd, perl
+, bzip2, lz4, lzo, snappy, xz, zlib, zstd
 , fixDarwinDylibNames, cctools, CoreServices, less
 , numactl # NUMA Support
 , withStorageMroonga ? true, kytea, msgpack, zeromq
+, withStorageRocks ? true
+, withStorageToku ? true
 }:
 
 with stdenv.lib;
@@ -34,9 +37,11 @@ common = rec { # attributes common to both builds
   nativeBuildInputs = [ cmake pkgconfig ];
 
   buildInputs = [
-    ncurses openssl zlib pcre jemalloc libiconv curl
+    ncurses openssl zlib pcre libiconv curl
   ] ++ optionals stdenv.hostPlatform.isLinux [ libaio systemd libkrb5 ]
-    ++ optionals stdenv.hostPlatform.isDarwin [ perl fixDarwinDylibNames cctools CoreServices ];
+    ++ optionals stdenv.hostPlatform.isDarwin [ perl fixDarwinDylibNames cctools CoreServices ]
+    ++ optional (!stdenv.hostPlatform.isDarwin && withStorageToku) [ jemalloc450 ]
+    ++ optional (!stdenv.hostPlatform.isDarwin && !withStorageToku) [ jemalloc ];
 
   prePatch = ''
     sed -i 's,[^"]*/var/log,/var/log,g' storage/mroonga/vendor/groonga/CMakeLists.txt
@@ -80,8 +85,6 @@ common = rec { # attributes common to both builds
     # to pass in java explicitly.
     "-DCONNECT_WITH_JDBC=OFF"
     "-DCURSES_LIBRARY=${ncurses.out}/lib/libncurses.dylib"
-  ] ++ optionals stdenv.hostPlatform.isMusl [
-    "-DWITHOUT_TOKUDB=1" # mariadb docs say disable this for musl
   ];
 
   postInstall = ''
@@ -99,6 +102,7 @@ common = rec { # attributes common to both builds
   passthru.mysqlVersion = "5.7";
 
   meta = {
+
     description = "An enhanced, drop-in replacement for MySQL";
     homepage    = https://mariadb.org/;
     license     = licenses.gpl2;
@@ -138,11 +142,11 @@ server = stdenv.mkDerivation (common // {
 
   outputs = [ "out" "man" ];
 
-  nativeBuildInputs = common.nativeBuildInputs ++ [ bison ] ++ optional (!stdenv.hostPlatform.isDarwin) makeWrapper;
+  nativeBuildInputs = common.nativeBuildInputs ++ [ bison boost.dev ] ++ optional (!stdenv.hostPlatform.isDarwin) makeWrapper;
 
   buildInputs = common.buildInputs ++ [
-    xz lzo lz4 bzip2 snappy
-    libxml2 boost judy libevent cracklib
+    bzip2 lz4 lzo snappy xz zstd
+    libxml2 judy libevent cracklib
   ] ++ optional (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32) numactl
     ++ optionals withStorageMroonga [ kytea msgpack zeromq ]
     ++ optional stdenv.hostPlatform.isLinux linux-pam
@@ -166,10 +170,17 @@ server = stdenv.mkDerivation (common // {
   ] ++ optional (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32) [
     "-DWITH_NUMA=ON"
   ] ++ optional (!withStorageMroonga) [
-    "-DWITHOUT_MROONGA=ON"
-  ] ++ optionals stdenv.hostPlatform.isDarwin [
-    "-DWITHOUT_OQGRAPH=1"
+    "-DWITHOUT_MROONGA=1"
+  ] ++ optional (!withStorageRocks) [
+    "-DWITHOUT_ROCKSDB=1"
+  ] ++ optional (!stdenv.hostPlatform.isDarwin && withStorageRocks) [
+    "-DWITH_ROCKSDB_JEMALLOC=ON"
+  ] ++ optional (stdenv.hostPlatform.isDarwin || stdenv.hostPlatform.isMusl || !withStorageToku) [
     "-DWITHOUT_TOKUDB=1"
+  ] ++ optional (!stdenv.hostPlatform.isDarwin && withStorageToku) [
+    "-DWITH_JEMALLOC=static"
+  ] ++ optional stdenv.hostPlatform.isDarwin [
+    "-DWITHOUT_OQGRAPH=1"
   ];
 
   preConfigure = optionalString (!stdenv.hostPlatform.isDarwin) ''
diff --git a/pkgs/servers/tailscale/default.nix b/pkgs/servers/tailscale/default.nix
index 2fc08e754b1..e4cc0889c31 100644
--- a/pkgs/servers/tailscale/default.nix
+++ b/pkgs/servers/tailscale/default.nix
@@ -2,12 +2,12 @@
 
 buildGoModule rec {
   pname = "tailscale";
-  version = "0.97-0";
+  version = "0.97";
 
   src = fetchFromGitHub {
     owner = "tailscale";
     repo = "tailscale";
-    rev = "dd14b658a2f42a3b4d78682e4f4f82f730262c5c";
+    rev = "v${version}";
     sha256 = "0ckjqhj99c25h8xgyfkrd19nw5w4a7972nvba9r5faw5micjs02n";
   };
 
diff --git a/pkgs/servers/traefik/default.nix b/pkgs/servers/traefik/default.nix
index 1707eb403b7..f3c97e8adcc 100644
--- a/pkgs/servers/traefik/default.nix
+++ b/pkgs/servers/traefik/default.nix
@@ -13,7 +13,7 @@ buildGoPackage rec {
     sha256 = "1j3p09j8rpdkp8v4d4mz224ddakkvhzchvccm9qryrqc2fq4022v";
   };
 
-  buildInputs = [ go-bindata bash ];
+  nativeBuildInputs = [ go-bindata bash ];
 
   buildPhase = ''
     runHook preBuild
diff --git a/pkgs/servers/uwsgi/default.nix b/pkgs/servers/uwsgi/default.nix
index 7669053d229..0a1ad23c2ce 100644
--- a/pkgs/servers/uwsgi/default.nix
+++ b/pkgs/servers/uwsgi/default.nix
@@ -4,10 +4,15 @@
 , pam, withPAM ? stdenv.isLinux
 , systemd, withSystemd ? stdenv.isLinux
 , python2, python3, ncurses
-, ruby, php-embed, libmysqlclient
+, ruby, php, libmysqlclient
 }:
 
-let pythonPlugin = pkg : lib.nameValuePair "python${if pkg.isPy2 then "2" else "3"}" {
+let php-embed = php.override {
+      config.php.embed = true;
+      config.php.apxs2 = false;
+    };
+
+    pythonPlugin = pkg : lib.nameValuePair "python${if pkg.isPy2 then "2" else "3"}" {
                            interpreter = pkg.interpreter;
                            path = "plugins/python";
                            inputs = [ pkg ncurses ];
diff --git a/pkgs/servers/web-apps/matomo/default.nix b/pkgs/servers/web-apps/matomo/default.nix
index 90a9a88986e..26ab5a6bb4d 100644
--- a/pkgs/servers/web-apps/matomo/default.nix
+++ b/pkgs/servers/web-apps/matomo/default.nix
@@ -3,16 +3,16 @@
 let
   versions = {
     matomo = {
-      version = "3.13.3";
-      sha256 = "11mv7q33nhlz9ylsmwrhs315p14imr7sgr70gdbmi9p8jxc7kxrz";
+      version = "3.13.4";
+      sha256 = "0yd24hn3ajj5bhzv8f5xr6wpgh2ma9zilzbm9c1n225q553scgjw";
     };
 
     matomo-beta = {
-      version = "3.13.3";
+      version = "3.13.4";
       # `beta` examples: "b1", "rc1", null
       # TOOD when updating: use null if stable version is >= latest beta or release candidate
       beta = null;
-      sha256 = "11mv7q33nhlz9ylsmwrhs315p14imr7sgr70gdbmi9p8jxc7kxrz";
+      sha256 = "0yd24hn3ajj5bhzv8f5xr6wpgh2ma9zilzbm9c1n225q553scgjw";
     };
   };
   common = pname: { version, sha256, beta ? null }:
diff --git a/pkgs/servers/web-apps/mediawiki/default.nix b/pkgs/servers/web-apps/mediawiki/default.nix
index d16d59af6b9..c23fb685c60 100644
--- a/pkgs/servers/web-apps/mediawiki/default.nix
+++ b/pkgs/servers/web-apps/mediawiki/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "mediawiki";
-  version = "1.34.0";
+  version = "1.34.1";
 
   src = with stdenv.lib; fetchurl {
     url = "https://releases.wikimedia.org/mediawiki/${versions.majorMinor version}/${pname}-${version}.tar.gz";
-    sha256 = "1lckjnharwxh9xb7gxdxrkb0r3xgd0dh4019cnbixn5mmzgc696y";
+    sha256 = "0jg1ls5xy2bmvvd63lpvnkj53rfmik6sy2px14mphxba3gbcpf5c";
   };
 
   prePatch = ''
diff --git a/pkgs/servers/web-apps/searx/default.nix b/pkgs/servers/web-apps/searx/default.nix
index 6545151df23..ff44fbd89b1 100644
--- a/pkgs/servers/web-apps/searx/default.nix
+++ b/pkgs/servers/web-apps/searx/default.nix
@@ -4,37 +4,40 @@ with python3Packages;
 
 buildPythonApplication rec {
   pname = "searx";
-  version = "0.15.0";
+  version = "0.16.0";
 
   # Can not use PyPI because certain test files are missing.
   src = fetchFromGitHub {
     owner = "asciimoo";
     repo = "searx";
     rev = "v${version}";
-    sha256 = "05si0fn57z1g80l6003cs0ypag2m6zyi3dgsi06pvjp066xbrjvd";
+    sha256 = "0hfa4nmis98yvghxw866rzjpmhb2ln8l6l8g9yx4m79b2lk76xcs";
   };
 
   postPatch = ''
     substituteInPlace requirements.txt \
-      --replace 'certifi==2017.11.5' 'certifi' \
-      --replace 'flask==1.0.2' 'flask==1.0.*' \
-      --replace 'flask-babel==0.11.2' 'flask-babel==0.11.*' \
-      --replace 'lxml==4.2.3' 'lxml==4.2.*' \
-      --replace 'idna==2.7' 'idna' \
+      --replace 'certifi==2019.3.9' 'certifi' \
+      --replace 'flask==1.0.2' 'flask' \
+      --replace 'flask-babel==0.12.2' 'flask-babel' \
+      --replace 'jinja2==2.10.1' 'jinja2' \
+      --replace 'lxml==4.3.3' 'lxml' \
+      --replace 'idna==2.8' 'idna' \
       --replace 'pygments==2.1.3' 'pygments>=2.1,<3.0' \
-      --replace 'pyopenssl==18.0.0' 'pyopenssl' \
-      --replace 'python-dateutil==2.7.3' 'python-dateutil==2.7.*'
+      --replace 'pyopenssl==19.0.0' 'pyopenssl' \
+      --replace 'python-dateutil==2.8.0' 'python-dateutil==2.8.*' \
+      --replace 'pyyaml==5.1' 'pyyaml'
     substituteInPlace requirements-dev.txt \
       --replace 'plone.testing==5.0.0' 'plone.testing' \
-      --replace 'pep8==1.7.1' 'pep8==1.7.*' \
-      --replace 'splinter==0.7.5' 'splinter' \
-      --replace 'selenium==3.5.0' 'selenium'
+      --replace 'pep8==1.7.0' 'pep8==1.7.*' \
+      --replace 'splinter==0.11.0' 'splinter' \
+      --replace 'selenium==3.141.0' 'selenium'
   '';
 
   propagatedBuildInputs = [
     pyyaml lxml grequests flaskbabel flask requests
     gevent speaklater Babel pytz dateutil pygments
     pyasn1 pyasn1-modules ndg-httpsclient certifi pysocks
+    jinja2
   ];
 
   checkInputs = [
@@ -44,13 +47,12 @@ buildPythonApplication rec {
 
   preCheck = ''
     rm tests/test_robot.py # A variable that is imported is commented out
-    rm tests/unit/engines/pubmed.py
   '';
 
   meta = with lib; {
     homepage = https://github.com/asciimoo/searx;
     description = "A privacy-respecting, hackable metasearch engine";
     license = licenses.agpl3Plus;
-    maintainers = with maintainers; [ matejc fpletz globin ];
+    maintainers = with maintainers; [ matejc fpletz globin danielfullmer ];
   };
 }
diff --git a/pkgs/servers/web-apps/shiori/default.nix b/pkgs/servers/web-apps/shiori/default.nix
index bd17f2f267c..dd4cdc08287 100644
--- a/pkgs/servers/web-apps/shiori/default.nix
+++ b/pkgs/servers/web-apps/shiori/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "shiori";
@@ -13,8 +13,6 @@ buildGoModule rec {
     sha256 = "13and7gh2882khqppwz3wwq44p7az4bfdfjvlnqcpqyi8xa28pmq";
   };
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "Simple bookmark manager built with Go";
     homepage = "https://github.com/go-shiori/shiori";
diff --git a/pkgs/servers/web-apps/wordpress/default.nix b/pkgs/servers/web-apps/wordpress/default.nix
index 00ea34829aa..9cab8c4a9ba 100644
--- a/pkgs/servers/web-apps/wordpress/default.nix
+++ b/pkgs/servers/web-apps/wordpress/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "wordpress";
-  version = "5.3.2";
+  version = "5.4";
 
   src = fetchurl {
     url = "https://wordpress.org/${pname}-${version}.tar.gz";
-    sha256 = "0rq1j431x0fvcpry721hxglszql4c80qr26fglcdlm51h9z6i1p1";
+    sha256 = "10zjgbr96ri87r5v7860vg5ndbnjfhjhily4m9nyl60f1lbjdhrr";
   };
 
   installPhase = ''
diff --git a/pkgs/servers/xmpp/ejabberd/default.nix b/pkgs/servers/xmpp/ejabberd/default.nix
index 0ac216b8e52..fbfae96c058 100644
--- a/pkgs/servers/xmpp/ejabberd/default.nix
+++ b/pkgs/servers/xmpp/ejabberd/default.nix
@@ -24,12 +24,12 @@ let
   ctlpath = lib.makeBinPath [ bash gnused gnugrep coreutils utillinux procps ];
 
 in stdenv.mkDerivation rec {
-  version = "20.01";
+  version = "20.03";
   pname = "ejabberd";
 
   src = fetchurl {
-    url = "https://www.process-one.net/downloads/ejabberd/${version}/${pname}-${version}.tgz";
-    sha256 = "14bgwa6y17bhnwhcqb2hdl7psds0iqkcawb4kpaw6d7lzzsx4ay6";
+    url = "https://www.process-one.net/downloads/downloads-action.php?file=/${version}/${pname}-${version}.tgz";
+    sha256 = "0i013l9cygmgainfid298n6llhs3mblfklry3jw2a6irvhffym0s";
   };
 
   nativeBuildInputs = [ fakegit ];
@@ -76,7 +76,7 @@ in stdenv.mkDerivation rec {
 
     outputHashMode = "recursive";
     outputHashAlgo = "sha256";
-    outputHash = "097c84qp00dq8x7ngfqcrv9fa0wm0k94grashmi1fxlasgbvxh18";
+    outputHash = "0xwgi9hy6y0m8mwznl6px98kdmkcxg98k62zgqbaqd4paks5zwqa";
   };
 
   configureFlags =
diff --git a/pkgs/servers/xmpp/prosody/default.nix b/pkgs/servers/xmpp/prosody/default.nix
index 8becdcd6a45..0d552e9e112 100644
--- a/pkgs/servers/xmpp/prosody/default.nix
+++ b/pkgs/servers/xmpp/prosody/default.nix
@@ -14,12 +14,12 @@ with stdenv.lib;
 
 
 stdenv.mkDerivation rec {
-  version = "0.11.3"; # also update communityModules
+  version = "0.11.5"; # also update communityModules
   pname = "prosody";
 
   src = fetchurl {
     url = "https://prosody.im/downloads/source/${pname}-${version}.tar.gz";
-    sha256 = "11xz4milv2962qf75vrdwsvd8sy2332nf69202rmvz5989pvvnng";
+    sha256 = "12s0hn6hvjbi61cdw3165l6iw0878971dmlvfg663byjsmjvvy2m";
   };
 
   # A note to all those merging automated updates: Please also update this
@@ -27,8 +27,8 @@ stdenv.mkDerivation rec {
   # version.
   communityModules = fetchhg {
     url = "https://hg.prosody.im/prosody-modules";
-    rev = "b54e98d5c4a1";
-    sha256 = "0bzn92j48krb2zhp9gn5bbn5sg0qv15j5lpxfszwqdln3lpmrvzg";
+    rev = "acd231e2b46f";
+    sha256 = "1b33lsxrrrvarknqz9xs7j7f19bzxxymmfdhch7k70x3yyiwmfsy";
   };
 
   buildInputs = [
@@ -67,7 +67,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Open-source XMPP application server written in Lua";
     license = licenses.mit;
-    homepage = https://prosody.im;
+    homepage = "https://prosody.im";
     platforms = platforms.linux;
     maintainers = with maintainers; [ fpletz globin ];
   };
diff --git a/pkgs/shells/elvish/default.nix b/pkgs/shells/elvish/default.nix
index 228692efe85..402b5a7ebca 100644
--- a/pkgs/shells/elvish/default.nix
+++ b/pkgs/shells/elvish/default.nix
@@ -1,8 +1,8 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "elvish";
-  version = "0.13";
+  version = "0.13.1";
 
   goPackagePath = "github.com/elves/elvish";
   excludedPackages = [ "website" ];
@@ -15,13 +15,11 @@ buildGoModule rec {
     owner = "elves";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0fprii430p9w8x4wq93iqkgkwi5kypwwlnzgvlcz0mkksayk8bzg";
+    sha256 = "0lz9lf1swrn67kymcp2wh67lh3c0ifqm9035gpkd3zynlq3wzqfm";
   };
 
   modSha256 = "13x4wbfj8049ygm3zbgzyr2bm4sq4x6xddrxx6shr8fydlcf1g8v";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "A friendly and expressive command shell";
     longDescription = ''
diff --git a/pkgs/shells/ion/default.nix b/pkgs/shells/ion/default.nix
index c58302df210..ca2f7a6d515 100644
--- a/pkgs/shells/ion/default.nix
+++ b/pkgs/shells/ion/default.nix
@@ -1,29 +1,24 @@
 { stdenv, fetchFromGitHub, rustPlatform }:
 
-with rustPlatform;
-
-buildRustPackage rec {
+rustPlatform.buildRustPackage rec {
   pname = "ion";
-  version = "1.0.5";
+  version = "unstable-2020-03-22";
 
   src = fetchFromGitHub {
     owner = "redox-os";
     repo = "ion";
-    rev = version;
-    sha256 = "0i0acl5nw254mw8dbfmb4792rr71is98a5wg32yylfnlrk7zlf8z";
+    rev = "1fbd29a6d539faa6eb0f3186a361e208d0a0bc05";
+    sha256 = "0r5c87cs8jlc9kpb6bi2aypldw1lngf6gzjirf13gi7iy4q08ik7";
   };
 
-  cargoSha256 = "0f266kygvw2id771g49s25qsbqb6a0gr1r0czkcj96n5r0wg8wrn";
+  cargoSha256 = "1ph3r3vspy700mb8pica8478v9arqz07k2nzpbrdkdkqgfcwlgcg";
 
   meta = with stdenv.lib; {
     description = "Modern system shell with simple (and powerful) syntax";
-    homepage = https://github.com/redox-os/ion;
+    homepage = "https://gitlab.redox-os.org/redox-os/ion";
     license = licenses.mit;
     maintainers = with maintainers; [ dywedir ];
     platforms = platforms.all;
-    # This has not had a release since 2017, and no longer compiles with the
-    # latest Rust compiler.
-    broken = false;
   };
 
   passthru = {
diff --git a/pkgs/shells/nushell/default.nix b/pkgs/shells/nushell/default.nix
index 9f3f0da75c9..43e0d2cb56a 100644
--- a/pkgs/shells/nushell/default.nix
+++ b/pkgs/shells/nushell/default.nix
@@ -15,16 +15,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "nushell";
-  version = "0.11.0";
+  version = "0.12.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "06w1118cxr5x3l7cq2wc092xvsfkgga8b6kz1gcmhwq0gf7fqirz";
+    sha256 = "0cy3rm0yr4ay4hcgw202w5k1sqw09kd75a0yyk0s0v0cxpmssf5n";
   };
 
-  cargoSha256 = "1bpb4p4j7lwb70qjsssbr878mfalil4xh8r954aaa2rlcf97fmb7";
+  cargoSha256 = "0q89841jwbsvl4c90sl8wgnjjl8q0bb3kw7sl7k9dpnfmj5j144x";
 
   nativeBuildInputs = [ pkg-config ]
     ++ lib.optionals (withStableFeatures && stdenv.isLinux) [ python3 ];
diff --git a/pkgs/shells/tcsh/default.nix b/pkgs/shells/tcsh/default.nix
index 110beb82804..e22811828fc 100644
--- a/pkgs/shells/tcsh/default.nix
+++ b/pkgs/shells/tcsh/default.nix
@@ -1,9 +1,10 @@
 { stdenv, fetchurl, fetchpatch
 , ncurses }:
 
+with stdenv.lib;
 stdenv.mkDerivation rec {
   pname = "tcsh";
-  version = "6.21.00";
+  version = "6.22.02";
 
   src = fetchurl {
     urls = [
@@ -11,7 +12,7 @@ stdenv.mkDerivation rec {
       "ftp://ftp.astron.com/pub/tcsh/${pname}-${version}.tar.gz"
       "ftp://ftp.funet.fi/pub/unix/shells/tcsh/${pname}-${version}.tar.gz"
     ];
-    sha256 = "0wp9cqkzdj5ahfyg9bn5z1wnyblqyv9vz4sc5aqmj7rp91a34f64";
+    sha256 = "0nw8prz1n0lmr82wnpyhrzmki630afn7p9cfgr3vl00vr9c72a7d";
   };
 
   buildInputs = [ ncurses ];
@@ -23,7 +24,7 @@ stdenv.mkDerivation rec {
       sha256 = "1qc6ydxhdfizsbkaxhpn3wib8sfphrw10xnnsxx2prvzg9g2zp67";
     });
 
-  meta = with stdenv.lib;{
+  meta = {
     description = "An enhanced version of the Berkeley UNIX C shell (csh)";
     longDescription = ''
       tcsh is an enhanced but completely compatible version of the
@@ -37,7 +38,7 @@ stdenv.mkDerivation rec {
       - history mechanism
       - job control
     '';
-    homepage = https://www.tcsh.org/;
+    homepage = "https://www.tcsh.org/";
     license = licenses.bsd2;
     maintainers = with maintainers; [ AndersonTorres ];
     platforms = platforms.linux ++ platforms.darwin;
diff --git a/pkgs/shells/xonsh/default.nix b/pkgs/shells/xonsh/default.nix
index 2a1688480db..2ae4abcb8ea 100644
--- a/pkgs/shells/xonsh/default.nix
+++ b/pkgs/shells/xonsh/default.nix
@@ -1,23 +1,21 @@
 { stdenv
 , fetchFromGitHub
-, fetchpatch
 , python3Packages
 , glibcLocales
 , coreutils
 , git
-, python3
 }:
 
 python3Packages.buildPythonApplication rec {
   pname = "xonsh";
-  version = "0.9.14";
+  version = "0.9.16";
 
   # fetch from github because the pypi package ships incomplete tests
   src = fetchFromGitHub {
     owner  = "xonsh";
     repo   = "xonsh";
     rev    = version;
-    sha256 = "03g8ilg4dxin3v3rzccdxx9zf8rvyqpxakn1dlpqbgsnwdwa19p4";
+    sha256 = "12k6flj9lzmriy7xhhsi2cgdk75p9mhvhdndwbn50mh2ff4wbkyj";
   };
 
   LC_ALL = "en_US.UTF-8";
@@ -46,7 +44,8 @@ python3Packages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "A Python-ish, BASHwards-compatible shell";
-    homepage = https://xon.sh/;
+    homepage = "https://xon.sh/";
+    changelog = "https://github.com/xonsh/xonsh/releases/tag/${version}";
     license = licenses.bsd3;
     maintainers = with maintainers; [ spwhitt vrthra ];
     platforms = platforms.all;
diff --git a/pkgs/shells/zsh/antibody/default.nix b/pkgs/shells/zsh/antibody/default.nix
index c0ae5e03e6c..cc4726a3cb4 100644
--- a/pkgs/shells/zsh/antibody/default.nix
+++ b/pkgs/shells/zsh/antibody/default.nix
@@ -2,16 +2,16 @@
 
 buildGoModule rec {
   pname = "antibody";
-  version = "4.3.1";
+  version = "6.0.0";
 
   src = fetchFromGitHub {
     owner = "getantibody";
     repo = "antibody";
     rev = "v${version}";
-    sha256 = "1cxg0173d3xnpyzbisj926vh3qql9rw3q4j1z900m34gw7cvsdpf";
+    sha256 = "0m7c879b3f402av20jsybq2dhhckbknlvn2n1csp7xmcz4zcyn1n";
   };
 
-  modSha256 = "08k4mzqcva7yq1zmfxhlqnd8kk70zry6cfghxl1bgmhnfjqh61qr";
+  modSha256 = "0yny1p8vll1wdqdlwyxf9m4kd5njdm7nq527blqqa680zf2k4h8b";
 
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
diff --git a/pkgs/shells/zsh/zplug/default.nix b/pkgs/shells/zsh/zplug/default.nix
new file mode 100644
index 00000000000..d35eb345dda
--- /dev/null
+++ b/pkgs/shells/zsh/zplug/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, lib, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "zplug";
+  version = "2.4.2";
+
+  src = fetchFromGitHub {
+    owner = "zplug";
+    repo = pname;
+    rev = version;
+    sha256 = "0hci1pbs3k5icwfyfw5pzcgigbh9vavprxxvakg1xm19n8zb61b3";
+  };
+
+  dontConfigure = true;
+  dontBuild = true;
+  dontPatch = true;
+
+  installPhase = ''
+    mkdir -p $out
+    cp -r $src/* $out/
+  '';
+
+  meta = with lib; {
+    description = "A next-generation plugin manager for zsh";
+    homepage = "https://github.com/zplug/zplug";
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = [ maintainers.s1341 ];
+  };
+}
diff --git a/pkgs/shells/zsh/zsh-history/default.nix b/pkgs/shells/zsh/zsh-history/default.nix
index 382b76916d3..ece3c87cb66 100644
--- a/pkgs/shells/zsh/zsh-history/default.nix
+++ b/pkgs/shells/zsh/zsh-history/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildGoModule, installShellFiles, nixosTests, Security }:
+{ lib, fetchFromGitHub, buildGoModule, installShellFiles, nixosTests }:
 
 buildGoModule rec {
   pname = "zsh-history";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   nativeBuildInputs = [ installShellFiles ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   modSha256 = "0f10b86gyn7m7lw43c8y1m30mdg0i092a319v3cb2qj05jb9vn42";
   goPackagePath = "github.com/b4b4r07/history";
 
@@ -24,7 +22,7 @@ buildGoModule rec {
     installShellCompletion --zsh --name _history $out/share/zsh/completions/_history
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A CLI to provide enhanced history for your ZSH shell";
     license = licenses.mit;
     homepage = https://github.com/b4b4r07/history;
diff --git a/pkgs/shells/zsh/zsh-nix-shell/default.nix b/pkgs/shells/zsh/zsh-nix-shell/default.nix
new file mode 100644
index 00000000000..c424cc33483
--- /dev/null
+++ b/pkgs/shells/zsh/zsh-nix-shell/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub, pkgs }:
+
+# To make use of this derivation, use
+# `programs.zsh.interactiveShellInit = "source ${pkgs.zsh-nix-shell}/share/zsh-nix-shell/nix-shell.plugin.zsh";`
+
+stdenv.mkDerivation rec {
+  pname = "zsh-nix-shell-unstable";
+  version = "2019-12-20";
+
+  src = fetchFromGitHub {
+    owner = "chisui";
+    repo = "zsh-nix-shell";
+    rev = "a65382a353eaee5a98f068c330947c032a1263bb";
+    sha256 = "0l41ac5b7p8yyjvpfp438kw7zl9dblrpd7icjg1v3ig3xy87zv0n";
+  };
+
+  installPhase = ''
+    install -D nix-shell.plugin.zsh --target-directory=$out/share/zsh-nix-shell
+    install -D scripts/* --target-directory=$out/share/zsh-nix-shell/scripts
+  '';
+
+  meta = with stdenv.lib; {
+    description = "zsh plugin that lets you use zsh in nix-shell shell";
+    homepage = src.meta.homepage;
+    license = licenses.bsd3;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ aw ];
+  };
+}
diff --git a/pkgs/shells/zsh/zsh-powerlevel10k/default.nix b/pkgs/shells/zsh/zsh-powerlevel10k/default.nix
index 777ec6e63c1..7fac0fb8ab8 100644
--- a/pkgs/shells/zsh/zsh-powerlevel10k/default.nix
+++ b/pkgs/shells/zsh/zsh-powerlevel10k/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   pname = "powerlevel10k";
-  version = "1.4.0";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner = "romkatv";
     repo = "powerlevel10k";
     rev = "v${version}";
-    sha256 = "03v8qlblgdazbm16gwr87blm5nxizza61f8w6hjyhgrx51ly9ln5";
+    sha256 = "0r8vccgfy85ryswaigzgwmvhvrhlap7nrg7bi66w63877znqlksj";
   };
 
   patches = [
diff --git a/pkgs/stdenv/linux/default.nix b/pkgs/stdenv/linux/default.nix
index 60c0730dce1..6c396b27746 100644
--- a/pkgs/stdenv/linux/default.nix
+++ b/pkgs/stdenv/linux/default.nix
@@ -16,13 +16,11 @@
       armv7l-linux = import ./bootstrap-files/armv7l.nix;
       aarch64-linux = import ./bootstrap-files/aarch64.nix;
       mipsel-linux = import ./bootstrap-files/loongson2f.nix;
-      powerpc64le-linux = import ./bootstrap-files/ppc64le.nix;
     };
     musl = {
       aarch64-linux = import ./bootstrap-files/aarch64-musl.nix;
       armv6l-linux  = import ./bootstrap-files/armv6l-musl.nix;
       x86_64-linux  = import ./bootstrap-files/x86_64-musl.nix;
-      powerpc64le-linux = import ./bootstrap-files/ppc64le-musl.nix;
     };
   };
 
diff --git a/pkgs/tools/X11/arandr/default.nix b/pkgs/tools/X11/arandr/default.nix
index 51f2f5ec249..3fffd1dbc1a 100644
--- a/pkgs/tools/X11/arandr/default.nix
+++ b/pkgs/tools/X11/arandr/default.nix
@@ -5,8 +5,11 @@
 
 let
   inherit (python3Packages) buildPythonApplication docutils pygobject3;
+  pname = "arandr";
+  version = "0.1.10";
+  name = "${pname}-${version}";
 in buildPythonApplication rec {
-  name = "arandr-0.1.10";
+  inherit pname version;
 
   src = fetchurl {
     url = "https://christian.amsuess.com/tools/arandr/files/${name}.tar.gz";
diff --git a/pkgs/tools/X11/xidlehook/default.nix b/pkgs/tools/X11/xidlehook/default.nix
index a4bc2295f1b..943fdb2711c 100644
--- a/pkgs/tools/X11/xidlehook/default.nix
+++ b/pkgs/tools/X11/xidlehook/default.nix
@@ -3,7 +3,7 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "xidlehook";
-  version = "0.8.0";
+  version = "0.8.2";
 
   doCheck = false;
 
@@ -12,11 +12,11 @@ rustPlatform.buildRustPackage rec {
     repo = "xidlehook";
     rev = version;
 
-    sha256 = "127b20y86xs2wq5ka236057nyrh87fgzhjqbl6azf002afnbsn5m";
+    sha256 = "1zvr3vk76x0gsq6z5rrnliv2bvshsm8bhkspc41bbj4kniz4h5bw";
   };
 
   cargoBuildFlags = lib.optionals (!stdenv.isLinux) ["--no-default-features" "--features" "pulse"];
-  cargoSha256 = "0wakw3pqgwfwarjfb3h0a2javrhnf509v3j547a7p9k5kbjb5np0";
+  cargoSha256 = "0dxz5mbdc93xb02vnmd29i2kdh05c7vx9h28x5qgs3jvddyb3xmn";
 
   buildInputs = [ xlibsWrapper xorg.libXScrnSaver libpulseaudio ] ++ lib.optional stdenv.isDarwin Security;
   nativeBuildInputs = [ pkgconfig patchelf python3 ];
@@ -32,5 +32,6 @@ rustPlatform.buildRustPackage rec {
     license = licenses.mit;
     maintainers = with maintainers; [ jD91mZM2 ];
     platforms = platforms.unix;
+    badPlatforms = platforms.darwin;
   };
 }
diff --git a/pkgs/tools/X11/xpra/xf86videodummy/0002-Constant-DPI.patch b/pkgs/tools/X11/xpra/0002-Constant-DPI.patch
index f91e53d1e49..f91e53d1e49 100644
--- a/pkgs/tools/X11/xpra/xf86videodummy/0002-Constant-DPI.patch
+++ b/pkgs/tools/X11/xpra/0002-Constant-DPI.patch
diff --git a/pkgs/tools/X11/xpra/xf86videodummy/0003-fix-pointer-limits.patch b/pkgs/tools/X11/xpra/0003-fix-pointer-limits.patch
index 3dbb6fd179f..3dbb6fd179f 100644
--- a/pkgs/tools/X11/xpra/xf86videodummy/0003-fix-pointer-limits.patch
+++ b/pkgs/tools/X11/xpra/0003-fix-pointer-limits.patch
diff --git a/pkgs/tools/X11/xpra/xf86videodummy/0005-support-for-30-bit-depth-in-dummy-driver.patch b/pkgs/tools/X11/xpra/0005-support-for-30-bit-depth-in-dummy-driver.patch
index 567db3fc386..567db3fc386 100644
--- a/pkgs/tools/X11/xpra/xf86videodummy/0005-support-for-30-bit-depth-in-dummy-driver.patch
+++ b/pkgs/tools/X11/xpra/0005-support-for-30-bit-depth-in-dummy-driver.patch
diff --git a/pkgs/tools/X11/xpra/default.nix b/pkgs/tools/X11/xpra/default.nix
index cef8bd49163..1f9efc31061 100644
--- a/pkgs/tools/X11/xpra/default.nix
+++ b/pkgs/tools/X11/xpra/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, callPackage, substituteAll, python3, pkgconfig
+{ stdenv, lib, fetchurl, callPackage, substituteAll, python3, pkgconfig, writeText
 , xorg, gtk3, glib, pango, cairo, gdk-pixbuf, atk
 , wrapGAppsHook, xorgserver, getopt, xauth, utillinux, which
 , ffmpeg_4, x264, libvpx, libwebp, x265
@@ -11,14 +11,30 @@ with lib;
 let
   inherit (python3.pkgs) cython buildPythonApplication;
 
-  xf86videodummy = callPackage ./xf86videodummy { };
+  xf86videodummy = xorg.xf86videodummy.overrideDerivation (p: {
+    patches = [
+      ./0002-Constant-DPI.patch
+      ./0003-fix-pointer-limits.patch
+      ./0005-support-for-30-bit-depth-in-dummy-driver.patch
+    ];
+  });
+
+  xorgModulePaths = writeText "module-paths" ''
+    Section "Files"
+      ModulePath "${xorgserver}/lib/xorg/modules"
+      ModulePath "${xorgserver}/lib/xorg/modules/extensions"
+      ModulePath "${xorgserver}/lib/xorg/modules/drivers"
+      ModulePath "${xf86videodummy}/lib/xorg/modules/drivers"
+    EndSection
+  '';
+
 in buildPythonApplication rec {
   pname = "xpra";
-  version = "3.0.7";
+  version = "3.0.8";
 
   src = fetchurl {
     url = "https://xpra.org/src/${pname}-${version}.tar.xz";
-    sha256 = "0i4c5cdr5prbz54jinsinhvb60s5s5yskjzjg47zbw0if17sp26w";
+    sha256 = "0d78bn7s03nwnyc4ryznxaivbg55kvsb26q75p8747j3562s9p2b";
   };
 
   patches = [
@@ -81,6 +97,11 @@ in buildPythonApplication rec {
     )
   '';
 
+  # append module paths to xorg.conf
+  postInstall = ''
+    cat ${xorgModulePaths} >> $out/etc/xpra/xorg.conf
+  '';
+
   doCheck = false;
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/X11/xpra/xf86videodummy/default.nix b/pkgs/tools/X11/xpra/xf86videodummy/default.nix
deleted file mode 100644
index 4e9f8860892..00000000000
--- a/pkgs/tools/X11/xpra/xf86videodummy/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ stdenv, lib, fetchurl
-, xorgproto, xorgserver
-, pkgconfig }:
-
-with lib;
-
-stdenv.mkDerivation rec {
-  version = "0.3.8";
-  suffix = "1";
-  name = "xpra-xf86videodummy-${version}-${suffix}";
-  builder = ../../../../servers/x11/xorg/builder.sh;
-  src = fetchurl {
-    url = "mirror://xorg/individual/driver/xf86-video-dummy-${version}.tar.bz2";
-    sha256 = "1fcm9vwgv8wnffbvkzddk4yxrh3kc0np6w65wj8k88q7jf3bn4ip";
-  };
-  patches = [
-    ./0002-Constant-DPI.patch
-    ./0003-fix-pointer-limits.patch
-    ./0005-support-for-30-bit-depth-in-dummy-driver.patch
-  ];
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ xorgproto xorgserver ];
-
-  meta = {
-    description = "Dummy driver for Xorg with xpra patches";
-    homepage = https://xpra.org/trac/wiki/Xdummy;
-    license = licenses.gpl2;
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ numinit ];
-  };
-}
diff --git a/pkgs/tools/admin/aws-vault/default.nix b/pkgs/tools/admin/aws-vault/default.nix
index 3e145f73236..48a1de61cd8 100644
--- a/pkgs/tools/admin/aws-vault/default.nix
+++ b/pkgs/tools/admin/aws-vault/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, stdenv, fetchFromGitHub, Security }:
+{ buildGoModule, lib, fetchFromGitHub }:
 buildGoModule rec {
   pname = "aws-vault";
   version = "5.3.2";
@@ -13,15 +13,13 @@ buildGoModule rec {
   modSha256 = "1d3hjfmfmlpw2scfyn597zkzz864w97p0wrsxjp49m9mi0pgmhq9";
   subPackages = [ "." ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   # set the version. see: aws-vault's Makefile
   buildFlagsArray = ''
     -ldflags=
     -X main.Version=v${version}
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description =
       "A vault for securely storing and accessing AWS credentials in development environments";
     homepage = "https://github.com/99designs/aws-vault";
diff --git a/pkgs/tools/admin/awsweeper/default.nix b/pkgs/tools/admin/awsweeper/default.nix
index 1ea54953701..661747c2fd0 100644
--- a/pkgs/tools/admin/awsweeper/default.nix
+++ b/pkgs/tools/admin/awsweeper/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "awsweeper";
@@ -13,9 +13,7 @@ buildGoModule rec {
 
   modSha256 = "14yvf0svh7xqpc2y7xr94pc6r7d3iv2nsr8qs3f5q29hdc5hv3fs";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A tool to clean out your AWS account";
     homepage = "https://github.com/cloudetc/awsweeper/";
     license = licenses.mpl20;
diff --git a/pkgs/tools/admin/azure-cli/default.nix b/pkgs/tools/admin/azure-cli/default.nix
index 69e0a2afe6e..13fdf6dcd0d 100644
--- a/pkgs/tools/admin/azure-cli/default.nix
+++ b/pkgs/tools/admin/azure-cli/default.nix
@@ -1,12 +1,12 @@
 { stdenv, lib, python, fetchFromGitHub, installShellFiles }:
 
 let
-  version = "2.1.0";
+  version = "2.2.0";
   src = fetchFromGitHub {
     owner = "Azure";
     repo = "azure-cli";
     rev = "azure-cli-${version}";
-    sha256 = "0f4wrqp9f4n4mk73ybx08ybvmxx88r6g5cvx8ld6ybhl2w8bbn9v";
+    sha256 = "0bqkvx1gp4bhpjn5nrjc08lq8wldl1icrz6q1llaxgvqqmc8hcgp";
   };
 
   # put packages that needs to be overriden in the py package scope
diff --git a/pkgs/tools/admin/azure-cli/python-packages.nix b/pkgs/tools/admin/azure-cli/python-packages.nix
index 7b43ba209c2..3c598e67a71 100644
--- a/pkgs/tools/admin/azure-cli/python-packages.nix
+++ b/pkgs/tools/admin/azure-cli/python-packages.nix
@@ -11,10 +11,7 @@ let
     '';
 
     # Prevent these __init__'s from violating PEP420, only needed for python2
-    postInstall = (attrs.postInstall or "") + ''
-      rm $out/${python.sitePackages}/azure/{,__pycache__/}__init__.* \
-         $out/${python.sitePackages}/azure/cli/{,__pycache__/}__init__.*
-    '';
+    pythonNamespaces = [ "azure.cli" ];
 
     checkInputs = [ mock pytest ] ++ (attrs.checkInputs or []);
     checkPhase = attrs.checkPhase or ''
@@ -39,9 +36,7 @@ let
       '';
 
       # force PEP420
-      postInstall = ''
-        rm -f $out/${py.sitePackages}/azure/{,mgmt/}__init__.py
-      '';
+      pythonNamespaces = [ "azure.mgmt" ];
     });
 
   py = python.override {
@@ -116,11 +111,14 @@ let
         '';
       };
 
+      azure-batch = overrideAzureMgmtPackage super.azure-batch "8.0.0" "zip"
+        "1j8nibnics9vakhqiwnjv7bwril7mfyz1svcvvsrb9a4wbdd12wi";
+
       azure-mgmt-policyinsights = overrideAzureMgmtPackage super.azure-mgmt-policyinsights "0.4.0" "zip"
         "1b69rz9wm0jvc54vx3b7h633x8gags51xwxrkp6myar40jggxw6g";
 
-      azure-mgmt-rdbms = overrideAzureMgmtPackage super.azure-mgmt-rdbms "1.9.0" "zip"
-        "0v91hl936wp9sl3bc31svf6kdxwa57qh6ih9rrv43dnb2000km6r";
+      azure-mgmt-rdbms = overrideAzureMgmtPackage super.azure-mgmt-rdbms "2.0.0" "zip"
+        "19z0lpq6bpidlflwa263y51549xgcg4m040k872m7fmy7jm2xcbb";
 
       azure-mgmt-recoveryservicesbackup = overrideAzureMgmtPackage super.azure-mgmt-recoveryservicesbackup "0.6.0" "zip"
         "13s2k4jl8570bj6jkqzm0w29z29rl7h5i7czd3kr6vqar5wj9xjd";
@@ -131,8 +129,11 @@ let
       azure-mgmt-appconfiguration = overrideAzureMgmtPackage super.azure-mgmt-appconfiguration "0.4.0" "zip"
         "1dn5585nsizszjivx6lp677ka0mrg0ayqgag4yzfdz9ml8mj1xl5";
 
-      azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "10.0.0" "zip"
-        "1s3bx6knxw5dxycp43yimvgrh0i19drzd09asglcwz2x5mr3bpyg";
+      azure-mgmt-cognitiveservices = overrideAzureMgmtPackage super.azure-mgmt-cognitiveservices "5.0.0" "zip"
+        "1m7v3rfkvmdgghrpz15fm8pvmmhi40lcwfxdm2kxh7mx01r5l906";
+
+      azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "11.0.0" "zip"
+        "1dnlql4z9wawf8gc1v4rr386pifwcnx3ycr4gdccqwkgimgpsdg4";
 
       azure-mgmt-consumption = overrideAzureMgmtPackage super.azure-mgmt-consumption "2.0.0" "zip"
         "12ai4qps73ivawh0yzvgb148ksx02r30pqlvfihx497j62gsi1cs";
@@ -140,8 +141,8 @@ let
       azure-mgmt-containerservice = overrideAzureMgmtPackage super.azure-mgmt-containerservice "8.1.0" "zip"
         "07vpzhvi2946v5dn9cb2hkd1b9vj5c6zl32958bg2bxsjg9vvyi1";
 
-      azure-mgmt-cosmosdb = overrideAzureMgmtPackage super.azure-mgmt-cosmosdb "0.11.0" "zip"
-        "05j0s2ng6ck35lw85cbjf5cm6canc71c41aagr68cmiqj1li6v1z";
+      azure-mgmt-cosmosdb = overrideAzureMgmtPackage super.azure-mgmt-cosmosdb "0.12.0" "zip"
+        "07c0hr7nha9789x1wz0ndca0sr0zscq63m9vd8pm1c6y0ss4iyn5";
 
       azure-mgmt-deploymentmanager = overrideAzureMgmtPackage super.azure-mgmt-deploymentmanager "0.2.0" "zip"
         "0c6pyr36n9snx879vas5r6l25db6nlp2z96xn759mz4kg4i45qs6";
@@ -188,8 +189,8 @@ let
       azure-mgmt-security = overrideAzureMgmtPackage super.azure-mgmt-security "0.1.0" "zip"
         "1cb466722bs0ribrirb32kc299716pl0pwivz3jyn40dd78cwhhx";
 
-      azure-mgmt-sql = overrideAzureMgmtPackage super.azure-mgmt-sql "0.15.0" "zip"
-        "0qv58xraznv2ldhd34cvznhz045x3ncfgam9c12gxyj4q0k3pyc9";
+      azure-mgmt-sql = overrideAzureMgmtPackage super.azure-mgmt-sql "0.17.0" "zip"
+        "1kp1wzcydgyc2mzkxigfv6rqzwzf3d0cnbqc6w7h907qbb4lw2r0";
 
       azure-mgmt-sqlvirtualmachine = overrideAzureMgmtPackage super.azure-mgmt-sqlvirtualmachine "0.5.0" "zip"
         "1b9am8raa17hxnz7d5pk2ix0309wsnhnchq1mi22icd728sl5adm";
@@ -206,11 +207,11 @@ let
       azure-mgmt-keyvault = overrideAzureMgmtPackage super.azure-mgmt-keyvault "2.1.0" "zip"
         "1ikv8b2h1r91fa0srz95ymn54qpqgb5a4faxwp4hf92r5h85c8j9";
 
-      azure-mgmt-cdn = overrideAzureMgmtPackage super.azure-mgmt-cdn "4.0.0" "zip"
-        "0aphqh4mvrc1yiyis8zvks0d19d1m3lqylr9jc8fj73iw84rwgm5";
+      azure-mgmt-cdn = overrideAzureMgmtPackage super.azure-mgmt-cdn "4.1.0rc1" "zip"
+        "00q5723gvc57kg2w1iyhfchp018skwd89ibrw23p7ngm2bb76g45";
 
-      azure-mgmt-containerregistry = overrideAzureMgmtPackage super.azure-mgmt-containerregistry "3.0.0rc8" "zip"
-        "1j2xyfid0qg95lywwsz8520r7gd8m0a487n03jxnckr91vd890v1";
+      azure-mgmt-containerregistry = overrideAzureMgmtPackage super.azure-mgmt-containerregistry "3.0.0rc9" "zip"
+        "060m4hqi1h5h53imj0vmpbzhqkwis7h91nwinpcvjs422figcv0i";
 
       azure-mgmt-monitor = overrideAzureMgmtPackage super.azure-mgmt-monitor "0.7.0" "zip"
         "1pprvk5255b6brbw73g0g13zygwa7a2px5x08wy3153rqlzan5l2";
@@ -224,8 +225,8 @@ let
       azure-mgmt-authorization = overrideAzureMgmtPackage super.azure-mgmt-authorization "0.52.0" "zip"
         "0357laxgldb7lvvws81r8xb6mrq9dwwnr1bnwdnyj4bw6p21i9hn";
 
-      azure-mgmt-storage = overrideAzureMgmtPackage super.azure-mgmt-storage "7.2.0" "zip"
-        "01ck1ankgr9ikvfghhdcs777yrl2j2p8cw9q8nfdrjp22lpchabl";
+      azure-mgmt-storage = overrideAzureMgmtPackage super.azure-mgmt-storage "8.0.0" "zip"
+        "0cxcdyy974ya1yi7s14sw54rwpc8qjngxr0jqb8vxki3528phrv3";
 
       azure-mgmt-servicefabric = overrideAzureMgmtPackage super.azure-mgmt-servicefabric "0.4.0" "zip"
         "1x18grkjf2p2r1ihlwv607sna9yjvsr2jwnkjc55askrgrwx5jx2";
@@ -274,9 +275,7 @@ let
         propagatedBuildInputs = with self; [
           azure-common azure-nspkg msrest msrestazure cryptography
         ];
-        postInstall = ''
-          rm -f $out/${self.python.sitePackages}/azure/__init__.py
-        '';
+        pythonNamespaces = [ "azure" ];
         pythonImportsCheck = [ ];
       });
 
diff --git a/pkgs/tools/admin/berglas/default.nix b/pkgs/tools/admin/berglas/default.nix
index d088184f7a1..c1c46da41b7 100644
--- a/pkgs/tools/admin/berglas/default.nix
+++ b/pkgs/tools/admin/berglas/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "berglas";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "0m2bqx102lf6nihdjbl8a08xcwi80rawvh91j1cav0njm9w5vmmm";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "A tool for managing secrets on Google Cloud";
     homepage = "https://github.com/GoogleCloudPlatform/berglas";
diff --git a/pkgs/tools/admin/bubblewrap/default.nix b/pkgs/tools/admin/bubblewrap/default.nix
index 8e2ef7c87e1..b98cadd57d1 100644
--- a/pkgs/tools/admin/bubblewrap/default.nix
+++ b/pkgs/tools/admin/bubblewrap/default.nix
@@ -2,18 +2,19 @@
 
 stdenv.mkDerivation rec {
   pname = "bubblewrap";
-  version = "0.4.0";
+  version = "0.4.1";
 
   src = fetchurl {
-    url = "https://github.com/projectatomic/bubblewrap/releases/download/v${version}/${pname}-${version}.tar.xz";
-    sha256 = "08r0f4c3fjkb4zjrb4kkax1zfcgcgic702vb62sjjw5xfhppvzp5";
+    url = "https://github.com/containers/bubblewrap/releases/download/v${version}/${pname}-${version}.tar.xz";
+    sha256 = "00ycgi6q2yngh06bnz50wkvar6r2jnjf3j158grhi9k13jdrpimr";
   };
 
-  nativeBuildInputs = [ libcap libxslt docbook_xsl ];
+  nativeBuildInputs = [ libxslt docbook_xsl ];
+  buildInputs = [ libcap ];
 
   meta = with stdenv.lib; {
     description = "Unprivileged sandboxing tool";
-    homepage = https://github.com/projectatomic/bubblewrap;
+    homepage = "https://github.com/containers/bubblewrap";
     license = licenses.lgpl2Plus;
     maintainers = with maintainers; [ ];
   };
diff --git a/pkgs/tools/admin/certbot/0001-Don-t-use-distutils.StrictVersion-that-cannot-handle.patch b/pkgs/tools/admin/certbot/0001-Don-t-use-distutils.StrictVersion-that-cannot-handle.patch
index 62351a70160..789efd185ca 100644
--- a/pkgs/tools/admin/certbot/0001-Don-t-use-distutils.StrictVersion-that-cannot-handle.patch
+++ b/pkgs/tools/admin/certbot/0001-Don-t-use-distutils.StrictVersion-that-cannot-handle.patch
@@ -22,18 +22,16 @@ ValueError: invalid version number '41.4.0.post20191022'
  1 file changed, 1 insertion(+), 14 deletions(-)
 
 diff --git a/certbot/setup.py b/certbot/setup.py
-index c1bf914..7456bf2 100644
+index d19327e5e..ac1524793 100644
 --- a/certbot/setup.py
 +++ b/certbot/setup.py
-@@ -3,7 +3,6 @@ import os
+@@ -1,5 +1,4 @@
+ import codecs
+-from distutils.version import StrictVersion
+ import os
  import re
  import sys
- 
--from distutils.version import StrictVersion
- from setuptools import find_packages, setup, __version__ as setuptools_version
- from setuptools.command.test import test as TestCommand
- 
-@@ -56,20 +55,8 @@ install_requires = [
+@@ -58,20 +57,8 @@ install_requires = [
  
  # Add pywin32 on Windows platforms to handle low-level system calls.
  # This dependency needs to be added using environment markers to avoid its installation on Linux.
@@ -54,7 +52,7 @@ index c1bf914..7456bf2 100644
 +install_requires.append(pywin32_req + " ; sys_platform == 'win32'")
  
  dev_extras = [
-     'astroid==1.6.5',
+     'coverage',
 -- 
 2.24.1
 
diff --git a/pkgs/tools/admin/certbot/default.nix b/pkgs/tools/admin/certbot/default.nix
index 8fdbfd12778..cabf335fb69 100644
--- a/pkgs/tools/admin/certbot/default.nix
+++ b/pkgs/tools/admin/certbot/default.nix
@@ -1,22 +1,27 @@
-{ stdenv, python37Packages, fetchFromGitHub, fetchurl, dialog, autoPatchelfHook }:
+{ lib
+, buildPythonApplication
+, fetchFromGitHub
+, ConfigArgParse, acme, configobj, cryptography, distro, josepy, parsedatetime, pyRFC3339, pyopenssl, pytz, requests, six, zope_component, zope_interface
+, dialog, mock, gnureadline
+, pytest_xdist, pytest, dateutil
+}:
 
-
-python37Packages.buildPythonApplication rec {
+buildPythonApplication rec {
   pname = "certbot";
-  version = "1.0.0";
+  version = "1.3.0";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "180x7gcpfbrzw8k654s7b5nxdy2yg61lq513dykyn3wz4gssw465";
+    sha256 = "1nzp1l63f64qqp89y1vyd4lgfhykfp5dkr6iwfiyf273y7sjwpsa";
   };
 
   patches = [
     ./0001-Don-t-use-distutils.StrictVersion-that-cannot-handle.patch
   ];
 
-  propagatedBuildInputs = with python37Packages; [
+  propagatedBuildInputs = [
     ConfigArgParse
     acme
     configobj
@@ -24,26 +29,21 @@ python37Packages.buildPythonApplication rec {
     distro
     josepy
     parsedatetime
-    psutil
     pyRFC3339
     pyopenssl
     pytz
+    requests
     six
     zope_component
     zope_interface
   ];
 
-  buildInputs = [ dialog ] ++ (with python37Packages; [ mock gnureadline ]);
+  buildInputs = [ dialog mock gnureadline ];
 
-  checkInputs = with python37Packages; [
-    pytest_xdist
-    pytest
-    dateutil
-  ];
+  checkInputs = [ pytest_xdist pytest dateutil ];
 
-  postPatch = ''
+  preBuild = ''
     cd certbot
-    substituteInPlace certbot/_internal/notify.py --replace "/usr/sbin/sendmail" "/run/wrappers/bin/sendmail"
   '';
 
   postInstall = ''
@@ -55,11 +55,11 @@ python37Packages.buildPythonApplication rec {
 
   doCheck = true;
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     homepage = src.meta.homepage;
     description = "ACME client that can obtain certs and extensibly update server configurations";
     platforms = platforms.unix;
-    maintainers = [ maintainers.domenkozar ];
-    license = licenses.asl20;
+    maintainers = with maintainers; [ domenkozar ];
+    license = with licenses; [ asl20 ];
   };
 }
diff --git a/pkgs/tools/admin/certigo/default.nix b/pkgs/tools/admin/certigo/default.nix
index 89c6b8996fa..5474cb25429 100644
--- a/pkgs/tools/admin/certigo/default.nix
+++ b/pkgs/tools/admin/certigo/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "certigo";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "1i5n5yh6nvv2i2nm60vqy1gngj8p5w6ma5fcwmp7bl4jxjrzbi83";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "A utility to examine and validate certificates in a variety of formats";
     homepage = "https://github.com/square/certigo";
diff --git a/pkgs/tools/admin/clair/default.nix b/pkgs/tools/admin/clair/default.nix
index a12b8abe120..3f4d00736ad 100644
--- a/pkgs/tools/admin/clair/default.nix
+++ b/pkgs/tools/admin/clair/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, makeWrapper, rpm, xz, Security }:
+{ lib, buildGoModule, fetchFromGitHub, makeWrapper, rpm, xz }:
 
 buildGoModule rec {
   pname = "clair";
@@ -13,16 +13,14 @@ buildGoModule rec {
 
   modSha256 = "0rgkrid58kji39nlmiii95r8shbzr6dwalj5m7qwxy5w1rcaljr5";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   nativeBuildInputs = [ makeWrapper ];
 
   postInstall = ''
     wrapProgram $out/bin/clair \
-      --prefix PATH : "${stdenv.lib.makeBinPath [ rpm xz ]}"
+      --prefix PATH : "${lib.makeBinPath [ rpm xz ]}"
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Vulnerability Static Analysis for Containers";
     homepage = "https://github.com/quay/clair";
     license = licenses.asl20;
diff --git a/pkgs/tools/admin/docker-credential-gcr/default.nix b/pkgs/tools/admin/docker-credential-gcr/default.nix
index a71958f8a09..4d71ebd2c5c 100644
--- a/pkgs/tools/admin/docker-credential-gcr/default.nix
+++ b/pkgs/tools/admin/docker-credential-gcr/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "docker-credential-gcr";
-  version = "1.4.3";
+  version = "2.0.1";
 
   goPackagePath = "github.com/GoogleCloudPlatform/docker-credential-gcr";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "GoogleCloudPlatform";
     repo = "docker-credential-gcr";
     rev = "v${version}";
-    sha256 = "1xb88xjyyrdmjcgfv7fqdkv1ip3dpzsdif5vm7vkqvn83s5wj5df";
+    sha256 = "0zazbfjbwclkz848vsyb6zhn95gngwrdhivaiw0m9f8a9xm4bp9r";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/admin/eksctl/default.nix b/pkgs/tools/admin/eksctl/default.nix
index c700e4f397c..fdb03b50feb 100644
--- a/pkgs/tools/admin/eksctl/default.nix
+++ b/pkgs/tools/admin/eksctl/default.nix
@@ -1,19 +1,17 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "eksctl";
-  version = "0.15.0";
+  version = "0.16.0";
 
   src = fetchFromGitHub {
     owner = "weaveworks";
     repo = pname;
     rev = version;
-    sha256 = "1193i30k2m7cibn79xw51i2lxg90f5i97h8sbjiv0hr9g502r2qf";
+    sha256 = "067q2cj4iwhiijv6nd9crjfncn67829f4d2ls07lwdcsvgi1cyfi";
   };
 
-  modSha256 = "0f8dlcp3q84fa5dnnzx4347ngb1raw1mxkcqpz2s3zq6d1kv0nvf";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "187jv78asav97cbvn7336ycflqa0c2alvkhvlyv2mp5f3crygagy";
 
   subPackages = [ "cmd/eksctl" ];
 
@@ -27,7 +25,7 @@ buildGoModule rec {
     $out/bin/eksctl completion zsh > "$out/share/zsh/site-functions/_eksctl"
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A CLI for Amazon EKS";
     homepage = "https://github.com/weaveworks/eksctl";
     license = licenses.asl20;
diff --git a/pkgs/tools/admin/fastlane/Gemfile.lock b/pkgs/tools/admin/fastlane/Gemfile.lock
index e3cfc580fab..c8c7a0117e5 100644
--- a/pkgs/tools/admin/fastlane/Gemfile.lock
+++ b/pkgs/tools/admin/fastlane/Gemfile.lock
@@ -156,4 +156,4 @@ DEPENDENCIES
   fastlane
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/admin/google-cloud-sdk/default.nix b/pkgs/tools/admin/google-cloud-sdk/default.nix
index 95878ef09ab..fb7870eac95 100644
--- a/pkgs/tools/admin/google-cloud-sdk/default.nix
+++ b/pkgs/tools/admin/google-cloud-sdk/default.nix
@@ -21,12 +21,12 @@ let
   sources = name: system: {
     x86_64-darwin = {
       url = "${baseUrl}/${name}-darwin-x86_64.tar.gz";
-      sha256 = "0hg4823dlnf9ahqh9dr05wsi6cdxn9mbwhg65jng3d2aws3ski6r";
+      sha256 = "0v83faz0jwnx603acmkc3bsl7vg2xxsm1jfw88fmnj6zcsa5b9ql";
     };
 
     x86_64-linux = {
       url = "${baseUrl}/${name}-linux-x86_64.tar.gz";
-      sha256 = "00ziqr60q1la716c9cy3hjpyq3hiw3m75d4wry6prn5655jw4ph6";
+      sha256 = "1z9liqzgwfavh3m3q1s871gxnwnsxdbny2vqzh9sjlwdk26f76gi";
     };
   }.${system};
 
@@ -34,7 +34,7 @@ let
 
 in stdenv.mkDerivation rec {
   pname = "google-cloud-sdk";
-  version = "281.0.0";
+  version = "286.0.0";
 
   src = fetchurl (sources "${pname}-${version}" stdenv.hostPlatform.system);
 
diff --git a/pkgs/tools/admin/iamy/default.nix b/pkgs/tools/admin/iamy/default.nix
index 6a1ec948d90..e09cd2f5285 100644
--- a/pkgs/tools/admin/iamy/default.nix
+++ b/pkgs/tools/admin/iamy/default.nix
@@ -1,9 +1,11 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "iamy";
   version = "2.3.2";
 
+  goPackagePath = "github.com/99designs/iamy";
+
   src = fetchFromGitHub {
     owner = "99designs";
     repo = "iamy";
@@ -13,8 +15,6 @@ buildGoModule rec {
 
   modSha256 = "0akak573zvz3xg5d7vf0ch2mrmj1jkzcdc29v3kn43f7944c2wcl";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = [''-ldflags=
     -X main.Version=v${version} -s -w
   ''];
diff --git a/pkgs/tools/admin/lego/default.nix b/pkgs/tools/admin/lego/default.nix
index 0cb614c12d1..72c61ceecaf 100644
--- a/pkgs/tools/admin/lego/default.nix
+++ b/pkgs/tools/admin/lego/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ lib, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   pname = "lego";
@@ -14,13 +14,11 @@ buildGoModule rec {
   modSha256 = "10n8pcbmzlnk63gzsjb1xnmjwxfhxsqx8ffpcbwdzq9fc5yvjiii";
   subPackages = [ "cmd/lego" ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = [
     "-ldflags=-X main.version=${version}"
   ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Let's Encrypt client and ACME library written in Go";
     license = licenses.mit;
     homepage = "https://go-acme.github.io/lego/";
diff --git a/pkgs/tools/admin/lxd/default.nix b/pkgs/tools/admin/lxd/default.nix
index c7c2881a567..f85a61be4a8 100644
--- a/pkgs/tools/admin/lxd/default.nix
+++ b/pkgs/tools/admin/lxd/default.nix
@@ -9,13 +9,13 @@
 
 buildGoPackage rec {
   pname = "lxd";
-  version = "3.22";
+  version = "4.0.0";
 
   goPackagePath = "github.com/lxc/lxd";
 
   src = fetchurl {
     url = "https://github.com/lxc/lxd/releases/download/${pname}-${version}/${pname}-${version}.tar.gz";
-    sha256 = "1j60xajcycqnnkasbghcvx3dvb5iadvvq2l3hh9i0sw3dk1wx4hn";
+    sha256 = "00kydp6aysggng9a7m0q3zj3591yk6jgcibbqxx4ki20pd4vmqnb";
   };
 
   preBuild = ''
@@ -49,7 +49,7 @@ buildGoPackage rec {
 
   meta = with stdenv.lib; {
     description = "Daemon based on liblxc offering a REST API to manage containers";
-    homepage = https://linuxcontainers.org/lxd/;
+    homepage = "https://linuxcontainers.org/lxd/";
     license = licenses.asl20;
     maintainers = with maintainers; [ fpletz wucke13 ];
     platforms = platforms.linux;
diff --git a/pkgs/tools/admin/oxidized/Gemfile.lock b/pkgs/tools/admin/oxidized/Gemfile.lock
index 0832bce6d2e..64bc02cafc3 100644
--- a/pkgs/tools/admin/oxidized/Gemfile.lock
+++ b/pkgs/tools/admin/oxidized/Gemfile.lock
@@ -77,4 +77,4 @@ DEPENDENCIES
   oxidized-web (= 0.13.1)
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/admin/sewer/default.nix b/pkgs/tools/admin/sewer/default.nix
index 776ba89e48c..471a8788a95 100644
--- a/pkgs/tools/admin/sewer/default.nix
+++ b/pkgs/tools/admin/sewer/default.nix
@@ -2,17 +2,17 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "sewer";
-  version = "0.7.9";
+  version = "0.8.1";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "c083223d8aa66d4fc6801452d291a98540d1ee41557ce3e1754c62e73f7c9738";
+    sha256 = "0s8f0w6nv8dcs5yw7rn49981b3c9mnnx4f6wzqw4zha0rpp60z22";
   };
 
   propagatedBuildInputs = with python3Packages; [ pyopenssl requests tldextract ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/komuw/sewer;
+    homepage = "https://github.com/komuw/sewer";
     description = "ACME client";
     license = licenses.mit;
     maintainers = with maintainers; [ kevincox ];
diff --git a/pkgs/tools/admin/ssh-import-id/default.nix b/pkgs/tools/admin/ssh-import-id/default.nix
new file mode 100644
index 00000000000..77d30e56d5f
--- /dev/null
+++ b/pkgs/tools/admin/ssh-import-id/default.nix
@@ -0,0 +1,36 @@
+{ buildPythonPackage
+, stdenv
+, fetchgit
+, requests
+, makeWrapper
+, extraHandlers ? []
+}:
+
+buildPythonPackage rec {
+  pname = "ssh-import-id";
+  version = "5.8";
+
+  src = fetchgit {
+    url = "https://git.launchpad.net/ssh-import-id";
+    rev = version;
+    sha256 = "0l9gya1hyf2qfidlmvg2cgfils1fp9rn5r8sihwvx4qfsfp5yaak";
+  };
+
+  propagatedBuildInputs = [
+    requests
+  ] ++ extraHandlers;
+
+  nativeBuildInputs = [
+    makeWrapper
+  ];
+
+  # handlers require main bin, main bin requires handlers
+  makeWrapperArgs = [ "--prefix" ":" "$out/bin" ];
+
+  meta = with stdenv.lib; {
+    description = "Retrieves an SSH public key and installs it locally";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ mkg20001 ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/tools/admin/swiftclient/default.nix b/pkgs/tools/admin/swiftclient/default.nix
index 788a64f928a..91860d2df08 100644
--- a/pkgs/tools/admin/swiftclient/default.nix
+++ b/pkgs/tools/admin/swiftclient/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonApplication rec {
   pname = "python-swiftclient";
-  version = "3.6.0";
+  version = "3.9.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0sv6z72zdwzwdjng0djk3l2maryn9pz3khf69yq5ig2ycz8hh0qv";
+    sha256 = "0xx3v5kk8jp352rydy3jxndy1b9kl2zmkj1gi14fjxjc5r4rf82g";
   };
 
   propagatedBuildInputs = [ requests six pbr setuptools ];
@@ -24,7 +24,7 @@ buildPythonApplication rec {
   doCheck = false;
 
   meta = with lib; {
-    homepage = https://github.com/openstack/python-swiftclient;
+    homepage = "https://github.com/openstack/python-swiftclient";
     description = "Python bindings to the OpenStack Object Storage API";
     license = licenses.asl20;
     maintainers = with maintainers; [ c0deaddict ];
diff --git a/pkgs/tools/archivers/unrar/default.nix b/pkgs/tools/archivers/unrar/default.nix
index 44e55a271fd..9396267b3a1 100644
--- a/pkgs/tools/archivers/unrar/default.nix
+++ b/pkgs/tools/archivers/unrar/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "unrar";
-  version = "5.9.1";
+  version = "5.9.2";
 
   src = fetchurl {
     url = "https://www.rarlab.com/rar/unrarsrc-${version}.tar.gz";
-    sha256 = "0071inswykarjbg4a80fz4n9xdinjfvxd9kmwz5gq0i1w2wd3c8f";
+    sha256 = "19nsxdvf9ll99hvgzq6f89ymxhwki224lygjdabrg8ghikqvmlvk";
   };
 
   postPatch = ''
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Utility for RAR archives";
-    homepage = https://www.rarlab.com/;
+    homepage = "https://www.rarlab.com/";
     license = licenses.unfreeRedistributable;
     maintainers = [ maintainers.ehmry ];
     platforms = platforms.all;
diff --git a/pkgs/tools/audio/abcmidi/default.nix b/pkgs/tools/audio/abcmidi/default.nix
index b0b65a560bf..d7d1adbdf4e 100644
--- a/pkgs/tools/audio/abcmidi/default.nix
+++ b/pkgs/tools/audio/abcmidi/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "abcMIDI";
-  version = "2020.02.12";
+  version = "2020.03.25";
 
   src = fetchzip {
     url = "https://ifdo.ca/~seymour/runabc/${pname}-${version}.zip";
-    sha256 = "1h0ixdbhxdfvii9in9pdidkdv12qfwbhjy3diknywl0yvaa40xw0";
+    sha256 = "0rzif8idsja8ryhx0y4zdk8lhn36h10ahfjqa8bmif0rdbyab0kv";
   };
 
   # There is also a file called "makefile" which seems to be preferred by the standard build phase
diff --git a/pkgs/tools/audio/alsaequal/caps_9.x.patch b/pkgs/tools/audio/alsaequal/caps_9.x.patch
new file mode 100644
index 00000000000..282e0404974
--- /dev/null
+++ b/pkgs/tools/audio/alsaequal/caps_9.x.patch
@@ -0,0 +1,21 @@
+--- ./ctl_equal.c
++++ ./ctl_equal.c
+@@ -167,7 +167,7 @@
+ 	snd_ctl_equal_t *equal;
+ 	const char *controls = ".alsaequal.bin";
+ 	const char *library = "/usr/lib/ladspa/caps.so";
+-	const char *module = "Eq";
++	const char *module = "Eq10";
+ 	long channels = 2;
+ 	const char *sufix = " Playback Volume";
+ 	int err, i, index;
+--- ./pcm_equal.c
++++ ./pcm_equal.c
+@@ -151,7 +151,7 @@
+ 	snd_config_t *sconf = NULL;
+ 	const char *controls = ".alsaequal.bin";
+ 	const char *library = "/usr/lib/ladspa/caps.so";
+-	const char *module = "Eq";
++	const char *module = "Eq10";
+ 	long channels = 2;
+ 	int err;
diff --git a/pkgs/tools/audio/alsaequal/default.nix b/pkgs/tools/audio/alsaequal/default.nix
new file mode 100644
index 00000000000..9498baca991
--- /dev/null
+++ b/pkgs/tools/audio/alsaequal/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchurl
+, alsaLib, caps
+}:
+
+stdenv.mkDerivation rec {
+  name = "alsaequal";
+  version = "0.6";
+
+  src = fetchurl {
+    url = "https://thedigitalmachine.net/tools/alsaequal-${version}.tar.bz2";
+    sha256 = "1w3g9q5z3nrn3mwdhaq6zsg0jila8d102dgwgrhj9vfx58apsvli";
+  };
+
+  buildInputs = [ alsaLib ];
+
+  makeFlags = [ "DESTDIR=$(out)" ];
+
+  # Borrowed from Arch Linux's AUR
+  patches = [
+    # Adds executable permissions to resulting libraries
+    # and changes their destination directory from "usr/lib/alsa-lib" to "lib/alsa-lib" to better align with nixpkgs filesystem hierarchy.
+    ./makefile.patch
+    # Fixes control port check, which resulted in false error.
+    ./false_error.patch
+    # Fixes name change of an "Eq" to "Eq10" method in version 9 of caps library.
+    ./caps_9.x.patch
+  ];
+
+  postPatch = ''
+    sed -i 's#/usr/lib/ladspa/caps\.so#${caps}/lib/ladspa/caps\.so#g' ctl_equal.c pcm_equal.c
+  '';
+
+  preInstall = ''
+    mkdir -p "$out/lib/alsa-lib"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Real-time adjustable equalizer plugin for ALSA";
+    homepage = "https://thedigitalmachine.net/alsaequal.html";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ ymeister ];
+  };
+}
diff --git a/pkgs/tools/audio/alsaequal/false_error.patch b/pkgs/tools/audio/alsaequal/false_error.patch
new file mode 100644
index 00000000000..1a8413da274
--- /dev/null
+++ b/pkgs/tools/audio/alsaequal/false_error.patch
@@ -0,0 +1,13 @@
+--- ./ctl_equal.c
++++ ./ctl_equal.c
+@@ -263,8 +263,8 @@
+ 	for(i = 0; i < equal->num_input_controls; i++) {
+ 		if(equal->control_data->control[i].type == LADSPA_CNTRL_INPUT) {
+ 			index = equal->control_data->control[i].index;
+-			if(equal->klass->PortDescriptors[index] !=
+-					(LADSPA_PORT_INPUT | LADSPA_PORT_CONTROL)) {
++			if(equal->klass->PortDescriptors[index] &
++					(LADSPA_PORT_INPUT | LADSPA_PORT_CONTROL) == 0) {
+ 				SNDERR("Problem with control file %s, %d.", controls, index);
+ 				return -1;
+ 			}
diff --git a/pkgs/tools/audio/alsaequal/makefile.patch b/pkgs/tools/audio/alsaequal/makefile.patch
new file mode 100644
index 00000000000..ee8aa170d60
--- /dev/null
+++ b/pkgs/tools/audio/alsaequal/makefile.patch
@@ -0,0 +1,13 @@
+--- ./Makefile
++++ ./Makefile
+@@ -45,8 +45,8 @@
+
+ install: all
+ 	@echo Installing...
+-	$(Q)install -m 644 $(SND_PCM_BIN) ${DESTDIR}/usr/lib/alsa-lib/
+-	$(Q)install -m 644 $(SND_CTL_BIN) ${DESTDIR}/usr/lib/alsa-lib/
++	$(Q)install -m 755 $(SND_PCM_BIN) ${DESTDIR}/lib/alsa-lib/
++	$(Q)install -m 755 $(SND_CTL_BIN) ${DESTDIR}/lib/alsa-lib/
+
+ uninstall:
+ 	@echo Un-installing...
diff --git a/pkgs/tools/audio/beets/default.nix b/pkgs/tools/audio/beets/default.nix
index 1eb8dd114f5..71ebe7ceb81 100644
--- a/pkgs/tools/audio/beets/default.nix
+++ b/pkgs/tools/audio/beets/default.nix
@@ -172,6 +172,13 @@ in pythonPackages.buildPythonApplication rec {
     nose
     rarfile
     responses
+    # Although considered as plugin dependencies, they are needed for the
+    # tests, for disabling them via an override makes the build fail. see:
+    # https://github.com/beetbox/beets/blob/v1.4.9/setup.py
+    pylast
+    mpd2
+    discogs_client
+    pyxdg
   ];
 
   patches = [
@@ -257,7 +264,7 @@ in pythonPackages.buildPythonApplication rec {
 
   meta = {
     description = "Music tagger and library organizer";
-    homepage = http://beets.io;
+    homepage = "http://beets.io";
     license = licenses.mit;
     maintainers = with maintainers; [ aszlig domenkozar pjones ];
     platforms = platforms.linux;
diff --git a/pkgs/tools/audio/google-music-scripts/default.nix b/pkgs/tools/audio/google-music-scripts/default.nix
index f7e96971ab1..f95dcc8bb6d 100644
--- a/pkgs/tools/audio/google-music-scripts/default.nix
+++ b/pkgs/tools/audio/google-music-scripts/default.nix
@@ -1,17 +1,22 @@
 { lib, python3 }:
 
-python3.pkgs.buildPythonApplication rec {
+with python3.pkgs;
+
+buildPythonApplication rec {
   pname = "google-music-scripts";
-  version = "4.0.1";
+  version = "4.3.0";
 
-  src = python3.pkgs.fetchPypi {
+  src = fetchPypi {
     inherit pname version;
-    sha256 = "5b2e9fdde8781a6d226984f0b61add2415a3804123ceeecb20fcc8527de9389d";
+    sha256 = "0dykjhqklbpqr1lvls0bgf6xkwvslj37lx4q8522hjbs150pwjmq";
   };
 
-  patches = [ ./loguru.patch ];
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace "audio-metadata>=0.8,<0.9" "audio-metadata"
+  '';
 
-  propagatedBuildInputs = with python3.pkgs; [
+  propagatedBuildInputs = [
     appdirs
     audio-metadata
     google-music
@@ -24,10 +29,12 @@ python3.pkgs.buildPythonApplication rec {
   ];
 
   # No tests
-  doCheck = false;
+  checkPhase = ''
+    $out/bin/gms --help >/dev/null
+  '';
 
   meta = with lib; {
-    homepage = https://github.com/thebigmunch/google-music-scripts;
+    homepage = "https://github.com/thebigmunch/google-music-scripts";
     description = "A CLI utility for interacting with Google Music";
     license = licenses.mit;
     maintainers = with maintainers; [ jakewaksbaum ];
diff --git a/pkgs/tools/audio/google-music-scripts/loguru.patch b/pkgs/tools/audio/google-music-scripts/loguru.patch
deleted file mode 100644
index 141ce044c43..00000000000
--- a/pkgs/tools/audio/google-music-scripts/loguru.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/pyproject.toml
-+++ b/pyproject.toml
-@@ -24,7 +24,7 @@ audio-metadata = "^0.4"
- google-music = "^3.0"
- google-music-proto = "^2.4"
- google-music-utils = "^2.1"
--loguru = "^0.2"
-+loguru = "^0.3"
- pendulum = "^2.0"
- natsort = ">=5.0,<7.0"
- tomlkit = "^0.5"
---- a/setup.py
-+++ b/setup.py
-@@ -16,7 +16,7 @@ install_requires = \
-  'google-music-proto>=2.4,<3.0',
-  'google-music-utils>=2.1,<3.0',
-  'google-music>=3.0,<4.0',
-- 'loguru>=0.2,<0.3',
-+ 'loguru>=0.3,<0.4',
-  'natsort>=5.0,<7.0',
-  'pendulum>=2.0,<3.0',
-  'tomlkit>=0.5,<0.6']
diff --git a/pkgs/tools/audio/midicsv/default.nix b/pkgs/tools/audio/midicsv/default.nix
new file mode 100644
index 00000000000..10f78807a73
--- /dev/null
+++ b/pkgs/tools/audio/midicsv/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "midicsv-1.1";
+
+  src = fetchurl {
+    url = "http://www.fourmilab.ch/webtools/midicsv/${name}.tar.gz";
+    sha256 = "1vvhk2nf9ilfw0wchmxy8l13hbw9cnpz079nsx5srsy4nnd78nkw";
+  };
+
+  postPatch = ''
+    substituteInPlace Makefile --replace /usr/local $out
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Losslessly translate MIDI to CSV and back";
+    homepage = http://www.fourmilab.ch/webtools/midicsv/;
+    license = licenses.publicDomain;
+    maintainers = with maintainers; [ orivej ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/audio/mpdcron/Gemfile.lock b/pkgs/tools/audio/mpdcron/Gemfile.lock
index 39df4ddec9f..603a9cfdafb 100644
--- a/pkgs/tools/audio/mpdcron/Gemfile.lock
+++ b/pkgs/tools/audio/mpdcron/Gemfile.lock
@@ -12,4 +12,4 @@ DEPENDENCIES
   nokogiri
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/audio/qastools/default.nix b/pkgs/tools/audio/qastools/default.nix
index bdc431bcb92..80775fe6f51 100644
--- a/pkgs/tools/audio/qastools/default.nix
+++ b/pkgs/tools/audio/qastools/default.nix
@@ -1,30 +1,24 @@
-{ mkDerivation, lib, fetchurl, cmake, alsaLib, udev, qtbase, qtsvg, qttools }:
+{ mkDerivation, lib, fetchFromGitLab, cmake, alsaLib, udev, qtbase, qtsvg, qttools }:
 
-let
-  version = "0.21.0";
-in
-
-mkDerivation {
+mkDerivation rec {
   pname = "qastools";
-  inherit version;
+  version = "0.22.0";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/project/qastools/${version}/qastools_${version}.tar.bz2";
-    sha256 = "1zl9cn5h43n63yp3z1an87xvw554k9hlcz75ddb30lvpcczkmwrh";
+  src = fetchFromGitLab {
+    owner = "sebholt";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0px4fcn8dagivq5fyi5gy84yj86f6x0lk805mc4ry58d0wsbn68v";
   };
 
-  buildInputs = [
-    alsaLib udev qtbase qtsvg qttools
-  ];
   nativeBuildInputs = [ cmake ];
-
-  cmakeFlags = [
-    "-DALSA_INCLUDE=${alsaLib.dev}/include/alsa/version.h"
-  ];
+  buildInputs = [ alsaLib udev qtbase qtsvg qttools ];
 
   meta = with lib; {
     description = "Collection of desktop applications for ALSA configuration";
-    license = licenses.gpl3;
+    homepage = https://gitlab.com/sebholt/qastools;
+    license = licenses.mit;
+    maintainers = with maintainers; [ orivej ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/audio/trx/add_bctoolbox_ldlib.patch b/pkgs/tools/audio/trx/add_bctoolbox_ldlib.patch
new file mode 100644
index 00000000000..1854a43a249
--- /dev/null
+++ b/pkgs/tools/audio/trx/add_bctoolbox_ldlib.patch
@@ -0,0 +1,15 @@
+diff --git a/Makefile b/Makefile
+index ffcd883..c4b4ff7 100644
+--- a/Makefile
++++ b/Makefile
+@@ -12,8 +12,9 @@ CFLAGS += -MMD -Wall
+ LDLIBS_ASOUND ?= -lasound
+ LDLIBS_OPUS ?= -lopus
+ LDLIBS_ORTP ?= -lortp
++LDLIBS_BCTOOLBOX ?= -lbctoolbox
+ 
+-LDLIBS += $(LDLIBS_ASOUND) $(LDLIBS_OPUS) $(LDLIBS_ORTP)
++LDLIBS += $(LDLIBS_ASOUND) $(LDLIBS_OPUS) $(LDLIBS_ORTP) $(LDLIBS_BCTOOLBOX)
+ 
+ .PHONY:		all install dist clean
+ 
diff --git a/pkgs/tools/audio/trx/default.nix b/pkgs/tools/audio/trx/default.nix
index 1d052adbba9..224c331b961 100644
--- a/pkgs/tools/audio/trx/default.nix
+++ b/pkgs/tools/audio/trx/default.nix
@@ -2,13 +2,19 @@
 
 stdenv.mkDerivation rec {
   pname = "trx";
-  version = "0.4";
+  version = "0.5";
 
   src = fetchurl {
     url = "https://www.pogo.org.uk/~mark/trx/releases/${pname}-${version}.tar.gz";
-    sha256 = "1wsrkbqc090px8i9p8awz38znxjcqjb1dzjjdd8xkjmiprayjhkl";
+    sha256 = "1jjgca92nifjhcr3n0fmpfr6f5gxlqyal2wmgdlgd7hx834r1if7";
   };
 
+  # Makefile is currently missing -lbctoolbox so the build fails when linking
+  # the libraries. This patch adds that flag.
+  patches = [
+    ./add_bctoolbox_ldlib.patch
+  ];
+
   buildInputs = [ alsaLib libopus ortp bctoolbox ];
   makeFlags = [ "PREFIX=$(out)" ];
 
diff --git a/pkgs/tools/audio/volctl/default.nix b/pkgs/tools/audio/volctl/default.nix
index 7b4cdd6b531..dd58671824d 100644
--- a/pkgs/tools/audio/volctl/default.nix
+++ b/pkgs/tools/audio/volctl/default.nix
@@ -2,13 +2,13 @@
 
 pythonPackages.buildPythonApplication rec {
   pname = "volctl";
-  version = "0.6.2";
+  version = "0.6.3";
 
   src = fetchFromGitHub {
     owner = "buzz";
     repo = pname;
     rev = version;
-    sha256 = "1bqq5mrpi7qxzl37z6fj67pqappjmwhi8d8db95j3lmf16svm2xk";
+    sha256 = "0rppqc5wiqxd83z2mgvhi6gdx7yhy9wnav1dbbi1wvm7lzw6fnil";
   };
 
   nativeBuildInputs = [
@@ -28,14 +28,6 @@ pythonPackages.buildPythonApplication rec {
 
   strictDeps = false;
 
-  postPatch = ''
-    # The user can set a mixer application in the preferences. The
-    # default is pavucontrol. Do not hard code its path and hope it
-    # can be found in $PATH.
-
-    substituteInPlace volctl/app.py --replace /usr/bin/pavucontrol pavucontrol
-  '';
-
   preBuild = ''
     export LD_LIBRARY_PATH=${libpulseaudio}/lib
   '';
@@ -50,7 +42,7 @@ pythonPackages.buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "PulseAudio enabled volume control featuring per-app sliders";
-    homepage = https://buzz.github.io/volctl/;
+    homepage = "https://buzz.github.io/volctl/";
     license = licenses.gpl2;
     platforms = platforms.linux;
     maintainers = [ maintainers.romildo ];
diff --git a/pkgs/tools/backup/bacula/default.nix b/pkgs/tools/backup/bacula/default.nix
index f40d54adfc8..a9fd2f19b89 100644
--- a/pkgs/tools/backup/bacula/default.nix
+++ b/pkgs/tools/backup/bacula/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, sqlite, postgresql, zlib, acl, ncurses, openssl, readline }:
 
 stdenv.mkDerivation rec {
-  name = "bacula-9.6.2";
+  name = "bacula-9.6.3";
 
   src = fetchurl {
     url    = "mirror://sourceforge/bacula/${name}.tar.gz";
-    sha256 = "0hw7wvgh7ymyyar5diqjn9kflhcb8a9kjgz6phb0x9r06j8yahaw";
+    sha256 = "02jvijwfw8nqrq61pyr5b9d5zjpmrsimkg6dq42rbd71g2k6a4zc";
   };
 
   buildInputs = [ postgresql sqlite zlib ncurses openssl readline ]
diff --git a/pkgs/tools/backup/dar/default.nix b/pkgs/tools/backup/dar/default.nix
index c105c8086c4..a439bbf41b1 100644
--- a/pkgs/tools/backup/dar/default.nix
+++ b/pkgs/tools/backup/dar/default.nix
@@ -3,12 +3,12 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  version = "2.6.8";
+  version = "2.6.9";
   pname = "dar";
 
   src = fetchurl {
     url = "mirror://sourceforge/dar/${pname}-${version}.tar.gz";
-    sha256 = "05mw6m054jklnxkxgf9fh4hx8ik1d8c18rfg3i55bnddk0vr8ra3";
+    sha256 = "1jzqq54w1dix2qdlj4hr9dpq9fnp23h102bk8d2gq6k7n2zgaj6v";
   };
 
   buildInputs = [ zlib bzip2 openssl lzo libgcrypt gpgme xz ]
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   hardeningDisable = [ "format" ];
 
   meta = {
-    homepage = http://dar.linux.free.fr;
+    homepage = "http://dar.linux.free.fr";
     description = "Disk ARchiver, allows backing up files into indexed archives";
     license = licenses.gpl2;
     platforms = platforms.unix;
diff --git a/pkgs/tools/backup/easysnap/default.nix b/pkgs/tools/backup/easysnap/default.nix
index a56d1274f92..7f9b0627509 100644
--- a/pkgs/tools/backup/easysnap/default.nix
+++ b/pkgs/tools/backup/easysnap/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "easysnap";
-  version = "unstable-2019-02-17";
+  version = "unstable-2020-04-04";
 
   src = fetchFromGitHub {
     owner = "sjau";
     repo = "easysnap";
-    rev = "9ef5d1ff51ccf9939a88b7b32b4959d27cf61ecc";
-    sha256 = "0m0217ni909nham15w5vxg8y7cw2zwjibnhvgnpxxsap8zkhv1m4";
+    rev = "26f89c0c3cda01e2595ee19ae5fb8518da25b4ef";
+    sha256 = "sha256:1k49k1m7y8s099wyiiz8411i77j1156ncirynmjfyvdhmhcyp5rw";
   };
 
   installPhase = ''
diff --git a/pkgs/tools/backup/lvmsync/Gemfile.lock b/pkgs/tools/backup/lvmsync/Gemfile.lock
index 1fe903f1508..5faac235679 100644
--- a/pkgs/tools/backup/lvmsync/Gemfile.lock
+++ b/pkgs/tools/backup/lvmsync/Gemfile.lock
@@ -16,4 +16,4 @@ DEPENDENCIES
   lvmsync
 
 BUNDLED WITH
-   1.14.6
+   2.1.4
diff --git a/pkgs/tools/backup/monolith/default.nix b/pkgs/tools/backup/monolith/default.nix
new file mode 100644
index 00000000000..5d086abf780
--- /dev/null
+++ b/pkgs/tools/backup/monolith/default.nix
@@ -0,0 +1,32 @@
+{ stdenv
+, rustPlatform
+, fetchFromGitHub
+, pkg-config
+, openssl
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "monolith";
+  version = "2.2.2";
+
+  src = fetchFromGitHub {
+    owner = "Y2Z";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "08xbpn6kdfiyvz5pwx9hkzbgb40z6dicmiry7frclw0aibal9avi";
+  };
+
+  cargoSha256 = "10zwyg54f05m6ldpnchqzxjkb6rlpcl80crdnk8s6wkf18qny4i3";
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ openssl ];
+
+  checkPhase = "cargo test -- --skip tests::cli";
+
+  meta = with stdenv.lib; {
+    description = "Bundle any web page into a single HTML file";
+    homepage = "https://github.com/Y2Z/monolith";
+    license = licenses.unlicense;
+    maintainers = with maintainers; [ filalex77 ];
+  };
+}
diff --git a/pkgs/tools/backup/wal-g/default.nix b/pkgs/tools/backup/wal-g/default.nix
index 90ce2d188d6..e5ed04bb4a1 100644
--- a/pkgs/tools/backup/wal-g/default.nix
+++ b/pkgs/tools/backup/wal-g/default.nix
@@ -1,30 +1,28 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, brotli }:
+{ stdenv, buildGoModule, fetchFromGitHub, brotli, Security }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "wal-g";
-  version = "0.2.14";
+  version = "0.2.15";
 
   src = fetchFromGitHub {
-    owner  = "wal-g";
-    repo   = "wal-g";
-    rev    = "v${version}";
-    sha256 = "0rrn9kzcg3nw9qvzy58m4qacghv0pj7iyjh4yspc71n5nkamkfgm";
+    owner = "wal-g";
+    repo = "wal-g";
+    rev = "v${version}";
+    sha256 = "1hslhs9i4wib6c74gdq9yail958ff1y11pymjww2xr84wkwd9v7i";
   };
 
-  buildInputs = [ brotli ];
+  modSha256 = "0kwl5gwc5gc0cq2gldg13nvswp9wd90xiv1qb3g8yxcczywkpmrm";
 
-  doCheck = true;
-
-  goPackagePath = "github.com/wal-g/wal-g";
+  buildInputs = [ brotli ] ++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
 
-  goDeps = ./deps.nix;
+  doCheck = true;
 
   subPackages = [ "main/pg" ];
 
-  buildFlagsArray = [ "-ldflags=-s -w -X ${goPackagePath}/cmd/pg.WalgVersion=${version} -X ${goPackagePath}/cmd/pg.GitRevision=${src.rev}" ];
+  buildFlagsArray = [ "-ldflags=-s -w -X github.com/wal-g/wal-g/cmd/pg.WalgVersion=${version} -X github.com/wal-g/wal-g/cmd/pg.GitRevision=${src.rev}" ];
 
   postInstall = ''
-    mv $bin/bin/pg $bin/bin/wal-g
+    mv $out/bin/pg $out/bin/wal-g
   '';
 
   meta = {
diff --git a/pkgs/tools/backup/wal-g/deps.nix b/pkgs/tools/backup/wal-g/deps.nix
deleted file mode 100644
index 13daf375c31..00000000000
--- a/pkgs/tools/backup/wal-g/deps.nix
+++ /dev/null
@@ -1,588 +0,0 @@
-# file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
-[
-  {
-    goPackagePath  = "cloud.google.com/go";
-    fetch = {
-      type = "git";
-      url = "https://code.googlesource.com/gocloud";
-      rev =  "0ebda48a7f143b1cce9eb37a8c1106ac762a3430";
-      sha256 = "1kclgclwar3r37zbvb9gg3qxbgzkb50zk3s9778zlh2773qikmai";
-    };
-  }
-  {
-    goPackagePath  = "github.com/Azure/azure-pipeline-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/azure-pipeline-go";
-      rev =  "232aee85e8e3a6223a11c0943f7df2ae0fac00e4";
-      sha256 = "1agn2nzmm1dkwggm4w7h4bnrav4n5jrl0vqbqy2s49vqlr8zirn6";
-    };
-  }
-  {
-    goPackagePath  = "github.com/Azure/azure-storage-blob-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/Azure/azure-storage-blob-go";
-      rev =  "fc700035fe4a7020f50d49f420b3c088aed57e03";
-      sha256 = "00gsnk9s1rlrakqvcm917hn4r47jannxwp7rkhrb71pamzm46752";
-    };
-  }
-  {
-    goPackagePath  = "github.com/BurntSushi/toml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/BurntSushi/toml";
-      rev =  "3012a1dbe2e4bd1391d42b32f0577cb7bbc7f005";
-      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
-    };
-  }
-  {
-    goPackagePath  = "github.com/DataDog/zstd";
-    fetch = {
-      type = "git";
-      url = "https://github.com/DataDog/zstd";
-      rev =  "aebefd9fcb99f22cd691ef778a12ed68f0e6a1ab";
-      sha256 = "06wphl43ji23c0cmmm6fd3wszbwq36mdp1jarak2a6hmxl6yf0b8";
-    };
-  }
-  {
-    goPackagePath  = "github.com/RoaringBitmap/roaring";
-    fetch = {
-      type = "git";
-      url = "https://github.com/RoaringBitmap/roaring";
-      rev =  "3d677d3262197ee558b85029301eb69b8239f91a";
-      sha256 = "0v5jbqr7m4x7n8rxcyizhs21ndyinn8kil9hd6y2bifx9b9g6gv9";
-    };
-  }
-  {
-    goPackagePath  = "github.com/aws/aws-sdk-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/aws/aws-sdk-go";
-      rev =  "02973e4916ed10f78aff1257f45f01d23907a05d";
-      sha256 = "0w5c06l0f8h77p74gmsp2wzl21pcn92yzsycd36746qqav83yyld";
-    };
-  }
-  {
-    goPackagePath  = "github.com/cyberdelia/lzo";
-    fetch = {
-      type = "git";
-      url = "https://github.com/cyberdelia/lzo";
-      rev =  "feb520148d8940294afb1e242dc1d2a7c9c34432";
-      sha256 = "0mk93b7vr9hp1xcvzaw5r01zs2blhk24m22pacf6sx5zwx8fd2ld";
-    };
-  }
-  {
-    goPackagePath  = "github.com/davecgh/go-spew";
-    fetch = {
-      type = "git";
-      url = "https://github.com/davecgh/go-spew";
-      rev =  "8991bc29aa16c548c550c7ff78260e27b9ab7c73";
-      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
-    };
-  }
-  {
-    goPackagePath  = "github.com/fsnotify/fsnotify";
-    fetch = {
-      type = "git";
-      url = "https://github.com/fsnotify/fsnotify";
-      rev =  "c2828203cd70a50dcccfb2761f8b1f8ceef9a8e9";
-      sha256 = "07va9crci0ijlivbb7q57d2rz9h27zgn2fsm60spjsqpdbvyrx4g";
-    };
-  }
-  {
-    goPackagePath  = "github.com/glycerine/go-unsnap-stream";
-    fetch = {
-      type = "git";
-      url = "https://github.com/glycerine/go-unsnap-stream";
-      rev =  "9f0cb55181dd3a0a4c168d3dbc72d4aca4853126";
-      sha256 = "1v10z30y9qc8dl34x0s8lr773g6raxilfdxbmzd1176pspzcmm9n";
-    };
-  }
-  {
-    goPackagePath  = "github.com/go-redis/redis";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-redis/redis";
-      rev =  "75795aa4236dc7341eefac3bbe945e68c99ef9df";
-      sha256 = "1qf7zl5slnc4bcz0z0vn4fq1pwkphdrmqmjg3wv5q6pv2x29drli";
-    };
-  }
-  {
-    goPackagePath  = "github.com/go-sql-driver/mysql";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-sql-driver/mysql";
-      rev =  "72cd26f257d44c1114970e19afddcd812016007e";
-      sha256 = "1fvsvwc1v2i0gqn01mynvi1shp5xm0xaym6xng09fcbqb56lbjx1";
-    };
-  }
-  {
-    goPackagePath  = "github.com/golang/mock";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/mock";
-      rev =  "51421b967af1f557f93a59e0057aaf15ca02e29c";
-      sha256 = "12ddj2g8ab87id6n2n67vnbhq6p8dvgsq1pzpqfriym4dk8w54fg";
-    };
-  }
-  {
-    goPackagePath  = "github.com/golang/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/protobuf";
-      rev =  "6c65a5562fc06764971b7c5d05c76c75e84bdbf7";
-      sha256 = "1k1wb4zr0qbwgpvz9q5ws9zhlal8hq7dmq62pwxxriksayl6hzym";
-    };
-  }
-  {
-    goPackagePath  = "github.com/golang/snappy";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/snappy";
-      rev =  "2e65f85255dbc3072edf28d6b5b8efc472979f5a";
-      sha256 = "05w6mpc4qcy0pv8a2bzng8nf4s5rf5phfang4jwy9rgf808q0nxf";
-    };
-  }
-  {
-    goPackagePath  = "github.com/google/brotli";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/brotli";
-      rev =  "d6d98957ca8ccb1ef45922e978bb10efca0ea541";
-      sha256 = "0n0ia2sxsj3fnnzhjbigbadpsqxivjs3v78b1xzqvgd1nwalglaj";
-    };
-  }
-  {
-    goPackagePath  = "github.com/googleapis/gax-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/googleapis/gax-go";
-      rev =  "bd5b16380fd03dc758d11cef74ba2e3bc8b0e8c2";
-      sha256 = "1lxawwngv6miaqd25s3ba0didfzylbwisd2nz7r4gmbmin6jsjrx";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/golang-lru";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/golang-lru";
-      rev =  "7f827b33c0f158ec5dfbba01bb0b14a4541fd81d";
-      sha256 = "1p2igd58xkm8yaj2c2wxiplkf2hj6kxwrg6ss7mx61s5rd71v5xb";
-    };
-  }
-  {
-    goPackagePath  = "github.com/hashicorp/hcl";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/hcl";
-      rev =  "8cb6e5b959231cc1119e43259c4a608f9c51a241";
-      sha256 = "0q6ml0qqs0yil76mpn4mdx4lp94id8vbv575qm60jzl1ijcl5i66";
-    };
-  }
-  {
-    goPackagePath  = "github.com/inconshreveable/mousetrap";
-    fetch = {
-      type = "git";
-      url = "https://github.com/inconshreveable/mousetrap";
-      rev =  "76626ae9c91c4f2a10f34cad8ce83ea42c93bb75";
-      sha256 = "1mn0kg48xkd74brf48qf5hzp0bc6g8cf5a77w895rl3qnlpfw152";
-    };
-  }
-  {
-    goPackagePath  = "github.com/jackc/pgx";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jackc/pgx";
-      rev =  "c73e7d75061bb42b0282945710f344cfe1113d10";
-      sha256 = "1am1iggch89mn4a99bxnawjhc5yrgd8fjlmzq0b9l9qy5w1gzr1f";
-    };
-  }
-  {
-    goPackagePath  = "github.com/jedib0t/go-pretty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jedib0t/go-pretty";
-      rev =  "a37e1e030434d93557ca8a6a77b4cf9d31cc21ff";
-      sha256 = "057xwrrqq0cvyq9f0wnfzjpx10807520vl92qq7l7a7s0r56jyrx";
-    };
-  }
-  {
-    goPackagePath  = "github.com/jmespath/go-jmespath";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jmespath/go-jmespath";
-      rev =  "c2b33e84";
-      sha256 = "1r6w7ydx8ydryxk3sfhzsk8m6f1nsik9jg3i1zhi69v4kfl4d5cz";
-    };
-  }
-  {
-    goPackagePath  = "github.com/magiconair/properties";
-    fetch = {
-      type = "git";
-      url = "https://github.com/magiconair/properties";
-      rev =  "c2353362d570a7bfa228149c62842019201cfb71";
-      sha256 = "1a10362wv8a8qwb818wygn2z48lgzch940hvpv81hv8gc747ajxn";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mattn/go-ieproxy";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-ieproxy";
-      rev =  "f9202b1cfdeb0c82ddd3dc1e8e9cd94b3c0c1b13";
-      sha256 = "0r8c17znlv32750qy3p96fbyp8ys8xfdccpzv0z9lr2y88jnzhpz";
-    };
-  }
-  {
-    goPackagePath  = "github.com/minio/sio";
-    fetch = {
-      type = "git";
-      url = "https://github.com/minio/sio";
-      rev =  "035b4ef8c449ba2ba21ec143c91964e76a1fb68c";
-      sha256 = "007mh7a61qzgf8ga4pix6qhm6jbph3h71a8iif7l45mvqphabh0z";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mitchellh/mapstructure";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/mapstructure";
-      rev =  "3536a929edddb9a5b34bd6861dc4a9647cb459fe";
-      sha256 = "03bpv28jz9zhn4947saqwi328ydj7f6g6pf1m2d4m5zdh5jlfkrr";
-    };
-  }
-  {
-    goPackagePath  = "github.com/mschoch/smat";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mschoch/smat";
-      rev =  "90eadee771aeab36e8bf796039b8c261bebebe4f";
-      sha256 = "141saq6d4z3c7v3jw45zy4gn6wwjlyralqygjff1fzvz1gkvimk3";
-    };
-  }
-  {
-    goPackagePath  = "github.com/ncw/swift";
-    fetch = {
-      type = "git";
-      url = "https://github.com/ncw/swift";
-      rev =  "f737f4e00462f79ff2e0ddbcfb09331ce7ec4fa9";
-      sha256 = "0c6vcn3dmhh339wilh71fmjb535kgfkf9dh2dh8ln43whq6mbjbs";
-    };
-  }
-  {
-    goPackagePath  = "github.com/pelletier/go-toml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pelletier/go-toml";
-      rev =  "c01d1270ff3e442a8a57cddc1c92dc1138598194";
-      sha256 = "1fjzpcjng60mc3a4b2ql5a00d5gah84wj740dabv9kq67mpg8fxy";
-    };
-  }
-  {
-    goPackagePath  = "github.com/philhofer/fwd";
-    fetch = {
-      type = "git";
-      url = "https://github.com/philhofer/fwd";
-      rev =  "bb6d471dc95d4fe11e432687f8b70ff496cf3136";
-      sha256 = "1pg84khadh79v42y8sjsdgfb54vw2kzv7hpapxkifgj0yvcp30g2";
-    };
-  }
-  {
-    goPackagePath  = "github.com/pierrec/lz4";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pierrec/lz4";
-      rev =  "5a3d2245f97fc249850e7802e3c01fad02a1c316";
-      sha256 = "1my03x0m72vc2xyy9h0naa1qrzcf0g531gh4cakcwpxrq0z39vmr";
-    };
-  }
-  {
-    goPackagePath  = "github.com/pierrec/xxHash";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pierrec/xxHash";
-      rev =  "d17cb990ad2d219d5901415ceaeb50d17df59527";
-      sha256 = "07rbr0apyq9m8m2knf1j7g9299r2v2ihvig1b7bq2srszcd9r221";
-    };
-  }
-  {
-    goPackagePath  = "github.com/pkg/errors";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pkg/errors";
-      rev =  "ba968bfe8b2f7e042a574c888954fccecfa385b4";
-      sha256 = "0g5qcb4d4fd96midz0zdk8b9kz8xkzwfa8kr1cliqbg8sxsy5vd1";
-    };
-  }
-  {
-    goPackagePath  = "github.com/pmezard/go-difflib";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pmezard/go-difflib";
-      rev =  "792786c7400a136282c1664665ae0a8db921c6c2";
-      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
-    };
-  }
-  {
-    goPackagePath  = "github.com/spf13/afero";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/afero";
-      rev =  "f4711e4db9e9a1d3887343acb72b2bbfc2f686f5";
-      sha256 = "14qqj0cz6a595vn4dp747vddx05fd77jdsyl85qjmf9baymaxlam";
-    };
-  }
-  {
-    goPackagePath  = "github.com/spf13/cast";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/cast";
-      rev =  "8c9545af88b134710ab1cd196795e7f2388358d7";
-      sha256 = "0xq1ffqj8y8h7dcnm0m9lfrh0ga7pssnn2c1dnr09chqbpn4bdc5";
-    };
-  }
-  {
-    goPackagePath  = "github.com/spf13/cobra";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/cobra";
-      rev =  "ef82de70bb3f60c65fb8eebacbb2d122ef517385";
-      sha256 = "1q1nsx05svyv9fv3fy6xv6gs9ffimkyzsfm49flvl3wnvf1ncrkd";
-    };
-  }
-  {
-    goPackagePath  = "github.com/spf13/jwalterweatherman";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/jwalterweatherman";
-      rev =  "94f6ae3ed3bceceafa716478c5fbf8d29ca601a1";
-      sha256 = "1ywmkwci5zyd88ijym6f30fj5c0k2yayxarkmnazf5ybljv50q7b";
-    };
-  }
-  {
-    goPackagePath  = "github.com/spf13/pflag";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/pflag";
-      rev =  "298182f68c66c05229eb03ac171abe6e309ee79a";
-      sha256 = "1cj3cjm7d3zk0mf1xdybh0jywkbbw7a6yr3y22x9sis31scprswd";
-    };
-  }
-  {
-    goPackagePath  = "github.com/spf13/viper";
-    fetch = {
-      type = "git";
-      url = "https://github.com/spf13/viper";
-      rev =  "6d33b5a963d922d182c91e8a1c88d81fd150cfd4";
-      sha256 = "1190mg04718r03qriav99sf4kx2n7wdgr8vdni15f74bpbzrdjrl";
-    };
-  }
-  {
-    goPackagePath  = "github.com/stretchr/testify";
-    fetch = {
-      type = "git";
-      url = "https://github.com/stretchr/testify";
-      rev =  "221dbe5ed46703ee255b1da0dec05086f5035f62";
-      sha256 = "187i5g88sxfy4vxpm7dw1gwv29pa2qaq475lxrdh5livh69wqfjb";
-    };
-  }
-  {
-    goPackagePath  = "github.com/tinsane/tracelog";
-    fetch = {
-      type = "git";
-      url = "https://github.com/tinsane/tracelog";
-      rev =  "05cb843fbac1d7693bbbbed8aa8f7b401438ee7f";
-      sha256 = "1fry633qi4iih9za91m90c26p3qpd79d716dggk10cbc0bpvql51";
-    };
-  }
-  {
-    goPackagePath  = "github.com/tinylib/msgp";
-    fetch = {
-      type = "git";
-      url = "https://github.com/tinylib/msgp";
-      rev =  "b2b6a672cf1e5b90748f79b8b81fc8c5cf0571a1";
-      sha256 = "0pypfknghg1hcjjrqz3f1riaylk6hcxn9h0qyzynb74rp0qmlxjc";
-    };
-  }
-  {
-    goPackagePath  = "github.com/ulikunitz/xz";
-    fetch = {
-      type = "git";
-      url = "https://github.com/ulikunitz/xz";
-      rev =  "590df8077fbcb06ad62d7714da06c00e5dd2316d";
-      sha256 = "07mivr4aiw3b8qzwajsxyjlpbkf3my4xx23lv0yryc4pciam5lhy";
-    };
-  }
-  {
-    goPackagePath  = "github.com/wal-g/storages";
-    fetch = {
-      type = "git";
-      url = "https://github.com/wal-g/storages";
-      rev =  "ecd376af8972cd9c3e355831c126a7862de6b2b9";
-      sha256 = "1jmvin93811xxh9sqf6xrrys55dm12zszqf2l3arf92h0bysvniy";
-    };
-  }
-  {
-    goPackagePath  = "github.com/willf/bitset";
-    fetch = {
-      type = "git";
-      url = "https://github.com/willf/bitset";
-      rev =  "e553b05586428962bf7058d1044519d87ca72d74";
-      sha256 = "0davmxzv79qqg7lkj89diqinqx3xkr94d67yfnazqn3h1f7sjkd1";
-    };
-  }
-  {
-    goPackagePath  = "go.opencensus.io";
-    fetch = {
-      type = "git";
-      url = "https://github.com/census-instrumentation/opencensus-go";
-      rev =  "9c377598961b706d1542bd2d84d538b5094d596e";
-      sha256 = "05jr8gkr2w34i5wwki4zhl5ch0qrgi7cdgag5iy5gpxplhbrvbg9";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/crypto";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/crypto";
-      rev =  "e657309f52e71501f9934566ac06dc5c2f7f11a1";
-      sha256 = "17jwkjrfj7kz25z8z492xlz88nmb42kpjcxl9dsv5jl28zvzq1bj";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/exp";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/exp";
-      rev =  "ec7cb31e5a562f5e9e31b300128d2f530f55d127";
-      sha256 = "19b4kdwfahq9f809v4lmn9h47sq1y67nkl7csnracn5qd334hp06";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/lint";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/lint";
-      rev =  "959b441ac422379a43da2230f62be024250818b0";
-      sha256 = "1mgcv5f00pkzsbwnq2y7vqvd1b4lr5a3s47cphh2qv4indfk7pck";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/net";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/net";
-      rev =  "74dc4d7220e7acc4e100824340f3e66577424772";
-      sha256 = "0563yswwqknxx2gsvl0qikn0lmwalilbng8i12iw4d3v40n23s0l";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/oauth2";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/oauth2";
-      rev =  "0f29369cfe4552d0e4bcddc57cc75f4d7e672a33";
-      sha256 = "06jwpvx0x2gjn2y959drbcir5kd7vg87k0r1216abk6rrdzzrzi2";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/sync";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sync";
-      rev =  "42b317875d0fa942474b76e1b46a6060d720ae6e";
-      sha256 = "0mrjhk7al7yyh76x9flvxy4jm5jyqh2fxbxagpaazxn1xdgkaif3";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev =  "4d1cda033e0619309c606fc686de3adcf599539e";
-      sha256 = "1wgaldbnkmh568v8kkgvnmkskaj96fqrbzhx23yji2kh1432q6gh";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/text";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/text";
-      rev =  "f21a4dfb5e38f5895301dc265a8def02365cc3d0";
-      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/time";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/time";
-      rev =  "85acf8d2951cb2a3bde7632f9ff273ef0379bcbd";
-      sha256 = "0yqnxsrarjk4qkda8kcxzmk7y90kkkxzx9iwryzrk7bzs87ky3xc";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/tools";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/tools";
-      rev =  "fc82fb2afd64396b05ea9aa0bccd6e8f2257b154";
-      sha256 = "1rnpbhhcnv28k63m7biv2rxrmdxhz9q3p35qi0phcq2qhcf78032";
-    };
-  }
-  {
-    goPackagePath  = "google.golang.org/api";
-    fetch = {
-      type = "git";
-      url = "https://code.googlesource.com/google-api-go-client";
-      rev =  "feb0267beb8644f5088a03be4d5ec3f8c7020152";
-      sha256 = "1lzdzkd2i41v6amxs9jah1q44qbvf1yvm8906jpfjiq6c3ffhqss";
-    };
-  }
-  {
-    goPackagePath  = "google.golang.org/appengine";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/appengine";
-      rev =  "4a4468ece617fc8205e99368fa2200e9d1fad421";
-      sha256 = "13cyhqwmvc2nia4ssdwwdzscq52aj3z9zjikx17wk4kb0j8vr370";
-    };
-  }
-  {
-    goPackagePath  = "google.golang.org/genproto";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-genproto";
-      rev =  "24fa4b261c55da65468f2abfdae2b024eef27dfb";
-      sha256 = "109zhaqlfd8zkbr1hk6zqbs6vcxfrk64scjwh2nswph05gr0m84d";
-    };
-  }
-  {
-    goPackagePath  = "google.golang.org/grpc";
-    fetch = {
-      type = "git";
-      url = "https://github.com/grpc/grpc-go";
-      rev =  "6eaf6f47437a6b4e2153a190160ef39a92c7eceb";
-      sha256 = "1cn33r2gclmq2v1ndpf1n5bmhf2qs8mms7ii5cnl6f9ch4r2c4k3";
-    };
-  }
-  {
-    goPackagePath  = "gopkg.in/yaml.v2";
-    fetch = {
-      type = "git";
-      url = "https://github.com/go-yaml/yaml";
-      rev =  "51d6538a90f86fe93ac480b35f37b2be17fef232";
-      sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa";
-    };
-  }
-  {
-    goPackagePath  = "honnef.co/go/tools";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dominikh/go-tools";
-      rev =  "72554cb117ad340748b3093e7108983fd984c9f2";
-      sha256 = "1vndpwg797z2gw9h9378iq99aqy7nalqx82lgvcsaqnkypdmppnd";
-    };
-  }
-]
\ No newline at end of file
diff --git a/pkgs/tools/cd-dvd/sacd/default.nix b/pkgs/tools/cd-dvd/sacd/default.nix
new file mode 100644
index 00000000000..a3ce3d36182
--- /dev/null
+++ b/pkgs/tools/cd-dvd/sacd/default.nix
@@ -0,0 +1,41 @@
+{ stdenv
+, fetchFromGitHub
+, fetchpatch
+}:
+
+stdenv.mkDerivation rec {
+  pname = "sacd";
+  version = "19.7.16.37";
+
+  src = fetchFromGitHub {
+    owner = "Sound-Linux-More";
+    repo = "sacd";
+    rev = version;
+    sha256 = "03s7jr75pzqj1xd41rkgbszlgf9zx6vzhd0nizc05wyf0fxq5xif";
+  };
+
+  patches = [
+    # Makefile prefix, otherwise `/usr` prefix is enforced
+    (fetchpatch {
+      url = "https://github.com/Sound-Linux-More/sacd/pull/1.patch";
+      name = "makefile-prefix.patch";
+      sha256 = "0a7r4x0yqpg6l4vr84dq4wbrypabqm4vvcjv91am068gqjiw6w64";
+    })
+  ];
+
+  makeFlagsArray = [
+    "PREFIX=$(out)"
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Converts SACD image files, Philips DSDIFF and Sony DSF files to 24-bit high resolution wave files. Handles both DST and DSD streams. ";
+    longDescription = ''
+      Super Audio CD decoder. Converts SACD image files, Philips DSDIFF and Sony DSF files to 24-bit high resolution wave files.
+      Handles both DST and DSD streams.
+    '';
+    homepage = "https://github.com/Sound-Linux-More/sacd";
+    license = licenses.gpl3;
+    maintainers = [ maintainers.doronbehar ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/tools/compression/lz4/default.nix b/pkgs/tools/compression/lz4/default.nix
index fd967fce9c6..6bc365b8e1e 100644
--- a/pkgs/tools/compression/lz4/default.nix
+++ b/pkgs/tools/compression/lz4/default.nix
@@ -4,23 +4,15 @@
 
 stdenv.mkDerivation rec {
   pname = "lz4";
-  version = "1.9.1";
+  version = "1.9.2";
 
   src = fetchFromGitHub {
-    sha256 = "1l1caxrik1hqs40vj3bpv1pikw6b74cfazv5c0v6g48zpcbmshl0";
+    sha256 = "0lpaypmk70ag2ks3kf2dl4ac3ba40n5kc1ainkp9wfjawz76mh61";
     rev = "v${version}";
     repo = pname;
     owner = pname;
   };
 
-  patches = [
-    # Fix detection of Darwin
-    (fetchpatch {
-      url = "https://github.com/lz4/lz4/commit/024216ef7394b6411eeaa5b52d0cec9953a44249.patch";
-      sha256 = "0j0j2pr6pkplxf083hlwl5q4cfp86q3wd8mc64bcfcr7ysc5pzl3";
-    })
-  ];
-
   # TODO(@Ericson2314): Separate binaries and libraries
   outputs = [ "bin" "out" "dev" ];
 
@@ -61,7 +53,7 @@ stdenv.mkDerivation rec {
       multiple GB/s per core, typically reaching RAM speed limits on
       multi-core systems.
     '';
-    homepage = https://lz4.github.io/lz4/;
+    homepage = "https://lz4.github.io/lz4/";
     license = with licenses; [ bsd2 gpl2Plus ];
     platforms = platforms.all;
   };
diff --git a/pkgs/tools/compression/xz/default.nix b/pkgs/tools/compression/xz/default.nix
index 0ff349e96e8..545384c396d 100644
--- a/pkgs/tools/compression/xz/default.nix
+++ b/pkgs/tools/compression/xz/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, enableStatic ? false }:
 
 stdenv.mkDerivation rec {
-  name = "xz-5.2.4";
+  name = "xz-5.2.5";
 
   src = fetchurl {
     url = "https://tukaani.org/xz/${name}.tar.bz2";
-    sha256 = "1gxpayfagb4v7xfhs2w6h7k56c6hwwav1rk48bj8hggljlmgs4rk";
+    sha256 = "1ps2i8i212n0f4xpq6clp7h13q7m1y8slqvxha9i8d0bj0qgj5si";
   };
 
   outputs = [ "bin" "dev" "out" "man" "doc" ];
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   postInstall = "rm -rf $out/share/doc";
 
   meta = with stdenv.lib; {
-    homepage = https://tukaani.org/xz/;
+    homepage = "https://tukaani.org/xz/";
     description = "XZ, general-purpose data compression software, successor of LZMA";
 
     longDescription =
diff --git a/pkgs/tools/filesystems/bcachefs-tools/default.nix b/pkgs/tools/filesystems/bcachefs-tools/default.nix
index 144ed0a3845..ad159f08872 100644
--- a/pkgs/tools/filesystems/bcachefs-tools/default.nix
+++ b/pkgs/tools/filesystems/bcachefs-tools/default.nix
@@ -1,27 +1,55 @@
 { stdenv, fetchgit, pkgconfig, attr, libuuid, libscrypt, libsodium, keyutils
-, liburcu, zlib, libaio, zstd, lz4 }:
+, liburcu, zlib, libaio, zstd, lz4, valgrind, python3Packages
+, fuseSupport ? false, fuse3 ? null }:
+
+assert fuseSupport -> fuse3 != null;
 
 stdenv.mkDerivation {
   pname = "bcachefs-tools";
-  version = "2019-10-12";
+  version = "2020-04-04";
 
   src = fetchgit {
     url = "https://evilpiepirate.org/git/bcachefs-tools.git";
-    rev = "6e696ea08703eecd0d1c7b8c520b6f62f06f4f26";
-    sha256 = "0m3valm68vc73b4kydlga17fglxa9bldrjaszlladzl5bd0zb967";
+    rev = "5d6e237b728cfb7c3bf2cb1a613e64bdecbd740d";
+    sha256 = "1syym9k3njb0bk2mg6832cbf6r42z6y8b6hjv7dg4gmv2h7v7l7g";
   };
 
-  enableParallelBuilding = true;
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ attr libuuid libscrypt libsodium keyutils liburcu zlib libaio zstd lz4 ];
-  installFlags = [ "PREFIX=${placeholder "out"}" ];
-
-  preInstall = ''
+  postPatch = ''
     substituteInPlace Makefile \
+      --replace "pytest-3" "pytest --verbose" \
       --replace "INITRAMFS_DIR=/etc/initramfs-tools" \
                 "INITRAMFS_DIR=${placeholder "out"}/etc/initramfs-tools"
   '';
 
+  enableParallelBuilding = true;
+
+  nativeBuildInputs = [
+    pkgconfig
+  ];
+
+  buildInputs = [
+    libuuid libscrypt libsodium keyutils liburcu zlib libaio
+    zstd lz4 python3Packages.pytest
+  ] ++ stdenv.lib.optional fuseSupport fuse3;
+
+  doCheck = true;
+
+  checkFlags = [
+    "BCACHEFS_TEST_USE_VALGRIND=no"
+  ];
+
+  checkInputs = [
+    valgrind
+  ];
+
+  preCheck = stdenv.lib.optionalString fuseSupport ''
+    rm tests/test_fuse.py
+  '';
+
+  installFlags = [
+    "PREFIX=${placeholder "out"}"
+  ];
+
   meta = with stdenv.lib; {
     description = "Tool for managing bcachefs filesystems";
     homepage = https://bcachefs.org/;
diff --git a/pkgs/tools/filesystems/bindfs/default.nix b/pkgs/tools/filesystems/bindfs/default.nix
index 834aa7290ab..f13439482db 100644
--- a/pkgs/tools/filesystems/bindfs/default.nix
+++ b/pkgs/tools/filesystems/bindfs/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, fuse, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  version = "1.14.3";
+  version = "1.14.4";
   pname = "bindfs";
 
   src = fetchurl {
     url    = "https://bindfs.org/downloads/${pname}-${version}.tar.gz";
-    sha256 = "09csi8brp6v98gy9xcl6lkbz1wgs796wch1qviw2wa1n16wd91vw";
+    sha256 = "1vk42bq8y13gv4yvajf65qsh59lscwcaw3xv94qpjxld3786i8c7";
   };
 
   dontStrip = true;
diff --git a/pkgs/tools/filesystems/ceph/0000-dont-check-cherrypy-version.patch b/pkgs/tools/filesystems/ceph/0000-dont-check-cherrypy-version.patch
deleted file mode 100644
index 9604da87fb5..00000000000
--- a/pkgs/tools/filesystems/ceph/0000-dont-check-cherrypy-version.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-diff --git a/src/pybind/mgr/dashboard/module.py b/src/pybind/mgr/dashboard/module.py
-index a8a3ec07c1..bcc9b86c37 100644
---- a/src/pybind/mgr/dashboard/module.py
-+++ b/src/pybind/mgr/dashboard/module.py
-@@ -25,40 +25,6 @@ except ImportError:
- 
- from .services.sso import load_sso_db
- 
--# The SSL code in CherryPy 3.5.0 is buggy.  It was fixed long ago,
--# but 3.5.0 is still shipping in major linux distributions
--# (Fedora 27, Ubuntu Xenial), so we must monkey patch it to get SSL working.
--if cherrypy is not None:
--    v = StrictVersion(cherrypy.__version__)
--    # It was fixed in 3.7.0.  Exact lower bound version is probably earlier,
--    # but 3.5.0 is what this monkey patch is tested on.
--    if StrictVersion("3.5.0") <= v < StrictVersion("3.7.0"):
--        from cherrypy.wsgiserver.wsgiserver2 import HTTPConnection,\
--                                                    CP_fileobject
--
--        def fixed_init(hc_self, server, sock, makefile=CP_fileobject):
--            hc_self.server = server
--            hc_self.socket = sock
--            hc_self.rfile = makefile(sock, "rb", hc_self.rbufsize)
--            hc_self.wfile = makefile(sock, "wb", hc_self.wbufsize)
--            hc_self.requests_seen = 0
--
--        HTTPConnection.__init__ = fixed_init
--
--# When the CherryPy server in 3.2.2 (and later) starts it attempts to verify
--# that the ports its listening on are in fact bound. When using the any address
--# "::" it tries both ipv4 and ipv6, and in some environments (e.g. kubernetes)
--# ipv6 isn't yet configured / supported and CherryPy throws an uncaught
--# exception.
--if cherrypy is not None:
--    v = StrictVersion(cherrypy.__version__)
--    # the issue was fixed in 3.2.3. it's present in 3.2.2 (current version on
--    # centos:7) and back to at least 3.0.0.
--    if StrictVersion("3.1.2") <= v < StrictVersion("3.2.3"):
--        # https://github.com/cherrypy/cherrypy/issues/1100
--        from cherrypy.process import servers
--        servers.wait_for_occupied_port = lambda host, port: None
--
- if 'COVERAGE_ENABLED' in os.environ:
-     import coverage
-     __cov = coverage.Coverage(config_file="{}/.coveragerc".format(os.path.dirname(__file__)),
-diff --git a/src/pybind/mgr/prometheus/module.py b/src/pybind/mgr/prometheus/module.py
-index b7fecf8d85..dfd4160591 100644
---- a/src/pybind/mgr/prometheus/module.py
-+++ b/src/pybind/mgr/prometheus/module.py
-@@ -18,20 +18,6 @@ from rbd import RBD
- DEFAULT_ADDR = '::'
- DEFAULT_PORT = 9283
- 
--# When the CherryPy server in 3.2.2 (and later) starts it attempts to verify
--# that the ports its listening on are in fact bound. When using the any address
--# "::" it tries both ipv4 and ipv6, and in some environments (e.g. kubernetes)
--# ipv6 isn't yet configured / supported and CherryPy throws an uncaught
--# exception.
--if cherrypy is not None:
--    v = StrictVersion(cherrypy.__version__)
--    # the issue was fixed in 3.2.3. it's present in 3.2.2 (current version on
--    # centos:7) and back to at least 3.0.0.
--    if StrictVersion("3.1.2") <= v < StrictVersion("3.2.3"):
--        # https://github.com/cherrypy/cherrypy/issues/1100
--        from cherrypy.process import servers
--        servers.wait_for_occupied_port = lambda host, port: None
--
- # cherrypy likes to sys.exit on error.  don't let it take us down too!
- def os_exit_noop(*args, **kwargs):
-     pass
diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix
index abf6ed1361b..64512272777 100644
--- a/pkgs/tools/filesystems/ceph/default.nix
+++ b/pkgs/tools/filesystems/ceph/default.nix
@@ -93,7 +93,7 @@ let
   ]);
   sitePackages = ceph-python-env.python.sitePackages;
 
-  version = "14.2.7";
+  version = "14.2.8";
 in rec {
   ceph = stdenv.mkDerivation {
     pname = "ceph";
@@ -101,12 +101,11 @@ in rec {
 
     src = fetchurl {
       url = "http://download.ceph.com/tarballs/ceph-${version}.tar.gz";
-      sha256 = "0qiqhm6hvz299q54k3i4crnb5dhpq6xnn2yqih9pxn9van0dq1ln";
+      sha256 = "0p7pjycqhxqg1mmix8ykx3xqq01d560p54iiidxps0rcvwfkyyki";
     };
 
     patches = [
       ./0000-fix-SPDK-build-env.patch
-      ./0000-dont-check-cherrypy-version.patch
     ];
 
     nativeBuildInputs = [
diff --git a/pkgs/tools/filesystems/davfs2/default.nix b/pkgs/tools/filesystems/davfs2/default.nix
index 366db929f58..13f21ae8b58 100644
--- a/pkgs/tools/filesystems/davfs2/default.nix
+++ b/pkgs/tools/filesystems/davfs2/default.nix
@@ -1,5 +1,7 @@
 { stdenv
 , fetchurl
+, fetchpatch
+, autoreconfHook
 , neon
 , procps
 , substituteAll
@@ -14,6 +16,10 @@ stdenv.mkDerivation rec {
     sha256 = "00fqadhmhi2bmdar5a48nicmjcagnmaj9wgsvjr6cffmrz6pcx21";
   };
 
+  nativeBuildInputs = [
+    autoreconfHook # neon-0.31.patch requires reconfiguration
+  ];
+
   buildInputs = [ neon zlib ];
 
   patches = [
@@ -23,6 +29,15 @@ stdenv.mkDerivation rec {
       src = ./0001-umount_davfs-substitute-ps-command.patch;
       ps = "${procps}/bin/ps";
     })
+
+    # Fix build with neon 0.31
+    # http://savannah.nongnu.org/bugs/?58101
+    (fetchpatch {
+      name = "neon-0.31.patch";
+      url = "http://savannah.nongnu.org/bugs/download.php?file_id=48737";
+      sha256 = "EtQfcstWkn8AcbZo93midGt076gq20AvGGJyQ3FO/YQ=";
+      extraPrefix = ""; # empty means add 'a/' and 'b/'
+    })
   ];
 
   configureFlags = [ "--sysconfdir=/etc" ];
diff --git a/pkgs/tools/filesystems/fuse-overlayfs/default.nix b/pkgs/tools/filesystems/fuse-overlayfs/default.nix
index 00f89313942..02347944788 100644
--- a/pkgs/tools/filesystems/fuse-overlayfs/default.nix
+++ b/pkgs/tools/filesystems/fuse-overlayfs/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     description = "FUSE implementation for overlayfs";
     longDescription = "An implementation of overlay+shiftfs in FUSE for rootless containers.";
     license = licenses.gpl3;
-    maintainers = with maintainers; [ ma9e ];
+    maintainers = with maintainers; [ ma9e ] ++ teams.podman.members;
     platforms = platforms.unix;
     inherit (src.meta) homepage;
   };
diff --git a/pkgs/tools/filesystems/moosefs/default.nix b/pkgs/tools/filesystems/moosefs/default.nix
index fe9f1ae11e6..4a912d3b42c 100644
--- a/pkgs/tools/filesystems/moosefs/default.nix
+++ b/pkgs/tools/filesystems/moosefs/default.nix
@@ -10,13 +10,13 @@
 
 stdenv.mkDerivation rec {
   pname = "moosefs";
-  version = "3.0.110";
+  version = "3.0.112";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "16m3mxmik2ifrv1g9cp68k57w8xwsxacws3sh1ajlba4azj9sf8v";
+    sha256 = "04ymwg9r9x9gqjwy9jbjv7zzfgwal0xlfy6z5bwl27m2ys6l5k4a";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper ];
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://moosefs.com;
+    homepage = "https://moosefs.com";
     description = "Open Source, Petabyte, Fault-Tolerant, Highly Performing, Scalable Network Distributed File System";
     platforms = platforms.linux;
     license = licenses.gpl2;
diff --git a/pkgs/tools/filesystems/mtools/default.nix b/pkgs/tools/filesystems/mtools/default.nix
index b477ad8deac..58bd9340c5b 100644
--- a/pkgs/tools/filesystems/mtools/default.nix
+++ b/pkgs/tools/filesystems/mtools/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "mtools-4.0.23";
+  name = "mtools-4.0.24";
 
   src = fetchurl {
     url = "mirror://gnu/mtools/${name}.tar.bz2";
-    sha256 = "1qwfxzr964fasxlzhllahk8mzh7c82s808wvly95dsqsflkdp27i";
+    sha256 = "1f9g7g8zspp8nvg1nz869il9pvxpdpchqd0vxfc89y8rjbda5x14";
   };
 
   patches = stdenv.lib.optional stdenv.isDarwin ./UNUSED-darwin.patch;
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   doCheck = true;
 
   meta = with stdenv.lib; {
-    homepage = https://www.gnu.org/software/mtools/;
+    homepage = "https://www.gnu.org/software/mtools/";
     description = "Utilities to access MS-DOS disks";
     platforms = platforms.unix;
     license = licenses.gpl3;
diff --git a/pkgs/tools/filesystems/relfs/default.nix b/pkgs/tools/filesystems/relfs/default.nix
deleted file mode 100644
index c99a95714c0..00000000000
--- a/pkgs/tools/filesystems/relfs/default.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-{ stdenv, fetchcvs, ocaml, fuse, postgresql, pcre
-, libuuid, gnome_vfs, pkgconfig, GConf }:
-
-stdenv.mkDerivation {
-	name = "relfs-2008.03.05";
-
-	src = fetchcvs {
-		cvsRoot = ":pserver:anonymous@relfs.cvs.sourceforge.net:/cvsroot/relfs";
-		module = "relfs";
-		date = "2008-03-05";
-		sha256 = "949f8eff7e74ff2666cccf8a1efbfcce8d54bc41bec6ad6db8c029de7ca832a3";
-	};
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ ocaml fuse postgresql pcre libuuid gnome_vfs GConf ];
-
-  buildPhase = ''
-    cd deps
-		sed -e 's/^CPP/#&/ ; s/^# CPP=gcc/CPP=gcc/' -i Makefile.camlidl
-		make
-		cd ../src
-		sed -e 's/NULL\\|FALSE/0/g' -i Mimetype_lib.c
-		sed -e 's@/usr/local/@'\$out/'@' -i Makefile
-		sed -e '/install:/a\\\tmkdir -p '\$out'/share' -i Makefile
-		make
-		mkdir -p \$out/bin
-		echo '
-		  createuser -A -D \$1
-			dropdb relfs_\$1 ;
-			rm -rf /tmp/relfs-\$1-tmp;
-			mkdir /tmp/relfs-\$1-tmp;
-			USER=\$1 relfs -f -s /tmp/relfs-\$1-tmp  &
-			sleep 1 &&
-			kill -15 \''${!};
-			rm -rf /tmp/relfs-\$1-tmp ;
-			psql -d relfs_\$1 <<< \"ALTER DATABASE relfs_\$1 OWNER TO \$1;
-				ALTER TABLE obj OWNER TO \$1;
-				ALTER TABLE obj_mimetype OWNER TO \$1;
-				ALTER TABLE membership OWNER TO \$1;\"' > \$out/bin/relfs_grant;
-		chmod a+x \$out/bin/relfs_grant;
-  '';
-
-	meta = with stdenv.lib; {
-		description = "A relational filesystem on top of FUSE";
-    homepage = http://relfs.sourceforge.net;
-    license = licenses.gpl2;
-    maintainers = [ maintainers.raskin ];
-    platforms = platforms.linux;
-    broken = true;
-	};
-}
diff --git a/pkgs/tools/filesystems/smbnetfs/default.nix b/pkgs/tools/filesystems/smbnetfs/default.nix
index be46abb2694..04c7d7c9d2a 100644
--- a/pkgs/tools/filesystems/smbnetfs/default.nix
+++ b/pkgs/tools/filesystems/smbnetfs/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "smbnetfs";
-  version = "0.6.1";
+  version = "0.6.2";
   src = fetchurl {
     url = "mirror://sourceforge/project/smbnetfs/smbnetfs/SMBNetFS-${version}/${pname}-${version}.tar.bz2";
-    sha256 = "02iqjnm6pdwc1q38z56akiwdbp0xisr6qwrmxs1lrk5mq7j8x2w4";
+    sha256 = "19x9978k90w9a65lrpsphk7swsq8zkws9jc27q4zbndrm0r2snr0";
   };
 
   nativeBuildInputs = [ pkgconfig autoconf ];
@@ -23,6 +23,6 @@ stdenv.mkDerivation rec {
     downloadPage = "https://sourceforge.net/projects/smbnetfs/files/smbnetfs";
     updateWalker = true;
     inherit version;
-    homepage = https://sourceforge.net/projects/smbnetfs/;
+    homepage = "https://sourceforge.net/projects/smbnetfs/";
   };
 }
diff --git a/pkgs/tools/filesystems/squashfs-tools-ng/default.nix b/pkgs/tools/filesystems/squashfs-tools-ng/default.nix
index bc8ce7b19c5..df8b3f22c48 100644
--- a/pkgs/tools/filesystems/squashfs-tools-ng/default.nix
+++ b/pkgs/tools/filesystems/squashfs-tools-ng/default.nix
@@ -1,18 +1,18 @@
 { stdenv, lib, fetchurl, doxygen, graphviz, perl, pkgconfig
-, lz4, xz, zlib, zstd
+, lz4, lzo, xz, zlib, zstd
 }:
 
 stdenv.mkDerivation rec {
   pname = "squashfs-tools-ng";
-  version = "0.8";
+  version = "0.9";
 
   src = fetchurl {
     url = "https://infraroot.at/pub/squashfs/squashfs-tools-ng-${version}.tar.xz";
-    sha256 = "1km18qm9kgmm39aj9yq2aaq99708nmj9cpa9lqf5bp1y617bhh7y";
+    sha256 = "1jx6bga0k07cckpv0yk77kwql7rjiicf9wkbadc8yqhp463xn90q";
   };
 
   nativeBuildInputs = [ doxygen graphviz pkgconfig perl ];
-  buildInputs = [ zlib xz lz4 zstd ];
+  buildInputs = [ zlib xz lz4 lzo zstd ];
 
   meta = with lib; {
     homepage = https://github.com/AgentD/squashfs-tools-ng;
diff --git a/pkgs/tools/graphics/asymptote/default.nix b/pkgs/tools/graphics/asymptote/default.nix
index b3b03892fcb..285dd9e7d4e 100644
--- a/pkgs/tools/graphics/asymptote/default.nix
+++ b/pkgs/tools/graphics/asymptote/default.nix
@@ -9,14 +9,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "2.63";
+  version = "2.65";
   pname = "asymptote";
 
   src = fetchFromGitHub {
     owner = "vectorgraphics";
     repo = pname;
     rev = version;
-    sha256 = "1szy0hmh8fx73ngpfn5p934snv148kf1amdnbcjc0n5zb4x9vzck";
+    sha256 = "1b40khffrvwm3nd5nx1iybhkc25zs6whrb3wynw7y3i87p3palyz";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/graphics/fast-neural-doodle/default.nix b/pkgs/tools/graphics/fast-neural-doodle/default.nix
deleted file mode 100644
index 17e1c710586..00000000000
--- a/pkgs/tools/graphics/fast-neural-doodle/default.nix
+++ /dev/null
@@ -1,63 +0,0 @@
-{stdenv, fetchFromGitHub, fetchurl, torch, torch-hdf5, loadcaffe, bash
-  , python, numpy, scipy, h5py, scikitlearn, pillow
-  }:
-stdenv.mkDerivation rec {
-  pname = "fast-neural-doodle";
-  version = "0.0pre2016-07-01";
-  buildInputs = [
-    torch torch-hdf5 python numpy h5py scikitlearn scipy pillow
-  ];
-
-  inherit torch loadcaffe bash python;
-  torch_hdf5 = torch-hdf5;
-  python_libPrefix = python.libPrefix;
-
-  src = fetchFromGitHub {
-    owner = "DmitryUlyanov";
-    repo = "fast-neural-doodle";
-    rev = "00c35a4440d1d58b029d7bdf9bc56743b1a1835f";
-    sha256 = "0xhmhxhjm59pfjm2q27g2xfb35hg0vlqkk3sb3llx2qqq2c7jk8m";
-  };
-  models = [
-    (fetchurl {
-      url = "https://gist.githubusercontent.com/ksimonyan/3785162f95cd2d5fee77/raw/bb2b4fe0a9bb0669211cf3d0bc949dfdda173e9e/VGG_ILSVRC_19_layers_deploy.prototxt";
-      sha256 = "09cpz7pyvc8sypg2q5j2i8yqwj1sjdbnmd6skl293p9pv13dmjg7";
-    })
-    (fetchurl {
-      url = "https://bethgelab.org/media/uploads/deeptextures/vgg_normalised.caffemodel";
-      sha256 = "11qckdvlck7wwl3pan0nawgxm8l2ccddi272i5l8rs9qzm7b23rf";
-    })
-    (fetchurl {
-      url = "http://www.robots.ox.ac.uk/~vgg/software/very_deep/caffe/VGG_ILSVRC_19_layers.caffemodel";
-      sha256 = "0m399x7pl4lnhy435ycsyz8xpzapqmx9n1sz698y2vhcqhkwdd1i";
-    })
-  ];
-  installPhase = ''
-    mkdir -p "$out"/{doc/fast-neural-doodle,lib/lua/fast_neural_doodle,lib/${python.libPrefix}/fast_neural_doodle,bin}
-    cp -r data src fast_neural_doodle.lua "$out/lib/lua/fast_neural_doodle/"
-    for file in $models; do
-      ln -s "$file" "$out/lib/lua/fast_neural_doodle/data/pretrained/$(basename "$file" | sed -e 's/[^-]*-//')"
-    done;
-    cp get_mask_hdf5.py "$out/lib/${python.libPrefix}/fast_neural_doodle"
-    cp *.md LICENSE "$out/doc/fast-neural-doodle"
-
-    export pythonpath="$PYTHONPATH"
-
-    substituteAll "${./get-mask-hdf5.sh}" "$out/bin/get-mask-hdf5"
-    substituteAll "${./fast-neural-doodle.sh}" "$out/bin/fast-neural-doodle"
-
-    chmod a+x "$out/bin"/*
-
-    "$out/bin/get-mask-hdf5" --n_colors=4 --style_image data/Renoir/style.png --style_mask data/Renoir/style_mask.png --target_mask data/Renoir/target_mask.png --out_hdf5 masks.hdf5
-
-    "$out/bin/fast-neural-doodle" -gpu -1 -masks_hdf5 masks.hdf5 -num_iterations 1
-  '';
-  meta = {
-    inherit version;
-    description = ''Faster neural doodle'';
-    license = stdenv.lib.licenses.mit;
-    maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
-    broken = true;
-  };
-}
diff --git a/pkgs/tools/graphics/fast-neural-doodle/fast-neural-doodle.sh b/pkgs/tools/graphics/fast-neural-doodle/fast-neural-doodle.sh
deleted file mode 100644
index a089d5a9506..00000000000
--- a/pkgs/tools/graphics/fast-neural-doodle/fast-neural-doodle.sh
+++ /dev/null
@@ -1,28 +0,0 @@
-#! @bash@/bin/bash
-
-declare -a args
-c=1
-flag=
-
-for arg in "$@"; do
-        if test "$arg" = "${arg#-}" && test "$arg" = "${arg#/}" && test -n "$flag"; then
-                arg="$PWD/$arg"
-                flag=
-        elif (test "$arg" != "${arg%_image}" || test "$arg" == "-masks_hdf5") && test "$arg" != "${arg#-}"; then
-                flag=1
-        else
-                flag=
-        fi
-        args[c]="$arg";
-        c=$((c+1));
-done
-
-cd "@out@/lib/lua/fast_neural_doodle"
-
-export LUA_PATH="$LUA_PATH${LUA_PATH:+;}@loadcaffe@/lua/?/init.lua;@loadcaffe@/lua/?.lua"
-export LUA_PATH="$LUA_PATH${LUA_PATH:+;}@torch_hdf5@/lua/?/init.lua;@torch_hdf5@/lua/?.lua"
-export LUA_CPATH="$LUA_CPATH${LUA_CPATH:+;}@loadcaffe@/lib/?.so"
-
-set -x
-
-@torch@/bin/th fast_neural_doodle.lua "${args[@]}"
diff --git a/pkgs/tools/graphics/fast-neural-doodle/get-mask-hdf5.sh b/pkgs/tools/graphics/fast-neural-doodle/get-mask-hdf5.sh
deleted file mode 100644
index cfff76d141f..00000000000
--- a/pkgs/tools/graphics/fast-neural-doodle/get-mask-hdf5.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-#! @bash@/bin/bash
-
-export PYTHONPATH="@pythonpath@"
-
-@python@/bin/python "@out@/lib/@python_libPrefix@/fast_neural_doodle/get_mask_hdf5.py" "$@"
diff --git a/pkgs/tools/graphics/gnuplot/default.nix b/pkgs/tools/graphics/gnuplot/default.nix
index 0ac1c1a2155..c04101575c7 100644
--- a/pkgs/tools/graphics/gnuplot/default.nix
+++ b/pkgs/tools/graphics/gnuplot/default.nix
@@ -48,12 +48,16 @@ in
     (if aquaterm then "--with-aquaterm" else "--without-aquaterm")
   ];
 
+  CXXFLAGS = lib.optionalString (stdenv.isDarwin && withQt) "-std=c++11";
+
   postInstall = lib.optionalString withX ''
     wrapProgram $out/bin/gnuplot \
        --prefix PATH : '${gnused}/bin' \
        --prefix PATH : '${coreutils}/bin' \
        --prefix PATH : '${fontconfig.bin}/bin' \
        --run '. ${./set-gdfontpath-from-fontconfig.sh}'
+  '' + lib.optionalString (stdenv.isDarwin && withQt) ''
+     wrapQtApp $out/bin/gnuplot
   '';
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/graphics/neural-style/default.nix b/pkgs/tools/graphics/neural-style/default.nix
deleted file mode 100644
index a4706e95cee..00000000000
--- a/pkgs/tools/graphics/neural-style/default.nix
+++ /dev/null
@@ -1,58 +0,0 @@
-{stdenv, fetchFromGitHub, torch, loadcaffe, fetchurl, bash}:
-stdenv.mkDerivation rec {
-  pname = "neural-style";
-  version = "0.0pre2016.08.15";
-  buildInputs = [torch loadcaffe];
-  src = fetchFromGitHub {
-    owner = "jcjohnson";
-    repo = "neural-style";
-    rev = "ec5ba3a690d3090428d3b92b0c5d686a311bf432";
-    sha256 = "14qzbs9f95izvd0vbbirhymdw9pq2nw0jvhrh7vnyzr99xllwp02";
-  };
-  models = [
-    (fetchurl {
-      url = "https://gist.githubusercontent.com/ksimonyan/3785162f95cd2d5fee77/raw/bb2b4fe0a9bb0669211cf3d0bc949dfdda173e9e/VGG_ILSVRC_19_layers_deploy.prototxt";
-      sha256 = "09cpz7pyvc8sypg2q5j2i8yqwj1sjdbnmd6skl293p9pv13dmjg7";
-    })
-    (fetchurl {
-      url = "https://bethgelab.org/media/uploads/deeptextures/vgg_normalised.caffemodel";
-      sha256 = "11qckdvlck7wwl3pan0nawgxm8l2ccddi272i5l8rs9qzm7b23rf";
-    })
-    (fetchurl {
-      url = "http://www.robots.ox.ac.uk/~vgg/software/very_deep/caffe/VGG_ILSVRC_19_layers.caffemodel";
-      sha256 = "0m399x7pl4lnhy435ycsyz8xpzapqmx9n1sz698y2vhcqhkwdd1i";
-    })
-  ];
-  installPhase = ''
-    mkdir -p "$out"/{bin,lib/lua/neural-style/models,share/doc/neural-style,share/neural-style}
-    for file in $models; do
-      ln -s "$file" "$out/lib/lua/neural-style/models/$(basename "$file" | sed -e 's/[^-]*-//')"
-    done;
-    cp README* INSTALL* LICEN?E* "$out"/share/doc/neural-style/
-    cp neural_style.lua "$out"/lib/lua/neural-style
-
-    substituteAll "${./neural-style.sh}" "$out/bin/neural-style"
-    chmod a+x "$out/bin/neural-style"
-    cp "$out/bin/neural-style" .
-    cp "$out/lib/lua/neural-style/models/"* models/
-
-    echo "Testing..."
-
-    "$out/bin/neural-style" -style_image examples/inputs/golden_gate.jpg \
-      -content_image examples/inputs/golden_gate.jpg -output_image $PWD/test.png \
-      -gpu -1 -save_iter 1 -print_iter 1 -num_iterations 1 || true
-
-    cp -f "$out/lib/lua/neural-style/models/"* models/
-
-    test -e test.png || exit 1
-  '';
-  inherit torch bash loadcaffe;
-  meta = {
-    inherit version;
-    description = ''A torch implementation of the paper A Neural Algorithm of Artistic Style'';
-    license = stdenv.lib.licenses.mit ;
-    maintainers = [stdenv.lib.maintainers.raskin];
-    # Eats a lot of RAM
-    platforms = ["x86_64-linux"];
-  };
-}
diff --git a/pkgs/tools/graphics/neural-style/neural-style.sh b/pkgs/tools/graphics/neural-style/neural-style.sh
deleted file mode 100644
index 07a4d6dedc0..00000000000
--- a/pkgs/tools/graphics/neural-style/neural-style.sh
+++ /dev/null
@@ -1,25 +0,0 @@
-#! @bash@/bin/bash
-
-declare -a args
-c=1
-flag=
-
-for arg in "$@"; do
-        if test "$arg" = "${arg#-}" && test "$arg" = "${arg#/}" && test -n "$flag"; then
-                arg="$PWD/$arg"
-                flag=
-        elif test "$arg" != "${arg%_image}" && test "$arg" != "${arg#-}"; then
-                flag=1
-        else
-                flag=
-        fi
-        args[c]="$arg";
-        c=$((c+1));
-done
-
-cd "@out@/lib/lua/neural-style"
-
-export LUA_PATH="$LUA_PATH${LUA_PATH:+;}@loadcaffe@/lua/?/init.lua;@loadcaffe@/lua/?.lua"
-export LUA_CPATH="$LUA_CPATH${LUA_CPATH:+;}@loadcaffe@/lib/?.so"
-
-@torch@/bin/th neural_style.lua "${args[@]}"
diff --git a/pkgs/tools/graphics/viu/default.nix b/pkgs/tools/graphics/viu/default.nix
index dcb95ecc553..ba35711a6ee 100644
--- a/pkgs/tools/graphics/viu/default.nix
+++ b/pkgs/tools/graphics/viu/default.nix
@@ -2,16 +2,18 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "viu";
-  version = "0.2.1";
+  version = "1.0";
 
   src = fetchFromGitHub {
     owner = "atanunq";
     repo = "viu";
     rev = "v${version}";
-    sha256 = "0p4ibvv0qrflqdc2bi9rjn7yhn01ncxrpqpxmh8cbq67rbvm7jnx";
+    sha256 = "1ivhm6js0ylnxwp84jmm2vmnl4iy1cwr3m9imx7lmcl0i3c8b9if";
   };
+  # tests are failing, reported at upstream: https://github.com/atanunq/viu/issues/40
+  doCheck = false;
 
-  cargoSha256 = "1wvqln3xr192ml9gfzfv6qdv59g654xyaw15d790sysm82gd0inz";
+  cargoSha256 = "15zdnr95a363w4rddv1fbz796m01430gzly5p953m23g2mbxdmp0";
 
   meta = with lib; {
     description = "A command-line application to view images from the terminal written in Rust";
diff --git a/pkgs/tools/inputmethods/fusuma/Gemfile.lock b/pkgs/tools/inputmethods/fusuma/Gemfile.lock
index c35e7658d63..1ca313c6cd5 100644
--- a/pkgs/tools/inputmethods/fusuma/Gemfile.lock
+++ b/pkgs/tools/inputmethods/fusuma/Gemfile.lock
@@ -10,4 +10,4 @@ DEPENDENCIES
   fusuma
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/tools/misc/3llo/Gemfile.lock b/pkgs/tools/misc/3llo/Gemfile.lock
index 0696ba34165..45a37b5e1ca 100644
--- a/pkgs/tools/misc/3llo/Gemfile.lock
+++ b/pkgs/tools/misc/3llo/Gemfile.lock
@@ -24,4 +24,4 @@ DEPENDENCIES
   3llo (= 0.3.0)
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/misc/alarm-clock-applet/default.nix b/pkgs/tools/misc/alarm-clock-applet/default.nix
index 7b869d66d1c..c92c0821092 100644
--- a/pkgs/tools/misc/alarm-clock-applet/default.nix
+++ b/pkgs/tools/misc/alarm-clock-applet/default.nix
@@ -8,6 +8,7 @@
 , gtk2
 , gst_all_1
 , gnome2
+, gnome-icon-theme
 , libnotify
 , libxml2
 , libunique
@@ -46,7 +47,7 @@ stdenv.mkDerivation rec {
     gtk2
     gst_all_1.gstreamer
     gnome2.GConf
-    gnome2.gnome_icon_theme
+    gnome-icon-theme
     libnotify
     libxml2
     libunique
diff --git a/pkgs/tools/misc/bcunit/default.nix b/pkgs/tools/misc/bcunit/default.nix
index 4a440e133fe..203735d79b0 100644
--- a/pkgs/tools/misc/bcunit/default.nix
+++ b/pkgs/tools/misc/bcunit/default.nix
@@ -1,22 +1,30 @@
-{stdenv, fetchFromGitHub, cmake}:
+{ cmake
+, fetchFromGitLab
+, stdenv
+}:
+
 stdenv.mkDerivation rec {
-  name = "${baseName}-${version}";
-  baseName = "bcunit";
-  version = "3.0.2";
-  buildInputs = [cmake];
-  src = fetchFromGitHub {
-    owner = "BelledonneCommunications";
-    repo = baseName;
-    rev = version;
-    sha256 = "063yl7kxkix76r49qrj0h1qpz2p538d1yw8aih0x4i47g35k00y7";
+  pname = "bcunit";
+  # Latest release 3.0.2 is missing some functions needed by bctoolbox. See:
+  # https://gitlab.linphone.org/BC/public/bcunit/issues/1
+  version = "unstable-2019-11-19";
+
+  buildInputs = [ cmake ];
+  src = fetchFromGitLab {
+    domain = "gitlab.linphone.org";
+    owner = "public";
+    group = "BC";
+    repo = pname;
+    rev = "3c720fbf67dd3c02b0c7011ed4036982b2c93532";
+    sha256 = "1237hpmkls2igp60gdfkbknxpgwvxn1vmv2m41vyl25xw1d3g35w";
   };
 
-  meta = {
+  meta = with stdenv.lib; {
     inherit version;
-    description = ''A fork of CUnit test framework'';
-    license = stdenv.lib.licenses.lgpl2Plus;
-    maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
+    description = "A fork of CUnit test framework";
+    homepage = "https://gitlab.linphone.org/BC/public/bcunit";
+    license = licenses.lgpl2Plus;
+    maintainers = with maintainers; [ raskin jluttine ];
+    platforms = platforms.linux;
   };
 }
-
diff --git a/pkgs/tools/misc/bdf2psf/default.nix b/pkgs/tools/misc/bdf2psf/default.nix
index 07bc5de371f..a29098268f9 100644
--- a/pkgs/tools/misc/bdf2psf/default.nix
+++ b/pkgs/tools/misc/bdf2psf/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bdf2psf";
-  version = "1.194";
+  version = "1.195";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/c/console-setup/bdf2psf_${version}_all.deb";
-    sha256 = "10c0rbhqscizfa063m6mms31i0knh25bxr35s008b6mp5pxr33mc";
+    sha256 = "04dsxp6vcy9z9gh41bq970wvdnhkmbdlizsy0dyhsl5axm5i84xz";
   };
 
   nativeBuildInputs = [ dpkg ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "BDF to PSF converter";
-    homepage = https://packages.debian.org/sid/bdf2psf;
+    homepage = "https://packages.debian.org/sid/bdf2psf";
     longDescription = ''
       Font converter to generate console fonts from BDF source fonts
     '';
diff --git a/pkgs/tools/misc/bdf2sfd/default.nix b/pkgs/tools/misc/bdf2sfd/default.nix
index deb88f70eb5..15154f73a69 100644
--- a/pkgs/tools/misc/bdf2sfd/default.nix
+++ b/pkgs/tools/misc/bdf2sfd/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "bdf2sfd";
-  version = "1.1.0";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "fcambus";
     repo = pname;
     rev = version;
-    sha256 = "130kaw2485qhb2171w2i9kpl1lhbkfwdz3j19cy63xk63fhyd8kb";
+    sha256 = "02dzvrgwpgbd0wgfnlpiv2qlwvspwl7a0qh8cg363lpnxv8akw9q";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/tools/misc/bibutils/default.nix b/pkgs/tools/misc/bibutils/default.nix
index d099a8aba9b..bd744bcfb6f 100644
--- a/pkgs/tools/misc/bibutils/default.nix
+++ b/pkgs/tools/misc/bibutils/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bibutils";
-  version = "6.8";
+  version = "6.10";
 
   src = fetchurl {
     url = "mirror://sourceforge/bibutils/bibutils_${version}_src.tgz";
-    sha256 = "1n28fjrl7zxjxvcqzmrc9xj8ly6nkxviimxbzamj8dslnkzpzqw1";
+    sha256 = "15p4av74ihsg03j854dkdqihpspwnp58p9g1lhx48w8kz91c0ml6";
   };
 
   configureFlags = [ "--dynamic" "--install-dir" "$(out)/bin" "--install-lib" "$(out)/lib" ];
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Bibliography format interconversion";
     longDescription = "The bibutils program set interconverts between various bibliography formats using a common MODS-format XML intermediate. For example, one can convert RIS-format files to Bibtex by doing two transformations: RIS->MODS->Bibtex. By using a common intermediate for N formats, only 2N programs are required and not N²-N. These programs operate on the command line and are styled after standard UNIX-like filters.";
-    homepage = https://sourceforge.net/p/bibutils/home/Bibutils/;
+    homepage = "https://sourceforge.net/p/bibutils/home/Bibutils/";
     license = licenses.gpl2;
     maintainers = [ maintainers.garrison ];
     platforms = platforms.linux;
diff --git a/pkgs/tools/misc/brltty/default.nix b/pkgs/tools/misc/brltty/default.nix
index fa7457b417e..1320f28ede2 100644
--- a/pkgs/tools/misc/brltty/default.nix
+++ b/pkgs/tools/misc/brltty/default.nix
@@ -6,11 +6,11 @@ assert alsaSupport -> alsaLib != null;
 assert systemdSupport -> systemd != null;
 
 stdenv.mkDerivation rec {
-  name = "brltty-6.0";
+  name = "brltty-6.1";
 
   src = fetchurl {
     url = "http://brltty.com/archive/${name}.tar.gz";
-    sha256 = "0lmp9ab8gp4yv8m3qx4gxns3prrh7kvh8sfcd6vc45h40cgcsjxg";
+    sha256 = "0nk54chr7z2w579vyiak9xk2avhnvrx7x2l5sk8nyw2zplchkx9q";
   };
 
   nativeBuildInputs = [ pkgconfig python3.pkgs.cython ];
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
       It drives the braille display, and provides complete screen review functionality.
       Some speech capability has also been incorporated.
     '';
-    homepage = http://www.brltty.com/;
+    homepage = "http://www.brltty.com/";
     license = stdenv.lib.licenses.gpl2;
     maintainers = [ stdenv.lib.maintainers.bramd ];
     platforms = stdenv.lib.platforms.all;
diff --git a/pkgs/tools/misc/broot/default.nix b/pkgs/tools/misc/broot/default.nix
index b7e2fb00a14..5d31570aacd 100644
--- a/pkgs/tools/misc/broot/default.nix
+++ b/pkgs/tools/misc/broot/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "broot";
-  version = "0.13.4";
+  version = "0.13.5b";
 
   src = fetchFromGitHub {
     owner = "Canop";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0xd7vsybv6w5llvb85g6bx6r33lr0ki077rwzdvwb9c8w64fvs2h";
+    sha256 = "0gcv9w79r9q3rzrdqiq9xgh68ya653sq84vzgf0fb154zmzjkxfv";
   };
 
-  cargoSha256 = "16qad0m2vygwrbz40ww0mb0ba5wn2wna1n78bc8nxh60x0qiigi9";
+  cargoSha256 = "0534jykfnqs1gfnmijkpcf91ddpbggw7p25h4arci14lgd2wrmgd";
 
   nativeBuildInputs = [ installShellFiles ];
 
diff --git a/pkgs/tools/misc/brotab/default.nix b/pkgs/tools/misc/brotab/default.nix
index 2b6274c631d..7e827f007eb 100644
--- a/pkgs/tools/misc/brotab/default.nix
+++ b/pkgs/tools/misc/brotab/default.nix
@@ -1,29 +1,32 @@
 { lib, fetchFromGitHub, glibcLocales, python }:
 
 python.pkgs.buildPythonApplication rec {
-  version = "1.1.0";
+  version = "1.2.1";
   pname = "brotab";
 
   src = fetchFromGitHub {
     owner = "balta2ar";
     repo = pname;
     rev = version;
-    sha256 = "17yj5i8p28a7zmixdfa1i4gfc7c2fmdkxlymazasar58dz8m68mw";
+    sha256 = "14yz0szwzdjvwkw24rma34y6iiwnw9qzsm89gkglc0xxa6msg6j3";
   };
 
   propagatedBuildInputs = with python.pkgs; [
     requests
     flask
-    requests
-    pytest
     psutil
+    setuptools
+  ];
+
+  checkBuildInputs = with python.pkgs; [
+    pytest
   ];
 
   # test_integration.py requires Chrome browser session
   checkPhase = ''
     ${python.interpreter} -m unittest brotab/tests/test_{brotab,utils}.py
   '';
-  
+
   meta = with lib; {
     homepage = "https://github.com/balta2ar/brotab";
     description = "Control your browser's tabs from the command line";
diff --git a/pkgs/tools/misc/chafa/default.nix b/pkgs/tools/misc/chafa/default.nix
index e3cc8c938ea..e63ad0e42af 100644
--- a/pkgs/tools/misc/chafa/default.nix
+++ b/pkgs/tools/misc/chafa/default.nix
@@ -2,14 +2,14 @@
 
 
 stdenv.mkDerivation rec{
-  version = "1.2.2";
+  version = "1.4.0";
   pname = "chafa";
 
   src = fetchFromGitHub {
     owner = "hpjansson";
     repo = "chafa";
     rev = version;
-    sha256 = "10in960wzvmb25biifi480dz87c034vwb8mcshclssl7gmzgpzdn";
+    sha256 = "0vf658dd9sb2d3yh65c8nals9z0z7rykqqigmxq2h92x2ysjbg6x";
   };
 
   nativeBuildInputs = [ autoconf
diff --git a/pkgs/tools/misc/chezmoi/default.nix b/pkgs/tools/misc/chezmoi/default.nix
index 979a658ac02..beb7c41f906 100644
--- a/pkgs/tools/misc/chezmoi/default.nix
+++ b/pkgs/tools/misc/chezmoi/default.nix
@@ -1,22 +1,20 @@
-{ stdenv, buildGoModule, fetchFromGitHub, installShellFiles, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub, installShellFiles }:
 
 buildGoModule rec {
   pname = "chezmoi";
-  version = "1.7.16";
+  version = "1.7.18";
 
   src = fetchFromGitHub {
     owner = "twpayne";
     repo = "chezmoi";
     rev = "v${version}";
-    sha256 = "1fkjdpqal0yzm58l146pf5xpbhij9iq79933i9a77v2jihdbjn52";
+    sha256 = "12gx78cbs7abizlqhs7y2w6lwlk5d1hhvixj0ki8d1d5vdr747bc";
   };
 
-  modSha256 = "0gh314d3mspqmz2z3m05bgsp62mrhb48m4mwhfy5h62fs7aqymr8";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "15b3hik3nzb7xnd6806dqdb36v7z2a0wmvxbrfwvnbigd8zd2y0j";
 
   buildFlagsArray = [
-    "-ldflags=-s -w -X github.com/twpayne/chezmoi/cmd.VersionStr=${version}"
+    "-ldflags=-s -w -X main.version=${version} -X main.builtBy=nixpkgs"
   ];
 
   nativeBuildInputs = [ installShellFiles ];
diff --git a/pkgs/tools/misc/csv2latex/default.nix b/pkgs/tools/misc/csv2latex/default.nix
new file mode 100644
index 00000000000..7cad80456b3
--- /dev/null
+++ b/pkgs/tools/misc/csv2latex/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  pname = "csv2latex";
+  version = "0.22";
+
+  src = fetchurl {
+    url = "http://brouits.free.fr/csv2latex/csv2latex-${version}.tar.gz";
+    sha256 = "09qih2zx6cvlii1n5phiinvm9xw1l8f4i60b5hg56pymzjhn97vy";
+  };
+
+  installPhase = ''
+  mkdir -p $out/bin
+  make PREFIX=$out install
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Command-line CSV to LaTeX file converter";
+    homepage = http://brouits.free.fr/csv2latex/;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.catern ];
+  };
+}
diff --git a/pkgs/tools/misc/ddcutil/default.nix b/pkgs/tools/misc/ddcutil/default.nix
index e3ba0abb8bc..a138adc3324 100644
--- a/pkgs/tools/misc/ddcutil/default.nix
+++ b/pkgs/tools/misc/ddcutil/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig
-, glib, i2c-tools, udev, libgudev, libusb, libdrm, xorg }:
+, glib, i2c-tools, udev, libgudev, libusb1, libdrm, xorg }:
 
 stdenv.mkDerivation rec {
   pname = "ddcutil";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
   buildInputs = [
     i2c-tools udev libgudev
-    glib libusb libdrm xorg.libXrandr
+    glib libusb1 libdrm xorg.libXrandr
   ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/debootstrap/default.nix b/pkgs/tools/misc/debootstrap/default.nix
index 04b55a6a6b4..2940ff0a573 100644
--- a/pkgs/tools/misc/debootstrap/default.nix
+++ b/pkgs/tools/misc/debootstrap/default.nix
@@ -15,13 +15,13 @@ let binPath = stdenv.lib.makeBinPath [
   ];
 in stdenv.mkDerivation rec {
   pname = "debootstrap";
-  version = "1.0.119";
+  version = "1.0.123";
 
   src = fetchurl {
     # git clone git://git.debian.org/d-i/debootstrap.git
     # I'd like to use the source. However it's lacking the lanny script ? (still true?)
     url = "mirror://debian/pool/main/d/${pname}/${pname}_${version}.tar.gz";
-    sha256 = "1q5kw5mm5cnm97j0iz8hfbmjrpdc3n3pcw7f9as1n6h0xp0bmgp6";
+    sha256 = "0a53dhfwa74vdhqd6kbl7zlm7iic37c6wkdclppf0syxxi3q2njy";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/misc/diffoscope/default.nix b/pkgs/tools/misc/diffoscope/default.nix
index 9273d82455d..0ce0e1be325 100644
--- a/pkgs/tools/misc/diffoscope/default.nix
+++ b/pkgs/tools/misc/diffoscope/default.nix
@@ -9,11 +9,11 @@
 # Note: when upgrading this package, please run the list-missing-tools.sh script as described below!
 python3Packages.buildPythonApplication rec {
   pname = "diffoscope";
-  version = "137";
+  version = "138";
 
   src = fetchurl {
     url    = "https://diffoscope.org/archive/diffoscope-${version}.tar.bz2";
-    sha256 = "1qa508nlqvz0s0cd6jk5c8m43kqfx1h2mgx50iphy4y0spnyv946";
+    sha256 = "171nz5n4dayr7bj04h0x282vdk92kp7lgarnb3x0md91m2i9x997";
   };
 
   patches = [
diff --git a/pkgs/tools/misc/docker-sync/Gemfile.lock b/pkgs/tools/misc/docker-sync/Gemfile.lock
index ff7aa6b3f9f..4f14b77d0ef 100644
--- a/pkgs/tools/misc/docker-sync/Gemfile.lock
+++ b/pkgs/tools/misc/docker-sync/Gemfile.lock
@@ -26,4 +26,4 @@ DEPENDENCIES
   docker-sync!
 
 BUNDLED WITH
-   1.16.2
+   2.1.4
diff --git a/pkgs/tools/misc/docui/default.nix b/pkgs/tools/misc/docui/default.nix
index c8f3dbf8009..0329c1bc4a6 100644
--- a/pkgs/tools/misc/docui/default.nix
+++ b/pkgs/tools/misc/docui/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "docui";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "1wyx05kk4f41mgvwnvfc9xk7vd3x96cbn5xb5ph7p443f70ydnak";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "TUI Client for Docker";
     homepage = "https://github.com/skanehira/docui";
diff --git a/pkgs/tools/misc/dua/default.nix b/pkgs/tools/misc/dua/default.nix
index 0b56b03b9de..2dea0f179a1 100644
--- a/pkgs/tools/misc/dua/default.nix
+++ b/pkgs/tools/misc/dua/default.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "dua";
-  version = "2.3.1";
+  version = "2.5.0";
 
   src = fetchFromGitHub {
     owner = "Byron";
     repo = "dua-cli";
     rev = "v${version}";
-    sha256 = "15pmmjnzjbjlf7np5zf2yahccqx8iw1jlzl3nkhqbs673ns0gjml";
+    sha256 = "1r94fcygp9mmg457dkksx3mjdxfddzfzl6n0rmxasiinsz0hak4c";
     # 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 = "0xqjbhqb08bk40i0rfzfkcl9kp67b8a285ksil4f663nidycmgw3";
+  cargoSha256 = "15a4hari3my59xvmkll2jlvb1jyf8gg8alp91nvh3bagpajpvdx6";
 
   doCheck = false;
 
diff --git a/pkgs/tools/misc/execline/default.nix b/pkgs/tools/misc/execline/default.nix
index fb685e65a4f..d3a6990a1f8 100644
--- a/pkgs/tools/misc/execline/default.nix
+++ b/pkgs/tools/misc/execline/default.nix
@@ -7,8 +7,8 @@ with skawarePackages;
 
 buildPackage {
   pname = "execline";
-  version = "2.5.3.0";
-  sha256 = "0czdrv9m8mnx94nf28dafij6z03k4mbhbs6hccfaardfd5l5q805";
+  version = "2.6.0.0";
+  sha256 = "1m6pvawxqaqjr49456vyjyl8dnqwvr19v77sjj7dnglfijwza5al";
 
   description = "A small scripting language, to be used in place of a shell in non-interactive scripts";
 
@@ -35,15 +35,21 @@ buildPackage {
     mv examples $doc/share/doc/execline/examples
 
     mv $bin/bin/execlineb $bin/bin/.execlineb-wrapped
-    cc \
+
+    # A wrapper around execlineb, which provides all execline
+    # tools on `execlineb`’s PATH.
+    # It is implemented as a C script, because on non-Linux,
+    # nested shebang lines are not supported.
+    # The -lskarnet has to come at the end to support static builds.
+    $CC \
       -O \
       -Wall -Wpedantic \
       -D "EXECLINEB_PATH()=\"$bin/bin/.execlineb-wrapped\"" \
       -D "EXECLINE_BIN_PATH()=\"$bin/bin\"" \
       -I "${skalibs.dev}/include" \
       -L "${skalibs.lib}/lib" \
-      -lskarnet \
       -o "$bin/bin/execlineb" \
-      ${./execlineb-wrapper.c}
+      ${./execlineb-wrapper.c} \
+      -lskarnet
   '';
 }
diff --git a/pkgs/tools/misc/ffsend/default.nix b/pkgs/tools/misc/ffsend/default.nix
index 38619f53715..7a8e56a4d6a 100644
--- a/pkgs/tools/misc/ffsend/default.nix
+++ b/pkgs/tools/misc/ffsend/default.nix
@@ -16,16 +16,16 @@ with rustPlatform;
 
 buildRustPackage rec {
   pname = "ffsend";
-  version = "0.2.58";
+  version = "0.2.59";
 
   src = fetchFromGitLab {
     owner = "timvisee";
     repo = "ffsend";
     rev = "v${version}";
-    sha256 = "0yqigqh5vldzmp7wc1mxi5a4bxzm81xycx5h0ghak74vbjibps49";
+    sha256 = "14a7mb1a1s74hi124v4jscc72m09zq2bd8xrhq5agz9z27plqm2c";
   };
 
-  cargoSha256 = "0m2931fmc8jczjpb08077cpz9klhhf3aq15j2h76sb254qndagzy";
+  cargoSha256 = "1945s3ajpy55fzh5wbl7fchqck0fh69shl18lxni9hvg04smq39i";
 
   nativeBuildInputs = [ cmake pkgconfig installShellFiles ];
   buildInputs = [ openssl ]
diff --git a/pkgs/tools/misc/fluent-bit/default.nix b/pkgs/tools/misc/fluent-bit/default.nix
index ddc5757bdce..0933e6eae90 100644
--- a/pkgs/tools/misc/fluent-bit/default.nix
+++ b/pkgs/tools/misc/fluent-bit/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fluent-bit";
-  version = "1.3.11";
+  version = "1.4.1";
 
   src = fetchFromGitHub {
     owner = "fluent";
     repo = "fluent-bit";
     rev = "v${version}";
-    sha256 = "0s1j5mrih4zzaxhqhrd01cibp53rbdqfxf0ng64yfjqlqdh4dhkk";
+    sha256 = "1xfbghaylzsh48ag4aw77nmzm1cds4nx53m4s1fiy0r31sm8vqwl";
   };
 
   nativeBuildInputs = [ cmake flex bison ];
diff --git a/pkgs/tools/misc/fluentd/Gemfile.lock b/pkgs/tools/misc/fluentd/Gemfile.lock
index e86371aed3b..c3e3cb24e83 100644
--- a/pkgs/tools/misc/fluentd/Gemfile.lock
+++ b/pkgs/tools/misc/fluentd/Gemfile.lock
@@ -129,4 +129,4 @@ DEPENDENCIES
   fluentd
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/misc/fwup/default.nix b/pkgs/tools/misc/fwup/default.nix
index 99dcc194d01..bf6c125ac75 100644
--- a/pkgs/tools/misc/fwup/default.nix
+++ b/pkgs/tools/misc/fwup/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fwup";
-  version = "1.5.1";
+  version = "1.5.2";
 
   src = fetchFromGitHub {
     owner = "fhunleth";
     repo = "fwup";
     rev = "v${version}";
-    sha256 = "08gscwdq7fwfpk3mf7dfdf64n5ijm5kjb7f5wrzzvpnnqz24xnb0";
+    sha256 = "05sjdlh450hk474a44yr6kz9dzx72jfxpi1krxbd0pdizlmfypsg";
   };
 
   doCheck = true;
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Configurable embedded Linux firmware update creator and runner";
-    homepage = https://github.com/fhunleth/fwup;
+    homepage = "https://github.com/fhunleth/fwup";
     license = licenses.asl20;
     maintainers = [ maintainers.georgewhewell ];
     platforms = platforms.all;
diff --git a/pkgs/tools/misc/fzf/default.nix b/pkgs/tools/misc/fzf/default.nix
index d337731888f..d5c75a1e8a7 100644
--- a/pkgs/tools/misc/fzf/default.nix
+++ b/pkgs/tools/misc/fzf/default.nix
@@ -2,13 +2,13 @@
 
 buildGoModule rec {
   pname = "fzf";
-  version = "0.21.0-1";
+  version = "0.21.1";
 
   src = fetchFromGitHub {
     owner = "junegunn";
     repo = pname;
     rev = version;
-    sha256 = "1d4bwcmjirwkkv0m01sx9rxp01iik57iy54zxhdkkz842pxlr2xv";
+    sha256 = "0piz1dzczcw1nsff775zicvpm6iy0iw0v0ba7rj7i0xqv9ni1prw";
   };
 
   modSha256 = "16bb0a9z49jqhh9lmq8rvl7x9vh79mi4ygkb9sm04g41g5z6ag1s";
diff --git a/pkgs/tools/misc/geekbench/default.nix b/pkgs/tools/misc/geekbench/default.nix
index b18ac109382..153a74f9456 100644
--- a/pkgs/tools/misc/geekbench/default.nix
+++ b/pkgs/tools/misc/geekbench/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "geekbench";
-  version = "5.1.0";
+  version = "5.1.1";
 
   src = fetchurl {
     url = "https://cdn.geekbench.com/Geekbench-${version}-Linux.tar.gz";
-    sha256 = "1hqqwk5hbqgrxfqlcbgk6rv3a71k65psxcqa6hw41y9jymnm3dp3";
+    sha256 = "1wjyn3fkc2zgj0xrd73kidrg1d1wqmil278ak36wf87685w4n0b1";
   };
 
   dontConfigure = true;
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Cross-platform benchmark";
-    homepage = https://geekbench.com/;
+    homepage = "https://geekbench.com/";
     license = licenses.unfree;
     maintainers = [ maintainers.michalrus ];
     platforms = [ "x86_64-linux" ];
diff --git a/pkgs/tools/misc/git-town/default.nix b/pkgs/tools/misc/git-town/default.nix
index 5438f71930d..7a8b16c55e0 100644
--- a/pkgs/tools/misc/git-town/default.nix
+++ b/pkgs/tools/misc/git-town/default.nix
@@ -1,25 +1,25 @@
-{ stdenv, buildGoPackage, fetchFromGitHub }: 
+{ stdenv, buildGoPackage, fetchFromGitHub }:
 
-  buildGoPackage rec {
-    pname = "git-town";
-    version = "7.2.0";
+buildGoPackage rec {
+  pname = "git-town";
+  version = "7.3.0";
 
-    goPackagePath = "github.com/Originate/git-town";
+  goPackagePath = "github.com/Originate/git-town";
 
-    src = fetchFromGitHub {
-      owner = "Originate";
-      repo = "git-town";
-      rev = "v${version}";
-      sha256 = "0hr0c6iya34lanfhsg9kj03l4ajalcfxkbn4bgwh0749smhi6mrj";
-    };
+  src = fetchFromGitHub {
+    owner = "Originate";
+    repo = "git-town";
+    rev = "v${version}";
+    sha256 = "166g9i79hqga8k5wvs0b84q6rqniizzsd39v37s9w16axgdrm6nb";
+  };
 
-    buildFlagsArray = [ "-ldflags=-X github.com/Originate/git-town/src/cmd.version=v${version} -X github.com/Originate/git-town/src/cmd.buildDate=nix" ];
+  buildFlagsArray = [ "-ldflags=-X github.com/Originate/git-town/src/cmd.version=v${version} -X github.com/Originate/git-town/src/cmd.buildDate=nix" ];
 
-    meta = with stdenv.lib; {
-      description = "Generic, high-level git support for git-flow workflows";
-      homepage = http://www.git-town.com/;
-      maintainers = [ maintainers.allonsy ];
-      license = licenses.mit;
-    };
-  }
+  meta = with stdenv.lib; {
+    description = "Generic, high-level git support for git-flow workflows";
+    homepage = "http://www.git-town.com/";
+    maintainers = [ maintainers.allonsy ];
+    license = licenses.mit;
+  };
+}
 
diff --git a/pkgs/tools/misc/gotify-cli/default.nix b/pkgs/tools/misc/gotify-cli/default.nix
index 56462aa3d30..a4b9af09712 100644
--- a/pkgs/tools/misc/gotify-cli/default.nix
+++ b/pkgs/tools/misc/gotify-cli/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   pname = "gotify-cli";
@@ -17,9 +17,7 @@ buildGoModule rec {
     mv $out/bin/cli $out/bin/gotify
   '';
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     license = licenses.mit;
     homepage = https://github.com/gotify/cli;
     description = "A command line interface for pushing messages to gotify/server.";
diff --git a/pkgs/tools/misc/graylog/default.nix b/pkgs/tools/misc/graylog/default.nix
index 6ded4f28e9d..49ca39c7d06 100644
--- a/pkgs/tools/misc/graylog/default.nix
+++ b/pkgs/tools/misc/graylog/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "graylog";
-  version = "3.2.2";
+  version = "3.2.4";
 
   src = fetchurl {
     url = "https://packages.graylog2.org/releases/graylog/graylog-${version}.tgz";
-    sha256 = "1n9nwxq0aklihhp0v39klq4za63ks6v5z76dp5821jcv1cbk96g9";
+    sha256 = "0m3g68ycb0yvdpiyd6qysgz0ygz9s0kb98g79cdx9rqpb7x0rmd0";
   };
 
   dontBuild = true;
diff --git a/pkgs/tools/misc/gringo/default.nix b/pkgs/tools/misc/gringo/default.nix
index 705c1a7e1d6..2d1284d6652 100644
--- a/pkgs/tools/misc/gringo/default.nix
+++ b/pkgs/tools/misc/gringo/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
     sha256 = "16k4pkwyr2mh5w8j91vhxh9aff7f4y31npwf09w6f8q63fxvpy41";
   };
 
-  buildInputs = [ bison re2c scons ];
+  buildInputs = [ bison re2c scons.py2 ];
 
   patches = [
     ./gringo-4.5.4-cmath.patch
diff --git a/pkgs/tools/misc/homesick/Gemfile.lock b/pkgs/tools/misc/homesick/Gemfile.lock
index 42ab916db3e..accc917e240 100644
--- a/pkgs/tools/misc/homesick/Gemfile.lock
+++ b/pkgs/tools/misc/homesick/Gemfile.lock
@@ -12,4 +12,4 @@ DEPENDENCIES
   homesick
 
 BUNDLED WITH
-   1.14.6
+   2.1.4
diff --git a/pkgs/tools/misc/html-proofer/Gemfile.lock b/pkgs/tools/misc/html-proofer/Gemfile.lock
index a998ccb3f63..c3ff0fd210f 100644
--- a/pkgs/tools/misc/html-proofer/Gemfile.lock
+++ b/pkgs/tools/misc/html-proofer/Gemfile.lock
@@ -6,7 +6,7 @@ GEM
     ethon (0.12.0)
       ffi (>= 1.3.0)
     ffi (1.12.2)
-    html-proofer (3.15.1)
+    html-proofer (3.15.2)
       addressable (~> 2.3)
       mercenary (~> 0.3)
       nokogumbo (~> 2.0)
@@ -16,7 +16,7 @@ GEM
       yell (~> 2.0)
     mercenary (0.4.0)
     mini_portile2 (2.4.0)
-    nokogiri (1.10.8)
+    nokogiri (1.10.9)
       mini_portile2 (~> 2.4.0)
     nokogumbo (2.0.2)
       nokogiri (~> 1.8, >= 1.8.4)
@@ -34,4 +34,4 @@ DEPENDENCIES
   html-proofer
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/tools/misc/html-proofer/gemset.nix b/pkgs/tools/misc/html-proofer/gemset.nix
index 5ddb6accb94..2e3b3a10b3b 100644
--- a/pkgs/tools/misc/html-proofer/gemset.nix
+++ b/pkgs/tools/misc/html-proofer/gemset.nix
@@ -37,10 +37,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0krd80ga7qcms469l55jbm711a7ph2lmyn88l929nhbxc7sgm81g";
+      sha256 = "1b7wx2hnwnml3y10x6yxybl3hy973n2ifq3hbqh0jd72bqs615wp";
       type = "gem";
     };
-    version = "3.15.1";
+    version = "3.15.2";
   };
   mercenary = {
     groups = ["default"];
@@ -68,10 +68,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1yi8j8hwrlc3rg5v3w52gxndmwifyk7m732q9yfbal0qajqbh1h8";
+      sha256 = "12j76d0bp608932xkzmfi638c7aqah57l437q8494znzbj610qnm";
       type = "gem";
     };
-    version = "1.10.8";
+    version = "1.10.9";
   };
   nokogumbo = {
     dependencies = ["nokogiri"];
diff --git a/pkgs/tools/misc/ipbt/default.nix b/pkgs/tools/misc/ipbt/default.nix
new file mode 100644
index 00000000000..e523dd198d4
--- /dev/null
+++ b/pkgs/tools/misc/ipbt/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, perl, ncurses }:
+
+stdenv.mkDerivation rec {
+  version = "20190601.d1519e0";
+  pname = "ipbt";
+
+  src = fetchurl {
+    url = "https://www.chiark.greenend.org.uk/~sgtatham/ipbt/ipbt-${version}.tar.gz";
+    sha256 = "1aj8pajdd81vq2qw6vzfm27i0aj8vfz9m7k3sda30pnsrizm06d5";
+  };
+
+  nativeBuildInputs = [ perl ];
+  buildInputs = [ ncurses ];
+
+  meta = with stdenv.lib; {
+    description = "A high-tech ttyrec player for Unix";
+    homepage = "https://www.chiark.greenend.org.uk/~sgtatham/ipbt/";
+    license = licenses.mit;
+    maintainers = [ maintainers.tckmn ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/tools/misc/kanshi/default.nix b/pkgs/tools/misc/kanshi/default.nix
index d3e0ba029f3..0cb20315f66 100644
--- a/pkgs/tools/misc/kanshi/default.nix
+++ b/pkgs/tools/misc/kanshi/default.nix
@@ -1,17 +1,17 @@
-{ stdenv, fetchFromGitHub, meson, ninja, pkgconfig, scdoc, wayland }:
+{ stdenv, fetchFromGitHub, meson, ninja, pkg-config, scdoc, wayland }:
 
 stdenv.mkDerivation rec {
   pname = "kanshi";
-  version = "1.0.0";
+  version = "1.1.0";
 
   src = fetchFromGitHub {
     owner = "emersion";
     repo = "kanshi";
     rev = "v${version}";
-    sha256 = "0v50q1s105c2rar6mi1pijm8llsnsp62gv4swd3ddjn5rwallg46";
+    sha256 = "0nbpgm8qnn7ljsg9vgs35kl8l4rrk542vdcbx8wrn9r909ld3x92";
   };
 
-  nativeBuildInputs = [ meson ninja pkgconfig scdoc ];
+  nativeBuildInputs = [ meson ninja pkg-config scdoc ];
   buildInputs = [ wayland ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/kargo/default.nix b/pkgs/tools/misc/kargo/default.nix
index 480c0abc728..bcc19770155 100644
--- a/pkgs/tools/misc/kargo/default.nix
+++ b/pkgs/tools/misc/kargo/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, python2Packages }:
 
 python2Packages.buildPythonApplication rec {
-  version = "0.4.6";
+  version = "0.4.8";
   pname = "kargo";
 
   src = fetchurl {
     url = "mirror://pypi/k/kargo/${pname}-${version}.tar.gz";
-    sha256 = "1sm721c3d4scpc1gj2j3qwssr6jjvw6aq3p7ipvhbd9ywmm9dd7b";
+    sha256 = "1iq3vrmglag9gpsir03yz7556m0bz99nwb2mf594378cqzbr6db3";
   };
 
   doCheck = false;
@@ -25,7 +25,7 @@ python2Packages.buildPythonApplication rec {
   ];
 
   meta = with stdenv.lib; {
-    homepage = https://github.com/kubespray/kargo-cli;
+    homepage = "https://github.com/kubespray/kargo-cli";
     description = "A tool helps to deploy a kubernetes cluster with Ansible.";
     platforms = platforms.linux;
     license = licenses.gpl3;
diff --git a/pkgs/tools/misc/kepubify/default.nix b/pkgs/tools/misc/kepubify/default.nix
index a7b7da451fb..0a8f10fa85d 100644
--- a/pkgs/tools/misc/kepubify/default.nix
+++ b/pkgs/tools/misc/kepubify/default.nix
@@ -1,25 +1,23 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ lib, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   pname = "kepubify";
-  version = "3.1.0";
+  version = "3.1.2";
 
   src = fetchFromGitHub {
     owner = "geek1011";
     repo = pname;
     rev = "v${version}";
-    sha256 = "17zhfq1nfdas4k5yzyr82zs3r3mm4n8f907ih1ckx081hy4g7a2p";
+    sha256 = "13d3fl53v9pqlm555ly1dm9vc58xwkyik0qmsg173q78ysy2p4q5";
   };
 
-  modSha256 = "18q9ywsjc2v1bsmw7307dpd4v5m7v80hbhijkfrkcyqzj34jrq43";
+  modSha256 = "0jz8v4rnwm5zbxxp49kv96wm4lack6prwyhcrqwsrm79dr9yjcxf";
 
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  excludedPackages = [ "kobotest" ];
 
-  subPackages = [ "." "covergen" "seriesmeta" ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "EPUB to KEPUB converter";
     homepage = "https://pgaskin.net/kepubify";
     license = licenses.mit;
diff --git a/pkgs/tools/misc/libgen-cli/default.nix b/pkgs/tools/misc/libgen-cli/default.nix
new file mode 100644
index 00000000000..c34e934fba4
--- /dev/null
+++ b/pkgs/tools/misc/libgen-cli/default.nix
@@ -0,0 +1,30 @@
+{ lib, buildGoModule, fetchFromGitHub }:
+buildGoModule rec {
+  pname = "libgen-cli";
+  version = "1.0.5";
+
+  src = fetchFromGitHub {
+    owner = "ciehanski";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1lfsnyzin2dqhwhz6phms6yipli88sqiw55ls18dfv7bvx30sqlp";
+  };
+
+  modSha256 = "1k16zjb7p65g72hr9vsk38jhpsy1yclm7fjgq47qy6jwjd44w1bi";
+
+  subPackages = [ "." ];
+
+  meta = with lib; {
+    homepage = "https://github.com/ciehanski/libgen-cli";
+    description =
+      "A CLI tool used to access the Library Genesis dataset; written in Go";
+    longDescription = ''
+      libgen-cli is a command line interface application which allows users to
+      quickly query the Library Genesis dataset and download any of its
+      contents.
+    '';
+    license = licenses.asl20;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ zaninime ];
+  };
+}
diff --git a/pkgs/tools/misc/lolcat/Gemfile.lock b/pkgs/tools/misc/lolcat/Gemfile.lock
index ed48cc5921b..e01cf81c61e 100644
--- a/pkgs/tools/misc/lolcat/Gemfile.lock
+++ b/pkgs/tools/misc/lolcat/Gemfile.lock
@@ -16,4 +16,4 @@ DEPENDENCIES
   lolcat
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/misc/lsd/default.nix b/pkgs/tools/misc/lsd/default.nix
index 24006e5cbd9..4e2b3a91a06 100644
--- a/pkgs/tools/misc/lsd/default.nix
+++ b/pkgs/tools/misc/lsd/default.nix
@@ -1,31 +1,31 @@
-{ stdenv, fetchFromGitHub, rustPlatform }:
+{ stdenv
+, fetchFromGitHub
+, rustPlatform
+, installShellFiles
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "lsd";
-  version = "0.16.0";
+  version = "0.17.0";
 
   src = fetchFromGitHub {
     owner = "Peltoche";
     repo = pname;
     rev = version;
-    sha256 = "0fh5rz6slyjzz03bpjcl9gplk36vm7qcc0i0gvhsikwvw0cf3hym";
+    sha256 = "1vyww54fl4yfvszr0dh8ym2jd9gilrccmwkvl7rbx70sfqzsgaai";
   };
 
-  cargoSha256 = "1z7sg9b7qsjw1hhc7dkvxz8xgf4k8jddr7gbnjr4d2569g97jf3f";
+  cargoSha256 = "13g0p6zh2b1z005lszll098d4lv62dzsxwhl76bianzrydif61lr";
 
-  preFixup = ''
-    install -Dm644 -t $out/share/zsh/site-functions/ target/release/build/lsd-*/out/_lsd
-    install -Dm644 -t $out/share/fish/vendor_completions.d/ target/release/build/lsd-*/out/lsd.fish
-    install -Dm644 -t $out/share/bash-completion/completions/ target/release/build/lsd-*/out/lsd.bash
+  nativeBuildInputs = [ installShellFiles ];
+  postInstall = ''
+    installShellCompletion target/release/build/lsd-*/out/{_lsd,lsd.{bash,fish}}
   '';
 
-  # Some tests fail, but Travis ensures a proper build
-  doCheck = false;
-
   meta = with stdenv.lib; {
     homepage = https://github.com/Peltoche/lsd;
     description = "The next gen ls command";
     license = licenses.asl20;
-    maintainers = [ maintainers.marsam ];
+    maintainers = with maintainers; [ filalex77 marsam ];
   };
 }
diff --git a/pkgs/tools/misc/memtest86-efi/default.nix b/pkgs/tools/misc/memtest86-efi/default.nix
index 71409b1c3a8..9f029ee5ded 100644
--- a/pkgs/tools/misc/memtest86-efi/default.nix
+++ b/pkgs/tools/misc/memtest86-efi/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "memtest86-efi";
-  version = "8.2";
+  version = "8.3";
 
   src = fetchzip {
-    # TODO: The latest version of memtest86 is actually 8.2, but the
+    # TODO: We're using the previous version of memtest86 because the
     # company developing memtest86 has stopped providing a versioned download
     # link for the latest version:
     #
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     # binaries that we make sure to version, then we could probably keep up
     # with the latest versions released by the company.
     url = "https://www.memtest86.com/downloads/memtest86-${version}-usb.zip";
-    sha256 = "1x1wjssr4nnbnfan0pi7ni2dfwnm3288kq584hkfqcyza8xdx03i";
+    sha256 = "0aldz7rvnfnzb4h447q10k9c9p5ghwzdyn7f6g5lrxiv5vxf3x96";
     stripRoot = false;
   };
 
diff --git a/pkgs/tools/misc/mimeo/default.nix b/pkgs/tools/misc/mimeo/default.nix
index ea596a94213..64cad47b540 100644
--- a/pkgs/tools/misc/mimeo/default.nix
+++ b/pkgs/tools/misc/mimeo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, desktop-file-utils, file, python3Packages }:
 
 python3Packages.buildPythonApplication rec {
-  name = "mimeo-${version}";
+  pname = "mimeo";
   version = "2019.7";
 
   src = fetchurl {
-    url = "https://xyne.archlinux.ca/projects/mimeo/src/${name}.tar.xz";
+    url = "https://xyne.archlinux.ca/projects/mimeo/src/${pname}-${version}.tar.xz";
     sha256 = "0nzn7qvmpbb17d6q16llnhz1qdmyg718q59ic4gw2rq23cd6q47r";
   };
 
diff --git a/pkgs/tools/misc/mutagen/default.nix b/pkgs/tools/misc/mutagen/default.nix
index c029f38acb2..8940fef2a0d 100644
--- a/pkgs/tools/misc/mutagen/default.nix
+++ b/pkgs/tools/misc/mutagen/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, CoreServices }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "mutagen";
@@ -13,11 +13,9 @@ buildGoModule rec {
 
   modSha256 = "1r6b4y6civk75if6nljl66pgv5qm7x05qqby1anf7s7cz7d1rc3g";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
-
   subPackages = [ "cmd/mutagen" "cmd/mutagen-agent" ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Make remote development work with your local tools";
     homepage = "https://mutagen.io/";
     changelog = "https://github.com/mutagen-io/mutagen/releases/tag/v${version}";
diff --git a/pkgs/tools/misc/page/default.nix b/pkgs/tools/misc/page/default.nix
new file mode 100644
index 00000000000..07109515c5c
--- /dev/null
+++ b/pkgs/tools/misc/page/default.nix
@@ -0,0 +1,32 @@
+{ lib, rustPlatform, fetchFromGitHub, installShellFiles }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "page";
+  version = "2.3.4";
+
+  src = fetchFromGitHub {
+    owner = "I60R";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0xcbnl8fbdfdmcbv5d7v830aa3vfhg7nlf768rbrfd5a0970pllh";
+  };
+
+  nativeBuildInputs = [ installShellFiles ];
+  postInstall = ''
+    completions_dir=$(find "target" -name "shell_completions" -type d -printf "%T+\t%p\n" | sort | awk 'NR==1{print $2}')
+
+    installShellCompletion --bash $completions_dir/page.bash
+    installShellCompletion --fish $completions_dir/page.fish
+    installShellCompletion --zsh $completions_dir/_page
+  '';
+
+  cargoSha256 = "0ckfmqi6jvbvj99vbdp798mmy6gc54254n32br0ri842b04i26qf";
+
+  meta = with lib; {
+    description = "Use neovim as pager";
+    homepage = "https://github.com/I60R/page";
+    license = licenses.mit;
+    platforms = platforms.all;
+    maintainers = [ maintainers.s1341 ];
+  };
+}
diff --git a/pkgs/tools/misc/parallel-rust/default.nix b/pkgs/tools/misc/parallel-rust/default.nix
deleted file mode 100644
index 213e8c8e378..00000000000
--- a/pkgs/tools/misc/parallel-rust/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ stdenv, fetchFromGitHub, rustPlatform }:
-
-rustPlatform.buildRustPackage rec {
-  pname = "parallel-rust";
-  version = "0.11.3";
-
-  src = fetchFromGitHub {
-    owner = "mmstick";
-    repo = "parallel";
-    rev = version;
-    sha256 = "1bb1m3ckkrxlnw9w24ig70bd1zwyrbaw914q3xz5yv43c0l6pn9c";
-  };
-
-  cargoSha256 = "1r5chjhmy6ivhsvgqf75ph1qxa4x7n20f7rb3b6maqpbsc64km9n";
-
-  patches = [ ./fix_cargo_lock_version.patch ];
-
-  meta = with stdenv.lib; {
-    description = "A command-line CPU load balancer written in Rust";
-    homepage = https://github.com/mmstick/parallel;
-    license = licenses.mit;
-    maintainers = [];
-    platforms = platforms.all;
-  };
-}
diff --git a/pkgs/tools/misc/parallel-rust/fix_cargo_lock_version.patch b/pkgs/tools/misc/parallel-rust/fix_cargo_lock_version.patch
deleted file mode 100644
index 75a1ba35e12..00000000000
--- a/pkgs/tools/misc/parallel-rust/fix_cargo_lock_version.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/Cargo.lock b/Cargo.lock
-index c01308d..dba3927 100644
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -1,6 +1,6 @@
- [root]
- name = "parallel"
--version = "0.11.2"
-+version = "0.11.3"
- dependencies = [
-  "arrayvec 0.3.23 (registry+https://github.com/rust-lang/crates.io-index)",
-  "itoa 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
diff --git a/pkgs/tools/misc/parallel/default.nix b/pkgs/tools/misc/parallel/default.nix
index 6c334db1ede..d55b2cd6f24 100644
--- a/pkgs/tools/misc/parallel/default.nix
+++ b/pkgs/tools/misc/parallel/default.nix
@@ -1,13 +1,15 @@
 { fetchurl, stdenv, perl, makeWrapper, procps }:
 
 stdenv.mkDerivation rec {
-  name = "parallel-20200222";
+  name = "parallel-20200322";
 
   src = fetchurl {
     url = "mirror://gnu/parallel/${name}.tar.bz2";
-    sha256 = "077b72h2d191bmsb78fmzcynxj5mi5v3axmwwxz1d1q8xhv756r6";
+    sha256 = "0kg95glnfg25i1w7qg2vr5v4671vigsazmz4qdf223l64khq8x10";
   };
 
+  outputs = [ "out" "man" ];
+
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ perl procps ];
 
@@ -40,6 +42,6 @@ stdenv.mkDerivation rec {
     homepage = "https://www.gnu.org/software/parallel/";
     license = licenses.gpl3Plus;
     platforms = platforms.all;
-    maintainers = with maintainers; [ pSub vrthra ];
+    maintainers = with maintainers; [ pSub vrthra tomberek ];
   };
 }
diff --git a/pkgs/tools/misc/parallel/wrapper.nix b/pkgs/tools/misc/parallel/wrapper.nix
new file mode 100644
index 00000000000..b85dfc56f3d
--- /dev/null
+++ b/pkgs/tools/misc/parallel/wrapper.nix
@@ -0,0 +1,13 @@
+{ parallel, makeWrapper , runCommand
+, perlPackages
+, extraPerlPackages ?
+    with perlPackages; [ DBI DBDPg DBDSQLite DBDCSV TextCSV ]
+}:
+
+runCommand "parallel-full" {
+  nativeBuildInputs = [ makeWrapper ];
+  } ''
+      mkdir -p $out/bin
+      makeWrapper ${parallel}/bin/parallel $out/bin/parallel \
+        --set PERL5LIB "${perlPackages.makeFullPerlPath extraPerlPackages}"
+  ''
diff --git a/pkgs/tools/misc/pdf-parser/default.nix b/pkgs/tools/misc/pdf-parser/default.nix
new file mode 100644
index 00000000000..3fee457f6f5
--- /dev/null
+++ b/pkgs/tools/misc/pdf-parser/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, python3Packages, fetchzip }:
+
+python3Packages.buildPythonApplication {
+  pname = "pdf-parser";
+  version = "0.7.4";
+
+  src = fetchzip {
+    url = "https://didierstevens.com/files/software/pdf-parser_V0_7_4.zip";
+    sha256 = "1j39yww2yl4cav8xgd4zfl5jchbbkvffnrynkamkzvz9dd5np2mh";
+  };
+
+  format = "other";
+
+  installPhase = ''
+    install -Dm555 pdf-parser.py $out/bin/pdf-parser.py
+  '';
+
+  preFixup = ''
+    substituteInPlace $out/bin/pdf-parser.py \
+      --replace '/usr/bin/python' '${python3Packages.python}/bin/python'
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Parse a PDF document";
+    longDescription = ''
+      This tool will parse a PDF document to identify the fundamental elements used in the analyzed file.
+      It will not render a PDF document.
+    '';
+    homepage = "https://blog.didierstevens.com/programs/pdf-tools/";
+    license = licenses.publicDomain;
+    maintainers = [ maintainers.lightdiscord ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/misc/pfetch/default.nix b/pkgs/tools/misc/pfetch/default.nix
index 49867331780..bbecf4656e7 100644
--- a/pkgs/tools/misc/pfetch/default.nix
+++ b/pkgs/tools/misc/pfetch/default.nix
@@ -2,13 +2,13 @@
 
 stdenvNoCC.mkDerivation rec {
   pname = "pfetch";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "dylanaraps";
     repo = "pfetch";
     rev = version;
-    sha256 = "0yg9nlrjnm2404ysm2qp1klpq1wlmyih302kzfqchn6l2sibsm4j";
+    sha256 = "06z0k1naw3k052p2z7241lx92rp5m07zlr0alx8pdm6mkc3c4v8f";
   };
 
   dontBuild = true;
@@ -19,7 +19,7 @@ stdenvNoCC.mkDerivation rec {
 
   meta = with lib; {
     description = "A pretty system information tool written in POSIX sh";
-    homepage = https://github.com/dylanaraps/pfetch;
+    homepage = "https://github.com/dylanaraps/pfetch";
     license = licenses.mit;
     platforms = platforms.all;
     maintainers = with maintainers; [ equirosa ];
diff --git a/pkgs/tools/misc/pgcenter/default.nix b/pkgs/tools/misc/pgcenter/default.nix
index 9eed1aaffd8..7cb810b2fe2 100644
--- a/pkgs/tools/misc/pgcenter/default.nix
+++ b/pkgs/tools/misc/pgcenter/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "pgcenter";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "0kassq52v07zmffs6l066g0d3kfv6wmrh9g5cgk79bmyq13clqjj";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     homepage = https://pgcenter.org/;
     description = "Command-line admin tool for observing and troubleshooting PostgreSQL";
diff --git a/pkgs/tools/misc/pgmetrics/default.nix b/pkgs/tools/misc/pgmetrics/default.nix
index 04e106ca552..b702ffc1703 100644
--- a/pkgs/tools/misc/pgmetrics/default.nix
+++ b/pkgs/tools/misc/pgmetrics/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "pgmetrics";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "0h375zk0ik06g0b5vmi00b1wn5q2c0r137f7qf6l8k8p886x41h6";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/pistol/default.nix b/pkgs/tools/misc/pistol/default.nix
new file mode 100644
index 00000000000..35496ed4766
--- /dev/null
+++ b/pkgs/tools/misc/pistol/default.nix
@@ -0,0 +1,32 @@
+{ stdenv
+, buildGoModule
+, fetchFromGitHub
+, file
+}:
+
+buildGoModule rec {
+  pname = "pistol";
+  version = "0.0.4";
+
+  src = fetchFromGitHub {
+    owner = "doronbehar";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0r2nq1zsm9zxl097qnjgr5lk9jm3jjvpgczpvp1nx7dfnahkx2wf";
+  };
+
+  modSha256 = "0l4rjrvgbb4b3abyvyz9ws0mh78pri0cvncwv91dzgbx796a2nn6";
+
+  subPackages = [ "cmd/pistol" ];
+
+  buildInputs = [
+    file
+  ];
+
+  meta = with stdenv.lib; {
+    description = "General purpose file previewer designed for Ranger, Lf to make scope.sh redundant";
+    homepage = "https://github.com/doronbehar/pistol";
+    license = licenses.mit;
+    maintainers = with maintainers; [ doronbehar ];
+  };
+}
diff --git a/pkgs/tools/misc/plantuml/default.nix b/pkgs/tools/misc/plantuml/default.nix
index 0e9df5350f9..fec1bee160f 100644
--- a/pkgs/tools/misc/plantuml/default.nix
+++ b/pkgs/tools/misc/plantuml/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, makeWrapper, jre, graphviz }:
 
 stdenv.mkDerivation rec {
-  version = "1.2020.2";
+  version = "1.2020.5";
   pname = "plantuml";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/plantuml/${version}/plantuml.${version}.jar";
-    sha256 = "1wvlhy76h1bxwjj8r48ixypch1bj9m9721rbawayj8v0hpyr1an4";
+    sha256 = "1cn1bjah9qvhh3hixa92v804crkgz69mg30k8229a551x3alykhd";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/misc/pspg/default.nix b/pkgs/tools/misc/pspg/default.nix
index 4cf98ef8b48..1bd2fc259ee 100644
--- a/pkgs/tools/misc/pspg/default.nix
+++ b/pkgs/tools/misc/pspg/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "pspg";
-  version = "2.6.6";
+  version = "2.7.1";
 
   src = fetchFromGitHub {
     owner = "okbob";
     repo = pname;
     rev = version;
-    sha256 = "0l20ysr61y99zxvm8cqsgj7arv4m7h7gqq8lrq65bmh9fxncfpsd";
+    sha256 = "1fq8n5naicfv0lsyzfb52c84w40zrsks0x9rrvyyzih4vkhic4vm";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/misc/pws/Gemfile.lock b/pkgs/tools/misc/pws/Gemfile.lock
index c9cf6a3157c..cad7909e406 100644
--- a/pkgs/tools/misc/pws/Gemfile.lock
+++ b/pkgs/tools/misc/pws/Gemfile.lock
@@ -16,4 +16,4 @@ DEPENDENCIES
   pws
 
 BUNDLED WITH
-   1.11.2
+   2.1.4
diff --git a/pkgs/tools/misc/riemann-tools/Gemfile.lock b/pkgs/tools/misc/riemann-tools/Gemfile.lock
index 881b8aefcdf..a3e1ea62a8c 100644
--- a/pkgs/tools/misc/riemann-tools/Gemfile.lock
+++ b/pkgs/tools/misc/riemann-tools/Gemfile.lock
@@ -22,4 +22,4 @@ DEPENDENCIES
   riemann-tools
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/misc/rmtrash/default.nix b/pkgs/tools/misc/rmtrash/default.nix
new file mode 100644
index 00000000000..073871b0f43
--- /dev/null
+++ b/pkgs/tools/misc/rmtrash/default.nix
@@ -0,0 +1,39 @@
+{ lib, stdenv, fetchFromGitHub, makeWrapper
+, trash-cli, coreutils, which, getopt }:
+
+stdenv.mkDerivation rec {
+  pname = "rmtrash";
+  version = "1.13";
+
+  src = fetchFromGitHub {
+    owner = "PhrozenByte";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "04a9c65wnkq1fj8qhdsdbps88xjbp7rn6p27y25v47kaysvrw01j";
+  };
+
+  dontConfigure = true;
+  dontBuild = true;
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    for f in rm{,dir}trash; do
+      install -D ./$f $out/bin/$f
+      wrapProgram $out/bin/$f \
+        --prefix PATH : ${lib.makeBinPath [ trash-cli coreutils which getopt ]}
+    done
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/PhrozenByte/rmtrash";
+    description = "trash-put made compatible with GNUs rm and rmdir";
+    longDescription = ''
+      Put files (and directories) in trash using the `trash-put` command in a
+      way that is, otherwise as `trash-put` itself, compatible to GNUs `rm`
+      and `rmdir`.
+    '';
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ peelz ];
+  };
+}
diff --git a/pkgs/tools/misc/rockbox-utility/default.nix b/pkgs/tools/misc/rockbox-utility/default.nix
index 232949b7dac..06a6c27d7c5 100644
--- a/pkgs/tools/misc/rockbox-utility/default.nix
+++ b/pkgs/tools/misc/rockbox-utility/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig, libusb1
 , qtbase, qttools, makeWrapper, qmake
-, withEspeak ? false, espeak ? null }:
+, withEspeak ? false, espeak ? null, qt5 }:
 
 let inherit (stdenv.lib) getDev; in
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation  rec {
 
   buildInputs = [ libusb1 qtbase qttools ]
     ++ stdenv.lib.optional withEspeak espeak;
-  nativeBuildInputs = [ makeWrapper pkgconfig qmake ];
+  nativeBuildInputs = [ makeWrapper pkgconfig qmake qt5.wrapQtAppsHook ];
 
   postPatch = ''
     sed -i rbutil/rbutilqt/rbutilqt.pro \
diff --git a/pkgs/tools/misc/rpm-ostree/default.nix b/pkgs/tools/misc/rpm-ostree/default.nix
index 79003ff1ecf..41e59162905 100644
--- a/pkgs/tools/misc/rpm-ostree/default.nix
+++ b/pkgs/tools/misc/rpm-ostree/default.nix
@@ -83,11 +83,13 @@ stdenv.mkDerivation rec {
     pcre
     check
     python
-    # libdnf
+
+    # libdnf # vendored unstable branch
+    # required by vendored libdnf
     json_c
     zchunk
     libmodulemd_1
-    utillinux
+    utillinux # for smartcols.pc
     sqlite
     cppunit
   ];
diff --git a/pkgs/tools/misc/s6-portable-utils/default.nix b/pkgs/tools/misc/s6-portable-utils/default.nix
index 18813531033..bc32489c588 100644
--- a/pkgs/tools/misc/s6-portable-utils/default.nix
+++ b/pkgs/tools/misc/s6-portable-utils/default.nix
@@ -7,8 +7,8 @@ let
 
 in buildPackage {
   pname = pname;
-  version = "2.2.2.1";
-  sha256 = "074kizkxjwvmxspxg69fr8r0lbiy61l2n5nzgbfvwvhc6lj34iqy";
+  version = "2.2.2.2";
+  sha256 = "1k3la37q46n93vjwk9wm9ym4w87z6lqzv43f03qd0vqj9k94mpv3";
 
   description = "A set of tiny general Unix utilities optimized for simplicity and small size";
 
diff --git a/pkgs/tools/misc/shadowenv/default.nix b/pkgs/tools/misc/shadowenv/default.nix
index 71cb3d23beb..a464ea638bd 100644
--- a/pkgs/tools/misc/shadowenv/default.nix
+++ b/pkgs/tools/misc/shadowenv/default.nix
@@ -1,20 +1,27 @@
-{ stdenv, fetchFromGitHub, rustPlatform, Security }:
+{ stdenv, fetchFromGitHub, rustPlatform, installShellFiles, Security }:
 
 rustPlatform.buildRustPackage rec {
   pname = "shadowenv";
-  version = "1.3.1";
+  version = "2.0.0";
 
   src = fetchFromGitHub {
     owner = "Shopify";
     repo = pname;
     rev = version;
-    sha256 = "1s59ra99wcyyqz8gzly4qmcq5rh22c50c75cdi2kyajm7ghgryy9";
+    sha256 = "1fjqm4qr85wb0i3vazp0w74izfzvkycdii7dlpdp5zs8jgb35pdh";
   };
 
-  cargoSha256 = "1nqzg5jnwvf6wiihi3wwrym3d6g0hsfaxcadhl95r3v4k35fn5qb";
+  cargoSha256 = "1n8qh730nhdmpm08mm2ppcl3nkcgm50cyz9q5h6dlzq4bv4rijp4";
+
+  nativeBuildInputs = [ installShellFiles ];
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
 
+  postInstall = ''
+    installManPage man/man1/shadowenv.1
+    installManPage man/man5/shadowlisp.5
+  '';
+
   meta = with stdenv.lib; {
     homepage = "https://shopify.github.io/shadowenv/";
     description = "reversible directory-local environment variable manipulations";
diff --git a/pkgs/tools/misc/skim/default.nix b/pkgs/tools/misc/skim/default.nix
index 1472b4ae72f..fca2d35e37c 100644
--- a/pkgs/tools/misc/skim/default.nix
+++ b/pkgs/tools/misc/skim/default.nix
@@ -1,21 +1,29 @@
-{ stdenv, fetchFromGitHub, rustPlatform }:
+{ stdenv, fetchFromGitHub, rustPlatform, fetchpatch }:
 
 rustPlatform.buildRustPackage rec {
   pname = "skim";
-  version = "0.8.0";
+  version = "0.8.1";
 
   src = fetchFromGitHub {
     owner = "lotabout";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0b0x389khdqyzdb6mwbf31wdfn8xila756hb11l555iwipl271ci";
+    sha256 = "0xjb8slrlkrzdqvzmf63lq6rgggrjw3hf9an6h8xf6vizz1vfni0";
   };
 
   outputs = [ "out" "vim" ];
 
-  cargoSha256 = "0xcsj8wprp9r6s7r2d2fnbicrc5pfnnx1gxyrq2qkj3rwr1q8ndg";
+  cargoSha256 = "14p4ppbl2mak21jvxpbd1b28jaw2629bc8kv7875cdzy3ksxyji3";
 
-  patchPhase = ''
+  patches = [
+    # Fix bash completion. Remove with the next release
+    (fetchpatch {
+      url = "https://github.com/lotabout/skim/commit/60ca3484090c2e73a1de396500c73a6ad6e0bde9.patch";
+      sha256 = "07nibr13vmxscbwavrckhcbsvxwkpan4a6ml0qfr1ny36xbc6y3p";
+    })
+  ];
+
+  postPatch = ''
     sed -i -e "s|expand('<sfile>:h:h')|'$out'|" plugin/skim.vim
   '';
 
diff --git a/pkgs/tools/misc/starship/default.nix b/pkgs/tools/misc/starship/default.nix
index 9d1fcb89789..01aec4aabb7 100644
--- a/pkgs/tools/misc/starship/default.nix
+++ b/pkgs/tools/misc/starship/default.nix
@@ -1,25 +1,28 @@
-{ stdenv, fetchFromGitHub, rustPlatform
+{ stdenv, fetchFromGitHub, rustPlatform, pkg-config, openssl
 , libiconv, Security }:
 
 rustPlatform.buildRustPackage rec {
   pname = "starship";
-  version = "0.37.0";
+  version = "0.39.0";
 
   src = fetchFromGitHub {
     owner = "starship";
     repo = pname;
     rev = "v${version}";
-    sha256 = "17jgb8fp6zarsnl1hm2y24h0xb0w2w6m61k8g3ww3r4fm8yj649v";
+    sha256 = "13phic9898wjc4b000nkwhy24yczn3dyhw8pqcaqhyzxdaj3gwmw";
   };
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ libiconv Security ];
+  nativeBuildInputs = stdenv.lib.optionals stdenv.isLinux [ pkg-config ];
+
+  buildInputs = stdenv.lib.optionals stdenv.isLinux [ openssl ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ libiconv Security ];
 
   postPatch = ''
     substituteInPlace src/utils.rs \
       --replace "/bin/echo" "echo"
   '';
 
-  cargoSha256 = "01qzwk3q1f6pmyqsq5gnczdjm3157ja2zlrahw5bd5vmy929l5gq";
+  cargoSha256 = "0ds19sjy0fd7psmqkw64scjf3ysi408i7c1qk9zvqkl4ghz8wymg";
   checkPhase = "cargo test -- --skip directory::home_directory --skip directory::directory_in_root";
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/t/Gemfile.lock b/pkgs/tools/misc/t/Gemfile.lock
index 0aa9ef4e6da..9555e08f971 100644
--- a/pkgs/tools/misc/t/Gemfile.lock
+++ b/pkgs/tools/misc/t/Gemfile.lock
@@ -62,4 +62,4 @@ DEPENDENCIES
   twitter (~> 6.1.0)
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/misc/td/Gemfile.lock b/pkgs/tools/misc/td/Gemfile.lock
index 5726611b9af..b777a8b411a 100644
--- a/pkgs/tools/misc/td/Gemfile.lock
+++ b/pkgs/tools/misc/td/Gemfile.lock
@@ -37,4 +37,4 @@ DEPENDENCIES
   td
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/tools/misc/teamocil/Gemfile.lock b/pkgs/tools/misc/teamocil/Gemfile.lock
index 419c2ae49d3..aeca8cadf86 100644
--- a/pkgs/tools/misc/teamocil/Gemfile.lock
+++ b/pkgs/tools/misc/teamocil/Gemfile.lock
@@ -10,4 +10,4 @@ DEPENDENCIES
   teamocil
 
 BUNDLED WITH
-   1.16.3
+   2.1.4
diff --git a/pkgs/tools/misc/tensorman/default.nix b/pkgs/tools/misc/tensorman/default.nix
index eca80cbcadf..85091a41b12 100644
--- a/pkgs/tools/misc/tensorman/default.nix
+++ b/pkgs/tools/misc/tensorman/default.nix
@@ -11,7 +11,8 @@ rustPlatform.buildRustPackage rec {
     sha256 = "0ywb53snvymmwh10hm6whckz7dwmpqa4rxiggd24y178jdfrm2ns";
   };
 
-  buildInputs = [ pkgconfig openssl ];
+  nativeBuildInputs = [ pkgconfig ];
+  buildInputs = [ openssl ];
   cargoSha256 = "0vckay4jhg02xg68mvh7ys0yjj0p30m6wsjriqc8k24wjsrhiw9k";
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/thinkpad-scripts/default.nix b/pkgs/tools/misc/thinkpad-scripts/default.nix
new file mode 100644
index 00000000000..5b9b9eae7ad
--- /dev/null
+++ b/pkgs/tools/misc/thinkpad-scripts/default.nix
@@ -0,0 +1,22 @@
+{ lib, buildPythonPackage, fetchFromGitHub, python3Packages }:
+
+buildPythonPackage rec {
+  pname = "thinkpad-scripts";
+  version = "4.12.0";
+
+  src = fetchFromGitHub {
+    owner = "martin-ueding";
+    repo = "thinkpad-scripts";
+    rev = "v${version}";
+    sha256 = "08adx8r5pwwazbnfahay42l5f203mmvcn2ipz5hg8myqc9jxm2ky";
+  };
+
+  propagatedBuildInputs = with python3Packages; [ setuptools ];
+
+  meta = {
+    description = "Screen rotation, docking and other scripts for ThinkPad® X220 and X230 Tablet";
+    homepage = "https://github.com/martin-ueding/thinkpad-scripts";
+    license = lib.licenses.gpl2Plus;
+    maintainers = with lib.maintainers; [ dawidsowa ];
+  };
+}
diff --git a/pkgs/tools/misc/timidity/default.nix b/pkgs/tools/misc/timidity/default.nix
index c307c96199f..88c3c7cb425 100644
--- a/pkgs/tools/misc/timidity/default.nix
+++ b/pkgs/tools/misc/timidity/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation {
     sha256 = "1xf8n6dqzvi6nr2asags12ijbj1lwk1hgl3s27vm2szib8ww07qn";
   };
 
+  patches = [ ./timidity-iA-Oj.patch ];
+
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ alsaLib libjack2 ncurses ];
 
diff --git a/pkgs/tools/misc/timidity/timidity-iA-Oj.patch b/pkgs/tools/misc/timidity/timidity-iA-Oj.patch
new file mode 100644
index 00000000000..9bb96413428
--- /dev/null
+++ b/pkgs/tools/misc/timidity/timidity-iA-Oj.patch
@@ -0,0 +1,14 @@
+Without this timidity -iA -Oj prints "Couldn't start JACK device (`j')"
+and does not play MIDI.
+
+--- a/timidity/jack_a.c
++++ b/timidity/jack_a.c
+@@ -513,6 +513,8 @@ static int actl_jack(int request, void *arg)
+ 		ringbuf_clear(&ctx->rbuf);
+ 		return 0;
+ 
++	case PM_REQ_PLAY_START:
++		return 0;
+ 	}
+ 	return -1;
+ }
diff --git a/pkgs/tools/misc/topgrade/default.nix b/pkgs/tools/misc/topgrade/default.nix
index db1938160b3..39882b4e6e6 100644
--- a/pkgs/tools/misc/topgrade/default.nix
+++ b/pkgs/tools/misc/topgrade/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "topgrade";
-  version = "4.2.0";
+  version = "4.3.1";
 
   src = fetchFromGitHub {
     owner = "r-darwish";
     repo = pname;
     rev = "v${version}";
-    sha256 = "02rcgz1sklll0gpxjwb7y3jc6flzr4492qp72blra6a26qpb7vxp";
+    sha256 = "0r42hrhd33kkkvii9h4896cmr319q728pdnhhamkhzgilvzxrwrz";
   };
 
-  cargoSha256 = "1kd4q2ddm5byf62xj923n140k9x89yf9yswwgsnvkbpvrnpl4mwj";
+  cargoSha256 = "041djz3w7qmr19xq4cxgpw0m4qz2368q2wijw5aidvrxqlcz7xg2";
 
   buildInputs = lib.optional stdenv.isDarwin Foundation;
 
diff --git a/pkgs/tools/misc/trash-cli/default.nix b/pkgs/tools/misc/trash-cli/default.nix
index ac8feaef275..7fcd3176c7e 100644
--- a/pkgs/tools/misc/trash-cli/default.nix
+++ b/pkgs/tools/misc/trash-cli/default.nix
@@ -2,9 +2,8 @@
 , python3Packages, substituteAll }:
 
 python3Packages.buildPythonApplication rec {
-  name = "trash-cli-${version}";
+  pname = "trash-cli";
   version = "0.17.1.14";
-  namePrefix = "";
 
   src = fetchFromGitHub {
     owner = "andreafrancia";
diff --git a/pkgs/tools/misc/uhubctl/default.nix b/pkgs/tools/misc/uhubctl/default.nix
index a6fe1853ae5..0ed5d97ad7b 100644
--- a/pkgs/tools/misc/uhubctl/default.nix
+++ b/pkgs/tools/misc/uhubctl/default.nix
@@ -1,6 +1,6 @@
 { stdenv
 , fetchFromGitHub
-, libusb
+, libusb1
 }:
 
 stdenv.mkDerivation rec {
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     sha256 = "1cgmwsf68g49k6q4jvz073bpjhg5p73kk1a4kbgkxmvx01gmbcmq";
   };
 
-  buildInputs = [ libusb ];
+  buildInputs = [ libusb1 ];
 
   installFlags = [ "prefix=${placeholder "out"}" ];
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/unicode/default.nix b/pkgs/tools/misc/unicode/default.nix
index 9ace1f137b8..94289f0d9b7 100644
--- a/pkgs/tools/misc/unicode/default.nix
+++ b/pkgs/tools/misc/unicode/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, fetchurl, python3Packages }:
 
 python3Packages.buildPythonApplication rec {
-  name = "unicode-${version}";
+  pname = "unicode";
   version = "2.6";
 
   src = fetchFromGitHub {
diff --git a/pkgs/tools/misc/uutils-coreutils/default.nix b/pkgs/tools/misc/uutils-coreutils/default.nix
index 9c58785e84e..09c29a0af1f 100644
--- a/pkgs/tools/misc/uutils-coreutils/default.nix
+++ b/pkgs/tools/misc/uutils-coreutils/default.nix
@@ -20,8 +20,8 @@ rustPlatform.buildRustPackage {
     [ "CARGO=${cargo}/bin/cargo" "PREFIX=$(out)" "PROFILE=release" "INSTALLDIR_MAN=$(out)/share/man/man1" ]
     ++ lib.optional (prefix != null) [ "PROG_PREFIX=${prefix}" ];
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ cargo sphinx ] ++ lib.optional stdenv.isDarwin Security;
+  nativeBuildInputs = [ cmake cargo sphinx ];
+  buildInputs = lib.optional stdenv.isDarwin Security;
 
   # empty {build,install}Phase to use defaults of `stdenv.mkDerivation` rather than rust defaults
   buildPhase = "";
diff --git a/pkgs/tools/misc/vdirsyncer/default.nix b/pkgs/tools/misc/vdirsyncer/default.nix
index 52eec555b16..3ee7787a8a4 100644
--- a/pkgs/tools/misc/vdirsyncer/default.nix
+++ b/pkgs/tools/misc/vdirsyncer/default.nix
@@ -20,7 +20,8 @@ python3Packages.buildPythonApplication rec {
     inherit src;
     sourceRoot = "source/rust";
     cargoSha256 = "0cqy0s55pkg6hww86h7qip4xaidh6g8lcypdj84n2x374jq38c5d";
-    buildInputs = [ pkgconfig openssl ] ++ stdenv.lib.optionals stdenv.isDarwin [ CoreServices Security ];
+    nativeBuildInputs = [ pkgconfig ];
+    buildInputs = [ openssl ] ++ stdenv.lib.optionals stdenv.isDarwin [ CoreServices Security ];
   };
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/pkgs/tools/misc/vector/default.nix b/pkgs/tools/misc/vector/default.nix
index 17e764698d5..c441242885e 100644
--- a/pkgs/tools/misc/vector/default.nix
+++ b/pkgs/tools/misc/vector/default.nix
@@ -21,7 +21,8 @@ rustPlatform.buildRustPackage rec {
   };
 
   cargoSha256 = "1al8jzjxjhxwb5n1d52pvl59d11g0bdg2dcw8ir2nclya1w68f2w";
-  buildInputs = [ openssl pkg-config protobuf rdkafka ]
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ openssl protobuf rdkafka ]
                 ++ stdenv.lib.optional stdenv.isDarwin [ Security libiconv ];
 
   # needed for internal protobuf c wrapper library
diff --git a/pkgs/tools/misc/vimwiki-markdown/default.nix b/pkgs/tools/misc/vimwiki-markdown/default.nix
index 241da2acbb4..b85bb087660 100644
--- a/pkgs/tools/misc/vimwiki-markdown/default.nix
+++ b/pkgs/tools/misc/vimwiki-markdown/default.nix
@@ -6,12 +6,12 @@
 }:
 
 buildPythonApplication rec {
-  version = "0.2.0";
+  version = "0.3.0";
   pname = "vimwiki-markdown";
 
   src = fetchPypi {
     inherit version pname;
-    sha256 = "0k7srlglhq4bm85kgd5ismslrk1fk8v16mm41a8k0kmcr9k4vi4a";
+    sha256 = "1icfnc623f9pyn59wgb76g0fnsx41s87q69x354qy17gw23bxabx";
   };
 
   propagatedBuildInputs= [
@@ -21,7 +21,7 @@ buildPythonApplication rec {
 
   meta = with stdenv.lib; {
     description = "Vimwiki markdown plugin";
-    homepage = https://github.com/WnP/vimwiki_markdown;
+    homepage = "https://github.com/WnP/vimwiki_markdown";
     license = licenses.mit;
     maintainers = with maintainers; [ seqizz ];
   };
diff --git a/pkgs/tools/misc/wev/default.nix b/pkgs/tools/misc/wev/default.nix
index fa69cc4445e..0f033d1c7e2 100644
--- a/pkgs/tools/misc/wev/default.nix
+++ b/pkgs/tools/misc/wev/default.nix
@@ -1,22 +1,19 @@
 { stdenv, fetchurl
-, pkg-config, scdoc
-, wayland, wayland-protocols, libxkbcommon
+, pkg-config, scdoc, wayland
+, wayland-protocols, libxkbcommon
 }:
 
-let
-  version = "2019-08-11";
-  commit = "47d17393473be152cf601272faf5704fff1c3f92";
-in stdenv.mkDerivation {
-  pname = "wev-unstable";
-  inherit version;
+stdenv.mkDerivation rec {
+  pname = "wev";
+  version = "1.0.0";
 
   src = fetchurl {
-    url = "https://git.sr.ht/~sircmpwn/wev/archive/${commit}.tar.gz";
-    sha256 = "0a5kvrviz77bf7357gqs2iy7a1bvb3izgkmiv1rdxzzmihd563ga";
+    url = "https://git.sr.ht/~sircmpwn/wev/archive/${version}.tar.gz";
+    sha256 = "0vlxdkb59v6nb10j28gh1a56sx8jk7ak7liwzv911kpmygnls03g";
   };
 
-  nativeBuildInputs = [ pkg-config scdoc ];
-  buildInputs = [ wayland wayland-protocols libxkbcommon ];
+  nativeBuildInputs = [ pkg-config scdoc wayland ];
+  buildInputs = [ wayland-protocols libxkbcommon ];
 
   installFlags = [ "PREFIX=$(out)" ];
 
@@ -26,7 +23,7 @@ in stdenv.mkDerivation {
       This is a tool for debugging events on a Wayland window, analagous to the
       X11 tool xev.
     '';
-    homepage = https://git.sr.ht/~sircmpwn/wev;
+    homepage = "https://git.sr.ht/~sircmpwn/wev";
     license = licenses.mit;
     platforms = platforms.unix;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/tools/misc/wootility/default.nix b/pkgs/tools/misc/wootility/default.nix
index e88322f7f75..c621e5ae2c2 100644
--- a/pkgs/tools/misc/wootility/default.nix
+++ b/pkgs/tools/misc/wootility/default.nix
@@ -2,14 +2,14 @@
 
 let
   pname = "wootility";
-  version = "3.3.3";
+  version = "3.4.6";
 in
 appimageTools.wrapType2 rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://s3.eu-west-2.amazonaws.com/wooting-update/wootility-linux-latest/wootility-${version}.AppImage";
-    sha256 = "1qdiacwnvqahqkrhwnblz0jjywn63c6ndl3z450myhx5x55fdcja";
+    sha256 = "02ivbgnzr657iqb9hviaylmsym2kki2c84xmqfix3b0awsphn05q";
   };
 
   profile = ''
diff --git a/pkgs/tools/misc/x11idle/default.nix b/pkgs/tools/misc/x11idle/default.nix
index 270b39f8110..ac13f41ef9f 100644
--- a/pkgs/tools/misc/x11idle/default.nix
+++ b/pkgs/tools/misc/x11idle/default.nix
@@ -1,12 +1,13 @@
-{ stdenv, fetchgit, libXScrnSaver, libX11 }:
+{ stdenv, fetchurl, libXScrnSaver, libX11 }:
 
-stdenv.mkDerivation {
-  name = "x11idle-unstable-2017-07-01";
+stdenv.mkDerivation rec {
 
-  src = fetchgit {
-    url = "git://orgmode.org/org-mode.git";
-    rev = "fbd865941f3105f689f78bf053bb3b353b9b8a23";
-    sha256 = "0ma3m48f4s38xln0gl1ww9i5x28ij0ipxc94kx5h2931zy7lqzvz";
+  version = "9.2.4";
+  name = "x11idle-org-${version}";
+
+  src = fetchurl {
+    url = "https://code.orgmode.org/bzg/org-mode/raw/release_${version}/contrib/scripts/x11idle.c";
+    sha256 = "0fc5g57xd6bmghyl214gcff0ni3idv33i3gkr339kgn1mdjljv5g";
   };
 
   buildInputs = [ libXScrnSaver libX11 ];
@@ -15,7 +16,7 @@ stdenv.mkDerivation {
 
   installPhase = ''
     mkdir -p $out/bin
-    gcc -lXss -lX11 $src/contrib/scripts/x11idle.c -o $out/bin/x11idle
+    gcc -lXss -lX11 $src -o $out/bin/x11idle
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/yad/default.nix b/pkgs/tools/misc/yad/default.nix
index d6b1b423ae2..d00d737c17c 100644
--- a/pkgs/tools/misc/yad/default.nix
+++ b/pkgs/tools/misc/yad/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "yad";
-  version = "5.0";
+  version = "6.0";
 
   src = fetchFromGitHub {
     owner = "v1cont";
     repo = "yad";
     rev = "v${version}";
-    sha256 = "07rd61hvilsxxrj7lf8c9k0a8glj07s48m7ya8d45030r90g3lvc";
+    sha256 = "07myjv0g0iwgclc6q9wkj25myhlc86ahy2lqma8vgv9i3rgy03p7";
   };
 
   configureFlags = [
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://sourceforge.net/projects/yad-dialog/;
+    homepage = "https://sourceforge.net/projects/yad-dialog/";
     description = "GUI dialog tool for shell scripts";
     longDescription = ''
       Yad (yet another dialog) is a GUI dialog tool for shell scripts. It is a
diff --git a/pkgs/tools/misc/you-get/default.nix b/pkgs/tools/misc/you-get/default.nix
index ab1a3e66825..74599dc7d1e 100644
--- a/pkgs/tools/misc/you-get/default.nix
+++ b/pkgs/tools/misc/you-get/default.nix
@@ -2,7 +2,7 @@
 
 buildPythonApplication rec {
   pname = "you-get";
-  version = "0.4.1410";
+  version = "0.4.1432";
 
   # Tests aren't packaged, but they all hit the real network so
   # probably aren't suitable for a build environment anyway.
@@ -10,7 +10,7 @@ buildPythonApplication rec {
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0isjmx1z5w3m2v25sb7fpi7lyd4h8bl9n9691ylvl5w3bxf6ynm9";
+    sha256 = "0i3gsl7wk1cn8jw79gnyv58mrrn0hmkvymrd3ic67z2ackp726s2";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index 2f875e01f3f..7b58ccfa853 100644
--- a/pkgs/tools/misc/youtube-dl/default.nix
+++ b/pkgs/tools/misc/youtube-dl/default.nix
@@ -10,7 +10,7 @@
 , rtmpSupport ? true
 , phantomjsSupport ? false
 , hlsEncryptedSupport ? true
-, makeWrapper }:
+, installShellFiles, makeWrapper }:
 
 buildPythonPackage rec {
 
@@ -18,14 +18,14 @@ buildPythonPackage rec {
   # The websites youtube-dl deals with are a very moving target. That means that
   # downloads break constantly. Because of that, updates should always be backported
   # to the latest stable release.
-  version = "2020.03.08";
+  version = "2020.03.24";
 
   src = fetchurl {
     url = "https://yt-dl.org/downloads/${version}/${pname}-${version}.tar.gz";
-    sha256 = "1xbka14wnalcqkhibfcqw8f5bw1m9b1f44719yifv1jk0614q4bn";
+    sha256 = "05l4asakakxn53wrvxn6c03fd80zdizdbj6r2cj8c1ja3sj9i8s5";
   };
 
-  nativeBuildInputs = [ makeWrapper ];
+  nativeBuildInputs = [ installShellFiles makeWrapper ];
   buildInputs = [ zip ] ++ lib.optional generateManPage pandoc;
   propagatedBuildInputs = lib.optional hlsEncryptedSupport pycryptodome;
 
@@ -46,8 +46,7 @@ buildPythonPackage rec {
   ];
 
   postInstall = ''
-    mkdir -p $out/share/zsh/site-functions
-    cp youtube-dl.zsh $out/share/zsh/site-functions/_youtube-dl
+    installShellCompletion youtube-dl.zsh
   '';
 
   # Requires network
diff --git a/pkgs/tools/misc/zoxide/default.nix b/pkgs/tools/misc/zoxide/default.nix
index 9502af65201..a43d41637b1 100644
--- a/pkgs/tools/misc/zoxide/default.nix
+++ b/pkgs/tools/misc/zoxide/default.nix
@@ -1,23 +1,27 @@
-{ stdenv, fetchFromGitHub, rustPlatform, fzf }:
+{ lib
+, fetchFromGitHub
+, rustPlatform
+, fzf
+}:
 
 rustPlatform.buildRustPackage rec {
   pname = "zoxide";
-  version = "0.2.2";
+  version = "0.3.1";
 
   src = fetchFromGitHub {
     owner = "ajeetdsouza";
     repo = "zoxide";
     rev = "v${version}";
-    sha256 = "0s6aax6bln9jmmv7kw630mj0l6qpvdx8mdk3a5d9akr9d23zxmr5";
+    sha256 = "1sad18d0pxfdy9gvjmixzgdskg1l7djvzp0aipx7pz0lyi6gs23z";
   };
 
   buildInputs = [
     fzf
   ];
 
-  cargoSha256 = "1gzpkf7phl5xd666l7pc25917x4qq0kkxk4i9dkz3lvxz3v8ylrz";
+  cargoSha256 = "1sx3s1jnfxylbjr3x6v6j8a6zkl7hfyj4alzlyrsw36b1b64pwqm";
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A fast cd command that learns your habits";
     homepage = "https://github.com/ajeetdsouza/zoxide";
     license = with licenses; [ mit ];
diff --git a/pkgs/tools/networking/amass/default.nix b/pkgs/tools/networking/amass/default.nix
index 348104e9591..93b2aba5dbf 100644
--- a/pkgs/tools/networking/amass/default.nix
+++ b/pkgs/tools/networking/amass/default.nix
@@ -6,16 +6,16 @@
 
 buildGoModule rec {
   pname = "amass";
-  version = "3.5.1";
+  version = "3.5.4";
 
   src = fetchFromGitHub {
     owner = "OWASP";
     repo = "Amass";
     rev = "v${version}";
-    sha256 = "1lir0j6av5zl1jb3513cf7mlrydgnsvy0chn5ihg1fvbdiv5lww9";
+    sha256 = "0sxcyrlgqajmlsicr4j2b8hq2fzw8ai1xsq176bz0f33q9m9wvhf";
   };
 
-  modSha256 = "1nahmgzd2akkr0zb80k6s1lz2s1fkggvilwi6bnafwqlaw0qxwcl";
+  modSha256 = "1yjvwkm2zaf017lai5xl088x1z1ifwsbw56dagyf8z9jk9lhkcj7";
 
   outputs = [ "out" "wordlists" ];
 
diff --git a/pkgs/tools/networking/axel/default.nix b/pkgs/tools/networking/axel/default.nix
index 161148f4627..3f5a7612d16 100644
--- a/pkgs/tools/networking/axel/default.nix
+++ b/pkgs/tools/networking/axel/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "axel";
-  version = "2.17.7";
+  version = "2.17.8";
 
   src = fetchFromGitHub {
     owner = "axel-download-accelerator";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0z20d2fkf69v35d4pkba95vnk7yq7393kwikmb64y7cjyz4m2ngk";
+    sha256 = "05hispf152ywlf7i29cc7alxal8lc7lfzx82r42zncdb9v78pdc8";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig autoconf-archive txt2man ];
diff --git a/pkgs/tools/networking/bandwhich/default.nix b/pkgs/tools/networking/bandwhich/default.nix
index 1cee7ecdc21..7522b1629cc 100644
--- a/pkgs/tools/networking/bandwhich/default.nix
+++ b/pkgs/tools/networking/bandwhich/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "bandwhich";
-  version = "0.12.0";
+  version = "0.13.0";
 
   src = fetchFromGitHub {
     owner = "imsnif";
     repo = pname;
     rev = version;
-    sha256 = "0vg2fkjksjysm5ckdlfswg8w7f52wkh417l7k96hghg9ni4yz575";
+    sha256 = "0xcn65j2q2pmbvrd5dkjg8anw1r12vizazr1wz4cinhrpsxx8p1p";
   };
 
-  cargoSha256 = "1cyra3mqxpi3m1gqrc5dmjykpsw6swq695dsqirhgb6qxcclxw7p";
+  cargoSha256 = "16nkmmkla3dlz40qhy04sknm3p2f5qik0ijczcw5ibg5w1jsydfr";
 
   buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
 
diff --git a/pkgs/tools/networking/bgpq3/default.nix b/pkgs/tools/networking/bgpq3/default.nix
new file mode 100644
index 00000000000..e3d2218b0c9
--- /dev/null
+++ b/pkgs/tools/networking/bgpq3/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "bgpq3";
+  version = "0.1.35";
+
+  src = fetchFromGitHub {
+    owner = "snar";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0fd5a3krq0i906m0iivgphiqq88cw6c0w1q4n7lmzyq9201mb8wj";
+  };
+
+  # Fix binary install location. Remove with next upstream release.
+  preInstall = "mkdir -p $out/bin";
+
+  meta = with stdenv.lib; {
+    description = "bgp filtering automation tool";
+    homepage = "https://github.com/snar/bgpq3";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ b4dm4n ];
+    platforms = with platforms; unix;
+  };
+}
diff --git a/pkgs/tools/networking/boringtun/default.nix b/pkgs/tools/networking/boringtun/default.nix
index 59654501a39..244d6354366 100644
--- a/pkgs/tools/networking/boringtun/default.nix
+++ b/pkgs/tools/networking/boringtun/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "boringtun";
-  version = "0.2.0";
+  version = "0.3.0";
 
   src = fetchFromGitHub {
     owner = "cloudflare";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1mijy51hd8c4as9g4ivpfxismc9m5m3nhibfvclh3wrlcmp1ha9c";
+    sha256 = "0b57c7z87xwrirmq9aa9jswqyj5bavkifmq7a9hgfphcmwcskmdb";
   };
 
-  cargoSha256 = "1kbbkbrfjff4yicwanydmcjr2av6s6wrsgafpvbh255vvkd7mr6x";
+  cargoSha256 = "0bms93xg75b23ls2hb8dv26y4al4nr67pqcm57rp9d4rbsfafg8c";
 
   buildInputs = stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
 
diff --git a/pkgs/tools/networking/cassowary/default.nix b/pkgs/tools/networking/cassowary/default.nix
index 5b9ba71f8c9..6156f43b04b 100644
--- a/pkgs/tools/networking/cassowary/default.nix
+++ b/pkgs/tools/networking/cassowary/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "cassowary";
@@ -13,11 +13,9 @@ buildGoModule rec {
 
   modSha256 = "1iylnnmj5slji89pkb3shp4xqar1zbpl7bzwddbzpp8y52fmsv1c";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     homepage = "https://github.com/rogerwelin/cassowary";
     description = "Modern cross-platform HTTP load-testing tool written in Go";
     license = licenses.mit;
diff --git a/pkgs/tools/networking/circus/default.nix b/pkgs/tools/networking/circus/default.nix
index 10edc92a995..82c9db90432 100644
--- a/pkgs/tools/networking/circus/default.nix
+++ b/pkgs/tools/networking/circus/default.nix
@@ -6,11 +6,11 @@ in
 
 buildPythonApplication rec {
   pname = "circus";
-  version = "0.15.0";
+  version = "0.16.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "d1603cf4c4f620ce6593d3d2a67fad25bf0242183ea24110d8bb1c8079c55d1b";
+    sha256 = "0paccmqwgard2l0z7swcc3nwc418l9b4mfaddb4s31bpnqg02z6x";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/networking/clash/default.nix b/pkgs/tools/networking/clash/default.nix
index 8e7499caa47..12bfad0c8df 100644
--- a/pkgs/tools/networking/clash/default.nix
+++ b/pkgs/tools/networking/clash/default.nix
@@ -1,20 +1,18 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ stdenv, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   pname = "clash";
-  version = "0.18.0";
+  version = "0.19.0";
 
   src = fetchFromGitHub {
     owner = "Dreamacro";
     repo = pname;
     rev = "v${version}";
-    sha256 = "150zpjchldm1632z6gkydgqhx2a612lpwf5lqngd2if99nas54kk";
+    sha256 = "08zwrnpiihlir83fryani8pr972lmj1sjvhjc5pzlw1hks88i9m2";
   };
 
   goPackagePath = "github.com/Dreamacro/clash";
-  modSha256 = "02bki2iq99lc9iq1mjf9rbxwspalrj7hjlk1h384w3d4s4x4fyxy";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "05i8mzhxzkgcmaa4gazfl8pq3n8mc4prww0ghl6m28cy7a0vsh7f";
 
   buildFlagsArray = [
     "-ldflags="
diff --git a/pkgs/tools/networking/connman/connman.nix b/pkgs/tools/networking/connman/connman.nix
new file mode 100644
index 00000000000..51219487220
--- /dev/null
+++ b/pkgs/tools/networking/connman/connman.nix
@@ -0,0 +1,171 @@
+{ stdenv
+, fetchurl
+, pkgconfig
+, file
+, glib
+# always required runtime dependencies
+, dbus
+, libmnl
+, gnutls
+, readline
+# configureable options
+, firewallType ? "iptables" # or "nftables"
+, iptables ? null
+, libnftnl ? null # for nftables
+, dnsType ? "internal" # or "systemd-resolved"
+# optional features which are turned *on* by default
+, enableOpenconnect ? true
+, openconnect ? null
+, enableOpenvpn ? true
+, openvpn ? null
+, enableVpnc ? true
+, vpnc ? true
+, enablePolkit ? true
+, polkit ? null
+, enablePptp ? true
+, pptp ? null
+, ppp ? null
+, enableLoopback ? true
+, enableEthernet ? true
+, enableWireguard ? true
+, enableGadget ? true
+, enableWifi ? true
+, enableBluetooth ? true
+, enableOfono ? true
+, enableDundee ? true
+, enablePacrunner ? true
+, enableNeard ? true
+, enableWispr ? true
+, enableTools ? true
+, enableStats ? true
+, enableClient ? true
+, enableDatafiles ? true
+# optional features which are turned *off* by default
+, enableNetworkManager ? false
+, enableHh2serialGps ? false
+, enableL2tp ? false
+, enableIospm ? false
+, enableTist ? false
+}:
+
+assert stdenv.lib.asserts.assertOneOf "firewallType" firewallType [ "iptables" "nftables" ];
+assert stdenv.lib.asserts.assertOneOf "dnsType" dnsType [ "internal" "systemd-resolved" ];
+
+let inherit (stdenv.lib) optionals; in
+
+stdenv.mkDerivation rec {
+  pname = "connman";
+  version = "1.38";
+  src = fetchurl {
+    url = "mirror://kernel/linux/network/connman/${pname}-${version}.tar.xz";
+    sha256 = "0awkqigvhwwxiapw0x6yd4whl465ka8a4al0v2pcqy9ggjlsqc6b";
+  };
+
+  buildInputs = [
+    glib
+    dbus
+    libmnl
+    gnutls
+    readline
+  ];
+
+  nativeBuildInputs = [
+    pkgconfig
+    file
+  ]
+    ++ optionals (enablePolkit) [ polkit ]
+    ++ optionals (enablePptp) [ pptp ppp ]
+    ++ optionals (firewallType == "iptables") [ iptables ]
+    ++ optionals (firewallType == "nftables") [ libnftnl ]
+  ;
+
+  # fix invalid path to 'file'
+  postPatch = ''
+    sed -i "s/\/usr\/bin\/file/file/g" ./configure
+  '';
+
+  configureFlags = [
+    # directories flags
+    "--sysconfdir=${placeholder "out"}/etc"
+    "--localstatedir=/var"
+    "--with-dbusconfdir=${placeholder "out"}/share"
+    "--with-dbusdatadir=${placeholder "out"}/share"
+    "--with-tmpfilesdir=${placeholder "out"}/lib/tmpfiles.d"
+    "--with-systemdunitdir=${placeholder "out"}/lib/systemd/system"
+    "--with-dns-backend=${dnsType}"
+    "--with-firewall=${firewallType}"
+    # production build flags
+    "--disable-maintainer-mode"
+    "--enable-session-policy-local=builtin"
+    # for building and running tests
+    # "--enable-tests" # installs the tests, we don't want that
+    "--enable-tools"
+  ]
+    ++ optionals (!enableLoopback) [ "--disable-loopback" ]
+    ++ optionals (!enableEthernet) [ "--disable-ethernet" ]
+    ++ optionals (!enableWireguard) [ "--disable-wireguard" ]
+    ++ optionals (!enableGadget) [ "--disable-gadget" ]
+    ++ optionals (!enableWifi) [ "--disable-wifi" ]
+    # enable IWD support for wifi as it doesn't require any new dependencies
+    # and it's easier for the NixOS module to use only one connman package when
+    # IWD is requested
+    ++ optionals (enableWifi) [ "--enable-iwd" ]
+    ++ optionals (!enableBluetooth) [ "--disable-bluetooth" ]
+    ++ optionals (!enableOfono) [ "--disable-ofono" ]
+    ++ optionals (!enableDundee) [ "--disable-dundee" ]
+    ++ optionals (!enablePacrunner) [ "--disable-pacrunner" ]
+    ++ optionals (!enableNeard) [ "--disable-neard" ]
+    ++ optionals (!enableWispr) [ "--disable-wispr" ]
+    ++ optionals (!enableTools) [ "--disable-tools" ]
+    ++ optionals (!enableStats) [ "--disable-stats" ]
+    ++ optionals (!enableClient) [ "--disable-client" ]
+    ++ optionals (!enableDatafiles) [ "--disable-datafiles" ]
+    ++ optionals (enableOpenconnect) [
+      "--enable-openconnect=builtin"
+      "--with-openconnect=${openconnect}/sbin/openconnect"
+    ]
+    ++ optionals (enableOpenvpn) [
+      "--enable-openvpn=builtin"
+      "--with-openvpn=${openvpn}/sbin/openvpn"
+    ]
+    ++ optionals (enableVpnc) [
+      "--enable-vpnc=builtin"
+      "--with-vpnc=${vpnc}/sbin/vpnc"
+    ]
+    ++ optionals (enablePolkit) [
+      "--enable-polkit"
+    ]
+    ++ optionals (enablePptp) [
+      "--enable-pptp"
+      "--with-pptp=${pptp}/sbin/pptp"
+    ]
+    ++ optionals (!enableWireguard) [
+      "--disable-wireguard"
+    ]
+    ++ optionals (enableNetworkManager) [
+      "--enable-nmcompat"
+    ]
+    ++ optionals (enableHh2serialGps) [
+      "--enable-hh2serial-gps"
+    ]
+    ++ optionals (enableL2tp) [
+      "--enable-l2tp"
+    ]
+    ++ optionals (enableIospm) [
+      "--enable-iospm"
+    ]
+    ++ optionals (enableTist) [
+      "--enable-tist"
+    ]
+  ;
+
+  doCheck = true;
+
+  meta = with stdenv.lib; {
+    description = "A daemon for managing internet connections";
+    homepage = "https://01.org/connman";
+    maintainers = [ maintainers.matejc ];
+    platforms = platforms.linux;
+    license = licenses.gpl2;
+  };
+}
diff --git a/pkgs/tools/networking/connman/default.nix b/pkgs/tools/networking/connman/default.nix
index e58b8362f95..ccceaa30b04 100644
--- a/pkgs/tools/networking/connman/default.nix
+++ b/pkgs/tools/networking/connman/default.nix
@@ -1,61 +1,40 @@
-{ stdenv, fetchurl, pkgconfig, openconnect, file, gawk,
-  openvpn, vpnc, glib, dbus, iptables, gnutls, polkit,
-  wpa_supplicant, readline6, pptp, ppp }:
+{ callPackage }:
 
-stdenv.mkDerivation rec {
-  pname = "connman";
-  version = "1.37";
-  src = fetchurl {
-    url = "mirror://kernel/linux/network/connman/${pname}-${version}.tar.xz";
-    sha256 = "05kfjiqhqfmbbwc4snnyvi5hc4zxanac62f6gcwaf5mvn0z9pqkc";
-  };
-
-  buildInputs = [ openconnect polkit
-                  openvpn vpnc glib dbus iptables gnutls
-                  wpa_supplicant readline6 pptp ppp ];
-
-  nativeBuildInputs = [ pkgconfig file gawk ];
+{
+  # All the defaults
+  connman = callPackage ./connman.nix { };
 
-  preConfigure = ''
-    export WPASUPPLICANT=${wpa_supplicant}/sbin/wpa_supplicant
-    export PPPD=${ppp}/sbin/pppd
-    export AWK=${gawk}/bin/gawk
-    sed -i "s/\/usr\/bin\/file/file/g" ./configure
-  '';
-
-  configureFlags = [
-    "--sysconfdir=\${out}/etc"
-    "--localstatedir=/var"
-    "--with-dbusconfdir=${placeholder "out"}/share"
-    "--with-dbusdatadir=${placeholder "out"}/share"
-    "--disable-maintainer-mode"
-    "--enable-openconnect=builtin"
-    "--with-openconnect=${openconnect}/sbin/openconnect"
-    "--enable-openvpn=builtin"
-    "--with-openvpn=${openvpn}/sbin/openvpn"
-    "--enable-vpnc=builtin"
-    "--with-vpnc=${vpnc}/sbin/vpnc"
-    "--enable-session-policy-local=builtin"
-    "--enable-client"
-    "--enable-bluetooth"
-    "--enable-wifi"
-    "--enable-polkit"
-    "--enable-tools"
-    "--enable-datafiles"
-    "--enable-pptp"
-    "--with-pptp=${pptp}/sbin/pptp"
-    "--enable-iwd"
-  ];
-
-  postInstall = ''
-    cp ./client/connmanctl $out/sbin/connmanctl
-  '';
+  connmanFull = callPackage ./connman.nix {
+    # TODO: Why is this in `connmanFull` and not the default build? See TODO in
+    # nixos/modules/services/networking/connman.nix (near the assertions)
+    enableNetworkManager = true;
+    enableHh2serialGps = true;
+    enableL2tp = true;
+    enableIospm = true;
+    enableTist = true;
+  };
 
-  meta = with stdenv.lib; {
-    description = "A daemon for managing internet connections";
-    homepage = https://01.org/connman;
-    maintainers = [ maintainers.matejc ];
-    platforms = platforms.linux;
-    license = licenses.gpl2;
+  connmanMinimal = callPackage ./connman.nix {
+    enableOpenconnect = false;
+    enableOpenvpn = false;
+    enableVpnc = false;
+    vpnc = false;
+    enablePolkit = false;
+    enablePptp = false;
+    enableLoopback = false;
+    # enableEthernet = false; # If disabled no ethernet connection can be performed
+    enableWireguard = false;
+    enableGadget = false;
+    # enableWifi = false; # If disabled no WiFi connection can be performed
+    enableBluetooth = false;
+    enableOfono = false;
+    enableDundee = false;
+    enablePacrunner = false;
+    enableNeard = false;
+    enableWispr = false;
+    enableTools = false;
+    enableStats = false;
+    enableClient = false;
+    # enableDatafiles = false; # If disabled, configuration and data files are not installed
   };
 }
diff --git a/pkgs/tools/networking/corerad/default.nix b/pkgs/tools/networking/corerad/default.nix
index 0cfaddcf06a..96798c1c17e 100644
--- a/pkgs/tools/networking/corerad/default.nix
+++ b/pkgs/tools/networking/corerad/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "corerad";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "0vbbpndqwwz1mc59j7liaayxaj53cs8s3javgj3pvhkn4vp65p7c";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = ''
     -ldflags=
     -X github.com/mdlayher/corerad/internal/build.linkTimestamp=1583280117
diff --git a/pkgs/tools/networking/croc/default.nix b/pkgs/tools/networking/croc/default.nix
index 70ffe180f15..b4a74b62003 100644
--- a/pkgs/tools/networking/croc/default.nix
+++ b/pkgs/tools/networking/croc/default.nix
@@ -1,21 +1,17 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "croc";
-  version = "8.0.3";
-
-  goPackagePath = "github.com/schollz/croc";
+  version = "8.0.7";
 
   src = fetchFromGitHub {
     owner = "schollz";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0jx6yxyxdnv4xzxsyfa7y1gm079rcsjqa1gmkh6bwkmhk6w5h1k9";
+    sha256 = "06iwb2wm9wwcwl88rqhwbrky2ab0kbcyzmcv89vw533glknycw04";
   };
 
-  modSha256 = "0d4mm840fjsbcyl98zg6d3i7qp1lmjkx07mh91d56jyf9j082g99";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "1gjigbc9511h3qd12j9ypdnmb5ia4x9f2mk7mxasy9p2xkcfyhpg";
 
   subPackages = [ "." ];
 
diff --git a/pkgs/tools/networking/dnscrypt-proxy2/default.nix b/pkgs/tools/networking/dnscrypt-proxy2/default.nix
index 089eee332b4..b82f1e7bb4b 100644
--- a/pkgs/tools/networking/dnscrypt-proxy2/default.nix
+++ b/pkgs/tools/networking/dnscrypt-proxy2/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "dnscrypt-proxy2";
-  version = "2.0.39";
+  version = "2.0.42";
 
   goPackagePath = "github.com/jedisct1/dnscrypt-proxy";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "jedisct1";
     repo = "dnscrypt-proxy";
     rev = version;
-    sha256 = "0fvnp2brmqkwn04v01k53f9djk9ywa1cg26m2frhv4lj0581430y";
+    sha256 = "1v4n0pkwcilxm4mnj4fsd4gf8pficjj40jnmfkiwl7ngznjxwkyw";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/networking/dnsproxy/default.nix b/pkgs/tools/networking/dnsproxy/default.nix
index 89173e7b427..6f57e981239 100644
--- a/pkgs/tools/networking/dnsproxy/default.nix
+++ b/pkgs/tools/networking/dnsproxy/default.nix
@@ -1,19 +1,17 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ stdenv, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   pname = "dnsproxy";
-  version = "0.23.7";
+  version = "0.24.0";
 
   src = fetchFromGitHub {
     owner = "AdguardTeam";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1sfl2nyzspqllbklc9wf62wqxs0k3ac7vzqz8kl5h9ch654g542a";
+    sha256 = "1jwy2qi99ks6zcas6h1n0zq3b0k47036ayas0mprdips60azw0hg";
   };
 
-  modSha256 = "0r5ybr4gpcdsldk12b0d4xiih6ckwnqkfwy89c97prv24v14zysv";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "0kba3jay6m9ir1pc7i833p7ylbs610g0lkp8kc3gm47xnxy7j4gz";
 
   meta = with stdenv.lib; {
     description = "Simple DNS proxy with DoH, DoT, and DNSCrypt support";
diff --git a/pkgs/tools/networking/findomain/default.nix b/pkgs/tools/networking/findomain/default.nix
index c78a6ad5526..d5e801a6f92 100644
--- a/pkgs/tools/networking/findomain/default.nix
+++ b/pkgs/tools/networking/findomain/default.nix
@@ -9,16 +9,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "findomain";
-  version = "1.4.2";
+  version = "1.4.5";
 
   src = fetchFromGitHub {
     owner = "Edu4rdSHL";
     repo = pname;
     rev = version;
-    sha256 = "0c6jjr1343lqwggvpxdhbjyi1far4f7f3yzq1y0nj1j952j7a36x";
+    sha256 = "1p4ddyqg1v27hf19n1ksmfvj5s6z2c8i13syb0anhlyzqy576hwb";
   };
 
-  cargoSha256 = "1cyfxfhbc2xhavnkhva1xdcw8vy9i5pqhfbiwn6idpfy6hm1w0bx";
+  cargoSha256 = "0mdcj4almwziq1ph3imfdx41a96xq19sbjm7wsm9lxlzhvv256br";
 
   nativeBuildInputs = [ installShellFiles perl ];
   buildInputs = lib.optional stdenv.isDarwin Security;
diff --git a/pkgs/tools/networking/frp/default.nix b/pkgs/tools/networking/frp/default.nix
index 7323c914bfa..f44e2208646 100644
--- a/pkgs/tools/networking/frp/default.nix
+++ b/pkgs/tools/networking/frp/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, stdenv, fetchFromGitHub, Security }:
+{ buildGoModule, lib, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "frp";
@@ -13,11 +13,9 @@ buildGoModule rec {
 
   modSha256 = "1v90w5grc0vjpcp0m56d73zi0qnbswgz1rcvcwrjfa3rwqhigbal";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   subPackages = [ "cmd/frpc" "cmd/frps" ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Fast reverse proxy";
     longDescription = ''
       frp is a fast reverse proxy to help you expose a local server behind a
diff --git a/pkgs/tools/networking/grpcui/default.nix b/pkgs/tools/networking/grpcui/default.nix
index de2b3f78798..58e698ed708 100644
--- a/pkgs/tools/networking/grpcui/default.nix
+++ b/pkgs/tools/networking/grpcui/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, fetchFromGitHub, stdenv, Security }:
+{ buildGoModule, fetchFromGitHub, lib }:
 
 buildGoModule rec {
   pname = "grpcui";
@@ -13,9 +13,7 @@ buildGoModule rec {
 
   modSha256 = "1yq8484cjxad72nqsrim3zppr8hmn7dc6f8rgkw8fg952lqy5jjb";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "An interactive web UI for gRPC, along the lines of postman";
     homepage = "https://github.com/fullstorydev/grpcui";
     license = licenses.mit;
diff --git a/pkgs/tools/networking/haproxy/default.nix b/pkgs/tools/networking/haproxy/default.nix
index 9c7adfce21d..c5aeaaa7bb4 100644
--- a/pkgs/tools/networking/haproxy/default.nix
+++ b/pkgs/tools/networking/haproxy/default.nix
@@ -11,11 +11,11 @@ assert usePcre -> pcre != null;
 
 stdenv.mkDerivation rec {
   pname = "haproxy";
-  version = "2.1.3";
+  version = "2.1.4";
 
   src = fetchurl {
     url = "https://www.haproxy.org/download/${stdenv.lib.versions.majorMinor version}/src/${pname}-${version}.tar.gz";
-    sha256 = "0n8bw3d6gikr8c56ycrvksp1sl0b4yfzp19867cxkl3l0daqwrxv";
+    sha256 = "1kcizs5r538chhpwqykdngxyqfi98i03akfjnii721npjvv0y0si";
   };
 
   buildInputs = [ openssl zlib ]
diff --git a/pkgs/tools/networking/hey/default.nix b/pkgs/tools/networking/hey/default.nix
index 69cfa452602..d65d5c9e323 100644
--- a/pkgs/tools/networking/hey/default.nix
+++ b/pkgs/tools/networking/hey/default.nix
@@ -1,4 +1,4 @@
-{ buildGoModule, stdenv, fetchFromGitHub, Security }:
+{ buildGoModule, lib, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "hey";
@@ -13,9 +13,7 @@ buildGoModule rec {
 
   modSha256 = "0a00kcyagqczw0vhl8qs2xs1y8myw080y9kjs4qrcmj6kibdy55q";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "HTTP load generator, ApacheBench (ab) replacement";
     homepage = "https://github.com/rakyll/hey";
     license = licenses.asl20;
diff --git a/pkgs/tools/networking/httplz/default.nix b/pkgs/tools/networking/httplz/default.nix
index 5d59010ac1e..c4f003f884f 100644
--- a/pkgs/tools/networking/httplz/default.nix
+++ b/pkgs/tools/networking/httplz/default.nix
@@ -12,10 +12,8 @@ rustPlatform.buildRustPackage rec {
     sha256 = "0i41hqig8v6w1qb6498239iix1rss0lznm5lcl9m3i439c2zv7pw";
   };
 
-  nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [
-    openssl pkgconfig
-  ] ++ lib.optionals stdenv.isDarwin [
+  nativeBuildInputs = [ makeWrapper pkgconfig ];
+  buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [
     libiconv darwin.apple_sdk.frameworks.Security
   ];
 
diff --git a/pkgs/tools/networking/hue-cli/Gemfile.lock b/pkgs/tools/networking/hue-cli/Gemfile.lock
index 8109cd96ac2..0600d6b7eca 100644
--- a/pkgs/tools/networking/hue-cli/Gemfile.lock
+++ b/pkgs/tools/networking/hue-cli/Gemfile.lock
@@ -15,4 +15,4 @@ DEPENDENCIES
   hue-cli
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/networking/maphosts/Gemfile.lock b/pkgs/tools/networking/maphosts/Gemfile.lock
index c456210217e..3e2332f75cc 100644
--- a/pkgs/tools/networking/maphosts/Gemfile.lock
+++ b/pkgs/tools/networking/maphosts/Gemfile.lock
@@ -16,4 +16,4 @@ DEPENDENCIES
   maphosts
 
 BUNDLED WITH
-   1.12.5
+   2.1.4
diff --git a/pkgs/tools/networking/minio-client/default.nix b/pkgs/tools/networking/minio-client/default.nix
index b8cf93bc2d3..885ffbe9157 100644
--- a/pkgs/tools/networking/minio-client/default.nix
+++ b/pkgs/tools/networking/minio-client/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, CoreServices }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "minio-client";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "1qjfsqmcc6i0nixwvdmm3vnnv19yvqaaza096cpdf5rl35knsp5i";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
-
   subPackages = [ "." ];
 
   preBuild = ''
diff --git a/pkgs/tools/networking/mosh/default.nix b/pkgs/tools/networking/mosh/default.nix
index 98d2625aade..5649ff06dda 100644
--- a/pkgs/tools/networking/mosh/default.nix
+++ b/pkgs/tools/networking/mosh/default.nix
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
     ++ (with perlPackages; [ perl IOTty ])
     ++ lib.optional withUtempter libutempter;
 
+  enableParallelBuilding = true;
+
   patches = [
     ./ssh_path.patch
     ./utempter_path.patch
diff --git a/pkgs/tools/networking/nebula/default.nix b/pkgs/tools/networking/nebula/default.nix
index f78d7129c34..ec94fc97997 100644
--- a/pkgs/tools/networking/nebula/default.nix
+++ b/pkgs/tools/networking/nebula/default.nix
@@ -1,25 +1,23 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "nebula";
-  version = "1.1.0";
+  version = "1.2.0";
 
   src = fetchFromGitHub {
     owner = "slackhq";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0nwagk3q2gkirqrk27fisad2c2p2y1lsvz5phax9v5h51p1y79ia";
+    sha256 = "0xrki9w83b4b3l5adq1rxz374f124wf388sdyvy7ngc3b04k7qlb";
   };
 
-  modSha256 = "1sy5mnwn9fxjf3y41lm8gsggid2c0y08iw88m9ng8psaf4qid8ij";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "0v45ikw0bl00412krg4v6sr9bggvsrvl0h6clihkh4mdfz6kwa47";
 
   subPackages = [ "cmd/nebula" "cmd/nebula-cert" ];
 
   buildFlagsArray = [ "-ldflags='-X main.Build=${version}'" ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A scalable overlay networking tool with a focus on performance, simplicity and security";
     longDescription = ''
       Nebula is a scalable overlay networking tool with a focus on performance,
diff --git a/pkgs/tools/networking/nethogs/default.nix b/pkgs/tools/networking/nethogs/default.nix
index a85d4d7ad10..7bc6d0e2be7 100644
--- a/pkgs/tools/networking/nethogs/default.nix
+++ b/pkgs/tools/networking/nethogs/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "nethogs";
-  version = "0.8.5";
+  version = "0.8.6";
 
   src = fetchFromGitHub {
     owner = "raboof";
     repo = "nethogs";
     rev = "v${version}";
-    sha256 = "13plwblwbnyyi40jaqx471gwhln08wm7f0fxyvj1yh3d81k556yx";
+    sha256 = "0sn1sdp86akwlm4r1vmkxjjl50c0xaisk91bbz57z7kcsaphxna9";
   };
 
   buildInputs = [ ncurses libpcap ];
diff --git a/pkgs/tools/networking/network-manager/default.nix b/pkgs/tools/networking/network-manager/default.nix
index bbec39b9502..3e1d6c8b8e6 100644
--- a/pkgs/tools/networking/network-manager/default.nix
+++ b/pkgs/tools/networking/network-manager/default.nix
@@ -10,11 +10,11 @@ let
   pythonForDocs = python3.withPackages (pkgs: with pkgs; [ pygobject3 ]);
 in stdenv.mkDerivation rec {
   pname = "network-manager";
-  version = "1.22.8";
+  version = "1.22.10";
 
   src = fetchurl {
     url = "mirror://gnome/sources/NetworkManager/${stdenv.lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz";
-    sha256 = "0kxbgln78lb1cxhd79vbpdbncsb0cppr15fycgqb9df6f8nbj4cm";
+    sha256 = "0xyaizyp3yz6x3pladw3nvl3hf4n5g140zx9jnxfp9qvag0wqa9b";
   };
 
   outputs = [ "out" "dev" "devdoc" "man" "doc" ];
diff --git a/pkgs/tools/networking/network-manager/openvpn/default.nix b/pkgs/tools/networking/network-manager/openvpn/default.nix
index 13f7eab5cc7..79435a9e5e8 100644
--- a/pkgs/tools/networking/network-manager/openvpn/default.nix
+++ b/pkgs/tools/networking/network-manager/openvpn/default.nix
@@ -1,15 +1,15 @@
 { stdenv, fetchurl, substituteAll, openvpn, intltool, libxml2, pkgconfig, file, networkmanager, libsecret
-, gtk3, withGnome ? true, gnome3, kmod, fetchpatch, libnma }:
+, gtk3, withGnome ? true, gnome3, kmod, libnma }:
 
 let
   pname = "NetworkManager-openvpn";
-  version = "1.8.10";
+  version = "1.8.12";
 in stdenv.mkDerivation {
   name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "1vri49yff4lj13dnzkpq9nx3a4z1bmbrv807r151plj8m1mwhg5g";
+    sha256 = "062kh4zj7jfbwy4zzcwpq2m457bzbpm3l18s0ysnw3mgia3siz8f";
   };
 
   patches = [
@@ -17,11 +17,6 @@ in stdenv.mkDerivation {
       src = ./fix-paths.patch;
       inherit kmod openvpn;
     })
-    # Don't use etc/dbus-1/system.d
-    (fetchpatch {
-      url = "https://gitlab.gnome.org/GNOME/NetworkManager-openvpn/merge_requests/13.patch";
-      sha256 = "06cvqi28v72dd53fw8ix95mqj885xhwi8qcs2q7hvm5bvnhwn704";
-    })
   ];
 
   buildInputs = [ openvpn networkmanager ]
@@ -30,7 +25,6 @@ in stdenv.mkDerivation {
   nativeBuildInputs = [ intltool pkgconfig file libxml2 ];
 
   configureFlags = [
-    "--without-libnm-glib"
     "--with-gnome=${if withGnome then "yes" else "no"}"
     "--localstatedir=/" # needed for the management socket under /run/NetworkManager
     "--enable-absolute-paths"
diff --git a/pkgs/tools/networking/nfdump/default.nix b/pkgs/tools/networking/nfdump/default.nix
index 256bb824310..22d84a7f699 100644
--- a/pkgs/tools/networking/nfdump/default.nix
+++ b/pkgs/tools/networking/nfdump/default.nix
@@ -2,7 +2,7 @@
 , autoconf, automake, libtool, pkg-config
 , bzip2, libpcap, flex, yacc }:
 
-let version = "1.6.19"; in
+let version = "1.6.20"; in
 
 stdenv.mkDerivation {
   pname = "nfdump";
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
     owner = "phaag";
     repo = "nfdump";
     rev = "v${version}";
-    sha256 = "0idhg7pdkv602h0d0dz7msk8gsxz32ingn16dkqbxp4mgfiakp9r";
+    sha256 = "06pywhymb92l0kac9djjpvlwrn1c7bxs3wm5yzrlaf815175ar3c";
   };
 
   nativeBuildInputs = [ autoconf automake flex libtool pkg-config yacc ];
diff --git a/pkgs/tools/networking/ngrok-1/default.nix b/pkgs/tools/networking/ngrok-1/default.nix
index 19ae72aaac0..6e6d543c439 100644
--- a/pkgs/tools/networking/ngrok-1/default.nix
+++ b/pkgs/tools/networking/ngrok-1/default.nix
@@ -16,7 +16,7 @@ buildGoPackage rec {
 
   goDeps = ./deps.nix;
 
-  buildInputs = [ go-bindata ];
+  nativeBuildInputs = [ go-bindata ];
 
   preConfigure = ''
     sed -e '/jteeuwen\/go-bindata/d' \
diff --git a/pkgs/tools/networking/nyx/default.nix b/pkgs/tools/networking/nyx/default.nix
index 901187c6abb..a7d788d7c36 100644
--- a/pkgs/tools/networking/nyx/default.nix
+++ b/pkgs/tools/networking/nyx/default.nix
@@ -1,6 +1,6 @@
-{ lib, pythonPackages }:
+{ lib, python3Packages }:
 
-with pythonPackages;
+with python3Packages;
 
 buildPythonApplication rec {
   pname = "nyx";
diff --git a/pkgs/tools/networking/obfs4/default.nix b/pkgs/tools/networking/obfs4/default.nix
index 93ebdeb0720..005abb0968b 100644
--- a/pkgs/tools/networking/obfs4/default.nix
+++ b/pkgs/tools/networking/obfs4/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, buildGoModule, Security }:
+{ lib, fetchgit, buildGoModule }:
 
 buildGoModule rec {
   pname = "obfs4";
@@ -12,9 +12,7 @@ buildGoModule rec {
 
   modSha256 = "150kg22kznrdj5icjxk3qd70g7wpq8zd2zklw1y2fgvrggw8zvyv";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A pluggable transport proxy";
     homepage = https://www.torproject.org/projects/obfsproxy;
     repositories.git = https://git.torproject.org/pluggable-transports/obfs4.git;
diff --git a/pkgs/tools/networking/openfortivpn/default.nix b/pkgs/tools/networking/openfortivpn/default.nix
index 548f0e97be9..6e6e8fbf23c 100644
--- a/pkgs/tools/networking/openfortivpn/default.nix
+++ b/pkgs/tools/networking/openfortivpn/default.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 let repo = "openfortivpn";
-    version = "1.12.0";
+    version = "1.13.1";
 
 in stdenv.mkDerivation {
   name = "${repo}-${version}";
@@ -12,7 +12,7 @@ in stdenv.mkDerivation {
     owner = "adrienverge";
     inherit repo;
     rev = "v${version}";
-    sha256 = "1ndyiw4c2s8m0xds4ff87rdpixhbma5v2g420w3gfc1p7alhqz66";
+    sha256 = "1sfqi169xf0wmlpzri9frkgsh99fgjvcpbdkd42vsm10qa1dnpk5";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/tools/networking/p2p/gtk-gnutella/default.nix b/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
index 70e36cb7ec5..08163bd8a9e 100644
--- a/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
+++ b/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
@@ -1,37 +1,58 @@
-{ stdenv, fetchurl, fetchpatch, bison, pkgconfig, gettext, desktop-file-utils
-, glib, gtk2, libxml2, libbfd, zlib, binutils, gnutls
+{ stdenv
+, fetchFromGitHub
+, fetchpatch
+, bison
+, pkgconfig
+, gettext
+, desktop-file-utils
+, glib
+, gtk2
+, libxml2
+, libbfd
+, zlib
+, binutils
+, gnutls
+, enableGui ? true
 }:
 
 stdenv.mkDerivation rec {
   pname = "gtk-gnutella";
-  version = "1.1.14";
+  # NOTE: Please remove hardeningDisable on the next release, see:
+  # https://sourceforge.net/p/gtk-gnutella/bugs/555/#5c19
+  version = "1.1.15";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/${pname}/${version}/${pname}-${version}.tar.xz";
-    sha256 = "0sljjha4anfz1r1xq1c6qnnkjv62ld56p7xgj4bsi6lqmq1azvii";
+  src = fetchFromGitHub {
+    owner = "gtk-gnutella";
+    repo = "gtk-gnutella";
+    rev = "v${version}";
+    sha256 = "1g7w6ywwp2g4qdgmfqkrl1rldk1b4rx50yb7h75hh15mh6nr159r";
   };
 
-  patches = [
-    (fetchpatch {
-      # Avoid namespace conflict with glibc 2.28 'statx' struct / remove after v1.1.14
-      url = "https://github.com/gtk-gnutella/gtk-gnutella/commit/e4205a082eb32161e28de81f5cba8095eea8ecc7.patch";
-      sha256 = "0ffkw2cw2b2yhydii8jm40vd40p4xl224l8jvhimg02lgs3zfbca";
-    })
-    (fetchpatch {
-      url = "https://src.fedoraproject.org/rpms/gtk-gnutella/raw/f30/f/gtk-gnutella-1.1.14-endian.patch";
-      sha256 = "19q4lq8msknfz4mkbjdqmmgld16p30j2yx371p8spmr19q5i0sfn";
-    })
+  nativeBuildInputs = [
+    bison
+    desktop-file-utils
+    gettext
+    pkgconfig
   ];
-
-  postPatch = ''
-    substituteInPlace Makefile.SH --replace "@exit 0" "@echo done"
-  '';
-
-  nativeBuildInputs = [ bison desktop-file-utils gettext pkgconfig ];
-  buildInputs = [ binutils glib gnutls gtk2 libbfd libxml2 zlib ];
+  buildInputs = [
+    glib
+    gnutls
+    libbfd
+    libxml2
+    zlib
+  ]
+  ++
+    stdenv.lib.optionals (enableGui) [ gtk2 ]
+  ;
 
   configureScript = "./build.sh";
-  configureFlags = [ "--configure-only" ];
+  configureFlags = [
+    "--configure-only"
+    # See https://sourceforge.net/p/gtk-gnutella/bugs/555/
+    "--disable-malloc"
+  ]
+    ++ stdenv.lib.optionals (!enableGui) [ "--topless" ]
+  ;
 
   hardeningDisable = [ "bindnow" "fortify" "pic" "relro" ];
 
@@ -45,6 +66,7 @@ stdenv.mkDerivation rec {
     description = "A GTK Gnutella client, optimized for speed and scalability";
     homepage = "http://gtk-gnutella.sourceforge.net/"; # Code: https://github.com/gtk-gnutella/gtk-gnutella
     changelog = "https://raw.githubusercontent.com/gtk-gnutella/gtk-gnutella/v${version}/ChangeLog";
+    maintainers = [ maintainers.doronbehar ];
     license = licenses.gpl2Plus;
     platforms = platforms.unix;
   };
diff --git a/pkgs/tools/networking/passh/default.nix b/pkgs/tools/networking/passh/default.nix
new file mode 100644
index 00000000000..6534d3a1d51
--- /dev/null
+++ b/pkgs/tools/networking/passh/default.nix
@@ -0,0 +1,25 @@
+{ lib, fetchFromGitHub, stdenv }:
+stdenv.mkDerivation rec {
+  pname = "passh";
+  version = "2020-03-18";
+
+  src = fetchFromGitHub {
+    owner = "clarkwang";
+    repo = pname;
+    rev = "7112e667fc9e65f41c384f89ff6938d23e86826c";
+    sha256 = "1g0rx94vqg36kp46f8v4x6jcmvdk85ds6bkrpayq772hbdm1b5z5";
+  };
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp passh $out/bin
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/clarkwang/passh";
+    description = "An sshpass alternative for non-interactive ssh auth";
+    license = licenses.gpl3;
+    maintainers = [ maintainers.lovesegfault ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/tools/networking/pirate-get/default.nix b/pkgs/tools/networking/pirate-get/default.nix
index b92d255b719..bacea663493 100644
--- a/pkgs/tools/networking/pirate-get/default.nix
+++ b/pkgs/tools/networking/pirate-get/default.nix
@@ -4,20 +4,20 @@ with python3Packages;
 
 buildPythonApplication rec {
   pname = "pirate-get";
-  version = "0.3.4";
+  version = "0.3.5";
 
   doCheck = false;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0f82yf3bl9jaywagv4vvwypm57z1x8a8qqn0xhz9np3949df4ysm";
+    sha256 = "01jr9c04ic4bfalfdijavzvqzmpkw3hq1glqyc86z3v6zwl8dlp2";
   };
 
   propagatedBuildInputs = [ colorama veryprettytable beautifulsoup4 pyperclip ];
 
   meta = with stdenv.lib; {
     description = "A command line interface for The Pirate Bay";
-    homepage = https://github.com/vikstrous/pirate-get;
+    homepage = "https://github.com/vikstrous/pirate-get";
     license = licenses.gpl1;
     maintainers = with maintainers; [ rnhmjoj ];
     platforms = platforms.unix;
diff --git a/pkgs/tools/networking/pixiecore/default.nix b/pkgs/tools/networking/pixiecore/default.nix
new file mode 100644
index 00000000000..bc8ec7da169
--- /dev/null
+++ b/pkgs/tools/networking/pixiecore/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+  pname = "pixiecore";
+  version = "2020-03-25";
+  rev = "68743c67a60c18c06cd21fd75143e3e069ca3cfc";
+
+  src = fetchFromGitHub {
+    owner = "danderson";
+    repo = "netboot";
+    inherit rev;
+    sha256 = "14dslmx3gk08h9gqfjw5y27x7d2c6r8ir7mjd7l9ybysagpzr02a";
+  };
+
+  modSha256 = "1waqaglm6f9zy5296z309ppkck2vmydhk9gjnxrgzmhqld5lcq4f";
+  subPackages = [ "cmd/pixiecore" ];
+
+  meta = {
+    description = "A tool to manage network booting of machines";
+    homepage = "https://github.com/danderson/netboot/tree/master/pixiecore";
+    license =  stdenv.lib.licenses.asl20;
+    maintainers = with stdenv.lib.maintainers; [ bbigras danderson ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/tools/networking/s3cmd/default.nix b/pkgs/tools/networking/s3cmd/default.nix
index 31b111f2b83..53f24ddb752 100644
--- a/pkgs/tools/networking/s3cmd/default.nix
+++ b/pkgs/tools/networking/s3cmd/default.nix
@@ -1,23 +1,24 @@
-{ stdenv, fetchFromGitHub, python2Packages }:
+{ stdenv, buildPythonApplication, fetchFromGitHub, python_magic, dateutil }:
 
-python2Packages.buildPythonApplication rec {
+buildPythonApplication rec {
   pname = "s3cmd";
-  version = "2.0.2";
-  
+  version = "2.1.0";
+
   src = fetchFromGitHub {
-    owner  = "s3tools";
-    repo   = "s3cmd";
-    rev    = "v${version}";
-    sha256 = "0ninw830309cxga99gjnfghpkywf9kd6yz4wqsq85zni1dv39cdk";
+    owner = "s3tools";
+    repo = "s3cmd";
+    rev = "v${version}";
+    sha256 = "0p6mbgai7f0c12pkw4s7d649gj1f8hywj60pscxvj9jsna3iifhs";
   };
 
-  propagatedBuildInputs = with python2Packages; [ python_magic dateutil ];
+  propagatedBuildInputs = [ python_magic dateutil ];
+
+  dontUseSetuptoolsCheck = true;
 
   meta = with stdenv.lib; {
-    homepage = http://s3tools.org/;
-    description = "A command-line tool to manipulate Amazon S3 buckets";
+    homepage = "https://s3tools.org/s3cmd";
+    description = "Command line tool for managing Amazon S3 and CloudFront services";
     license = licenses.gpl2;
     maintainers = [ maintainers.spwhitt ];
-    platforms = platforms.all;
   };
 }
diff --git a/pkgs/tools/networking/s6-dns/default.nix b/pkgs/tools/networking/s6-dns/default.nix
index 66bdcbbba54..739fdc2e2fc 100644
--- a/pkgs/tools/networking/s6-dns/default.nix
+++ b/pkgs/tools/networking/s6-dns/default.nix
@@ -4,8 +4,8 @@ with skawarePackages;
 
 buildPackage {
   pname = "s6-dns";
-  version = "2.3.1.1";
-  sha256 = "0clib10dk3r9rcxv1yfr6gdvqqrx0arzivjpmhz9p8xaif53wpj1";
+  version = "2.3.2.0";
+  sha256 = "09hyb1xv9glqq0yy7wy8hiwvlr78kwv552pags8ancgamag15di7";
 
   description = "A suite of DNS client programs and libraries for Unix systems";
 
@@ -28,6 +28,7 @@ buildPackage {
     rm $(find -type f -mindepth 1 -maxdepth 1 -executable)
     rm libs6dns.*
     rm libskadns.*
+    rm libdcache.*
 
     mv doc $doc/share/doc/s6-dns/html
   '';
diff --git a/pkgs/tools/networking/s6-networking/default.nix b/pkgs/tools/networking/s6-networking/default.nix
index 1551d6da97b..f8c479d5ce2 100644
--- a/pkgs/tools/networking/s6-networking/default.nix
+++ b/pkgs/tools/networking/s6-networking/default.nix
@@ -20,8 +20,8 @@ assert sslSupportEnabled -> sslLibs ? ${sslSupport};
 
 buildPackage {
   pname = "s6-networking";
-  version = "2.3.1.1";
-  sha256 = "127i7ig5wdgjbkjf0py0g96llc6cbxij22ns2j7bwa95figinhcx";
+  version = "2.3.1.2";
+  sha256 = "1029bgwfmv903y5ji93j75m7p2jgchdxya1khxzb42q2z7yxnlyr";
 
   description = "A suite of small networking utilities for Unix systems";
 
diff --git a/pkgs/tools/networking/shadowfox/default.nix b/pkgs/tools/networking/shadowfox/default.nix
index 37d5edaec45..f2ae143e1b9 100644
--- a/pkgs/tools/networking/shadowfox/default.nix
+++ b/pkgs/tools/networking/shadowfox/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ stdenv, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   pname = "shadowfox";
@@ -11,9 +11,9 @@ buildGoModule rec {
     sha256 = "125mw70jidbp436arhv77201jdp6mpgqa2dzmrpmk55f9bf29sg6";
   };
 
-  modSha256 = "0hcc87mzacqwbw10l49kx0sxl4mivdr88c40wh6hdfvrbam2w86r";
+  goPackagePath = "github.com/SrKomodo/shadowfox-updater";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  modSha256 = "0hcc87mzacqwbw10l49kx0sxl4mivdr88c40wh6hdfvrbam2w86r";
 
   buildFlags = [ "--tags" "release" ];
 
diff --git a/pkgs/tools/networking/slirp4netns/default.nix b/pkgs/tools/networking/slirp4netns/default.nix
index b70bf2952f7..f3bd0a23d58 100644
--- a/pkgs/tools/networking/slirp4netns/default.nix
+++ b/pkgs/tools/networking/slirp4netns/default.nix
@@ -1,19 +1,27 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, pkg-config, glib, libcap, libseccomp }:
+{ stdenv
+, fetchFromGitHub
+, autoreconfHook
+, pkg-config
+, glib
+, libcap
+, libseccomp
+, libslirp
+}:
 
 stdenv.mkDerivation rec {
   pname = "slirp4netns";
-  version = "0.4.4";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     owner = "rootless-containers";
     repo = "slirp4netns";
     rev = "v${version}";
-    sha256 = "1932q80s6187k4fsvgia5iwc9lqsdkxzqqwpw1ksy0mx8wzmwbih";
+    sha256 = "152wmccz47anvx5w88qcz8higw80l17jl7i24xfj5574adviqnv2";
   };
 
   nativeBuildInputs = [ autoreconfHook pkg-config ];
 
-  buildInputs = [ libcap libseccomp glib ];
+  buildInputs = [ glib libcap libseccomp libslirp ];
 
   enableParallelBuilding = true;
 
@@ -21,7 +29,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/rootless-containers/slirp4netns";
     description = "User-mode networking for unprivileged network namespaces";
     license = licenses.gpl2;
-    maintainers = with maintainers; [ orivej saschagrunert ];
+    maintainers = with maintainers; [ orivej ] ++ teams.podman.members;
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/networking/tendermint/default.nix b/pkgs/tools/networking/tendermint/default.nix
index 91378757af1..0b9c254deeb 100644
--- a/pkgs/tools/networking/tendermint/default.nix
+++ b/pkgs/tools/networking/tendermint/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, buildGoModule, Security }:
+{ stdenv, fetchFromGitHub, buildGoModule }:
 
 buildGoModule rec {
   pname = "tendermint";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "1h51zgvjq3bm09yhm54rk8a86cqa1zma3mx6pb0kq7k72xvhpx0a";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     description = "Byzantine-Fault Tolerant State Machines. Or Blockchain, for short.";
     homepage = https://tendermint.com/;
diff --git a/pkgs/tools/networking/termshark/default.nix b/pkgs/tools/networking/termshark/default.nix
index a24ff25ef2b..35b92e0f653 100644
--- a/pkgs/tools/networking/termshark/default.nix
+++ b/pkgs/tools/networking/termshark/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, makeWrapper, buildGoModule, wireshark-cli, Security }:
+{ stdenv, fetchFromGitHub, makeWrapper, buildGoModule, wireshark-cli }:
 
 buildGoModule rec {
   pname = "termshark";
@@ -12,8 +12,7 @@ buildGoModule rec {
   };
 
   nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ wireshark-cli ]
-    ++ stdenv.lib.optionals stdenv.isDarwin [ Security ];
+  buildInputs = [ wireshark-cli ];
 
   modSha256 = "0lp4gky76di7as78421p3lsirfr7mic3z204ildvj6gf6d15svpr";
 
diff --git a/pkgs/tools/networking/ubridge/default.nix b/pkgs/tools/networking/ubridge/default.nix
index 42839a8ba2f..c628a2c8a8c 100644
--- a/pkgs/tools/networking/ubridge/default.nix
+++ b/pkgs/tools/networking/ubridge/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "ubridge";
-  version = "0.9.16";
+  version = "0.9.18";
 
   src = fetchFromGitHub {
     owner = "GNS3";
     repo = "ubridge";
     rev = "v${version}";
-    sha256 = "1bind7ylgxs743vfdmpdrpp4iamy461bc3i7nxza91kj7hyyjz6h";
+    sha256 = "0jg66jhhpv4c9340fsdp64hf9h253i8r81fknxa0gq241ripp3jn";
   };
 
   postPatch = ''
@@ -33,6 +33,7 @@ stdenv.mkDerivation rec {
       and TAP interfaces is supported. Packet capture is also supported.
     '';
     inherit (src.meta) homepage;
+    changelog = "https://github.com/GNS3/ubridge/releases/tag/v${version}";
     license = licenses.gpl3Plus;
     platforms = platforms.linux;
     maintainers = with maintainers; [ primeos ];
diff --git a/pkgs/tools/networking/uget/default.nix b/pkgs/tools/networking/uget/default.nix
index b2da1384557..f8c585c3b25 100644
--- a/pkgs/tools/networking/uget/default.nix
+++ b/pkgs/tools/networking/uget/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "uget";
-  version = "2.2.2";
+  version = "2.2.3-1";
 
   src = fetchurl {
     url = "mirror://sourceforge/urlget/${pname}-${version}.tar.gz";
-    sha256 = "1hmzk907blgzc1z6wv4zbzqrwad06zfm1rqc3svh5garxw8z7xsw";
+    sha256 = "0jchvgkkphhwp2z7vd4axxr9ns8b6vqc22b2z8a906qm8916wd8i";
   };
 
   nativeBuildInputs = [
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
       thinking that it "might be too powerful" because remember power is good
       and lightweight power is uGet!
     '';
-    homepage = http://www.ugetdm.com;
+    homepage = "http://www.ugetdm.com";
     license = licenses.lgpl21;
     platforms = platforms.unix;
     maintainers = with maintainers; [ romildo ];
diff --git a/pkgs/tools/networking/unbound/default.nix b/pkgs/tools/networking/unbound/default.nix
index 18d9defdd94..e7493ada058 100644
--- a/pkgs/tools/networking/unbound/default.nix
+++ b/pkgs/tools/networking/unbound/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "unbound";
-  version = "1.9.5";
+  version = "1.10.0";
 
   src = fetchurl {
     url = "https://unbound.net/downloads/${pname}-${version}.tar.gz";
-    sha256 = "0myv8l886gmlh9nh4j3q5549idxnl51hf9cw20yxfqbwd47l13ca";
+    sha256 = "0mg9divpysr42sp0m693a70693dp8025v6c9dv1yabr4g1jlhbqm";
   };
 
   # https://github.com/NLnetLabs/unbound/pull/90
diff --git a/pkgs/tools/networking/v2ray/default.nix b/pkgs/tools/networking/v2ray/default.nix
index 5d1cd4540d7..762d68acdb1 100644
--- a/pkgs/tools/networking/v2ray/default.nix
+++ b/pkgs/tools/networking/v2ray/default.nix
@@ -3,20 +3,20 @@
 , ... } @ args:
 
 callPackage ./generic.nix (rec {
-  version = "4.22.1";
+  version = "4.23.0";
 
   src = fetchFromGitHub {
     owner = "v2ray";
     repo = "v2ray-core";
     rev = "v${version}";
-    sha256 = "0l4rg9galjcm6dzv7sapnim9a02z7pv354mk5mwqndznii6nkr73";
+    sha256 = "0if53d1blj1wf572z21dsywx6czbmhs5dpccx5z1knjhh2xgg9lm";
   };
 
   assets = {
     # MIT licensed
     "geoip.dat" = let
-      geoipRev = "202001210102";
-      geoipSha256 = "1wxhrhrigjqzpy5w8yj7yd9ib245xwhqys2pf9prdknq71piyziz";
+      geoipRev = "202003180002";
+      geoipSha256 = "08d383phc5qk7glq25nkf1g8za38415x2952phy525ail88afpwl";
     in fetchurl {
       url = "https://github.com/v2ray/geoip/releases/download/${geoipRev}/geoip.dat";
       sha256 = geoipSha256;
@@ -24,8 +24,8 @@ callPackage ./generic.nix (rec {
 
     # MIT licensed
     "geosite.dat" = let
-      geositeRev = "202001211332";
-      geositeSha256 = "06qlbjxk21lhyh5l3pd8l4m9rdl7sjh2jriz51zihaqx4417f0m7";
+      geositeRev = "202003221514";
+      geositeSha256 = "1d4gv6714m97i57srrzybnmc4322qv5lypkqbmhcxb8bi4ljpf1m";
     in fetchurl {
       url = "https://github.com/v2ray/domain-list-community/releases/download/${geositeRev}/dlc.dat";
       sha256 = geositeSha256;
diff --git a/pkgs/tools/networking/yggdrasil/default.nix b/pkgs/tools/networking/yggdrasil/default.nix
index 605801b6ab7..91b08015327 100644
--- a/pkgs/tools/networking/yggdrasil/default.nix
+++ b/pkgs/tools/networking/yggdrasil/default.nix
@@ -1,19 +1,17 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Foundation }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "yggdrasil";
-  version = "0.3.13";
+  version = "0.3.14";
 
   src = fetchFromGitHub {
     owner = "yggdrasil-network";
     repo = "yggdrasil-go";
     rev = "v${version}";
-    sha256 = "1k3xxarrl33sxik1dqahfllrhd501xqq5q5mcn4y5wi9lwywsy50";
+    sha256 = "147kl2kvv1rn3yk0mlvd998a2yayjl07csxxkjvs6264j6csb860";
   };
 
-  modSha256 = "057yl3i29kwpd129aa2rb67s5rmz898fi2a7lxv3nfjp7018s9qw";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Foundation ];
+  modSha256 = "1ffp7q7kbkm1312sz6xnpc7342iczy9vj3m76lflirr1ljmw0dnb";
 
   # Change the default location of the management socket on Linux
   # systems so that the yggdrasil system service unit does not have to
@@ -29,7 +27,7 @@ buildGoModule rec {
       -s -w
   '';
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description =
       "An experiment in scalable routing as an encrypted IPv6 overlay network";
     homepage = "https://yggdrasil-network.github.io/";
diff --git a/pkgs/tools/nix/cached-nix-shell/default.nix b/pkgs/tools/nix/cached-nix-shell/default.nix
new file mode 100644
index 00000000000..dc69d3f030d
--- /dev/null
+++ b/pkgs/tools/nix/cached-nix-shell/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchFromGitHub, openssl, pkgconfig, ronn, rustPlatform }:
+
+let 
+  blake3-src = fetchFromGitHub {
+    owner = "BLAKE3-team";
+    repo = "BLAKE3";
+    rev = "0.3.1";
+    sha256 = "0wkxx2w56hsng28p8zpndsy288ix4s5qg6xqjzgjz53fbyk46hda";
+  };
+
+in rustPlatform.buildRustPackage rec {
+  pname = "cached-nix-shell";
+  version = "0.1.2";
+
+  src = fetchFromGitHub {
+    owner = "xzfc";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0pzwknpc4qrh9pv5z0xvldql2dkj9ddksvaci86a4f8cnd86p2l6";
+  };
+
+  cargoSha256 = "1n88gcnrfdrk025hb54igc83cn5vlv8n6ndyx1ydmzhd95vhbznf";
+
+  # The BLAKE3 C library is intended to be built by the project depending on it
+  # rather than as a standalone library.
+  # https://github.com/BLAKE3-team/BLAKE3/blob/0.3.1/c/README.md#building
+  BLAKE3_CSRC = "${blake3-src}/c";
+
+  nativeBuildInputs = [ ronn ];
+
+  postBuild = ''
+    ronn -r cached-nix-shell.1.md
+  '';
+
+  postInstall = ''
+    mkdir -p $out/lib $out/share/cached-nix-shell $out/share/man/man1 $out/var/empty
+    cp target/release/build/cached-nix-shell-*/out/trace-nix.so $out/lib
+    cp rcfile.sh $out/share/cached-nix-shell/rcfile.sh
+    cp cached-nix-shell.1 $out/share/man/man1
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Instant startup time for nix-shell";
+    homepage = "https://github.com/xzfc/cached-nix-shell";
+    license = with licenses; [ unlicense /* or */ mit ];
+    maintainers = with maintainers; [ xzfc ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/nix/nix-script/default.nix b/pkgs/tools/nix/nix-script/default.nix
index d69b5943123..dec5993f1b2 100644
--- a/pkgs/tools/nix/nix-script/default.nix
+++ b/pkgs/tools/nix/nix-script/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation {
   pname = "nix-script";
-  version = "2015-09-22";
+  version = "2020-03-23";
 
   src  = fetchFromGitHub {
     owner  = "bennofs";
     repo   = "nix-script";
-    rev    = "83064dc557b642f6748d4f2372b2c88b2a82c4e7";
-    sha256 = "0iwclyd2zz8lv012yghfr4696kdnsq6xvc91wv00jpwk2c09xl7a";
+    rev    = "7706b45429ff22c35bab575734feb2926bf8840b";
+    sha256 = "0yiqljamcj9x8z801bwj7r30sskrwv4rm6sdf39j83jqql1fyq7y";
   };
 
   buildInputs  = [
diff --git a/pkgs/tools/package-management/cargo-edit/default.nix b/pkgs/tools/package-management/cargo-edit/default.nix
index b15400e576e..2fdf8a99956 100644
--- a/pkgs/tools/package-management/cargo-edit/default.nix
+++ b/pkgs/tools/package-management/cargo-edit/default.nix
@@ -4,25 +4,27 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-edit";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "killercup";
     repo = pname;
     rev = "v${version}";
-    sha256 = "16gpljbzk6cibry9ssnl22xbcsx2cr57mrs3x3n6cfmldbp6bhbr";
+    sha256 = "19jnvsbddn52ibjv48jyfss25gg9mmvxzfhbr7s7bqyf3bq68jbm";
   };
 
-  cargoSha256 = "1zwkar914zyghky09lgk0s374m5d6yccn0m15bqlgxxyymg4b59y";
+  cargoSha256 = "0b06jsilj87rnr1qlarn29hnz0i9p455fdxg6nf6r2fli2xpv1f0";
 
   nativeBuildInputs = [ pkg-config ];
   buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ libiconv darwin.apple_sdk.frameworks.Security ];
 
+  doCheck = false; # integration tests depend on changing cargo config
+
   meta = with lib; {
     description = "A utility for managing cargo dependencies from the command line";
     homepage = https://github.com/killercup/cargo-edit;
-    license = with licenses; [ mit ];
-    maintainers = with maintainers; [ gerschtli jb55 filalex77 ];
+    license = with licenses; [ asl20 /* or */ mit ];
+    maintainers = with maintainers; [ gerschtli jb55 filalex77 killercup ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/tools/package-management/cargo-outdated/0001-Fix-outdated-Cargo.lock.patch b/pkgs/tools/package-management/cargo-outdated/0001-Fix-outdated-Cargo.lock.patch
deleted file mode 100644
index 4b8bc874e67..00000000000
--- a/pkgs/tools/package-management/cargo-outdated/0001-Fix-outdated-Cargo.lock.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From fd0ccac1b3d4f78faa4c642dc2a413dfb54200fd Mon Sep 17 00:00:00 2001
-From: Maximilian Bosch <maximilian@mbosch.me>
-Date: Wed, 11 Mar 2020 22:27:23 +0100
-Subject: [PATCH] Fix outdated Cargo.lock
-
----
- Cargo.lock | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Cargo.lock b/Cargo.lock
-index 8458954..8083e81 100644
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -171,7 +171,7 @@ dependencies = [
- 
- [[package]]
- name = "cargo-outdated"
--version = "0.9.6"
-+version = "0.9.7"
- dependencies = [
-  "cargo",
-  "docopt",
--- 
-2.25.0
-
diff --git a/pkgs/tools/package-management/cargo-outdated/default.nix b/pkgs/tools/package-management/cargo-outdated/default.nix
index 6f8a415c5cb..41b6d26d02d 100644
--- a/pkgs/tools/package-management/cargo-outdated/default.nix
+++ b/pkgs/tools/package-management/cargo-outdated/default.nix
@@ -1,22 +1,19 @@
-{ stdenv, fetchFromGitHub, rustPlatform, pkgconfig, openssl, libiconv, curl, darwin }:
+{ stdenv, fetchFromGitHub, rustPlatform, pkg-config, openssl, libiconv, curl, darwin }:
 
 rustPlatform.buildRustPackage rec {
   pname = "cargo-outdated";
-  version = "0.9.7";
+  version = "0.9.9";
 
   src = fetchFromGitHub {
     owner = "kbknapp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0g91cfja4h9qhpxgnimczjna528ml645iz7hgpwl6yp0742qcal4";
+    sha256 = "01yvkfclrynv7gpvdckzbcv03xr28yb4v6333a6nv6gy05p26g3a";
   };
 
-  # Can be removed when updating to the next release.
-  cargoPatches = [ ./0001-Fix-outdated-Cargo.lock.patch ];
+  cargoSha256 = "152f2f16d5vlww51aldvh1r2r4kx8ad5d48dc30xsfj669zzw24h";
 
-  cargoSha256 = "0pr57g41lnn8srcbc11sb15qchf01zwqcb1802xdayj6wlc3g3dy";
-
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkg-config ];
   buildInputs = [ openssl ]
   ++ stdenv.lib.optionals stdenv.isDarwin [
     darwin.apple_sdk.frameworks.Security
@@ -26,7 +23,7 @@ rustPlatform.buildRustPackage rec {
 
   meta = with stdenv.lib; {
     description = "A cargo subcommand for displaying when Rust dependencies are out of date";
-    homepage = https://github.com/kbknapp/cargo-outdated;
+    homepage = "https://github.com/kbknapp/cargo-outdated";
     license = with licenses; [ asl20 /* or */ mit ];
     platforms = platforms.all;
     maintainers = with maintainers; [ sondr3 ivan ];
diff --git a/pkgs/tools/package-management/cargo-update/default.nix b/pkgs/tools/package-management/cargo-update/default.nix
index c0a1e8edc0f..8dc07d287d2 100644
--- a/pkgs/tools/package-management/cargo-update/default.nix
+++ b/pkgs/tools/package-management/cargo-update/default.nix
@@ -23,8 +23,8 @@ rustPlatform.buildRustPackage rec {
   cargoPatches = [ ./0001-Generate-lockfile-for-cargo-update-v3.0.0.patch ];
   cargoSha256 = "034v1ql5k3n3rgi3aqszkybvv3vc80v263c9nlwxcwbswsh9jpp1";
 
-  nativeBuildInputs = [ cmake ];
-  buildInputs = [ libgit2 libssh2 openssl pkg-config zlib ]
+  nativeBuildInputs = [ cmake pkg-config ];
+  buildInputs = [ libgit2 libssh2 openssl zlib ]
     ++ stdenv.lib.optional stdenv.isDarwin curl;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/package-management/elm-github-install/Gemfile.lock b/pkgs/tools/package-management/elm-github-install/Gemfile.lock
index a551368eade..5b586256278 100644
--- a/pkgs/tools/package-management/elm-github-install/Gemfile.lock
+++ b/pkgs/tools/package-management/elm-github-install/Gemfile.lock
@@ -36,4 +36,4 @@ DEPENDENCIES
   elm_install
 
 BUNDLED WITH
-   1.14.4
+   2.1.4
diff --git a/pkgs/tools/package-management/emplace/default.nix b/pkgs/tools/package-management/emplace/default.nix
index 8845c54b571..bb91697ab57 100644
--- a/pkgs/tools/package-management/emplace/default.nix
+++ b/pkgs/tools/package-management/emplace/default.nix
@@ -2,22 +2,21 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "emplace";
-  version = "0.2.12";
+  version = "0.2.15";
 
   src = fetchFromGitHub {
     owner = "tversteeg";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1jhv7c68ymwaq9fr586rjbgcaxpkxcr0d3pq7lyhbzihaywz7m6m";
+    sha256 = "1h1z18m504kflzv9wcybkgc4xr5w9l9d7qsjri0an57lxv6dpv0f";
   };
 
-  cargoSha256 = "1n4k8mnsix3sy6pmqkk7wymknn1mn5dkwa9i90nlb4k2h9y709wj";
+  cargoSha256 = "1wfxy4py2xwf1m0i52jq1f9xgzc7v5m55crl0xbp8f0raflksaxk";
 
   meta = with lib; {
     description = "Mirror installed software on multiple machines";
     homepage = "https://github.com/tversteeg/emplace";
     license = licenses.agpl3;
     maintainers = with maintainers; [ filalex77 ];
-    platforms = platforms.all;
   };
 }
diff --git a/pkgs/tools/package-management/fpm/Gemfile.lock b/pkgs/tools/package-management/fpm/Gemfile.lock
index 1045c7b495a..c8bb7d36413 100644
--- a/pkgs/tools/package-management/fpm/Gemfile.lock
+++ b/pkgs/tools/package-management/fpm/Gemfile.lock
@@ -44,4 +44,4 @@ DEPENDENCIES
   fpm
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/package-management/home-manager/default.nix b/pkgs/tools/package-management/home-manager/default.nix
index 3fb14f99faf..8c70a5a4724 100644
--- a/pkgs/tools/package-management/home-manager/default.nix
+++ b/pkgs/tools/package-management/home-manager/default.nix
@@ -6,13 +6,13 @@
 stdenv.mkDerivation rec {
 
   pname = "home-manager";
-  version = "2020-03-07";
+  version = "2020-03-17";
 
   src = fetchFromGitHub {
     owner = "rycee";
     repo = "home-manager";
-    rev = "5c1e7349bbd9b51fe41ea96b67c380feef996b90";
-    sha256 = "03lw5pq878zbkkwm5abr01p77radn2zgfyvwlra7fhywbl76l83x";
+    rev = "5969551a5cc52f9470b5ff5ca01327bf4bda82c1";
+    sha256 = "0f4kz83a1kp3ci8zi5hvp8fp34wi73arpykl4d9vlywdk6w36bnd";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -28,12 +28,15 @@ stdenv.mkDerivation rec {
       --subst-var-by gnused "${gnused}" \
       --subst-var-by less "${less}" \
       --subst-var-by HOME_MANAGER_PATH '${src}'
+
+    install -D -m755 home-manager/completion.bash \
+      "$out/share/bash-completion/completions/home-manager"
   '';
 
   meta = with stdenv.lib; {
     description = "A user environment configurator";
     maintainers = with maintainers; [ rycee ];
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     license = licenses.mit;
   };
 
diff --git a/pkgs/tools/package-management/morph/default.nix b/pkgs/tools/package-management/morph/default.nix
index d0cd7127c50..a1d2f15ad13 100644
--- a/pkgs/tools/package-management/morph/default.nix
+++ b/pkgs/tools/package-management/morph/default.nix
@@ -14,8 +14,7 @@ buildGoPackage rec {
   goPackagePath = "github.com/dbcdk/morph";
   goDeps = ./deps.nix;
 
-  nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ go-bindata ];
+  nativeBuildInputs = [ makeWrapper go-bindata ];
 
   buildFlagsArray = ''
     -ldflags=
diff --git a/pkgs/tools/package-management/mynewt-newt/default.nix b/pkgs/tools/package-management/mynewt-newt/default.nix
index 6afba001e08..b40257d42f4 100644
--- a/pkgs/tools/package-management/mynewt-newt/default.nix
+++ b/pkgs/tools/package-management/mynewt-newt/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, fetchpatch, Security }:
+{ stdenv, buildGoModule, fetchFromGitHub, fetchpatch }:
 
 buildGoModule rec {
   pname = "mynewt-newt";
@@ -24,8 +24,6 @@ buildGoModule rec {
 
   modSha256 = "068r8wa2pgd68jv50x0l1w8n96f97b3mgv7z6f85280ahgywaasq";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   meta = with stdenv.lib; {
     homepage = https://mynewt.apache.org/;
     description = "Build and package management tool for embedded development.";
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index 29af4a90cb9..8260f2e83c3 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchurl, callPackage
+{ lib, fetchurl, fetchFromGitHub, callPackage
 , storeDir ? "/nix/store"
 , stateDir ? "/nix/var"
 , confDir ? "/etc"
@@ -12,6 +12,7 @@ common =
   { lib, stdenv, fetchpatch, perl, curl, bzip2, sqlite, openssl ? null, xz
   , bash, coreutils, gzip, gnutar
   , pkgconfig, boehmgc, perlPackages, libsodium, brotli, boost, editline, nlohmann_json
+  , autoreconfHook, autoconf-archive, bison, flex, libxml2, libxslt, docbook5, docbook_xsl_ns
   , jq, libarchive, rustc, cargo
   , busybox-sandbox-shell
   , storeDir
@@ -20,7 +21,7 @@ common =
   , withLibseccomp ? lib.any (lib.meta.platformMatch stdenv.hostPlatform) libseccomp.meta.platforms, libseccomp
   , withAWS ? stdenv.isLinux || stdenv.isDarwin, aws-sdk-cpp
 
-  , name, suffix ? "", src, includesPerl ? false
+  , name, suffix ? "", src, crates ? null
 
   }:
   let
@@ -29,7 +30,6 @@ common =
       inherit name src;
       version = lib.getVersion name;
 
-      is20 = lib.versionAtLeast version "2.0pre";
       is24 = lib.versionAtLeast version "2.4pre";
       isExactly23 = lib.versionAtLeast version "2.3" && lib.versionOlder version "2.4";
 
@@ -39,15 +39,16 @@ common =
 
       nativeBuildInputs =
         [ pkgconfig ]
-        ++ lib.optionals (!is20) [ curl perl ]
-        ++ lib.optionals is24 [ jq ];
+        ++ lib.optionals is24 [ autoreconfHook autoconf-archive bison flex libxml2 libxslt docbook5 docbook_xsl_ns jq ];
 
-      buildInputs = [ curl openssl sqlite xz bzip2 nlohmann_json ]
+      buildInputs =
+        [ curl openssl sqlite xz bzip2 nlohmann_json
+          brotli boost editline
+        ]
         ++ lib.optional (stdenv.isLinux || stdenv.isDarwin) libsodium
-        ++ lib.optionals is20 [ brotli boost editline ]
         ++ lib.optionals is24 [ libarchive rustc cargo ]
         ++ lib.optional withLibseccomp libseccomp
-        ++ lib.optional (withAWS && is20)
+        ++ lib.optional withAWS
             ((aws-sdk-cpp.override {
               apis = ["s3" "transfer"];
               customMemoryManagement = false;
@@ -66,7 +67,7 @@ common =
       preConfigure =
         # Copy libboost_context so we don't get all of Boost in our closure.
         # https://github.com/NixOS/nixpkgs/issues/45462
-        lib.optionalString is20 ''
+        ''
           mkdir -p $out/lib
           cp -pd ${boost}/lib/{libboost_context*,libboost_thread*,libboost_system*} $out/lib
           rm -f $out/lib/*.a
@@ -75,6 +76,11 @@ common =
             patchelf --set-rpath $out/lib:${stdenv.cc.cc.lib}/lib $out/lib/libboost_thread.so.*
           ''}
         '' +
+        # Unpack the Rust crates.
+        lib.optionalString is24 ''
+          tar xvf ${crates} -C nix-rust/
+          mv nix-rust/nix-vendored-crates* nix-rust/vendor
+        '' +
         # For Nix-2.3, patch around an issue where the Nix configure step pulls in the
         # build system's bash and other utilities when cross-compiling
         lib.optionalString (stdenv.buildPlatform != stdenv.hostPlatform && isExactly23) ''
@@ -97,12 +103,7 @@ common =
           "--disable-init-state"
           "--enable-gc"
         ]
-        ++ lib.optionals (!is20) [
-          "--with-dbi=${perlPackages.DBI}/${perl.libPrefix}"
-          "--with-dbd-sqlite=${perlPackages.DBDSQLite}/${perl.libPrefix}"
-          "--with-www-curl=${perlPackages.WWWCurl}/${perl.libPrefix}"
-          "BDW_GC_LIBS=\"-lgc -lgccpp\""
-        ] ++ lib.optionals (is20 && stdenv.isLinux) [
+        ++ lib.optionals stdenv.isLinux [
           "--with-sandbox-shell=${sh}/bin/busybox"
         ]
         ++ lib.optional (
@@ -143,7 +144,7 @@ common =
       };
 
       passthru = {
-        perl-bindings = if includesPerl then nix else stdenv.mkDerivation {
+        perl-bindings = stdenv.mkDerivation {
           pname = "nix-perl";
           inherit version;
 
@@ -154,8 +155,7 @@ common =
           # This is not cross-compile safe, don't have time to fix right now
           # but noting for future travellers.
           nativeBuildInputs =
-            [ perl pkgconfig curl nix libsodium ]
-            ++ lib.optional is20 boost;
+            [ perl pkgconfig curl nix libsodium boost autoreconfHook autoconf-archive ];
 
           configureFlags =
             [ "--with-dbi=${perlPackages.DBI}/${perl.libPrefix}"
@@ -174,19 +174,6 @@ in rec {
 
   nix = nixStable;
 
-  nix1 = callPackage common rec {
-    name = "nix-1.11.16";
-    src = fetchurl {
-      url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
-      sha256 = "0ca5782fc37d62238d13a620a7b4bff6a200bab1bd63003709249a776162357c";
-    };
-
-    # Nix1 has the perl bindings by default, so no need to build the manually.
-    includesPerl = true;
-
-    inherit storeDir stateDir confDir boehmgc;
-  };
-
   nixStable = callPackage common (rec {
     name = "nix-2.3.3";
     src = fetchurl {
@@ -201,10 +188,18 @@ in rec {
 
   nixUnstable = lib.lowPrio (callPackage common rec {
     name = "nix-2.4${suffix}";
-    suffix = "pre7250_94c93437";
-    src = fetchurl {
-      url = "https://hydra.nixos.org/build/112193977/download/3/nix-2.4${suffix}.tar.xz";
-      sha256 = "f9baf241c9449c1e3e5c9610adbcd2ce9e5fbcab16aff3ba3030d2fad7b34d7b";
+    suffix = "pre7346_5e7ccdc9";
+
+    src = fetchFromGitHub {
+      owner = "NixOS";
+      repo = "nix";
+      rev = "5e7ccdc9e3ddd61dc85e20c898001345bfb497a5";
+      sha256 = "10jg0rq92xbigbbri7harn4b75blqaf6rjgq4hhvlnggf2w9iprg";
+    };
+
+    crates = fetchurl {
+      url = https://hydra.nixos.org/build/115942497/download/1/nix-vendored-crates-2.4pre20200403_3473b19.tar.xz;
+      sha256 = "a83785553bb4bc5b28220562153e201ec555a00171466ac08b716f0c97aee45a";
     };
 
     inherit storeDir stateDir confDir boehmgc;
@@ -212,10 +207,18 @@ in rec {
 
   nixFlakes = lib.lowPrio (callPackage common rec {
     name = "nix-2.4${suffix}";
-    suffix = "pre20200220_4a4521f";
-    src = fetchurl {
-      url = "https://hydra.nixos.org/build/113373394/download/3/nix-2.4${suffix}.tar.xz";
-      sha256 = "31fe87c40f40a590bc8f575283725d5f04ecb9aebb6b404f679d77438d75265d";
+    suffix = "pre20200403_3473b19";
+
+    src = fetchFromGitHub {
+      owner = "NixOS";
+      repo = "nix";
+      rev = "3473b1950a90d596a3baa080fdfdb080f55a5cc0";
+      sha256 = "1bb7a8a5lzmb3pzq80zxd3s9y3qv757q7032s5wvp75la9wgvmvr";
+    };
+
+    crates = fetchurl {
+      url = https://hydra.nixos.org/build/115942497/download/1/nix-vendored-crates-2.4pre20200403_3473b19.tar.xz;
+      sha256 = "a83785553bb4bc5b28220562153e201ec555a00171466ac08b716f0c97aee45a";
     };
 
     inherit storeDir stateDir confDir boehmgc;
diff --git a/pkgs/tools/package-management/packagekit/default.nix b/pkgs/tools/package-management/packagekit/default.nix
index dc69ae457dc..bd80d4a9350 100644
--- a/pkgs/tools/package-management/packagekit/default.nix
+++ b/pkgs/tools/package-management/packagekit/default.nix
@@ -1,7 +1,6 @@
 { stdenv, fetchFromGitHub, lib
 , intltool, glib, pkgconfig, polkit, python3, sqlite
 , gobject-introspection, vala, gtk-doc, autoreconfHook, autoconf-archive
-# TODO: set enableNixBackend to true, as soon as it builds
 , nix, enableNixBackend ? false, boost
 , enableCommandNotFound ? false
 , enableBashCompletion ? false, bash-completion ? null
@@ -23,7 +22,9 @@ stdenv.mkDerivation rec {
   buildInputs = [ glib polkit python3 gobject-introspection ]
                   ++ lib.optional enableSystemd systemd
                   ++ lib.optional enableBashCompletion bash-completion;
-  propagatedBuildInputs = [ sqlite nix boost ];
+  propagatedBuildInputs =
+    [ sqlite boost ]
+    ++ lib.optional enableNixBackend nix;
   nativeBuildInputs = [ vala intltool pkgconfig autoreconfHook autoconf-archive gtk-doc ];
 
   preAutoreconf = ''
diff --git a/pkgs/tools/security/acsccid/default.nix b/pkgs/tools/security/acsccid/default.nix
index 80fa0e2dc47..5b79b3db705 100644
--- a/pkgs/tools/security/acsccid/default.nix
+++ b/pkgs/tools/security/acsccid/default.nix
@@ -1,4 +1,16 @@
-{ stdenv, fetchFromGitHub, autoconf, automake, libtool, gettext, flex, perl, pkgconfig, pcsclite, libusb, libiconv }:
+{ stdenv
+, fetchFromGitHub
+, autoconf
+, automake
+, libtool
+, gettext
+, flex
+, perl
+, pkgconfig
+, pcsclite
+, libusb1
+, libiconv
+}:
 
 stdenv.mkDerivation rec {
   version = "1.1.8";
@@ -11,11 +23,28 @@ stdenv.mkDerivation rec {
     sha256 = "12aahrvsk21qgpjwcrr01s742ixs44nmjkvcvqyzhqb307x1rrn3";
   };
 
-  doCheck = true;
+  nativeBuildInputs = [
+    pkgconfig
+    autoconf
+    automake
+    libtool
+    gettext
+    flex
+    perl
+  ];
+
+  buildInputs = [
+    pcsclite
+    libusb1
+  ] ++ stdenv.lib.optionals stdenv.isDarwin [
+    libiconv
+  ];
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ pcsclite libusb autoconf automake libtool gettext flex perl ]
-                ++ stdenv.lib.optionals stdenv.isDarwin [ libiconv ];
+  configureFlags = [
+    "--enable-usbdropdir=${placeholder "out"}/pcsc/drivers"
+  ];
+
+  doCheck = true;
 
   postPatch = ''
     sed -e s_/bin/echo_echo_g -i src/Makefile.am
@@ -29,7 +58,6 @@ stdenv.mkDerivation rec {
     autoheader
     automake --force-missing --add-missing
     autoconf
-    configureFlags="$configureFlags --enable-usbdropdir=$out/pcsc/drivers"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/security/age/default.nix b/pkgs/tools/security/age/default.nix
index 0448faf53b7..bde597ba9f3 100644
--- a/pkgs/tools/security/age/default.nix
+++ b/pkgs/tools/security/age/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "age";
@@ -18,9 +18,7 @@ buildGoModule rec {
     sha256 = "1n1ww8yjw0mg00dvnfmggww9kwp1hls0a85iv6vx9k89mzv8mdrq";
   };
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     homepage = "https://age-encryption.org/";
     description = "Modern encryption tool with small explicit keys";
     license = licenses.bsd3;
diff --git a/pkgs/tools/security/bettercap/default.nix b/pkgs/tools/security/bettercap/default.nix
index d0cda57e2d0..0560f91b22b 100644
--- a/pkgs/tools/security/bettercap/default.nix
+++ b/pkgs/tools/security/bettercap/default.nix
@@ -1,29 +1,35 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, pkgconfig, libpcap, libnfnetlink, libnetfilter_queue, libusb1 }:
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, pkg-config
+, libpcap
+, libnfnetlink
+, libnetfilter_queue
+, libusb1
+}:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "bettercap";
-  version = "2.26.1";
-
-  goPackagePath = "github.com/bettercap/bettercap";
+  version = "2.27";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "10qsknyzfpzfpm4gp98jwvw6qmkmx23nw88sbnpl2rlr725l560c";
+    sha256 = "18hwz9m16pxlb7wp78iqmdi0kimrx3h05fs0zhzm8qhzancq8alf";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libpcap libnfnetlink libnetfilter_queue libusb1 ];
+  modSha256 = "1qhmrjb3fvw6maxrl7hb3bizrw6szhwx6s2g59p5pj3dz4x8jajn";
 
-  goDeps = ./deps.nix;
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ libpcap libnfnetlink libnetfilter_queue libusb1 ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "A man in the middle tool";
     longDescription = ''
       BetterCAP is a powerful, flexible and portable tool created to perform various types of MITM attacks against a network, manipulate HTTP, HTTPS and TCP traffic in realtime, sniff for credentials and much more.
-    '' ;
-    homepage = https://www.bettercap.org/;
+    '';
+    homepage = "https://www.bettercap.org/";
     license = with licenses; gpl3;
     maintainers = with maintainers; [ y0no ];
     platforms = platforms.all;
diff --git a/pkgs/tools/security/bettercap/deps.nix b/pkgs/tools/security/bettercap/deps.nix
deleted file mode 100644
index 12aeb1918c6..00000000000
--- a/pkgs/tools/security/bettercap/deps.nix
+++ /dev/null
@@ -1,534 +0,0 @@
-# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
-[
-  {
-    goPackagePath = "github.com/BurntSushi/toml";
-    fetch = {
-      type = "git";
-      url = "https://github.com/BurntSushi/toml";
-      rev = "v0.3.1";
-      sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6";
-    };
-  }
-  {
-    goPackagePath = "github.com/adrianmo/go-nmea";
-    fetch = {
-      type = "git";
-      url = "https://github.com/adrianmo/go-nmea";
-      rev = "v1.1.0";
-      sha256 = "167iwpwdwfbyghqfrzdfvfpvsmj92x7qqy6sx6yngdw21wd0m44f";
-    };
-  }
-  {
-    goPackagePath = "github.com/antchfx/jsonquery";
-    fetch = {
-      type = "git";
-      url = "https://github.com/antchfx/jsonquery";
-      rev = "v1.0.0";
-      sha256 = "04xk7ib059xzl1y87ah41q7vzl3xp99mq8nyccx8hlsng1nc0haw";
-    };
-  }
-  {
-    goPackagePath = "github.com/antchfx/xpath";
-    fetch = {
-      type = "git";
-      url = "https://github.com/antchfx/xpath";
-      rev = "v1.1.0";
-      sha256 = "0bgin15841q009yxbyqfqk5b2yk2f4a1mswjkgiqxgarmql0mpsy";
-    };
-  }
-  {
-    goPackagePath = "github.com/bettercap/gatt";
-    fetch = {
-      type = "git";
-      url = "https://github.com/bettercap/gatt";
-      rev = "569d3d9372bb";
-      sha256 = "0ncg6wd4wkr12l4bs7vyyrd08imyd5y1vdyp7f9shjq9nzv3rzcz";
-    };
-  }
-  {
-    goPackagePath = "github.com/bettercap/nrf24";
-    fetch = {
-      type = "git";
-      url = "https://github.com/bettercap/nrf24";
-      rev = "aa37e6d0e0eb";
-      sha256 = "1y6ffcj94hk7slajqw3lqpdxzx6iqpj2i2zpsvggg6kfaa1iklnj";
-    };
-  }
-  {
-    goPackagePath = "github.com/bettercap/readline";
-    fetch = {
-      type = "git";
-      url = "https://github.com/bettercap/readline";
-      rev = "9cec905dd291";
-      sha256 = "1lsnyckg2l78hz4la8dhwvjsyff706khw10nxds5afzl4mrih3vn";
-    };
-  }
-  {
-    goPackagePath = "github.com/bettercap/recording";
-    fetch = {
-      type = "git";
-      url = "https://github.com/bettercap/recording";
-      rev = "3ce1dcf032e3";
-      sha256 = "1arh12iz15anyrqr4q496lpd0gx5nf2cwyr5rv17rawqqz8ydg23";
-    };
-  }
-  {
-    goPackagePath = "github.com/chifflier/nfqueue-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/chifflier/nfqueue-go";
-      rev = "61ca646babef";
-      sha256 = "1i1q2xl86f3s9x3j2ffxprwqhcrkh4w23hh4ib7jksxvaq36v33l";
-    };
-  }
-  {
-    goPackagePath = "github.com/chzyer/logex";
-    fetch = {
-      type = "git";
-      url = "https://github.com/chzyer/logex";
-      rev = "v1.1.10";
-      sha256 = "08pbjj3wx9acavlwyr055isa8a5hnmllgdv5k6ra60l5y1brmlq4";
-    };
-  }
-  {
-    goPackagePath = "github.com/chzyer/test";
-    fetch = {
-      type = "git";
-      url = "https://github.com/chzyer/test";
-      rev = "a1ea475d72b1";
-      sha256 = "0rns2aqk22i9xsgyap0pq8wi4cfaxsri4d9q6xxhhyma8jjsnj2k";
-    };
-  }
-  {
-    goPackagePath = "github.com/davecgh/go-spew";
-    fetch = {
-      type = "git";
-      url = "https://github.com/davecgh/go-spew";
-      rev = "v1.1.1";
-      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
-    };
-  }
-  {
-    goPackagePath = "github.com/dustin/go-humanize";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dustin/go-humanize";
-      rev = "v1.0.0";
-      sha256 = "1kqf1kavdyvjk7f8kx62pnm7fbypn9z1vbf8v2qdh3y7z7a0cbl3";
-    };
-  }
-  {
-    goPackagePath = "github.com/elazarl/goproxy";
-    fetch = {
-      type = "git";
-      url = "https://github.com/elazarl/goproxy";
-      rev = "473e67f1d7d2";
-      sha256 = "1xsrdlcgl088phanm81pskym2ry8z1nizvq3lsq0c7cvzb6mrw4p";
-    };
-  }
-  {
-    goPackagePath = "github.com/evilsocket/islazy";
-    fetch = {
-      type = "git";
-      url = "https://github.com/evilsocket/islazy";
-      rev = "v1.10.4";
-      sha256 = "1ayc4di6584yajybh724mcmng069q38j1dpljgi8fhsyhb4sila3";
-    };
-  }
-  {
-    goPackagePath = "github.com/gobwas/glob";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gobwas/glob";
-      rev = "e7a84e9525fe";
-      sha256 = "1v6vjklq06wqddv46ihajahaj1slv0imgaivlxr8bsx59i90js5q";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/go-github";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-github";
-      rev = "v17.0.0";
-      sha256 = "1kvw95l77a5n5rgal9n1xjh58zxb3a40ij1j722b1h4z8yg9jhg4";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/go-querystring";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/go-querystring";
-      rev = "v1.0.0";
-      sha256 = "0xl12bqyvmn4xcnf8p9ksj9rmnr7s40pvppsdmy8n9bzw1db0iwz";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/gopacket";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/gopacket";
-      rev = "v1.1.17";
-      sha256 = "192af5z18nnafn35gdy4wahlx6ggbhlnxzlm1yvxjxawfwnilidn";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/gousb";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/gousb";
-      rev = "18f4c1d8a750";
-      sha256 = "1i7ffkq395x0v1186j9bhfgy67wlq6s840xkyx8wn87w55yd05rh";
-    };
-  }
-  {
-    goPackagePath = "github.com/google/renameio";
-    fetch = {
-      type = "git";
-      url = "https://github.com/google/renameio";
-      rev = "v0.1.0";
-      sha256 = "1ki2x5a9nrj17sn092d6n4zr29lfg5ydv4xz5cp58z6cw8ip43jx";
-    };
-  }
-  {
-    goPackagePath = "github.com/gorilla/mux";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gorilla/mux";
-      rev = "v1.7.3";
-      sha256 = "0vr38zdad3zgg7q7nn24knl8axngj7cgmlwa93m17yhsnlvqi531";
-    };
-  }
-  {
-    goPackagePath = "github.com/gorilla/websocket";
-    fetch = {
-      type = "git";
-      url = "https://github.com/gorilla/websocket";
-      rev = "v1.4.1";
-      sha256 = "03n1n0nwz3k9qshmriycqznnnvd3dkzsfwpnfjzzvafjxk9kyapv";
-    };
-  }
-  {
-    goPackagePath = "github.com/hashicorp/mdns";
-    fetch = {
-      type = "git";
-      url = "https://github.com/hashicorp/mdns";
-      rev = "v1.0.1";
-      sha256 = "185zpyj1jf1jm7hihg73gqnspr0a359aqwv11v4a6mwd5bkdh19j";
-    };
-  }
-  {
-    goPackagePath = "github.com/inconshreveable/go-vhost";
-    fetch = {
-      type = "git";
-      url = "https://github.com/inconshreveable/go-vhost";
-      rev = "06d84117953b";
-      sha256 = "0wliilsybm7xf5h685a23rsm8bnlhkr332pkdkhf32q16sr1a9rk";
-    };
-  }
-  {
-    goPackagePath = "github.com/jpillora/go-tld";
-    fetch = {
-      type = "git";
-      url = "https://github.com/jpillora/go-tld";
-      rev = "f16ca3b7b383";
-      sha256 = "19v8bj14w0lcvysaw84klf5dg6ka351ixz9r6cd9mksdd80nvzcq";
-    };
-  }
-  {
-    goPackagePath = "github.com/kisielk/gotool";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kisielk/gotool";
-      rev = "v1.0.0";
-      sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn";
-    };
-  }
-  {
-    goPackagePath = "github.com/kr/binarydist";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/binarydist";
-      rev = "v0.1.0";
-      sha256 = "0hz1yqlxmkdib8xsdkkvn4ian4i69jmfapadim9fhj632d6jpi7w";
-    };
-  }
-  {
-    goPackagePath = "github.com/kr/pretty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/pretty";
-      rev = "v0.1.0";
-      sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp";
-    };
-  }
-  {
-    goPackagePath = "github.com/kr/pty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/pty";
-      rev = "v1.1.1";
-      sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6";
-    };
-  }
-  {
-    goPackagePath = "github.com/kr/text";
-    fetch = {
-      type = "git";
-      url = "https://github.com/kr/text";
-      rev = "v0.1.0";
-      sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1";
-    };
-  }
-  {
-    goPackagePath = "github.com/malfunkt/iprange";
-    fetch = {
-      type = "git";
-      url = "https://github.com/malfunkt/iprange";
-      rev = "v0.9.0";
-      sha256 = "0gv5w678r74jval675xp0y1hzpf7mm5m9apa1rz9krxc9zd0ycr8";
-    };
-  }
-  {
-    goPackagePath = "github.com/mattn/go-colorable";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-colorable";
-      rev = "v0.1.4";
-      sha256 = "1yxcz08kminqr1221zxpibnbzfcgs3fafin0z9zqb3gqvf74jywz";
-    };
-  }
-  {
-    goPackagePath = "github.com/mattn/go-isatty";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mattn/go-isatty";
-      rev = "v0.0.10";
-      sha256 = "0jf4hwfwd2cpxrlyv0jzcia809q2bjw7y1m3ciaj2s8lj2jqyf6r";
-    };
-  }
-  {
-    goPackagePath = "github.com/mdlayher/dhcp6";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mdlayher/dhcp6";
-      rev = "2a67805d7d0b";
-      sha256 = "0xn7canpik3lrz73dcz4jzapq1bfxpnashvjvnvshcpa2n1lh8yw";
-    };
-  }
-  {
-    goPackagePath = "github.com/mgutz/ansi";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mgutz/ansi";
-      rev = "9520e82c474b";
-      sha256 = "00bz22314j26736w1f0q4jy9d9dfaml17vn890n5zqy3cmvmww1j";
-    };
-  }
-  {
-    goPackagePath = "github.com/mgutz/logxi";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mgutz/logxi";
-      rev = "aebf8a7d67ab";
-      sha256 = "1f8sqibkzz9wfplvvblz9s0xvvmhkd2af8ghcsmjw8818gcrzsqx";
-    };
-  }
-  {
-    goPackagePath = "github.com/miekg/dns";
-    fetch = {
-      type = "git";
-      url = "https://github.com/miekg/dns";
-      rev = "v1.1.22";
-      sha256 = "1iv9jznakz8f5swiir0z4zilr9ypavnsc0g4zi1r0vad6npy7zfl";
-    };
-  }
-  {
-    goPackagePath = "github.com/mitchellh/go-homedir";
-    fetch = {
-      type = "git";
-      url = "https://github.com/mitchellh/go-homedir";
-      rev = "v1.1.0";
-      sha256 = "0ydzkipf28hwj2bfxqmwlww47khyk6d152xax4bnyh60f4lq3nx1";
-    };
-  }
-  {
-    goPackagePath = "github.com/pkg/errors";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pkg/errors";
-      rev = "v0.8.1";
-      sha256 = "0g5qcb4d4fd96midz0zdk8b9kz8xkzwfa8kr1cliqbg8sxsy5vd1";
-    };
-  }
-  {
-    goPackagePath = "github.com/pmezard/go-difflib";
-    fetch = {
-      type = "git";
-      url = "https://github.com/pmezard/go-difflib";
-      rev = "v1.0.0";
-      sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw";
-    };
-  }
-  {
-    goPackagePath = "github.com/robertkrimen/otto";
-    fetch = {
-      type = "git";
-      url = "https://github.com/robertkrimen/otto";
-      rev = "15f95af6e78d";
-      sha256 = "07j7l340lmqwpfscwyb8llk3k37flvs20a4a8vzc85f16xyd9npf";
-    };
-  }
-  {
-    goPackagePath = "github.com/rogpeppe/go-charset";
-    fetch = {
-      type = "git";
-      url = "https://github.com/rogpeppe/go-charset";
-      rev = "2471d30d28b4";
-      sha256 = "1cmkhwkqx1smnsvrr9ah2x5qav0i6vdiq8x4j8j812xspfl69zwx";
-    };
-  }
-  {
-    goPackagePath = "github.com/rogpeppe/go-internal";
-    fetch = {
-      type = "git";
-      url = "https://github.com/rogpeppe/go-internal";
-      rev = "v1.3.0";
-      sha256 = "0mcdh1licgnnahwml9y2iq6xy5x9xmjw5frcnds2s3wpjyqrl216";
-    };
-  }
-  {
-    goPackagePath = "github.com/stretchr/objx";
-    fetch = {
-      type = "git";
-      url = "https://github.com/stretchr/objx";
-      rev = "v0.1.0";
-      sha256 = "19ynspzjdynbi85xw06mh8ad5j0qa1vryvxjgvbnyrr8rbm4vd8w";
-    };
-  }
-  {
-    goPackagePath = "github.com/stretchr/testify";
-    fetch = {
-      type = "git";
-      url = "https://github.com/stretchr/testify";
-      rev = "v1.3.0";
-      sha256 = "0wjchp2c8xbgcbbq32w3kvblk6q6yn533g78nxl6iskq6y95lxsy";
-    };
-  }
-  {
-    goPackagePath = "github.com/tarm/serial";
-    fetch = {
-      type = "git";
-      url = "https://github.com/tarm/serial";
-      rev = "98f6abe2eb07";
-      sha256 = "1yj4jiv2f3x3iawxdflrlmdan0k9xsbnccgc9yz658rmif1ag3pb";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/crypto";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/crypto";
-      rev = "87dc89f01550";
-      sha256 = "0z4i1m2yn3f31ci7wvcm2rxkx2yiv7a78mfzklncmsz2k97rlh2g";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/mod";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/mod";
-      rev = "4bf6d317e70e";
-      sha256 = "19lg1ly3j31anx92p0hynic1gjk417wwxphfdrb2cq1c19kj3r17";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/net";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/net";
-      rev = "da9a3fd4c582";
-      sha256 = "0iavs400534jn7drmdphx0f18vgg060p2r59xw5d85ji1l5rin1l";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sync";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sync";
-      rev = "112230192c58";
-      sha256 = "05i2k43j2d0llq768hg5pf3hb2yhfzp9la1w5wp0rsnnzblr0lfn";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/sys";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/sys";
-      rev = "727590c5006e";
-      sha256 = "0891pfmc73hyr6hrsq1mkk3lasxa8fz4vlnljnzz6yihmhz9ab6a";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/text";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/text";
-      rev = "v0.3.2";
-      sha256 = "0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/tools";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/tools";
-      rev = "2ca718005c18";
-      sha256 = "1nl4cw8vrfigab0hij86vl2mmhfmyim69r7vy5qk2v60g8frvgxg";
-    };
-  }
-  {
-    goPackagePath = "golang.org/x/xerrors";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/xerrors";
-      rev = "a985d3407aa7";
-      sha256 = "00wzr5w8aadipgc3rkk8f11i41znskfj9ix5nhhaxyg7isrslgcj";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/check.v1";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/check.v1";
-      rev = "788fd7840127";
-      sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/errgo.v2";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/errgo.v2";
-      rev = "v2.1.0";
-      sha256 = "065mbihiy7q67wnql0bzl9y1kkvck5ivra68254zbih52jxwrgr2";
-    };
-  }
-  {
-    goPackagePath = "gopkg.in/sourcemap.v1";
-    fetch = {
-      type = "git";
-      url = "https://gopkg.in/sourcemap.v1";
-      rev = "v1.0.5";
-      sha256 = "08rf2dl13hbnm3fq2cm0nnsspy9fhf922ln23cz5463cv7h62as4";
-    };
-  }
-  {
-    goPackagePath = "honnef.co/go/tools";
-    fetch = {
-      type = "git";
-      url = "https://github.com/dominikh/go-tools";
-      rev = "v0.0.0-2019.2.1";
-      sha256 = "1frpy4pl9yp6j00mjj2yss3k8hip0cc7b5i5mz61n3dlw0kga9z1";
-    };
-  }
-]
diff --git a/pkgs/tools/security/bitwarden/default.nix b/pkgs/tools/security/bitwarden/default.nix
index 71f39eaf2ee..f2abc376cd2 100644
--- a/pkgs/tools/security/bitwarden/default.nix
+++ b/pkgs/tools/security/bitwarden/default.nix
@@ -16,11 +16,11 @@ let
   pname = "bitwarden";
 
   version = {
-    x86_64-linux = "1.17.0";
+    x86_64-linux = "1.17.2";
   }.${system} or "";
 
   sha256 = {
-    x86_64-linux = "01azgz1wka32z2jjdnbdyzm8fbrb34ifwirmjbvfw37yia28sd72";
+    x86_64-linux = "0v7lrwj3sdypnqayknwg0cg9c2gfsxbjic5wswkfxljy652x8izx";
   }.${system} or "";
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/security/bitwarden_rs/default.nix b/pkgs/tools/security/bitwarden_rs/default.nix
index cd71ea99fec..6accefa58a4 100644
--- a/pkgs/tools/security/bitwarden_rs/default.nix
+++ b/pkgs/tools/security/bitwarden_rs/default.nix
@@ -8,13 +8,13 @@ let
 
 in rustPlatform.buildRustPackage rec {
   pname = "bitwarden_rs";
-  version = "1.14";
+  version = "1.14.1";
 
   src = fetchFromGitHub {
     owner = "dani-garcia";
     repo = pname;
     rev = version;
-    sha256 = "1ck0l0167kw1i5fjn507g4d18x2krbpk2ks0lnw9vzg0bwnzzwwd";
+    sha256 = "10fi5vvckmdbjvlg6mlaqh2dsm33sbkq1z1b6gmz8qjbijc8i7gw";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -25,7 +25,7 @@ in rustPlatform.buildRustPackage rec {
 
   RUSTC_BOOTSTRAP = 1;
 
-  cargoSha256 = "0cgk61dmc057p82g0apd4sx6a8vhvcipxikrdb0hds4frhqsr6i8";
+  cargoSha256 = "1p8wpndj1aydhcjl15z3xhjf52a0l5rh5cy9qs6w4776crya2jjr";
   cargoBuildFlags = [ featuresFlag ];
 
   checkPhase = ''
diff --git a/pkgs/tools/security/bitwarden_rs/vault.nix b/pkgs/tools/security/bitwarden_rs/vault.nix
index 0ce9d43f967..43d8d3a9b11 100644
--- a/pkgs/tools/security/bitwarden_rs/vault.nix
+++ b/pkgs/tools/security/bitwarden_rs/vault.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bitwarden_rs-vault";
-  version = "2.12.0e";
+  version = "2.13.2";
 
   src = fetchurl {
     url = "https://github.com/dani-garcia/bw_web_builds/releases/download/v${version}/bw_web_v${version}.tar.gz";
-    sha256 = "1jy3c5ywlplrjsy37i90x5s8k0i5n1mn8y0fyl074s807glqaxbf";
+    sha256 = "1000iqjr670imm1dlw9r003d8psp5sq0m0p62sjnll7wnycd805r";
   };
 
   buildCommand = ''
diff --git a/pkgs/tools/security/bundler-audit/Gemfile.lock b/pkgs/tools/security/bundler-audit/Gemfile.lock
index 28cbcf5a9a6..107e425bc57 100644
--- a/pkgs/tools/security/bundler-audit/Gemfile.lock
+++ b/pkgs/tools/security/bundler-audit/Gemfile.lock
@@ -13,4 +13,4 @@ DEPENDENCIES
   bundler-audit
 
 BUNDLED WITH
-   1.14.6
+   2.1.4
diff --git a/pkgs/tools/security/chipsec/default.nix b/pkgs/tools/security/chipsec/default.nix
index 7d745630989..387fa4d750b 100644
--- a/pkgs/tools/security/chipsec/default.nix
+++ b/pkgs/tools/security/chipsec/default.nix
@@ -1,14 +1,14 @@
 { stdenv, lib, fetchFromGitHub, pythonPackages, nasm, libelf
 , kernel ? null, withDriver ? false }:
 pythonPackages.buildPythonApplication rec {
-  name = "chipsec-${version}";
-  version = "1.4.7";
+  pname = "chipsec";
+  version = "1.4.9";
 
   src = fetchFromGitHub {
     owner = "chipsec";
     repo = "chipsec";
     rev = version;
-    sha256 = "11qi4m4hqkylf1wd7f921r0p7xg5prpmfkmb7l9nn7sb95zz0sjr";
+    sha256 = "1p6w8294w5z2f4jwc22mqaggv5qajvmf9iifv7fl7wdz3wsvskrk";
   };
 
   nativeBuildInputs = [
@@ -33,7 +33,7 @@ pythonPackages.buildPythonApplication rec {
       Mac OS X and UEFI shell.
     '';
     license = licenses.gpl2;
-    homepage = https://github.com/chipsec/chipsec;
+    homepage = "https://github.com/chipsec/chipsec";
     maintainers = with maintainers; [ johnazoidberg ];
     platforms = if withDriver then [ "x86_64-linux" ] else platforms.all;
   };
diff --git a/pkgs/tools/security/chrome-token-signing/default.nix b/pkgs/tools/security/chrome-token-signing/default.nix
index 09c62d4b61a..19dd9e9819a 100644
--- a/pkgs/tools/security/chrome-token-signing/default.nix
+++ b/pkgs/tools/security/chrome-token-signing/default.nix
@@ -2,13 +2,13 @@
 
 mkDerivation rec {
   pname = "chrome-token-signing";
-  version = "1.1.1";
+  version = "1.1.2";
 
   src = fetchFromGitHub {
     owner = "open-eid";
     repo = "chrome-token-signing";
     rev = "v${version}";
-    sha256 = "1gh4gm0krz8m5vgwkjzg9al82rrrrsikzjh180jy7ha808ib2drw";
+    sha256 = "0fqgci4336fbnd944zx9w37d5ky7i27n6wvlp5zv3hj955ldbh7g";
   };
 
   buildInputs = [ qmake pcsclite pkgconfig ];
diff --git a/pkgs/tools/security/gnupg/22.nix b/pkgs/tools/security/gnupg/22.nix
index 203f50a9c0e..f67e8bedcef 100644
--- a/pkgs/tools/security/gnupg/22.nix
+++ b/pkgs/tools/security/gnupg/22.nix
@@ -16,11 +16,11 @@ assert guiSupport -> pinentry != null && enableMinimal == false;
 stdenv.mkDerivation rec {
   pname = "gnupg";
 
-  version = "2.2.19";
+  version = "2.2.20";
 
   src = fetchurl {
     url = "mirror://gnupg/gnupg/${pname}-${version}.tar.bz2";
-    sha256 = "1h6yx6sdpz3lf9gdppgxqcf73baynr8gflmh43286fkgw3058994";
+    sha256 = "0c6a4v9p6qzhsw1pfcwc459bxpc8hma0w9z8iqb9khvligack9q4";
   };
 
   depsBuildBuild = [ buildPackages.stdenv.cc ];
diff --git a/pkgs/tools/security/gobuster/default.nix b/pkgs/tools/security/gobuster/default.nix
index c9348b2f23a..c3426bee965 100644
--- a/pkgs/tools/security/gobuster/default.nix
+++ b/pkgs/tools/security/gobuster/default.nix
@@ -1,7 +1,6 @@
 { buildGoModule
 , fetchFromGitHub
-, stdenv
-, Security
+, lib
 }:
 
 buildGoModule rec {
@@ -17,9 +16,7 @@ buildGoModule rec {
 
   modSha256 = "0jq0z5s05vqdvq7v1gdjwlqqwbl1j2rv9f16k52idl50vdiqviql";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Tool used to brute-force URIs, DNS subdomains, Virtual Host names on target web servers";
     homepage = "https://github.com/OJ/gobuster";
     license = licenses.asl20;
diff --git a/pkgs/tools/security/hcxtools/default.nix b/pkgs/tools/security/hcxtools/default.nix
index 8e70e0def41..84517ce2bd8 100644
--- a/pkgs/tools/security/hcxtools/default.nix
+++ b/pkgs/tools/security/hcxtools/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "hcxtools";
-  version = "5.3.0";
+  version = "6.0.1";
 
   src = fetchFromGitHub {
     owner = "ZerBea";
     repo = pname;
     rev = version;
-    sha256 = "1pqvxncpcnwxs89imma01ry30bz7cjifm8wz1s80yclkxxf80php";
+    sha256 = "0r7pjz89chgb7zl2pqgw3zb1z8cgwp0nxmqvmkv0jn1m9dw3f44f";
   };
 
   buildInputs = [ curl openssl zlib ];
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Tools for capturing wlan traffic and conversion to hashcat and John the Ripper formats";
-    homepage = https://github.com/ZerBea/hcxtools;
+    homepage = "https://github.com/ZerBea/hcxtools";
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ dywedir ];
diff --git a/pkgs/tools/security/keybase/default.nix b/pkgs/tools/security/keybase/default.nix
index da4b9c99e20..6f2eaf57701 100644
--- a/pkgs/tools/security/keybase/default.nix
+++ b/pkgs/tools/security/keybase/default.nix
@@ -6,7 +6,7 @@
 
 buildGoPackage rec {
   pname = "keybase";
-  version = "5.3.0";
+  version = "5.3.1";
 
   goPackagePath = "github.com/keybase/client";
   subPackages = [ "go/kbnm" "go/keybase" ];
@@ -17,7 +17,7 @@ buildGoPackage rec {
     owner = "keybase";
     repo = "client";
     rev = "v${version}";
-    sha256 = "0xqqzjlvq9sgjx1jzv0w2ls0365xzfh4iapzqkrqka635xfggwcn";
+    sha256 = "1a1h2c8jr4r20w4gyvyrpsslmh69bl8syl3jbr0fcr2kka7vqnzg";
   };
 
   patches = [
diff --git a/pkgs/tools/security/keybase/gui.nix b/pkgs/tools/security/keybase/gui.nix
index 0573391139b..0a5855b2060 100644
--- a/pkgs/tools/security/keybase/gui.nix
+++ b/pkgs/tools/security/keybase/gui.nix
@@ -4,16 +4,16 @@
 , runtimeShell, gsettings-desktop-schemas }:
 
 let
-  versionSuffix = "20200310205642.4f2689009b";
+  versionSuffix = "20200320154633.3e235215b3";
 in
 
 stdenv.mkDerivation rec {
   pname = "keybase-gui";
-  version = "5.3.0"; # Find latest version from https://prerelease.keybase.io/deb/dists/stable/main/binary-amd64/Packages
+  version = "5.3.1"; # Find latest version from https://prerelease.keybase.io/deb/dists/stable/main/binary-amd64/Packages
 
   src = fetchurl {
     url = "https://s3.amazonaws.com/prerelease.keybase.io/linux_binaries/deb/keybase_${version + "-" + versionSuffix}_amd64.deb";
-    sha256 = "0zasw2dk33k6c6xqsjnyz3b3s1j27vza9alkp0hpvds88mnnmjv1";
+    sha256 = "00k1xg27arbqpa836c55fhkxjvjbhjgkf6jqzprjzz76zksfdcx4";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/security/knockknock/default.nix b/pkgs/tools/security/knockknock/default.nix
index ce7663b18cf..9478bb4ca23 100644
--- a/pkgs/tools/security/knockknock/default.nix
+++ b/pkgs/tools/security/knockknock/default.nix
@@ -1,8 +1,9 @@
 { stdenv, fetchFromGitHub, python2Packages, hping }:
-
-python2Packages.buildPythonApplication rec {
+let
   rev  = "bf14bbff";
-  name = "knockknock-r${rev}";
+in python2Packages.buildPythonApplication rec {
+  pname = "knockknock-r";
+  version = rev;
 
   src = fetchFromGitHub {
     inherit rev;
diff --git a/pkgs/tools/security/metasploit/Gemfile.lock b/pkgs/tools/security/metasploit/Gemfile.lock
index 2eaf8aa6c71..17d160c8dcb 100644
--- a/pkgs/tools/security/metasploit/Gemfile.lock
+++ b/pkgs/tools/security/metasploit/Gemfile.lock
@@ -362,4 +362,4 @@ DEPENDENCIES
   metasploit-framework!
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/tools/security/neopg/default.nix b/pkgs/tools/security/neopg/default.nix
index c58772346ee..73451b12435 100644
--- a/pkgs/tools/security/neopg/default.nix
+++ b/pkgs/tools/security/neopg/default.nix
@@ -7,7 +7,7 @@
 , curl
 , gettext
 , pkgconfig
-, libusb
+, libusb1
 , gnutls }:
 
 stdenv.mkDerivation rec {
@@ -22,9 +22,9 @@ stdenv.mkDerivation rec {
     fetchSubmodules = true;
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [  cmake gettext pkgconfig ];
 
-  buildInputs = [ cmake sqlite botan2 boost curl gettext libusb gnutls ];
+  buildInputs = [ sqlite botan2 boost curl libusb1 gnutls ];
 
   doCheck = true;
   checkTarget = "test";
diff --git a/pkgs/tools/security/nwipe/default.nix b/pkgs/tools/security/nwipe/default.nix
index b2ead19a201..c72ada86761 100644
--- a/pkgs/tools/security/nwipe/default.nix
+++ b/pkgs/tools/security/nwipe/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchFromGitHub, ncurses, parted, automake, autoconf, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  version = "0.27";
+  version = "0.28";
   pname = "nwipe";
   src = fetchFromGitHub {
     owner = "martijnvanbrummelen";
     repo = "nwipe";
     rev = "v${version}";
-    sha256 = "1rfqv5nxb20g7rfcmqaxwkbz5v294ak0kfsndncx3m4m1791fw04";
+    sha256 = "1aw905lmn1vm6klqn3q7445dwmwbjhcmwnkygpq9rddacgig1gdx";
   };
   nativeBuildInputs = [ automake autoconf pkgconfig ];
   buildInputs = [ ncurses parted ];
diff --git a/pkgs/tools/security/onesixtyone/default.nix b/pkgs/tools/security/onesixtyone/default.nix
new file mode 100644
index 00000000000..4eed52b07f0
--- /dev/null
+++ b/pkgs/tools/security/onesixtyone/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "onesixtyone";
+  version = "unstable-2019-12-26";
+
+  src = fetchFromGitHub {
+    owner = "trailofbits";
+    repo = "onesixtyone";
+    rev = "9ce1dcdad73d45c8694086a4f90d7713be1cbdd7";
+    sha256 = "111nxn4pcbx6p9j8cjjxv1j1s7dgf7f4dix8acsmahwbpzinzkg3";
+  };
+
+  buildPhase = ''
+    $CC -o onesixtyone onesixtyone.c
+  '';
+
+  installPhase = ''
+    install -D onesixtyone $out/bin/onesixtyone
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Fast SNMP Scanner";
+    homepage = "https://github.com/trailofbits/onesixtyone";
+    license = licenses.gpl2Plus;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.fishi0x01 ];
+  };
+}
+
diff --git a/pkgs/tools/security/pass/default.nix b/pkgs/tools/security/pass/default.nix
index 54a8f4de7d7..aed6a9d4012 100644
--- a/pkgs/tools/security/pass/default.nix
+++ b/pkgs/tools/security/pass/default.nix
@@ -1,6 +1,6 @@
 { stdenv, lib, pkgs, fetchurl, buildEnv
 , coreutils, gnused, getopt, git, tree, gnupg, openssl, which, procps
-, qrencode , makeWrapper
+, qrencode , makeWrapper, pass, symlinkJoin
 
 , xclip ? null, xdotool ? null, dmenu ? null
 , x11Support ? !stdenv.isDarwin
@@ -23,131 +23,136 @@ let
 
   env = extensions:
     let
-      selected = extensions passExtensions
+      selected = [ pass ] ++ extensions passExtensions
         ++ stdenv.lib.optional tombPluginSupport passExtensions.tomb;
     in buildEnv {
       name = "pass-extensions-env";
       paths = selected;
-      buildInputs = concatMap (x: x.buildInputs) selected;
-    };
-
-  generic = extensionsEnv: extraPassthru: stdenv.mkDerivation rec {
-    version = "1.7.3";
-    pname = "password-store";
+      buildInputs = [ makeWrapper ] ++ concatMap (x: x.buildInputs) selected;
 
-    src = fetchurl {
-      url    = "https://git.zx2c4.com/password-store/snapshot/${pname}-${version}.tar.xz";
-      sha256 = "1x53k5dn3cdmvy8m4fqdld4hji5n676ksl0ql4armkmsds26av1b";
-    };
+      postBuild = ''
+        files=$(find $out/bin/ -type f -exec readlink -f {} \;)
+        rm $out/bin
+        mkdir $out/bin
 
-    patches = [ ./set-correct-program-name-for-sleep.patch ]
-      ++ stdenv.lib.optional stdenv.isDarwin ./no-darwin-getopt.patch
-      # TODO (@Ma27) this patch adds support for wl-clipboard and can be removed during the next
-      # version bump.
-      ++ stdenv.lib.optional waylandSupport ./clip-wayland-support.patch;
+        for i in $files; do
+          ln -sf $i $out/bin/$(basename $i)
+        done
 
-    nativeBuildInputs = [ makeWrapper ];
-
-    buildInputs = [ extensionsEnv ];
+        wrapProgram $out/bin/pass \
+          --set SYSTEM_EXTENSION_DIR "$out/lib/password-store/extensions"
+      '';
+    };
+in
 
-    installFlags = [ "PREFIX=$(out)" "WITH_ALLCOMP=yes" ];
+stdenv.mkDerivation rec {
+  version = "1.7.3";
+  pname = "password-store";
 
-    postInstall = ''
-      # Install Emacs Mode. NOTE: We can't install the necessary
-      # dependencies (s.el and f.el) here. The user has to do this
-      # himself.
-      mkdir -p "$out/share/emacs/site-lisp"
-      cp "contrib/emacs/password-store.el" "$out/share/emacs/site-lisp/"
-    '' + optionalString x11Support ''
-      cp "contrib/dmenu/passmenu" "$out/bin/"
-    '';
+  src = fetchurl {
+    url    = "https://git.zx2c4.com/password-store/snapshot/${pname}-${version}.tar.xz";
+    sha256 = "1x53k5dn3cdmvy8m4fqdld4hji5n676ksl0ql4armkmsds26av1b";
+  };
 
-    wrapperPath = with stdenv.lib; makeBinPath ([
-      coreutils
-      getopt
-      git
-      gnupg
-      gnused
-      tree
-      which
-      qrencode
-      procps
-    ] ++ optional stdenv.isDarwin openssl
-      ++ ifEnable x11Support [ dmenu xclip xdotool ]
-      ++ optional waylandSupport wl-clipboard);
-
-    postFixup = ''
-      # Link extensions env
-      rmdir $out/lib/password-store/extensions
-      ln -s ${extensionsEnv}/lib/password-store/extensions $out/lib/password-store/.
-      for f in ${extensionsEnv}/share/man/man1/*.1.gz; do
-          ln -s $f $out/share/man/man1/
-      done
-
-      # Fix program name in --help
-      substituteInPlace $out/bin/pass \
-        --replace 'PROGRAM="''${0##*/}"' "PROGRAM=pass"
-
-      # Ensure all dependencies are in PATH
-      wrapProgram $out/bin/pass \
-        --prefix PATH : "${wrapperPath}"
-    '' + stdenv.lib.optionalString x11Support ''
-      # We just wrap passmenu with the same PATH as pass. It doesn't
-      # need all the tools in there but it doesn't hurt either.
-      wrapProgram $out/bin/passmenu \
-        --prefix PATH : "$out/bin:${wrapperPath}"
-    '';
+  patches = [
+    ./set-correct-program-name-for-sleep.patch
+    ./extension-dir.patch
+  ] ++ stdenv.lib.optional stdenv.isDarwin ./no-darwin-getopt.patch
+    # TODO (@Ma27) this patch adds support for wl-clipboard and can be removed during the next
+    # version bump.
+    ++ stdenv.lib.optional waylandSupport ./clip-wayland-support.patch;
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installFlags = [ "PREFIX=$(out)" "WITH_ALLCOMP=yes" ];
+
+  postInstall = ''
+    # Install Emacs Mode. NOTE: We can't install the necessary
+    # dependencies (s.el and f.el) here. The user has to do this
+    # himself.
+    mkdir -p "$out/share/emacs/site-lisp"
+    cp "contrib/emacs/password-store.el" "$out/share/emacs/site-lisp/"
+  '' + optionalString x11Support ''
+    cp "contrib/dmenu/passmenu" "$out/bin/"
+  '';
+
+  wrapperPath = with stdenv.lib; makeBinPath ([
+    coreutils
+    getopt
+    git
+    gnupg
+    gnused
+    tree
+    which
+    qrencode
+    procps
+  ] ++ optional stdenv.isDarwin openssl
+    ++ ifEnable x11Support [ dmenu xclip xdotool ]
+    ++ optional waylandSupport wl-clipboard);
+
+  postFixup = ''
+    # Fix program name in --help
+    substituteInPlace $out/bin/pass \
+      --replace 'PROGRAM="''${0##*/}"' "PROGRAM=pass"
+
+    # Ensure all dependencies are in PATH
+    wrapProgram $out/bin/pass \
+      --prefix PATH : "${wrapperPath}"
+  '' + stdenv.lib.optionalString x11Support ''
+    # We just wrap passmenu with the same PATH as pass. It doesn't
+    # need all the tools in there but it doesn't hurt either.
+    wrapProgram $out/bin/passmenu \
+      --prefix PATH : "$out/bin:${wrapperPath}"
+  '';
+
+  # Turn "check" into "installcheck", since we want to test our pass,
+  # not the one before the fixup.
+  postPatch = ''
+    patchShebangs tests
+
+    substituteInPlace src/password-store.sh \
+      --replace "@out@" "$out"
+
+    # the turning
+    sed -i -e 's@^PASS=.*''$@PASS=$out/bin/pass@' \
+           -e 's@^GPGS=.*''$@GPG=${gnupg}/bin/gpg2@' \
+           -e '/which gpg/ d' \
+      tests/setup.sh
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    # 'pass edit' uses hdid, which is not available from the sandbox.
+    rm -f tests/t0200-edit-tests.sh
+    rm -f tests/t0010-generate-tests.sh
+    rm -f tests/t0020-show-tests.sh
+    rm -f tests/t0050-mv-tests.sh
+    rm -f tests/t0100-insert-tests.sh
+    rm -f tests/t0300-reencryption.sh
+    rm -f tests/t0400-grep.sh
+  '';
+
+  doCheck = false;
+
+  doInstallCheck = true;
+  installCheckInputs = [ git ];
+  installCheckTarget = "test";
+
+  passthru = {
+    extensions = passExtensions;
+    withExtensions = env;
+  };
 
-    # Turn "check" into "installcheck", since we want to test our pass,
-    # not the one before the fixup.
-    postPatch = ''
-      patchShebangs tests
-
-      # the turning
-      sed -i -e 's@^PASS=.*''$@PASS=$out/bin/pass@' \
-             -e 's@^GPGS=.*''$@GPG=${gnupg}/bin/gpg2@' \
-             -e '/which gpg/ d' \
-        tests/setup.sh
-    '' + stdenv.lib.optionalString stdenv.isDarwin ''
-      # 'pass edit' uses hdid, which is not available from the sandbox.
-      rm -f tests/t0200-edit-tests.sh
-      rm -f tests/t0010-generate-tests.sh
-      rm -f tests/t0020-show-tests.sh
-      rm -f tests/t0050-mv-tests.sh
-      rm -f tests/t0100-insert-tests.sh
-      rm -f tests/t0300-reencryption.sh
-      rm -f tests/t0400-grep.sh
+  meta = with stdenv.lib; {
+    description = "Stores, retrieves, generates, and synchronizes passwords securely";
+    homepage    = https://www.passwordstore.org/;
+    license     = licenses.gpl2Plus;
+    maintainers = with maintainers; [ lovek323 the-kenny fpletz tadfisher globin ma27 ];
+    platforms   = platforms.unix;
+
+    longDescription = ''
+      pass is a very simple password store that keeps passwords inside gpg2
+      encrypted files inside a simple directory tree residing at
+      ~/.password-store. The pass utility provides a series of commands for
+      manipulating the password store, allowing the user to add, remove, edit,
+      synchronize, generate, and manipulate passwords.
     '';
-
-    doCheck = false;
-
-    doInstallCheck = true;
-    installCheckInputs = [ git ];
-    installCheckTarget = "test";
-
-    passthru = {
-      extensions = passExtensions;
-    } // extraPassthru;
-
-    meta = with stdenv.lib; {
-      description = "Stores, retrieves, generates, and synchronizes passwords securely";
-      homepage    = https://www.passwordstore.org/;
-      license     = licenses.gpl2Plus;
-      maintainers = with maintainers; [ lovek323 the-kenny fpletz tadfisher globin ];
-      platforms   = platforms.unix;
-
-      longDescription = ''
-        pass is a very simple password store that keeps passwords inside gpg2
-        encrypted files inside a simple directory tree residing at
-        ~/.password-store. The pass utility provides a series of commands for
-        manipulating the password store, allowing the user to add, remove, edit,
-        synchronize, generate, and manipulate passwords.
-      '';
-    };
   };
-
-in
-
-generic (env (_: [])) {
-  withExtensions = extensions: generic (env extensions) {};
 }
diff --git a/pkgs/tools/security/pass/extension-dir.patch b/pkgs/tools/security/pass/extension-dir.patch
new file mode 100644
index 00000000000..028da31c461
--- /dev/null
+++ b/pkgs/tools/security/pass/extension-dir.patch
@@ -0,0 +1,32 @@
+diff --git a/Makefile b/Makefile
+index eac2291..1b1df0a 100644
+--- a/Makefile
++++ b/Makefile
+@@ -46,12 +46,12 @@ install: install-common
+ 	@install -v -d "$(DESTDIR)$(LIBDIR)/password-store" && install -m 0644 -v "$(PLATFORMFILE)" "$(DESTDIR)$(LIBDIR)/password-store/platform.sh"
+ 	@install -v -d "$(DESTDIR)$(LIBDIR)/password-store/extensions"
+ 	@install -v -d "$(DESTDIR)$(BINDIR)/"
+-	@trap 'rm -f src/.pass' EXIT; sed 's:.*PLATFORM_FUNCTION_FILE.*:source "$(LIBDIR)/password-store/platform.sh":;s:^SYSTEM_EXTENSION_DIR=.*:SYSTEM_EXTENSION_DIR="$(LIBDIR)/password-store/extensions":' src/password-store.sh > src/.pass && \
++	@trap 'rm -f src/.pass' EXIT; sed 's:.*PLATFORM_FUNCTION_FILE.*:source "$(LIBDIR)/password-store/platform.sh":;' src/password-store.sh > src/.pass && \
+ 	install -v -d "$(DESTDIR)$(BINDIR)/" && install -m 0755 -v src/.pass "$(DESTDIR)$(BINDIR)/pass"
+ else
+ install: install-common
+ 	@install -v -d "$(DESTDIR)$(LIBDIR)/password-store/extensions"
+-	@trap 'rm -f src/.pass' EXIT; sed '/PLATFORM_FUNCTION_FILE/d;s:^SYSTEM_EXTENSION_DIR=.*:SYSTEM_EXTENSION_DIR="$(LIBDIR)/password-store/extensions":' src/password-store.sh > src/.pass && \
++	@trap 'rm -f src/.pass' EXIT; sed '/PLATFORM_FUNCTION_FILE/d;' src/password-store.sh > src/.pass && \
+ 	install -v -d "$(DESTDIR)$(BINDIR)/" && install -m 0755 -v src/.pass "$(DESTDIR)$(BINDIR)/pass"
+ endif
+ 
+diff --git a/src/password-store.sh b/src/password-store.sh
+index 68551a4..2f3b5b7 100755
+--- a/src/password-store.sh
++++ b/src/password-store.sh
+@@ -656,7 +656,7 @@ cmd_extension_or_show() {
+ 	fi
+ }
+ 
+-SYSTEM_EXTENSION_DIR=""
++SYSTEM_EXTENSION_DIR="${SYSTEM_EXTENSION_DIR:-@out@/lib/password-store/extensions}"
+ cmd_extension() {
+ 	check_sneaky_paths "$1"
+ 	local user_extension system_extension extension
diff --git a/pkgs/tools/security/pass/extensions/audit.nix b/pkgs/tools/security/pass/extensions/audit.nix
deleted file mode 100644
index ca5ca855337..00000000000
--- a/pkgs/tools/security/pass/extensions/audit.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ stdenv, pass, fetchFromGitHub, pythonPackages, makeWrapper }:
-
-let
-  pythonEnv = pythonPackages.python.withPackages (p: [ p.requests ]);
-
-in stdenv.mkDerivation rec {
-  pname = "pass-audit";
-  version = "0.1";
-
-  src = fetchFromGitHub {
-    owner = "roddhjav";
-    repo = "pass-audit";
-    rev = "v${version}";
-    sha256 = "0v0db8bzpcaa7zqz17syn3c78mgvw4mpg8qg1gh5rmbjsjfxw6sm";
-  };
-
-  nativeBuildInputs = [ makeWrapper ];
-
-  buildInputs = [ pythonEnv ];
-
-  patchPhase = ''
-    sed -i -e "s|/usr/lib|$out/lib|" audit.bash
-    sed -i -e 's|$0|${pass}/bin/pass|' audit.bash
-  '';
-
-  dontBuild = true;
-
-  installFlags = [ "PREFIX=$(out)" ];
-
-  postFixup = ''
-    wrapProgram $out/lib/password-store/extensions/audit.bash \
-      --prefix PATH : "${pythonEnv}/bin" \
-      --run "export PREFIX"
-  '';
-
-  meta = with stdenv.lib; {
-    description = "Pass extension for auditing your password repository.";
-    homepage = https://github.com/roddhjav/pass-audit;
-    license = licenses.gpl3Plus;
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/tools/security/pass/extensions/audit/0001-Make-it-possible-to-run-the-tests-offline.patch b/pkgs/tools/security/pass/extensions/audit/0001-Make-it-possible-to-run-the-tests-offline.patch
new file mode 100644
index 00000000000..36faf3140cc
--- /dev/null
+++ b/pkgs/tools/security/pass/extensions/audit/0001-Make-it-possible-to-run-the-tests-offline.patch
@@ -0,0 +1,175 @@
+From 37c2b4d2940476555aeec20fe1e5e3fa0492a94e Mon Sep 17 00:00:00 2001
+From: Maximilian Bosch <maximilian@mbosch.me>
+Date: Sun, 15 Mar 2020 19:58:53 +0100
+Subject: [PATCH] Make it possible to run the tests offline
+
+Helpful when developing without network access, also makes sure that
+the test actually depend on the API's data like number of breaches
+(which will change in time).
+---
+ tests/commons.py         | 25 +++++++++++++++++++++++++
+ tests/test_audit.py      |  8 +++++---
+ tests/test_pass_audit.py | 10 +++++++++-
+ tests/test_pwned.py      |  8 +++++---
+ 4 files changed, 44 insertions(+), 7 deletions(-)
+
+diff --git a/tests/commons.py b/tests/commons.py
+index 13c4cb1..4f1ecd8 100644
+--- a/tests/commons.py
++++ b/tests/commons.py
+@@ -56,3 +56,28 @@ class TestPass(TestBase):
+         for path in self.store.list(root):
+             data[path] = self.store.show(path)
+         return data
++
++
++def mock_request(*args, **kwargs):
++    class MockResponse:
++        def __init__(self):
++            data = [
++                "D5EE0CB1A41071812CCED2F1930E6E1A5D2:2",
++                "2DC183F740EE76F27B78EB39C8AD972A757:52579",
++                "CF164D7A51A1FD864B1BF9E1CE8A3EC171B:4",
++                "D0B910E7A3028703C0B30039795E908CEB2:7",
++                "AD6438836DBE526AA231ABDE2D0EEF74D42:3",
++                "EBAB0A7CE978E0194608B572E4F9404AA21:3",
++                "17727EAB0E800E62A776C76381DEFBC4145:120",
++                "5370372AC65308F03F6ED75EC6068C8E1BE:1386",
++                "1E4C9B93F3F0682250B6CF8331B7EE68FD8:3730471",
++                "437FAA5A7FCE15D1DDCB9EAEAEA377667B8:123422",
++                "944C22589AC652B0F47918D58CA0CDCCB63:411"
++            ]
++
++            self.text = "\r\n".join(data)
++
++        def raise_for_status(self):
++            pass
++
++    return MockResponse()
+diff --git a/tests/test_audit.py b/tests/test_audit.py
+index d8c7a9a..5e0a9cf 100644
+--- a/tests/test_audit.py
++++ b/tests/test_audit.py
+@@ -17,12 +17,13 @@
+ #
+ 
+ from .. import pass_audit
+-from tests.commons import TestPass
+-
++from tests.commons import TestPass, mock_request
++from unittest import mock
+ 
+ class TestPassAudit(TestPass):
+     passwords_nb = 7
+ 
++    @mock.patch('requests.get', mock_request)
+     def test_password_notpwned(self):
+         """Testing: pass audit for password not breached with K-anonymity method."""
+         data = self._getdata("Password/notpwned")
+@@ -30,9 +31,10 @@ class TestPassAudit(TestPass):
+         breached = audit.password()
+         self.assertTrue(len(breached) == 0)
+ 
++    @mock.patch('requests.get', mock_request)
+     def test_password_pwned(self):
+         """Testing: pass audit for password breached with K-anonymity method."""
+-        ref_counts = [51259, 3, 114, 1352, 3645804, 78773, 396]
++        ref_counts = [52579, 3, 120, 1386, 3730471, 123422, 411]
+         data = self._getdata("Password/pwned")
+         audit = pass_audit.PassAudit(data)
+         breached = audit.password()
+diff --git a/tests/test_pass_audit.py b/tests/test_pass_audit.py
+index 4c10f87..2c949f7 100644
+--- a/tests/test_pass_audit.py
++++ b/tests/test_pass_audit.py
+@@ -19,7 +19,8 @@
+ import os
+ 
+ from .. import pass_audit
+-from tests.commons import TestPass
++from tests.commons import TestPass, mock_request
++from unittest import mock
+ 
+ 
+ class TestPassAuditCMD(TestPass):
+@@ -47,6 +48,7 @@ class TestPassAuditCMD(TestPass):
+         cmd = ['--not-an-option', '-q']
+         self._passaudit(cmd, 2)
+ 
++    @mock.patch('requests.get', mock_request)
+     def test_pass_audit_StoreNotInitialized(self):
+         """Testing: store not initialized."""
+         cmd = ['Password/', '-v']
+@@ -56,6 +58,7 @@ class TestPassAuditCMD(TestPass):
+         os.rename(os.path.join(self.store.prefix, 'backup.gpg-id'),
+                   os.path.join(self.store.prefix, '.gpg-id'))
+ 
++    @mock.patch('requests.get', mock_request)
+     def test_pass_audit_InvalidID(self):
+         """Testing: invalid user ID."""
+         os.rename(os.path.join(self.store.prefix, '.gpg-id'),
+@@ -66,26 +69,31 @@ class TestPassAuditCMD(TestPass):
+         os.rename(os.path.join(self.store.prefix, 'backup.gpg-id'),
+                   os.path.join(self.store.prefix, '.gpg-id'))
+ 
++    @mock.patch('requests.get', mock_request)
+     def test_pass_audit_NotAFile(self):
+         """Testing: pass audit not_a_file."""
+         cmd = ['not_a_file']
+         self._passaudit(cmd, 1)
+ 
++    @mock.patch('requests.get', mock_request)
+     def test_pass_audit_passwords_notpwned(self):
+         """Testing: pass audit Password/notpwned."""
+         cmd = ['Password/notpwned']
+         self._passaudit(cmd)
+ 
++    @mock.patch('requests.get', mock_request)
+     def test_pass_audit_passwords_pwned(self):
+         """Testing: pass audit Password/pwned."""
+         cmd = ['Password/pwned']
+         self._passaudit(cmd)
+ 
++    @mock.patch('requests.get', mock_request)
+     def test_pass_audit_passwords_good(self):
+         """Testing: pass audit Password/good."""
+         cmd = ['Password/good']
+         self._passaudit(cmd)
+ 
++    @mock.patch('requests.get', mock_request)
+     def test_pass_audit_passwords_all(self):
+         """Testing: pass audit ."""
+         cmd = ['']
+diff --git a/tests/test_pwned.py b/tests/test_pwned.py
+index 5ce6bc6..c28939a 100644
+--- a/tests/test_pwned.py
++++ b/tests/test_pwned.py
+@@ -17,7 +17,8 @@
+ #
+ 
+ from .. import pass_audit
+-from tests.commons import TestPass
++from tests.commons import TestPass, mock_request
++from unittest import mock
+ 
+ 
+ class TestPwnedAPI(TestPass):
+@@ -25,12 +26,13 @@ class TestPwnedAPI(TestPass):
+     def setUp(self):
+         self.api = pass_audit.PwnedAPI()
+ 
++    @mock.patch('requests.get', mock_request)
+     def test_password_range(self):
+         """Testing: https://api.haveibeenpwned.com/range API."""
+         prefix = '21BD1'
+         Hash = '21BD12DC183F740EE76F27B78EB39C8AD972A757'
+         hashes, counts = self.api.password_range(prefix)
+         self.assertIn(Hash, hashes)
+-        self.assertTrue(counts[hashes.index(Hash)] == 51259)
++        self.assertTrue(counts[hashes.index(Hash)] == 52579)
+         self.assertTrue(len(hashes) == len(counts))
+-        self.assertTrue(len(hashes) == 527)
++        self.assertTrue(len(hashes) == 11)
+-- 
+2.25.0
+
diff --git a/pkgs/tools/security/pass/extensions/audit/0002-Fix-audit.bash-setup.patch b/pkgs/tools/security/pass/extensions/audit/0002-Fix-audit.bash-setup.patch
new file mode 100644
index 00000000000..5703f3c1f65
--- /dev/null
+++ b/pkgs/tools/security/pass/extensions/audit/0002-Fix-audit.bash-setup.patch
@@ -0,0 +1,28 @@
+From 8f76b32946430737f97f2702afd828b09536afd2 Mon Sep 17 00:00:00 2001
+From: Maximilian Bosch <maximilian@mbosch.me>
+Date: Sun, 15 Mar 2020 20:10:11 +0100
+Subject: [PATCH 2/2] Fix audit.bash setup
+
+This sets PASSWORD_STORE_DIR (needed by the python-code) to
+PASSWORD_STORE_DIR and properly falls back to `~/.password-store` if
+it's not set.
+---
+ audit.bash | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/audit.bash b/audit.bash
+index 7a973dc..c40ff76 100755
+--- a/audit.bash
++++ b/audit.bash
+@@ -17,7 +17,7 @@
+ #
+ 
+ cmd_audit() {
+-	export PASSWORD_STORE_DIR=$PREFIX GIT_DIR PASSWORD_STORE_GPG_OPTS
++	export PASSWORD_STORE_DIR=${PASSWORD_STORE_DIR:-$HOME/.password-store} GIT_DIR PASSWORD_STORE_GPG_OPTS
+ 	export X_SELECTION CLIP_TIME PASSWORD_STORE_UMASK GENERATED_LENGTH
+ 	export CHARACTER_SET CHARACTER_SET_NO_SYMBOLS EXTENSIONS PASSWORD_STORE_KEY
+ 	export PASSWORD_STORE_ENABLE_EXTENSIONS PASSWORD_STORE_SIGNING_KEY
+-- 
+2.25.0
+
diff --git a/pkgs/tools/security/pass/extensions/audit/default.nix b/pkgs/tools/security/pass/extensions/audit/default.nix
new file mode 100644
index 00000000000..bae6b9bbafd
--- /dev/null
+++ b/pkgs/tools/security/pass/extensions/audit/default.nix
@@ -0,0 +1,51 @@
+{ stdenv, pass, fetchFromGitHub, pythonPackages, makeWrapper, gnupg }:
+
+let
+  pythonEnv = pythonPackages.python.withPackages (p: [ p.requests p.setuptools p.zxcvbn ]);
+
+in stdenv.mkDerivation rec {
+  pname = "pass-audit";
+  version = "1.0.1";
+
+  src = fetchFromGitHub {
+    owner = "roddhjav";
+    repo = "pass-audit";
+    rev = "v${version}";
+    sha256 = "1mdckw0dwcnv8smp1za96y0zmdnykbkw2606v7mzfnzbz4zjdlwl";
+  };
+
+  patches = [
+    ./0001-Make-it-possible-to-run-the-tests-offline.patch
+    ./0002-Fix-audit.bash-setup.patch
+  ];
+
+  postPatch = ''
+    substituteInPlace audit.bash \
+      --replace '/usr/bin/env python3' "${pythonEnv}/bin/python3"
+  '';
+
+  outputs = [ "out" "man" ];
+
+  buildInputs = [ pythonEnv ];
+  nativeBuildInputs = [ makeWrapper ];
+
+  doCheck = true;
+  checkInputs = [ pythonPackages.green pass gnupg ];
+  checkPhase = ''
+    ${pythonEnv}/bin/python3 setup.py green -q
+  '';
+
+  installFlags = [ "DESTDIR=${placeholder "out"}" "PREFIX=" ];
+  postInstall = ''
+    wrapProgram $out/lib/password-store/extensions/audit.bash \
+      --prefix PYTHONPATH : "$out/lib/${pythonEnv.libPrefix}/site-packages"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Pass extension for auditing your password repository.";
+    homepage = https://github.com/roddhjav/pass-audit;
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ ma27 ];
+  };
+}
diff --git a/pkgs/tools/security/pass/extensions/default.nix b/pkgs/tools/security/pass/extensions/default.nix
index 6eb321229e0..1f41a692482 100644
--- a/pkgs/tools/security/pass/extensions/default.nix
+++ b/pkgs/tools/security/pass/extensions/default.nix
@@ -3,7 +3,7 @@
 with pkgs;
 
 {
-  pass-audit = callPackage ./audit.nix {
+  pass-audit = callPackage ./audit {
     pythonPackages = python3Packages;
   };
   pass-checkup = callPackage ./checkup.nix {};
diff --git a/pkgs/tools/security/pcsc-cyberjack/default.nix b/pkgs/tools/security/pcsc-cyberjack/default.nix
index 8aadb685aa8..6cee5c1ccbd 100644
--- a/pkgs/tools/security/pcsc-cyberjack/default.nix
+++ b/pkgs/tools/security/pcsc-cyberjack/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, libusb, pcsclite }:
+{ stdenv, fetchurl, pkgconfig, libusb1, pcsclite }:
 
 stdenv.mkDerivation rec {
   pname = "pcsc-cyberjack";
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   outputs = [ "out" "tools" ];
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libusb pcsclite ];
+  buildInputs = [ libusb1 pcsclite ];
 
   configureFlags = [
     "--with-usbdropdir=${placeholder "out"}/pcsc/drivers"
diff --git a/pkgs/tools/security/rage/default.nix b/pkgs/tools/security/rage/default.nix
index 2bb4e4aeea3..cdba2f2beb0 100644
--- a/pkgs/tools/security/rage/default.nix
+++ b/pkgs/tools/security/rage/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "rage";
-  version = "0.3.0";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "str4d";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1lfp9vyrk8880j7p5i73zja9dglvl1lvvh7286rwd1a9gbcj6grb";
+    sha256 = "1wwndzy4xxbar9r67z8g7pp0s1xsxk5xaarh4h6hc0kh411zglrq";
   };
 
-  cargoSha256 = "0jjzxzdlflzvy39zi8vwx53xiv66v90idllsfvhj9p9lhc5ssi24";
+  cargoSha256 = "08njl8irkqkfxj54pz4sx3l9aqb40h10wxb82zza52pqd4zapgn6";
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
 
diff --git a/pkgs/tools/security/ripasso/cursive.nix b/pkgs/tools/security/ripasso/cursive.nix
index 70c4ee864b6..c8a55d3f397 100644
--- a/pkgs/tools/security/ripasso/cursive.nix
+++ b/pkgs/tools/security/ripasso/cursive.nix
@@ -16,9 +16,9 @@ buildRustPackage rec {
 
   cargoBuildFlags = [ "-p ripasso-cursive -p ripasso-man" ];
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig gpgme python3 ];
   buildInputs = [
-    ncurses python3 openssl libgpgerror gpgme xorg.libxcb
+    ncurses openssl libgpgerror gpgme xorg.libxcb
   ] ++ stdenv.lib.optionals stdenv.isDarwin [ AppKit Security ];
 
   preFixup = ''
diff --git a/pkgs/tools/security/saml2aws/default.nix b/pkgs/tools/security/saml2aws/default.nix
index 811b95d2524..4373abdb9a4 100644
--- a/pkgs/tools/security/saml2aws/default.nix
+++ b/pkgs/tools/security/saml2aws/default.nix
@@ -1,19 +1,17 @@
-{ stdenv, buildGoModule, fetchFromGitHub, libobjc, Foundation, IOKit }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "saml2aws";
-  version = "2.24.0";
+  version = "2.25.0";
 
   src = fetchFromGitHub {
     owner = "Versent";
     repo = "saml2aws";
     rev = "v${version}";
-    sha256 = "15zxi64s1hgpm3rxk0m7z5363jc7h80g91bfx8vg7nw680lday4w";
+    sha256 = "12aidylamrq4rvy2cfdz669lr1p20yqrshigcc5x1hrlhh9y64xc";
   };
 
-  modSha256 = "0qxf2i06spjig3ynixh3xmbxpghh222jhfqcg71i4i79x4ycp5wx";
-
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ libobjc Foundation IOKit ];
+  modSha256 = "1kcj5065yy52p1jy4fad5lsz3y4spqc40k1qsirm53qqixhrhvag";
 
   subPackages = [ "." "cmd/saml2aws" ];
 
diff --git a/pkgs/tools/security/scallion/default.nix b/pkgs/tools/security/scallion/default.nix
index e419232641b..1395b8e1061 100644
--- a/pkgs/tools/security/scallion/default.nix
+++ b/pkgs/tools/security/scallion/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, makeWrapper, mono, openssl, ocl-icd }:
+{ stdenv, fetchFromGitHub, makeWrapper, mono, openssl_1_0_2, ocl-icd }:
 
 stdenv.mkDerivation rec {
   version = "2.1";
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
     mkdir -p $out/share
     cp scallion/bin/Debug/* $out/share/
     makeWrapper ${mono}/bin/mono $out/bin/scallion \
-      --prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath [ openssl ocl-icd ]} \
+      --prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath [ openssl_1_0_2 ocl-icd ]} \
       --add-flags $out/share/scallion.exe
   '';
 
diff --git a/pkgs/tools/security/sequoia/default.nix b/pkgs/tools/security/sequoia/default.nix
index fe0b13bbb97..e6081fbf472 100644
--- a/pkgs/tools/security/sequoia/default.nix
+++ b/pkgs/tools/security/sequoia/default.nix
@@ -9,16 +9,16 @@ assert pythonSupport -> pythonPackages != null;
 
 rustPlatform.buildRustPackage rec {
   pname = "sequoia";
-  version = "0.15.0";
+  version = "0.16.0";
 
   src = fetchFromGitLab {
     owner = "sequoia-pgp";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1l6isis0ddb0b306z3cv2f5qz2bhw5pmf42shnrxzg7778dnmwhw";
+    sha256 = "0iwzi2ylrwz56s77cd4vcf89ig6ipy4w6kp2pfwqvd2d00x54dhk";
   };
 
-  cargoSha256 = "0cfi42wx93yc9yib9lpxl6ph991ra39yfhw1lr16z2qzzbzj2b1j";
+  cargoSha256 = "0jsmvs6hr9mhapz3a74wpfgkjkq3w10014j3z30bm659mxqrknha";
 
   nativeBuildInputs = [
     pkgconfig
@@ -28,6 +28,7 @@ rustPlatform.buildRustPackage rec {
     llvmPackages.libclang
     llvmPackages.clang
     ensureNewerSourcesForZipFilesHook
+    capnproto
   ] ++
     lib.optionals pythonSupport [ pythonPackages.setuptools ]
   ;
@@ -41,9 +42,7 @@ rustPlatform.buildRustPackage rec {
     openssl
     sqlite
     nettle
-    capnproto
-  ]
-    ++ lib.optionals pythonSupport [ pythonPackages.python pythonPackages.cffi ]
+  ] ++ lib.optionals pythonSupport [ pythonPackages.python pythonPackages.cffi ]
     ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Security ]
   ;
 
diff --git a/pkgs/tools/security/sops/default.nix b/pkgs/tools/security/sops/default.nix
index d028b9787db..8aa2e219e7d 100644
--- a/pkgs/tools/security/sops/default.nix
+++ b/pkgs/tools/security/sops/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, CoreServices }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "sops";
@@ -13,8 +13,6 @@ buildGoModule rec {
 
   modSha256 = "0vhxd3dschj5i9sig6vpxzbl59cas1qa843akzmjnfjrrafb916y";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
-
   meta = with stdenv.lib; {
     homepage = "https://github.com/mozilla/sops";
     description = "Mozilla sops (Secrets OPerationS) is an editor of encrypted files";
diff --git a/pkgs/tools/security/sshuttle/default.nix b/pkgs/tools/security/sshuttle/default.nix
index 0e0e8c7ad75..0ec98ec1cf2 100644
--- a/pkgs/tools/security/sshuttle/default.nix
+++ b/pkgs/tools/security/sshuttle/default.nix
@@ -2,12 +2,12 @@
 , coreutils, iptables, nettools, openssh, procps }:
 
 python3Packages.buildPythonApplication rec {
-  name = "sshuttle-${version}";
+  pname = "sshuttle";
   version = "0.78.5";
 
-  src = fetchurl {
+  src = python3Packages.fetchPypi {
+    inherit pname version;
     sha256 = "0vp13xwrhx4m6zgsyzvai84lkq9mzkaw47j58dk0ll95kaymk2x8";
-    url = "mirror://pypi/s/sshuttle/${name}.tar.gz";
   };
 
   patches = [ ./sudo.patch ];
diff --git a/pkgs/tools/security/sudo/default.nix b/pkgs/tools/security/sudo/default.nix
index 842509888b4..e92ce05ad1a 100644
--- a/pkgs/tools/security/sudo/default.nix
+++ b/pkgs/tools/security/sudo/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "sudo";
-  version = "1.8.31";
+  version = "1.8.31p1";
 
   src = fetchurl {
-    url = "ftp://ftp.sudo.ws/pub/sudo/${pname}-${version}.tar.gz";
-    sha256 = "0ks5mm9hda5idivncyfpiz4lrd8fv0dpmsl711788k7f7ixdka3y";
+    url = "https://www.sudo.ws/dist/${pname}-${version}.tar.gz";
+    sha256 = "1n0mdmgcs92af34xxsnsh1arrngymhdmwd9srjgjbk65q7xzsg67";
   };
 
   prePatch = ''
@@ -72,7 +72,7 @@ stdenv.mkDerivation rec {
       providing an audit trail of the commands and their arguments.
       '';
 
-    homepage = https://www.sudo.ws/;
+    homepage = "https://www.sudo.ws/";
 
     license = https://www.sudo.ws/sudo/license.html;
 
diff --git a/pkgs/tools/security/tor/default.nix b/pkgs/tools/security/tor/default.nix
index 78d5b4441d5..0ef45bd5337 100644
--- a/pkgs/tools/security/tor/default.nix
+++ b/pkgs/tools/security/tor/default.nix
@@ -15,11 +15,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tor";
-  version = "0.4.2.6";
+  version = "0.4.2.7";
 
   src = fetchurl {
     url = "https://dist.torproject.org/${pname}-${version}.tar.gz";
-    sha256 = "1i766s211nrbjvwvkd2375mjsbbc28yrg46564rbx6w46cj10005";
+    sha256 = "0v82ngwwmmcb7i9563bgsmrjy6xp83xyhqhaljygd0pkvlsxi886";
   };
 
   outputs = [ "out" "geoip" ];
@@ -66,7 +66,7 @@ stdenv.mkDerivation rec {
   };
 
   meta = with stdenv.lib; {
-    homepage = https://www.torproject.org/;
+    homepage = "https://www.torproject.org/";
     repositories.git = https://git.torproject.org/git/tor;
     description = "Anonymizing overlay network";
 
diff --git a/pkgs/tools/security/vault/default.nix b/pkgs/tools/security/vault/default.nix
index ff4d6f01493..54be477cfe2 100644
--- a/pkgs/tools/security/vault/default.nix
+++ b/pkgs/tools/security/vault/default.nix
@@ -2,13 +2,13 @@
 
 buildGoPackage rec {
   pname = "vault";
-  version = "1.3.3";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "hashicorp";
     repo = "vault";
     rev = "v${version}";
-    sha256 = "1scwclkpb7v5pcx1afgjqrfgcp0c1bd9gqvwdmjbpfcyxv1f032d";
+    sha256 = "13ycg9shara4ycbi79wj28z6nimnsqgisbf35ca3q9w066ac0ja2";
   };
 
   goPackagePath = "github.com/hashicorp/vault";
diff --git a/pkgs/tools/security/wpscan/Gemfile.lock b/pkgs/tools/security/wpscan/Gemfile.lock
index 7a29a18b7c3..f3ece99b365 100644
--- a/pkgs/tools/security/wpscan/Gemfile.lock
+++ b/pkgs/tools/security/wpscan/Gemfile.lock
@@ -56,4 +56,4 @@ DEPENDENCIES
   wpscan
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/tools/system/colorls/Gemfile.lock b/pkgs/tools/system/colorls/Gemfile.lock
index 583fd3b1202..ebbcd0fdb03 100644
--- a/pkgs/tools/system/colorls/Gemfile.lock
+++ b/pkgs/tools/system/colorls/Gemfile.lock
@@ -18,4 +18,4 @@ DEPENDENCIES
   colorls
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/system/ctop/default.nix b/pkgs/tools/system/ctop/default.nix
index b9ea0c04aa8..4f492def162 100644
--- a/pkgs/tools/system/ctop/default.nix
+++ b/pkgs/tools/system/ctop/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoModule, fetchFromGitHub, Security }:
+{ lib, buildGoModule, fetchFromGitHub }:
 
 buildGoModule rec {
   pname = "ctop";
@@ -13,11 +13,9 @@ buildGoModule rec {
 
   modSha256 = "0wxv6yzlgki7047qszx9p9xpph95bg097jkgaa0b3wbpx8vg7qml";
 
-  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
-
   buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version} -X main.build=v${version}" ];
 
-  meta = with stdenv.lib; {
+  meta = with lib; {
     description = "Top-like interface for container metrics";
     homepage = "https://ctop.sh/";
     license = licenses.mit;
diff --git a/pkgs/tools/system/facter/default.nix b/pkgs/tools/system/facter/default.nix
index 89c79be2ce3..d6f7a782824 100644
--- a/pkgs/tools/system/facter/default.nix
+++ b/pkgs/tools/system/facter/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   pname = "facter";
-  version = "3.14.8";
+  version = "3.14.9";
 
   src = fetchFromGitHub {
-    sha256 = "1rq28sg1yqyx2xpbhb8hj18ar5pva2rwz7v3ylg8kq112cnlngyh";
+    sha256 = "1c8g4fg8c9x816xx3m33njfn9h6ksl8g4rmc20y39v1y9jn72vxk";
     rev = version;
     repo = pname;
     owner = "puppetlabs";
diff --git a/pkgs/tools/system/foreman/Gemfile.lock b/pkgs/tools/system/foreman/Gemfile.lock
index 8fa9a213ab2..a2a7824f7aa 100644
--- a/pkgs/tools/system/foreman/Gemfile.lock
+++ b/pkgs/tools/system/foreman/Gemfile.lock
@@ -12,4 +12,4 @@ DEPENDENCIES
   foreman
 
 BUNDLED WITH
-   1.11.2
+   2.1.4
diff --git a/pkgs/tools/system/gotop/default.nix b/pkgs/tools/system/gotop/default.nix
index daf9ce58c91..44ef60c70f3 100644
--- a/pkgs/tools/system/gotop/default.nix
+++ b/pkgs/tools/system/gotop/default.nix
@@ -1,21 +1,21 @@
-{ stdenv, buildGoPackage, fetchFromGitHub }:
+{ stdenv, buildGoModule, fetchFromGitHub }:
 
-buildGoPackage rec {
+buildGoModule rec {
   pname = "gotop";
-  version = "3.0.0";
-
-  goPackagePath = "github.com/cjbassi/gotop";
+  version = "3.5.0";
 
   src = fetchFromGitHub {
-    owner = "cjbassi";
+    owner = "xxxserxxx";
     repo = pname;
-    rev = version;
-    sha256 = "1kndj5qjaqgizjakh642fay2i0i1jmfjlk1p01gnjbh2b0yzvj1r";
+    rev = "v${version}";
+    sha256 = "01a2y2604dh2zfy5f2fxr306id0fbq0df91fpz2m8w7rpaszd6xr";
   };
 
+  modSha256 = "1gbpxq2vyshln97gij5y9qsjyf3mkwfqwwhikc0cck3mnwiv87dd";
+
   meta = with stdenv.lib; {
     description = "A terminal based graphical activity monitor inspired by gtop and vtop";
-    homepage = https://github.com/cjbassi/gotop;
+    homepage = "https://github.com/xxxserxxx/gotop";
     license = licenses.agpl3;
     maintainers = [ maintainers.magnetophon ];
     platforms = platforms.unix;
diff --git a/pkgs/tools/system/hiera-eyaml/Gemfile.lock b/pkgs/tools/system/hiera-eyaml/Gemfile.lock
index 259c2e170b0..918df753a38 100644
--- a/pkgs/tools/system/hiera-eyaml/Gemfile.lock
+++ b/pkgs/tools/system/hiera-eyaml/Gemfile.lock
@@ -14,4 +14,4 @@ DEPENDENCIES
   hiera-eyaml
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/system/hwinfo/default.nix b/pkgs/tools/system/hwinfo/default.nix
index 048af14efb1..b8bbe09fcb7 100644
--- a/pkgs/tools/system/hwinfo/default.nix
+++ b/pkgs/tools/system/hwinfo/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "hwinfo";
-  version = "21.68";
+  version = "21.69";
 
   src = fetchFromGitHub {
     owner = "opensuse";
     repo = "hwinfo";
     rev = version;
-    sha256 = "0x63rkyl16918l8yf0azy2lyxaqy8nc6iafid89acvxn32j146rg";
+    sha256 = "01lmxyqhx092ahbls7z9gwgmsinlqcv8zb7xvklbwyhzy5c02fxx";
   };
 
   patchPhase = ''
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "Hardware detection tool from openSUSE";
     license = licenses.gpl2;
-    homepage = https://github.com/openSUSE/hwinfo;
+    homepage = "https://github.com/openSUSE/hwinfo";
     maintainers = with maintainers; [ bobvanderlinden ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/system/ipmiutil/default.nix b/pkgs/tools/system/ipmiutil/default.nix
index 0d2a78efba1..17c28b3cd42 100644
--- a/pkgs/tools/system/ipmiutil/default.nix
+++ b/pkgs/tools/system/ipmiutil/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   baseName = "ipmiutil";
-  version = "3.1.5";
+  version = "3.1.6";
   name = "${baseName}-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/${baseName}/${name}.tar.gz";
-    sha256 = "18q1nc2caaixy3dr2axdvwq37iz916piarvmg0jdfzaxfpaxpk2q";
+    sha256 = "0jlfb4firph3hc0854n7cw7yjwlax3wdxn37r2jl0l94dj684548";
   };
 
   buildInputs = [ openssl ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "An easy-to-use IPMI server management utility";
-    homepage = http://ipmiutil.sourceforge.net/;
+    homepage = "http://ipmiutil.sourceforge.net/";
     maintainers = with maintainers; [ raskin ];
     platforms = platforms.linux;
     license = licenses.bsd3;
diff --git a/pkgs/tools/system/kmon/default.nix b/pkgs/tools/system/kmon/default.nix
new file mode 100644
index 00000000000..c1e511fa0c2
--- /dev/null
+++ b/pkgs/tools/system/kmon/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub, rustPlatform, python3, libxcb }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "kmon";
+  version = "1.0.1";
+
+  src = fetchFromGitHub {
+    owner = "orhun";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "0kmkcs13cccmjjfbl25bs3m54zcjcs38fiv84q0vy09a4dnx3gn8";
+  };
+
+  cargoSha256 = "0l1yq9k6lyk0ww1nzk93axylgrwipkmmqh9r6fq4a31wjlblrkkb";
+
+  nativeBuildInputs = [ python3 ];
+
+  buildInputs = [ libxcb ];
+
+  postInstall = ''
+    install -D man/kmon.8 -t $out/share/man/man8/
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Linux Kernel Manager and Activity Monitor";
+    homepage = "https://github.com/orhun/kmon";
+    license = with licenses; [ gpl3 ];
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ misuzu ];
+  };
+}
diff --git a/pkgs/tools/system/localtime/default.nix b/pkgs/tools/system/localtime/default.nix
index 39e1bc7b6e7..a12d70315d9 100644
--- a/pkgs/tools/system/localtime/default.nix
+++ b/pkgs/tools/system/localtime/default.nix
@@ -9,13 +9,14 @@ buildGoPackage rec {
     rev = "2e7b4317c723406bd75b2a1d640219ab9f8090ce";
     sha256 = "04fyna8p7q7skzx9fzmncd6gx7x5pwa9jh8a84hpljlvj0kldfs8";
   };
+
   goPackagePath = "github.com/Stebalien/localtime";
 
-  buildInputs = [ m4 ];
+  nativeBuildInputs = [ m4 ];
 
-  makeFlags = [ 
-    "PREFIX=${placeholder "out"}" 
-    "BINDIR=${placeholder "bin"}/bin" 
+  makeFlags = [
+    "PREFIX=${placeholder "out"}"
+    "BINDIR=${placeholder "bin"}/bin"
   ];
 
   buildPhase = ''
diff --git a/pkgs/tools/system/minijail/default.nix b/pkgs/tools/system/minijail/default.nix
index 2b4d1deb9f9..2f5adc3f4c9 100644
--- a/pkgs/tools/system/minijail/default.nix
+++ b/pkgs/tools/system/minijail/default.nix
@@ -1,45 +1,60 @@
-{ stdenv, fetchFromGitiles, libcap }:
+{ stdenv, lib, fetchFromGitiles, glibc, libcap, qemu }:
+
+let
+  dumpConstants =
+    if stdenv.buildPlatform == stdenv.hostPlatform then "./dump_constants"
+    else if stdenv.hostPlatform.isAarch32 then "qemu-arm dump_constants"
+    else if stdenv.hostPlatform.isAarch64 then "qemu-aarch64 dump_constants"
+    else if stdenv.hostPlatform.isx86_64 then "qemu-x86_64 dump_constants"
+    else throw "Unsupported host platform";
+in
 
 stdenv.mkDerivation rec {
   pname = "minijail";
-  version = "android-10.0.0_r9";
+  version = "14";
 
   src = fetchFromGitiles {
     url = "https://android.googlesource.com/platform/external/minijail";
-    rev = version;
-    sha256 = "0gcfsyim1krrddcklydqfxl8mamaxgail2xl5qp9yclq60km8f22";
+    rev = "linux-v${version}";
+    sha256 = "00dq854n4zg3ca2b46f90k15n32zn2sgabi76mnq2w985k9v977n";
   };
 
+  nativeBuildInputs =
+    lib.optional (stdenv.buildPlatform != stdenv.hostPlatform) qemu;
   buildInputs = [ libcap ];
 
   makeFlags = [ "LIBDIR=$(out)/lib" ];
-
-  preConfigure = ''
-    substituteInPlace common.mk --replace /bin/echo echo
-    sed -i '/#include <asm\/siginfo.h>/ d' signal_handler.c
-  '';
+  dumpConstantsFlags = lib.optional (stdenv.hostPlatform.libc == "glibc")
+    "LDFLAGS=-L${glibc.static}/lib";
 
   postPatch = ''
+    substituteInPlace common.mk --replace /bin/echo echo
     patchShebangs platform2_preinstall.sh
   '';
 
   postBuild = ''
-    ./platform2_preinstall.sh ${version} $out/include/chromeos
+    make $makeFlags $buildFlags $dumpConstantsFlags dump_constants
+    ${dumpConstants} > constants.json
   '';
 
   installPhase = ''
-    mkdir -p $out/lib/pkgconfig $out/include/chromeos $out/bin
+    ./platform2_preinstall.sh ${version} $out/include/chromeos
+
+    mkdir -p $out/lib/pkgconfig $out/include/chromeos $out/bin \
+        $out/share/minijail
+
     cp -v *.so $out/lib
     cp -v *.pc $out/lib/pkgconfig
     cp -v libminijail.h scoped_minijail.h $out/include/chromeos
     cp -v minijail0 $out/bin
+    cp -v constants.json $out/share/minijail
   '';
 
-  meta = {
-    homepage = https://android.googlesource.com/platform/external/minijail/;
+  meta = with lib; {
+    homepage = "https://android.googlesource.com/platform/external/minijail/";
     description = "Sandboxing library and application using Linux namespaces and capabilities";
-    license = stdenv.lib.licenses.bsd3;
-    maintainers = with stdenv.lib.maintainers; [pcarrier];
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ pcarrier qyliss ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/tools/system/minijail/tools.nix b/pkgs/tools/system/minijail/tools.nix
new file mode 100644
index 00000000000..875ea0dbff9
--- /dev/null
+++ b/pkgs/tools/system/minijail/tools.nix
@@ -0,0 +1,13 @@
+{ buildPythonApplication, lib, minijail }:
+
+buildPythonApplication {
+  pname = "minijail-tools";
+  inherit (minijail) version src;
+
+  meta = with lib; {
+    homepage = "https://android.googlesource.com/platform/external/minijail/+/refs/heads/master/tools/";
+    description = "A set of tools for minijail";
+    license = licenses.asl20;
+    inherit (minijail.meta) maintainers platforms;
+  };
+}
diff --git a/pkgs/tools/system/netdata/default.nix b/pkgs/tools/system/netdata/default.nix
index 9abadd38356..dcf1177e48f 100644
--- a/pkgs/tools/system/netdata/default.nix
+++ b/pkgs/tools/system/netdata/default.nix
@@ -14,14 +14,14 @@ with stdenv.lib;
 let
   go-d-plugin = callPackage ./go.d.plugin.nix {};
 in stdenv.mkDerivation rec {
-  version = "1.20.0";
+  version = "1.21.0";
   pname = "netdata";
 
   src = fetchFromGitHub {
     owner = "netdata";
     repo = "netdata";
     rev = "v${version}";
-    sha256 = "0g7iv5w14wndl5iv2q81dppgwq09sm93vpnyq7p49nl7q1dsz1d6";
+    sha256 = "08gxwxvg816hj7sxsb8s97ny2562xri9nx0w2zx7xsssp22grawk";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -36,11 +36,6 @@ in stdenv.mkDerivation rec {
 
   patches = [
     ./no-files-in-etc-and-var.patch
-    # part of the next release
-    (fetchpatch {
-      url = "https://github.com/netdata/netdata/commit/5c992b7d92cf008ce91627efccf8644732db1f87.patch";
-      sha256 = "1nvbmhy5rir4kw77dhx1qr0l0wcspakr7z7ivva1ilz1aml8nbnm";
-    })
   ];
 
   NIX_CFLAGS_COMPILE = optionalString withDebug "-O1 -ggdb -DNETDATA_INTERNAL_CHECKS=1";
@@ -52,13 +47,17 @@ in stdenv.mkDerivation rec {
     # rename this plugin so netdata will look for setuid wrapper
     mv $out/libexec/netdata/plugins.d/apps.plugin \
        $out/libexec/netdata/plugins.d/apps.plugin.org
+    mv $out/libexec/netdata/plugins.d/perf.plugin \
+       $out/libexec/netdata/plugins.d/perf.plugin.org
+    mv $out/libexec/netdata/plugins.d/slabinfo.plugin \
+       $out/libexec/netdata/plugins.d/slabinfo.plugin.org
     ${optionalString withIpmi ''
       mv $out/libexec/netdata/plugins.d/freeipmi.plugin \
          $out/libexec/netdata/plugins.d/freeipmi.plugin.org
     ''}
   '';
 
-  preConfigure =  optionalString (!stdenv.isDarwin) ''
+  preConfigure = optionalString (!stdenv.isDarwin) ''
     substituteInPlace collectors/python.d.plugin/python_modules/third_party/lm_sensors.py \
       --replace 'ctypes.util.find_library("sensors")' '"${lm_sensors.out}/lib/libsensors${stdenv.hostPlatform.extensions.sharedLibrary}"'
   '';
diff --git a/pkgs/tools/system/procodile/Gemfile.lock b/pkgs/tools/system/procodile/Gemfile.lock
index 7989b7bf1f7..f53a07d6657 100644
--- a/pkgs/tools/system/procodile/Gemfile.lock
+++ b/pkgs/tools/system/procodile/Gemfile.lock
@@ -12,4 +12,4 @@ DEPENDENCIES
   procodile
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/system/r10k/Gemfile.lock b/pkgs/tools/system/r10k/Gemfile.lock
index 3ff9b646215..9f55e273ef2 100644
--- a/pkgs/tools/system/r10k/Gemfile.lock
+++ b/pkgs/tools/system/r10k/Gemfile.lock
@@ -45,4 +45,4 @@ DEPENDENCIES
   r10k
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/tools/system/s6-rc/default.nix b/pkgs/tools/system/s6-rc/default.nix
index 95d4b376d0a..4ddc7fbecc0 100644
--- a/pkgs/tools/system/s6-rc/default.nix
+++ b/pkgs/tools/system/s6-rc/default.nix
@@ -4,8 +4,8 @@ with skawarePackages;
 
 buildPackage {
   pname = "s6-rc";
-  version = "0.5.1.1";
-  sha256 = "0lmg517l8inn7bi57q35rjd7b4jmqlmkhrbvs5ybbhinhd12qzi5";
+  version = "0.5.1.2";
+  sha256 = "18m8jsx3bkj566p6xwwnsvdckk10n8wqnhp0na2k88i295h4rnjp";
 
   description = "A service manager for s6-based systems";
   platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/tools/system/s6/default.nix b/pkgs/tools/system/s6/default.nix
index efdf173a22c..3ce97a9d97b 100644
--- a/pkgs/tools/system/s6/default.nix
+++ b/pkgs/tools/system/s6/default.nix
@@ -4,8 +4,8 @@ with skawarePackages;
 
 buildPackage {
   pname = "s6";
-  version = "2.9.0.1";
-  sha256 = "0mvcjrz8nlj9p2zclmcv22b4y6bqzd2iz38arhgc989vdvrbmkg0";
+  version = "2.9.1.0";
+  sha256 = "1xqzl2wnvcmcyhppk7mc10h1ac7fkik3i6gpyliwpf3d5i9mkqh5";
 
   description = "skarnet.org's small & secure supervision software suite";
 
diff --git a/pkgs/tools/system/stress-ng/default.nix b/pkgs/tools/system/stress-ng/default.nix
index 32bb8f4f454..6645639bcf0 100644
--- a/pkgs/tools/system/stress-ng/default.nix
+++ b/pkgs/tools/system/stress-ng/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "stress-ng";
-  version = "0.11.02";
+  version = "0.11.07";
 
   src = fetchurl {
     url = "https://kernel.ubuntu.com/~cking/tarballs/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "0vwqv3hq7h4z53ayk2c69zf60ncr0v2g0vxaci1pmxlhiz56y6md";
+    sha256 = "1kyxkwn18y4161yyvxw3hd9xlzwlp270sn4gpnzvmr6rwxhr0nvh";
   };
 
   postPatch = ''
diff --git a/pkgs/tools/system/thermald/default.nix b/pkgs/tools/system/thermald/default.nix
index 7afa91abf13..fae772a2713 100644
--- a/pkgs/tools/system/thermald/default.nix
+++ b/pkgs/tools/system/thermald/default.nix
@@ -27,7 +27,11 @@ stdenv.mkDerivation rec {
     "--localstatedir=/var"
     "--with-dbus-sys-dir=${placeholder "out"}/share/dbus-1/system.d"
     "--with-systemdsystemunitdir=${placeholder "out"}/etc/systemd/system"
-    ];
+  ];
+
+  postInstall = ''
+    cp ./data/thermal-conf.xml $out/etc/thermald/
+  '';
 
   meta = with stdenv.lib; {
     description = "Thermal Daemon";
diff --git a/pkgs/tools/system/thinkfan/default.nix b/pkgs/tools/system/thinkfan/default.nix
index f3b4ab8440e..4edcfb63fe5 100644
--- a/pkgs/tools/system/thinkfan/default.nix
+++ b/pkgs/tools/system/thinkfan/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "thinkfan";
-  version = "1.0.2";
+  version = "1.1";
 
   src = fetchFromGitHub {
     owner = "vmatare";
     repo = "thinkfan";
     rev = version;
-    sha256 = "107vw0962hrwva3wra9n3hxlbfzg82ldc10qssv3dspja88g8psr";
+    sha256 = "1fxd1w3z65glw6y04myn7ihgswkx6sqnkky159mik4n96pfrsvr5";
   };
 
   cmakeFlags = [
diff --git a/pkgs/tools/system/zenith/cargo-lock.patch b/pkgs/tools/system/zenith/cargo-lock.patch
new file mode 100644
index 00000000000..3ab51ad5d4e
--- /dev/null
+++ b/pkgs/tools/system/zenith/cargo-lock.patch
@@ -0,0 +1,13 @@
+diff --git a/Cargo.lock b/Cargo.lock
+index 3f4eec6..2f565c6 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1297,7 +1297,7 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
+ 
+ [[package]]
+ name = "zenith"
+-version = "0.8.0"
++version = "0.8.1"
+ dependencies = [
+  "battery",
+  "bincode",
diff --git a/pkgs/tools/system/zenith/default.nix b/pkgs/tools/system/zenith/default.nix
new file mode 100644
index 00000000000..f59541c2641
--- /dev/null
+++ b/pkgs/tools/system/zenith/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, rustPlatform, fetchFromGitHub, IOKit }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "zenith";
+  version = "0.8.1";
+
+  src = fetchFromGitHub {
+    owner = "bvaisvil";
+    repo = pname;
+    rev = version;
+    sha256 = "12wbx4zhf1rf13g3mw8vcn8aqk9vcza61vi42y6c1pb2km73qw1h";
+  };
+
+  cargoPatches = [ ./cargo-lock.patch ];
+  cargoSha256 = "1nyci2vjwsyfscsd520d1r5vyazb33hv4mrsysy6amss4jdf2dlq";
+
+  buildInputs = stdenv.lib.optionals stdenv.isDarwin [ IOKit ];
+
+  meta = with stdenv.lib; {
+    description = "Sort of like top or htop but with zoom-able charts, network, and disk usage";
+    homepage = "https://github.com/bvaisvil/zenith";
+    license = licenses.mit;
+    maintainers = with maintainers; [ bbigras ];
+    # doesn't build on aarch64 https://github.com/bvaisvil/zenith/issues/19
+    platforms = platforms.x86;
+  };
+}
diff --git a/pkgs/tools/text/bcat/Gemfile.lock b/pkgs/tools/text/bcat/Gemfile.lock
index 09108977c71..cbff494fe86 100644
--- a/pkgs/tools/text/bcat/Gemfile.lock
+++ b/pkgs/tools/text/bcat/Gemfile.lock
@@ -12,4 +12,4 @@ DEPENDENCIES
   bcat
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/text/diffr/default.nix b/pkgs/tools/text/diffr/default.nix
index 9ddaa3468ff..7ce9c316304 100644
--- a/pkgs/tools/text/diffr/default.nix
+++ b/pkgs/tools/text/diffr/default.nix
@@ -2,23 +2,23 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "diffr";
-  version = "v0.1.2";
-
-  # diffr's tests expect the diffr binary to be at `$CARGO_MANIFEST_DIR/target/debug/diffr`.
-  doCheck = false;
+  version = "v0.1.4";
 
   src = fetchFromGitHub {
     owner = "mookid";
     repo = pname;
     rev = version;
-    sha256 = "1fpcyl4kc4djfl6a2jlj56xqra42334vygz8n7614zgjpyxz3zx2";
+    sha256 = "18ks5g4bx6iz9hdjxmi6a41ncxpb1hnsscdlddp2gr40k3vgd0pa";
   };
 
-  cargoSha256 = "17xgjk8li29b8q8p2bi56klqg0v2q0j6ich438c4p06jrszccx1f";
+  cargoSha256 = "09yn02985yv40n9y0ipz0jmj7iqhz7l8hd3ry9ib3fyw9pyklnfa";
 
-  nativeBuildInputs = [];
   buildInputs = (stdenv.lib.optional stdenv.isDarwin Security);
 
+  preCheck = ''
+    export DIFFR_TESTS_BINARY_PATH=$releaseDir/diffr
+  '';
+
   meta = with stdenv.lib; {
     description = "Yet another diff highlighting tool";
     homepage = https://github.com/mookid/diffr;
diff --git a/pkgs/tools/text/fanficfare/default.nix b/pkgs/tools/text/fanficfare/default.nix
index ac89b6af32a..ac90b4d7792 100644
--- a/pkgs/tools/text/fanficfare/default.nix
+++ b/pkgs/tools/text/fanficfare/default.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   pname = "FanFicFare";
-  version = "3.16.0";
+  version = "3.17.0";
 
   src = python3Packages.fetchPypi {
     inherit pname version;
-    sha256 = "1l76fh23a9wmw47bahd5l1bxyqcy54lahvid373iy9p3586fskis";
+    sha256 = "1h7kzlw516w9qk5vcn0rqibxbhvzbmxgnf9l6yjxj30x53ynrvzj";
   };
 
   propagatedBuildInputs = with python3Packages; [
diff --git a/pkgs/tools/text/gtranslator/default.nix b/pkgs/tools/text/gtranslator/default.nix
index b871ac6ffaa..523a8d48712 100644
--- a/pkgs/tools/text/gtranslator/default.nix
+++ b/pkgs/tools/text/gtranslator/default.nix
@@ -13,6 +13,7 @@
 , json-glib
 , gspell
 , glib
+, libdazzle
 , gtk3
 , gtksourceview4
 , gnome3
@@ -21,11 +22,11 @@
 
 stdenv.mkDerivation rec {
   pname = "gtranslator";
-  version = "3.34.0";
+  version = "3.36.0";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
-    sha256 = "05zvpx330h9k7b12p07bhcy47vq66260fmiph2b6h97xpl15rwmj";
+    sha256 = "LaodO1m0o171TfCHNFsD4XA+clCB+drFQ1OSKKcVrdM=";
   };
 
   nativeBuildInputs = [
@@ -42,6 +43,7 @@ stdenv.mkDerivation rec {
     libxml2
     glib
     gtk3
+    libdazzle
     gtksourceview4
     libgda
     libsoup
diff --git a/pkgs/tools/text/kdiff3/default.nix b/pkgs/tools/text/kdiff3/default.nix
index d55ed89e633..f41de9baffc 100644
--- a/pkgs/tools/text/kdiff3/default.nix
+++ b/pkgs/tools/text/kdiff3/default.nix
@@ -6,11 +6,11 @@
 
 mkDerivation rec {
   pname = "kdiff3";
-  version = "1.8.1";
+  version = "1.8.2";
 
   src = fetchurl {
     url = "https://download.kde.org/stable/${pname}/${pname}-${version}.tar.xz";
-    sha256 = "0vj3rw5w0kry2c1y8gv6hniam417w7k3ydb1dkf5xwr4iprw0xvq";
+    sha256 = "0s5vsm1avzv88b6mf2pp20c2sz0srrj52iiqpnwi3p4ihivm8wgv";
   };
 
   nativeBuildInputs = [ extra-cmake-modules kdoctools wrapGAppsHook ];
@@ -18,7 +18,7 @@ mkDerivation rec {
   propagatedBuildInputs = [ kconfig kcrash kinit kparts kiconthemes ];
 
   meta = with lib; {
-    homepage = http://kdiff3.sourceforge.net/;
+    homepage = "http://kdiff3.sourceforge.net/";
     license = licenses.gpl2Plus;
     description = "Compares and merges 2 or 3 files or directories";
     maintainers = with maintainers; [ peterhoeg ];
diff --git a/pkgs/tools/text/kramdown-rfc2629/Gemfile.lock b/pkgs/tools/text/kramdown-rfc2629/Gemfile.lock
index f4f16580c0c..b50dc2fdbca 100644
--- a/pkgs/tools/text/kramdown-rfc2629/Gemfile.lock
+++ b/pkgs/tools/text/kramdown-rfc2629/Gemfile.lock
@@ -14,4 +14,4 @@ DEPENDENCIES
   kramdown-rfc2629
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/tools/text/languagetool/default.nix b/pkgs/tools/text/languagetool/default.nix
index 8d9e44f1b86..154e099d3dd 100644
--- a/pkgs/tools/text/languagetool/default.nix
+++ b/pkgs/tools/text/languagetool/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "LanguageTool";
-  version = "4.8";
+  version = "4.9";
 
   src = fetchzip {
     url = "https://www.languagetool.org/download/${pname}-${version}.zip";
-    sha256 = "0xhzrrw52mqsv3n1rr98p8zi84i63gpcd104ahkkhhyzwvy9kprc";
+    sha256 = "05jqqamdvi5x35yy9bqw6wf7qagrm1r9488f7cfbbv764zfirz17";
   };
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = [ jre ];
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   '';
 
   meta = with stdenv.lib; {
-    homepage = https://languagetool.org;
+    homepage = "https://languagetool.org";
     license = licenses.lgpl21Plus;
     maintainers = with maintainers; [
       edwtjo
diff --git a/pkgs/tools/text/markdown-pp/default.nix b/pkgs/tools/text/markdown-pp/default.nix
index f479c221b65..eaaa0547964 100644
--- a/pkgs/tools/text/markdown-pp/default.nix
+++ b/pkgs/tools/text/markdown-pp/default.nix
@@ -3,7 +3,7 @@
 with pythonPackages;
 buildPythonApplication rec {
   pname = "MarkdownPP";
-  version = "1.4";
+  version = "1.5.1";
   propagatedBuildInputs = [ pillow watchdog ];
   checkPhase = ''
     cd test
@@ -13,7 +13,7 @@ buildPythonApplication rec {
     owner = "jreese";
     repo = "markdown-pp";
     rev = "v${version}";
-    sha256 = "1xmc0cxvvf6jzr7p4f0hm8icysrd44sy2kgff9b99lr1agwkmysq";
+    sha256 = "180i5wn9z6vdk2k2bh8345z3g80hj7zf5s2pq0h7k9vaxqpp7avc";
   };
   meta = with stdenv.lib; {
     description = "Preprocessor for Markdown files to generate a table of contents and other documentation needs";
diff --git a/pkgs/tools/text/mdbook/default.nix b/pkgs/tools/text/mdbook/default.nix
index 09e0b24ab7f..9ca92a21db1 100644
--- a/pkgs/tools/text/mdbook/default.nix
+++ b/pkgs/tools/text/mdbook/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "mdbook";
-  version = "0.3.6";
+  version = "0.3.7";
 
   src = fetchFromGitHub {
     owner = "rust-lang-nursery";
     repo = "mdBook";
     rev = "v${version}";
-    sha256 = "07rpak233mi6ssqbpqsccn66a32jcgl90a5iyl2l5yyxw95rcya0";
+    sha256 = "0a5i842aqa5xaii5lfrnks0ldavbhbd3bl4f2d442i1ahbin5b32";
   };
 
-  cargoSha256 = "0aanngwx7k86fb11zjx4wx954md446nn8667f2plr6bkqmlpxlkr";
+  cargoSha256 = "1qx3447y684b7y18lgk9cc37if2ld42jnmy1kak191q6rjh5ssh7";
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ CoreServices ];
 
diff --git a/pkgs/tools/text/papertrail/Gemfile.lock b/pkgs/tools/text/papertrail/Gemfile.lock
index 0d1b2a6fbe6..37cd23eab6f 100644
--- a/pkgs/tools/text/papertrail/Gemfile.lock
+++ b/pkgs/tools/text/papertrail/Gemfile.lock
@@ -14,4 +14,4 @@ DEPENDENCIES
   papertrail
 
 BUNDLED WITH
-   1.14.4
+   2.1.4
diff --git a/pkgs/tools/text/reckon/Gemfile.lock b/pkgs/tools/text/reckon/Gemfile.lock
index 0ede7e2a256..94f0f8f506c 100644
--- a/pkgs/tools/text/reckon/Gemfile.lock
+++ b/pkgs/tools/text/reckon/Gemfile.lock
@@ -18,4 +18,4 @@ DEPENDENCIES
   reckon
 
 BUNDLED WITH
-   1.12.5
+   2.1.4
diff --git a/pkgs/tools/text/ripgrep-all/default.nix b/pkgs/tools/text/ripgrep-all/default.nix
index 5d02e6225be..dcce9bf3291 100644
--- a/pkgs/tools/text/ripgrep-all/default.nix
+++ b/pkgs/tools/text/ripgrep-all/default.nix
@@ -4,16 +4,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ripgrep-all";
-  version = "0.9.3";
+  version = "0.9.5";
 
   src = fetchFromGitHub {
     owner = "phiresky";
     repo = pname;
-    rev = version;
-    sha256 = "0fxvnd8qflzvqz2181njdhpbr4wdvd1jc6lcw38c3pknk9h3ymq9";
+    rev = "v${version}";
+    sha256 = "1nl03i36ilhxn5xbcry6pcr7vbl5667m43flpxaa0lf1wijzn5c2";
   };
 
-  cargoSha256 = "1ajj1glc9c1scnryyil7qg05gvyn1pk8dl2ivmv5h74vx0x8n0rv";
+  cargoSha256 = "0ndyd8qrvljkk6yvpsp0w17iizxb529sh5q2bj790m32x0gz2w8l";
   nativeBuildInputs = [ makeWrapper ];
   buildInputs = lib.optional stdenv.isDarwin Security;
 
@@ -55,7 +55,7 @@ rustPlatform.buildRustPackage rec {
       a multitude of file types. rga wraps the awesome ripgrep and enables it
       to search in pdf, docx, sqlite, jpg, movie subtitles (mkv, mp4), etc.
     '';
-    homepage = https://github.com/phiresky/ripgrep-all;
+    homepage = "https://github.com/phiresky/ripgrep-all";
     license = with licenses; [ agpl3Plus ];
     maintainers = with maintainers; [ zaninime ma27 ];
     platforms = platforms.all;
diff --git a/pkgs/tools/text/ripgrep/default.nix b/pkgs/tools/text/ripgrep/default.nix
index d90537bd553..c794b4ba33c 100644
--- a/pkgs/tools/text/ripgrep/default.nix
+++ b/pkgs/tools/text/ripgrep/default.nix
@@ -12,16 +12,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "ripgrep";
-  version = "12.0.0";
+  version = "12.0.1";
 
   src = fetchFromGitHub {
     owner = "BurntSushi";
     repo = pname;
     rev = version;
-    sha256 = "0n4169l662fvg6r4rcfs8n8f92rxndlaqb7k4x63680mra470dbi";
+    sha256 = "1c0v51s05kbg9825n6mvpizhkkgz38wl7hp8f3vzbjfg4i8l8wb0";
   };
 
-  cargoSha256 = "01zi9zqdjsgc3im9na511n6w2bmqvm46wryh10fhzc9fnkziqmq3";
+  cargoSha256 = "0i8x2xgri8f8mzrlkc8l2yzcgczl35nw4bmwg09d343mjkmk6d8y";
 
   cargoBuildFlags = stdenv.lib.optional withPCRE2 "--features pcre2";
 
diff --git a/pkgs/tools/text/rosie/default.nix b/pkgs/tools/text/rosie/default.nix
new file mode 100644
index 00000000000..37f523c0347
--- /dev/null
+++ b/pkgs/tools/text/rosie/default.nix
@@ -0,0 +1,47 @@
+{ stdenv
+, lib
+, fetchgit
+, libbsd
+, readline
+}:
+
+stdenv.mkDerivation rec {
+  pname = "rosie";
+  version = "unstable-2020-01-11";
+  src = fetchgit {
+    url = https://gitlab.com/rosie-pattern-language/rosie;
+    rev = "670e9027563609ba2ea31e14e2621a1302742795";
+    sha256 = "0jc512dbn62a1fniknhbp6q0xa1p7xi3hn5v60is8sy9jgi3afxv";
+    fetchSubmodules = true;
+  };
+
+  postUnpack = ''
+    # The Makefile calls git to update submodules, unless this file exists
+    touch ${src.name}/submodules/~~present~~
+  '';
+
+  preConfigure = ''
+    patchShebangs src/build_info.sh
+    # Part of the same Makefile target which calls git to update submodules
+    ln -s src submodules/lua/include
+  '';
+
+  postInstall = ''
+    mkdir -p $out/share/emacs/site-lisp $out/share/vim-plugins $out/share/nvim
+    mv $out/lib/rosie/extra/extra/emacs/* $out/share/emacs/site-lisp/
+    mv $out/lib/rosie/extra/extra/vim $out/share/vim-plugins/rosie
+    ln -s $out/share/vim-plugins/rosie $out/share/nvim/site
+  '';
+
+  makeFlags = [ "DESTDIR=${placeholder "out"}" ];
+
+  buildInputs = [ libbsd readline ];
+
+  meta = with lib; {
+    homepage = https://rosie-lang.org;
+    description = "Tools for searching using parsing expression grammars";
+    license = licenses.mit;
+    maintainers = with maintainers; [ kovirobi ];
+    platforms = with platforms; linux ++ darwin;
+  };
+}
diff --git a/pkgs/tools/text/sd/default.nix b/pkgs/tools/text/sd/default.nix
index 1b6e4d945d4..a12f07d6da6 100644
--- a/pkgs/tools/text/sd/default.nix
+++ b/pkgs/tools/text/sd/default.nix
@@ -3,16 +3,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "sd";
-  version = "0.6.5";
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "chmln";
     repo = pname;
-    rev = version;
-    sha256 = "1vxljmd1vh245yhv095i3l44pk915zr2pix4v9r8pz2fynp2nnmj";
+    rev = "v${version}";
+    sha256 = "15siv3p22v7lj37b74pjsy360qx97d40q2xdzdg2srbi8svjgg27";
   };
 
-  cargoSha256 = "0n4c0snmjfyk3z2mbzpqgb6ggyv4nqszdda035g3rzpbavzx9xb5";
+  cargoSha256 = "1sa7ki7kyg98l2gcrdzk7182ghm1clyqljjb596mhzh48g8kddn5";
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ];
 
diff --git a/pkgs/tools/text/shfmt/default.nix b/pkgs/tools/text/shfmt/default.nix
index 265141ad534..71f79724b9c 100644
--- a/pkgs/tools/text/shfmt/default.nix
+++ b/pkgs/tools/text/shfmt/default.nix
@@ -2,18 +2,20 @@
 
 buildGoModule rec {
   pname = "shfmt";
-  version = "3.0.2";
+  version = "3.1.0";
 
   src = fetchFromGitHub {
     owner = "mvdan";
     repo = "sh";
     rev = "v${version}";
-    sha256 = "1q0gazh87y7sl5sl5m046a83d64aas9xnbg2d1d1h2vwcqdaccp2";
+    sha256 = "1k0bq4b4rv6wrh24jvcnpg1mfqrzqhl90zg4zibxzv3zkhjdskzh";
   };
 
-  modSha256 = "1ll2cxhgf8hh19wzdykgc81c4yfcp8bzmfaif08nvvb63rhjdb5y";
+  modSha256 = "080k8d5rp8kyg0x7vjxm758b9ya9z336yd4rcqws7yhqawxiv55z";
   subPackages = ["cmd/shfmt"];
 
+  buildFlagsArray = [ "-ldflags=-s -w -X main.version=${version}" ];
+
   meta = with lib; {
     homepage = "https://github.com/mvdan/sh";
     description = "A shell parser and formatter";
diff --git a/pkgs/tools/typesetting/asciidoctor/Gemfile.lock b/pkgs/tools/typesetting/asciidoctor/Gemfile.lock
index 02081e117d6..c928e954875 100644
--- a/pkgs/tools/typesetting/asciidoctor/Gemfile.lock
+++ b/pkgs/tools/typesetting/asciidoctor/Gemfile.lock
@@ -93,4 +93,4 @@ DEPENDENCIES
   rouge
 
 BUNDLED WITH
-   1.17.2
+   2.1.4
diff --git a/pkgs/tools/typesetting/docbookrx/Gemfile.lock b/pkgs/tools/typesetting/docbookrx/Gemfile.lock
index e1fbc2c9446..423fac6c30a 100644
--- a/pkgs/tools/typesetting/docbookrx/Gemfile.lock
+++ b/pkgs/tools/typesetting/docbookrx/Gemfile.lock
@@ -12,4 +12,4 @@ DEPENDENCIES
   nokogiri (~> 1.8.0)
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/tools/typesetting/hevea/default.nix b/pkgs/tools/typesetting/hevea/default.nix
index d5ede51ba0c..f3f634eb944 100644
--- a/pkgs/tools/typesetting/hevea/default.nix
+++ b/pkgs/tools/typesetting/hevea/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, ocamlPackages }:
 
 stdenv.mkDerivation rec {
-  name = "hevea-2.33";
+  name = "hevea-2.34";
 
   src = fetchurl {
     url = "http://pauillac.inria.fr/~maranget/hevea/distri/${name}.tar.gz";
-    sha256 = "0115bn6n6hhb08rmj0m508wjcsn1mggiagqly6s941pq811wxymb";
+    sha256 = "1pzyszxw90klpcmhjqrjfc8cw6c0gm4w2blim8ydyxb6rq6qml1s";
   };
 
   buildInputs = with ocamlPackages; [ ocaml ocamlbuild ];
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "A quite complete and fast LATEX to HTML translator";
-    homepage = http://pauillac.inria.fr/~maranget/hevea/;
+    homepage = "http://pauillac.inria.fr/~maranget/hevea/";
     license = licenses.qpl;
     maintainers = with maintainers; [ pSub ];
     platforms = with platforms; unix;
diff --git a/pkgs/tools/typesetting/kramdown-asciidoc/Gemfile.lock b/pkgs/tools/typesetting/kramdown-asciidoc/Gemfile.lock
index f47f401367c..c975e23f323 100644
--- a/pkgs/tools/typesetting/kramdown-asciidoc/Gemfile.lock
+++ b/pkgs/tools/typesetting/kramdown-asciidoc/Gemfile.lock
@@ -12,4 +12,4 @@ DEPENDENCIES
   kramdown-asciidoc
 
 BUNDLED WITH
-   1.17.3
+   2.1.4
diff --git a/pkgs/tools/typesetting/rubber/default.nix b/pkgs/tools/typesetting/rubber/default.nix
index 21d83dd1dd0..a045a9810b9 100644
--- a/pkgs/tools/typesetting/rubber/default.nix
+++ b/pkgs/tools/typesetting/rubber/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, python3Packages, texinfo }:
 
 python3Packages.buildPythonApplication rec {
-  name = "rubber-${version}";
+  pname = "rubber";
   version = "1.5.1";
 
   src = fetchurl {
-    url = "https://launchpad.net/rubber/trunk/${version}/+download/${name}.tar.gz";
+    url = "https://launchpad.net/rubber/trunk/${version}/+download/${pname}-${version}.tar.gz";
     sha256 = "178dmrp0mza5gqjiqgk6dqs0c10s0c517pk6k9pjbam86vf47a1p";
   };
 
diff --git a/pkgs/tools/typesetting/tex/texlive/combine.nix b/pkgs/tools/typesetting/tex/texlive/combine.nix
index cb4bc14927d..ee4d0dfe588 100644
--- a/pkgs/tools/typesetting/tex/texlive/combine.nix
+++ b/pkgs/tools/typesetting/tex/texlive/combine.nix
@@ -153,7 +153,8 @@ in buildEnv {
       rm "$link"
       makeWrapper "$target" "$link" \
         --prefix PATH : "$out/bin:${perl}/bin" \
-        --prefix PERL5LIB : "$PERL5LIB"
+        --prefix PERL5LIB : "$PERL5LIB" \
+        --set-default TEXMFCNF "$TEXMFCNF"
 
       # avoid using non-nix shebang in $target by calling interpreter
       if [[ "$(head -c 2 "$target")" = "#!" ]]; then
diff --git a/pkgs/tools/video/vnc2flv/default.nix b/pkgs/tools/video/vnc2flv/default.nix
index 561c8cf7d78..52d3e34f347 100644
--- a/pkgs/tools/video/vnc2flv/default.nix
+++ b/pkgs/tools/video/vnc2flv/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pythonPackages }:
 
 pythonPackages.buildPythonApplication rec {
-  name = "vnc2flv-20100207";
-  namePrefix = "";
+  pname = "vnc2flv";
+  version = "20100207";
 
   src = fetchurl {
-    url = "mirror://pypi/v/vnc2flv/${name}.tar.gz";
+    url = "mirror://pypi/v/vnc2flv/${pname}-${version}.tar.gz";
     sha256 = "14d4nm8yim0bm0nd3wyj7z4zdsg5zk3d9bhhvwdc36x03r8d0sbq";
   };
 
diff --git a/pkgs/tools/virtualization/amazon-ecs-cli/default.nix b/pkgs/tools/virtualization/amazon-ecs-cli/default.nix
index a27e006053f..ada948735d0 100644
--- a/pkgs/tools/virtualization/amazon-ecs-cli/default.nix
+++ b/pkgs/tools/virtualization/amazon-ecs-cli/default.nix
@@ -2,18 +2,18 @@
 
 stdenv.mkDerivation rec {
   pname = "amazon-ecs-cli";
-  version = "1.18.0";
+  version = "1.18.1";
 
   src =
     if stdenv.hostPlatform.system == "x86_64-linux" then
       fetchurl {
         url = "https://s3.amazonaws.com/amazon-ecs-cli/ecs-cli-linux-amd64-v${version}";
-        sha256 = "1w4n7rkcxpdzg7450s22a80a27g845n61k2bdfhq4c1md7604nyz";
+        sha256 = "1q0qsvxwz6mgslwzwslddxxv45v9wmlbbkxgyfz3dfkw6n6d1a2s";
       }
     else if stdenv.hostPlatform.system == "x86_64-darwin" then
       fetchurl {
         url = "https://s3.amazonaws.com/amazon-ecs-cli/ecs-cli-darwin-amd64-v${version}";
-        sha256 = "011rw4rv2vz6xa4vqfjsf9j6m3rffclv9xh0dgf5ckd07m3fd3sm";
+        sha256 = "0hik88z5xm1pw6a3mxa6zpghdv47s6bg56srxv4azjinzdi59s3b";
       }
     else throw "Architecture not supported";
 
diff --git a/pkgs/tools/virtualization/euca2ools/default.nix b/pkgs/tools/virtualization/euca2ools/default.nix
index cb31a66ea72..0f00a3606d3 100644
--- a/pkgs/tools/virtualization/euca2ools/default.nix
+++ b/pkgs/tools/virtualization/euca2ools/default.nix
@@ -3,8 +3,8 @@
 let
   inherit (python2Packages) buildPythonApplication boto m2crypto;
 in buildPythonApplication {
-  name = "euca2ools-2.1.4";
-  namePrefix = "";
+  pname = "euca2ools";
+  version = "2.1.4";
 
   src = fetchgit {
     url = https://github.com/eucalyptus/euca2ools.git;
diff --git a/pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix b/pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix
index 0daa01f85bb..04d222609a6 100644
--- a/pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix
+++ b/pkgs/tools/virtualization/google-compute-engine-oslogin/default.nix
@@ -3,6 +3,7 @@
 , curl
 , json_c
 , pam
+, bashInteractive
 }:
 
 stdenv.mkDerivation rec {
@@ -22,7 +23,7 @@ stdenv.mkDerivation rec {
     # change sudoers dir from /var/google-sudoers.d to /run/google-sudoers.d (managed through systemd-tmpfiles)
     substituteInPlace pam_module/pam_oslogin_admin.cc --replace /var/google-sudoers.d /run/google-sudoers.d
     # fix "User foo not allowed because shell /bin/bash does not exist"
-    substituteInPlace compat.h --replace /bin/bash ${stdenv.shell}
+    substituteInPlace compat.h --replace /bin/bash ${bashInteractive}/bin/bash
   '';
 
   buildInputs = [ curl.dev pam ];
diff --git a/pkgs/tools/virtualization/nixos-container/nixos-container.pl b/pkgs/tools/virtualization/nixos-container/nixos-container.pl
index 6e38942cb25..dc05c974bd0 100755
--- a/pkgs/tools/virtualization/nixos-container/nixos-container.pl
+++ b/pkgs/tools/virtualization/nixos-container/nixos-container.pl
@@ -9,6 +9,7 @@ use Getopt::Long qw(:config gnu_getopt);
 use Cwd 'abs_path';
 use Time::HiRes;
 
+my $nsenter = "@utillinux@/bin/nsenter";
 my $su = "@su@";
 
 # Ensure a consistent umask.
@@ -319,10 +320,9 @@ sub restartContainer {
 # Run a command in the container.
 sub runInContainer {
     my @args = @_;
-
-    exec("systemd-run", "--machine", $containerName, "--pty", "--quiet", "--", @args);
-
-    die "cannot run ‘systemd-run’: $!\n";
+    my $leader = getLeader;
+    exec($nsenter, "-t", $leader, "-m", "-u", "-i", "-n", "-p", "--", @args);
+    die "cannot run ‘nsenter’: $!\n";
 }
 
 # Remove a directory while recursively unmounting all mounted filesystems within
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 66fa444e0e7..b56f921d0c2 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -46,6 +46,7 @@ mapAliases ({
   asciidocFull = asciidoc-full;  # added 2014-06-22
   at_spi2_atk = at-spi2-atk; # added 2018-02-25
   at_spi2_core = at-spi2-core; # added 2018-02-25
+  avldrums-lv2 = x42-avldrums; # added 2020-03-29
   bar-xft = lemonbar-xft;  # added 2015-01-16
   bashCompletion = bash-completion; # Added 2016-09-28
   batti = throw "batti has been removed from nixpkgs, as it was unmaintained"; # added 2019-12-10
@@ -113,6 +114,7 @@ mapAliases ({
   etcdctl = etcd; # added 2018-04-25
   exfat-utils = exfat;                  # 2015-09-11
   facette = throw "facette has been removed."; # added 2020-01-06
+  fast-neural-doodle = throw "fast-neural-doodle has been removed, as the upstream project has been abandoned"; # added 2020-03-28
   fetchFromGithub = throw "You meant fetchFromGitHub, with a capital H.";
   ffadoFull = ffado; # added 2018-05-01
   firefox-esr-wrapper = firefox-esr;  # 2016-01
@@ -219,6 +221,7 @@ mapAliases ({
   libcanberra_gtk3 = libcanberra-gtk3; # added 2018-02-25
   libcap_manpages = libcap.doc; # added 2016-04-29
   libcap_pam = if stdenv.isLinux then libcap.pam else null; # added 2016-04-29
+  libcroco = throw "libcroco has been removed as it's no longer used in any derivations."; # added 2020-03-04
   libindicate = throw "libindacate has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # added 2019-12-10
   libindicate-gtk3 = throw "libindacate-gtk2 has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # added 2019-12-10
   libindicate-gtk2 = throw "libindacate-gtk3 has been removed from nixpkgs, as it's abandoned and uses deprecated libraries"; # added 2019-12-10
@@ -246,6 +249,7 @@ mapAliases ({
   links = links2; # added 2016-01-31
   linux_rpi0 = linux_rpi1;
   linuxPackages_rpi0 = linuxPackages_rpi1;
+  loadcaffe = throw "loadcaffe has been removed, as the upstream project has been abandoned"; # added 2020-03-28
   lttngTools = lttng-tools;  # added 2014-07-31
   lttngUst = lttng-ust;  # added 2014-07-31
   lua5_1_sockets = lua51Packages.luasocket; # added 2017-05-02
@@ -292,10 +296,11 @@ mapAliases ({
   networkmanager_openconnect = networkmanager-openconnect; # added 2018-02-25
   networkmanager_openvpn = networkmanager-openvpn; # added 2018-02-25
   networkmanager_vpnc = networkmanager-vpnc; # added 2018-02-25
-  nix-review = nixpkgs-review; # added 2019-12-22
+  neutral-style = throw "neural-style has been removed, as the upstream project has been abandoned"; # added 2020-03-28
   nfsUtils = nfs-utils;  # added 2014-12-06
   nginxUnstable = nginxMainline; # added 2018-04-25
   nilfs_utils = nilfs-utils; # added 2018-04-25
+  nix-review = nixpkgs-review; # added 2019-12-22
   nmap_graphical = nmap-graphical;  # added 2017-01-19
   nologin = shadow; # added 2018-04-25
   nxproxy = nx-libs; # added 2019-02-15
@@ -317,6 +322,55 @@ mapAliases ({
   perlArchiveCpio = perlPackages.ArchiveCpio; # added 2018-10-12
   pgp-tools = signing-party; # added 2017-03-26
   pg_tmp = ephemeralpg; # added 2018-01-16
+
+  php-embed = throw ''
+    php*-embed has been dropped, you can build the same package by using
+     something similar with this following snippet:
+    (php74.override { config.php.embed = true; config.php.apxs2 = false; })
+  ''; # added 2020-04-01
+  php72-embed = php-embed; # added 2020-04-01
+  php73-embed = php-embed; # added 2020-04-01
+  php74-embed = php-embed; # added 2020-04-01
+
+  phpPackages-embed = throw ''
+    php*Packages-embed has been dropped, you can build the same package by using
+     something similar with this following snippet:
+    (php74.override { config.php.embed = true; config.php.apxs2 = false; }).packages
+  ''; # added 2020-04-01
+  php74Packages-embed = phpPackages-embed;
+  php73Packages-embed = phpPackages-embed;
+  php72Packages-embed = phpPackages-embed;
+
+  php-unit = throw ''
+    php*-unit has been dropped, you can build the same package by using
+     something similar with this following snippet:
+    (php74.override {
+      config.php.embed = true;
+      config.php.apxs2 = false;
+      config.php.systemd = false;
+      config.php.phpdbg = false;
+      config.php.cgi = false;
+      config.php.fpm = false; })
+  ''; # added 2020-04-01
+  php72-unit = php-unit; # added 2020-04-01
+  php73-unit = php-unit; # added 2020-04-01
+  php74-unit = php-unit; # added 2020-04-01
+
+  phpPackages-unit = throw ''
+    php*Packages-unit has been dropped, you can build the same package by using
+     something similar with this following snippet:
+    (php74.override {
+      config.php.embed = true;
+      config.php.apxs2 = false;
+      config.php.systemd = false;
+      config.php.phpdbg = false;
+      config.php.cgi = false;
+      config.php.fpm = false; }).packages
+  ''; # added 2020-04-01
+  php74Packages-unit = phpPackages-unit;
+  php73Packages-unit = phpPackages-unit;
+  php72Packages-unit = phpPackages-unit;
+
   pidgin-with-plugins = pidgin; # added 2016-06
   pidginlatex = pidgin-latex; # added 2018-01-08
   pidginlatexSF = pidgin-latex; # added 2014-11-02
@@ -421,6 +475,7 @@ mapAliases ({
   skrooge2 = skrooge; # added 2017-02-18
   skype = skypeforlinux; # added 2017-07-27
   skydive = throw "skydive has been removed from nixpkgs (2019-09-10)";
+  slack-dark = slack; # added 2020-03-27
   slic3r-prusa3d = prusa-slicer; # added 2019-05-21
   slurm-llnl = slurm; # renamed July 2017
   slurm-llnl-full = slurm-full; # renamed July 2017
@@ -494,10 +549,14 @@ mapAliases ({
   tftp_hpa = tftp-hpa; # added 2015-04-03
   tomcat85 = tomcat8; # added 2020-03-11
   torbrowser = tor-browser-bundle-bin; # added 2017-04-05
-  transporter = throw "transporter has been removed. It was archived upstream, so it's considered abandoned.";
+  torch = throw "torch has been removed, as the upstream project has been abandoned"; # added 2020-03-28
+  torch-hdf5 = throw "torch-hdf5 has been removed, as the upstream project has been abandoned"; # added 2020-03-28
+  torch-repl = throw "torch-repl has been removed, as the upstream project has been abandoned"; # added 2020-03-28
+  torchPackages = throw "torchPackages has been removed, as the upstream project has been abandoned"; # added 2020-03-28
   trang = jing-trang; # added 2018-04-25
   transmission_gtk = transmission-gtk; # added 2018-01-06
   transmission_remote_gtk = transmission-remote-gtk; # added 2018-01-06
+  transporter = throw "transporter has been removed. It was archived upstream, so it's considered abandoned.";
   truecrypt = veracrypt; # added 2018-10-24
   tshark = wireshark-cli; # added 2018-04-25
   ubootBeagleboneBlack = ubootAmx335xEVM; # added 2020-01-21
@@ -509,6 +568,7 @@ mapAliases ({
   v4l_utils = v4l-utils; # added 2019-08-07
   v8_3_16_14 = throw "removed 2019-11-01: no longer referenced by other packages";
   valadoc = throw "deprecated 2019-10-10: valadoc was merged into vala 0.38";
+  vamp = { vampSDK = vamp-plugin-sdk; }; # added 2020-03-26
   vimbWrapper = vimb; # added 2015-01
   vimprobable2 = throw "vimprobable2 has been removed from nixpkgs. It relied on webkitgtk24x that has been removed."; # added 2019-12-05
   vimprobable2-unwrapped = vimprobable2; # added 2019-12-05
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index f4d6091c701..836e668e9ec 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -161,9 +161,7 @@ in
 
   cm256cc = callPackage ../development/libraries/cm256cc {  };
 
-  conftest = callPackage ../development/tools/conftest {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  conftest = callPackage ../development/tools/conftest { };
 
   corgi = callPackage ../development/tools/corgi { };
 
@@ -177,13 +175,9 @@ in
 
   hobbes = callPackage ../development/tools/hobbes { stdenv = gcc6Stdenv; }; # GCC 6 is latest currently supported. See https://git.io/JvK6M.
 
-  proto-contrib = callPackage ../development/tools/proto-contrib {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  proto-contrib = callPackage ../development/tools/proto-contrib {};
 
-  protoc-gen-doc = callPackage ../development/tools/protoc-gen-doc {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  protoc-gen-doc = callPackage ../development/tools/protoc-gen-doc {};
 
   demoit = callPackage ../servers/demoit { };
 
@@ -191,15 +185,15 @@ in
 
   enum4linux = callPackage ../tools/security/enum4linux {};
 
+  onesixtyone = callPackage ../tools/security/onesixtyone {};
+
   device-tree_rpi = callPackage ../os-specific/linux/device-tree/raspberrypi.nix {};
 
   diffPlugins = (callPackage ../build-support/plugins.nix {}).diffPlugins;
 
   dieHook = makeSetupHook {} ../build-support/setup-hooks/die.sh;
 
-  archiver = callPackage ../applications/misc/archiver {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  archiver = callPackage ../applications/misc/archiver { };
 
   digitalbitbox = libsForQt5.callPackage ../applications/misc/digitalbitbox { };
 
@@ -219,9 +213,7 @@ in
 
   docker-sync = callPackage ../tools/misc/docker-sync { };
 
-  docui = callPackage ../tools/misc/docui {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  docui = callPackage ../tools/misc/docui { };
 
   dotfiles = callPackage ../applications/misc/dotfiles { };
 
@@ -298,18 +290,13 @@ in
     # Version 2.6.0 fails to build with go 1.13 due to nested modules:
     #   go: directory v2/packr2 is outside main module
     buildGoModule = buildGo112Module;
-    inherit (darwin.apple_sdk.frameworks) Security;
   };
 
-  pet = callPackage ../development/tools/pet {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  pet = callPackage ../development/tools/pet { };
 
   run = callPackage ../development/tools/run { };
 
-  mod = callPackage ../development/tools/mod {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  mod = callPackage ../development/tools/mod { };
 
   broadlink-cli = callPackage ../tools/misc/broadlink-cli {};
 
@@ -541,11 +528,11 @@ in
     ffmpeg = ffmpeg_2;
   };
 
+  alsaequal = callPackage ../tools/audio/alsaequal { };
+
   acpica-tools = callPackage ../tools/system/acpica-tools { };
 
-  act = callPackage ../development/tools/misc/act {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  act = callPackage ../development/tools/misc/act {};
 
   actdiag = with python3.pkgs; toPythonApplication actdiag;
 
@@ -570,9 +557,7 @@ in
     wxGTK = wxGTK30;
   } // (config.aegisub or {}));
 
-  aerc = callPackage ../applications/networking/mailreaders/aerc {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  aerc = callPackage ../applications/networking/mailreaders/aerc { };
 
   aerospike = callPackage ../servers/nosql/aerospike { };
 
@@ -708,8 +693,6 @@ in
 
   artyFX = callPackage ../applications/audio/artyFX {};
 
-  as31 = callPackage ../development/compilers/as31 {};
-
   owl-lisp = callPackage ../development/compilers/owl-lisp {};
 
   ascii = callPackage ../tools/text/ascii { };
@@ -739,8 +722,6 @@ in
 
   avfs = callPackage ../tools/filesystems/avfs { };
 
-  avldrums-lv2 = callPackage ../applications/audio/avldrums-lv2 { };
-
   aws-iam-authenticator = callPackage ../tools/security/aws-iam-authenticator {};
 
   awscli = callPackage ../tools/admin/awscli { };
@@ -761,27 +742,19 @@ in
 
   aws-sam-cli = callPackage ../development/tools/aws-sam-cli { python = python3; };
 
-  aws-vault = callPackage ../tools/admin/aws-vault {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  aws-vault = callPackage ../tools/admin/aws-vault { };
 
-  iamy = callPackage ../tools/admin/iamy {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  iamy = callPackage ../tools/admin/iamy { };
 
   azure-cli = callPackage ../tools/admin/azure-cli { python = python3; };
 
-  azure-storage-azcopy = callPackage ../development/tools/azcopy {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  azure-storage-azcopy = callPackage ../development/tools/azcopy { };
 
   azure-vhd-utils  = callPackage ../tools/misc/azure-vhd-utils { };
 
   awless = callPackage ../tools/virtualization/awless { };
 
-  berglas = callPackage ../tools/admin/berglas/default.nix {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  berglas = callPackage ../tools/admin/berglas/default.nix { };
 
   brakeman = callPackage ../development/tools/analysis/brakeman { };
 
@@ -853,22 +826,16 @@ in
 
   calls = callPackage ../applications/networking/calls { };
 
-  certigo = callPackage ../tools/admin/certigo {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  certigo = callPackage ../tools/admin/certigo { };
 
-  chezmoi = callPackage ../tools/misc/chezmoi {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  chezmoi = callPackage ../tools/misc/chezmoi { };
 
   chipsec = callPackage ../tools/security/chipsec {
     kernel = null;
     withDriver = false;
   };
 
-  clair = callPackage ../tools/admin/clair {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  clair = callPackage ../tools/admin/clair { };
 
   cloud-sql-proxy = callPackage ../tools/misc/cloud-sql-proxy { };
 
@@ -900,9 +867,7 @@ in
 
   crc32c = callPackage ../development/libraries/crc32c { };
 
-  cue = callPackage ../development/tools/cue {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  cue = callPackage ../development/tools/cue { };
 
   deltachat-electron = callPackage
     ../applications/networking/instant-messengers/deltachat-electron { };
@@ -927,9 +892,7 @@ in
 
   sedutil = callPackage ../tools/security/sedutil { };
 
-  elvish = callPackage ../shells/elvish {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  elvish = callPackage ../shells/elvish { };
 
   emplace = callPackage ../tools/package-management/emplace { };
 
@@ -1073,6 +1036,8 @@ in
 
   ssh-agents = callPackage ../tools/networking/ssh-agents { };
 
+  ssh-import-id = python3Packages.callPackage ../tools/admin/ssh-import-id { };
+
   titaniumenv = callPackage ../development/mobile/titaniumenv { };
 
   abootimg = callPackage ../development/mobile/abootimg {};
@@ -1143,9 +1108,7 @@ in
 
   awstats = callPackage ../tools/system/awstats { };
 
-  awsweeper = callPackage ../tools/admin/awsweeper {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  awsweeper = callPackage ../tools/admin/awsweeper { };
 
   axel = callPackage ../tools/networking/axel {
     libssl = openssl;
@@ -1410,12 +1373,8 @@ in
     '';
   });
 
-  caddy = callPackage ../servers/caddy {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
-  caddy2 = callPackage ../servers/caddy/v2.nix {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  caddy = callPackage ../servers/caddy { };
+  caddy2 = callPackage ../servers/caddy/v2.nix { };
   traefik = callPackage ../servers/traefik { };
 
   calamares = libsForQt5.callPackage ../tools/misc/calamares {
@@ -1467,13 +1426,9 @@ in
 
   ccnet = callPackage ../tools/networking/ccnet { };
 
-  cassowary = callPackage ../tools/networking/cassowary {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  cassowary = callPackage ../tools/networking/cassowary { };
 
-  croc = callPackage ../tools/networking/croc {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  croc = callPackage ../tools/networking/croc { };
 
   cddl = callPackage ../development/tools/cddl { };
 
@@ -1493,9 +1448,7 @@ in
 
   clac = callPackage ../tools/misc/clac {};
 
-  clash = callPackage ../tools/networking/clash {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  clash = callPackage ../tools/networking/clash { };
 
   clasp = callPackage ../tools/misc/clasp { };
 
@@ -1614,6 +1567,8 @@ in
 
   csvkit = callPackage ../tools/text/csvkit { };
 
+  csv2latex = callPackage ../tools/misc/csv2latex { };
+
   csvs-to-sqlite = with python3Packages; toPythonApplication csvs-to-sqlite;
 
   cucumber = callPackage ../development/tools/cucumber {};
@@ -1760,9 +1715,7 @@ in
 
   eggdrop = callPackage ../tools/networking/eggdrop { };
 
-  eksctl = callPackage ../tools/admin/eksctl {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  eksctl = callPackage ../tools/admin/eksctl { };
 
   elementary-xfce-icon-theme = callPackage ../data/icons/elementary-xfce-icon-theme { };
 
@@ -1916,9 +1869,7 @@ in
 
   gosu = callPackage ../tools/misc/gosu { };
 
-  gotify-cli = callPackage ../tools/misc/gotify-cli {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  gotify-cli = callPackage ../tools/misc/gotify-cli { };
 
   gping = callPackage ../tools/networking/gping { };
 
@@ -2054,6 +2005,8 @@ in
 
   metabase = callPackage ../servers/metabase { };
 
+  midicsv = callPackage ../tools/audio/midicsv { };
+
   mididings = callPackage ../tools/audio/mididings { };
 
   miniserve = callPackage ../tools/misc/miniserve { };
@@ -2146,10 +2099,10 @@ in
 
   precice = callPackage ../development/libraries/precice { };
 
-  parallel-rust = callPackage ../tools/misc/parallel-rust { };
-
   pueue = callPackage ../applications/misc/pueue { };
 
+  pixiecore = callPackage ../tools/networking/pixiecore {};
+
   pyCA = python3Packages.callPackage ../applications/video/pyca {};
 
   pyznap = python3Packages.callPackage ../tools/backup/pyznap {};
@@ -2446,6 +2399,8 @@ in
     inherit (darwin.apple_sdk.frameworks) Carbon IOKit;
   };
 
+  cemu = qt5.callPackage ../applications/science/math/cemu { };
+
   isomd5sum = callPackage ../tools/cd-dvd/isomd5sum { };
 
   mdf2iso = callPackage ../tools/cd-dvd/mdf2iso { };
@@ -2496,9 +2451,7 @@ in
 
   ciopfs = callPackage ../tools/filesystems/ciopfs { };
 
-  circleci-cli = callPackage ../development/tools/misc/circleci-cli {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  circleci-cli = callPackage ../development/tools/misc/circleci-cli { };
 
   circus = callPackage ../tools/networking/circus { };
 
@@ -2550,7 +2503,11 @@ in
 
   conspy = callPackage ../os-specific/linux/conspy {};
 
-  connman = callPackage ../tools/networking/connman { };
+  inherit (callPackage ../tools/networking/connman {})
+    connman
+    connmanFull
+    connmanMinimal
+  ;
 
   connman-gtk = callPackage ../tools/networking/connman/connman-gtk { };
 
@@ -2669,9 +2626,7 @@ in
     caps2esc = callPackage ../tools/inputmethods/interception-tools/caps2esc.nix { };
   };
 
-  age = callPackage ../tools/security/age {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  age = callPackage ../tools/security/age { };
 
   brotli = callPackage ../tools/compression/brotli { };
 
@@ -2892,13 +2847,13 @@ in
 
   dnscrypt-wrapper = callPackage ../tools/networking/dnscrypt-wrapper { };
 
+  dnscontrol = callPackage ../applications/networking/dnscontrol { };
+
   dnsenum = callPackage ../tools/security/dnsenum { };
 
   dnsmasq = callPackage ../tools/networking/dnsmasq { };
 
-  dnsproxy = callPackage ../tools/networking/dnsproxy {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  dnsproxy = callPackage ../tools/networking/dnsproxy { };
 
   dnsperf = callPackage ../tools/networking/dnsperf { };
 
@@ -3001,13 +2956,9 @@ in
 
   driftnet = callPackage ../tools/networking/driftnet {};
 
-  drone = callPackage ../development/tools/continuous-integration/drone {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  drone = callPackage ../development/tools/continuous-integration/drone { };
 
-  drone-cli = callPackage ../development/tools/continuous-integration/drone-cli {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  drone-cli = callPackage ../development/tools/continuous-integration/drone-cli { };
 
   dropbear = callPackage ../tools/networking/dropbear { };
 
@@ -3139,6 +3090,8 @@ in
 
   volctl = callPackage ../tools/audio/volctl { };
 
+  vorta = python3Packages.callPackage ../applications/backup/vorta { };
+
   wallutils = callPackage ../tools/graphics/wallutils { };
 
   wev = callPackage ../tools/misc/wev { };
@@ -3311,11 +3264,6 @@ in
 
   fakechroot = callPackage ../tools/system/fakechroot { };
 
-  fast-neural-doodle = callPackage ../tools/graphics/fast-neural-doodle {
-    inherit (python27Packages) numpy scipy h5py scikitlearn python
-      pillow;
-  };
-
   fastpbkdf2 = callPackage ../development/libraries/fastpbkdf2 { };
 
   fanficfare = callPackage ../tools/text/fanficfare { };
@@ -3692,11 +3640,7 @@ in
 
   git-crecord = callPackage ../applications/version-management/git-crecord { };
 
-  git-lfs = lowPrio (callPackage ../applications/version-management/git-lfs {
-    # Version 2.8.0 fails with go1.13
-    #    go: github.com/alexbrainman/sspi@v0.0.0-20180125232955-4729b3d4d858: Get https://proxy.golang.org/github.com/alexbrainman/sspi/@v/v0.0.0-20180125232955-4729b3d4d858.mod: dial tcp: lookup proxy.golang.org on [::1]:53: read udp [::1]:32932->[::1]:53: read: connection refused
-    buildGoPackage = buildGo112Package;
-  });
+  git-lfs = lowPrio (callPackage ../applications/version-management/git-lfs { });
 
   git-lfs1 = callPackage ../applications/version-management/git-lfs/1.nix { };
 
@@ -3930,7 +3874,6 @@ in
 
   grpcui = callPackage ../tools/networking/grpcui {
     buildGoModule = buildGo112Module;
-    inherit (darwin.apple_sdk.frameworks) Security;
   };
 
   grub = pkgsi686Linux.callPackage ../tools/misc/grub ({
@@ -4157,9 +4100,7 @@ in
   hexd = callPackage ../tools/misc/hexd { };
   pixd = callPackage ../tools/misc/pixd { };
 
-  hey = callPackage ../tools/networking/hey {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  hey = callPackage ../tools/networking/hey { };
 
   hhpc = callPackage ../tools/misc/hhpc { };
 
@@ -4357,12 +4298,9 @@ in
     #    go: github.com/go-critic/go-critic@v0.0.0-20181204210945-ee9bf5809ead: invalid pseudo-version: does not match version-control timestamp (2019-02-10T22:04:43Z)
     # This is fixed in master, but release containing the fix does not exist yet.
     buildGoModule = buildGo112Module;
-    inherit (darwin.apple_sdk.frameworks) Security;
   };
   ipfs-migrator = callPackage ../applications/networking/ipfs-migrator { };
-  ipfs-cluster = callPackage ../applications/networking/ipfs-cluster {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  ipfs-cluster = callPackage ../applications/networking/ipfs-cluster { };
 
   ipget = callPackage ../applications/networking/ipget { };
 
@@ -4522,6 +4460,8 @@ in
 
   keepalived = callPackage ../tools/networking/keepalived { };
 
+  keeperrl = callPackage ../games/keeperrl { };
+
   kexectools = callPackage ../os-specific/linux/kexectools { };
 
   keepkey_agent = with python3Packages; toPythonApplication keepkey_agent;
@@ -4580,8 +4520,6 @@ in
 
   krop = callPackage ../applications/graphics/krop { };
 
-  elisa = libsForQt5.callPackage ../applications/audio/elisa { };
-
   kdiff3 = libsForQt5.callPackage ../tools/text/kdiff3 { };
 
   kube-router = callPackage ../applications/networking/cluster/kube-router { };
@@ -4604,9 +4542,7 @@ in
 
   lefthook = gitAndTools.lefthook;
 
-  lego = callPackage ../tools/admin/lego {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  lego = callPackage ../tools/admin/lego { };
 
   leocad = callPackage ../applications/graphics/leocad { };
 
@@ -4626,12 +4562,12 @@ in
 
   libcoap = callPackage ../applications/networking/libcoap {};
 
-  libcroco = callPackage ../development/libraries/libcroco { };
-
   libcryptui = callPackage ../development/libraries/libcryptui { };
 
   libsmi = callPackage ../development/libraries/libsmi { };
 
+  libgen-cli = callPackage ../tools/misc/libgen-cli { };
+
   licensor = callPackage ../tools/misc/licensor { };
 
   lesspipe = callPackage ../tools/misc/lesspipe { };
@@ -4699,9 +4635,7 @@ in
 
   mautrix-telegram = recurseIntoAttrs (callPackage ../servers/mautrix-telegram { });
 
-  mautrix-whatsapp = callPackage ../servers/mautrix-whatsapp {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  mautrix-whatsapp = callPackage ../servers/mautrix-whatsapp { };
 
   mcfly = callPackage ../tools/misc/mcfly {
     inherit (darwin.apple_sdk.frameworks) Security;
@@ -4738,9 +4672,7 @@ in
 
   motion = callPackage ../applications/video/motion { };
 
-  mtail = callPackage ../servers/monitoring/mtail {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  mtail = callPackage ../servers/monitoring/mtail { };
 
   multitail = callPackage ../tools/misc/multitail { };
 
@@ -4900,6 +4832,8 @@ in
 
   libevdev = callPackage ../development/libraries/libevdev { };
 
+  liberio = callPackage ../development/libraries/liberio { };
+
   libevdevplus = callPackage ../development/libraries/libevdevplus { };
 
   libfann = callPackage ../development/libraries/libfann { };
@@ -4995,7 +4929,8 @@ in
   inherit (callPackages ../development/libraries/libwebsockets { })
     libwebsockets_3_1
     libwebsockets_3_2
-    libwebsockets;
+    libwebsockets_4_0;
+  libwebsockets = libwebsockets_3_2;
 
   lidarr = callPackage ../servers/lidarr { };
 
@@ -5187,9 +5122,7 @@ in
 
   minetime = callPackage ../applications/office/minetime { };
 
-  minio-client = callPackage ../tools/networking/minio-client {
-    inherit (darwin.apple_sdk.frameworks) CoreServices;
-  };
+  minio-client = callPackage ../tools/networking/minio-client { };
 
   minissdpd = callPackage ../tools/networking/minissdpd { };
 
@@ -5204,6 +5137,8 @@ in
 
   minijail = callPackage ../tools/system/minijail { };
 
+  minijail-tools = python3.pkgs.callPackage ../tools/system/minijail/tools.nix { };
+
   minixml = callPackage ../development/libraries/minixml { };
 
   mir-qualia = callPackage ../tools/text/mir-qualia {
@@ -5250,6 +5185,8 @@ in
 
   monit = callPackage ../tools/system/monit { };
 
+  monolith = callPackage ../tools/backup/monolith { };
+
   moreutils = callPackage ../tools/misc/moreutils {
     docbook-xsl = docbook_xsl;
   };
@@ -5308,9 +5245,7 @@ in
 
   munt = libsForQt5.callPackage ../applications/audio/munt { };
 
-  mutagen = callPackage ../tools/misc/mutagen {
-    inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices;
-  };
+  mutagen = callPackage ../tools/misc/mutagen { };
 
   mycli = callPackage ../tools/admin/mycli { };
 
@@ -5348,9 +5283,7 @@ in
 
   ndppd = callPackage ../applications/networking/ndppd { };
 
-  nebula = callPackage ../tools/networking/nebula {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  nebula = callPackage ../tools/networking/nebula { };
 
   nemiver = callPackage ../development/tools/nemiver { };
 
@@ -5374,8 +5307,6 @@ in
 
   netcdffortran = callPackage ../development/libraries/netcdf-fortran { };
 
-  neural-style = callPackage ../tools/graphics/neural-style {};
-
   nco = callPackage ../development/libraries/nco { };
 
   ncftp = callPackage ../tools/networking/ncftp { };
@@ -5439,7 +5370,8 @@ in
 
   grocy = callPackage ../servers/grocy { };
 
-  nextcloud = callPackage ../servers/nextcloud { };
+  inherit (callPackage ../servers/nextcloud {})
+    nextcloud17 nextcloud18;
 
   nextcloud-client = libsForQt5.callPackage ../applications/networking/nextcloud-client { };
 
@@ -5577,9 +5509,7 @@ in
 
   obexd = callPackage ../tools/bluetooth/obexd { };
 
-  obfs4 = callPackage ../tools/networking/obfs4 {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  obfs4 = callPackage ../tools/networking/obfs4 { };
 
   oci-image-tool = callPackage ../tools/misc/oci-image-tool { };
 
@@ -5776,6 +5706,8 @@ in
 
   padthv1 = libsForQt5.callPackage ../applications/audio/padthv1 { };
 
+  page = callPackage ../tools/misc/page { };
+  
   pagmo2 = callPackage ../development/libraries/pagmo2 { };
 
   pakcs = callPackage ../development/compilers/pakcs { };
@@ -5799,6 +5731,8 @@ in
 
   parallel = callPackage ../tools/misc/parallel { };
 
+  parallel-full = callPackage ../tools/misc/parallel/wrapper.nix { };
+
   parastoo-fonts = callPackage ../data/fonts/parastoo-fonts { };
 
   parcellite = callPackage ../tools/misc/parcellite { };
@@ -5809,6 +5743,8 @@ in
 
   parted = callPackage ../tools/misc/parted { };
 
+  passh = callPackage ../tools/networking/passh { };
+
   paulstretch = callPackage ../applications/audio/paulstretch { };
 
   pazi = callPackage ../tools/misc/pazi { };
@@ -5917,13 +5853,9 @@ in
 
   pg_top = callPackage ../tools/misc/pg_top { };
 
-  pgcenter = callPackage ../tools/misc/pgcenter {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  pgcenter = callPackage ../tools/misc/pgcenter { };
 
-  pgmetrics = callPackage ../tools/misc/pgmetrics {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  pgmetrics = callPackage ../tools/misc/pgmetrics { };
 
   pdsh = callPackage ../tools/networking/pdsh {
     rsh = true;          # enable internal rsh implementation
@@ -6290,10 +6222,6 @@ in
 
   reiserfsprogs = callPackage ../tools/filesystems/reiserfsprogs { };
 
-  relfs = callPackage ../tools/filesystems/relfs {
-    inherit (gnome2) gnome_vfs GConf;
-  };
-
   remarkjs = callPackage ../development/web/remarkjs { };
 
   alarm-clock-applet = callPackage ../tools/misc/alarm-clock-applet { };
@@ -6351,6 +6279,8 @@ in
 
   rnv = callPackage ../tools/text/xml/rnv { };
 
+  rosie = callPackage ../tools/text/rosie { };
+
   rounded-mgenplus = callPackage ../data/fonts/rounded-mgenplus { };
 
   roundup = callPackage ../tools/misc/roundup { };
@@ -6365,6 +6295,8 @@ in
 
   rlwrap = callPackage ../tools/misc/rlwrap { };
 
+  rmtrash = callPackage ../tools/misc/rmtrash { };
+
   rockbox_utility = libsForQt5.callPackage ../tools/misc/rockbox-utility { };
 
   rosegarden = libsForQt5.callPackage ../applications/audio/rosegarden { };
@@ -6427,7 +6359,7 @@ in
 
   s3fs = callPackage ../tools/filesystems/s3fs { };
 
-  s3cmd = callPackage ../tools/networking/s3cmd { };
+  s3cmd = python3Packages.callPackage ../tools/networking/s3cmd { };
 
   s4cmd = callPackage ../tools/networking/s4cmd { };
 
@@ -6443,6 +6375,8 @@ in
 
   safecopy = callPackage ../tools/system/safecopy { };
 
+  sacd = callPackage ../tools/cd-dvd/sacd { };
+
   safe = callPackage ../tools/security/safe { };
 
   safe-rm = callPackage ../tools/system/safe-rm { };
@@ -6459,10 +6393,7 @@ in
 
   samim-fonts = callPackage ../data/fonts/samim-fonts {};
 
-  saml2aws = callPackage ../tools/security/saml2aws {
-    inherit (darwin) libobjc;
-    inherit (darwin.apple_sdk.frameworks) Foundation IOKit;
-  };
+  saml2aws = callPackage ../tools/security/saml2aws {};
 
   samplicator = callPackage ../tools/networking/samplicator { };
 
@@ -6705,6 +6636,8 @@ in
 
   soundkonverter = kdeApplications.callPackage ../applications/audio/soundkonverter {};
 
+  sozu = callPackage ../servers/sozu { };
+
   sparsehash = callPackage ../development/libraries/sparsehash { };
 
   spectre-meltdown-checker = callPackage ../tools/security/spectre-meltdown-checker { };
@@ -6966,6 +6899,8 @@ in
 
   thin-provisioning-tools = callPackage ../tools/misc/thin-provisioning-tools {  };
 
+  thinkpad-scripts = python3.pkgs.callPackage ../tools/misc/thinkpad-scripts { };
+
   tiled = libsForQt5.callPackage ../applications/editors/tiled { };
 
   tiledb = callPackage ../development/libraries/tiledb { };
@@ -7140,6 +7075,8 @@ in
 
   ttylog = callPackage ../tools/misc/ttylog { };
 
+  ipbt = callPackage ../tools/misc/ipbt { };
+
   tuir = callPackage ../applications/misc/tuir { };
 
   turses = callPackage ../applications/networking/instant-messengers/turses { };
@@ -7164,10 +7101,6 @@ in
 
   ua = callPackage ../tools/networking/ua { };
 
-  uberwriter = callPackage ../applications/editors/uberwriter {
-    pythonPackages = python3Packages;
-  };
-
   ubridge = callPackage ../tools/networking/ubridge { };
 
   ucl = callPackage ../development/libraries/ucl { };
@@ -7678,6 +7611,8 @@ in
   xfsprogs = callPackage ../tools/filesystems/xfsprogs { };
   libxfs = xfsprogs.dev;
 
+  xmage = callPackage ../games/xmage { };
+
   xml2 = callPackage ../tools/text/xml/xml2 { };
 
   xmlformat = callPackage ../tools/text/xml/xmlformat { };
@@ -7761,9 +7696,7 @@ in
     inherit (darwin.apple_sdk.frameworks) IOKit;
   };
 
-  yggdrasil = callPackage ../tools/networking/yggdrasil {
-    inherit (darwin.apple_sdk.frameworks) Foundation;
-  };
+  yggdrasil = callPackage ../tools/networking/yggdrasil { };
 
   # To expose more packages for Yi, override the extraPackages arg.
   yi = callPackage ../applications/editors/yi/wrapper.nix { };
@@ -7774,12 +7707,18 @@ in
 
   you-get = python3Packages.callPackage ../tools/misc/you-get { };
 
+  zasm = callPackage ../development/compilers/zasm {};
+
   zbackup = callPackage ../tools/backup/zbackup {};
 
   zbar = libsForQt5.callPackage ../tools/graphics/zbar { };
 
   zdelta = callPackage ../tools/compression/zdelta { };
 
+  zenith = callPackage ../tools/system/zenith {
+    inherit (darwin.apple_sdk.frameworks) IOKit;
+  };
+
   zerotierone = callPackage ../tools/networking/zerotierone { };
 
   zerofree = callPackage ../tools/filesystems/zerofree { };
@@ -7808,20 +7747,22 @@ in
   zpaq = callPackage ../tools/archivers/zpaq { };
   zpaqd = callPackage ../tools/archivers/zpaq/zpaqd.nix { };
 
+  zplug = callPackage ../shells/zsh/zplug { };
+
   zsh-autoenv = callPackage ../tools/misc/zsh-autoenv { };
 
   zsh-bd = callPackage ../shells/zsh/zsh-bd { };
 
   zsh-git-prompt = callPackage ../shells/zsh/zsh-git-prompt { };
 
-  zsh-history = callPackage ../shells/zsh/zsh-history {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  zsh-history = callPackage ../shells/zsh/zsh-history { };
 
   zsh-history-substring-search = callPackage ../shells/zsh/zsh-history-substring-search { };
 
   zsh-navigation-tools = callPackage ../tools/misc/zsh-navigation-tools { };
 
+  zsh-nix-shell = callPackage ../shells/zsh/zsh-nix-shell { };
+
   zsh-syntax-highlighting = callPackage ../shells/zsh/zsh-syntax-highlighting { };
 
   zsh-fast-syntax-highlighting = callPackage ../shells/zsh/zsh-fast-syntax-highlighting { };
@@ -8132,9 +8073,7 @@ in
 
   scry = callPackage ../development/tools/scry {};
 
-  dbmate = callPackage ../development/tools/database/dbmate {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  dbmate = callPackage ../development/tools/database/dbmate { };
 
   devpi-client = python3Packages.callPackage ../development/tools/devpi-client {};
 
@@ -8162,9 +8101,11 @@ in
   };
   fasm-bin = callPackage ../development/compilers/fasm/bin.nix { };
 
-  flyctl = callPackage ../development/web/flyctl {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  flyctl = callPackage ../development/web/flyctl { };
+
+  flutterPackages =
+    recurseIntoAttrs (callPackage ../development/compilers/flutter { });
+  flutter = flutterPackages.stable;
 
   fpc = callPackage ../development/compilers/fpc { };
 
@@ -8468,8 +8409,7 @@ in
 
   purescript = callPackage ../development/compilers/purescript/purescript { };
 
-  psc-package = haskell.lib.justStaticExecutables
-    (haskellPackages.callPackage ../development/compilers/purescript/psc-package { });
+  psc-package = callPackage ../development/compilers/purescript/psc-package { };
 
   purescript-psa = nodePackages.purescript-psa;
 
@@ -8925,6 +8865,8 @@ in
     inherit (darwin.apple_sdk.frameworks) OpenGL;
   };
 
+  acme = callPackage ../development/compilers/acme { };
+
   nasm = callPackage ../development/compilers/nasm { };
 
   nvidia_cg_toolkit = callPackage ../development/compilers/nvidia-cg-toolkit { };
@@ -8985,13 +8927,13 @@ in
     inherit (darwin) apple_sdk;
   };
 
-  rust_1_41_0 = callPackage ../development/compilers/rust/1_41_0.nix {
+  rust_1_42 = callPackage ../development/compilers/rust/1_42.nix {
     inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
   };
-  rust = rust_1_41_0;
+  rust = rust_1_42;
 
-  rustPackages_1_41_0 = rust_1_41_0.packages.stable;
-  rustPackages = rustPackages_1_41_0;
+  rustPackages_1_42 = rust_1_42.packages.stable;
+  rustPackages = rustPackages_1_42;
 
   inherit (rustPackages) cargo clippy rustc rustPlatform;
   inherit (rust) makeRustPlatform;
@@ -9185,6 +9127,7 @@ in
     vala_0_40
     vala_0_44
     vala_0_46
+    vala_0_48
     vala;
 
   wcc = callPackage ../development/compilers/wcc { };
@@ -9257,6 +9200,8 @@ in
 
   angelscript_2_22 = callPackage ../development/interpreters/angelscript/2.22.nix {};
 
+  babashka = callPackage ../development/interpreters/clojure/babashka.nix { };
+
   chibi = callPackage ../development/interpreters/chibi { };
 
   ceptre = callPackage ../development/interpreters/ceptre { };
@@ -9335,9 +9280,7 @@ in
 
   jmeter = callPackage ../applications/networking/jmeter {};
 
-  joker = callPackage ../development/interpreters/joker {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  joker = callPackage ../development/interpreters/joker {};
 
   davmail = callPackage ../applications/networking/davmail {};
 
@@ -9451,86 +9394,20 @@ in
   pachyderm = callPackage ../applications/networking/cluster/pachyderm { };
 
   php = php74;
-  phpPackages = php74Packages;
-
-  php72Packages = recurseIntoAttrs (callPackage ./php-packages.nix {
-    php = php72;
-  });
-
-  php73Packages = recurseIntoAttrs (callPackage ./php-packages.nix {
-    php = php73;
-  });
-
-  php74Packages = recurseIntoAttrs (callPackage ./php-packages.nix {
-    php = php74;
-  });
-
-  phpPackages-unit = php74Packages-unit;
-
-  php72Packages-unit = recurseIntoAttrs (callPackage ./php-packages.nix {
-    php = php72-unit;
-  });
 
-  php73Packages-unit = recurseIntoAttrs (callPackage ./php-packages.nix {
-    php = php73-unit;
-  });
+  phpPackages = php74Packages;
+  php72Packages = recurseIntoAttrs php72.packages;
+  php73Packages = recurseIntoAttrs php73.packages;
+  php74Packages = recurseIntoAttrs php74.packages;
 
-  php74Packages-unit = recurseIntoAttrs (callPackage ./php-packages.nix {
-    php = php74-unit;
-  });
+  phpExtensions = php74Extensions;
+  php72Extensions = recurseIntoAttrs php72.extensions;
+  php73Extensions = recurseIntoAttrs php73.extensions;
+  php74Extensions = recurseIntoAttrs php74.extensions;
 
   inherit (callPackages ../development/interpreters/php {
     stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv;
-  })
-    php74
-    php73
-    php72;
-
-  php-embed = php74-embed;
-
-  php72-embed = php72.override {
-    config.php.embed = true;
-    config.php.apxs2 = false;
-  };
-
-  php73-embed = php73.override {
-    config.php.embed = true;
-    config.php.apxs2 = false;
-  };
-
-  php74-embed = php74.override {
-    config.php.embed = true;
-    config.php.apxs2 = false;
-  };
-
-  php-unit = php74-unit;
-
-  php72-unit = php72.override {
-    config.php.embed = true;
-    config.php.apxs2 = false;
-    config.php.systemd = false;
-    config.php.phpdbg = false;
-    config.php.cgi = false;
-    config.php.fpm = false;
-  };
-
-  php73-unit = php73.override {
-    config.php.embed = true;
-    config.php.apxs2 = false;
-    config.php.systemd = false;
-    config.php.phpdbg = false;
-    config.php.cgi = false;
-    config.php.fpm = false;
-  };
-
-  php74-unit = php74.override {
-    config.php.embed = true;
-    config.php.apxs2 = false;
-    config.php.systemd = false;
-    config.php.phpdbg = false;
-    config.php.cgi = false;
-    config.php.fpm = false;
-  };
+  }) php74 php73 php72 php74base php73base php72base;
 
   picoc = callPackage ../development/interpreters/picoc {};
 
@@ -9621,6 +9498,7 @@ in
   pipenv = callPackage ../development/tools/pipenv {};
 
   pipewire = callPackage ../development/libraries/pipewire {};
+  pipewire_0_2 = callPackage ../development/libraries/pipewire/2.nix {};
 
   pyradio = callPackage ../applications/radio/pyradio {};
 
@@ -9718,6 +9596,7 @@ in
       stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4'
   }));
   spidermonkey_60 = callPackage ../development/interpreters/spidermonkey/60.nix { };
+  spidermonkey_68 = callPackage ../development/interpreters/spidermonkey/68.nix { };
   spidermonkey = spidermonkey_38;
 
   ssm-agent = callPackage ../applications/networking/cluster/ssm-agent { };
@@ -9945,7 +9824,11 @@ in
 
   bam = callPackage ../development/tools/build-managers/bam {};
 
-  bazel = callPackage ../development/tools/build-managers/bazel/bazel-latest {
+  bazel = bazel_2;
+
+  bazel_0 = bazel_0_26;
+
+  bazel_0_26 = callPackage ../development/tools/build-managers/bazel/bazel_0_26 {
     inherit (darwin) cctools;
     inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation;
     buildJdk = jdk8;
@@ -9954,13 +9837,14 @@ in
     stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv;
   };
 
-  bazel_0 = callPackage ../development/tools/build-managers/bazel/bazel_0 {
+  bazel_0_29 = callPackage ../development/tools/build-managers/bazel/bazel_0_29 {
     inherit (darwin) cctools;
     inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation;
     buildJdk = jdk8;
     buildJdkName = "jdk8";
     runJdk = jdk11_headless;
     stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv;
+    bazel_self = bazel_0_29;
   };
 
   bazel_1 = callPackage ../development/tools/build-managers/bazel/bazel_1 {
@@ -9970,6 +9854,17 @@ in
     buildJdkName = "jdk8";
     runJdk = jdk11_headless;
     stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv;
+    bazel_self = bazel_1;
+  };
+
+  bazel_2 = callPackage ../development/tools/build-managers/bazel/bazel_2 {
+    inherit (darwin) cctools;
+    inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation;
+    buildJdk = jdk8;
+    buildJdkName = "jdk8";
+    runJdk = jdk11_headless;
+    stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv;
+    bazel_self = bazel_2;
   };
 
   bazel-buildtools = callPackage ../development/tools/build-managers/bazel/buildtools { };
@@ -9983,9 +9878,9 @@ in
     go = go_1_12;
   };
 
-  bazelisk = callPackage ../development/tools/bazelisk {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  bazel-gazelle = callPackage ../development/tools/bazel-gazelle { };
+
+  bazelisk = callPackage ../development/tools/bazelisk { };
 
   buildBazelPackage = callPackage ../build-support/build-bazel-package { };
 
@@ -10253,9 +10148,7 @@ in
       binutils = binutils;
     };
 
-  dive = callPackage ../development/tools/dive {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  dive = callPackage ../development/tools/dive { };
 
   doclifter = callPackage ../development/tools/misc/doclifter { };
 
@@ -10265,9 +10158,7 @@ in
 
   doit = callPackage ../development/tools/build-managers/doit { };
 
-  dolt = callPackage ../servers/sql/dolt {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  dolt = callPackage ../servers/sql/dolt { };
 
   dot2tex = pythonPackages.dot2tex;
 
@@ -10286,9 +10177,7 @@ in
 
   drush = callPackage ../development/tools/misc/drush { };
 
-  editorconfig-checker = callPackage ../development/tools/misc/editorconfig-checker {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  editorconfig-checker = callPackage ../development/tools/misc/editorconfig-checker { };
 
   editorconfig-core-c = callPackage ../development/tools/misc/editorconfig-core-c { };
 
@@ -10329,9 +10218,7 @@ in
     inherit (darwin.apple_sdk.frameworks) CoreServices;
   };
 
-  fly = callPackage ../development/tools/continuous-integration/fly {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  fly = callPackage ../development/tools/continuous-integration/fly { };
 
   foreman = callPackage ../tools/system/foreman { };
   goreman = callPackage ../tools/system/goreman { };
@@ -10340,9 +10227,7 @@ in
 
   frame = callPackage ../development/libraries/frame { };
 
-  frp = callPackage ../tools/networking/frp {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  frp = callPackage ../tools/networking/frp { };
 
   fsatrace = callPackage ../development/tools/misc/fsatrace { };
 
@@ -10411,9 +10296,7 @@ in
 
   gocd-server = callPackage ../development/tools/continuous-integration/gocd-server { };
 
-  gotify-server = callPackage ../servers/gotify {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  gotify-server = callPackage ../servers/gotify { };
 
   gotty = callPackage ../servers/gotty { };
 
@@ -10457,9 +10340,7 @@ in
 
   halfempty = callPackage ../development/tools/halfempty {};
 
-  hcloud = callPackage ../development/tools/hcloud {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  hcloud = callPackage ../development/tools/hcloud { };
 
   help2man = callPackage ../development/tools/misc/help2man { };
 
@@ -10541,17 +10422,13 @@ in
 
   kube-prompt = callPackage ../development/tools/kube-prompt { };
 
-  kubeprompt = callPackage ../development/tools/kubeprompt {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  kubeprompt = callPackage ../development/tools/kubeprompt { };
 
   kubicorn = callPackage ../development/tools/kubicorn {  };
 
   kubie = callPackage ../development/tools/kubie { };
 
-  kustomize = callPackage ../development/tools/kustomize {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  kustomize = callPackage ../development/tools/kustomize { };
 
   ktlint = callPackage ../development/tools/ktlint { };
 
@@ -10608,18 +10485,14 @@ in
 
   mdl = callPackage ../development/tools/misc/mdl { };
 
-  minify = callPackage ../development/web/minify {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  minify = callPackage ../development/web/minify { };
 
   minizinc = callPackage ../development/tools/minizinc { };
   minizincide = qt5.callPackage ../development/tools/minizinc/ide.nix { };
 
   mk = callPackage ../development/tools/build-managers/mk { };
 
-  mkcert = callPackage ../development/tools/misc/mkcert {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  mkcert = callPackage ../development/tools/misc/mkcert { };
 
   mkdocs = callPackage ../development/tools/documentation/mkdocs { };
 
@@ -10757,6 +10630,8 @@ in
 
   qtcreator = libsForQt5.callPackage ../development/tools/qtcreator { };
 
+  qxmledit = libsForQt5.callPackage ../applications/editors/qxmledit {} ;
+
   r10k = callPackage ../tools/system/r10k { };
 
   inherit (callPackages ../development/tools/analysis/radare2 ({
@@ -10799,9 +10674,7 @@ in
     withPEPatterns = true;
   };
 
-  reviewdog = callPackage ../development/tools/misc/reviewdog {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  reviewdog = callPackage ../development/tools/misc/reviewdog { };
 
   rman = callPackage ../development/tools/misc/rman { };
 
@@ -10943,9 +10816,7 @@ in
 
   teensy-loader-cli = callPackage ../development/tools/misc/teensy-loader-cli { };
 
-  terracognita = callPackage ../development/tools/misc/terracognita {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  terracognita = callPackage ../development/tools/misc/terracognita { };
 
   terraform-lsp = callPackage ../development/tools/misc/terraform-lsp { };
 
@@ -10966,15 +10837,11 @@ in
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
-  tflint = callPackage ../development/tools/analysis/tflint {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  tflint = callPackage ../development/tools/analysis/tflint { };
 
   tfsec = callPackage ../development/tools/analysis/tfsec { };
 
-  todoist = callPackage ../applications/misc/todoist {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  todoist = callPackage ../applications/misc/todoist { };
 
   todoist-electron = callPackage ../applications/misc/todoist-electron { };
 
@@ -11255,7 +11122,8 @@ in
   boost16x = boost169;
   boost170 = callPackage ../development/libraries/boost/1.70.nix { };
   boost171 = callPackage ../development/libraries/boost/1.71.nix { };
-  boost17x = boost171;
+  boost172 = callPackage ../development/libraries/boost/1.72.nix { };
+  boost17x = boost172;
   boost = boost16x;
 
   boost_process = callPackage ../development/libraries/boost-process { };
@@ -11314,7 +11182,7 @@ in
     ogre = ogre1_10;
   };
 
-  certbot = callPackage ../tools/admin/certbot { };
+  certbot = python3Packages.callPackage ../tools/admin/certbot { };
 
   caf = callPackage ../development/libraries/caf {};
 
@@ -12232,7 +12100,13 @@ in
 
   hwloc = callPackage ../development/libraries/hwloc {};
 
-  hydra = callPackage ../development/tools/misc/hydra { };
+  inherit (callPackage ../development/tools/misc/hydra { })
+    hydra-migration hydra-unstable;
+
+  hydra-flakes = throw ''
+    Flakes support has been merged into Hydra's master. Please use
+    `pkgs.hydra-unstable` now.
+  '';
 
   hydra-cli = callPackage ../development/tools/misc/hydra-cli { };
 
@@ -12435,9 +12309,7 @@ in
 
   ldacbt = callPackage ../development/libraries/ldacbt { };
 
-  ldb = callPackage ../development/libraries/ldb {
-    python = python2;
-  };
+  ldb = callPackage ../development/libraries/ldb { };
 
   lensfun = callPackage ../development/libraries/lensfun {};
 
@@ -12528,7 +12400,9 @@ in
 
   libblocksruntime = callPackage ../development/libraries/libblocksruntime { };
 
-  libbluray = callPackage ../development/libraries/libbluray { };
+  libbluray = callPackage ../development/libraries/libbluray {
+    inherit (darwin.apple_sdk.frameworks) DiskArbitration;
+  };
 
   libbs2b = callPackage ../development/libraries/audio/libbs2b { };
 
@@ -13100,6 +12974,8 @@ in
 
   malcontent = callPackage ../development/libraries/malcontent { };
 
+  malcontent-ui = callPackage ../development/libraries/malcontent/ui.nix { };
+
   libmanette = callPackage ../development/libraries/libmanette { };
 
   libmatchbox = callPackage ../development/libraries/libmatchbox { };
@@ -13435,6 +13311,7 @@ in
   libversion = callPackage ../development/libraries/libversion { };
 
   libvirt = callPackage ../development/libraries/libvirt { };
+  libvirt_5_9_0 = callPackage ../development/libraries/libvirt/5.9.0.nix { };
 
   libvirt-glib = callPackage ../development/libraries/libvirt-glib { };
 
@@ -13449,6 +13326,7 @@ in
   libviper = callPackage ../development/libraries/libviper { };
 
   libvpx = callPackage ../development/libraries/libvpx { };
+  libvpx_1_8 = callPackage ../development/libraries/libvpx/1_8.nix { };
 
   libvterm = callPackage ../development/libraries/libvterm { };
   libvterm-neovim = callPackage ../development/libraries/libvterm-neovim { };
@@ -13566,8 +13444,6 @@ in
 
   live555 = callPackage ../development/libraries/live555 { };
 
-  loadcaffe = callPackage ../development/libraries/loadcaffe {};
-
   log4cpp = callPackage ../development/libraries/log4cpp { };
 
   log4cxx = callPackage ../development/libraries/log4cxx { };
@@ -13807,10 +13683,7 @@ in
     nvidia_x11 = linuxPackages.nvidia_x11.override { libsOnly = true; };
   };
 
-  ocl-icd-oclhGen = oclh: callPackage ../development/libraries/ocl-icd { opencl-headers = oclh; };
-  ocl-icd-oclh_1_2 = ocl-icd-oclhGen opencl-headers_1_2;
-  ocl-icd-oclh_2_2 = ocl-icd-oclhGen opencl-headers_2_2;
-  ocl-icd = ocl-icd-oclh_2_2;
+  ocl-icd = callPackage ../development/libraries/ocl-icd { };
 
   ode = callPackage ../development/libraries/ode { };
 
@@ -13842,10 +13715,7 @@ in
   opencascade = callPackage ../development/libraries/opencascade { };
   opencascade-occt = callPackage ../development/libraries/opencascade-occt { };
 
-  opencl-headersGen = v: callPackage ../development/libraries/opencl-headers { version = v; };
-  opencl-headers_1_2 = opencl-headersGen "12";
-  opencl-headers_2_2 = opencl-headersGen "22";
-  opencl-headers = opencl-headers_2_2;
+  opencl-headers = callPackage ../development/libraries/opencl-headers { };
 
   opencl-clhpp = callPackage ../development/libraries/opencl-clhpp { };
 
@@ -14380,9 +14250,7 @@ in
 
   rttr = callPackage ../development/libraries/rttr { };
 
-  rubberband = callPackage ../development/libraries/rubberband {
-    inherit (vamp) vampSDK;
-  };
+  rubberband = callPackage ../development/libraries/rubberband { };
 
   sad = callPackage ../applications/science/logic/sad { };
 
@@ -14726,9 +14594,7 @@ in
 
   tclx = callPackage ../development/libraries/tclx { };
 
-  ntdb = callPackage ../development/libraries/ntdb {
-    python = python2;
-  };
+  ntdb = callPackage ../development/libraries/ntdb { };
 
   tdb = callPackage ../development/libraries/tdb {};
 
@@ -14750,9 +14616,7 @@ in
 
   termbox = callPackage ../development/libraries/termbox { };
 
-  tevent = callPackage ../development/libraries/tevent {
-    python = python2;
-  };
+  tevent = callPackage ../development/libraries/tevent { };
 
   tet = callPackage ../development/tools/misc/tet { };
 
@@ -14801,12 +14665,6 @@ in
 
   tokyotyrant = callPackage ../development/libraries/tokyo-tyrant { };
 
-  torch = callPackage ../development/libraries/torch {
-    openblas = openblasCompat;
-  };
-
-  torch-hdf5 = callPackage ../development/libraries/torch-hdf5 {};
-
   totem-pl-parser = callPackage ../development/libraries/totem-pl-parser { };
 
   tpm2-tss = callPackage ../development/libraries/tpm2-tss { };
@@ -14882,7 +14740,7 @@ in
 
   vale = callPackage ../tools/text/vale { };
 
-  vamp = callPackage ../development/libraries/audio/vamp { };
+  vamp-plugin-sdk = callPackage ../development/libraries/audio/vamp-plugin-sdk { };
 
   vc = callPackage ../development/libraries/vc { };
 
@@ -15601,7 +15459,6 @@ in
 
   gobetween = callPackage ../servers/gobetween {
     buildGoModule = buildGo112Module;
-    inherit (darwin.apple_sdk.frameworks) Security;
   };
 
   h2o = callPackage ../servers/http/h2o { };
@@ -15631,9 +15488,7 @@ in
     theme-spring = callPackage ../servers/icingaweb2/theme-spring { };
   };
 
-  imgproxy = callPackage ../servers/imgproxy {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  imgproxy = callPackage ../servers/imgproxy { };
 
   ircdHybrid = callPackage ../servers/irc/ircd-hybrid { };
 
@@ -15672,9 +15527,7 @@ in
 
   mattermost = callPackage ../servers/mattermost { };
   matterircd = callPackage ../servers/mattermost/matterircd.nix { };
-  matterbridge = callPackage ../servers/matterbridge {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  matterbridge = callPackage ../servers/matterbridge { };
 
   mattermost-desktop = callPackage ../applications/networking/instant-messengers/mattermost-desktop { };
 
@@ -15688,9 +15541,7 @@ in
 
   micronaut = callPackage ../development/tools/micronaut {};
 
-  minio = callPackage ../servers/minio {
-    inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices;
-  };
+  minio = callPackage ../servers/minio { };
 
   # Backwards compatibility.
   mod_dnssd = pkgs.apacheHttpdPackages.mod_dnssd;
@@ -15739,10 +15590,7 @@ in
 
   neard = callPackage ../servers/neard { };
 
-  unit = callPackage ../servers/http/unit {
-    php72 = php72-unit;
-    php73 = php73-unit;
-  };
+  unit = callPackage ../servers/http/unit { };
 
   nginx = nginxStable;
 
@@ -15854,7 +15702,9 @@ in
 
   libpulseaudio = libpulseaudio-vanilla;
 
-  pulseeffects = callPackage ../applications/audio/pulseeffects { };
+  pulseeffects = callPackage ../applications/audio/pulseeffects {
+    boost = boost172;
+  };
 
   tomcat_connectors = callPackage ../servers/http/apache-modules/tomcat-connectors { };
 
@@ -15875,17 +15725,33 @@ in
   mariadb = callPackage ../servers/sql/mariadb {
     # As per mariadb's cmake, "static jemalloc_pic.a can only be used up to jemalloc 4".
     # https://jira.mariadb.org/browse/MDEV-15034
-    jemalloc = jemalloc450.override ({ disableInitExecTls = true; });
+    jemalloc450 = jemalloc450.override ({ disableInitExecTls = true; });
     inherit (darwin) cctools;
     inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices;
   };
   mysql = mariadb; # TODO: move to aliases.nix
 
-  mongodb = callPackage ../servers/nosql/mongodb {
+  mongodb = hiPrio mongodb-3_4;
+
+  mongodb-3_4 = callPackage ../servers/nosql/mongodb/v3_4.nix {
     sasl = cyrus_sasl;
     boost = boost160;
-    openssl = openssl_1_0_2;
-    inherit (darwin.apple_sdk.frameworks) Security;
+    inherit (darwin) cctools;
+    inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
+  };
+
+  mongodb-3_6 = callPackage ../servers/nosql/mongodb/v3_6.nix {
+    sasl = cyrus_sasl;
+    boost = boost160;
+    inherit (darwin) cctools;
+    inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
+  };
+
+  mongodb-4_0 = callPackage ../servers/nosql/mongodb/v4_0.nix {
+    sasl = cyrus_sasl;
+    boost = boost169;
+    inherit (darwin) cctools;
+    inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
   };
 
   nginx-sso = callPackage ../servers/nginx-sso { };
@@ -16019,9 +15885,7 @@ in
   prometheus-collectd-exporter = callPackage ../servers/monitoring/prometheus/collectd-exporter.nix { };
   prometheus-cups-exporter = callPackage ../servers/monitoring/prometheus/cups-exporter.nix { };
   prometheus-consul-exporter = callPackage ../servers/monitoring/prometheus/consul-exporter.nix { };
-  prometheus-dnsmasq-exporter = callPackage ../servers/monitoring/prometheus/dnsmasq-exporter.nix {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  prometheus-dnsmasq-exporter = callPackage ../servers/monitoring/prometheus/dnsmasq-exporter.nix { };
   prometheus-dovecot-exporter = callPackage ../servers/monitoring/prometheus/dovecot-exporter.nix { };
   prometheus-fritzbox-exporter = callPackage ../servers/monitoring/prometheus/fritzbox-exporter.nix { };
   prometheus-gitlab-ci-pipelines-exporter = callPackage ../servers/monitoring/prometheus/gitlab-ci-pipelines-exporter.nix { };
@@ -16029,9 +15893,7 @@ in
   prometheus-json-exporter = callPackage ../servers/monitoring/prometheus/json-exporter.nix { };
   prometheus-mail-exporter = callPackage ../servers/monitoring/prometheus/mail-exporter.nix { };
   prometheus-mesos-exporter = callPackage ../servers/monitoring/prometheus/mesos-exporter.nix { };
-  prometheus-mikrotik-exporter = callPackage ../servers/monitoring/prometheus/mikrotik-exporter.nix {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  prometheus-mikrotik-exporter = callPackage ../servers/monitoring/prometheus/mikrotik-exporter.nix { };
   prometheus-minio-exporter = callPackage ../servers/monitoring/prometheus/minio-exporter { };
   prometheus-mysqld-exporter = callPackage ../servers/monitoring/prometheus/mysqld-exporter.nix { };
   prometheus-nextcloud-exporter = callPackage ../servers/monitoring/prometheus/nextcloud-exporter.nix { };
@@ -16053,7 +15915,6 @@ in
     # Version 1.5.1 fails to build with go 1.13 due to test failure
     #  FAIL       github.com/jonnenauha/prometheus_varnish_exporter       0.041s
     buildGoModule = buildGo112Module;
-    inherit (darwin.apple_sdk.frameworks) Security;
   };
   prometheus-jmx-httpserver = callPackage ../servers/monitoring/prometheus/jmx-httpserver.nix {  };
   prometheus-wireguard-exporter = callPackage ../servers/monitoring/prometheus/wireguard-exporter.nix {
@@ -16170,9 +16031,7 @@ in
 
   sensu = callPackage ../servers/monitoring/sensu { };
 
-  inherit (callPackages ../servers/monitoring/sensu-go {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  })
+  inherit (callPackages ../servers/monitoring/sensu-go { })
     sensu-go-agent
     sensu-go-backend
     sensu-go-cli;
@@ -16220,9 +16079,7 @@ in
 
   tailscale = callPackage ../servers/tailscale { };
 
-  thanos = callPackage ../servers/monitoring/thanos {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  thanos = callPackage ../servers/monitoring/thanos { };
 
   inherit (callPackages ../servers/http/tomcat { })
     tomcat7
@@ -16247,9 +16104,7 @@ in
 
   shaarli-material = callPackage ../servers/web-apps/shaarli/material-theme.nix { };
 
-  shiori = callPackage ../servers/web-apps/shiori {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  shiori = callPackage ../servers/web-apps/shiori { };
 
   inherit (callPackages ../servers/web-apps/matomo {})
     matomo
@@ -16262,9 +16117,7 @@ in
     unifiStable;
   unifi = unifiStable;
 
-  victoriametrics = callPackage ../servers/nosql/victoriametrics {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  victoriametrics = callPackage ../servers/nosql/victoriametrics { };
 
   virtlyst = libsForQt5.callPackage ../servers/web-apps/virtlyst { };
 
@@ -16465,13 +16318,9 @@ in
 
   conntrack-tools = callPackage ../os-specific/linux/conntrack-tools { };
 
-  coredns = callPackage ../servers/dns/coredns {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  coredns = callPackage ../servers/dns/coredns { };
 
-  corerad = callPackage ../tools/networking/corerad {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  corerad = callPackage ../tools/networking/corerad { };
 
   cpufrequtils = callPackage ../os-specific/linux/cpufrequtils { };
 
@@ -16542,7 +16391,9 @@ in
 
   fatrace = callPackage ../os-specific/linux/fatrace { };
 
-  ffado = callPackage ../os-specific/linux/ffado { };
+  ffado = libsForQt5.callPackage ../os-specific/linux/ffado {
+    inherit (pkgs.linuxPackages) kernel;
+  };
   libffado = ffado;
 
   fbterm = callPackage ../os-specific/linux/fbterm { };
@@ -16570,6 +16421,8 @@ in
 
   gmailieer = callPackage ../applications/networking/gmailieer {};
 
+  gmailctl = callPackage ../applications/networking/gmailctl {};
+
   gpm = callPackage ../servers/gpm {
     ncurses = null;  # Keep curses disabled for lack of value
   };
@@ -16819,6 +16672,14 @@ in
     ];
   };
 
+  linux_5_6 = callPackage ../os-specific/linux/kernel/linux-5.6.nix {
+    kernelPatches = [
+      kernelPatches.bridge_stp_helper
+      kernelPatches.request_key_helper
+      kernelPatches.export_kernel_fpu_functions."5.3"
+    ];
+  };
+
   linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix {
     kernelPatches = [
       kernelPatches.bridge_stp_helper
@@ -17013,7 +16874,7 @@ in
 
     zenpower = callPackage ../os-specific/linux/zenpower { };
 
-    inherit (callPackage ../os-specific/linux/zfs {
+    inherit (callPackages ../os-specific/linux/zfs {
       configFile = "kernel";
       inherit kernel;
      }) zfsStable zfsUnstable;
@@ -17028,7 +16889,7 @@ in
   linux = linuxPackages.kernel;
 
   # Update this when adding the newest kernel major version!
-  linuxPackages_latest = linuxPackages_5_5;
+  linuxPackages_latest = linuxPackages_5_6;
   linux_latest = linuxPackages_latest.kernel;
 
   # Build the kernel modules for the some of the kernels.
@@ -17043,6 +16904,7 @@ in
   linuxPackages_4_19 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_19);
   linuxPackages_5_4 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_4);
   linuxPackages_5_5 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_5);
+  linuxPackages_5_6 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_6);
 
   # When adding to this list:
   # - Update linuxPackages_latest to the latest version
@@ -17279,9 +17141,7 @@ in
 
   golint = callPackage ../development/tools/golint { };
 
-  golangci-lint = callPackage ../development/tools/golangci-lint {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  golangci-lint = callPackage ../development/tools/golangci-lint { };
 
   gocyclo = callPackage ../development/tools/gocyclo { };
 
@@ -17295,9 +17155,7 @@ in
 
   govendor = callPackage ../development/tools/govendor { };
 
-  go-tools = callPackage ../development/tools/go-tools {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  go-tools = callPackage ../development/tools/go-tools { };
 
   gotools = callPackage ../development/tools/gotools {
     inherit (darwin.apple_sdk.frameworks) Security;
@@ -17408,9 +17266,7 @@ in
 
   procdump = callPackage ../os-specific/linux/procdump { };
 
-  prototool = callPackage ../development/tools/prototool {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  prototool = callPackage ../development/tools/prototool { };
 
   qemu_kvm = lowPrio (qemu.override { hostCpuOnly = true; });
 
@@ -17487,10 +17343,7 @@ in
 
   smem = callPackage ../os-specific/linux/smem { };
 
-  smimesign = callPackage ../os-specific/darwin/smimesign {
-    inherit (darwin) libobjc;
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  smimesign = callPackage ../os-specific/darwin/smimesign { };
 
   speedometer = callPackage ../os-specific/linux/speedometer { };
 
@@ -17660,7 +17513,7 @@ in
 
   zenmonitor = callPackage ../os-specific/linux/zenmonitor { };
 
-  inherit (callPackage ../os-specific/linux/zfs {
+  inherit (callPackages ../os-specific/linux/zfs {
     configFile = "user";
   }) zfsStable zfsUnstable;
 
@@ -17826,9 +17679,7 @@ in
 
   documentation-highlighter = callPackage ../misc/documentation-highlighter { };
 
-  documize-community = callPackage ../servers/documize-community {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  documize-community = callPackage ../servers/documize-community { };
 
   doge = callPackage ../misc/doge { };
 
@@ -17904,6 +17755,8 @@ in
 
   freepats = callPackage ../data/misc/freepats { };
 
+  g15daemon = callPackage ../os-specific/linux/g15daemon {};
+
   gentium = callPackage ../data/fonts/gentium {};
 
   gentium-book-basic = callPackage ../data/fonts/gentium-book-basic {};
@@ -17919,6 +17772,8 @@ in
 
   gnome-breeze = callPackage ../data/themes/gnome-breeze { };
 
+  gnome-icon-theme = callPackage ../data/icons/gnome-icon-theme { };
+
   go-font = callPackage ../data/fonts/go-font { };
 
   greybird = callPackage ../data/themes/greybird { };
@@ -17931,9 +17786,7 @@ in
 
   helvetica-neue-lt-std = callPackage ../data/fonts/helvetica-neue-lt-std { };
 
-  hetzner-kube = callPackage ../applications/networking/cluster/hetzner-kube {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  hetzner-kube = callPackage ../applications/networking/cluster/hetzner-kube { };
 
   hicolor-icon-theme = callPackage ../data/icons/hicolor-icon-theme { };
 
@@ -17947,11 +17800,16 @@ in
 
   ibm-plex = callPackage ../data/fonts/ibm-plex { };
 
+  iconpack-jade = callPackage ../data/icons/iconpack-jade { };
+
   iconpack-obsidian = callPackage ../data/icons/iconpack-obsidian { };
 
   inconsolata = callPackage ../data/fonts/inconsolata {};
+
   inconsolata-lgc = callPackage ../data/fonts/inconsolata/lgc.nix {};
 
+  inconsolata-nerdfont = callPackage ../data/fonts/inconsolata-nerdfont {};
+
   input-fonts = callPackage ../data/fonts/input-fonts { };
 
   inriafonts = callPackage ../data/fonts/inriafonts { };
@@ -18354,6 +18212,8 @@ in
 
   terminus_font_ttf = callPackage ../data/fonts/terminus-font-ttf { };
 
+  terminus-nerdfont = callPackage ../data/fonts/terminus-nerdfont { };
+
   termtekst = callPackage ../misc/emulators/termtekst { };
 
   tex-gyre = callPackages ../data/fonts/tex-gyre { };
@@ -18466,7 +18326,7 @@ in
   aacgain = callPackage ../applications/audio/aacgain { };
 
   abcde = callPackage ../applications/audio/abcde {
-    inherit (pythonPackages) eyeD3;
+    inherit (python3Packages) eyeD3;
   };
 
   abiword = callPackage ../applications/office/abiword { };
@@ -18546,22 +18406,21 @@ in
 
   appeditor = callPackage ../applications/misc/appeditor { };
 
+  apostrophe = callPackage ../applications/editors/apostrophe {
+    pythonPackages = python3Packages;
+  };
+
   aqemu = libsForQt5.callPackage ../applications/virtualization/aqemu { };
 
   ardour = callPackage ../applications/audio/ardour {
     inherit (gnome2) libgnomecanvas libgnomecanvasmm;
-    inherit (vamp) vampSDK;
   };
 
   arelle = with python3Packages; toPythonApplication arelle;
 
-  argo = callPackage ../applications/networking/cluster/argo {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  argo = callPackage ../applications/networking/cluster/argo { };
 
-  argocd = callPackage ../applications/networking/cluster/argocd {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  argocd = callPackage ../applications/networking/cluster/argocd { };
 
   ario = callPackage ../applications/audio/ario { };
 
@@ -18605,6 +18464,8 @@ in
 
   cadence =  qt5.callPackage ../applications/audio/cadence { };
 
+  cheesecutter = callPackage ../applications/audio/cheesecutter { };
+
   milkytracker = callPackage ../applications/audio/milkytracker { };
 
   schismtracker = callPackage ../applications/audio/schismtracker { };
@@ -18674,11 +18535,6 @@ in
 
   bb =  callPackage ../applications/misc/bb { };
 
-  beast = callPackage ../applications/audio/beast {
-    inherit (gnome2) libgnomecanvas libart_lgpl;
-    guile = guile_1_8;
-  };
-
   bevelbar = callPackage ../applications/window-managers/bevelbar { };
 
   bibletime = libsForQt5.callPackage ../applications/misc/bibletime { };
@@ -18722,6 +18578,8 @@ in
 
   bgpdump = callPackage ../tools/networking/bgpdump { };
 
+  bgpq3 = callPackage ../tools/networking/bgpq3 { };
+
   blackbox = callPackage ../applications/version-management/blackbox { };
 
   bleachbit = callPackage ../applications/misc/bleachbit { };
@@ -18736,11 +18594,7 @@ in
 
   bluejeans = callPackage ../applications/networking/browsers/mozilla-plugins/bluejeans { };
 
-  bluejeans-gui = callPackage ../applications/networking/instant-messengers/bluejeans {
-    gconf = pkgs.gnome2.GConf;
-    inherit (pkgs.xorg) libX11 libXrender libXtst libXdamage
-                        libXi libXext libXfixes libXcomposite;
-  };
+  bluejeans-gui = callPackage ../applications/networking/instant-messengers/bluejeans { };
 
   blugon = callPackage ../applications/misc/blugon { };
 
@@ -18957,9 +18811,7 @@ in
 
   csdp = callPackage ../applications/science/math/csdp { };
 
-  ctop = callPackage ../tools/system/ctop {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  ctop = callPackage ../tools/system/ctop { };
 
   cubicsdr = callPackage ../applications/radio/cubicsdr { wxGTK = wxGTK31; };
 
@@ -18985,7 +18837,7 @@ in
 
   dablin = callPackage ../applications/radio/dablin { };
 
-  darcs = haskell.lib.overrideCabal (haskell.lib.justStaticExecutables haskellPackages.darcs) (drv: {
+  darcs = haskell.lib.overrideCabal (haskell.lib.justStaticExecutables haskell.packages.ghc865.darcs) (drv: {
     configureFlags = (stdenv.lib.remove "-flibrary" drv.configureFlags or []) ++ ["-f-library"];
   });
 
@@ -19151,9 +19003,7 @@ in
 
   eaglemode = callPackage ../applications/misc/eaglemode { };
 
-  echoip = callPackage ../servers/echoip {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  echoip = callPackage ../servers/echoip { };
 
   eclipses = recurseIntoAttrs (callPackage ../applications/editors/eclipse {
     jdk = jdk11;
@@ -19305,9 +19155,7 @@ in
 
   evilvte = callPackage ../applications/misc/evilvte (config.evilvte or {});
 
-  exercism = callPackage ../applications/misc/exercism {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  exercism = callPackage ../applications/misc/exercism { };
 
   go-motion = callPackage ../development/tools/go-motion { };
 
@@ -19419,9 +19267,7 @@ in
   geany = callPackage ../applications/editors/geany { };
   geany-with-vte = callPackage ../applications/editors/geany/with-vte.nix { };
 
-  geoipupdate = callPackage ../applications/misc/geoipupdate/default.nix {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  geoipupdate = callPackage ../applications/misc/geoipupdate/default.nix { };
 
   ghostwriter = libsForQt5.callPackage ../applications/editors/ghostwriter { };
 
@@ -19444,6 +19290,8 @@ in
       ++ lib.optionals stdenv.isLinux [ gr-gsm gr-limesdr ];
   };
 
+  grandorgue = callPackage ../applications/audio/grandorgue { };
+
   gr-nacl = callPackage ../applications/radio/gnuradio/nacl.nix { };
 
   gr-gsm = callPackage ../applications/radio/gnuradio/gsm.nix { };
@@ -19460,9 +19308,7 @@ in
     inherit (darwin) libiconv;
   };
 
-  gomuks = callPackage ../applications/networking/instant-messengers/gomuks {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  gomuks = callPackage ../applications/networking/instant-messengers/gomuks { };
 
   inherit (ocamlPackages) google-drive-ocamlfuse;
 
@@ -19552,9 +19398,7 @@ in
 
   sngrep = callPackage ../applications/networking/sniffers/sngrep {};
 
-  termshark = callPackage ../tools/networking/termshark {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  termshark = callPackage ../tools/networking/termshark { };
 
   fbida = callPackage ../applications/graphics/fbida { };
 
@@ -19785,9 +19629,7 @@ in
     inherit (darwin) IOKit;
   };
 
-  glow = callPackage ../applications/editors/glow {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  glow = callPackage ../applications/editors/glow { };
 
   glowing-bear = callPackage ../applications/networking/irc/glowing-bear { };
 
@@ -19925,6 +19767,8 @@ in
 
   herbstluftwm = callPackage ../applications/window-managers/herbstluftwm { };
 
+  hercules = callPackage ../applications/virtualization/hercules { };
+
   hexchat = callPackage ../applications/networking/irc/hexchat { };
 
   hexcurse = callPackage ../applications/editors/hexcurse { };
@@ -19965,15 +19809,11 @@ in
     wxGTK = wxGTK30;
   };
 
-  hugo = callPackage ../applications/misc/hugo {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  hugo = callPackage ../applications/misc/hugo { };
 
   hydrogen = callPackage ../applications/audio/hydrogen { };
 
-  hydroxide = callPackage ../applications/networking/hydroxide {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  hydroxide = callPackage ../applications/networking/hydroxide { };
 
   hyper = callPackage ../applications/misc/hyper { };
 
@@ -19993,7 +19833,9 @@ in
 
   hyperledger-fabric = callPackage ../tools/misc/hyperledger-fabric { };
 
-  jackline = callPackage ../applications/networking/instant-messengers/jackline { };
+  jackline = callPackage ../applications/networking/instant-messengers/jackline {
+    ocamlPackages = ocaml-ng.ocamlPackages_4_08;
+  };
 
   leftwm = callPackage ../applications/window-managers/leftwm { };
 
@@ -20007,8 +19849,6 @@ in
     });
 
   slack = callPackage ../applications/networking/instant-messengers/slack { };
-  slack-theme-black = callPackage ../applications/networking/instant-messengers/slack/dark-theme.nix { };
-  slack-dark = pkgs.slack.override { theme = slack-theme-black; };
 
   slack-cli = callPackage ../tools/networking/slack-cli { };
 
@@ -20042,6 +19882,8 @@ in
 
   swaylock-fancy = callPackage ../applications/window-managers/sway/lock-fancy.nix { };
 
+  swaylock-effects = callPackage ../applications/window-managers/sway/lock-effects.nix { };
+
   waybar = callPackage ../applications/misc/waybar {
     pulseSupport = config.pulseaudio or false;
   };
@@ -20266,6 +20108,8 @@ in
     boost = boost155.override { enablePython = true; };
   };
 
+  k3s = callPackage ../applications/networking/cluster/k3s {};
+
   k9copy = libsForQt5.callPackage ../applications/video/k9copy {};
 
   kail = callPackage ../tools/networking/kail {  };
@@ -20285,7 +20129,7 @@ in
       recurseIntoAttrs (makeOverridable mkApplications attrs);
 
   inherit (kdeApplications)
-    akonadi akregator ark dolphin dragon ffmpegthumbs filelight gwenview k3b
+    akonadi akregator ark dolphin dragon elisa ffmpegthumbs filelight gwenview k3b
     kaddressbook kate kcachegrind kcalc kcharselect kcolorchooser kdenlive kdf kdialog
     keditbookmarks kfind kget kgpg khelpcenter kig kleopatra kmail kmix kmplot kolourpaint kompare konsole yakuake
     kpkpass kitinerary kontact korganizer krdc krfb ksystemlog ktouch kwalletmanager marble minuet okular spectacle;
@@ -20315,9 +20159,7 @@ in
 
   kega-fusion = pkgsi686Linux.callPackage ../misc/emulators/kega-fusion { };
 
-  kepubify = callPackage ../tools/misc/kepubify {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  kepubify = callPackage ../tools/misc/kepubify { };
 
   kermit = callPackage ../tools/misc/kermit { };
 
@@ -20351,6 +20193,8 @@ in
 
   kiwix = callPackage ../applications/misc/kiwix { };
 
+  klayout = libsForQt5.callPackage ../applications/misc/klayout { };
+
   kmplayer = libsForQt5.callPackage ../applications/video/kmplayer { };
 
   kmymoney = libsForQt5.callPackage ../applications/office/kmymoney {
@@ -20360,6 +20204,8 @@ in
 
   kodestudio = callPackage ../applications/editors/kodestudio { };
 
+  kondo = callPackage ../applications/misc/kondo { };
+
   konversation = libsForQt5.callPackage ../applications/networking/irc/konversation { };
 
   kotatogram-desktop = qt5.callPackage ../applications/networking/instant-messengers/telegram/kotatogram-desktop { };
@@ -20378,9 +20224,7 @@ in
 
   kubecfg = callPackage ../applications/networking/cluster/kubecfg { };
 
-  kubeval = callPackage ../applications/networking/cluster/kubeval {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  kubeval = callPackage ../applications/networking/cluster/kubeval { };
 
   kubeval-schema = callPackage ../applications/networking/cluster/kubeval/schema.nix { };
 
@@ -20388,29 +20232,19 @@ in
     go = buildPackages.go_1_13;
   };
 
-  kubeseal = callPackage ../applications/networking/cluster/kubeseal {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  kubeseal = callPackage ../applications/networking/cluster/kubeseal { };
 
   kubectl = callPackage ../applications/networking/cluster/kubectl { };
 
   kubeless = callPackage ../applications/networking/cluster/kubeless { };
 
-  k9s = callPackage ../applications/networking/cluster/k9s {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  k9s = callPackage ../applications/networking/cluster/k9s { };
 
-  fluxctl = callPackage ../applications/networking/cluster/fluxctl {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  fluxctl = callPackage ../applications/networking/cluster/fluxctl { };
 
-  linkerd = callPackage ../applications/networking/cluster/linkerd {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  linkerd = callPackage ../applications/networking/cluster/linkerd { };
 
-  kubernetes-helm = callPackage ../applications/networking/cluster/helm {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  kubernetes-helm = callPackage ../applications/networking/cluster/helm { };
 
   kubetail = callPackage ../applications/networking/cluster/kubetail { } ;
 
@@ -20450,7 +20284,9 @@ in
 
   lemonbar-xft = callPackage ../applications/window-managers/lemonbar/xft.nix { };
 
-  leo-editor = callPackage ../applications/editors/leo-editor { };
+  legit = gitAndTools.legit;
+
+  leo-editor = libsForQt5.callPackage ../applications/editors/leo-editor { };
 
   libowfat = callPackage ../development/libraries/libowfat { };
 
@@ -20461,7 +20297,6 @@ in
 
   libreoffice-args = {
     inherit (perlPackages) ArchiveZip IOCompress;
-    inherit (gnome2) GConf ORBit2 gnome_vfs;
     zip = zip.override { enableNLS = false; };
     fontsConf = makeFontsConf {
       fontDirectories = [
@@ -20504,9 +20339,7 @@ in
     portaudio = portaudio2014;
   };
 
-  lingot = callPackage ../applications/audio/lingot {
-    inherit (gnome2) libglade;
-  };
+  lingot = callPackage ../applications/audio/lingot { };
 
   linuxband = callPackage ../applications/audio/linuxband { };
 
@@ -20527,9 +20360,11 @@ in
 
   libdsk = callPackage ../misc/emulators/libdsk { };
 
+  liblinphone = callPackage ../development/libraries/liblinphone { };
+
   links2 = callPackage ../applications/networking/browsers/links2 { };
 
-  linphone = callPackage ../applications/networking/instant-messengers/linphone { };
+  linphone = libsForQt5.callPackage ../applications/networking/instant-messengers/linphone { };
 
   linuxsampler = callPackage ../applications/audio/linuxsampler { };
 
@@ -20570,6 +20405,8 @@ in
     flavour = "git";
   };
 
+  lime = callPackage ../development/libraries/lime { };
+
   luakit = callPackage ../applications/networking/browsers/luakit {
     inherit (luajitPackages) luafilesystem;
   };
@@ -20648,6 +20485,8 @@ in
       canonicaljson;
   };
 
+  matrix-dl = callPackage ../applications/networking/instant-messengers/matrix-dl { };
+
   matrix-recorder = callPackage ../applications/networking/instant-messengers/matrix-recorder {};
 
   mblaze = callPackage ../applications/networking/mailreaders/mblaze { };
@@ -20707,9 +20546,7 @@ in
   minidjvu = callPackage ../applications/graphics/minidjvu { };
 
   minikube = callPackage ../applications/networking/cluster/minikube {
-    inherit (darwin) libobjc;
-    inherit (darwin.apple_sdk.libs) xpc;
-    inherit (darwin.apple_sdk.frameworks) vmnet Foundation IOKit;
+    inherit (darwin.apple_sdk.frameworks) vmnet;
   };
 
   minishift = callPackage ../applications/networking/cluster/minishift { };
@@ -20722,9 +20559,7 @@ in
 
   meh = callPackage ../applications/graphics/meh {};
 
-  mixxx = libsForQt5.callPackage ../applications/audio/mixxx {
-    inherit (vamp) vampSDK;
-  };
+  mixxx = libsForQt5.callPackage ../applications/audio/mixxx { };
 
   mjpg-streamer = callPackage ../applications/video/mjpg-streamer { };
 
@@ -20839,6 +20674,10 @@ in
 
   rofi-mpd = callPackage ../applications/audio/rofi-mpd { };
 
+  rofi-calc = callPackage ../applications/science/math/rofi-calc { };
+
+  rofi-emoji = callPackage ../applications/misc/rofi-emoji { };
+
   ympd = callPackage ../applications/audio/ympd { };
 
   nload = callPackage ../applications/networking/nload { };
@@ -20943,6 +20782,9 @@ in
 
   notion = callPackage ../applications/window-managers/notion { };
 
+  nootka = qt5.callPackage ../applications/audio/nootka { };
+  nootka-unstable = qt5.callPackage ../applications/audio/nootka/unstable.nix { };
+
   open-policy-agent = callPackage ../development/tools/open-policy-agent { };
 
   openshift = callPackage ../applications/networking/cluster/openshift {
@@ -21000,9 +20842,7 @@ in
 
   ptex = callPackage ../development/libraries/ptex {};
 
-  qbec = callPackage ../applications/networking/cluster/qbec {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  qbec = callPackage ../applications/networking/cluster/qbec { };
 
   rssguard = libsForQt5.callPackage ../applications/networking/feedreaders/rssguard { };
 
@@ -21135,6 +20975,7 @@ in
     withALSA = stdenv.isLinux;
     withPulseAudio = config.pulseaudio or stdenv.isLinux;
     withPortAudio = stdenv.isDarwin;
+    withMPRIS = stdenv.isLinux;
   };
 
   ncview = callPackage ../tools/X11/ncview { } ;
@@ -21224,10 +21065,7 @@ in
 
   opentimestamps-client = python3Packages.callPackage ../tools/misc/opentimestamps-client {};
 
-  opentx = callPackage ../applications/misc/opentx {
-    gcc-arm-embedded = pkgsCross.arm-embedded.buildPackages.gcc;
-    binutils-arm-embedded = pkgsCross.arm-embedded.buildPackages.binutils;
-  };
+  opentx = libsForQt5.callPackage ../applications/misc/opentx { };
 
   opera = callPackage ../applications/networking/browsers/opera {};
 
@@ -21345,7 +21183,7 @@ in
 
   pianobar = callPackage ../applications/audio/pianobar { };
 
-  pianobooster = callPackage ../applications/audio/pianobooster { };
+  pianobooster = qt5.callPackage ../applications/audio/pianobooster { };
 
   picard = callPackage ../applications/audio/picard { };
 
@@ -21421,6 +21259,8 @@ in
     gtksharp = gtk-sharp-2_0;
   };
 
+  pistol = callPackage ../tools/misc/pistol { };
+
   plex-media-player = libsForQt512.callPackage ../applications/video/plex-media-player { };
 
   plex-mpv-shim = python3Packages.callPackage ../applications/video/plex-mpv-shim { };
@@ -21503,6 +21343,8 @@ in
     guiSupport = false;
   };
 
+  qcad = libsForQt5.callPackage ../applications/misc/qcad { };
+
   qcomicbook = libsForQt5.callPackage ../applications/graphics/qcomicbook { };
 
   eiskaltdcpp = callPackage ../applications/networking/p2p/eiskaltdcpp {
@@ -21544,6 +21386,8 @@ in
 
   qmetro = callPackage ../applications/misc/qmetro { };
 
+  qmidiarp = callPackage ../applications/audio/qmidiarp {};
+
   qmidinet = libsForQt5.callPackage ../applications/audio/qmidinet { };
 
   qmidiroute = callPackage ../applications/audio/qmidiroute { };
@@ -21694,6 +21538,8 @@ in
   retroshare = libsForQt5.callPackage ../applications/networking/p2p/retroshare { };
   retroshare06 = retroshare;
 
+  rgp = libsForQt5.callPackage ../development/tools/rgp { };
+
   ricochet = libsForQt5.callPackage ../applications/networking/instant-messengers/ricochet { };
 
   ries = callPackage ../applications/science/math/ries { };
@@ -21791,12 +21637,12 @@ in
 
   sfxr-qt = libsForQt5.callPackage ../applications/audio/sfxr-qt { };
 
-  shadowfox = callPackage ../tools/networking/shadowfox {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  shadowfox = callPackage ../tools/networking/shadowfox { };
 
   shfmt = callPackage ../tools/text/shfmt { };
 
+  shortwave = callPackage ../applications/audio/shortwave { };
+
   shotgun = callPackage ../tools/graphics/shotgun {};
 
   shutter = callPackage ../applications/graphics/shutter { };
@@ -21825,9 +21671,7 @@ in
 
   sooperlooper = callPackage ../applications/audio/sooperlooper { };
 
-  sops = callPackage ../tools/security/sops {
-    inherit (darwin.apple_sdk.frameworks) CoreServices;
-  };
+  sops = callPackage ../tools/security/sops { };
 
   sorcer = callPackage ../applications/audio/sorcer { };
 
@@ -21976,13 +21820,11 @@ in
 
   skanlite = libsForQt5.callPackage ../applications/office/skanlite { };
 
-  sonic-lineup = libsForQt5.callPackage ../applications/audio/sonic-lineup {
-    inherit (pkgs.vamp) vampSDK;
-  };
+  soci = callPackage ../development/libraries/soci { };
 
-  sonic-visualiser = libsForQt5.callPackage ../applications/audio/sonic-visualiser {
-    inherit (pkgs.vamp) vampSDK;
-  };
+  sonic-lineup = libsForQt5.callPackage ../applications/audio/sonic-lineup { };
+
+  sonic-visualiser = libsForQt5.callPackage ../applications/audio/sonic-visualiser { };
 
   soulseekqt = libsForQt5.callPackage ../applications/networking/p2p/soulseekqt { };
 
@@ -22029,7 +21871,8 @@ in
   stp = callPackage ../applications/science/logic/stp { };
 
   stretchly = callPackage ../applications/misc/stretchly {
-    inherit (gnome2) GConf;
+    # Error on launch w/electron_8
+    electron = electron_7;
   };
 
   stumpish = callPackage ../applications/window-managers/stumpish {};
@@ -22085,10 +21928,7 @@ in
 
   syncplay = python3.pkgs.callPackage ../applications/networking/syncplay { };
 
-  inherit (callPackages ../applications/networking/syncthing {
-    inherit (darwin) libobjc;
-    inherit (darwin.apple_sdk.frameworks) CoreServices Foundation;
-  })
+  inherit (callPackages ../applications/networking/syncthing { })
     syncthing
     syncthing-cli
     syncthing-discovery
@@ -22175,7 +22015,6 @@ in
 
   tendermint = callPackage ../tools/networking/tendermint {
     buildGoModule = buildGo112Module;
-    inherit (darwin.apple_sdk.frameworks) Security;
   };
 
   termdown = (newScope pythonPackages) ../applications/misc/termdown { };
@@ -22282,6 +22121,8 @@ in
 
   tortoisehg = callPackage ../applications/version-management/tortoisehg { };
 
+  tony = libsForQt5.callPackage ../applications/audio/tony { };
+
   toot = callPackage ../applications/misc/toot { };
 
   tootle = callPackage ../applications/misc/tootle { };
@@ -22327,6 +22168,8 @@ in
 
   tudu = callPackage ../applications/office/tudu { };
 
+  tut = callPackage ../applications/misc/tut { };
+
   tuxguitar = callPackage ../applications/editors/music/tuxguitar { };
 
   twister = callPackage ../applications/networking/p2p/twister { };
@@ -22407,6 +22250,8 @@ in
     gtk3 = if stdenv.isDarwin then gtk3-x11 else gtk3;
   });
 
+  vimacs = callPackage ../applications/editors/vim/vimacs.nix { };
+
   qpdfview = libsForQt5.callPackage ../applications/misc/qpdfview {};
 
   qtile = callPackage ../applications/window-managers/qtile {
@@ -22624,7 +22469,7 @@ in
 
   chatterino2 = libsForQt5.callPackage ../applications/networking/instant-messengers/chatterino2 {};
 
-  weston = callPackage ../applications/window-managers/weston { };
+  weston = callPackage ../applications/window-managers/weston { pipewire = pipewire_0_2; };
 
   whitebox-tools = callPackage ../applications/gis/whitebox-tools {
     inherit (darwin.apple_sdk.frameworks) Security;
@@ -22818,6 +22663,10 @@ in
 
   x32edit = callPackage ../applications/audio/midas/x32edit.nix {};
 
+  x42-avldrums = callPackage ../applications/audio/x42-avldrums { };
+
+  x42-gmsynth = callPackage ../applications/audio/x42-gmsynth { };
+
   x42-plugins = callPackage ../applications/audio/x42-plugins { };
 
   xannotate = callPackage ../tools/X11/xannotate {};
@@ -22847,6 +22696,8 @@ in
 
   kodiPlainWayland = callPackage ../applications/video/kodi { useWayland = true; };
 
+  kodiGBM = callPackage ../applications/video/kodi { useGbm = true; };
+
   kodiPlugins = recurseIntoAttrs (callPackage ../applications/video/kodi/plugins.nix {});
 
   kodi = wrapKodi {
@@ -22857,6 +22708,10 @@ in
     kodi = kodiPlainWayland;
   };
 
+  kodi-gbm = wrapKodi {
+    kodi = kodiGBM;
+  };
+
   kodi-cli = callPackage ../tools/misc/kodi-cli { };
 
   kodi-retroarch-advanced-launchers =
@@ -23116,6 +22971,10 @@ in
 
   zim = callPackage ../applications/office/zim { };
 
+  zita-ajbridge = callPackage ../applications/audio/zita-ajbridge { };
+
+  zita-at1 = callPackage ../applications/audio/zita-at1 { };
+
   zita-njbridge = callPackage ../applications/audio/zita-njbridge { };
 
   zola = callPackage ../applications/misc/zola {
@@ -23186,7 +23045,7 @@ in
   freicoin = callPackage ../applications/blockchains/freicoin.nix { boost = boost155; };
   go-ethereum = callPackage ../applications/blockchains/go-ethereum.nix {
     inherit (darwin) libobjc;
-    inherit (darwin.apple_sdk.frameworks) CoreServices IOKit;
+    inherit (darwin.apple_sdk.frameworks) IOKit;
   };
 
   ledger_agent = with python3Packages; toPythonApplication ledger_agent;
@@ -23200,7 +23059,6 @@ in
 
   lnd = callPackage ../applications/blockchains/lnd.nix {
     buildGoModule = buildGo112Module;
-    inherit (darwin.apple_sdk.frameworks) Security;
   };
 
   monero = callPackage ../applications/blockchains/monero {
@@ -23231,6 +23089,8 @@ in
 
   sumokoin = callPackage ../applications/blockchains/sumokoin.nix { boost = boost165; };
 
+  tessera = callPackage ../applications/blockchains/tessera.nix { };
+
   vertcoin  = libsForQt5.callPackage ../applications/blockchains/vertcoin.nix { boost = boost165; withGui = true; };
   vertcoind = callPackage ../applications/blockchains/vertcoin.nix { boost = boost165; withGui = false; };
 
@@ -23281,7 +23141,7 @@ in
   amoeba = callPackage ../games/amoeba { };
   amoeba-data = callPackage ../games/amoeba/data.nix { };
 
-  andyetitmoves = if stdenv.isLinux then callPackage ../games/andyetitmoves {} else null;
+  andyetitmoves = callPackage ../games/andyetitmoves {};
 
   angband = callPackage ../games/angband { };
 
@@ -23614,6 +23474,14 @@ in
 
   ja2-stracciatella = callPackage ../games/ja2-stracciatella { };
 
+  katago = callPackage ../games/katago { };
+
+  katagoWithCuda = katago.override {
+    cudaSupport = true;
+    cudnn = cudnn_cudatoolkit_10_1;
+    cudatoolkit = cudatoolkit_10_1;
+  };
+
   klavaro = callPackage ../games/klavaro {};
 
   kobodeluxe = callPackage ../games/kobodeluxe { };
@@ -23664,7 +23532,7 @@ in
   multimc = libsForQt5.callPackage ../games/multimc { };
 
   inherit (callPackages ../games/minetest {
-	inherit (darwin) libiconv;
+    inherit (darwin) libiconv;
     inherit (darwin.apple_sdk.frameworks) OpenGL OpenAL Carbon Cocoa;
   })
     minetestclient_4 minetestserver_4
@@ -23766,6 +23634,8 @@ in
 
   pacvim = callPackage ../games/pacvim { };
 
+  papermc = callPackage ../games/papermc { };
+
   pentobi = libsForQt5.callPackage ../games/pentobi { };
 
   performous = callPackage ../games/performous {
@@ -23877,7 +23747,9 @@ in
 
   inherit (callPackage ../games/scummvm/games.nix { })
     beneath-a-steel-sky
+    broken-sword-25
     drascula-the-vampire-strikes-back
+    dreamweb
     flight-of-the-amazon-queen
     lure-of-the-temptress;
 
@@ -24117,7 +23989,26 @@ in
 
   xmoto = callPackage ../games/xmoto { };
 
-  xonotic = callPackage ../games/xonotic { };
+
+  inherit (callPackage ../games/xonotic { })
+    xonotic-data
+    xonotic;
+
+  xonotic-glx = (callPackage ../games/xonotic {
+    withSDL = false;
+    withGLX = true;
+  }).xonotic;
+
+  xonotic-dedicated = (callPackage ../games/xonotic {
+    withSDL = false;
+    withDedicated = true;
+  }).xonotic;
+
+  xonotic-sdl = xonotic;
+  xonotic-sdl-unwrapped = xonotic-sdl.xonotic-unwrapped;
+  xonotic-glx-unwrapped = xonotic-glx.xonotic-unwrapped;
+  xonotic-dedicated-unwrapped = xonotic-dedicated.xonotic-unwrapped;
+
 
   xpilot-ng = callPackage ../games/xpilot { };
   bloodspilot-server = callPackage ../games/xpilot/bloodspilot-server.nix {};
@@ -24734,6 +24625,8 @@ in
 
   boogie = dotnetPackages.Boogie;
 
+  cadical = callPackage ../applications/science/logic/cadical {};
+
   inherit (callPackage ./coq-packages.nix {
     inherit (ocaml-ng) ocamlPackages_4_05;
   }) mkCoqPackages
@@ -24928,6 +24821,8 @@ in
 
   caneda = libsForQt5.callPackage ../applications/science/electronics/caneda { };
 
+  fparser = callPackage ../applications/science/electronics/fparser { };
+
   geda = callPackage ../applications/science/electronics/geda {
     guile = guile_2_0;
   };
@@ -25141,7 +25036,9 @@ in
 
   hepmc2 = callPackage ../development/libraries/physics/hepmc2 { };
 
-  hepmc3 = callPackage ../development/libraries/physics/hepmc3 { };
+  hepmc3 = callPackage ../development/libraries/physics/hepmc3 {
+    python = null;
+  };
 
   herwig = callPackage ../development/libraries/physics/herwig { };
 
@@ -25188,9 +25085,7 @@ in
 
   ataripp = callPackage ../misc/emulators/atari++ { };
 
-  atlantis = callPackage ../applications/networking/cluster/atlantis {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  atlantis = callPackage ../applications/networking/cluster/atlantis { };
 
   auctex = callPackage ../tools/typesetting/tex/auctex { };
 
@@ -25210,6 +25105,8 @@ in
 
   brightnessctl = callPackage ../misc/brightnessctl { };
 
+  cached-nix-shell = callPackage ../tools/nix/cached-nix-shell {};
+
   calaos_installer = libsForQt5.callPackage ../misc/calaos/installer {};
 
   ccemux = callPackage ../misc/emulators/ccemux { };
@@ -25378,9 +25275,7 @@ in
     binutils-arm-embedded = pkgsCross.arm-embedded.buildPackages.binutils;
   };
 
-  gobuster = callPackage ../tools/security/gobuster {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  gobuster = callPackage ../tools/security/gobuster { };
 
   guetzli = callPackage ../applications/graphics/guetzli { };
 
@@ -25394,9 +25289,7 @@ in
     stdenv = gcc8Stdenv;
   };
 
-  helmfile = callPackage ../applications/networking/cluster/helmfile {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  helmfile = callPackage ../applications/networking/cluster/helmfile { };
 
   heptio-ark = callPackage ../applications/networking/cluster/heptio-ark { };
 
@@ -25451,6 +25344,8 @@ in
 
   keynav = callPackage ../tools/X11/keynav { };
 
+  kmon = callPackage ../tools/system/kmon { };
+
   kompose = callPackage ../applications/networking/cluster/kompose { };
 
   kontemplate = callPackage ../applications/networking/cluster/kontemplate { };
@@ -25481,7 +25376,9 @@ in
     icu = icu58;
   };
 
-  mame = libsForQt5.callPackage ../misc/emulators/mame { };
+  mame = libsForQt5.callPackage ../misc/emulators/mame {
+    inherit (darwin.apple_sdk.frameworks) CoreAudioKit ForceFeedback;
+  };
 
   martyr = callPackage ../development/libraries/martyr { };
 
@@ -25501,9 +25398,7 @@ in
 
   musly = callPackage ../applications/audio/musly { };
 
-  mynewt-newt = callPackage ../tools/package-management/mynewt-newt {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  mynewt-newt = callPackage ../tools/package-management/mynewt-newt { };
 
   inherit (callPackage ../tools/package-management/nix {
       storeDir = config.nix.storeDir or "/nix/store";
@@ -25511,7 +25406,6 @@ in
       boehmgc = boehmgc.override { enableLargeConfig = true; };
       })
     nix
-    nix1
     nixStable
     nixUnstable
     nixFlakes;
@@ -25919,6 +25813,8 @@ in
 
   dsseries = callPackage ../applications/graphics/sane/backends/dsseries { };
 
+  sane-airscan = callPackage ../applications/graphics/sane/backends/airscan { };
+
   mkSaneConfig = callPackage ../applications/graphics/sane/config.nix { };
 
   sane-frontends = callPackage ../applications/graphics/sane/frontends.nix { };
@@ -25970,16 +25866,9 @@ in
 
   sqsh = callPackage ../development/tools/sqsh { };
 
-  jx = callPackage ../applications/networking/cluster/jx {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  jx = callPackage ../applications/networking/cluster/jx {};
 
-  prow = callPackage ../applications/networking/cluster/prow {
-    # Version 2019-08-14 fails to build with go 1.13 due to dependencies:
-    #   go: golang.org/x/lint@v0.0.0-20190301231843-5614ed5bae6f used for two different module paths (github.com/golang/lint and golang.org/x/lint)
-    buildGoModule = buildGo112Module;
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  prow = callPackage ../applications/networking/cluster/prow { };
 
   inherit (callPackage ../applications/networking/cluster/terraform {
     # terraform 0.12 crashes with go1.14 on darwin https://github.com/hashicorp/terraform/issues/24287
@@ -25996,10 +25885,7 @@ in
   terraform-full = terraform.full;
 
   terraform-providers = recurseIntoAttrs (
-    callPackage ../applications/networking/cluster/terraform-providers {
-      inherit buildGo112Module;
-      inherit (darwin.apple_sdk.frameworks) Security;
-    }
+    callPackage ../applications/networking/cluster/terraform-providers {}
   );
 
   terraform-docs = callPackage ../applications/networking/cluster/terraform-docs {};
@@ -26119,9 +26005,7 @@ in
 
   webfs = callPackage ../servers/http/webfs { };
 
-  websocketd = callPackage ../applications/networking/websocketd {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  websocketd = callPackage ../applications/networking/websocketd { };
 
   wikicurses = callPackage ../applications/misc/wikicurses {
     pythonPackages = python3Packages;
@@ -26181,6 +26065,8 @@ in
 
   xboxdrv = callPackage ../misc/drivers/xboxdrv { };
 
+  xow = callPackage ../misc/drivers/xow { };
+
   xbps = callPackage ../tools/package-management/xbps { };
 
   xcftools = callPackage ../tools/graphics/xcftools { };
@@ -26270,6 +26156,7 @@ in
 
   higan = callPackage ../misc/emulators/higan {
     inherit (gnome2) gtksourceview;
+    inherit (darwin.apple_sdk.frameworks) Carbon Cocoa OpenGL OpenAL;
   };
 
   bullet = callPackage ../development/libraries/bullet {
@@ -26341,9 +26228,7 @@ in
 
   zimg = callPackage ../development/libraries/zimg { };
 
-  wtf = callPackage ../applications/misc/wtf {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  wtf = callPackage ../applications/misc/wtf { };
 
   zk-shell = callPackage ../applications/misc/zk-shell { };
 
@@ -26404,7 +26289,9 @@ in
 
   dsniff = callPackage ../tools/networking/dsniff {};
 
-  wal-g = callPackage ../tools/backup/wal-g {};
+  wal-g = callPackage ../tools/backup/wal-g {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
 
   tlwg = callPackage ../data/fonts/tlwg { };
 
@@ -26455,6 +26342,8 @@ in
 
   bcompare = libsForQt5.callPackage ../applications/version-management/bcompare {};
 
+  xp-pen-g430 = libsForQt5.callPackage ../misc/drivers/xp-pen-g430 {};
+
   qmk_firmware = callPackage ../development/misc/qmk_firmware {
     avrgcc = pkgsCross.avr.buildPackages.gcc;
     avrbinutils = pkgsCross.avr.buildPackages.binutils;
@@ -26507,26 +26396,22 @@ in
 
   sieveshell = with python3.pkgs; toPythonApplication managesieve;
 
-  gortr = callPackage ../servers/gortr {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  gortr = callPackage ../servers/gortr {};
 
   sentencepiece = callPackage ../development/libraries/sentencepiece {};
 
-  kcli = callPackage ../development/tools/kcli {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  kcli = callPackage ../development/tools/kcli {};
 
   unstick = callPackage ../os-specific/linux/unstick {};
 
   quartus-prime-lite = callPackage ../applications/editors/quartus-prime {};
 
-  go-license-detector = callPackage ../development/tools/misc/go-license-detector {
-    inherit (darwin.apple_sdk.frameworks) Security;
-  };
+  go-license-detector = callPackage ../development/tools/misc/go-license-detector { };
 
   hashdeep = callPackage ../tools/security/hashdeep { };
 
+  pdf-parser = callPackage ../tools/misc/pdf-parser {};
+
   fluxboxlauncher = callPackage ../applications/misc/fluxboxlauncher {};
 
   btcdeb = callPackage ../applications/blockchains/btcdeb {};
diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix
index bc39a477a7a..7d1bcc5bd99 100644
--- a/pkgs/top-level/coq-packages.nix
+++ b/pkgs/top-level/coq-packages.nix
@@ -137,7 +137,7 @@ in rec {
     version = "8.10.2";
   };
   coq_8_11 = callPackage ../applications/science/logic/coq {
-    version = "8.11.0";
+    version = "8.11.1";
   };
 
   coqPackages_8_5 = mkCoqPackages coq_8_5;
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 2d03b3ed8f4..052b84f269e 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -4,7 +4,7 @@ let
   # These are attributes in compiler and packages that don't support integer-simple.
   integerSimpleExcludes = [
     "ghc822Binary"
-    "ghc863Binary"
+    "ghc865Binary"
     "ghc844"
     "ghcjs"
     "ghcjs86"
@@ -42,7 +42,7 @@ in {
 
     ghc822Binary = callPackage ../development/compilers/ghc/8.2.2-binary.nix { };
 
-    ghc863Binary = callPackage ../development/compilers/ghc/8.6.3-binary.nix { };
+    ghc865Binary = callPackage ../development/compilers/ghc/8.6.5-binary.nix { };
 
     ghc844 = callPackage ../development/compilers/ghc/8.4.4.nix {
       bootPkgs = packages.ghc822Binary;
@@ -57,31 +57,31 @@ in {
       llvmPackages = pkgs.llvmPackages_6;
     };
     ghc881 = callPackage ../development/compilers/ghc/8.8.1.nix {
-      bootPkgs = packages.ghc863Binary;
+      bootPkgs = packages.ghc865Binary;
       inherit (buildPackages.python3Packages) sphinx;
       buildLlvmPackages = buildPackages.llvmPackages_7;
       llvmPackages = pkgs.llvmPackages_7;
     };
     ghc882 = callPackage ../development/compilers/ghc/8.8.2.nix {
-      bootPkgs = packages.ghc863Binary;
+      bootPkgs = packages.ghc865Binary;
       inherit (buildPackages.python3Packages) sphinx;
       buildLlvmPackages = buildPackages.llvmPackages_7;
       llvmPackages = pkgs.llvmPackages_7;
     };
     ghc883 = callPackage ../development/compilers/ghc/8.8.3.nix {
-      bootPkgs = packages.ghc863Binary;
+      bootPkgs = packages.ghc865Binary;
       inherit (buildPackages.python3Packages) sphinx;
       buildLlvmPackages = buildPackages.llvmPackages_7;
       llvmPackages = pkgs.llvmPackages_7;
     };
     ghc8101 = callPackage ../development/compilers/ghc/8.10.1.nix {
-      bootPkgs = packages.ghc863Binary;
+      bootPkgs = packages.ghc865Binary;
       inherit (buildPackages.python3Packages) sphinx;
       buildLlvmPackages = buildPackages.llvmPackages_9;
       llvmPackages = pkgs.llvmPackages_9;
     };
     ghcHEAD = callPackage ../development/compilers/ghc/head.nix {
-      bootPkgs = packages.ghc863Binary;
+      bootPkgs = packages.ghc865Binary;
       inherit (buildPackages.python3Packages) sphinx;
       buildLlvmPackages = buildPackages.llvmPackages_6;
       llvmPackages = pkgs.llvmPackages_6;
@@ -117,9 +117,9 @@ in {
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.2.x.nix { };
       packageSetConfig = bootstrapPackageSet;
     };
-    ghc863Binary = callPackage ../development/haskell-modules {
-      buildHaskellPackages = bh.packages.ghc863Binary;
-      ghc = bh.compiler.ghc863Binary;
+    ghc865Binary = callPackage ../development/haskell-modules {
+      buildHaskellPackages = bh.packages.ghc865Binary;
+      ghc = bh.compiler.ghc865Binary;
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.6.x.nix { };
       packageSetConfig = bootstrapPackageSet;
     };
diff --git a/pkgs/top-level/make-tarball.nix b/pkgs/top-level/make-tarball.nix
index ff0b0568819..6bb243879e9 100644
--- a/pkgs/top-level/make-tarball.nix
+++ b/pkgs/top-level/make-tarball.nix
@@ -19,10 +19,10 @@ releaseTools.sourceTarball {
   version = pkgs.lib.fileContents ../../.version;
   versionSuffix = "pre${
     if nixpkgs ? lastModified
-    then builtins.substring 0 8 nixpkgs.lastModified
+    then builtins.substring 0 8 (nixpkgs.lastModifiedDate or nixpkgs.lastModified)
     else toString nixpkgs.revCount}.${nixpkgs.shortRev or "dirty"}";
 
-  buildInputs = [ nix.out jq lib-tests ];
+  buildInputs = [ nix.out jq lib-tests pkgs.brotli ];
 
   configurePhase = ''
     eval "$preConfigure"
@@ -38,6 +38,8 @@ releaseTools.sourceTarball {
   doCheck = true;
 
   checkPhase = ''
+    set -o pipefail
+
     export NIX_DB_DIR=$TMPDIR
     export NIX_STATE_DIR=$TMPDIR
     export NIX_PATH=nixpkgs=$TMPDIR/barf.nix
@@ -83,12 +85,10 @@ releaseTools.sourceTarball {
             --show-trace --argstr system "$platform" \
             -qa --drv-path --system-filter \* --system --meta --xml \
             "''${opts[@]}" > /dev/null
-        stopNest
     done
 
     header "checking eval-release.nix"
     nix-instantiate --eval --strict --show-trace ./maintainers/scripts/eval-release.nix > /dev/null
-    stopNest
 
     header "checking find-tarballs.nix"
     nix-instantiate --readonly-mode --eval --strict --show-trace --json \
@@ -100,7 +100,16 @@ releaseTools.sourceTarball {
       echo "suspiciously low number of URLs"
       exit 1
     fi
-    stopNest
+
+    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
+    echo -n '}' >> tmp
+    packages=$out/packages.json.br
+    < tmp sed "s|$(pwd)/||g" | jq -c | brotli -9 > $packages
+
+    echo "file json-br $packages" >> $out/nix-support/hydra-build-products
   '';
 
   distPhase = ''
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 7e12a3db3f7..fd863e428af 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -587,6 +587,8 @@ let
 
     ocaml_gettext = callPackage ../development/ocaml-modules/ocaml-gettext { };
 
+    gettext-stub = callPackage ../development/ocaml-modules/ocaml-gettext/stub.nix { };
+
     ocamlgraph = callPackage ../development/ocaml-modules/ocamlgraph { };
 
     ocaml_http = callPackage ../development/ocaml-modules/http { };
@@ -615,6 +617,8 @@ let
 
     pgocaml_ppx = callPackage ../development/ocaml-modules/pgocaml/ppx.nix {};
 
+    ocaml-r = callPackage ../development/ocaml-modules/ocaml-r { };
+
     ocaml-sat-solvers = callPackage ../development/ocaml-modules/ocaml-sat-solvers { };
 
     ocamlscript = callPackage ../development/tools/ocaml/ocamlscript { };
@@ -1232,5 +1236,5 @@ in let inherit (pkgs) callPackage; in rec
 
   ocamlPackages_latest = ocamlPackages_4_10;
 
-  ocamlPackages = ocamlPackages_4_08;
+  ocamlPackages = ocamlPackages_4_09;
 }
diff --git a/pkgs/top-level/packages-config.nix b/pkgs/top-level/packages-config.nix
new file mode 100644
index 00000000000..8ce855780cf
--- /dev/null
+++ b/pkgs/top-level/packages-config.nix
@@ -0,0 +1,13 @@
+# Used in the generation of package search database.
+{
+  # Ensures no aliases are in the results.
+  allowAliases = false;
+
+  # Enable recursion into attribute sets that nix-env normally doesn't look into
+  # so that we can get a more complete picture of the available packages for the
+  # purposes of the index.
+  packageOverrides = super: {
+    haskellPackages = super.recurseIntoAttrs super.haskellPackages;
+    rPackages = super.recurseIntoAttrs super.rPackages;
+  };
+}
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 6d2e98255fb..941ec10d9ee 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3239,6 +3239,19 @@ let
     };
   };
 
+  ConvertUU = buildPerlPackage rec {
+    pname = "Convert-UU";
+    version = "0.5201";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/A/AN/ANDK/${pname}-${version}.tar.gz";
+      sha256 = "92329ce1c32b5952c48e1223db018c8c58ceafef03bfa0fd4817cd89c355a3bd";
+    };
+    meta = {
+      description = "Perl module for uuencode and uudecode";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   constantboolean = buildPerlModule {
     pname = "constant-boolean";
     version = "0.02";
@@ -3344,9 +3357,9 @@ let
     };
     patches = [
       (fetchpatch {
-        url = "https://patch-diff.githubusercontent.com/raw/andk/cpanpm/pull/133.diff";
+        url = "https://github.com/andk/cpanpm/commit/10da44f1757aff6971e3bc4ed38ab115e738c740.diff";
         name = "patch-YAML-modules-default-for-LoadBlessed-was-changed-to-false";
-        sha256 = "0i8648cwshzzd0b34gyfn68s1vs85d8336ggk2kl99awah1ydsfr";
+        sha256 = "0sr2nxkr1cwavpvpxsqcsryfd5fjv4fkxfihd03jzavv5awj79hp";
       })
     ];
     propagatedBuildInputs = [ ArchiveZip CPANChecksums CPANPerlReleases Expect FileHomeDir LWP LogLog4perl ModuleBuild TermReadKey YAML YAMLLibYAML YAMLSyck ];
@@ -4998,6 +5011,16 @@ let
     };
   };
 
+  DBDCSV = buildPerlPackage {
+    pname = "DBD-CSV";
+    version = "0.54";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/H/HM/HMBRAND/DBD-CSV-0.54.tgz;
+      sha256 = "bc597cd7195e5a023e2b3413d8dc614602b9b3f279f436027881796464d4f0be";
+    };
+    propagatedBuildInputs = [ DBI TextCSV_XS SQLStatement ModuleRuntime ParamsUtil ];
+  };
+
   DBDMock = buildPerlModule {
     pname = "DBD-Mock";
     version = "1.55";
@@ -6689,6 +6712,20 @@ let
     };
   };
 
+  ExtUtilsF77 = buildPerlPackage rec {
+    pname = "ExtUtils-F77";
+    version = "1.23";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/K/KG/KGB/${pname}-${version}.tar.gz";
+      sha256 = "634715969c1650be815b3f11c151444e8793ebd6b6d92ce8654d56d6f893a6a9";
+    };
+    buildInputs = [ FileWhich pkgs.gfortran ];
+    meta = {
+      description = "A simple interface to F77 libs";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   ExtUtilsHelpers = buildPerlPackage {
     pname = "ExtUtils-Helpers";
     version = "0.026";
@@ -11137,6 +11174,15 @@ let
     };
   };
 
+  MathBaseConvert = buildPerlPackage {
+    pname = "Math-Base-Convert";
+    version = "0.11";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/M/MI/MIKER/Math-Base-Convert-0.11.tar.gz;
+      sha256 = "8c0971355f24c93b79e77ad54a4570090a1a598fcb9b86f5c17eba42f38b40e0";
+    };
+  };
+
   MathLibm = buildPerlPackage {
     pname = "Math-Libm";
     version = "1.00";
@@ -11802,6 +11848,21 @@ let
     };
   };
 
+  ModuleCompile = buildPerlPackage rec {
+    pname = "Module-Compile";
+    version = "0.37";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/I/IN/INGY/${pname}-${version}.tar.gz";
+      sha256 = "18e6c4c4d2d5e39c21dde60a64424eed547e1d234ecc73a35278ea08161a8078";
+    };
+    propagatedBuildInputs = [ CaptureTiny DigestSHA1 ];
+    meta = {
+      homepage = "https://github.com/ingydotnet/module-compile-pm";
+      description = "Perl Module Compilation";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   ModuleCPANTSAnalyse = buildPerlPackage {
      pname = "Module-CPANTS-Analyse";
      version = "1.01";
@@ -12270,6 +12331,23 @@ let
     };
   };
 
+  MojoPg = buildPerlPackage {
+    pname = "Mojo-Pg";
+    version = "4.18";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/S/SR/SRI/Mojo-Pg-4.18.tar.gz";
+      sha256 = "31baacc0d6693886b3580e4b3ec6f2d053be8578809c9c1750753576bd1bda3c";
+    };
+    buildInputs = [ TestDeep ];
+    propagatedBuildInputs = [ DBDPg Mojolicious SQLAbstract ];
+    meta = {
+      homepage = "https://github.com/mojolicious/mojo-pg";
+      description = "Mojolicious <3 PostgreSQL";
+      license = stdenv.lib.licenses.artistic2;
+      maintainers = [ maintainers.sgo ];
+    };
+  };
+
   MonitoringPlugin = buildPerlPackage {
     pname = "Monitoring-Plugin";
     version = "0.40";
@@ -14586,6 +14664,19 @@ let
     };
   };
 
+  ParseYapp = buildPerlPackage {
+    pname = "Parser-Yapp";
+    version = "1.21";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/W/WB/WBRASWELL/Parse-Yapp-1.21.tar.gz;
+      sha256 = "1r8kbyk0qd4ficmabj753kjpq0ib0csk01169w7jxflg62cfj41q";
+    };
+    meta = {
+      description = "Perl extension for generating and using LALR parsers";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   PathClass = buildPerlModule {
     pname = "Path-Class";
     version = "0.37";
@@ -16590,6 +16681,17 @@ let
     propagatedBuildInputs = [ ClassAccessor ListMoreUtils RegexpCommon SQLTokenizer ];
   };
 
+  SQLStatement = buildPerlPackage {
+    pname = "SQL-Statement";
+    version = "1.412";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RE/REHSACK/SQL-Statement-1.412.tar.gz;
+      sha256 = "65c870883379c11b53f19ead10aaac241ccc86a90bbab77f6376fe750720e5c8";
+    };
+    buildInputs = [ TestDeep ];
+    propagatedBuildInputs = [ Clone ModuleRuntime ParamsUtil TextSoundex MathBaseConvert ];
+  };
+
   SQLTokenizer = buildPerlPackage {
     pname = "SQL-Tokenizer";
     version = "0.24";
@@ -16662,7 +16764,12 @@ let
       sha256 = "1y1kn4929k299fbf6sw9lxcsdlq9fvq777p6yrzk591rr9xhkx8h";
     };
     buildInputs = [ LWP ModuleBuildTiny TestRequires TestTCP ];
+    nativeBuildInputs = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang;
     propagatedBuildInputs = [ DataDump HTTPParserXS NetServer Plack ];
+    postInstall = stdenv.lib.optionalString stdenv.isDarwin ''
+      shortenPerlShebang $out/bin/starman
+    '';
+
     doCheck = false; # binds to various TCP ports
     meta = {
       homepage = https://github.com/miyagawa/Starman;
@@ -17328,11 +17435,11 @@ let
 
   SysVirt = buildPerlModule rec {
     pname = "Sys-Virt";
-    version = "5.4.0";
+    version = "6.2.0";
     src = assert version == pkgs.libvirt.version; pkgs.fetchgit {
       url = git://libvirt.org/libvirt-perl.git;
-      rev = "v${version}";
-      sha256 = "0csg10mydcif2l0qf16nlphq6ih5378nk6dk1vznf5bspws2ch7a";
+      rev = "799b243230163ff4f8dde6293da8a0e31e7c900e";
+      sha256 = "1k38d1ycx3ibgfzcr1iym7cvpwvygh6a2i5548m4qjb47vfi12rz";
     };
     nativeBuildInputs = [ pkgs.pkgconfig ];
     buildInputs = [ pkgs.libvirt CPANChanges TestPod TestPodCoverage XMLXPath ];
diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix
index cc830fa3498..6bae48b54c3 100644
--- a/pkgs/top-level/php-packages.nix
+++ b/pkgs/top-level/php-packages.nix
@@ -1,704 +1,731 @@
-{ stdenv, lib, pkgs, fetchgit, php, autoconf, pkgconfig, re2c
-, bzip2, curl, libxml2, openssl, gmp5, icu, oniguruma, libsodium, html-tidy
-, libzip, zlib, pcre, pcre2, libxslt, aspell, openldap, cyrus_sasl, uwimap
-, pam, libiconv, enchant1, libXpm, gd, libwebp, libjpeg, libpng, freetype
-, libffi, freetds, postgresql, sqlite, recode, net-snmp, unixODBC }:
+{ stdenv, lib, pkgs, fetchgit, php, phpWithExtensions, autoconf, pkgconfig, re2c
+, gettext, bzip2, curl, libxml2, openssl, gmp, icu, oniguruma, libsodium
+, html-tidy, libzip, zlib, pcre, pcre2, libxslt, aspell, openldap, cyrus_sasl
+, uwimap, pam, libiconv, enchant1, libXpm, gd, libwebp, libjpeg, libpng
+, freetype, libffi, freetds, postgresql, sqlite, net-snmp, unixODBC, libedit
+, readline, rsync
+}:
 
 let
-  self = with self; {
-    buildPecl = import ../build-support/build-pecl.nix {
-      inherit php;
-      inherit (pkgs) stdenv autoreconfHook fetchurl re2c;
-    };
+  buildPecl = import ../build-support/build-pecl.nix {
+    inherit php lib;
+    inherit (pkgs) stdenv autoreconfHook fetchurl re2c;
+  };
 
-    # Wrap mkDerivation to prepend pname with "php-" to make names consistent
-    # with how buildPecl does it and make the file easier to overview.
-    mkDerivation = { pname, ... }@args: pkgs.stdenv.mkDerivation (args // {
-      pname = "php-${pname}";
-    });
+  # Wrap mkDerivation to prepend pname with "php-" to make names consistent
+  # with how buildPecl does it and make the file easier to overview.
+  mkDerivation = { pname, ... }@args: pkgs.stdenv.mkDerivation (args // {
+    pname = "php-${pname}";
+  });
 
   isPhp73 = pkgs.lib.versionAtLeast php.version "7.3";
   isPhp74 = pkgs.lib.versionAtLeast php.version "7.4";
 
-  apcu = buildPecl {
-    version = "5.1.18";
-    pname = "apcu";
-
-    sha256 = "0ayykd4hfvdzk7qnr5k6yq5scwf6rb2i05xscfv76q5dmkkynvfl";
-
-    buildInputs = [ (if isPhp73 then pkgs.pcre2 else pkgs.pcre) ];
-    doCheck = true;
-    checkTarget = "test";
-    checkFlagsArray = ["REPORT_EXIT_STATUS=1" "NO_INTERACTION=1"];
-    makeFlags = [ "phpincludedir=$(dev)/include" ];
-    outputs = [ "out" "dev" ];
-  };
-
-  apcu_bc = buildPecl {
-    version = "1.0.5";
-    pname = "apcu_bc";
+  pcre' = if (lib.versionAtLeast php.version "7.3") then pcre2 else pcre;
+in
+{
+  inherit buildPecl;
 
-    sha256 = "0ma00syhk2ps9k9p02jz7rii6x3i2p986il23703zz5npd6y9n20";
+  # This is a set of interactive tools based on PHP.
+  packages = {
+    box = mkDerivation rec {
+      version = "2.7.5";
+      pname = "box";
 
-    buildInputs = [ apcu (if isPhp73 then pkgs.pcre2 else pkgs.pcre) ];
-  };
+      src = pkgs.fetchurl {
+        url = "https://github.com/box-project/box2/releases/download/${version}/box-${version}.phar";
+        sha256 = "1zmxdadrv0i2l8cz7xb38gnfmfyljpsaz2nnkjzqzksdmncbgd18";
+      };
 
-  ast = buildPecl {
-    version = "1.0.5";
-    pname = "ast";
-
-    sha256 = "16c5isldm4csjbcvz1qk2mmrhgvh24sxsp6w6f5a37xpa3vciawp";
-  };
+      phases = [ "installPhase" ];
+      buildInputs = [ pkgs.makeWrapper ];
 
-  box = mkDerivation rec {
-    version = "2.7.5";
-    pname = "box";
-
-    src = pkgs.fetchurl {
-      url = "https://github.com/box-project/box2/releases/download/${version}/box-${version}.phar";
-      sha256 = "1zmxdadrv0i2l8cz7xb38gnfmfyljpsaz2nnkjzqzksdmncbgd18";
-    };
-
-    phases = [ "installPhase" ];
-    buildInputs = [ pkgs.makeWrapper ];
-
-    installPhase = ''
-      mkdir -p $out/bin
-      install -D $src $out/libexec/box/box.phar
-      makeWrapper ${php}/bin/php $out/bin/box \
-        --add-flags "-d phar.readonly=0 $out/libexec/box/box.phar"
-    '';
+      installPhase = ''
+        mkdir -p $out/bin
+        install -D $src $out/libexec/box/box.phar
+        makeWrapper ${phpWithExtensions}/bin/php $out/bin/box \
+          --add-flags "-d phar.readonly=0 $out/libexec/box/box.phar"
+      '';
 
-    meta = with pkgs.lib; {
-      description = "An application for building and managing Phars";
-      license = licenses.mit;
-      homepage = https://box-project.github.io/box2/;
-      maintainers = with maintainers; [ jtojnar ];
+      meta = with pkgs.lib; {
+        description = "An application for building and managing Phars";
+        license = licenses.mit;
+        homepage = https://box-project.github.io/box2/;
+        maintainers = with maintainers; [ jtojnar ];
+      };
     };
-  };
 
-  composer = mkDerivation rec {
-    version = "1.9.3";
-    pname = "composer";
+    composer = mkDerivation rec {
+      version = "1.9.3";
+      pname = "composer";
 
-    src = pkgs.fetchurl {
-      url = "https://getcomposer.org/download/${version}/composer.phar";
-      sha256 = "VRZVwvyB9BBlCPQrvEsk6r00sCKxO8Hn2WQr9IPQp9Q=";
-    };
+      src = pkgs.fetchurl {
+        url = "https://getcomposer.org/download/${version}/composer.phar";
+        sha256 = "VRZVwvyB9BBlCPQrvEsk6r00sCKxO8Hn2WQr9IPQp9Q=";
+      };
 
-    dontUnpack = true;
+      dontUnpack = true;
 
-    nativeBuildInputs = [ pkgs.makeWrapper ];
+      nativeBuildInputs = [ pkgs.makeWrapper ];
 
-    installPhase = ''
-      mkdir -p $out/bin
-      install -D $src $out/libexec/composer/composer.phar
-      makeWrapper ${php}/bin/php $out/bin/composer \
-        --add-flags "$out/libexec/composer/composer.phar" \
-        --prefix PATH : ${pkgs.lib.makeBinPath [ pkgs.unzip ]}
-    '';
+      installPhase = ''
+        mkdir -p $out/bin
+        install -D $src $out/libexec/composer/composer.phar
+        makeWrapper ${phpWithExtensions}/bin/php $out/bin/composer \
+          --add-flags "$out/libexec/composer/composer.phar" \
+          --prefix PATH : ${pkgs.lib.makeBinPath [ pkgs.unzip ]}
+      '';
 
-    meta = with pkgs.lib; {
-      description = "Dependency Manager for PHP";
-      license = licenses.mit;
-      homepage = https://getcomposer.org/;
-      maintainers = with maintainers; [ globin offline ];
+      meta = with pkgs.lib; {
+        description = "Dependency Manager for PHP";
+        license = licenses.mit;
+        homepage = https://getcomposer.org/;
+        maintainers = with maintainers; [ globin offline ];
+      };
     };
-  };
-
-  couchbase = buildPecl rec {
-    version = "2.6.1";
-    pname = "couchbase";
-
-    buildInputs = [ pkgs.libcouchbase pkgs.zlib igbinary pcs ];
-
-    src = pkgs.fetchFromGitHub {
-      owner = "couchbase";
-      repo = "php-couchbase";
-      rev = "v${version}";
-      sha256 = "0jdzgcvab1vpxai23brmmvizjjq2d2dik9aklz6bzspfb512qjd6";
-    };
-
-    configureFlags = [ "--with-couchbase" ];
-
-    patches = [
-      (pkgs.writeText "php-couchbase.patch" ''
-        --- a/config.m4
-        +++ b/config.m4
-        @@ -9,7 +9,7 @@ if test "$PHP_COUCHBASE" != "no"; then
-             LIBCOUCHBASE_DIR=$PHP_COUCHBASE
-           else
-             AC_MSG_CHECKING(for libcouchbase in default path)
-        -    for i in /usr/local /usr; do
-        +    for i in ${pkgs.libcouchbase}; do
-               if test -r $i/include/libcouchbase/couchbase.h; then
-                 LIBCOUCHBASE_DIR=$i
-                 AC_MSG_RESULT(found in $i)
-        @@ -154,6 +154,8 @@ COUCHBASE_FILES=" \
-             igbinary_inc_path="$phpincludedir"
-           elif test -f "$phpincludedir/ext/igbinary/igbinary.h"; then
-             igbinary_inc_path="$phpincludedir"
-        +  elif test -f "${igbinary.dev}/include/ext/igbinary/igbinary.h"; then
-        +    igbinary_inc_path="${igbinary.dev}/include"
-           fi
-           if test "$igbinary_inc_path" = ""; then
-             AC_MSG_WARN([Cannot find igbinary.h])
-      '')
-    ];
 
-    meta.broken = isPhp74; # Build error
-  };
+    php-cs-fixer = mkDerivation rec {
+      version = "2.16.1";
+      pname = "php-cs-fixer";
 
-  event = buildPecl {
-    version = "2.5.3";
-    pname = "event";
+      src = pkgs.fetchurl {
+        url = "https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v${version}/php-cs-fixer.phar";
+        sha256 = "1dq1nhy666zg6d4fkfsjwhj1vwh1ncap2c9ljplxv98a9mm6fk68";
+      };
 
-    sha256 = "12liry5ldvgwp1v1a6zgfq8w6iyyxmsdj4c71bp157nnf58cb8hb";
+      phases = [ "installPhase" ];
+      buildInputs = [ pkgs.makeWrapper ];
 
-    configureFlags = [
-      "--with-event-libevent-dir=${pkgs.libevent.dev}"
-      "--with-event-core"
-      "--with-event-extra"
-      "--with-event-pthreads"
-    ];
-    nativeBuildInputs = [ pkgs.pkgconfig ];
-    buildInputs = with pkgs; [ openssl libevent ];
-
-    meta = with pkgs.lib; {
-      description = ''
-        This is an extension to efficiently schedule I/O, time and signal based
-        events using the best I/O notification mechanism available for specific platform.
+      installPhase = ''
+        mkdir -p $out/bin
+        install -D $src $out/libexec/php-cs-fixer/php-cs-fixer.phar
+        makeWrapper ${php}/bin/php $out/bin/php-cs-fixer \
+          --add-flags "$out/libexec/php-cs-fixer/php-cs-fixer.phar"
       '';
-      license = licenses.php301;
-      homepage = "https://bitbucket.org/osmanov/pecl-event/";
-    };
-  };
-
-  igbinary = buildPecl {
-    version = "3.0.1";
-    pname = "igbinary";
 
-    sha256 = "1w8jmf1qpggdvq0ndfi86n7i7cqgh1s8q6hys2lijvi37rzn0nar";
+      meta = with pkgs.lib; {
+        description = "A tool to automatically fix PHP coding standards issues";
+        license = licenses.mit;
+        homepage = http://cs.sensiolabs.org/;
+        maintainers = with maintainers; [ jtojnar ];
+      };
+    };
 
-    configureFlags = [ "--enable-igbinary" ];
-    makeFlags = [ "phpincludedir=$(dev)/include" ];
-    outputs = [ "out" "dev" ];
-  };
+    php-parallel-lint = mkDerivation rec {
+      version = "1.0.0";
+      pname = "php-parallel-lint";
+
+      src = pkgs.fetchFromGitHub {
+        owner = "JakubOnderka";
+        repo = "PHP-Parallel-Lint";
+        rev = "v${version}";
+        sha256 = "16nv8yyk2z3l213dg067l6di4pigg5rd8yswr5xgd18jwbys2vnw";
+      };
+
+      buildInputs = [
+        pkgs.makeWrapper
+        php.packages.composer
+        php.packages.box
+      ];
+
+      buildPhase = ''
+        composer dump-autoload
+        box build
+      '';
 
-  imagick = buildPecl {
-    version = "3.4.4";
-    pname = "imagick";
+      installPhase = ''
+        mkdir -p $out/bin
+        install -D parallel-lint.phar $out/libexec/php-parallel-lint/php-parallel-lint.phar
+        makeWrapper ${php}/bin/php $out/bin/php-parallel-lint \
+          --add-flags "$out/libexec/php-parallel-lint/php-parallel-lint.phar"
+      '';
 
-    sha256 = "0xvhaqny1v796ywx83w7jyjyd0nrxkxf34w9zi8qc8aw8qbammcd";
+      meta = with pkgs.lib; {
+        description = "This tool check syntax of PHP files faster than serial check with fancier output";
+        license = licenses.bsd2;
+        homepage = https://github.com/JakubOnderka/PHP-Parallel-Lint;
+        maintainers = with maintainers; [ jtojnar ];
+      };
+    };
 
-    configureFlags = [ "--with-imagick=${pkgs.imagemagick.dev}" ];
-    nativeBuildInputs = [ pkgs.pkgconfig ];
-    buildInputs = [ (if isPhp73 then pkgs.pcre2 else pkgs.pcre) ];
-  };
+    phpcbf = mkDerivation rec {
+      version = "3.5.3";
+      pname = "phpcbf";
 
-  mailparse = buildPecl {
-    version = "3.0.3";
-    pname = "mailparse";
+      src = pkgs.fetchurl {
+        url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcbf.phar";
+        sha256 = "1mrsf9p6p64pyqyylnlxb2b7cirdfccch83g7yhfnka3znffq86v";
+      };
 
-    sha256 = "00nk14jbdbln93mx3ag691avc11ff94hkadrcv5pn51c6ihsxbmz";
-  };
+      phases = [ "installPhase" ];
+      nativeBuildInputs = [ pkgs.makeWrapper ];
 
-  maxminddb = buildPecl rec {
-    pname = "maxminddb";
-    version = "1.6.0";
+      installPhase = ''
+        mkdir -p $out/bin
+        install -D $src $out/libexec/phpcbf/phpcbf.phar
+        makeWrapper ${php}/bin/php $out/bin/phpcbf \
+          --add-flags "$out/libexec/phpcbf/phpcbf.phar"
+      '';
 
-    src = pkgs.fetchFromGitHub {
-      owner = "maxmind";
-      repo = "MaxMind-DB-Reader-php";
-      rev = "v${version}";
-      sha256 = "0sa943ij9pgz55aik93lllb8lh063bvr66ibn77p3y3p41vdiabz";
+      meta = with pkgs.lib; {
+        description = "PHP coding standard beautifier and fixer";
+        license = licenses.bsd3;
+        homepage = https://squizlabs.github.io/PHP_CodeSniffer/;
+        maintainers = with maintainers; [ cmcdragonkai etu ];
+      };
     };
 
-    buildInputs = [ pkgs.libmaxminddb ];
-    sourceRoot = "source/ext";
+    phpcs = mkDerivation rec {
+      version = "3.5.3";
+      pname = "phpcs";
 
-    meta = with pkgs.lib; {
-      description = "C extension that is a drop-in replacement for MaxMind\\Db\\Reader";
-      license = with licenses; [ asl20 ];
-      maintainers = with maintainers; [ ajs124 das_j ];
-    };
-  };
+      src = pkgs.fetchurl {
+        url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcs.phar";
+        sha256 = "0y4nhsifj4pdmf5g1nnm4951yjgiqswyz7wmjxx6kqiqc7chlkml";
+      };
 
-  memcached = buildPecl rec {
-    version = "3.1.5";
-    pname = "memcached";
+      phases = [ "installPhase" ];
+      buildInputs = [ pkgs.makeWrapper ];
 
-    src = fetchgit {
-      url = "https://github.com/php-memcached-dev/php-memcached";
-      rev = "v${version}";
-      sha256 = "01mbh2m3kfbdvih3c8g3g9h4vdd80r0i9g2z8b3lx3mi8mmcj380";
-    };
+      installPhase = ''
+        mkdir -p $out/bin
+        install -D $src $out/libexec/phpcs/phpcs.phar
+        makeWrapper ${php}/bin/php $out/bin/phpcs \
+          --add-flags "$out/libexec/phpcs/phpcs.phar"
+      '';
 
-    configureFlags = [
-      "--with-zlib-dir=${pkgs.zlib.dev}"
-      "--with-libmemcached-dir=${pkgs.libmemcached}"
-    ];
+      meta = with pkgs.lib; {
+        description = "PHP coding standard tool";
+        license = licenses.bsd3;
+        homepage = https://squizlabs.github.io/PHP_CodeSniffer/;
+        maintainers = with maintainers; [ javaguirre etu ];
+      };
+    };
 
-    nativeBuildInputs = [ pkgs.pkgconfig ];
-    buildInputs = with pkgs; [ cyrus_sasl zlib ];
-  };
+    phpstan = mkDerivation rec {
+      version = "0.12.14";
+      pname = "phpstan";
 
-  mongodb = buildPecl {
-    pname = "mongodb";
-    version = "1.6.1";
-
-    sha256 = "1j1w4n33347j9kwvxwsrix3gvjbiqcn1s5v59pp64s536cci8q0m";
-
-    nativeBuildInputs = [ pkgs.pkgconfig ];
-    buildInputs = with pkgs; [
-      cyrus_sasl
-      icu
-      openssl
-      snappy
-      zlib
-      (if isPhp73 then pcre2 else pcre)
-    ] ++ lib.optional (pkgs.stdenv.isDarwin) pkgs.darwin.apple_sdk.frameworks.Security;
-  };
+      src = pkgs.fetchurl {
+        url = "https://github.com/phpstan/phpstan/releases/download/${version}/phpstan.phar";
+        sha256 = "JAq1/+bVhTgKRR7oFusqZ/yBOYewaOM38ZoiCjirsTg=";
+      };
 
-  oci8 = buildPecl {
-    version = "2.2.0";
-    pname = "oci8";
+      phases = [ "installPhase" ];
+      nativeBuildInputs = [ pkgs.makeWrapper ];
 
-    sha256 = "0jhivxj1nkkza4h23z33y7xhffii60d7dr51h1czjk10qywl7pyd";
-    buildInputs = [ pkgs.oracle-instantclient ];
-    configureFlags = [ "--with-oci8=shared,instantclient,${pkgs.oracle-instantclient.lib}/lib" ];
+      installPhase = ''
+        mkdir -p $out/bin
+        install -D $src $out/libexec/phpstan/phpstan.phar
+        makeWrapper ${php}/bin/php $out/bin/phpstan \
+          --add-flags "$out/libexec/phpstan/phpstan.phar"
+      '';
 
-    postPatch = ''
-      sed -i -e 's|OCISDKMANINC=`.*$|OCISDKMANINC="${pkgs.oracle-instantclient.dev}/include"|' config.m4
-    '';
-  };
+      meta = with pkgs.lib; {
+        description = "PHP Static Analysis Tool";
+        longDescription = ''
+        PHPStan focuses on finding errors in your code without actually running
+        it. It catches whole classes of bugs even before you write tests for the
+        code. It moves PHP closer to compiled languages in the sense that the
+        correctness of each line of the code can be checked before you run the
+        actual line.
+      '';
+        license = licenses.mit;
+        homepage = "https://github.com/phpstan/phpstan";
+        maintainers = with maintainers; [ etu ];
+      };
+    };
 
-  pcov = buildPecl {
-    version = "1.0.6";
-    pname = "pcov";
+    psalm = mkDerivation rec {
+      version = "3.9.3";
+      pname = "psalm";
 
-    sha256 = "1psfwscrc025z8mziq69pcx60k4fbkqa5g2ia8lplb94mmarj0v1";
+      src = pkgs.fetchurl {
+        url = "https://github.com/vimeo/psalm/releases/download/${version}/psalm.phar";
+        sha256 = "KHm2n06y/yxN5B2rCVxT5ja7HxkyxAMsjZ5HLb3xr4M=";
+      };
 
-    buildInputs = [ (if isPhp73 then pkgs.pcre2 else pkgs.pcre) ];
-  };
+      phases = [ "installPhase" ];
+      nativeBuildInputs = [ pkgs.makeWrapper ];
 
-  pcs = buildPecl {
-    version = "1.3.3";
-    pname = "pcs";
+      installPhase = ''
+        mkdir -p $out/bin
+        install -D $src $out/libexec/psalm/psalm.phar
+        makeWrapper ${php}/bin/php $out/bin/psalm \
+          --add-flags "$out/libexec/psalm/psalm.phar"
+      '';
 
-    sha256 = "0d4p1gpl8gkzdiv860qzxfz250ryf0wmjgyc8qcaaqgkdyh5jy5p";
+      meta = with pkgs.lib; {
+        description = "A static analysis tool for finding errors in PHP applications";
+        license = licenses.mit;
+        homepage = https://github.com/vimeo/psalm;
+      };
+    };
 
-    meta.broken = isPhp74; # Build error
-  };
+    psysh = mkDerivation rec {
+      version = "0.9.12";
+      pname = "psysh";
 
-  pdo_oci = buildPecl rec {
-    inherit (php) src version;
+      src = pkgs.fetchurl {
+        url = "https://github.com/bobthecow/psysh/releases/download/v${version}/psysh-v${version}.tar.gz";
+        sha256 = "0bzmc94li481xk81gv460ipq9zl03skbnq8m3rnw34i2c04hxczc";
+      };
 
-    pname = "pdo_oci";
-    sourceRoot = "php-${version}/ext/pdo_oci";
+      phases = [ "installPhase" ];
+      nativeBuildInputs = [ pkgs.makeWrapper ];
 
-    buildInputs = [ pkgs.oracle-instantclient ];
-    configureFlags = [ "--with-pdo-oci=instantclient,${pkgs.oracle-instantclient.lib}/lib" ];
+      installPhase = ''
+        mkdir -p $out/bin
+        tar -xzf $src -C $out/bin
+        chmod +x $out/bin/psysh
+        wrapProgram $out/bin/psysh
+      '';
 
-    postPatch = ''
-      sed -i -e 's|OCISDKMANINC=`.*$|OCISDKMANINC="${pkgs.oracle-instantclient.dev}/include"|' config.m4
-    '';
+      meta = with pkgs.lib; {
+        description = "PsySH is a runtime developer console, interactive debugger and REPL for PHP.";
+        license = licenses.mit;
+        homepage = https://psysh.org/;
+        maintainers = with maintainers; [ caugner ];
+      };
+    };
   };
 
-  pdo_sqlsrv = buildPecl {
-    version = "5.8.0";
-    pname = "pdo_sqlsrv";
 
-    sha256 = "0z4vbyd851b4jr6p69l2ylk91iihndsm2qjb429pxcv8g6dqzqll";
 
-    buildInputs = [ pkgs.unixODBC ] ++ pkgs.lib.optionals pkgs.stdenv.isDarwin [ pkgs.libiconv ];
-  };
+  # This is a set of PHP extensions meant to be used in php.buildEnv
+  # or php.withExtensions to extend the functionality of the PHP
+  # interpreter.
+  extensions = {
+    apcu = buildPecl {
+      version = "5.1.18";
+      pname = "apcu";
 
-  php-cs-fixer = mkDerivation rec {
-    version = "2.16.1";
-    pname = "php-cs-fixer";
+      sha256 = "0ayykd4hfvdzk7qnr5k6yq5scwf6rb2i05xscfv76q5dmkkynvfl";
 
-    src = pkgs.fetchurl {
-      url = "https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v${version}/php-cs-fixer.phar";
-      sha256 = "1dq1nhy666zg6d4fkfsjwhj1vwh1ncap2c9ljplxv98a9mm6fk68";
+      buildInputs = [ pcre' ];
+      doCheck = true;
+      checkTarget = "test";
+      checkFlagsArray = ["REPORT_EXIT_STATUS=1" "NO_INTERACTION=1"];
+      makeFlags = [ "phpincludedir=$(dev)/include" ];
+      outputs = [ "out" "dev" ];
     };
 
-    phases = [ "installPhase" ];
-    buildInputs = [ pkgs.makeWrapper ];
+    apcu_bc = buildPecl {
+      version = "1.0.5";
+      pname = "apcu_bc";
 
-    installPhase = ''
-      mkdir -p $out/bin
-      install -D $src $out/libexec/php-cs-fixer/php-cs-fixer.phar
-      makeWrapper ${php}/bin/php $out/bin/php-cs-fixer \
-        --add-flags "$out/libexec/php-cs-fixer/php-cs-fixer.phar"
-    '';
+      sha256 = "0ma00syhk2ps9k9p02jz7rii6x3i2p986il23703zz5npd6y9n20";
 
-    meta = with pkgs.lib; {
-      description = "A tool to automatically fix PHP coding standards issues";
-      license = licenses.mit;
-      homepage = http://cs.sensiolabs.org/;
-      maintainers = with maintainers; [ jtojnar ];
+      buildInputs = [
+        php.extensions.apcu
+        pcre'
+      ];
     };
-  };
 
-  php-parallel-lint = mkDerivation rec {
-    version = "1.0.0";
-    pname = "php-parallel-lint";
+    ast = buildPecl {
+      version = "1.0.5";
+      pname = "ast";
 
-    src = pkgs.fetchFromGitHub {
-      owner = "JakubOnderka";
-      repo = "PHP-Parallel-Lint";
-      rev = "v${version}";
-      sha256 = "16nv8yyk2z3l213dg067l6di4pigg5rd8yswr5xgd18jwbys2vnw";
+      sha256 = "16c5isldm4csjbcvz1qk2mmrhgvh24sxsp6w6f5a37xpa3vciawp";
     };
 
-    buildInputs = [ pkgs.makeWrapper composer box ];
+    couchbase = buildPecl rec {
+      version = "2.6.1";
+      pname = "couchbase";
+
+      buildInputs = [
+        pkgs.libcouchbase
+        pkgs.zlib
+        php.extensions.igbinary
+        php.extensions.pcs
+      ];
+
+      src = pkgs.fetchFromGitHub {
+        owner = "couchbase";
+        repo = "php-couchbase";
+        rev = "v${version}";
+        sha256 = "0jdzgcvab1vpxai23brmmvizjjq2d2dik9aklz6bzspfb512qjd6";
+      };
+
+      configureFlags = [ "--with-couchbase" ];
+      internalDeps = [ php.extensions.json ];
+      patches = [
+        (pkgs.writeText "php-couchbase.patch" ''
+          --- a/config.m4
+          +++ b/config.m4
+          @@ -9,7 +9,7 @@ if test "$PHP_COUCHBASE" != "no"; then
+               LIBCOUCHBASE_DIR=$PHP_COUCHBASE
+             else
+               AC_MSG_CHECKING(for libcouchbase in default path)
+          -    for i in /usr/local /usr; do
+          +    for i in ${pkgs.libcouchbase}; do
+                 if test -r $i/include/libcouchbase/couchbase.h; then
+                   LIBCOUCHBASE_DIR=$i
+                   AC_MSG_RESULT(found in $i)
+          @@ -154,6 +154,8 @@ COUCHBASE_FILES=" \
+               igbinary_inc_path="$phpincludedir"
+             elif test -f "$phpincludedir/ext/igbinary/igbinary.h"; then
+               igbinary_inc_path="$phpincludedir"
+          +  elif test -f "${php.extensions.igbinary.dev}/include/ext/igbinary/igbinary.h"; then
+          +    igbinary_inc_path="${php.extensions.igbinary.dev}/include"
+             fi
+             if test "$igbinary_inc_path" = ""; then
+               AC_MSG_WARN([Cannot find igbinary.h])
+        '')
+      ];
+
+      meta.broken = isPhp74; # Build error
+    };
 
-    buildPhase = ''
-      composer dump-autoload
-      box build
-    '';
+    event = buildPecl {
+      version = "2.5.3";
+      pname = "event";
 
-    installPhase = ''
-      mkdir -p $out/bin
-      install -D parallel-lint.phar $out/libexec/php-parallel-lint/php-parallel-lint.phar
-      makeWrapper ${php}/bin/php $out/bin/php-parallel-lint \
-        --add-flags "$out/libexec/php-parallel-lint/php-parallel-lint.phar"
-    '';
-
-    meta = with pkgs.lib; {
-      description = "This tool check syntax of PHP files faster than serial check with fancier output";
-      license = licenses.bsd2;
-      homepage = https://github.com/JakubOnderka/PHP-Parallel-Lint;
-      maintainers = with maintainers; [ jtojnar ];
-    };
-  };
+      sha256 = "12liry5ldvgwp1v1a6zgfq8w6iyyxmsdj4c71bp157nnf58cb8hb";
 
-  php_excel = buildPecl rec {
-    version = "1.0.2";
-    pname = "php_excel";
-    phpVersion = "php7";
+      configureFlags = [
+        "--with-event-libevent-dir=${pkgs.libevent.dev}"
+        "--with-event-core"
+        "--with-event-extra"
+        "--with-event-pthreads"
+      ];
 
-    buildInputs = [ pkgs.libxl ];
+      postPhpize = ''
+        substituteInPlace configure --replace 'as_fn_error $? "Couldn'\'''t find $phpincludedir/sockets/php_sockets.h. Please check if sockets extension installed" "$LINENO" 5' \
+                                              ':'
+      '';
 
-    src = pkgs.fetchurl {
-      url = "https://github.com/iliaal/php_excel/releases/download/Excel-1.0.2-PHP7/excel-${version}-${phpVersion}.tgz";
-      sha256 = "0dpvih9gpiyh1ml22zi7hi6kslkilzby00z1p8x248idylldzs2n";
+      nativeBuildInputs = [ pkgs.pkgconfig ];
+      buildInputs = with pkgs; [ openssl libevent ];
+      internalDeps = [ php.extensions.sockets ];
+
+      meta = with pkgs.lib; {
+        description = ''
+          This is an extension to efficiently schedule I/O, time and signal based
+          events using the best I/O notification mechanism available for specific platform.
+        '';
+        license = licenses.php301;
+        homepage = "https://bitbucket.org/osmanov/pecl-event/";
+      };
     };
 
-    configureFlags = [ "--with-excel" "--with-libxl-incdir=${pkgs.libxl}/include_c" "--with-libxl-libdir=${pkgs.libxl}/lib" ];
-    meta.broken = true;
-  };
+    igbinary = buildPecl {
+      version = "3.0.1";
+      pname = "igbinary";
 
-  phpcbf = mkDerivation rec {
-    version = "3.5.3";
-    pname = "phpcbf";
+      sha256 = "1w8jmf1qpggdvq0ndfi86n7i7cqgh1s8q6hys2lijvi37rzn0nar";
 
-    src = pkgs.fetchurl {
-      url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcbf.phar";
-      sha256 = "1mrsf9p6p64pyqyylnlxb2b7cirdfccch83g7yhfnka3znffq86v";
+      configureFlags = [ "--enable-igbinary" ];
+      makeFlags = [ "phpincludedir=$(dev)/include" ];
+      outputs = [ "out" "dev" ];
     };
 
-    phases = [ "installPhase" ];
-    nativeBuildInputs = [ pkgs.makeWrapper ];
+    imagick = buildPecl {
+      version = "3.4.4";
+      pname = "imagick";
 
-    installPhase = ''
-      mkdir -p $out/bin
-      install -D $src $out/libexec/phpcbf/phpcbf.phar
-      makeWrapper ${php}/bin/php $out/bin/phpcbf \
-        --add-flags "$out/libexec/phpcbf/phpcbf.phar"
-    '';
+      sha256 = "0xvhaqny1v796ywx83w7jyjyd0nrxkxf34w9zi8qc8aw8qbammcd";
 
-    meta = with pkgs.lib; {
-      description = "PHP coding standard beautifier and fixer";
-      license = licenses.bsd3;
-      homepage = https://squizlabs.github.io/PHP_CodeSniffer/;
-      maintainers = with maintainers; [ cmcdragonkai etu ];
+      configureFlags = [ "--with-imagick=${pkgs.imagemagick.dev}" ];
+      nativeBuildInputs = [ pkgs.pkgconfig ];
+      buildInputs = [ pcre' ];
     };
-  };
 
-  phpcs = mkDerivation rec {
-    version = "3.5.3";
-    pname = "phpcs";
+    mailparse = buildPecl {
+      version = "3.0.3";
+      pname = "mailparse";
+      sha256 = "00nk14jbdbln93mx3ag691avc11ff94hkadrcv5pn51c6ihsxbmz";
 
-    src = pkgs.fetchurl {
-      url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcs.phar";
-      sha256 = "0y4nhsifj4pdmf5g1nnm4951yjgiqswyz7wmjxx6kqiqc7chlkml";
+      internalDeps = [ php.extensions.mbstring ];
+      postConfigure = ''
+        echo "#define HAVE_MBSTRING 1" >> config.h
+      '';
     };
 
-    phases = [ "installPhase" ];
-    buildInputs = [ pkgs.makeWrapper ];
-
-    installPhase = ''
-      mkdir -p $out/bin
-      install -D $src $out/libexec/phpcs/phpcs.phar
-      makeWrapper ${php}/bin/php $out/bin/phpcs \
-        --add-flags "$out/libexec/phpcs/phpcs.phar"
-    '';
-
-    meta = with pkgs.lib; {
-      description = "PHP coding standard tool";
-      license = licenses.bsd3;
-      homepage = https://squizlabs.github.io/PHP_CodeSniffer/;
-      maintainers = with maintainers; [ javaguirre etu ];
+    maxminddb = buildPecl rec {
+      pname = "maxminddb";
+      version = "1.6.0";
+
+      src = pkgs.fetchFromGitHub {
+        owner = "maxmind";
+        repo = "MaxMind-DB-Reader-php";
+        rev = "v${version}";
+        sha256 = "0sa943ij9pgz55aik93lllb8lh063bvr66ibn77p3y3p41vdiabz";
+      };
+
+      buildInputs = [ pkgs.libmaxminddb ];
+      sourceRoot = "source/ext";
+
+      meta = with pkgs.lib; {
+        description = "C extension that is a drop-in replacement for MaxMind\\Db\\Reader";
+        license = with licenses; [ asl20 ];
+        maintainers = with maintainers; [ ajs124 das_j ];
+      };
     };
-  };
 
-  phpstan = mkDerivation rec {
-    version = "0.12.14";
-    pname = "phpstan";
+    memcached = buildPecl rec {
+      version = "3.1.5";
+      pname = "memcached";
+
+      src = fetchgit {
+        url = "https://github.com/php-memcached-dev/php-memcached";
+        rev = "v${version}";
+        sha256 = "01mbh2m3kfbdvih3c8g3g9h4vdd80r0i9g2z8b3lx3mi8mmcj380";
+      };
+
+      internalDeps = [
+        php.extensions.session
+      ] ++ lib.optionals (lib.versionOlder php.version "7.4") [
+        php.extensions.hash
+      ];
+
+      configureFlags = [
+        "--with-zlib-dir=${pkgs.zlib.dev}"
+        "--with-libmemcached-dir=${pkgs.libmemcached}"
+      ];
+
+      nativeBuildInputs = [ pkgs.pkgconfig ];
+      buildInputs = with pkgs; [ cyrus_sasl zlib ];
+    };
 
-    src = pkgs.fetchurl {
-      url = "https://github.com/phpstan/phpstan/releases/download/${version}/phpstan.phar";
-      sha256 = "JAq1/+bVhTgKRR7oFusqZ/yBOYewaOM38ZoiCjirsTg=";
+    mongodb = buildPecl {
+      pname = "mongodb";
+      version = "1.6.1";
+
+      sha256 = "1j1w4n33347j9kwvxwsrix3gvjbiqcn1s5v59pp64s536cci8q0m";
+
+      nativeBuildInputs = [ pkgs.pkgconfig ];
+      buildInputs = with pkgs; [
+        cyrus_sasl
+        icu
+        openssl
+        snappy
+        zlib
+        pcre'
+      ] ++ lib.optional (pkgs.stdenv.isDarwin) pkgs.darwin.apple_sdk.frameworks.Security;
     };
 
-    phases = [ "installPhase" ];
-    nativeBuildInputs = [ pkgs.makeWrapper ];
+    oci8 = buildPecl {
+      version = "2.2.0";
+      pname = "oci8";
 
-    installPhase = ''
-      mkdir -p $out/bin
-      install -D $src $out/libexec/phpstan/phpstan.phar
-      makeWrapper ${php}/bin/php $out/bin/phpstan \
-        --add-flags "$out/libexec/phpstan/phpstan.phar"
-    '';
+      sha256 = "0jhivxj1nkkza4h23z33y7xhffii60d7dr51h1czjk10qywl7pyd";
+      buildInputs = [ pkgs.oracle-instantclient ];
+      configureFlags = [ "--with-oci8=shared,instantclient,${pkgs.oracle-instantclient.lib}/lib" ];
 
-    meta = with pkgs.lib; {
-      description = "PHP Static Analysis Tool";
-      longDescription = ''
-        PHPStan focuses on finding errors in your code without actually running
-        it. It catches whole classes of bugs even before you write tests for the
-        code. It moves PHP closer to compiled languages in the sense that the
-        correctness of each line of the code can be checked before you run the
-        actual line.
+      postPatch = ''
+        sed -i -e 's|OCISDKMANINC=`.*$|OCISDKMANINC="${pkgs.oracle-instantclient.dev}/include"|' config.m4
       '';
-      license = licenses.mit;
-      homepage = "https://github.com/phpstan/phpstan";
-      maintainers = with maintainers; [ etu ];
     };
-  };
 
-  pinba = if isPhp73 then pinba73 else pinba7;
+    pcov = buildPecl {
+      version = "1.0.6";
+      pname = "pcov";
 
-  pinba7 = assert !isPhp73; buildPecl {
-    version = "1.1.1";
-    pname = "pinba";
+      sha256 = "1psfwscrc025z8mziq69pcx60k4fbkqa5g2ia8lplb94mmarj0v1";
 
-    src = pkgs.fetchFromGitHub {
-      owner = "tony2001";
-      repo = "pinba_extension";
-      rev = "RELEASE_1_1_1";
-      sha256 = "1kdp7vav0y315695vhm3xifgsh6h6y6pny70xw3iai461n58khj5";
+      buildInputs = [ pcre' ];
     };
 
-    meta = with pkgs.lib; {
-      description = "PHP extension for Pinba";
-      longDescription = ''
-        Pinba is a MySQL storage engine that acts as a realtime monitoring and
-        statistics server for PHP using MySQL as a read-only interface.
-      '';
-      homepage = "http://pinba.org/";
-    };
-  };
+    pcs = buildPecl {
+      version = "1.3.3";
+      pname = "pcs";
 
-  pinba73 = assert isPhp73; buildPecl {
-    version = "1.1.2-dev";
-    pname = "pinba";
+      sha256 = "0d4p1gpl8gkzdiv860qzxfz250ryf0wmjgyc8qcaaqgkdyh5jy5p";
 
-    src = pkgs.fetchFromGitHub {
-      owner = "tony2001";
-      repo = "pinba_extension";
-      rev = "edbc313f1b4fb8407bf7d5acf63fbb0359c7fb2e";
-      sha256 = "02sljqm6griw8ccqavl23f7w1hp2zflcv24lpf00k6pyrn9cwx80";
+      meta.broken = isPhp74; # Build error
     };
 
-    meta = with pkgs.lib; {
-      description = "PHP extension for Pinba";
-      longDescription = ''
-        Pinba is a MySQL storage engine that acts as a realtime monitoring and
-        statistics server for PHP using MySQL as a read-only interface.
-      '';
-      homepage = "http://pinba.org/";
-    };
-  };
+    pdo_oci = buildPecl rec {
+      inherit (php) src version;
 
-  protobuf = buildPecl {
-    version = "3.11.2";
-    pname = "protobuf";
+      pname = "pdo_oci";
+      sourceRoot = "php-${version}/ext/pdo_oci";
 
-    sha256 = "0bhdykdyk58ywqj940zb7jyvrlgdr6hdb4s8kn79fz3p0i79l9hz";
+      buildInputs = [ pkgs.oracle-instantclient ];
+      configureFlags = [ "--with-pdo-oci=instantclient,${pkgs.oracle-instantclient.lib}/lib" ];
 
-    buildInputs = with pkgs; [ (if isPhp73 then pcre2 else pcre) ];
+      internalDeps = [ php.extensions.pdo ];
 
-    meta = with pkgs.lib; {
-      description = ''
-        Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data.
-      '';
-      license = licenses.bsd3;
-      homepage = "https://developers.google.com/protocol-buffers/";
+      postPatch = ''
+      sed -i -e 's|OCISDKMANINC=`.*$|OCISDKMANINC="${pkgs.oracle-instantclient.dev}/include"|' config.m4
+    '';
     };
-  };
 
-  psalm = mkDerivation rec {
-    version = "3.9.3";
-    pname = "psalm";
+    pdo_sqlsrv = buildPecl {
+      version = "5.8.0";
+      pname = "pdo_sqlsrv";
 
-    src = pkgs.fetchurl {
-      url = "https://github.com/vimeo/psalm/releases/download/${version}/psalm.phar";
-      sha256 = "KHm2n06y/yxN5B2rCVxT5ja7HxkyxAMsjZ5HLb3xr4M=";
-    };
+      sha256 = "0z4vbyd851b4jr6p69l2ylk91iihndsm2qjb429pxcv8g6dqzqll";
 
-    phases = [ "installPhase" ];
-    nativeBuildInputs = [ pkgs.makeWrapper ];
+      internalDeps = [ php.extensions.pdo ];
 
-    installPhase = ''
-      mkdir -p $out/bin
-      install -D $src $out/libexec/psalm/psalm.phar
-      makeWrapper ${php}/bin/php $out/bin/psalm \
-        --add-flags "$out/libexec/psalm/psalm.phar"
-    '';
-
-    meta = with pkgs.lib; {
-      description = "A static analysis tool for finding errors in PHP applications";
-      license = licenses.mit;
-      homepage = https://github.com/vimeo/psalm;
+      buildInputs = [ pkgs.unixODBC ] ++ pkgs.lib.optionals pkgs.stdenv.isDarwin [ pkgs.libiconv ];
     };
-  };
-
-  psysh = mkDerivation rec {
-    version = "0.9.12";
-    pname = "psysh";
 
-    src = pkgs.fetchurl {
-      url = "https://github.com/bobthecow/psysh/releases/download/v${version}/psysh-v${version}.tar.gz";
-      sha256 = "0bzmc94li481xk81gv460ipq9zl03skbnq8m3rnw34i2c04hxczc";
-    };
+    php_excel = buildPecl rec {
+      version = "1.0.2";
+      pname = "php_excel";
+      phpVersion = "php7";
 
-    phases = [ "installPhase" ];
-    nativeBuildInputs = [ pkgs.makeWrapper ];
+      buildInputs = [ pkgs.libxl ];
 
-    installPhase = ''
-      mkdir -p $out/bin
-      tar -xzf $src -C $out/bin
-      chmod +x $out/bin/psysh
-      wrapProgram $out/bin/psysh
-    '';
+      src = pkgs.fetchurl {
+        url = "https://github.com/iliaal/php_excel/releases/download/Excel-1.0.2-PHP7/excel-${version}-${phpVersion}.tgz";
+        sha256 = "0dpvih9gpiyh1ml22zi7hi6kslkilzby00z1p8x248idylldzs2n";
+      };
 
-    meta = with pkgs.lib; {
-      description = "PsySH is a runtime developer console, interactive debugger and REPL for PHP.";
-      license = licenses.mit;
-      homepage = https://psysh.org/;
-      maintainers = with maintainers; [ caugner ];
+      configureFlags = [ "--with-excel" "--with-libxl-incdir=${pkgs.libxl}/include_c" "--with-libxl-libdir=${pkgs.libxl}/lib" ];
     };
-  };
 
-  pthreads = if isPhp73 then pthreads32-dev else pthreads32;
+    pinba = let
+      version = if isPhp73 then "1.1.2-dev" else "1.1.1";
+      src = pkgs.fetchFromGitHub ({
+        owner = "tony2001";
+        repo = "pinba_extension";
+      } // (if (isPhp73) then {
+        rev = "edbc313f1b4fb8407bf7d5acf63fbb0359c7fb2e";
+        sha256 = "02sljqm6griw8ccqavl23f7w1hp2zflcv24lpf00k6pyrn9cwx80";
+      } else {
+        rev = "RELEASE_1_1_1";
+        sha256 = "1kdp7vav0y315695vhm3xifgsh6h6y6pny70xw3iai461n58khj5";
+      }));
+    in buildPecl {
+      pname = "pinba";
+      inherit version src;
+
+      meta = with pkgs.lib; {
+        description = "PHP extension for Pinba";
+        longDescription = ''
+          Pinba is a MySQL storage engine that acts as a realtime monitoring and
+          statistics server for PHP using MySQL as a read-only interface.
+        '';
+        homepage = "http://pinba.org/";
+      };
+    };
 
-  pthreads32 = assert (pkgs.config.php.zts or false); assert !isPhp73; buildPecl rec {
-    version = "3.2.0";
-    pname = "pthreads";
+    protobuf = buildPecl {
+      version = "3.11.2";
+      pname = "protobuf";
 
-    src = pkgs.fetchFromGitHub {
-      owner = "krakjoe";
-      repo = "pthreads";
-      rev = "v${version}";
-      sha256 = "17hypm75d4w7lvz96jb7s0s87018yzmmap0l125d5fd7abnhzfvv";
-    };
+      sha256 = "0bhdykdyk58ywqj940zb7jyvrlgdr6hdb4s8kn79fz3p0i79l9hz";
 
-    buildInputs = with pkgs; [ pcre.dev ];
-  };
+      buildInputs = with pkgs; [ pcre' ];
 
-  pthreads32-dev = assert (pkgs.config.php.zts or false); assert isPhp73; buildPecl {
-    version = "3.2.0-dev";
-    pname = "pthreads";
+      meta = with pkgs.lib; {
+        description = ''
+          Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data.
+        '';
+        license = licenses.bsd3;
+        homepage = "https://developers.google.com/protocol-buffers/";
+      };
+    };
 
-    src = pkgs.fetchFromGitHub {
-      owner = "krakjoe";
-      repo = "pthreads";
-      rev = "4d1c2483ceb459ea4284db4eb06646d5715e7154";
-      sha256 = "07kdxypy0bgggrfav2h1ccbv67lllbvpa3s3zsaqci0gq4fyi830";
+    pthreads = let
+      version = "3.2.0";
+      src = pkgs.fetchFromGitHub ({
+        owner = "krakjoe";
+        repo = "pthreads";
+      } // (if (isPhp73) then {
+        rev = "4d1c2483ceb459ea4284db4eb06646d5715e7154";
+        sha256 = "07kdxypy0bgggrfav2h1ccbv67lllbvpa3s3zsaqci0gq4fyi830";
+      } else {
+        rev = "v3.2.0";
+        sha256 = "17hypm75d4w7lvz96jb7s0s87018yzmmap0l125d5fd7abnhzfvv";
+      }));
+    in buildPecl {
+      pname = "pthreads";
+      inherit version src;
+
+      buildInputs = [ pcre'.dev ];
+
+      meta.broken = isPhp74;
     };
 
-    buildInputs = with pkgs; [ pcre2.dev ];
-  };
+    redis = buildPecl {
+      version = "5.1.1";
+      pname = "redis";
 
-  redis = buildPecl {
-    version = "5.1.1";
-    pname = "redis";
+      sha256 = "1041zv91fkda73w4c3pj6zdvwjgb3q7mxg6mwnq9gisl80mrs732";
 
-    sha256 = "1041zv91fkda73w4c3pj6zdvwjgb3q7mxg6mwnq9gisl80mrs732";
-  };
+      internalDeps = with php.extensions; [
+        json
+        session
+      ] ++ lib.optionals (lib.versionOlder php.version "7.4") [
+        hash ];
+    };
 
-  sqlsrv = buildPecl {
-    version = "5.8.0";
-    pname = "sqlsrv";
+    sqlsrv = buildPecl {
+      version = "5.8.0";
+      pname = "sqlsrv";
 
-    sha256 = "1kv4krk1w4hri99b0sdgwgy9c4y0yh217wx2y3irhkfi46kdrjnw";
+      sha256 = "1kv4krk1w4hri99b0sdgwgy9c4y0yh217wx2y3irhkfi46kdrjnw";
 
-    buildInputs = [ pkgs.unixODBC ] ++ pkgs.lib.optionals pkgs.stdenv.isDarwin [ pkgs.libiconv ];
-  };
+      buildInputs = [ pkgs.unixODBC ] ++ pkgs.lib.optionals pkgs.stdenv.isDarwin [ pkgs.libiconv ];
+    };
 
-  v8 = buildPecl {
-    version = "0.2.2";
-    pname = "v8";
+    v8 = buildPecl {
+      version = "0.2.2";
+      pname = "v8";
 
-    sha256 = "103nys7zkpi1hifqp9miyl0m1mn07xqshw3sapyz365nb35g5q71";
+      sha256 = "103nys7zkpi1hifqp9miyl0m1mn07xqshw3sapyz365nb35g5q71";
 
-    buildInputs = [ pkgs.v8_6_x ];
-    configureFlags = [ "--with-v8=${pkgs.v8_6_x}" ];
-    meta.broken = true;
-  };
+      buildInputs = [ pkgs.v8_6_x ];
+      configureFlags = [ "--with-v8=${pkgs.v8_6_x}" ];
+      meta.broken = true;
+    };
 
-  v8js = assert !isPhp73; buildPecl {
-    version = "2.1.0";
-    pname = "v8js";
+    v8js = buildPecl {
+      version = "2.1.0";
+      pname = "v8js";
 
-    sha256 = "0g63dyhhicngbgqg34wl91nm3556vzdgkq19gy52gvmqj47rj6rg";
+      sha256 = "0g63dyhhicngbgqg34wl91nm3556vzdgkq19gy52gvmqj47rj6rg";
 
-    buildInputs = [ pkgs.v8_6_x ];
-    configureFlags = [ "--with-v8js=${pkgs.v8_6_x}" ];
-    meta.broken = true;
-  };
+      buildInputs = [ pkgs.v8_6_x ];
+      configureFlags = [ "--with-v8js=${pkgs.v8_6_x}" ];
+      meta.broken = true;
+    };
 
-  xdebug = buildPecl {
-    version = "2.8.1";
-    pname = "xdebug";
+    xdebug = buildPecl {
+      version = "2.8.1";
+      pname = "xdebug";
 
-    sha256 = "080mwr7m72rf0jsig5074dgq2n86hhs7rdbfg6yvnm959sby72w3";
+      sha256 = "080mwr7m72rf0jsig5074dgq2n86hhs7rdbfg6yvnm959sby72w3";
 
-    doCheck = true;
-    checkTarget = "test";
+      doCheck = true;
+      checkTarget = "test";
 
-    zendExtension = true;
-  };
+      zendExtension = true;
+    };
 
-  yaml = buildPecl {
-    version = "2.0.4";
-    pname = "yaml";
+    yaml = buildPecl {
+      version = "2.0.4";
+      pname = "yaml";
 
-    sha256 = "1036zhc5yskdfymyk8jhwc34kvkvsn5kaf50336153v4dqwb11lp";
+      sha256 = "1036zhc5yskdfymyk8jhwc34kvkvsn5kaf50336153v4dqwb11lp";
 
-    configureFlags = [
-      "--with-yaml=${pkgs.libyaml}"
-    ];
+      configureFlags = [
+        "--with-yaml=${pkgs.libyaml}"
+      ];
 
-    nativeBuildInputs = [ pkgs.pkgconfig ];
-  };
+      nativeBuildInputs = [ pkgs.pkgconfig ];
+    };
 
-  zmq = assert !isPhp73; buildPecl {
-    version = "1.1.3";
-    pname = "zmq";
+    zmq = buildPecl {
+      version = "1.1.3";
+      pname = "zmq";
 
-    sha256 = "1kj487vllqj9720vlhfsmv32hs2dy2agp6176mav6ldx31c3g4n4";
+      sha256 = "1kj487vllqj9720vlhfsmv32hs2dy2agp6176mav6ldx31c3g4n4";
 
-    configureFlags = [
-      "--with-zmq=${pkgs.zeromq}"
-    ];
+      configureFlags = [
+        "--with-zmq=${pkgs.zeromq}"
+      ];
 
-    nativeBuildInputs = [ pkgs.pkgconfig ];
-  };
+      nativeBuildInputs = [ pkgs.pkgconfig ];
 
-  exts = let
+      meta.broken = isPhp73;
+    };
+  } // (let
     # Function to build a single php extension based on the php version.
     #
     # Name passed is the name of the extension and is automatically used
@@ -709,39 +736,67 @@ let
     mkExtension = {
       name
       , configureFlags ? [ "--enable-${name}" ]
+      , internalDeps ? []
+      , postPhpize ? ""
       , buildInputs ? []
       , zendExtension ? false
+      , doCheck ? true
       , ...
-    }: stdenv.mkDerivation {
-      pname = "php-ext-${name}";
+    }@args: stdenv.mkDerivation ((builtins.removeAttrs args [ "name" ]) // {
+      pname = "php-${name}";
+      extensionName = name;
 
       inherit (php) version src;
       sourceRoot = "php-${php.version}/ext/${name}";
 
       enableParallelBuilding = true;
       nativeBuildInputs = [ php autoconf pkgconfig re2c ];
-      inherit configureFlags buildInputs zendExtension;
-
-      preConfigure = "phpize";
-
+      inherit configureFlags internalDeps buildInputs
+        zendExtension doCheck;
+
+      preConfigure = ''
+        nullglobRestore=$(shopt -p nullglob)
+        shopt -u nullglob   # To make ?-globbing work
+
+        # Some extensions have a config0.m4 or config9.m4
+        if [ -f config?.m4 ]; then
+          mv config?.m4 config.m4
+        fi
+
+        $nullglobRestore
+        phpize
+        ${postPhpize}
+        ${lib.concatMapStringsSep "\n"
+          (dep: "mkdir -p ext; ln -s ${dep.dev}/include ext/${dep.extensionName}")
+          internalDeps}
+      '';
+      checkPhase = "echo n | make test";
+      outputs = [ "out" "dev" ];
       installPhase = ''
         mkdir -p $out/lib/php/extensions
-        cp modules/${name}.so $out/lib/php/extensions/ext-${name}.so
+        cp modules/${name}.so $out/lib/php/extensions/${name}.so
+        mkdir -p $dev/include
+        ${rsync}/bin/rsync -r --filter="+ */" \
+                              --filter="+ *.h" \
+                              --filter="- *" \
+                              --prune-empty-dirs \
+                              . $dev/include/
       '';
-    };
+    });
 
     # This list contains build instructions for different modules that one may
     # want to build.
     #
     # These will be passed as arguments to mkExtension above.
-    extensionData = let
-      pcre' = if (lib.versionAtLeast php.version "7.3") then pcre2 else pcre;
-    in [
+    extensionData = [
       { name = "bcmath"; }
       { name = "bz2"; buildInputs = [ bzip2 ]; configureFlags = [ "--with-bz2=${bzip2.dev}" ]; }
       { name = "calendar"; }
       { name = "ctype"; }
-      { name = "curl"; buildInputs = [ curl ]; configureFlags = [ "--with-curl=${curl.dev}" ]; }
+      { name = "curl";
+        buildInputs = [ curl ];
+        configureFlags = [ "--with-curl=${curl.dev}" ];
+        doCheck = false; }
       { name = "dba"; }
       { name = "dom";
         buildInputs = [ libxml2 ];
@@ -752,8 +807,9 @@ let
         buildInputs = [ enchant1 ];
         configureFlags = [ "--with-enchant=${enchant1}" ];
         # enchant1 doesn't build on darwin.
-        enable = (!stdenv.isDarwin); }
-      { name = "exif"; }
+        enable = (!stdenv.isDarwin);
+        doCheck = false; }
+      { name = "exif"; doCheck = false; }
       { name = "ffi"; buildInputs = [ libffi ]; enable = lib.versionAtLeast php.version "7.4"; }
       { name = "fileinfo"; buildInputs = [ pcre' ]; }
       { name = "filter"; buildInputs = [ pcre' ]; }
@@ -765,6 +821,7 @@ let
           "--with-external-gd=${gd.dev}"
           "--enable-gd-jis-conv"
         ];
+        doCheck = false;
         enable = lib.versionAtLeast php.version "7.4"; }
       { name = "gd";
         buildInputs = [ zlib gd libXpm ];
@@ -778,21 +835,22 @@ let
           "--with-zlib-dir=${zlib.dev}"
           "--enable-gd-jis-conv"
         ];
+        doCheck = false;
         enable = lib.versionOlder php.version "7.4"; }
-      ## gettext (7.2, 7.3, 7.4) -- configure: error: Cannot locate header file libintl.h
-      #{ name = "gettext";
-      #  buildInputs = [ gettext ];
-      #  configureFlags = "--with-gettext=${gettext}"; }
+      { name = "gettext";
+        buildInputs = [ gettext ];
+        postPhpize = ''substituteInPlace configure --replace 'as_fn_error $? "Cannot locate header file libintl.h" "$LINENO" 5' ':' '';
+        configureFlags = "--with-gettext=${gettext}"; }
       { name = "gmp";
-        buildInputs = [ gmp5 ];
-        configureFlags = [ "--with-gmp=${gmp5.dev}" ];
-        # gmp5 doesn't build on darwin.
-        enable = (!stdenv.isDarwin); }
+        buildInputs = [ gmp ];
+        configureFlags = [ "--with-gmp=${gmp.dev}" ]; }
       { name = "hash"; enable = lib.versionOlder php.version "7.4"; }
-      { name = "iconv"; configureFlags = if stdenv.isDarwin then
+      { name = "iconv";
+        configureFlags = if stdenv.isDarwin then
                            [ "--with-iconv=${libiconv}" ]
                          else
-                           [ "--with-iconv" ]; }
+                           [ "--with-iconv" ];
+        doCheck = false; }
       { name = "imap";
         buildInputs = [ uwimap openssl pam pcre' ];
         configureFlags = [ "--with-imap=${uwimap}" "--with-imap-ssl" ];
@@ -808,36 +866,110 @@ let
           "LDAP_DIR=${openldap.dev}"
           "LDAP_INCDIR=${openldap.dev}/include"
           "LDAP_LIBDIR=${openldap.out}/lib"
-        ] ++ lib.optional stdenv.isLinux "--with-ldap-sasl=${cyrus_sasl.dev}"; }
-      { name = "mbstring"; buildInputs = [ oniguruma ]; }
-      { name = "mysqli"; configureFlags = [ "--with-mysqli=mysqlnd" "--with-mysql-sock=/run/mysqld/mysqld.sock" ]; }
+        ] ++ lib.optional stdenv.isLinux "--with-ldap-sasl=${cyrus_sasl.dev}";
+        doCheck = false; }
+      { name = "mbstring"; buildInputs = [ oniguruma ]; doCheck = false; }
+      { name = "mysqli";
+        internalDeps = [ php.extensions.mysqlnd ];
+        configureFlags = [ "--with-mysqli=mysqlnd" "--with-mysql-sock=/run/mysqld/mysqld.sock" ];
+        doCheck = false; }
+      { name = "mysqlnd";
+        buildInputs = [ zlib openssl ];
+        # The configure script doesn't correctly add library link
+        # flags, so we add them to the variable used by the Makefile
+        # when linking.
+        MYSQLND_SHARED_LIBADD = "-lssl -lcrypto -lz";
+        # The configure script builds a config.h which is never
+        # included. Let's include it in the main header file
+        # included by all .c-files.
+        patches = [
+          (pkgs.writeText "mysqlnd_config.patch" ''
+            --- a/mysqlnd.h
+            +++ b/mysqlnd.h
+            @@ -1,3 +1,6 @@
+            +#ifdef HAVE_CONFIG_H
+            +#include "config.h"
+            +#endif
+             /*
+               +----------------------------------------------------------------------+
+               | Copyright (c) The PHP Group                                          |
+          '')
+        ];
+        postPhpize = lib.optionalString (lib.versionOlder php.version "7.4") ''
+          substituteInPlace configure --replace '$OPENSSL_LIBDIR' '${openssl}/lib' \
+                                      --replace '$OPENSSL_INCDIR' '${openssl.dev}/include'
+        ''; }
       # oci8 (7.4, 7.3, 7.2)
       # odbc (7.4, 7.3, 7.2)
-      { name = "opcache"; buildInputs = [ pcre' ]; zendExtension = true; }
+      { name = "opcache";
+        buildInputs = [ pcre' ];
+        # HAVE_OPCACHE_FILE_CACHE is defined in config.h, which is
+        # included from ZendAccelerator.h, but ZendAccelerator.h is
+        # included after the ifdef...
+        patches = lib.optional (lib.versionOlder php.version "7.4") [
+          (pkgs.writeText "zend_file_cache_config.patch" ''
+            --- a/zend_file_cache.c
+            +++ b/zend_file_cache.c
+            @@ -27,9 +27,9 @@
+             #include "ext/standard/md5.h"
+             #endif
+
+            +#include "ZendAccelerator.h"
+             #ifdef HAVE_OPCACHE_FILE_CACHE
+
+            -#include "ZendAccelerator.h"
+             #include "zend_file_cache.h"
+             #include "zend_shared_alloc.h"
+             #include "zend_accelerator_util_funcs.h"
+          '') ];
+        zendExtension = true;
+        doCheck = !(lib.versionOlder php.version "7.4"); }
+      { name = "openssl";
+        buildInputs = [ openssl ];
+        configureFlags = [ "--with-openssl" ];
+        doCheck = false; }
       { name = "pcntl"; }
-      { name = "pdo"; }
+      { name = "pdo"; doCheck = false; }
       { name = "pdo_dblib";
+        internalDeps = [ php.extensions.pdo ];
         configureFlags = [ "--with-pdo-dblib=${freetds}" ];
         # Doesn't seem to work on darwin.
-        enable = (!stdenv.isDarwin); }
+        enable = (!stdenv.isDarwin);
+        doCheck = false; }
       # pdo_firebird (7.4, 7.3, 7.2)
-      { name = "pdo_mysql"; configureFlags = [ "--with-pdo-mysql=mysqlnd" ]; }
+      { name = "pdo_mysql";
+        internalDeps = with php.extensions; [ pdo mysqlnd ];
+        configureFlags = [ "--with-pdo-mysql=mysqlnd" ];
+        doCheck = false; }
       # pdo_oci (7.4, 7.3, 7.2)
-      { name = "pdo_odbc"; configureFlags = [ "--with-pdo-odbc=unixODBC,${unixODBC}" ]; }
-      { name = "pdo_pgsql"; configureFlags = [ "--with-pdo-pgsql=${postgresql}" ]; }
-      { name = "pdo_sqlite"; buildInputs = [ sqlite ]; configureFlags = [ "--with-pdo-sqlite=${sqlite.dev}" ]; }
-      { name = "pgsql"; buildInputs = [ pcre' ]; configureFlags = [ "--with-pgsql=${postgresql}" ]; }
-      { name = "phar"; buildInputs = [ pcre' openssl ]; }
-      { name = "posix"; }
+      { name = "pdo_odbc";
+        internalDeps = [ php.extensions.pdo ];
+        configureFlags = [ "--with-pdo-odbc=unixODBC,${unixODBC}" ];
+        doCheck = false; }
+      { name = "pdo_pgsql";
+        internalDeps = [ php.extensions.pdo ];
+        configureFlags = [ "--with-pdo-pgsql=${postgresql}" ];
+        doCheck = false; }
+      { name = "pdo_sqlite";
+        internalDeps = [ php.extensions.pdo ];
+        buildInputs = [ sqlite ];
+        configureFlags = [ "--with-pdo-sqlite=${sqlite.dev}" ];
+        doCheck = false; }
+      { name = "pgsql";
+        buildInputs = [ pcre' ];
+        configureFlags = [ "--with-pgsql=${postgresql}" ];
+        doCheck = false; }
+      { name = "posix"; doCheck = false; }
       { name = "pspell"; configureFlags = [ "--with-pspell=${aspell}" ]; }
-      ## readline (7.4, 7.3, 7.2) -- configure: error: Please reinstall libedit - I cannot find readline.h
-      #{ name = "readline";
-      #  buildInputs = [ libedit readline ];
-      #  configureFlags = [ "--with-readline=${readline.dev}" ]; }
-      { name = "recode";
-        configureFlags = [ "--with-recode=${recode}" ];
-        # Removed in php 7.4.
-        enable = lib.versionOlder php.version "7.4"; }
+      { name = "readline";
+        buildInputs = [ libedit readline ];
+        configureFlags = [ "--with-readline=${readline.dev}" ];
+        postPhpize = lib.optionalString (lib.versionOlder php.version "7.4") ''
+          substituteInPlace configure --replace 'as_fn_error $? "Please reinstall libedit - I cannot find readline.h" "$LINENO" 5' ':'
+        '';
+        doCheck = false;
+      }
+      # recode (7.3, 7.2)
       { name = "session"; }
       { name = "shmop"; }
       { name = "simplexml";
@@ -849,21 +981,25 @@ let
         buildInputs = [ net-snmp openssl ];
         configureFlags = [ "--with-snmp" ];
         # net-snmp doesn't build on darwin.
-        enable = (!stdenv.isDarwin); }
+        enable = (!stdenv.isDarwin);
+        doCheck = false; }
       { name = "soap";
         buildInputs = [ libxml2 ];
         configureFlags = [ "--enable-soap" ]
           # Required to build on darwin.
-          ++ lib.optional (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; }
-      { name = "sockets"; }
+          ++ lib.optional (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ];
+        doCheck = false; }
+      { name = "sockets"; doCheck = false; }
       { name = "sodium"; buildInputs = [ libsodium ]; }
+      { name = "sqlite3"; buildInputs = [ sqlite ]; }
       { name = "sysvmsg"; }
       { name = "sysvsem"; }
       { name = "sysvshm"; }
-      { name = "tidy"; configureFlags = [ "--with-tidy=${html-tidy}" ]; }
+      { name = "tidy"; configureFlags = [ "--with-tidy=${html-tidy}" ]; doCheck = false; }
       { name = "tokenizer"; }
       { name = "wddx";
         buildInputs = [ libxml2 ];
+        internalDeps = [ php.extensions.session ];
         configureFlags = [ "--enable-wddx" "--with-libxml-dir=${libxml2.dev}" ];
         # Removed in php 7.4.
         enable = lib.versionOlder php.version "7.4"; }
@@ -871,7 +1007,8 @@ let
         buildInputs = [ libxml2 ];
         configureFlags = [ "--enable-xml" ]
           # Required to build on darwin.
-          ++ lib.optional (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; }
+          ++ lib.optional (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ];
+        doCheck = false; }
       { name = "xmlreader";
         buildInputs = [ libxml2 ];
         configureFlags = [ "--enable-xmlreader CFLAGS=-I../.." ]
@@ -887,12 +1024,21 @@ let
         configureFlags = [ "--enable-xmlwriter" ]
           # Required to build on darwin.
           ++ lib.optional (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; }
-      { name = "xsl"; buildInputs = [ libxslt libxml2 ]; configureFlags = [ "--with-xsl=${libxslt.dev}" ]; }
+      { name = "xsl";
+        buildInputs = [ libxslt libxml2 ];
+        doCheck = !(lib.versionOlder php.version "7.4");
+        configureFlags = [ "--with-xsl=${libxslt.dev}" ]; }
       { name = "zend_test"; }
-      { name = "zip"; buildInputs = [ libzip pcre' ];
+      { name = "zip";
+        buildInputs = [ libzip pcre' ];
         configureFlags = [ "--with-zip" ]
           ++ lib.optional (lib.versionOlder php.version "7.4") [ "--with-zlib-dir=${zlib.dev}" ]
-          ++ lib.optional (lib.versionOlder php.version "7.3") [ "--with-libzip" ]; }
+          ++ lib.optional (lib.versionOlder php.version "7.3") [ "--with-libzip" ];
+        doCheck = false; }
+      { name = "zlib";
+        buildInputs = [ zlib ];
+        configureFlags = [ "--with-zlib" ]
+          ++ lib.optional (lib.versionOlder php.version "7.4") [ "--with-zlib-dir=${zlib.dev}" ]; }
     ];
 
     # Convert the list of attrs:
@@ -909,5 +1055,5 @@ let
     }) (builtins.filter (i: i.enable or true) extensionData);
 
     # Produce the final attribute set of all extensions defined.
-  in builtins.listToAttrs namedExtensions;
-}; in self
+  in builtins.listToAttrs namedExtensions);
+}
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 49de95139f5..e16cc830fc2 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -108,7 +108,22 @@ in {
   inherit buildSetupcfg;
 
   inherit (callPackage ../development/interpreters/python/hooks { })
-    eggUnpackHook eggBuildHook eggInstallHook flitBuildHook pipBuildHook pipInstallHook pytestCheckHook pythonCatchConflictsHook pythonImportsCheckHook pythonRemoveBinBytecodeHook pythonRemoveTestsDirHook setuptoolsBuildHook setuptoolsCheckHook venvShellHook wheelUnpackHook;
+    eggUnpackHook
+    eggBuildHook
+    eggInstallHook
+    flitBuildHook
+    pipBuildHook
+    pipInstallHook
+    pytestCheckHook
+    pythonCatchConflictsHook
+    pythonImportsCheckHook
+    pythonNamespacesHook
+    pythonRemoveBinBytecodeHook
+    pythonRemoveTestsDirHook
+    setuptoolsBuildHook
+    setuptoolsCheckHook
+    venvShellHook
+    wheelUnpackHook;
 
   # helpers
 
@@ -477,6 +492,8 @@ in {
 
   backports-shutil-which = callPackage ../development/python-modules/backports-shutil-which {};
 
+  bacpypes = callPackage ../development/python-modules/bacpypes {};
+
   bap = callPackage ../development/python-modules/bap {
     bap = pkgs.ocaml-ng.ocamlPackages_4_06.bap;
   };
@@ -503,10 +520,14 @@ in {
 
   boltons = callPackage ../development/python-modules/boltons { };
 
+  bravia-tv = callPackage ../development/python-modules/bravia-tv { };
+
   braintree = callPackage ../development/python-modules/braintree { };
 
   breezy = callPackage ../development/python-modules/breezy { };
 
+  ciso8601 = callPackage ../development/python-modules/ciso8601 { };
+
   deepdiff = callPackage ../development/python-modules/deepdiff { };
 
   django-sesame = callPackage ../development/python-modules/django-sesame { };
@@ -617,6 +638,8 @@ in {
 
   diofant = callPackage ../development/python-modules/diofant { };
 
+  dipy = callPackage ../development/python-modules/dipy { };
+
   docrep = callPackage ../development/python-modules/docrep { };
 
   dominate = callPackage ../development/python-modules/dominate { };
@@ -635,6 +658,8 @@ in {
 
   exchangelib = callPackage ../development/python-modules/exchangelib { };
 
+  dcmstack = callPackage ../development/python-modules/dcmstack { };
+
   dbus-python = callPackage ../development/python-modules/dbus {
     inherit (pkgs) dbus pkgconfig;
   };
@@ -898,6 +923,10 @@ in {
     mpi = pkgs.openmpi;
   };
 
+  python-baseconv = callPackage ../development/python-modules/python-baseconv { };
+
+  pycognito = callPackage ../development/python-modules/pycognito { };
+
   python-mpv-jsonipc = callPackage ../development/python-modules/python-mpv-jsonipc { };
 
   msal = callPackage ../development/python-modules/msal { };
@@ -1185,6 +1214,8 @@ in {
 
   pymsgbox = callPackage ../development/python-modules/pymsgbox { };
 
+  pynanoleaf = callPackage ../development/python-modules/pynanoleaf { };
+
   pynisher = callPackage ../development/python-modules/pynisher { };
 
   pyparser = callPackage ../development/python-modules/pyparser { };
@@ -1290,6 +1321,8 @@ in {
 
   pytest-tornado = callPackage ../development/python-modules/pytest-tornado { };
 
+  pytest-twisted = callPackage ../development/python-modules/pytest-twisted { };
+
   pytest-xprocess = callPackage ../development/python-modules/pytest-xprocess { };
 
   pytest-xvfb = callPackage ../development/python-modules/pytest-xvfb { };
@@ -1620,6 +1653,8 @@ in {
 
   alabaster = callPackage ../development/python-modules/alabaster {};
 
+  alarmdecoder = callPackage ../development/python-modules/alarmdecoder {};
+
   alembic = callPackage ../development/python-modules/alembic {};
 
   allpairspy = callPackage ../development/python-modules/allpairspy { };
@@ -2244,6 +2279,11 @@ in {
 
   eth-utils = callPackage ../development/python-modules/eth-utils { };
 
+  gwyddion = disabledIf isPy3k (toPythonModule (pkgs.gwyddion.override {
+    pythonSupport = true;
+    pythonPackages = self;
+  }));
+
   impacket = callPackage ../development/python-modules/impacket { };
 
   jsonlines = callPackage ../development/python-modules/jsonlines { };
@@ -2256,6 +2296,10 @@ in {
 
   jsonrpc-websocket = callPackage ../development/python-modules/jsonrpc-websocket { };
 
+  hepmc3 = toPythonModule (pkgs.hepmc3.override {
+    inherit python;
+  });
+
   onkyo-eiscp = callPackage ../development/python-modules/onkyo-eiscp { };
 
   tablib = callPackage ../development/python-modules/tablib { };
@@ -2347,8 +2391,6 @@ in {
 
   pyhcl = callPackage ../development/python-modules/pyhcl { };
 
-  pyhepmc = callPackage ../development/python-modules/pyhepmc { };
-
   pytest = if isPy3k then self.pytest_5 else self.pytest_4;
 
   pytest_5 = callPackage ../development/python-modules/pytest {
@@ -2393,12 +2435,14 @@ in {
 
   pytest-doctestplus = callPackage ../development/python-modules/pytest-doctestplus { };
 
-  pytest-faulthandler = callPackage ../development/python-modules/pytest-faulthandler { };
-
   pytest-fixture-config = callPackage ../development/python-modules/pytest-fixture-config { };
 
   pytest-forked = callPackage ../development/python-modules/pytest-forked { };
 
+  pytest-html = callPackage ../development/python-modules/pytest-html { };
+
+  pytest-metadata = callPackage ../development/python-modules/pytest-metadata { };
+
   pytest-rerunfailures = callPackage ../development/python-modules/pytest-rerunfailures { };
 
   pytest-relaxed = callPackage ../development/python-modules/pytest-relaxed { };
@@ -2511,6 +2555,7 @@ in {
 
   libfdt = toPythonModule (pkgs.dtc.override {
     inherit python;
+    pythonSupport = true;
   });
 
   libtmux = callPackage ../development/python-modules/libtmux { };
@@ -2619,6 +2664,8 @@ in {
 
   urllib3 = callPackage ../development/python-modules/urllib3 {};
 
+  varint =  callPackage ../development/python-modules/varint {};
+
   drf-yasg = callPackage ../development/python-modules/drf-yasg { };
 
   dropbox = callPackage ../development/python-modules/dropbox {};
@@ -2934,6 +2981,24 @@ in {
 
   latexcodec = callPackage ../development/python-modules/latexcodec {};
 
+  libmodulemd = pipe pkgs.libmodulemd [
+    toPythonModule
+
+    (p: p.overrideAttrs (super: {
+      meta = super.meta // {
+        outputsToInstall = [ "py" ];
+        # The package always builds python3 bindings
+        broken = (super.meta.broken or false) || !isPy3k;
+      };
+    }))
+
+    (p: p.override {
+      python3 = python;
+    })
+
+    (p: p.py)
+  ];
+
   libselinux = pipe pkgs.libselinux [
     toPythonModule
 
@@ -3056,6 +3121,10 @@ in {
 
   oyaml = callPackage ../development/python-modules/oyaml { };
 
+  pam = callPackage ../development/python-modules/pam {
+    inherit (pkgs) pam;
+  };
+
   pamela = callPackage ../development/python-modules/pamela { };
 
   paperspace = callPackage ../development/python-modules/paperspace { };
@@ -3277,6 +3346,8 @@ in {
 
   rethinkdb = callPackage ../development/python-modules/rethinkdb { };
 
+  roku = callPackage ../development/python-modules/roku { };
+
   roman = callPackage ../development/python-modules/roman { };
 
   rotate-backups = callPackage ../tools/backup/rotate-backups { };
@@ -3612,6 +3683,8 @@ in {
 
   flask-restplus = callPackage ../development/python-modules/flask-restplus { };
 
+  flask-reverse-proxy-fix = callPackage ../development/python-modules/flask-reverse-proxy-fix { };
+
   flask_script = callPackage ../development/python-modules/flask-script { };
 
   flask-silk = callPackage ../development/python-modules/flask-silk { };
@@ -3933,6 +4006,8 @@ in {
 
   colored = callPackage ../development/python-modules/colored { };
 
+  xdg = callPackage ../development/python-modules/xdg { };
+
   xdis = callPackage ../development/python-modules/xdis { };
 
   xnd = callPackage ../development/python-modules/xnd { };
@@ -3995,6 +4070,10 @@ in {
 
   ipython_genutils = callPackage ../development/python-modules/ipython_genutils { };
 
+  ipyvue = callPackage ../development/python-modules/ipyvue { };
+
+  ipyvuetify = callPackage ../development/python-modules/ipyvuetify { };
+
   ipywidgets = callPackage ../development/python-modules/ipywidgets { };
 
   ipaddr = callPackage ../development/python-modules/ipaddr { };
@@ -4494,6 +4573,12 @@ in {
 
   nevow = callPackage ../development/python-modules/nevow { };
 
+  nghttp2 = (toPythonModule (pkgs.nghttp2.override {
+    inherit (self) python cython setuptools;
+    inherit (pkgs) ncurses;
+    enablePython = true;
+  })).python;
+
   nibabel = callPackage ../development/python-modules/nibabel {};
 
   nidaqmx = callPackage ../development/python-modules/nidaqmx { };
@@ -4551,7 +4636,9 @@ in {
 
   notify2 = callPackage ../development/python-modules/notify2 {};
 
-  notmuch = callPackage ../development/python-modules/notmuch { };
+  notmuch = callPackage ../development/python-modules/notmuch {
+    inherit (pkgs) notmuch;
+  };
 
   emoji = callPackage ../development/python-modules/emoji { };
 
@@ -4629,6 +4716,8 @@ in {
 
   omegaconf = callPackage ../development/python-modules/omegaconf { };
 
+  opuslib = callPackage ../development/python-modules/opuslib { };
+
   orderedset = callPackage ../development/python-modules/orderedset { };
 
   python-multipart = callPackage ../development/python-modules/python-multipart { };
@@ -4748,6 +4837,8 @@ in {
 
   patch = callPackage ../development/python-modules/patch { };
 
+  patch-ng = callPackage ../development/python-modules/patch-ng { };
+
   pathos = callPackage ../development/python-modules/pathos { };
 
   patsy = callPackage ../development/python-modules/patsy { };
@@ -5058,6 +5149,8 @@ in {
 
   pylint-plugin-utils = callPackage ../development/python-modules/pylint-plugin-utils { };
 
+  pymumble = callPackage ../development/python-modules/pymumble { };
+
   pyomo = callPackage ../development/python-modules/pyomo { };
 
   pyopencl = callPackage ../development/python-modules/pyopencl { };
@@ -5186,6 +5279,8 @@ in {
 
   progressbar33 = callPackage ../development/python-modules/progressbar33 { };
 
+  protego = callPackage ../development/python-modules/protego {};
+
   ldap = callPackage ../development/python-modules/ldap {
     inherit (pkgs) openldap cyrus_sasl;
   };
@@ -5807,6 +5902,8 @@ in {
 
   user-agents = callPackage ../development/python-modules/user-agents { };
 
+  variants = callPackage ../development/python-modules/variants { };
+
   verboselogs = callPackage ../development/python-modules/verboselogs { };
 
   vega_datasets = callPackage ../development/python-modules/vega_datasets { };
@@ -6124,7 +6221,9 @@ in {
 
   subdownloader = callPackage ../development/python-modules/subdownloader { };
 
-  subunit = callPackage ../development/python-modules/subunit { };
+  subunit = callPackage ../development/python-modules/subunit {
+    inherit (pkgs) subunit pkg-config cppunit check;
+  };
 
   sure = callPackage ../development/python-modules/sure { };
 
@@ -6393,6 +6492,8 @@ in {
 
   graph_nets = callPackage ../development/python-modules/graph_nets { };
 
+  graspy = callPackage ../development/python-modules/graspy { };
+
   influxgraph = callPackage ../development/python-modules/influxgraph { };
 
   pyspotify = callPackage ../development/python-modules/pyspotify { };
@@ -6411,9 +6512,12 @@ in {
     inherit (pkgs) libversion pkgconfig;
   };
 
-  libvirt = callPackage ../development/python-modules/libvirt {
+  libvirt = if isPy3k then (callPackage ../development/python-modules/libvirt {
     inherit (pkgs) libvirt pkgconfig;
-  };
+  }) else (callPackage ../development/python-modules/libvirt/5.9.0.nix {
+    inherit (pkgs) pkgconfig;
+    libvirt = pkgs.libvirt_5_9_0;
+  });
 
   rpdb = callPackage ../development/python-modules/rpdb { };
 
@@ -6684,21 +6788,39 @@ in {
 
   zerobin = callPackage ../development/python-modules/zerobin { };
 
-  tensorflow-estimator = callPackage ../development/python-modules/tensorflow-estimator { };
-  tensorflow-estimator_1_15_1 = callPackage ../development/python-modules/tensorflow-estimator/1_15_1.nix { };
+  tensorflow-estimator = self.tensorflow-estimator_1;
+
+  tensorflow-estimator_1 = callPackage ../development/python-modules/tensorflow-estimator/1 { };
+
+  tensorflow-estimator_2 = callPackage ../development/python-modules/tensorflow-estimator/2 { };
 
   tensorflow-probability = callPackage ../development/python-modules/tensorflow-probability { };
 
-  tensorflow-tensorboard = callPackage ../development/python-modules/tensorflow-tensorboard { };
+  tensorflow-tensorboard = self.tensorflow-tensorboard_1;
 
-  tensorflow-bin = callPackage ../development/python-modules/tensorflow/bin.nix {
+  tensorflow-tensorboard_1 = callPackage ../development/python-modules/tensorflow-tensorboard/1 { };
+
+  tensorflow-tensorboard_2 = callPackage ../development/python-modules/tensorflow-tensorboard/2 { };
+
+  tensorflow-bin = self.tensorflow-bin_1;
+
+  tensorflow-bin_1 = callPackage ../development/python-modules/tensorflow/1/bin.nix {
     cudaSupport = pkgs.config.cudaSupport or false;
     inherit (pkgs.linuxPackages) nvidia_x11;
     cudatoolkit = pkgs.cudatoolkit_10;
     cudnn = pkgs.cudnn_cudatoolkit_10;
   };
 
-  tensorflow-build = callPackage ../development/python-modules/tensorflow {
+  tensorflow-bin_2 = callPackage ../development/python-modules/tensorflow/2/bin.nix {
+    cudaSupport = pkgs.config.cudaSupport or false;
+    inherit (pkgs.linuxPackages) nvidia_x11;
+    cudatoolkit = pkgs.cudatoolkit_10;
+    cudnn = pkgs.cudnn_cudatoolkit_10;
+  };
+
+  tensorflow-build = self.tensorflow-build_1;
+
+  tensorflow-build_1 = callPackage ../development/python-modules/tensorflow/1 {
     cudaSupport = pkgs.config.cudaSupport or false;
     inherit (pkgs.linuxPackages) nvidia_x11;
     cudatoolkit = pkgs.cudatoolkit_10;
@@ -6708,7 +6830,19 @@ in {
     inherit (pkgs.darwin.apple_sdk.frameworks) Foundation Security;
   };
 
-  tensorflow = self.tensorflow-build;
+  tensorflow-build_2 = callPackage ../development/python-modules/tensorflow/2 {
+    cudaSupport = pkgs.config.cudaSupport or false;
+    inherit (pkgs.linuxPackages) nvidia_x11;
+    cudatoolkit = pkgs.cudatoolkit_10;
+    cudnn = pkgs.cudnn_cudatoolkit_10;
+    nccl = pkgs.nccl_cudatoolkit_10;
+    openssl = pkgs.openssl_1_1;
+    inherit (pkgs.darwin.apple_sdk.frameworks) Foundation Security;
+  };
+
+  tensorflow = self.tensorflow_1;
+  tensorflow_1 = self.tensorflow-build_1;
+  tensorflow_2 = self.tensorflow-build_2;
 
   tensorflowWithoutCuda = self.tensorflow.override {
     cudaSupport = false;
@@ -6764,6 +6898,8 @@ in {
     callPackage ../development/python-modules/more-itertools/2.7.nix { }
   else callPackage ../development/python-modules/more-itertools { };
 
+  morphys = callPackage ../development/python-modules/morphys { };
+
   jaraco_functools = callPackage ../development/python-modules/jaraco_functools { };
 
   jaraco_classes = callPackage ../development/python-modules/jaraco_classes { };
@@ -6969,6 +7105,8 @@ in {
 
   pyemd  = callPackage ../development/python-modules/pyemd { };
 
+  openwrt-luci-rpc = disabledIf (!isPy3k) (callPackage ../development/python-modules/openwrt-luci-rpc { });
+
   pulp  = callPackage ../development/python-modules/pulp { };
 
   behave = callPackage ../development/python-modules/behave { };
@@ -7026,14 +7164,20 @@ in {
 
   gast = callPackage ../development/python-modules/gast { };
 
-  IBMQuantumExperience = callPackage ../development/python-modules/ibmquantumexperience { };
-
   ibis = callPackage ../development/python-modules/ibis { };
 
   ibis-framework = callPackage ../development/python-modules/ibis-framework { };
 
   qiskit = callPackage ../development/python-modules/qiskit { };
 
+  qiskit-aer = callPackage ../development/python-modules/qiskit-aer { };
+
+  qiskit-aqua = callPackage ../development/python-modules/qiskit-aqua { };
+
+  qiskit-ibmq-provider = callPackage ../development/python-modules/qiskit-ibmq-provider { };
+
+  qiskit-ignis = callPackage ../development/python-modules/qiskit-ignis { };
+
   qiskit-terra = callPackage ../development/python-modules/qiskit-terra { };
 
   qasm2image = callPackage ../development/python-modules/qasm2image { };
diff --git a/pkgs/top-level/static.nix b/pkgs/top-level/static.nix
index 0de1db7d99b..c7db64b99f6 100644
--- a/pkgs/top-level/static.nix
+++ b/pkgs/top-level/static.nix
@@ -266,6 +266,13 @@ in {
   ) super.ocaml-ng;
 
   python27 = super.python27.override { static = true; };
+  python35 = super.python35.override { static = true; };
+  python36 = super.python36.override { static = true; };
+  python37 = super.python37.override { static = true; };
+  python38 = super.python38.override { static = true; };
+  python39 = super.python39.override { static = true; };
+  python3Minimal = super.python3Minimal.override { static = true; };
+
 
   libev = super.libev.override { static = true; };
 }