about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--.github/CODEOWNERS10
-rw-r--r--.github/PULL_REQUEST_TEMPLATE.md1
-rw-r--r--doc/functions/dockertools.xml23
-rw-r--r--doc/multiple-output.xml7
-rw-r--r--doc/package-notes.xml27
-rw-r--r--lib/lists.nix2
-rw-r--r--lib/systems/default.nix1
-rw-r--r--lib/systems/examples.nix5
-rw-r--r--lib/systems/inspect.nix1
-rw-r--r--lib/systems/parse.nix1
-rw-r--r--maintainers/maintainer-list.nix20
-rwxr-xr-xmaintainers/scripts/fetch-kde-qt.sh9
-rw-r--r--nixos/doc/manual/release-notes/rl-1903.xml18
-rw-r--r--nixos/doc/manual/release-notes/rl-1909.xml10
-rw-r--r--nixos/modules/config/ldap.nix89
-rw-r--r--nixos/modules/hardware/all-firmware.nix10
-rw-r--r--nixos/modules/hardware/logitech.nix28
-rw-r--r--nixos/modules/installer/cd-dvd/iso-image.nix2
-rw-r--r--nixos/modules/module-list.nix4
-rw-r--r--nixos/modules/programs/browserpass.nix33
-rw-r--r--nixos/modules/programs/gnupg.nix15
-rw-r--r--nixos/modules/rename.nix74
-rw-r--r--nixos/modules/security/pam.nix60
-rw-r--r--nixos/modules/security/systemd-confinement.nix199
-rw-r--r--nixos/modules/services/databases/mysql.nix82
-rw-r--r--nixos/modules/services/databases/openldap.nix94
-rw-r--r--nixos/modules/services/mail/mailcatcher.nix60
-rw-r--r--nixos/modules/services/misc/gitlab.nix17
-rw-r--r--nixos/modules/services/networking/quicktun.nix118
-rw-r--r--nixos/modules/services/scheduling/cron.nix4
-rw-r--r--nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix599
-rw-r--r--nixos/modules/services/web-servers/nginx/default.nix14
-rw-r--r--nixos/modules/services/x11/colord.nix19
-rw-r--r--nixos/modules/system/boot/systemd-lib.nix9
-rw-r--r--nixos/tests/all-tests.nix7
-rw-r--r--nixos/tests/docker-tools.nix4
-rw-r--r--nixos/tests/kafka.nix1
-rw-r--r--nixos/tests/kernel-testing.nix17
-rw-r--r--nixos/tests/ldap.nix9
-rw-r--r--nixos/tests/mailcatcher.nix26
-rw-r--r--nixos/tests/minio.nix29
-rw-r--r--nixos/tests/mysql.nix28
-rw-r--r--nixos/tests/openldap.nix14
-rw-r--r--nixos/tests/pdns-recursor.nix12
-rw-r--r--nixos/tests/systemd-confinement.nix168
-rw-r--r--nixos/tests/wireguard/default.nix97
-rw-r--r--nixos/tests/wireguard/snakeoil-keys.nix11
-rw-r--r--pkgs/applications/altcoins/monero-gui/default.nix24
-rw-r--r--pkgs/applications/audio/clementine/default.nix3
-rw-r--r--pkgs/applications/audio/lollypop/default.nix4
-rw-r--r--pkgs/applications/audio/meters_lv2/default.nix14
-rw-r--r--pkgs/applications/audio/padthv1/default.nix4
-rw-r--r--pkgs/applications/audio/paprefs/default.nix4
-rw-r--r--pkgs/applications/audio/qsynth/default.nix16
-rw-r--r--pkgs/applications/audio/samplv1/default.nix4
-rw-r--r--pkgs/applications/audio/synthv1/default.nix4
-rw-r--r--pkgs/applications/audio/yoshimi/default.nix4
-rw-r--r--pkgs/applications/audio/zynaddsubfx/default.nix4
-rw-r--r--pkgs/applications/editors/android-studio/common.nix6
-rw-r--r--pkgs/applications/editors/android-studio/default.nix12
-rw-r--r--pkgs/applications/editors/emacs/default.nix13
-rw-r--r--pkgs/applications/editors/jetbrains/default.nix46
-rw-r--r--pkgs/applications/editors/neovim/neovim-remote.nix4
-rw-r--r--pkgs/applications/editors/okteta/default.nix4
-rw-r--r--pkgs/applications/editors/sublime/3/common.nix3
-rw-r--r--pkgs/applications/editors/sublime/3/packages.nix6
-rw-r--r--pkgs/applications/editors/typora/default.nix34
-rw-r--r--pkgs/applications/editors/vscode/default.nix8
-rw-r--r--pkgs/applications/graphics/ImageMagick/7.0.nix1
-rw-r--r--pkgs/applications/graphics/ktikz/default.nix2
-rw-r--r--pkgs/applications/graphics/renderdoc/default.nix4
-rw-r--r--pkgs/applications/graphics/wings/default.nix4
-rw-r--r--pkgs/applications/graphics/yed/default.nix4
-rw-r--r--pkgs/applications/kde/akonadi/akonadi-paths.patch36
-rw-r--r--pkgs/applications/kde/fetch.sh2
-rw-r--r--pkgs/applications/kde/srcs.nix1720
-rw-r--r--pkgs/applications/misc/cura/default.nix14
-rw-r--r--pkgs/applications/misc/curaengine/default.nix4
-rw-r--r--pkgs/applications/misc/gollum/Gemfile.lock16
-rw-r--r--pkgs/applications/misc/gollum/gemset.nix78
-rw-r--r--pkgs/applications/misc/googler/default.nix4
-rw-r--r--pkgs/applications/misc/gphoto2/default.nix4
-rw-r--r--pkgs/applications/misc/gramps/default.nix4
-rw-r--r--pkgs/applications/misc/iterm2/default.nix1
-rw-r--r--pkgs/applications/misc/josm/default.nix6
-rw-r--r--pkgs/applications/misc/khal/default.nix12
-rw-r--r--pkgs/applications/misc/kitty/default.nix64
-rw-r--r--pkgs/applications/misc/kitty/macos-10.11.patch116
-rw-r--r--pkgs/applications/misc/kitty/no-lto.patch12
-rw-r--r--pkgs/applications/misc/kitty/no-werror.patch11
-rw-r--r--pkgs/applications/misc/kitty/png2icns.patch19
-rw-r--r--pkgs/applications/misc/octoprint/default.nix3
-rw-r--r--pkgs/applications/misc/polar-bookshelf/default.nix4
-rw-r--r--pkgs/applications/misc/safeeyes/default.nix4
-rw-r--r--pkgs/applications/misc/solaar/default.nix19
-rw-r--r--pkgs/applications/misc/stupidterm/default.nix17
-rw-r--r--pkgs/applications/misc/stupidterm/stupidterm.desktop9
-rw-r--r--pkgs/applications/misc/sweethome3d/default.nix6
-rw-r--r--pkgs/applications/misc/terminator/default.nix4
-rw-r--r--pkgs/applications/misc/tilix/default.nix10
-rw-r--r--pkgs/applications/misc/workrave/default.nix4
-rw-r--r--pkgs/applications/misc/xmrig/default.nix4
-rw-r--r--pkgs/applications/misc/xmrig/proxy.nix4
-rw-r--r--pkgs/applications/misc/xtermcontrol/default.nix4
-rw-r--r--pkgs/applications/networking/brig/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix2
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/chromium/update.nix128
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.nix18
-rw-r--r--pkgs/applications/networking/browsers/eolie/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix794
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix794
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/release_sources.nix794
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix4
-rw-r--r--pkgs/applications/networking/cluster/kubernetes/default.nix4
-rw-r--r--pkgs/applications/networking/cluster/minikube/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/terraform-providers/data.nix104
-rw-r--r--pkgs/applications/networking/flexget/default.nix13
-rw-r--r--pkgs/applications/networking/google-drive-ocamlfuse/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/coyim/default.nix10
-rw-r--r--pkgs/applications/networking/instant-messengers/oysttyer/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-web.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/signal-desktop/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix8
-rw-r--r--pkgs/applications/networking/p2p/gnunet/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/tixati/default.nix4
-rw-r--r--pkgs/applications/networking/protonvpn-cli/default.nix46
-rw-r--r--pkgs/applications/networking/ps2client/default.nix29
-rw-r--r--pkgs/applications/networking/remote/remmina/default.nix4
-rw-r--r--pkgs/applications/networking/spideroak/default.nix20
-rw-r--r--pkgs/applications/networking/syncplay/default.nix6
-rw-r--r--pkgs/applications/networking/znc/default.nix4
-rw-r--r--pkgs/applications/office/atlassian-cli/default.nix4
-rw-r--r--pkgs/applications/office/calligra/default.nix2
-rw-r--r--pkgs/applications/office/grisbi/default.nix8
-rw-r--r--pkgs/applications/office/notes-up/default.nix4
-rw-r--r--pkgs/applications/office/qownnotes/default.nix4
-rw-r--r--pkgs/applications/office/trilium/default.nix4
-rw-r--r--pkgs/applications/radio/gnuradio/limesdr.nix4
-rw-r--r--pkgs/applications/science/astronomy/stellarium/default.nix4
-rw-r--r--pkgs/applications/science/biology/bowtie2/default.nix4
-rw-r--r--pkgs/applications/science/biology/megahit/default.nix29
-rw-r--r--pkgs/applications/science/biology/minimap2/default.nix4
-rw-r--r--pkgs/applications/science/biology/paml/default.nix4
-rw-r--r--pkgs/applications/science/biology/stacks/default.nix19
-rw-r--r--pkgs/applications/science/chemistry/jmol/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/molden/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/octopus/default.nix4
-rw-r--r--pkgs/applications/science/chemistry/quantum-espresso/default.nix10
-rw-r--r--pkgs/applications/science/electronics/verilator/default.nix4
-rw-r--r--pkgs/applications/science/math/ginac/default.nix4
-rw-r--r--pkgs/applications/science/math/gmsh/default.nix4
-rw-r--r--pkgs/applications/science/math/nauty/default.nix23
-rw-r--r--pkgs/applications/science/math/sage/sage-src.nix7
-rw-r--r--pkgs/applications/science/misc/root/5.nix24
-rw-r--r--pkgs/applications/science/misc/root/disable_libc_dicts_root5.patch27
-rw-r--r--pkgs/applications/science/misc/root/purify_include_paths_root5.patch204
-rw-r--r--pkgs/applications/version-management/cvs-fast-export/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/hub/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/qgit/default.nix2
-rw-r--r--pkgs/applications/version-management/gitea/default.nix21
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/default.nix9
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix6
-rw-r--r--pkgs/applications/video/peek/default.nix22
-rw-r--r--pkgs/applications/video/vlc/default.nix15
-rw-r--r--pkgs/applications/video/xawtv/default.nix4
-rw-r--r--pkgs/applications/virtualization/charliecloud/default.nix48
-rw-r--r--pkgs/applications/virtualization/runc/default.nix4
-rw-r--r--pkgs/applications/window-managers/i3/status-rust.nix6
-rw-r--r--pkgs/build-support/bintools-wrapper/default.nix1
-rw-r--r--pkgs/build-support/docker/default.nix13
-rw-r--r--pkgs/build-support/docker/examples.nix3
-rwxr-xr-xpkgs/build-support/docker/store-path-to-layer.sh1
-rw-r--r--pkgs/build-support/rust/build-rust-crate/build-crate.nix2
-rw-r--r--pkgs/build-support/rust/build-rust-crate/configure-crate.nix2
-rw-r--r--pkgs/build-support/trivial-builders.nix2
-rw-r--r--pkgs/build-support/writers/default.nix10
-rw-r--r--pkgs/data/fonts/behdad-fonts/default.nix26
-rw-r--r--pkgs/data/fonts/font-awesome-5/default.nix4
-rw-r--r--pkgs/data/fonts/gandom-fonts/default.nix26
-rw-r--r--pkgs/data/fonts/gohufont/default.nix68
-rw-r--r--pkgs/data/fonts/inter-ui/default.nix4
-rw-r--r--pkgs/data/fonts/manrope/default.nix23
-rw-r--r--pkgs/data/fonts/nika-fonts/default.nix26
-rw-r--r--pkgs/data/fonts/parastoo-fonts/default.nix26
-rw-r--r--pkgs/data/fonts/sahel-fonts/default.nix26
-rw-r--r--pkgs/data/fonts/samim-fonts/default.nix26
-rw-r--r--pkgs/data/fonts/spleen/default.nix26
-rw-r--r--pkgs/desktops/deepin/dbus-factory/default.nix2
-rw-r--r--pkgs/desktops/deepin/dde-api/default.nix96
-rw-r--r--pkgs/desktops/deepin/dde-api/deps.nix22
-rw-r--r--pkgs/desktops/deepin/dde-calendar/default.nix10
-rw-r--r--pkgs/desktops/deepin/dde-daemon/default.nix53
-rw-r--r--pkgs/desktops/deepin/dde-daemon/deps.nix26
-rw-r--r--pkgs/desktops/deepin/dde-polkit-agent/default.nix51
-rw-r--r--pkgs/desktops/deepin/dde-qt-dbus-factory/default.nix15
-rw-r--r--pkgs/desktops/deepin/dde-session-ui/default.nix13
-rw-r--r--pkgs/desktops/deepin/deepin-desktop-base/default.nix40
-rw-r--r--pkgs/desktops/deepin/deepin-desktop-schemas/default.nix39
-rw-r--r--pkgs/desktops/deepin/deepin-gettext-tools/default.nix2
-rw-r--r--pkgs/desktops/deepin/deepin-gtk-theme/default.nix2
-rw-r--r--pkgs/desktops/deepin/deepin-icon-theme/default.nix26
-rw-r--r--pkgs/desktops/deepin/deepin-image-viewer/default.nix11
-rw-r--r--pkgs/desktops/deepin/deepin-menu/default.nix7
-rw-r--r--pkgs/desktops/deepin/deepin-metacity/default.nix15
-rw-r--r--pkgs/desktops/deepin/deepin-movie-reborn/default.nix4
-rw-r--r--pkgs/desktops/deepin/deepin-mutter/default.nix41
-rw-r--r--pkgs/desktops/deepin/deepin-sound-theme/default.nix2
-rw-r--r--pkgs/desktops/deepin/deepin-terminal/default.nix25
-rw-r--r--pkgs/desktops/deepin/deepin-wallpapers/default.nix10
-rw-r--r--pkgs/desktops/deepin/deepin-wm/default.nix38
-rw-r--r--pkgs/desktops/deepin/default.nix5
-rw-r--r--pkgs/desktops/deepin/dpa-ext-gnomekeyring/default.nix43
-rw-r--r--pkgs/desktops/deepin/dtkcore/default.nix4
-rw-r--r--pkgs/desktops/deepin/dtkwidget/default.nix4
-rw-r--r--pkgs/desktops/deepin/go-dbus-factory/default.nix6
-rw-r--r--pkgs/desktops/deepin/go-dbus-generator/default.nix2
-rw-r--r--pkgs/desktops/deepin/go-gir-generator/default.nix14
-rw-r--r--pkgs/desktops/deepin/go-lib/default.nix14
-rw-r--r--pkgs/desktops/deepin/qt5dxcb-plugin/default.nix4
-rw-r--r--pkgs/desktops/deepin/qt5integration/default.nix4
-rwxr-xr-xpkgs/desktops/deepin/setup-hook.sh53
-rw-r--r--pkgs/desktops/deepin/update.nix2
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/3.28.nix33
-rw-r--r--pkgs/desktops/gnome-3/core/mutter/fix-paths-328.patch13
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-camera/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-files/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/elementary-terminal/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/pantheon-shell/default.nix4
-rw-r--r--pkgs/desktops/pantheon/apps/switchboard-plugs/sound/default.nix4
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/calendar-exec.patch13
-rw-r--r--pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix14
-rw-r--r--pkgs/desktops/plasma-5/fetch.sh2
-rw-r--r--pkgs/development/compilers/dtc/default.nix13
-rw-r--r--pkgs/development/compilers/ghc/8.6.4.nix9
-rw-r--r--pkgs/development/compilers/ghc/head.nix7
-rw-r--r--pkgs/development/compilers/glslang/default.nix19
-rw-r--r--pkgs/development/compilers/jetbrains-jdk/default.nix4
-rw-r--r--pkgs/development/compilers/llvm/8/lldb.nix4
-rw-r--r--pkgs/development/compilers/pakcs/default.nix4
-rw-r--r--pkgs/development/coq-modules/coqhammer/default.nix55
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml23
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix2
-rw-r--r--pkgs/development/haskell-modules/generic-builder.nix26
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix2046
-rw-r--r--pkgs/development/haskell-modules/lib.nix2
-rw-r--r--pkgs/development/interpreters/janet/default.nix26
-rw-r--r--pkgs/development/libraries/bullet/roboschool-fork.nix57
-rw-r--r--pkgs/development/libraries/cimg/default.nix4
-rw-r--r--pkgs/development/libraries/cmocka/default.nix4
-rw-r--r--pkgs/development/libraries/cpptest/default.nix4
-rw-r--r--pkgs/development/libraries/dlib/default.nix5
-rw-r--r--pkgs/development/libraries/eclib/default.nix4
-rw-r--r--pkgs/development/libraries/enet/default.nix4
-rw-r--r--pkgs/development/libraries/ffmpeg/3.4.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/good/default.nix8
-rw-r--r--pkgs/development/libraries/kde-frameworks/fetch.sh2
-rw-r--r--pkgs/development/libraries/libdap/default.nix4
-rw-r--r--pkgs/development/libraries/libebml/default.nix6
-rw-r--r--pkgs/development/libraries/libextractor/default.nix4
-rw-r--r--pkgs/development/libraries/libmatroska/default.nix6
-rw-r--r--pkgs/development/libraries/libmicrodns/default.nix30
-rw-r--r--pkgs/development/libraries/libmodbus/default.nix10
-rw-r--r--pkgs/development/libraries/librealsense/default.nix4
-rw-r--r--pkgs/development/libraries/libsoundio/default.nix4
-rw-r--r--pkgs/development/libraries/libxc/default.nix4
-rw-r--r--pkgs/development/libraries/libykclient/default.nix22
-rw-r--r--pkgs/development/libraries/live555/default.nix4
-rw-r--r--pkgs/development/libraries/minixml/default.nix6
-rw-r--r--pkgs/development/libraries/mtxclient/default.nix10
-rw-r--r--pkgs/development/libraries/nuspell/default.nix13
-rw-r--r--pkgs/development/libraries/osip/default.nix4
-rw-r--r--pkgs/development/libraries/pcl/default.nix12
-rw-r--r--pkgs/development/libraries/phonon/backends/vlc.nix4
-rw-r--r--pkgs/development/libraries/physics/applgrid/bad_code.patch11
-rw-r--r--pkgs/development/libraries/physics/herwig/default.nix6
-rw-r--r--pkgs/development/libraries/physics/thepeg/default.nix4
-rw-r--r--pkgs/development/libraries/qt-5/5.11/default.nix6
-rw-r--r--pkgs/development/libraries/qt-5/5.11/fetch.sh3
-rw-r--r--pkgs/development/libraries/qt-5/5.11/qtwebengine-darwin-no-platform-check.patch37
-rw-r--r--pkgs/development/libraries/qt-5/5.11/qtwebengine-darwin-old-sdk.patch21
-rw-r--r--pkgs/development/libraries/qt-5/5.12/default.nix3
-rw-r--r--pkgs/development/libraries/qt-5/5.12/fetch.sh3
-rw-r--r--pkgs/development/libraries/qt-5/5.12/qtwebengine-darwin-no-platform-check.patch21
-rw-r--r--pkgs/development/libraries/qt-5/5.6/fetch.sh3
-rw-r--r--pkgs/development/libraries/qt-5/5.9/default.nix4
-rw-r--r--pkgs/development/libraries/qt-5/5.9/fetch.sh3
-rw-r--r--pkgs/development/libraries/qt-5/5.9/qtwebengine-clang-fix.patch38
-rw-r--r--pkgs/development/libraries/qt-5/5.9/qtwebengine-darwin-no-platform-check.patch50
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtwebengine.nix31
-rw-r--r--pkgs/development/libraries/rdkafka/default.nix4
-rw-r--r--pkgs/development/libraries/science/math/arpack/default.nix38
-rw-r--r--pkgs/development/libraries/science/math/clblas/default.nix14
-rw-r--r--pkgs/development/libraries/science/math/mkl/default.nix18
-rw-r--r--pkgs/development/libraries/spirv-headers/default.nix21
-rw-r--r--pkgs/development/libraries/tbb/default.nix7
-rw-r--r--pkgs/development/libraries/tpm2-tss/default.nix4
-rw-r--r--pkgs/development/libraries/uthash/default.nix4
-rw-r--r--pkgs/development/libraries/vapoursynth-mvtools/default.nix4
-rw-r--r--pkgs/development/libraries/vulkan-headers/default.nix6
-rw-r--r--pkgs/development/libraries/vulkan-loader/default.nix10
-rw-r--r--pkgs/development/libraries/wolfssl/default.nix4
-rw-r--r--pkgs/development/libraries/yubico-pam/default.nix24
-rw-r--r--pkgs/development/misc/msp430/gcc-support.nix31
-rw-r--r--pkgs/development/misc/msp430/mspdebug.nix25
-rw-r--r--pkgs/development/misc/msp430/newlib.nix25
-rw-r--r--pkgs/development/ocaml-modules/extlib/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/janestreet/default.nix9
-rw-r--r--pkgs/development/ocaml-modules/stdint/default.nix15
-rw-r--r--pkgs/development/ocaml-modules/syslog/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/zmq/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/zmq/ocaml-zmq-issue43.patch11
-rw-r--r--pkgs/development/perl-modules/DBD-Oracle/default.nix15
-rw-r--r--pkgs/development/python-modules/aioesphomeapi/default.nix23
-rw-r--r--pkgs/development/python-modules/altair/default.nix4
-rw-r--r--pkgs/development/python-modules/amqp/default.nix4
-rw-r--r--pkgs/development/python-modules/asynctest/default.nix4
-rw-r--r--pkgs/development/python-modules/baselines/default.nix59
-rw-r--r--pkgs/development/python-modules/baselines/fix-dep-names.patch18
-rw-r--r--pkgs/development/python-modules/beaker/default.nix49
-rw-r--r--pkgs/development/python-modules/black/default.nix8
-rw-r--r--pkgs/development/python-modules/cassandra-driver/default.nix4
-rw-r--r--pkgs/development/python-modules/celery/default.nix9
-rw-r--r--pkgs/development/python-modules/chameleon/default.nix4
-rw-r--r--pkgs/development/python-modules/cherrypy/17.nix36
-rw-r--r--pkgs/development/python-modules/cherrypy/default.nix46
-rw-r--r--pkgs/development/python-modules/contextvars/default.nix6
-rw-r--r--pkgs/development/python-modules/contextvars/immutables_version.patch11
-rw-r--r--pkgs/development/python-modules/cufflinks/default.nix20
-rw-r--r--pkgs/development/python-modules/devpi-common/default.nix4
-rw-r--r--pkgs/development/python-modules/dlib/default.nix7
-rw-r--r--pkgs/development/python-modules/face_recognition/default.nix15
-rw-r--r--pkgs/development/python-modules/first/default.nix4
-rw-r--r--pkgs/development/python-modules/folium/default.nix4
-rw-r--r--pkgs/development/python-modules/importlib-metadata/default.nix17
-rw-r--r--pkgs/development/python-modules/jupyterhub/default.nix3
-rw-r--r--pkgs/development/python-modules/kombu/default.nix4
-rw-r--r--pkgs/development/python-modules/lark-parser/default.nix4
-rw-r--r--pkgs/development/python-modules/libarcus/default.nix4
-rw-r--r--pkgs/development/python-modules/libgpuarray/default.nix3
-rw-r--r--pkgs/development/python-modules/libsavitar/default.nix4
-rw-r--r--pkgs/development/python-modules/matplotlib/2.nix3
-rw-r--r--pkgs/development/python-modules/matplotlib/default.nix3
-rw-r--r--pkgs/development/python-modules/minio/default.nix24
-rw-r--r--pkgs/development/python-modules/netdisco/default.nix4
-rw-r--r--pkgs/development/python-modules/nevow/default.nix2
-rw-r--r--pkgs/development/python-modules/nvchecker/default.nix4
-rwxr-xr-xpkgs/development/python-modules/osmnx/default.nix4
-rw-r--r--pkgs/development/python-modules/pluginbase/default.nix11
-rw-r--r--pkgs/development/python-modules/progress/default.nix7
-rw-r--r--pkgs/development/python-modules/progressbar/default.nix3
-rw-r--r--pkgs/development/python-modules/pybullet/default.nix34
-rw-r--r--pkgs/development/python-modules/pybullet/static-libs.patch13
-rw-r--r--pkgs/development/python-modules/pyls-black/default.nix4
-rw-r--r--pkgs/development/python-modules/pyodbc/default.nix4
-rw-r--r--pkgs/development/python-modules/pyogg/default.nix35
-rw-r--r--pkgs/development/python-modules/pyogg/pyogg-paths.patch79
-rw-r--r--pkgs/development/python-modules/pyramid_beaker/default.nix2
-rw-r--r--pkgs/development/python-modules/pytest-rerunfailures/default.nix6
-rw-r--r--pkgs/development/python-modules/roboschool/default.nix73
-rw-r--r--pkgs/development/python-modules/sasmodels/default.nix4
-rw-r--r--pkgs/development/python-modules/shouldbe/default.nix8
-rw-r--r--pkgs/development/python-modules/speedtest-cli/default.nix4
-rw-r--r--pkgs/development/python-modules/thinc/default.nix5
-rw-r--r--pkgs/development/python-modules/twilio/default.nix4
-rw-r--r--pkgs/development/python-modules/uranium/default.nix4
-rw-r--r--pkgs/development/python-modules/vine/default.nix4
-rw-r--r--pkgs/development/python-modules/werkzeug/default.nix8
-rw-r--r--pkgs/development/python-modules/zipp/default.nix31
-rw-r--r--pkgs/development/r-modules/default.nix6
-rw-r--r--pkgs/development/ruby-modules/gem/default.nix8
-rw-r--r--pkgs/development/tools/analysis/flow/default.nix6
-rw-r--r--pkgs/development/tools/analysis/pmd/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/bazel/default.nix75
-rw-r--r--pkgs/development/tools/build-managers/conan/default.nix7
-rw-r--r--pkgs/development/tools/build-managers/gradle/default.nix18
-rw-r--r--pkgs/development/tools/build-managers/scons/default.nix4
-rw-r--r--pkgs/development/tools/cachix/default.nix2
-rw-r--r--pkgs/development/tools/electron/3.x.nix12
-rw-r--r--pkgs/development/tools/electron/default.nix13
-rw-r--r--pkgs/development/tools/godot/default.nix8
-rw-r--r--pkgs/development/tools/godot/dont_clobber_environment.patch9
-rw-r--r--pkgs/development/tools/godot/pkg_config_additions.patch23
-rw-r--r--pkgs/development/tools/ktlint/default.nix4
-rw-r--r--pkgs/development/tools/mdk/default.nix6
-rw-r--r--pkgs/development/tools/misc/cflow/default.nix4
-rw-r--r--pkgs/development/tools/misc/hydra/default.nix5
-rw-r--r--pkgs/development/tools/misc/semver-tool/default.nix32
-rw-r--r--pkgs/development/tools/misc/tokei/default.nix14
-rw-r--r--pkgs/development/tools/ocaml/opaline/default.nix4
-rw-r--r--pkgs/development/tools/scalafmt/default.nix8
-rw-r--r--pkgs/development/tools/skaffold/default.nix6
-rw-r--r--pkgs/development/tools/sourcetrail/default.nix4
-rw-r--r--pkgs/development/tools/spirv-tools/default.nix37
-rw-r--r--pkgs/development/tools/vulkan-validation-layers/default.nix7
-rwxr-xr-xpkgs/development/tools/yarn2nix/bin/yarn2nix.js144
-rw-r--r--pkgs/development/tools/yarn2nix/default.nix199
-rw-r--r--pkgs/development/tools/yarn2nix/fixup_bin.js45
-rw-r--r--pkgs/development/tools/yarn2nix/package.json19
-rw-r--r--pkgs/development/tools/yarn2nix/yarn.lock11
-rw-r--r--pkgs/development/tools/yarn2nix/yarn.nix23
-rw-r--r--pkgs/development/web/mailcatcher/Gemfile.lock20
-rw-r--r--pkgs/development/web/mailcatcher/gemset.nix65
-rw-r--r--pkgs/development/web/nodejs/v11.nix4
-rw-r--r--pkgs/development/web/postman/default.nix12
-rw-r--r--pkgs/games/assaultcube/assaultcube-next.patch11
-rw-r--r--pkgs/games/assaultcube/default.nix49
-rw-r--r--pkgs/games/assaultcube/launcher.sh20
-rw-r--r--pkgs/games/crispy-doom/default.nix4
-rw-r--r--pkgs/games/eduke32/default.nix98
-rw-r--r--pkgs/games/gscrabble/default.nix40
-rw-r--r--pkgs/games/leela-zero/default.nix6
-rw-r--r--pkgs/games/lugaru/default.nix31
-rw-r--r--pkgs/games/minetest/default.nix6
-rw-r--r--pkgs/games/openmw/default.nix4
-rw-r--r--pkgs/games/openrct2/default.nix8
-rw-r--r--pkgs/games/openttd/default.nix10
-rw-r--r--pkgs/games/torcs/default.nix6
-rw-r--r--pkgs/misc/acpilight/default.nix4
-rw-r--r--pkgs/misc/cups/filters.nix4
-rw-r--r--pkgs/misc/drivers/hplip/default.nix1
-rw-r--r--pkgs/misc/emulators/cdemu/analyzer.nix15
-rw-r--r--pkgs/misc/emulators/cdemu/client.nix8
-rw-r--r--pkgs/misc/emulators/cdemu/daemon.nix8
-rw-r--r--pkgs/misc/emulators/cdemu/gui.nix10
-rw-r--r--pkgs/misc/emulators/cdemu/libmirage.nix15
-rw-r--r--pkgs/misc/emulators/cdemu/vhba.nix4
-rw-r--r--pkgs/misc/emulators/hatari/default.nix6
-rw-r--r--pkgs/misc/emulators/libdsk/default.nix4
-rw-r--r--pkgs/misc/emulators/vbam/default.nix4
-rw-r--r--pkgs/misc/ghostscript/default.nix7
-rw-r--r--pkgs/misc/scrcpy/default.nix19
-rw-r--r--pkgs/misc/vim-plugins/generated.nix324
-rw-r--r--pkgs/misc/vim-plugins/overrides.nix10
-rw-r--r--pkgs/misc/vscode-extensions/default.nix16
-rw-r--r--pkgs/os-specific/linux/batman-adv/alfred.nix4
-rw-r--r--pkgs/os-specific/linux/batman-adv/batctl.nix4
-rw-r--r--pkgs/os-specific/linux/batman-adv/default.nix4
-rw-r--r--pkgs/os-specific/linux/cgmanager/default.nix11
-rw-r--r--pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix10
-rw-r--r--pkgs/os-specific/linux/iputils/build-ninfod-with-openssl.patch13
-rw-r--r--pkgs/os-specific/linux/iputils/default.nix84
-rw-r--r--pkgs/os-specific/linux/kernel/common-config.nix5
-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.0.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing.nix8
-rw-r--r--pkgs/os-specific/linux/libratbag/default.nix4
-rw-r--r--pkgs/os-specific/linux/logitech-udev-rules/default.nix19
-rw-r--r--pkgs/os-specific/linux/mcelog/default.nix4
-rw-r--r--pkgs/os-specific/linux/microcode/intel.nix18
-rw-r--r--pkgs/os-specific/linux/rdma-core/default.nix4
-rw-r--r--pkgs/servers/apache-kafka/default.nix9
-rw-r--r--pkgs/servers/dns/nsd/default.nix4
-rw-r--r--pkgs/servers/dns/pdns-recursor/default.nix4
-rw-r--r--pkgs/servers/home-assistant/appdaemon.nix20
-rw-r--r--pkgs/servers/home-assistant/component-packages.nix1721
-rw-r--r--pkgs/servers/home-assistant/default.nix10
-rw-r--r--pkgs/servers/home-assistant/frontend.nix4
-rw-r--r--pkgs/servers/http/apache-httpd/2.4.nix4
-rw-r--r--pkgs/servers/http/nginx/generic.nix15
-rw-r--r--pkgs/servers/http/nginx/mainline.nix4
-rw-r--r--pkgs/servers/http/nginx/modules.nix25
-rw-r--r--pkgs/servers/irc/ngircd/default.nix4
-rw-r--r--pkgs/servers/mail/dovecot/default.nix4
-rw-r--r--pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix4
-rw-r--r--pkgs/servers/mail/postfix/default.nix4
-rw-r--r--pkgs/servers/mail/rspamd/default.nix4
-rw-r--r--pkgs/servers/matrix-synapse/default.nix4
-rw-r--r--pkgs/servers/mattermost/default.nix6
-rw-r--r--pkgs/servers/mautrix-whatsapp/default.nix6
-rw-r--r--pkgs/servers/mautrix-whatsapp/deps.nix24
-rw-r--r--pkgs/servers/misc/airsonic/default.nix4
-rw-r--r--pkgs/servers/monitoring/grafana/default.nix6
-rw-r--r--pkgs/servers/rippled/default.nix4
-rw-r--r--pkgs/servers/sabnzbd/default.nix4
-rw-r--r--pkgs/servers/sonarr/default.nix4
-rw-r--r--pkgs/servers/web-apps/matomo/default.nix8
-rw-r--r--pkgs/tools/audio/abcmidi/default.nix4
-rw-r--r--pkgs/tools/audio/picotts/default.nix24
-rw-r--r--pkgs/tools/backup/bacula/default.nix4
-rw-r--r--pkgs/tools/backup/dar/default.nix4
-rw-r--r--pkgs/tools/bluetooth/bluez-alsa/default.nix4
-rw-r--r--pkgs/tools/graphics/blur-effect/default.nix33
-rw-r--r--pkgs/tools/graphics/oxipng/default.nix10
-rw-r--r--pkgs/tools/graphics/vulkan-tools/default.nix4
-rw-r--r--pkgs/tools/graphics/xcur2png/default.nix32
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix4
-rw-r--r--pkgs/tools/misc/bdf2psf/default.nix6
-rw-r--r--pkgs/tools/misc/chafa/default.nix45
-rw-r--r--pkgs/tools/misc/chafa/xmlcatalog_patch.patch23
-rw-r--r--pkgs/tools/misc/colord/default.nix1
-rw-r--r--pkgs/tools/misc/direnv/default.nix4
-rw-r--r--pkgs/tools/misc/ffsend/default.nix21
-rw-r--r--pkgs/tools/misc/flashrom/default.nix14
-rw-r--r--pkgs/tools/misc/graylog/default.nix4
-rw-r--r--pkgs/tools/misc/html-proofer/Gemfile.lock32
-rw-r--r--pkgs/tools/misc/html-proofer/gemset.nix88
-rw-r--r--pkgs/tools/misc/ltunify/default.nix19
-rw-r--r--pkgs/tools/misc/minicom/default.nix33
-rw-r--r--pkgs/tools/misc/ms-sys/default.nix4
-rw-r--r--pkgs/tools/misc/nginx-config-formatter/default.nix6
-rw-r--r--pkgs/tools/misc/paps/default.nix29
-rw-r--r--pkgs/tools/misc/parallel/default.nix4
-rw-r--r--pkgs/tools/misc/smenu/default.nix4
-rw-r--r--pkgs/tools/misc/snapper/default.nix4
-rw-r--r--pkgs/tools/misc/ttyplot/default.nix4
-rw-r--r--pkgs/tools/misc/vdirsyncer/default.nix10
-rw-r--r--pkgs/tools/misc/vimpager/build.nix39
-rw-r--r--pkgs/tools/misc/vimpager/default.nix6
-rw-r--r--pkgs/tools/misc/vimpager/latest.nix7
-rw-r--r--pkgs/tools/misc/websocat/default.nix4
-rw-r--r--pkgs/tools/misc/xtitle/default.nix6
-rw-r--r--pkgs/tools/misc/youtube-dl/default.nix4
-rw-r--r--pkgs/tools/networking/dnscrypt-proxy/2.x/default.nix6
-rw-r--r--pkgs/tools/networking/i2p/default.nix4
-rw-r--r--pkgs/tools/networking/network-manager/l2tp/default.nix7
-rw-r--r--pkgs/tools/networking/network-manager/l2tp/fix-paths.patch10
-rw-r--r--pkgs/tools/networking/openvpn/default.nix4
-rw-r--r--pkgs/tools/networking/p2p/tahoe-lafs/default.nix2
-rw-r--r--pkgs/tools/networking/shadowsocks-libev/default.nix8
-rw-r--r--pkgs/tools/networking/whois/default.nix4
-rw-r--r--pkgs/tools/security/browserpass/2.nix43
-rw-r--r--pkgs/tools/security/browserpass/2deps.nix39
-rw-r--r--pkgs/tools/security/browserpass/default.nix80
-rw-r--r--pkgs/tools/security/browserpass/deps.nix84
-rw-r--r--pkgs/tools/security/bundler-audit/Gemfile2
-rw-r--r--pkgs/tools/security/bundler-audit/Gemfile.lock16
-rw-r--r--pkgs/tools/security/bundler-audit/default.nix26
-rw-r--r--pkgs/tools/security/bundler-audit/gemset.nix19
-rw-r--r--pkgs/tools/security/clamav/default.nix4
-rw-r--r--pkgs/tools/security/lynis/default.nix4
-rw-r--r--pkgs/tools/security/modsecurity/default.nix4
-rw-r--r--pkgs/tools/security/sslscan/default.nix4
-rw-r--r--pkgs/tools/security/zzuf/default.nix25
-rw-r--r--pkgs/tools/system/hwinfo/default.nix4
-rw-r--r--pkgs/tools/system/inxi/default.nix4
-rw-r--r--pkgs/tools/system/logcheck/default.nix4
-rw-r--r--pkgs/tools/system/rsyslog/default.nix4
-rw-r--r--pkgs/tools/system/syslog-ng/default.nix4
-rw-r--r--pkgs/tools/text/poedit/default.nix40
-rw-r--r--pkgs/top-level/all-packages.nix162
-rw-r--r--pkgs/top-level/coq-packages.nix1
-rw-r--r--pkgs/top-level/perl-packages.nix14
-rw-r--r--pkgs/top-level/php-packages.nix18
-rw-r--r--pkgs/top-level/python-packages.nix19
-rw-r--r--pkgs/top-level/release-cross.nix1
549 files changed, 11476 insertions, 6307 deletions
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 4d5f0f27e5c5..a6a07deae497 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -58,11 +58,11 @@
 /doc/languages-frameworks/python.section.md     @FRidh
 
 # Haskell
-/pkgs/development/compilers/ghc                       @peti @basvandijk
-/pkgs/development/haskell-modules                     @peti @basvandijk
-/pkgs/development/haskell-modules/default.nix         @peti @basvandijk
-/pkgs/development/haskell-modules/generic-builder.nix @peti @basvandijk
-/pkgs/development/haskell-modules/hoogle.nix          @peti @basvandijk
+/pkgs/development/compilers/ghc                       @basvandijk
+/pkgs/development/haskell-modules                     @basvandijk
+/pkgs/development/haskell-modules/default.nix         @basvandijk
+/pkgs/development/haskell-modules/generic-builder.nix @basvandijk
+/pkgs/development/haskell-modules/hoogle.nix          @basvandijk
 
 # Perl
 /pkgs/development/interpreters/perl @volth
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 7b4ec78e4090..834a2e81c132 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -1,3 +1,4 @@
+<!-- Nixpkgs has a lot of new incoming Pull Requests, but not enough people to review this constant stream. Even if you aren't a committer, we would appreciate reviews of other PRs, especially simple ones like package updates. Just testing the relevant package/service and leaving a comment saying what you tested, how you tested it and whether it worked would be great. List of open PRs: <https://github.com/NixOS/nixpkgs/pulls>, for more about reviewing contributions: <https://hydra.nixos.org/job/nixpkgs/trunk/manual/latest/download/1/nixpkgs/manual.html#sec-reviewing-contributions>. Reviewing isn't mandatory, but it would help out a lot and reduce the average time-to-merge for all of us. Thanks a lot if you do! -->
 ###### Motivation for this change
 
 
diff --git a/doc/functions/dockertools.xml b/doc/functions/dockertools.xml
index 75db0bd3918c..cb32db74b424 100644
--- a/doc/functions/dockertools.xml
+++ b/doc/functions/dockertools.xml
@@ -417,10 +417,11 @@ pkgs.dockerTools.buildLayeredImage {
 pullImage {
   imageName = "nixos/nix"; <co xml:id='ex-dockerTools-pullImage-1' />
   imageDigest = "sha256:20d9485b25ecfd89204e843a962c1bd70e9cc6858d65d7f5fadc340246e2116b"; <co xml:id='ex-dockerTools-pullImage-2' />
-  finalImageTag = "1.11";  <co xml:id='ex-dockerTools-pullImage-3' />
-  sha256 = "0mqjy3zq2v6rrhizgb9nvhczl87lcfphq9601wcprdika2jz7qh8"; <co xml:id='ex-dockerTools-pullImage-4' />
-  os = "linux"; <co xml:id='ex-dockerTools-pullImage-5' />
-  arch = "x86_64"; <co xml:id='ex-dockerTools-pullImage-6' />
+  finalImageName = "nix"; <co xml:id='ex-dockerTools-pullImage-3' />
+  finalImageTag = "1.11";  <co xml:id='ex-dockerTools-pullImage-4' />
+  sha256 = "0mqjy3zq2v6rrhizgb9nvhczl87lcfphq9601wcprdika2jz7qh8"; <co xml:id='ex-dockerTools-pullImage-5' />
+  os = "linux"; <co xml:id='ex-dockerTools-pullImage-6' />
+  arch = "x86_64"; <co xml:id='ex-dockerTools-pullImage-7' />
 }
 </programlisting>
   </example>
@@ -452,25 +453,33 @@ sha256:20d9485b25ecfd89204e843a962c1bd70e9cc6858d65d7f5fadc340246e2116b
    </callout>
    <callout arearefs='ex-dockerTools-pullImage-3'>
     <para>
+     <varname>finalImageName</varname>, if specified, this is the name of the
+     image to be created. Note it is never used to fetch the image since we
+     prefer to rely on the immutable digest ID. By default it's equal to
+     <varname>imageName</varname>.
+    </para>
+   </callout>
+   <callout arearefs='ex-dockerTools-pullImage-4'>
+    <para>
      <varname>finalImageTag</varname>, if specified, this is the tag of the
      image to be created. Note it is never used to fetch the image since we
      prefer to rely on the immutable digest ID. By default it's
      <literal>latest</literal>.
     </para>
    </callout>
-   <callout arearefs='ex-dockerTools-pullImage-4'>
+   <callout arearefs='ex-dockerTools-pullImage-5'>
     <para>
      <varname>sha256</varname> is the checksum of the whole fetched image. This
      argument is required.
     </para>
    </callout>
-   <callout arearefs='ex-dockerTools-pullImage-5'>
+   <callout arearefs='ex-dockerTools-pullImage-6'>
     <para>
      <varname>os</varname>, if specified, is the operating system of the
      fetched image. By default it's <literal>linux</literal>.
     </para>
    </callout>
-   <callout arearefs='ex-dockerTools-pullImage-6'>
+   <callout arearefs='ex-dockerTools-pullImage-7'>
     <para>
      <varname>arch</varname>, if specified, is the cpu architecture of the
      fetched image. By default it's <literal>x86_64</literal>.
diff --git a/doc/multiple-output.xml b/doc/multiple-output.xml
index d18e282c5bd3..d0247e081f99 100644
--- a/doc/multiple-output.xml
+++ b/doc/multiple-output.xml
@@ -101,6 +101,13 @@
    contain <varname>$outputBin</varname> and <varname>$outputLib</varname> are
    also added. (See <xref linkend="multiple-output-file-type-groups" />.)
   </para>
+
+  <para>
+   In some cases it may be desirable to combine different outputs under a
+   single store path. A function <literal>symlinkJoin</literal> can be used to
+   do this. (Note that it may negate some closure size benefits of using a
+   multiple-output package.)
+  </para>
  </section>
  <section xml:id="sec-multiple-outputs-">
   <title>Writing a split derivation</title>
diff --git a/doc/package-notes.xml b/doc/package-notes.xml
index dfdada3d28c2..169f70283e6d 100644
--- a/doc/package-notes.xml
+++ b/doc/package-notes.xml
@@ -887,4 +887,31 @@ citrix_receiver.override {
    </para>
   </section>
  </section>
+ <section xml:id="dlib">
+  <title>DLib</title>
+
+  <para>
+    <link xlink:href="http://dlib.net/">DLib</link> is a modern, C++-based toolkit which
+    provides several machine learning algorithms.
+  </para>
+
+  <section xml:id="compiling-without-avx-support">
+   <title>Compiling without AVX support</title>
+
+   <para>
+     Especially older CPUs don't support
+     <link xlink:href="https://en.wikipedia.org/wiki/Advanced_Vector_Extensions">AVX</link>
+     (<abbrev>Advanced Vector Extensions</abbrev>) instructions that are used by DLib to
+     optimize their algorithms.
+   </para>
+
+   <para>
+    On the affected hardware errors like <literal>Illegal instruction</literal> will occur.
+    In those cases AVX support needs to be disabled:
+<programlisting>self: super: {
+  dlib = super.dlib.override { avxSupport = false; };
+}</programlisting>
+   </para>
+  </section>
+ </section>
 </chapter>
diff --git a/lib/lists.nix b/lib/lists.nix
index be541427c247..9f2ccc00cafe 100644
--- a/lib/lists.nix
+++ b/lib/lists.nix
@@ -7,7 +7,7 @@ let
 in
 rec {
 
-  inherit (builtins) head tail length isList elemAt concatLists filter elem genList;
+  inherit (builtins) head tail length isList elemAt concatLists filter elem genList map;
 
   /*  Create a list consisting of a single element.  `singleton x` is
       sometimes more convenient with respect to indentation than `[x]`
diff --git a/lib/systems/default.nix b/lib/systems/default.nix
index b3f7363fe612..9c6b51400dcb 100644
--- a/lib/systems/default.nix
+++ b/lib/systems/default.nix
@@ -34,6 +34,7 @@ rec {
         else if final.isUClibc              then "uclibc"
         else if final.isAndroid             then "bionic"
         else if final.isLinux /* default */ then "glibc"
+        else if final.isMsp430              then "newlib"
         else if final.isAvr                 then "avrlibc"
         # TODO(@Ericson2314) think more about other operating systems
         else                                     "native/impure";
diff --git a/lib/systems/examples.nix b/lib/systems/examples.nix
index ac1633a1a15f..27a32181df88 100644
--- a/lib/systems/examples.nix
+++ b/lib/systems/examples.nix
@@ -102,6 +102,11 @@ rec {
   riscv64 = riscv "64";
   riscv32 = riscv "32";
 
+  msp430 = {
+    config = "msp430-elf";
+    libc = "newlib";
+  };
+
   avr = {
     config = "avr";
   };
diff --git a/lib/systems/inspect.nix b/lib/systems/inspect.nix
index 932f8fd1e536..f8d5ca84d7aa 100644
--- a/lib/systems/inspect.nix
+++ b/lib/systems/inspect.nix
@@ -20,6 +20,7 @@ rec {
     isRiscV        = { cpu = { family = "riscv"; }; };
     isSparc        = { cpu = { family = "sparc"; }; };
     isWasm         = { cpu = { family = "wasm"; }; };
+    isMsp430       = { cpu = { family = "msp430"; }; };
     isAvr          = { cpu = { family = "avr"; }; };
     isAlpha        = { cpu = { family = "alpha"; }; };
 
diff --git a/lib/systems/parse.nix b/lib/systems/parse.nix
index fab50bc0ebd7..8cc7d3ae271f 100644
--- a/lib/systems/parse.nix
+++ b/lib/systems/parse.nix
@@ -109,6 +109,7 @@ rec {
     
     alpha    = { bits = 64; significantByte = littleEndian; family = "alpha"; };
 
+    msp430   = { bits = 16; significantByte = littleEndian; family = "msp430"; };
     avr      = { bits = 8; family = "avr"; };
   };
 
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index e59cf106a75b..be1a3e2aaff2 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -147,6 +147,11 @@
     github = "aepsil0n";
     name = "Eduard Bopp";
   };
+  aerialx = {
+    email = "aaron+nixos@aaronlindsay.com";
+    github = "AerialX";
+    name = "Aaron Lindsay";
+  };
   aespinosa = {
     email = "allan.espinosa@outlook.com";
     github = "aespinosa";
@@ -335,6 +340,11 @@
     github = "andrew-d";
     name = "Andrew Dunham";
   };
+  andrewchambers = {
+    email = "ac@acha.ninja";
+    github = "andrewchambers";
+    name = "Andrew Chambers";
+  };
   andrewrk = {
     email = "superjoe30@gmail.com";
     github = "andrewrk";
@@ -3509,6 +3519,11 @@
     github = "olynch";
     name = "Owen Lynch";
   };
+  omnipotententity = {
+    email = "omnipotententity@gmail.com";
+    github = "omnipotententity";
+    name = "Michael Reilly";
+  };
   OPNA2608 = {
     email = "christoph.neidahl@gmail.com";
     github = "OPNA2608";
@@ -5391,4 +5406,9 @@
     github = "minijackson";
     name = "Rémi Nicole";
   };
+  shazow = {
+    email = "andrey.petrov@shazow.net";
+    github = "shazow";
+    name = "Andrey Petrov";
+  };
 }
diff --git a/maintainers/scripts/fetch-kde-qt.sh b/maintainers/scripts/fetch-kde-qt.sh
index 1357f87aaa5d..a267a5fa8715 100755
--- a/maintainers/scripts/fetch-kde-qt.sh
+++ b/maintainers/scripts/fetch-kde-qt.sh
@@ -14,12 +14,13 @@ fi
 
 tmp=$(mktemp -d)
 pushd $tmp >/dev/null
-wget -nH -r -c --no-parent "${WGET_ARGS[@]}" >/dev/null
+wget -nH -r -c --no-parent "${WGET_ARGS[@]}" -A '*.tar.xz.sha256' -A '*.mirrorlist' >/dev/null
+find -type f -name '*.mirrorlist' -delete
 
 csv=$(mktemp)
 find . -type f | while read src; do
     # Sanitize file name
-    filename=$(basename "$src" | tr '@' '_')
+    filename=$(gawk '{ print $2 }' "$src" | tr '@' '_')
     nameVersion="${filename%.tar.*}"
     name=$(echo "$nameVersion" | sed -e 's,-[[:digit:]].*,,' | sed -e 's,-opensource-src$,,' | sed -e 's,-everywhere-src$,,')
     version=$(echo "$nameVersion" | sed -e 's,^\([[:alpha:]][[:alnum:]]*-\)\+,,')
@@ -38,8 +39,8 @@ gawk -F , "{ print \$1 }" $csv | sort | uniq | while read name; do
     latestVersion=$(echo "$versions" | sort -rV | head -n 1)
     src=$(gawk -F , "/^$name,$latestVersion,/ { print \$3 }" $csv)
     filename=$(gawk -F , "/^$name,$latestVersion,/ { print \$4 }" $csv)
-    url="${src:2}"
-    sha256=$(nix-hash --type sha256 --base32 --flat "$src")
+    url="$(dirname "${src:2}")/$filename"
+    sha256=$(gawk '{ print $1 }' "$src")
     cat >>"$SRCS" <<EOF
   $name = {
     version = "$latestVersion";
diff --git a/nixos/doc/manual/release-notes/rl-1903.xml b/nixos/doc/manual/release-notes/rl-1903.xml
index 7d40637df931..7c94f6e9473e 100644
--- a/nixos/doc/manual/release-notes/rl-1903.xml
+++ b/nixos/doc/manual/release-notes/rl-1903.xml
@@ -68,6 +68,17 @@
      <xref linkend="sec-kubernetes"/> for details.
     </para>
    </listitem>
+   <listitem>
+     <para>
+       There is now a set of <option>confinement</option> options for
+       <option>systemd.services</option>, which allows to restrict services
+       into a <citerefentry>
+        <refentrytitle>chroot</refentrytitle>
+        <manvolnum>2</manvolnum>
+      </citerefentry>ed environment that only contains the store paths from
+      the runtime closure of the service.
+     </para>
+   </listitem>
   </itemizedlist>
  </section>
 
@@ -516,6 +527,13 @@
      Graylog</link> for details.
     </para>
    </listitem>
+   <listitem>
+    <para>
+      The option <literal>users.ldap.bind.password</literal> was renamed to <literal>users.ldap.bind.passwordFile</literal>,
+      and needs to be readable by the <literal>nslcd</literal> user.
+      Same applies to the new <literal>users.ldap.daemon.rootpwmodpwFile</literal> option.
+    </para>
+   </listitem>
   </itemizedlist>
  </section>
 
diff --git a/nixos/doc/manual/release-notes/rl-1909.xml b/nixos/doc/manual/release-notes/rl-1909.xml
index 97a381020139..2cfaec49c02e 100644
--- a/nixos/doc/manual/release-notes/rl-1909.xml
+++ b/nixos/doc/manual/release-notes/rl-1909.xml
@@ -99,6 +99,16 @@
      and fix all the bugs it uncovers.
     </para>
    </listitem>
+   <listitem>
+    <para>
+     The <literal>vlc</literal> package gained support for Chromecast
+     streaming, enabled by default. TCP port 8010 must be open for it to work,
+     so something like <literal>networking.firewall.allowedTCPPorts = [ 8010
+     ];</literal> may be required in your configuration. Also consider enabling
+     <link xlink:href="https://nixos.wiki/wiki/Accelerated_Video_Playback">
+     Accelerated Video Playback</link> for better transcoding performance.
+    </para>
+   </listitem>
   </itemizedlist>
  </section>
 </section>
diff --git a/nixos/modules/config/ldap.nix b/nixos/modules/config/ldap.nix
index f65a3fc50d54..e008497a2a6e 100644
--- a/nixos/modules/config/ldap.nix
+++ b/nixos/modules/config/ldap.nix
@@ -27,25 +27,29 @@ let
     '';
   };
 
-  nslcdConfig = {
-    target = "nslcd.conf";
-    source = writeText "nslcd.conf" ''
-      uid nslcd
-      gid nslcd
-      uri ${cfg.server}
-      base ${cfg.base}
-      timelimit ${toString cfg.timeLimit}
-      bind_timelimit ${toString cfg.bind.timeLimit}
-      ${optionalString (cfg.bind.distinguishedName != "")
-        "binddn ${cfg.bind.distinguishedName}" }
-      ${optionalString (cfg.daemon.rootpwmoddn != "")
-        "rootpwmoddn ${cfg.daemon.rootpwmoddn}" }
-      ${optionalString (cfg.daemon.extraConfig != "") cfg.daemon.extraConfig }
-    '';
-  };
-
-  insertLdapPassword = !config.users.ldap.daemon.enable &&
-    config.users.ldap.bind.distinguishedName != "";
+  nslcdConfig = writeText "nslcd.conf" ''
+    uid nslcd
+    gid nslcd
+    uri ${cfg.server}
+    base ${cfg.base}
+    timelimit ${toString cfg.timeLimit}
+    bind_timelimit ${toString cfg.bind.timeLimit}
+    ${optionalString (cfg.bind.distinguishedName != "")
+      "binddn ${cfg.bind.distinguishedName}" }
+    ${optionalString (cfg.daemon.rootpwmoddn != "")
+      "rootpwmoddn ${cfg.daemon.rootpwmoddn}" }
+    ${optionalString (cfg.daemon.extraConfig != "") cfg.daemon.extraConfig }
+  '';
+
+  # nslcd normally reads configuration from /etc/nslcd.conf.
+  # this file might contain secrets. We append those at runtime,
+  # so redirect its location to something more temporary.
+  nslcdWrapped = runCommandNoCC "nslcd-wrapped" { nativeBuildInputs = [ makeWrapper ]; } ''
+    mkdir -p $out/bin
+    makeWrapper ${nss_pam_ldapd}/sbin/nslcd $out/bin/nslcd \
+      --set LD_PRELOAD    "${pkgs.libredirect}/lib/libredirect.so" \
+      --set NIX_REDIRECTS "/etc/nslcd.conf=/run/nslcd/nslcd.conf"
+  '';
 
 in
 
@@ -139,13 +143,13 @@ in
           '';
         };
 
-        rootpwmodpw = mkOption {
+        rootpwmodpwFile = mkOption {
           default = "";
           example = "/run/keys/nslcd.rootpwmodpw";
           type = types.str;
           description = ''
-            The path to a file containing the credentials with which
-            to bind to the LDAP server if the root user tries to change a user's password
+            The path to a file containing the credentials with which to bind to
+            the LDAP server if the root user tries to change a user's password.
           '';
         };
       };
@@ -161,7 +165,7 @@ in
           '';
         };
 
-        password = mkOption {
+        passwordFile = mkOption {
           default = "/etc/ldap/bind.password";
           type = types.str;
           description = ''
@@ -220,14 +224,14 @@ in
 
   config = mkIf cfg.enable {
 
-    environment.etc = if cfg.daemon.enable then [nslcdConfig] else [ldapConfig];
+    environment.etc = optional (!cfg.daemon.enable) ldapConfig;
 
-    system.activationScripts = mkIf insertLdapPassword {
+    system.activationScripts = mkIf (!cfg.daemon.enable) {
       ldap = stringAfter [ "etc" "groups" "users" ] ''
-        if test -f "${cfg.bind.password}" ; then
+        if test -f "${cfg.bind.passwordFile}" ; then
           umask 0077
           conf="$(mktemp)"
-          printf 'bindpw %s\n' "$(cat ${cfg.bind.password})" |
+          printf 'bindpw %s\n' "$(cat ${cfg.bind.passwordFile})" |
           cat ${ldapConfig.source} - >"$conf"
           mv -fT "$conf" /etc/ldap.conf
         fi
@@ -251,7 +255,6 @@ in
     };
 
     systemd.services = mkIf cfg.daemon.enable {
-
       nslcd = {
         wantedBy = [ "multi-user.target" ];
 
@@ -259,32 +262,32 @@ in
           umask 0077
           conf="$(mktemp)"
           {
-            cat ${nslcdConfig.source}
-            test -z '${cfg.bind.distinguishedName}' -o ! -f '${cfg.bind.password}' ||
-            printf 'bindpw %s\n' "$(cat '${cfg.bind.password}')"
-            test -z '${cfg.daemon.rootpwmoddn}' -o ! -f '${cfg.daemon.rootpwmodpw}' ||
-            printf 'rootpwmodpw %s\n' "$(cat '${cfg.daemon.rootpwmodpw}')"
+            cat ${nslcdConfig}
+            test -z '${cfg.bind.distinguishedName}' -o ! -f '${cfg.bind.passwordFile}' ||
+            printf 'bindpw %s\n' "$(cat '${cfg.bind.passwordFile}')"
+            test -z '${cfg.daemon.rootpwmoddn}' -o ! -f '${cfg.daemon.rootpwmodpwFile}' ||
+            printf 'rootpwmodpw %s\n' "$(cat '${cfg.daemon.rootpwmodpwFile}')"
           } >"$conf"
-          mv -fT "$conf" /etc/nslcd.conf
+          mv -fT "$conf" /run/nslcd/nslcd.conf
         '';
-
-        # NOTE: because one cannot pass a custom config path to `nslcd`
-        # (which is only able to use `/etc/nslcd.conf`)
-        # changes in `nslcdConfig` won't change `serviceConfig`,
-        # and thus won't restart `nslcd`.
-        # Therefore `restartTriggers` is used on `/etc/nslcd.conf`.
-        restartTriggers = [ nslcdConfig.source ];
+        restartTriggers = [ "/run/nslcd/nslcd.conf" ];
 
         serviceConfig = {
-          ExecStart = "${nss_pam_ldapd}/sbin/nslcd";
+          ExecStart = "${nslcdWrapped}/bin/nslcd";
           Type = "forking";
-          PIDFile = "/run/nslcd/nslcd.pid";
           Restart = "always";
+          User = "nslcd";
+          Group = "nslcd";
           RuntimeDirectory = [ "nslcd" ];
+          PIDFile = "/run/nslcd/nslcd.pid";
         };
       };
 
     };
 
   };
+
+  imports =
+    [ (mkRenamedOptionModule [ "users" "ldap" "bind" "password"] [ "users" "ldap" "bind" "passwordFile"])
+    ];
 }
diff --git a/nixos/modules/hardware/all-firmware.nix b/nixos/modules/hardware/all-firmware.nix
index 69cc22aaa34b..c79be810eefd 100644
--- a/nixos/modules/hardware/all-firmware.nix
+++ b/nixos/modules/hardware/all-firmware.nix
@@ -38,6 +38,12 @@ in {
         firmwareLinuxNonfree
         intel2200BGFirmware
         rtl8192su-firmware
+        rt5677-firmware
+        rtl8723bs-firmware
+        rtlwifi_new-firmware
+        zd1211fw
+        alsa-firmware
+        openelec-dvb-firmware
       ] ++ optional (pkgs.stdenv.hostPlatform.isAarch32 || pkgs.stdenv.hostPlatform.isAarch64) raspberrypiWirelessFirmware
         ++ optionals (versionOlder config.boot.kernelPackages.kernel.version "4.13") [
         rtl8723bs-firmware
@@ -54,6 +60,10 @@ in {
       }];
       hardware.firmware = with pkgs; [
         broadcom-bt-firmware
+        b43Firmware_5_1_138
+        b43Firmware_6_30_163_46
+        b43FirmwareCutter
+        facetimehd-firmware
       ];
     })
   ];
diff --git a/nixos/modules/hardware/logitech.nix b/nixos/modules/hardware/logitech.nix
new file mode 100644
index 000000000000..d6f43bdddcc8
--- /dev/null
+++ b/nixos/modules/hardware/logitech.nix
@@ -0,0 +1,28 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.hardware.logitech;
+
+in {
+  options.hardware.logitech = {
+    enable = mkEnableOption "Logitech Devices";
+
+    enableGraphical = mkOption {
+      type = types.bool;
+      default = false;
+      description = "Enable graphical support applications.";
+    };
+  };
+
+  config = lib.mkIf cfg.enable {
+    environment.systemPackages = [
+      pkgs.ltunify
+    ] ++ lib.optional cfg.enableGraphical pkgs.solaar;
+
+    # ltunifi and solaar both provide udev rules but the most up-to-date have been split
+    # out into a dedicated derivation
+    services.udev.packages = with pkgs; [ logitech-udev-rules ];
+  };
+}
diff --git a/nixos/modules/installer/cd-dvd/iso-image.nix b/nixos/modules/installer/cd-dvd/iso-image.nix
index d71e06202e30..fd780be20825 100644
--- a/nixos/modules/installer/cd-dvd/iso-image.nix
+++ b/nixos/modules/installer/cd-dvd/iso-image.nix
@@ -88,7 +88,7 @@ let
   #     result in incorrect boot entries.
 
   baseIsolinuxCfg = ''
-    SERIAL 0 38400
+    SERIAL 0 115200
     TIMEOUT ${builtins.toString syslinuxTimeout}
     UI vesamenu.c32
     MENU TITLE NixOS
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index dc571602581b..03e5f537c224 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -46,6 +46,7 @@
   ./hardware/sensor/iio.nix
   ./hardware/ksm.nix
   ./hardware/ledger.nix
+  ./hardware/logitech.nix
   ./hardware/mcelog.nix
   ./hardware/network/b43.nix
   ./hardware/nitrokey.nix
@@ -172,6 +173,7 @@
   ./security/rtkit.nix
   ./security/wrappers/default.nix
   ./security/sudo.nix
+  ./security/systemd-confinement.nix
   ./services/admin/oxidized.nix
   ./services/admin/salt/master.nix
   ./services/admin/salt/minion.nix
@@ -349,6 +351,7 @@
   ./services/mail/exim.nix
   ./services/mail/freepops.nix
   ./services/mail/mail.nix
+  ./services/mail/mailcatcher.nix
   ./services/mail/mailhog.nix
   ./services/mail/mlmmj.nix
   ./services/mail/offlineimap.nix
@@ -630,6 +633,7 @@
   ./services/networking/prosody.nix
   ./services/networking/quagga.nix
   ./services/networking/quassel.nix
+  ./services/networking/quicktun.nix
   ./services/networking/racoon.nix
   ./services/networking/radicale.nix
   ./services/networking/radvd.nix
diff --git a/nixos/modules/programs/browserpass.nix b/nixos/modules/programs/browserpass.nix
index 5f8a44a9848e..47b9d1ccb1f6 100644
--- a/nixos/modules/programs/browserpass.nix
+++ b/nixos/modules/programs/browserpass.nix
@@ -4,15 +4,34 @@ with lib;
 
 {
 
-  ###### interface
-  options = {
-    programs.browserpass.enable = mkEnableOption "the NativeMessaging configuration for Chromium, Chrome, and Vivaldi.";
-  };
+  options.programs.browserpass.enable = mkEnableOption "Browserpass native messaging host";
 
-  ###### implementation
   config = mkIf config.programs.browserpass.enable {
-    environment.systemPackages = [ pkgs.browserpass ];
-    environment.etc = {
+    environment.etc = let
+      appId = "com.github.browserpass.native.json";
+      source = part: "${pkgs.browserpass}/lib/browserpass/${part}/${appId}";
+    in {
+      # chromium
+      "chromium/native-messaging-hosts/${appId}".source = source "hosts/chromium";
+      "chromium/policies/managed/${appId}".source = source "policies/chromium";
+
+      # chrome
+      "opt/chrome/native-messaging-hosts/${appId}".source = source "hosts/chromium";
+      "opt/chrome/policies/managed/${appId}".source = source "policies/chromium";
+
+      # vivaldi
+      "opt/vivaldi/native-messaging-hosts/${appId}".source = source "hosts/chromium";
+      "opt/vivaldi/policies/managed/${appId}".source = source "policies/chromium";
+
+      # brave
+      "opt/brave/native-messaging-hosts/${appId}".source = source "hosts/chromium";
+      "opt/brave/policies/managed/${appId}".source = source "policies/chromium";
+    }
+    # As with the v2 backwards compatibility in the pkgs.browserpass
+    # declaration, this part can be removed once the browser extension
+    # auto-updates to v3 (planned 2019-04-13, see
+    # https://github.com/browserpass/browserpass-native/issues/31)
+    // {
       "chromium/native-messaging-hosts/com.dannyvankooten.browserpass.json".source = "${pkgs.browserpass}/etc/chrome-host.json";
       "chromium/policies/managed/com.dannyvankooten.browserpass.json".source = "${pkgs.browserpass}/etc/chrome-policy.json";
       "opt/chrome/native-messaging-hosts/com.dannyvankooten.browserpass.json".source = "${pkgs.browserpass}/etc/chrome-host.json";
diff --git a/nixos/modules/programs/gnupg.nix b/nixos/modules/programs/gnupg.nix
index 22521280e936..9618d61a1f5b 100644
--- a/nixos/modules/programs/gnupg.nix
+++ b/nixos/modules/programs/gnupg.nix
@@ -11,6 +11,15 @@ in
 {
 
   options.programs.gnupg = {
+    package = mkOption {
+      type = types.package;
+      default = pkgs.gnupg;
+      defaultText = "pkgs.gnupg";
+      description = ''
+        The gpg package that should be used.
+      '';
+    };
+
     agent.enable = mkOption {
       type = types.bool;
       default = false;
@@ -75,7 +84,7 @@ in
       wantedBy = [ "sockets.target" ];
     };
 
-    systemd.packages = [ pkgs.gnupg ];
+    systemd.packages = [ cfg.package ];
 
     environment.interactiveShellInit = ''
       # Bind gpg-agent to this TTY if gpg commands are used.
@@ -84,12 +93,12 @@ in
     '' + (optionalString cfg.agent.enableSSHSupport ''
       # SSH agent protocol doesn't support changing TTYs, so bind the agent
       # to every new TTY.
-      ${pkgs.gnupg}/bin/gpg-connect-agent --quiet updatestartuptty /bye > /dev/null
+      ${cfg.package}/bin/gpg-connect-agent --quiet updatestartuptty /bye > /dev/null
     '');
 
     environment.extraInit = mkIf cfg.agent.enableSSHSupport ''
       if [ -z "$SSH_AUTH_SOCK" ]; then
-        export SSH_AUTH_SOCK=$(${pkgs.gnupg}/bin/gpgconf --list-dirs agent-ssh-socket)
+        export SSH_AUTH_SOCK=$(${cfg.package}/bin/gpgconf --list-dirs agent-ssh-socket)
       fi
     '';
 
diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix
index 7fb58a2b8002..325f92308402 100644
--- a/nixos/modules/rename.nix
+++ b/nixos/modules/rename.nix
@@ -4,26 +4,12 @@ with lib;
 
 {
   imports = [
-    # !!! These were renamed the other way, but got reverted later.
-    # !!! Drop these before 18.09 is released.
-    (mkRenamedOptionModule [ "system" "nixos" "stateVersion" ] [ "system" "stateVersion" ])
-    (mkRenamedOptionModule [ "system" "nixos" "defaultChannel" ] [ "system" "defaultChannel" ])
-
-    (mkRenamedOptionModule [ "environment" "x11Packages" ] [ "environment" "systemPackages" ])
-    (mkRenamedOptionModule [ "environment" "enableBashCompletion" ] [ "programs" "bash" "enableCompletion" ])
-    (mkRenamedOptionModule [ "environment" "nix" ] [ "nix" "package" ])
-    (mkRenamedOptionModule [ "fonts" "enableFontConfig" ] [ "fonts" "fontconfig" "enable" ])
-    (mkRenamedOptionModule [ "fonts" "extraFonts" ] [ "fonts" "fonts" ])
-
-    (mkRenamedOptionModule [ "networking" "enableWLAN" ] [ "networking" "wireless" "enable" ])
     (mkRenamedOptionModule [ "networking" "enableRT73Firmware" ] [ "hardware" "enableRedistributableFirmware" ])
     (mkRenamedOptionModule [ "networking" "enableIntel3945ABGFirmware" ] [ "hardware" "enableRedistributableFirmware" ])
     (mkRenamedOptionModule [ "networking" "enableIntel2100BGFirmware" ] [ "hardware" "enableRedistributableFirmware" ])
     (mkRenamedOptionModule [ "networking" "enableRalinkFirmware" ] [ "hardware" "enableRedistributableFirmware" ])
     (mkRenamedOptionModule [ "networking" "enableRTL8192cFirmware" ] [ "hardware" "enableRedistributableFirmware" ])
     (mkRenamedOptionModule [ "networking" "networkmanager" "useDnsmasq" ] [ "networking" "networkmanager" "dns" ])
-
-    (mkRenamedOptionModule [ "services" "cadvisor" "host" ] [ "services" "cadvisor" "listenAddress" ])
     (mkChangedOptionModule [ "services" "printing" "gutenprint" ] [ "services" "printing" "drivers" ]
       (config:
         let enabled = getAttrFromPath [ "services" "printing" "gutenprint" ] config;
@@ -33,11 +19,7 @@ with lib;
         let value = getAttrFromPath [ "services" "ddclient" "domain" ] config;
         in if value != "" then [ value ] else []))
     (mkRemovedOptionModule [ "services" "ddclient" "homeDir" ] "")
-    (mkRenamedOptionModule [ "services" "elasticsearch" "host" ] [ "services" "elasticsearch" "listenAddress" ])
-    (mkRenamedOptionModule [ "services" "graphite" "api" "host" ] [ "services" "graphite" "api" "listenAddress" ])
-    (mkRenamedOptionModule [ "services" "graphite" "web" "host" ] [ "services" "graphite" "web" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "i2pd" "extIp" ] [ "services" "i2pd" "address" ])
-    (mkRenamedOptionModule [ "services" "kibana" "host" ] [ "services" "kibana" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "admissionControl" ] [ "services" "kubernetes" "apiserver" "enableAdmissionPlugins" ])
     (mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "address" ] ["services" "kubernetes" "apiserver" "bindAddress"])
     (mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "port" ] ["services" "kubernetes" "apiserver" "insecurePort"])
@@ -54,7 +36,6 @@ with lib;
     (mkRenamedOptionModule [ "services" "kubernetes" "proxy" "address" ] ["services" "kubernetes" "proxy" "bindAddress"])
     (mkRemovedOptionModule [ "services" "kubernetes" "verbose" ] "")
     (mkRenamedOptionModule [ "services" "logstash" "address" ] [ "services" "logstash" "listenAddress" ])
-    (mkRenamedOptionModule [ "services" "mpd" "network" "host" ] [ "services" "mpd" "network" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "neo4j" "host" ] [ "services" "neo4j" "defaultListenAddress" ])
     (mkRenamedOptionModule [ "services" "neo4j" "listenAddress" ] [ "services" "neo4j" "defaultListenAddress" ])
     (mkRenamedOptionModule [ "services" "neo4j" "enableBolt" ] [ "services" "neo4j" "bolt" "enable" ])
@@ -64,10 +45,6 @@ with lib;
     (mkRemovedOptionModule [ "services" "neo4j" "port" ] "Use services.neo4j.http.listenAddress instead.")
     (mkRemovedOptionModule [ "services" "neo4j" "boltPort" ] "Use services.neo4j.bolt.listenAddress instead.")
     (mkRemovedOptionModule [ "services" "neo4j" "httpsPort" ] "Use services.neo4j.https.listenAddress instead.")
-    (mkRenamedOptionModule [ "services" "shout" "host" ] [ "services" "shout" "listenAddress" ])
-    (mkRenamedOptionModule [ "services" "sslh" "host" ] [ "services" "sslh" "listenAddress" ])
-    (mkRenamedOptionModule [ "services" "statsd" "host" ] [ "services" "statsd" "listenAddress" ])
-    (mkRenamedOptionModule [ "services" "subsonic" "host" ] [ "services" "subsonic" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "tor" "relay" "portSpec" ] [ "services" "tor" "relay" "port" ])
     (mkRenamedOptionModule [ "services" "vmwareGuest" ] [ "virtualisation" "vmware" "guest" ])
     (mkRenamedOptionModule [ "jobs" ] [ "systemd" "services" ])
@@ -91,82 +68,31 @@ with lib;
     (mkRenamedOptionModule [ "services" "xserver" "displayManager" "logToJournal" ] [ "services" "xserver" "displayManager" "job" "logToJournal" ])
 
     # Old Grub-related options.
-    (mkRenamedOptionModule [ "boot" "initrd" "extraKernelModules" ] [ "boot" "initrd" "kernelModules" ])
-    (mkRenamedOptionModule [ "boot" "extraKernelParams" ] [ "boot" "kernelParams" ])
     (mkRenamedOptionModule [ "boot" "loader" "grub" "timeout" ] [ "boot" "loader" "timeout" ])
     (mkRenamedOptionModule [ "boot" "loader" "gummiboot" "timeout" ] [ "boot" "loader" "timeout" ])
 
-    # smartd
-    (mkRenamedOptionModule [ "services" "smartd" "deviceOpts" ] [ "services" "smartd" "defaults" "monitored" ])
-
     # OpenSSH
-    (mkRenamedOptionModule [ "services" "sshd" "ports" ] [ "services" "openssh" "ports" ])
     (mkAliasOptionModule [ "services" "sshd" "enable" ] [ "services" "openssh" "enable" ])
-    (mkRenamedOptionModule [ "services" "sshd" "allowSFTP" ] [ "services" "openssh" "allowSFTP" ])
-    (mkRenamedOptionModule [ "services" "sshd" "forwardX11" ] [ "services" "openssh" "forwardX11" ])
-    (mkRenamedOptionModule [ "services" "sshd" "gatewayPorts" ] [ "services" "openssh" "gatewayPorts" ])
-    (mkRenamedOptionModule [ "services" "sshd" "permitRootLogin" ] [ "services" "openssh" "permitRootLogin" ])
-    (mkRenamedOptionModule [ "services" "xserver" "startSSHAgent" ] [ "services" "xserver" "startOpenSSHAgent" ])
-    (mkRenamedOptionModule [ "services" "xserver" "startOpenSSHAgent" ] [ "programs" "ssh" "startAgent" ])
     (mkAliasOptionModule [ "services" "openssh" "knownHosts" ] [ "programs" "ssh" "knownHosts" ])
 
-    # VirtualBox
-    (mkRenamedOptionModule [ "services" "virtualbox" "enable" ] [ "virtualisation" "virtualbox" "guest" "enable" ])
-    (mkRenamedOptionModule [ "services" "virtualboxGuest" "enable" ] [ "virtualisation" "virtualbox" "guest" "enable" ])
-    (mkRenamedOptionModule [ "programs" "virtualbox" "enable" ] [ "virtualisation" "virtualbox" "host" "enable" ])
-    (mkRenamedOptionModule [ "programs" "virtualbox" "addNetworkInterface" ] [ "virtualisation" "virtualbox" "host" "addNetworkInterface" ])
-    (mkRenamedOptionModule [ "programs" "virtualbox" "enableHardening" ] [ "virtualisation" "virtualbox" "host" "enableHardening" ])
-    (mkRenamedOptionModule [ "services" "virtualboxHost" "enable" ] [ "virtualisation" "virtualbox" "host" "enable" ])
-    (mkRenamedOptionModule [ "services" "virtualboxHost" "addNetworkInterface" ] [ "virtualisation" "virtualbox" "host" "addNetworkInterface" ])
-    (mkRenamedOptionModule [ "services" "virtualboxHost" "enableHardening" ] [ "virtualisation" "virtualbox" "host" "enableHardening" ])
-
     # libvirtd
     (mkRemovedOptionModule [ "virtualisation" "libvirtd" "enableKVM" ]
       "Set the option `virtualisation.libvirtd.qemuPackage' instead.")
 
-    # Tarsnap
-    (mkRenamedOptionModule [ "services" "tarsnap" "config" ] [ "services" "tarsnap" "archives" ])
-
     # ibus
     (mkRenamedOptionModule [ "programs" "ibus" "plugins" ] [ "i18n" "inputMethod" "ibus" "engines" ])
 
-    # proxy
-    (mkRenamedOptionModule [ "nix" "proxy" ] [ "networking" "proxy" "default" ])
-
     # sandboxing
     (mkRenamedOptionModule [ "nix" "useChroot" ] [ "nix" "useSandbox" ])
     (mkRenamedOptionModule [ "nix" "chrootDirs" ] [ "nix" "sandboxPaths" ])
 
-    # KDE
-    (mkRenamedOptionModule [ "kde" "extraPackages" ] [ "environment" "systemPackages" ])
-    (mkRenamedOptionModule [ "environment" "kdePackages" ] [ "environment" "systemPackages" ])
-
-    # Multiple efi bootloaders now
-    (mkRenamedOptionModule [ "boot" "loader" "efi" "efibootmgr" "enable" ] [ "boot" "loader" "efi" "canTouchEfiVariables" ])
-
-    # NixOS environment changes
-    # !!! this hardcodes bash, could we detect from config which shell is actually used?
-    (mkRenamedOptionModule [ "environment" "promptInit" ] [ "programs" "bash" "promptInit" ])
-
-    (mkRenamedOptionModule [ "services" "xserver" "driSupport" ] [ "hardware" "opengl" "driSupport" ])
-    (mkRenamedOptionModule [ "services" "xserver" "driSupport32Bit" ] [ "hardware" "opengl" "driSupport32Bit" ])
-    (mkRenamedOptionModule [ "services" "xserver" "s3tcSupport" ] [ "hardware" "opengl" "s3tcSupport" ])
-    (mkRenamedOptionModule [ "hardware" "opengl" "videoDrivers" ] [ "services" "xserver" "videoDrivers" ])
     (mkRenamedOptionModule [ "services" "xserver" "vaapiDrivers" ] [ "hardware" "opengl" "extraPackages" ])
 
-    (mkRenamedOptionModule [ "services" "mysql55" ] [ "services" "mysql" ])
-
     (mkAliasOptionModule [ "environment" "checkConfigurationOptions" ] [ "_module" "check" ])
 
     # opendkim
     (mkRenamedOptionModule [ "services" "opendkim" "keyFile" ] [ "services" "opendkim" "keyPath" ])
 
-    # XBMC
-    (mkRenamedOptionModule [ "services" "xserver" "windowManager" "xbmc" ] [ "services" "xserver" "desktopManager" "kodi" ])
-    (mkRenamedOptionModule [ "services" "xserver" "desktopManager" "xbmc" ] [ "services" "xserver" "desktopManager" "kodi" ])
-
-    (mkRenamedOptionModule [ "services" "hostapd" "extraCfg" ] [ "services" "hostapd" "extraConfig" ])
-
     # Enlightenment
     (mkRenamedOptionModule [ "services" "xserver" "desktopManager" "e19" "enable" ] [ "services" "xserver" "desktopManager" "enlightenment" "enable" ])
 
diff --git a/nixos/modules/security/pam.nix b/nixos/modules/security/pam.nix
index 03d2f899f2ab..46ce274a2a9a 100644
--- a/nixos/modules/security/pam.nix
+++ b/nixos/modules/security/pam.nix
@@ -48,6 +48,16 @@ let
         '';
       };
 
+      yubicoAuth = mkOption {
+        default = config.security.pam.yubico.enable;
+        type = types.bool;
+        description = ''
+          If set, users listed in
+          <filename>~/.yubico/authorized_yubikeys</filename>
+          are able to log in with the asociated Yubikey tokens.
+        '';
+      };
+
       googleAuthenticator = {
         enable = mkOption {
           default = false;
@@ -340,6 +350,8 @@ let
               "auth sufficient ${pkgs.pam_usb}/lib/security/pam_usb.so"}
           ${let oath = config.security.pam.oath; in optionalString cfg.oathAuth
               "auth requisite ${pkgs.oathToolkit}/lib/security/pam_oath.so window=${toString oath.window} usersfile=${toString oath.usersFile} digits=${toString oath.digits}"}
+          ${let yubi = config.security.pam.yubico; in optionalString cfg.yubicoAuth
+              "auth ${yubi.control} ${pkgs.yubico-pam}/lib/security/pam_yubico.so id=${toString yubi.id} ${optionalString yubi.debug "debug"}"}
         '' +
           # Modules in this block require having the password set in PAM_AUTHTOK.
           # pam_unix is marked as 'sufficient' on NixOS which means nothing will run
@@ -636,6 +648,54 @@ in
       };
     };
 
+    security.pam.yubico = {
+      enable = mkOption {
+        default = false;
+        type = types.bool;
+        description = ''
+          Enables Yubico PAM (<literal>yubico-pam</literal>) module.
+
+          If set, users listed in
+          <filename>~/.yubico/authorized_yubikeys</filename>
+          are able to log in with the associated Yubikey tokens.
+
+          The file must have only one line:
+          <literal>username:yubikey_token_id1:yubikey_token_id2</literal>
+          More information can be found <link
+          xlink:href="https://developers.yubico.com/yubico-pam/">here</link>.
+        '';
+      };
+      control = mkOption {
+        default = "sufficient";
+        type = types.enum [ "required" "requisite" "sufficient" "optional" ];
+        description = ''
+          This option sets pam "control".
+          If you want to have multi factor authentication, use "required".
+          If you want to use Yubikey instead of regular password, use "sufficient".
+
+          Read
+          <citerefentry>
+            <refentrytitle>pam.conf</refentrytitle>
+            <manvolnum>5</manvolnum>
+          </citerefentry>
+          for better understanding of this option.
+        '';
+      };
+      id = mkOption {
+        example = "42";
+        type = types.string;
+        description = "client id";
+      };
+
+      debug = mkOption {
+        default = false;
+        type = types.bool;
+        description = ''
+          Debug output to stderr.
+        '';
+      };
+    };
+
     security.pam.enableEcryptfs = mkOption {
       default = false;
       description = ''
diff --git a/nixos/modules/security/systemd-confinement.nix b/nixos/modules/security/systemd-confinement.nix
new file mode 100644
index 000000000000..cd4eb81dbe19
--- /dev/null
+++ b/nixos/modules/security/systemd-confinement.nix
@@ -0,0 +1,199 @@
+{ config, pkgs, lib, ... }:
+
+let
+  toplevelConfig = config;
+  inherit (lib) types;
+  inherit (import ../system/boot/systemd-lib.nix {
+    inherit config pkgs lib;
+  }) mkPathSafeName;
+in {
+  options.systemd.services = lib.mkOption {
+    type = types.attrsOf (types.submodule ({ name, config, ... }: {
+      options.confinement.enable = lib.mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          If set, all the required runtime store paths for this service are
+          bind-mounted into a <literal>tmpfs</literal>-based <citerefentry>
+            <refentrytitle>chroot</refentrytitle>
+            <manvolnum>2</manvolnum>
+          </citerefentry>.
+        '';
+      };
+
+      options.confinement.fullUnit = lib.mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Whether to include the full closure of the systemd unit file into the
+          chroot, instead of just the dependencies for the executables.
+
+          <warning><para>While it may be tempting to just enable this option to
+          make things work quickly, please be aware that this might add paths
+          to the closure of the chroot that you didn't anticipate. It's better
+          to use <option>confinement.packages</option> to <emphasis
+          role="strong">explicitly</emphasis> add additional store paths to the
+          chroot.</para></warning>
+        '';
+      };
+
+      options.confinement.packages = lib.mkOption {
+        type = types.listOf (types.either types.str types.package);
+        default = [];
+        description = let
+          mkScOption = optName: "<option>serviceConfig.${optName}</option>";
+        in ''
+          Additional packages or strings with context to add to the closure of
+          the chroot. By default, this includes all the packages from the
+          ${lib.concatMapStringsSep ", " mkScOption [
+            "ExecReload" "ExecStartPost" "ExecStartPre" "ExecStop"
+            "ExecStopPost"
+          ]} and ${mkScOption "ExecStart"} options. If you want to have all the
+          dependencies of this systemd unit, you can use
+          <option>confinement.fullUnit</option>.
+
+          <note><para>The store paths listed in <option>path</option> are
+          <emphasis role="strong">not</emphasis> included in the closure as
+          well as paths from other options except those listed
+          above.</para></note>
+        '';
+      };
+
+      options.confinement.binSh = lib.mkOption {
+        type = types.nullOr types.path;
+        default = toplevelConfig.environment.binsh;
+        defaultText = "config.environment.binsh";
+        example = lib.literalExample "\${pkgs.dash}/bin/dash";
+        description = ''
+          The program to make available as <filename>/bin/sh</filename> inside
+          the chroot. If this is set to <literal>null</literal>, no
+          <filename>/bin/sh</filename> is provided at all.
+
+          This is useful for some applications, which for example use the
+          <citerefentry>
+            <refentrytitle>system</refentrytitle>
+            <manvolnum>3</manvolnum>
+          </citerefentry> library function to execute commands.
+        '';
+      };
+
+      options.confinement.mode = lib.mkOption {
+        type = types.enum [ "full-apivfs" "chroot-only" ];
+        default = "full-apivfs";
+        description = ''
+          The value <literal>full-apivfs</literal> (the default) sets up
+          private <filename class="directory">/dev</filename>, <filename
+          class="directory">/proc</filename>, <filename
+          class="directory">/sys</filename> and <filename
+          class="directory">/tmp</filename> file systems in a separate user
+          name space.
+
+          If this is set to <literal>chroot-only</literal>, only the file
+          system name space is set up along with the call to <citerefentry>
+            <refentrytitle>chroot</refentrytitle>
+            <manvolnum>2</manvolnum>
+          </citerefentry>.
+
+          <note><para>This doesn't cover network namespaces and is solely for
+          file system level isolation.</para></note>
+        '';
+      };
+
+      config = let
+        rootName = "${mkPathSafeName name}-chroot";
+        inherit (config.confinement) binSh fullUnit;
+        wantsAPIVFS = lib.mkDefault (config.confinement.mode == "full-apivfs");
+      in lib.mkIf config.confinement.enable {
+        serviceConfig = {
+          RootDirectory = pkgs.runCommand rootName {} "mkdir \"$out\"";
+          TemporaryFileSystem = "/";
+          PrivateMounts = lib.mkDefault true;
+
+          # https://github.com/NixOS/nixpkgs/issues/14645 is a future attempt
+          # to change some of these to default to true.
+          #
+          # If we run in chroot-only mode, having something like PrivateDevices
+          # set to true by default will mount /dev within the chroot, whereas
+          # with "chroot-only" it's expected that there are no /dev, /proc and
+          # /sys file systems available.
+          #
+          # However, if this suddenly becomes true, the attack surface will
+          # increase, so let's explicitly set these options to true/false
+          # depending on the mode.
+          MountAPIVFS = wantsAPIVFS;
+          PrivateDevices = wantsAPIVFS;
+          PrivateTmp = wantsAPIVFS;
+          PrivateUsers = wantsAPIVFS;
+          ProtectControlGroups = wantsAPIVFS;
+          ProtectKernelModules = wantsAPIVFS;
+          ProtectKernelTunables = wantsAPIVFS;
+        };
+        confinement.packages = let
+          execOpts = [
+            "ExecReload" "ExecStart" "ExecStartPost" "ExecStartPre" "ExecStop"
+            "ExecStopPost"
+          ];
+          execPkgs = lib.concatMap (opt: let
+            isSet = config.serviceConfig ? ${opt};
+          in lib.optional isSet config.serviceConfig.${opt}) execOpts;
+          unitAttrs = toplevelConfig.systemd.units."${name}.service";
+          allPkgs = lib.singleton (builtins.toJSON unitAttrs);
+          unitPkgs = if fullUnit then allPkgs else execPkgs;
+        in unitPkgs ++ lib.optional (binSh != null) binSh;
+      };
+    }));
+  };
+
+  config.assertions = lib.concatLists (lib.mapAttrsToList (name: cfg: let
+    whatOpt = optName: "The 'serviceConfig' option '${optName}' for"
+                    + " service '${name}' is enabled in conjunction with"
+                    + " 'confinement.enable'";
+  in lib.optionals cfg.confinement.enable [
+    { assertion = !cfg.serviceConfig.RootDirectoryStartOnly or false;
+      message = "${whatOpt "RootDirectoryStartOnly"}, but right now systemd"
+              + " doesn't support restricting bind-mounts to 'ExecStart'."
+              + " Please either define a separate service or find a way to run"
+              + " commands other than ExecStart within the chroot.";
+    }
+    { assertion = !cfg.serviceConfig.DynamicUser or false;
+      message = "${whatOpt "DynamicUser"}. Please create a dedicated user via"
+              + " the 'users.users' option instead as this combination is"
+              + " currently not supported.";
+    }
+  ]) config.systemd.services);
+
+  config.systemd.packages = lib.concatLists (lib.mapAttrsToList (name: cfg: let
+    rootPaths = let
+      contents = lib.concatStringsSep "\n" cfg.confinement.packages;
+    in pkgs.writeText "${mkPathSafeName name}-string-contexts.txt" contents;
+
+    chrootPaths = pkgs.runCommand "${mkPathSafeName name}-chroot-paths" {
+      closureInfo = pkgs.closureInfo { inherit rootPaths; };
+      serviceName = "${name}.service";
+      excludedPath = rootPaths;
+    } ''
+      mkdir -p "$out/lib/systemd/system"
+      serviceFile="$out/lib/systemd/system/$serviceName"
+
+      echo '[Service]' > "$serviceFile"
+
+      # /bin/sh is special here, because the option value could contain a
+      # symlink and we need to properly resolve it.
+      ${lib.optionalString (cfg.confinement.binSh != null) ''
+        binsh=${lib.escapeShellArg cfg.confinement.binSh}
+        realprog="$(readlink -e "$binsh")"
+        echo "BindReadOnlyPaths=$realprog:/bin/sh" >> "$serviceFile"
+      ''}
+
+      while read storePath; do
+        if [ -L "$storePath" ]; then
+          # Currently, systemd can't cope with symlinks in Bind(ReadOnly)Paths,
+          # so let's just bind-mount the target to that location.
+          echo "BindReadOnlyPaths=$(readlink -e "$storePath"):$storePath"
+        elif [ "$storePath" != "$excludedPath" ]; then
+          echo "BindReadOnlyPaths=$storePath"
+        fi
+      done < "$closureInfo/store-paths" >> "$serviceFile"
+    '';
+  in lib.optional cfg.confinement.enable chrootPaths) config.systemd.services);
+}
diff --git a/nixos/modules/services/databases/mysql.nix b/nixos/modules/services/databases/mysql.nix
index 467feb09b3a3..89291d4438ff 100644
--- a/nixos/modules/services/databases/mysql.nix
+++ b/nixos/modules/services/databases/mysql.nix
@@ -103,6 +103,24 @@ in
       };
 
       initialDatabases = mkOption {
+        type = types.listOf (types.submodule {
+          options = {
+            name = mkOption {
+              type = types.str;
+              description = ''
+                The name of the database to create.
+              '';
+            };
+            schema = mkOption {
+              type = types.nullOr types.path;
+              default = null;
+              description = ''
+                The initial schema of the database; if null (the default),
+                an empty database is created.
+              '';
+            };
+          };
+        });
         default = [];
         description = ''
           List of database names and their initial schemas that should be used to create databases on the first startup
@@ -115,11 +133,13 @@ in
       };
 
       initialScript = mkOption {
+        type = types.nullOr types.lines;
         default = null;
         description = "A file containing SQL statements to be executed on the first startup. Can be used for granting certain permissions on the database";
       };
 
       ensureDatabases = mkOption {
+        type = types.listOf types.str;
         default = [];
         description = ''
           Ensures that the specified databases exist.
@@ -134,6 +154,38 @@ in
       };
 
       ensureUsers = mkOption {
+        type = types.listOf (types.submodule {
+          options = {
+            name = mkOption {
+              type = types.str;
+              description = ''
+                Name of the user to ensure.
+              '';
+            };
+            ensurePermissions = mkOption {
+              type = types.attrsOf types.str;
+              default = {};
+              description = ''
+                Permissions to ensure for the user, specified as attribute set.
+                The attribute names specify the database and tables to grant the permissions for,
+                separated by a dot. You may use wildcards here.
+                The attribute values specfiy the permissions to grant.
+                You may specify one or multiple comma-separated SQL privileges here.
+
+                For more information on how to specify the target
+                and on which privileges exist, see the
+                <link xlink:href="https://mariadb.com/kb/en/library/grant/">GRANT syntax</link>.
+                The attributes are used as <code>GRANT ''${attrName} ON ''${attrValue}</code>.
+              '';
+              example = literalExample ''
+                {
+                  "database.*" = "ALL PRIVILEGES";
+                  "*.*" = "SELECT, LOCK TABLES";
+                }
+              '';
+            };
+          };
+        });
         default = [];
         description = ''
           Ensures that the specified users exist and have at least the ensured permissions.
@@ -143,20 +195,22 @@ in
           option is changed. This means that users created and permissions assigned once through this option or
           otherwise have to be removed manually.
         '';
-        example = literalExample ''[
-          {
-            name = "nextcloud";
-            ensurePermissions = {
-              "nextcloud.*" = "ALL PRIVILEGES";
-            };
-          }
-          {
-            name = "backup";
-            ensurePermissions = {
-              "*.*" = "SELECT, LOCK TABLES";
-            };
-          }
-        ]'';
+        example = literalExample ''
+          [
+            {
+              name = "nextcloud";
+              ensurePermissions = {
+                "nextcloud.*" = "ALL PRIVILEGES";
+              };
+            }
+            {
+              name = "backup";
+              ensurePermissions = {
+                "*.*" = "SELECT, LOCK TABLES";
+              };
+            }
+          ]
+        '';
       };
 
       # FIXME: remove this option; it's a really bad idea.
diff --git a/nixos/modules/services/databases/openldap.nix b/nixos/modules/services/databases/openldap.nix
index 5c302752781e..bb658918cb0d 100644
--- a/nixos/modules/services/databases/openldap.nix
+++ b/nixos/modules/services/databases/openldap.nix
@@ -8,7 +8,20 @@ let
   openldap = pkgs.openldap;
 
   dataFile = pkgs.writeText "ldap-contents.ldif" cfg.declarativeContents;
-  configFile = pkgs.writeText "slapd.conf" cfg.extraConfig;
+  configFile = pkgs.writeText "slapd.conf" ((optionalString cfg.defaultSchemas ''
+    include ${pkgs.openldap.out}/etc/schema/core.schema
+    include ${pkgs.openldap.out}/etc/schema/cosine.schema
+    include ${pkgs.openldap.out}/etc/schema/inetorgperson.schema
+    include ${pkgs.openldap.out}/etc/schema/nis.schema
+  '') + ''
+    ${cfg.extraConfig}
+    database ${cfg.database}
+    suffix ${cfg.suffix}
+    rootdn ${cfg.rootdn}
+    rootpw ${cfg.rootpw}
+    directory ${cfg.dataDir}
+    ${cfg.extraDatabaseConfig}
+  '');
   configOpts = if cfg.configDir == null then "-f ${configFile}"
                else "-F ${cfg.configDir}";
 in
@@ -54,6 +67,52 @@ in
         description = "The database directory.";
       };
 
+      defaultSchemas = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Include the default schemas core, cosine, inetorgperson and nis.
+          This setting will be ignored if configDir is set.
+        '';
+      };
+
+      database = mkOption {
+        type = types.str;
+        default = "mdb";
+        description = ''
+          Database type to use for the LDAP.
+          This setting will be ignored if configDir is set.
+        '';
+      };
+
+      suffix = mkOption {
+        type = types.str;
+        example = "dc=example,dc=org";
+        description = ''
+          Specify the DN suffix of queries that will be passed to this backend
+          database.
+          This setting will be ignored if configDir is set.
+        '';
+      };
+
+      rootdn = mkOption {
+        type = types.str;
+        example = "cn=admin,dc=example,dc=org";
+        description = ''
+          Specify the distinguished name that is not subject to access control
+          or administrative limit restrictions for operations on this database.
+          This setting will be ignored if configDir is set.
+        '';
+      };
+
+      rootpw = mkOption {
+        type = types.str;
+        description = ''
+          Password for the root user.
+          This setting will be ignored if configDir is set.
+        '';
+      };
+
       logLevel = mkOption {
         type = types.str;
         default = "0";
@@ -118,6 +177,39 @@ in
           # ...
         '';
       };
+
+      extraDatabaseConfig = mkOption {
+        type = types.lines;
+        default = "";
+        description = ''
+          slapd.conf configuration after the database option.
+          This setting will be ignored if configDir is set.
+        '';
+        example = ''
+          # Indices to maintain for this directory
+          # unique id so equality match only
+          index uid eq
+          # allows general searching on commonname, givenname and email
+          index cn,gn,mail eq,sub
+          # allows multiple variants on surname searching
+          index sn eq,sub
+          # sub above includes subintial,subany,subfinal
+          # optimise department searches
+          index ou eq
+          # if searches will include objectClass uncomment following
+          # index objectClass eq
+          # shows use of default index parameter
+          index default eq,sub
+          # indices missing - uses default eq,sub
+          index telephonenumber
+
+          # other database parameters
+          # read more in slapd.conf reference section
+          cachesize 10000
+          checkpoint 128 15
+        '';
+      };
+
     };
 
   };
diff --git a/nixos/modules/services/mail/mailcatcher.nix b/nixos/modules/services/mail/mailcatcher.nix
new file mode 100644
index 000000000000..2c6aadadce9d
--- /dev/null
+++ b/nixos/modules/services/mail/mailcatcher.nix
@@ -0,0 +1,60 @@
+{ config, pkgs, lib, ... }:
+
+let
+  cfg = config.services.mailcatcher;
+
+  inherit (lib) mkEnableOption mkIf mkOption types;
+in
+{
+  # interface
+
+  options = {
+
+    services.mailcatcher = {
+      enable = mkEnableOption "Enable MailCatcher.";
+
+      http.ip = mkOption {
+        type = types.str;
+        default = "127.0.0.1";
+        description = "The ip address of the http server.";
+      };
+
+      http.port = mkOption {
+        type = types.port;
+        default = 1080;
+        description = "The port address of the http server.";
+      };
+
+      smtp.ip = mkOption {
+        type = types.str;
+        default = "127.0.0.1";
+        description = "The ip address of the smtp server.";
+      };
+
+      smtp.port = mkOption {
+        type = types.port;
+        default = 1025;
+        description = "The port address of the smtp server.";
+      };
+    };
+
+  };
+
+  # implementation
+
+  config = mkIf cfg.enable {
+    environment.systemPackages = [ pkgs.mailcatcher ];
+
+    systemd.services.mailcatcher = {
+      description = "MailCatcher Service";
+      after = [ "network.target" ];
+      wantedBy = [ "multi-user.target" ];
+
+      serviceConfig = {
+        DynamicUser = true;
+        Restart = "always";
+        ExecStart = "${pkgs.mailcatcher}/bin/mailcatcher --foreground --no-quit --http-ip ${cfg.http.ip} --http-port ${toString cfg.http.port} --smtp-ip ${cfg.smtp.ip} --smtp-port ${toString cfg.smtp.port}";
+      };
+    };
+  };
+}
diff --git a/nixos/modules/services/misc/gitlab.nix b/nixos/modules/services/misc/gitlab.nix
index 17c8c3ce51f4..71277b48ecd9 100644
--- a/nixos/modules/services/misc/gitlab.nix
+++ b/nixos/modules/services/misc/gitlab.nix
@@ -160,6 +160,20 @@ let
      '';
   };
 
+  gitlab-rails = pkgs.stdenv.mkDerivation rec {
+    name = "gitlab-rails";
+    buildInputs = [ pkgs.makeWrapper ];
+    dontBuild = true;
+    unpackPhase = ":";
+    installPhase = ''
+      mkdir -p $out/bin
+      makeWrapper ${cfg.packages.gitlab.rubyEnv}/bin/rails $out/bin/gitlab-rails \
+          ${concatStrings (mapAttrsToList (name: value: "--set ${name} '${value}' ") gitlabEnv)} \
+          --set PATH '${lib.makeBinPath [ pkgs.nodejs pkgs.gzip pkgs.git pkgs.gnutar config.services.postgresql.package pkgs.coreutils pkgs.procps ]}:$PATH' \
+          --run 'cd ${cfg.packages.gitlab}/share/gitlab'
+     '';
+  };
+
   extraGitlabRb = pkgs.writeText "extra-gitlab.rb" cfg.extraGitlabRb;
 
   smtpSettings = pkgs.writeText "gitlab-smtp-settings.rb" ''
@@ -461,7 +475,7 @@ in {
 
   config = mkIf cfg.enable {
 
-    environment.systemPackages = [ pkgs.git gitlab-rake cfg.packages.gitlab-shell ];
+    environment.systemPackages = [ pkgs.git gitlab-rake gitlab-rails cfg.packages.gitlab-shell ];
 
     # Redis is required for the sidekiq queue runner.
     services.redis.enable = mkDefault true;
@@ -534,6 +548,7 @@ in {
       wantedBy = [ "multi-user.target" ];
       path = with pkgs; [
         openssh
+        procps  # See https://gitlab.com/gitlab-org/gitaly/issues/1562
         gitAndTools.git
         cfg.packages.gitaly.rubyEnv
         cfg.packages.gitaly.rubyEnv.wrappedRuby
diff --git a/nixos/modules/services/networking/quicktun.nix b/nixos/modules/services/networking/quicktun.nix
new file mode 100644
index 000000000000..5bcf923f909c
--- /dev/null
+++ b/nixos/modules/services/networking/quicktun.nix
@@ -0,0 +1,118 @@
+{ config, pkgs, lib, ... }:
+
+let
+
+  cfg = config.services.quicktun;
+
+in
+
+with lib;
+
+{
+  options = {
+
+    services.quicktun = mkOption {
+      default = { };
+      description = "QuickTun tunnels";
+      type = types.attrsOf (types.submodule {
+        options = {
+          tunMode = mkOption {
+            type = types.int;
+            default = 0;
+            example = 1;
+            description = "";
+          };
+
+          remoteAddress = mkOption {
+            type = types.str;
+            example = "tunnel.example.com";
+            description = "";
+          };
+
+          localAddress = mkOption {
+            type = types.str;
+            example = "0.0.0.0";
+            description = "";
+          };
+
+          localPort = mkOption {
+            type = types.int;
+            default = 2998;
+            description = "";
+          };
+
+          remotePort = mkOption {
+            type = types.int;
+            default = 2998;
+            description = "";
+          };
+
+          remoteFloat = mkOption {
+            type = types.int;
+            default = 0;
+            description = "";
+          };
+
+          protocol = mkOption {
+            type = types.str;
+            default = "nacltai";
+            description = "";
+          };
+
+          privateKey = mkOption {
+            type = types.str;
+            description = "";
+          };
+
+          publicKey = mkOption {
+            type = types.str;
+            description = "";
+          };
+
+          timeWindow = mkOption {
+            type = types.int;
+            default = 5;
+            description = "";
+          };
+
+          upScript = mkOption {
+            type = types.lines;
+            default = "";
+            description = "";
+          };
+        };
+      });
+    };
+
+  };
+
+  config = mkIf (cfg != []) {
+    systemd.services = fold (a: b: a // b) {} (
+      mapAttrsToList (name: qtcfg: {
+        "quicktun-${name}" = {
+          wantedBy = [ "multi-user.target" ];
+          after = [ "network.target" ];
+          environment = {
+            "INTERFACE" = name;
+            "TUN_MODE" = toString qtcfg.tunMode;
+            "REMOTE_ADDRESS" = qtcfg.remoteAddress;
+            "LOCAL_ADDRESS" = qtcfg.localAddress;
+            "LOCAL_PORT" = toString qtcfg.localPort;
+            "REMOTE_PORT" = toString qtcfg.remotePort;
+            "REMOTE_FLOAT" = toString qtcfg.remoteFloat;
+            "PRIVATE_KEY" = qtcfg.privateKey;
+            "PUBLIC_KEY" = qtcfg.publicKey;
+            "TIME_WINDOW" = toString qtcfg.timeWindow;
+            "TUN_UP_SCRIPT" = pkgs.writeScript "quicktun-${name}-up.sh" qtcfg.upScript;
+            "SUID" = "nobody";
+          };
+          serviceConfig = {
+            Type = "simple";
+            ExecStart = "${pkgs.quicktun}/bin/quicktun.${qtcfg.protocol}";
+          };
+        };
+      }) cfg
+    );
+  };
+
+}
diff --git a/nixos/modules/services/scheduling/cron.nix b/nixos/modules/services/scheduling/cron.nix
index 6f6977b38a1d..3bc31832946b 100644
--- a/nixos/modules/services/scheduling/cron.nix
+++ b/nixos/modules/services/scheduling/cron.nix
@@ -64,8 +64,8 @@ in
           sendmail. See <option>security.wrappers</option>
 
           If neither /var/cron/cron.deny nor /var/cron/cron.allow exist only root
-          will is allowed to have its own crontab file. The /var/cron/cron.deny file
-          is created automatically for you. So every user can use a crontab.
+          is allowed to have its own crontab file. The /var/cron/cron.deny file
+          is created automatically for you, so every user can use a crontab.
 
           Many nixos modules set systemCronJobs, so if you decide to disable vixie cron
           and enable another cron daemon, you may want it to get its system crontab
diff --git a/nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix b/nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix
index 50775c5262fa..644aad82df2c 100644
--- a/nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix
+++ b/nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix
@@ -3,112 +3,18 @@
   poolName = "icingaweb2";
   phpfpmSocketName = "/var/run/phpfpm/${poolName}.sock";
 
-  formatBool = b: if b then "1" else "0";
-
-  configIni = let
-    config = cfg.generalConfig;
-  in ''
-    [global]
-    show_stacktraces = "${formatBool config.showStacktraces}"
-    show_application_state_messages = "${formatBool config.showApplicationStateMessages}"
-    module_path = "${pkgs.icingaweb2}/modules${optionalString (builtins.length config.modulePath > 0) ":${concatStringsSep ":" config.modulePath}"}"
-    config_backend = "${config.configBackend}"
-    ${optionalString (config.configBackend == "db") ''config_resource = "${config.configResource}"''}
-
-    [logging]
-    log = "${config.log}"
-    ${optionalString (config.log != "none") ''level = "${config.logLevel}"''}
-    ${optionalString (config.log == "php" || config.log == "syslog") ''application = "${config.logApplication}"''}
-    ${optionalString (config.log == "syslog") ''facility = "${config.logFacility}"''}
-    ${optionalString (config.log == "file") ''file = "${config.logFile}"''}
-
-    [themes]
-    default = "${config.themeDefault}"
-    disabled = "${formatBool config.themeDisabled}"
-
-    [authentication]
-    ${optionalString (config.authDefaultDomain != null) ''default_domain = "${config.authDefaultDomain}"''}
-  '';
-
-  resourcesIni = concatStringsSep "\n" (mapAttrsToList (name: config: ''
-    [${name}]
-    type = "${config.type}"
-    ${optionalString (config.type == "db") ''
-      db = "${config.db}"
-      host = "${config.host}"
-      ${optionalString (config.port != null) ''port = "${toString config.port}"''}
-      username = "${config.username}"
-      password = "${config.password}"
-      dbname = "${config.dbname}"
-      ${optionalString (config.charset != null) ''charset = "${config.charset}"''}
-      use_ssl = "${formatBool config.useSSL}"
-      ${optionalString (config.sslCert != null) ''ssl_cert = "${config.sslCert}"''}
-      ${optionalString (config.sslKey != null) ''ssl_cert = "${config.sslKey}"''}
-      ${optionalString (config.sslCA != null) ''ssl_cert = "${config.sslCA}"''}
-      ${optionalString (config.sslCApath != null) ''ssl_cert = "${config.sslCApath}"''}
-      ${optionalString (config.sslCipher != null) ''ssl_cert = "${config.sslCipher}"''}
-    ''}
-    ${optionalString (config.type == "ldap") ''
-      hostname = "${config.host}"
-      ${optionalString (config.port != null) ''port = "${toString config.port}"''}
-      root_dn = "${config.rootDN}"
-      bind_dn = "${config.username}"
-      bind_pw = "${config.password}"
-      encryption = "${config.ldapEncryption}"
-      timeout = "${toString config.ldapTimeout}"
-    ''}
-    ${optionalString (config.type == "ssh") ''
-      user = "${config.username}"
-      private_key = "${config.sshPrivateKey}"
-    ''}
-
-  '') cfg.resources);
-
-  authenticationIni = concatStringsSep "\n" (mapAttrsToList (name: config: ''
-    [${name}]
-    backend = "${config.backend}"
-    ${optionalString (config.domain != null) ''domain = "${config.domain}"''}
-    ${optionalString (config.backend == "external" && config.externalStripRegex != null) ''strip_username_regexp = "${config.externalStripRegex}"''}
-    ${optionalString (config.backend != "external") ''resource = "${config.resource}"''}
-    ${optionalString (config.backend == "ldap" || config.backend == "msldap") ''
-      ${optionalString (config.ldapUserClass != null) ''user_class = "${config.ldapUserClass}"''}
-      ${optionalString (config.ldapUserNameAttr != null) ''user_name_attribute = "${config.ldapUserNameAttr}"''}
-      ${optionalString (config.ldapFilter != null) ''filter = "${config.ldapFilter}"''}
-    ''}
-  '') cfg.authentications);
-
-  groupsIni = concatStringsSep "\n" (mapAttrsToList (name: config: ''
-    [${name}]
-    backend = "${config.backend}"
-    resource = "${config.resource}"
-    ${optionalString (config.backend != "db") ''
-      ${optionalString (config.ldapUserClass != null) ''user_class = "${config.ldapUserClass}"''}
-      ${optionalString (config.ldapUserNameAttr != null) ''user_name_attribute = "${config.ldapUserNameAttr}"''}
-      ${optionalString (config.ldapGroupClass != null) ''group_class = "${config.ldapGroupClass}"''}
-      ${optionalString (config.ldapGroupNameAttr != null) ''group_name_attribute = "${config.ldapGroupNameAttr}"''}
-      ${optionalString (config.ldapGroupFilter != null) ''group_filter = "${config.ldapGroupFilter}"''}
-    ''}
-    ${optionalString (config.backend == "msldap" && config.ldapNestedSearch) ''nested_group_search = "1"''}
-  '') cfg.groupBackends);
-
-  rolesIni = let
-    optionalList = var: attribute: optionalString (builtins.length var > 0) ''${attribute} = "${concatStringsSep "," var}"'';
-  in concatStringsSep "\n" (mapAttrsToList (name: config: ''
-    [${name}]
-    ${optionalList config.users "users"}
-    ${optionalList config.groups "groups"}
-    ${optionalList config.permissions "permissions"}
-    ${optionalList config.permissions "permissions"}
-    ${concatStringsSep "\n" (mapAttrsToList (key: value: optionalList value key) config.extraAssignments)}
-  '') cfg.roles);
-
+  defaultConfig = {
+    global = {
+      module_path = "${pkgs.icingaweb2}/modules${optionalString (builtins.length config.modulePath > 0) ":${concatStringsSep ":" config.modulePath}"}";
+    };
+  };
 in {
   options.services.icingaweb2 = with types; {
     enable = mkEnableOption "the icingaweb2 web interface";
 
     pool = mkOption {
       type = str;
-      default = "${poolName}";
+      default = poolName;
       description = ''
          Name of existing PHP-FPM pool that is used to run Icingaweb2.
          If not specified, a pool will automatically created with default values.
@@ -143,7 +49,7 @@ in {
       default = {};
       example = literalExample ''
         {
-          "snow" = pkgs.icingaweb2Modules.theme-snow;
+          "snow" = icingaweb2Modules.theme-snow;
         }
       '';
       description = ''
@@ -153,419 +59,130 @@ in {
       '';
     };
 
-    generalConfig = {
-      mutable = mkOption {
-        type = bool;
-        default = false;
-        description = ''
-          Make config.ini mutable (e.g. via the web interface).
-          Not that you need to update module_path manually.
-        '';
-      };
-
-      showStacktraces = mkOption {
-        type = bool;
-        default = true;
-        description = "Enable stack traces in the Web UI";
-      };
-
-      showApplicationStateMessages = mkOption {
-        type = bool;
-        default = true;
-        description = "Enable application state messages in the Web UI";
-      };
-
-      modulePath = mkOption {
-        type = listOf str;
-        default = [];
-        description = "List of additional module search paths";
-      };
-
-      configBackend = mkOption {
-        type = enum [ "ini" "db" "none" ];
-        default = "db";
-        description = "Where to store user preferences";
-      };
-
-      configResource = mkOption {
-        type = nullOr str;
-        default = null;
-        description = "Database resource where user preferences are stored (if they are stored in a database)";
-      };
-
-      log = mkOption {
-        type = enum [ "syslog" "php" "file" "none" ];
-        default = "syslog";
-        description = "Logging target";
-      };
-
-      logLevel = mkOption {
-        type = enum [ "ERROR" "WARNING" "INFO" "DEBUG" ];
-        default = "ERROR";
-        description = "Maximum logging level to emit";
-      };
-
-      logApplication = mkOption {
-        type = str;
-        default = "icingaweb2";
-        description = "Application name to log under (syslog and php log)";
-      };
-
-      logFacility = mkOption {
-        type = enum [ "user" "local0" "local1" "local2" "local3" "local4" "local5" "local6" "local7" ];
-        default = "user";
-        description = "Syslog facility to log to";
-      };
-
-      logFile = mkOption {
-        type = str;
-        default = "/var/log/icingaweb2/icingaweb2.log";
-        description = "File to log to";
-      };
-
-      themeDefault = mkOption {
-        type = str;
-        default = "Icinga";
-        description = "Name of the default theme";
-      };
-
-      themeDisabled = mkOption {
-        type = bool;
-        default = false;
-        description = "Disallow users to change the theme";
-      };
-
-      authDefaultDomain = mkOption {
-        type = nullOr str;
-        default = null;
-        description = "Domain for users logging in without a qualified domain";
+    generalConfig = mkOption {
+      type = nullOr attrs;
+      default = null;
+      example = {
+        general = {
+          showStacktraces = 1;
+          config_resource = "icingaweb_db";
+        };
+        logging = {
+          log = "syslog";
+          level = "CRITICAL";
+        };
       };
-    };
+      description = ''
+        config.ini contents.
+        Will automatically be converted to a .ini file.
+        If you don't set global.module_path, the module will take care of it.
 
-    mutableResources = mkOption {
-      type = bool;
-      default = false;
-      description = "Make resources.ini mutable (e.g. via the web interface)";
+        If the value is null, no config.ini is created and you can
+        modify it manually (e.g. via the web interface).
+        Note that you need to update module_path manually.
+      '';
     };
 
     resources = mkOption {
-      default = {};
-      description = "Icingaweb 2 resources to define";
-      type = attrsOf (submodule ({ name, ... }: {
-        options = {
-          name = mkOption {
-            visible = false;
-            default = name;
-            type = str;
-            description = "Name of this resource";
-          };
-
-          type = mkOption {
-            type = enum [ "db" "ldap" "ssh" ];
-            default = "db";
-            description = "Type of this resouce";
-          };
-
-          db = mkOption {
-            type = enum [ "mysql" "pgsql" ];
-            default = "mysql";
-            description = "Type of this database resource";
-          };
-
-          host = mkOption {
-            type = str;
-            description = "Host to connect to";
-          };
-
-          port = mkOption {
-            type = nullOr port;
-            default = null;
-            description = "Port to connect on";
-          };
-
-          username = mkOption {
-            type = str;
-            description = "Database or SSH user or LDAP bind DN to connect with";
-          };
-
-          password = mkOption {
-            type = str;
-            description = "Password for the database user or LDAP bind DN";
-          };
-
-          dbname = mkOption {
-            type = str;
-            description = "Name of the database to connect to";
-          };
-
-          charset = mkOption {
-            type = nullOr str;
-            default = null;
-            example = "utf8";
-            description = "Database character set to connect with";
-          };
-
-          useSSL = mkOption {
-            type = nullOr bool;
-            default = false;
-            description = "Whether to connect to the database using SSL";
-          };
-
-          sslCert = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "The file path to the SSL certificate. Only available for the mysql database.";
-          };
-
-          sslKey = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "The file path to the SSL key. Only available for the mysql database.";
-          };
-
-          sslCA = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "The file path to the SSL certificate authority. Only available for the mysql database.";
-          };
-
-          sslCApath = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "The file path to the directory that contains the trusted SSL CA certificates in PEM format. Only available for the mysql database.";
-          };
-
-          sslCipher = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "A list of one or more permissible ciphers to use for SSL encryption, in a format understood by OpenSSL. Only available for the mysql database.";
-          };
-
-          rootDN = mkOption {
-            type = str;
-            description = "Root object of the LDAP tree";
-          };
-
-          ldapEncryption = mkOption {
-            type = enum [ "none" "starttls" "ldaps" ];
-            default = "none";
-            description = "LDAP encryption to use";
-          };
-
-          ldapTimeout = mkOption {
-            type = ints.positive;
-            default = 5;
-            description = "Connection timeout for every LDAP connection";
-          };
-
-          sshPrivateKey = mkOption {
-            type = str;
-            description = "The path to the private key of the user";
-          };
+      type = nullOr attrs;
+      default = null;
+      example = {
+        icingaweb_db = {
+          type = "db";
+          db = "mysql";
+          host = "localhost";
+          username = "icingaweb2";
+          password = "icingaweb2";
+          dbname = "icingaweb2";
         };
-      }));
-    };
+      };
+      description = ''
+        resources.ini contents.
+        Will automatically be converted to a .ini file.
 
-    mutableAuthConfig = mkOption {
-      type = bool;
-      default = true;
-      description = "Make authentication.ini mutable (e.g. via the web interface)";
+        If the value is null, no resources.ini is created and you can
+        modify it manually (e.g. via the web interface).
+        Note that if you set passwords here, they will go into the nix store.
+      '';
     };
 
     authentications = mkOption {
-      default = {};
-      description = "Icingaweb 2 authentications to define";
-      type = attrsOf (submodule ({ name, ... }: {
-        options = {
-          name = mkOption {
-            visible = false;
-            default = name;
-            type = str;
-            description = "Name of this authentication";
-          };
-
-          backend = mkOption {
-            type = enum [ "external" "ldap" "msldap" "db" ];
-            default = "db";
-            description = "The type of this authentication backend";
-          };
-
-          domain = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "Domain for domain-aware authentication";
-          };
-
-          externalStripRegex = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "Regular expression to strip off specific user name parts";
-          };
-
-          resource = mkOption {
-            type = str;
-            description = "Name of the database/LDAP resource";
-          };
-
-          ldapUserClass = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "LDAP user class";
-          };
-
-          ldapUserNameAttr = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "LDAP attribute which contains the username";
-          };
-
-          ldapFilter = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "LDAP search filter";
-          };
+      type = nullOr attrs;
+      default = null;
+      example = {
+        icingaweb = {
+          backend = "db";
+          resource = "icingaweb_db";
         };
-      }));
-    };
+      };
+      description = ''
+        authentication.ini contents.
+        Will automatically be converted to a .ini file.
 
-    mutableGroupsConfig = mkOption {
-      type = bool;
-      default = true;
-      description = "Make groups.ini mutable (e.g. via the web interface)";
+        If the value is null, no authentication.ini is created and you can
+        modify it manually (e.g. via the web interface).
+      '';
     };
 
     groupBackends = mkOption {
-      default = {};
-      description = "Icingaweb 2 group backends to define";
-      type = attrsOf (submodule ({ name, ... }: {
-        options = {
-          name = mkOption {
-            visible = false;
-            default = name;
-            type = str;
-            description = "Name of this group backend";
-          };
-
-          backend = mkOption {
-            type = enum [ "ldap" "msldap" "db" ];
-            default = "db";
-            description = "The type of this group backend";
-          };
-
-          resource = mkOption {
-            type = str;
-            description = "Name of the database/LDAP resource";
-          };
-
-          ldapUserClass = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "LDAP user class";
-          };
-
-          ldapUserNameAttr = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "LDAP attribute which contains the username";
-          };
-
-          ldapGroupClass = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "LDAP group class";
-          };
-
-          ldapGroupNameAttr = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "LDAP attribute which contains the groupname";
-          };
-
-          ldapGroupFilter = mkOption {
-            type = nullOr str;
-            default = null;
-            description = "LDAP group search filter";
-          };
-
-          ldapNestedSearch = mkOption {
-            type = bool;
-            default = false;
-            description = "Enable nested group search in Active Directory based on the user";
-          };
+      type = nullOr attrs;
+      default = null;
+      example = {
+        icingaweb = {
+          backend = "db";
+          resource = "icingaweb_db";
         };
-      }));
-    };
+      };
+      description = ''
+        groups.ini contents.
+        Will automatically be converted to a .ini file.
 
-    mutableRolesConfig = mkOption {
-      type = bool;
-      default = true;
-      description = "Make roles.ini mutable (e.g. via the web interface)";
+        If the value is null, no groups.ini is created and you can
+        modify it manually (e.g. via the web interface).
+      '';
     };
 
     roles = mkOption {
-      default = {};
-      description = "Icingaweb 2 roles to define";
-      type = attrsOf (submodule ({ name, ... }: {
-        options = {
-          name = mkOption {
-            visible = false;
-            default = name;
-            type = str;
-            description = "Name of this role";
-          };
-
-          users = mkOption {
-            type = listOf str;
-            default = [];
-            description = "List of users that are assigned to the role";
-          };
-
-          groups = mkOption {
-            type = listOf str;
-            default = [];
-            description = "List of groups that are assigned to the role";
-          };
-
-          permissions = mkOption {
-            type = listOf str;
-            default = [];
-            example = [ "application/share/navigation" "config/*" ];
-            description = "The permissions to grant";
-          };
-
-          extraAssignments = mkOption {
-            type = attrsOf (listOf str);
-            default = {};
-            example = { "monitoring/blacklist/properties" = [ "sla" "customer"]; };
-            description = "Additional assignments of this role";
-          };
+      type = nullOr attrs;
+      default = null;
+      example = {
+        Administrators = {
+          users = "admin";
+          permissions = "*";
         };
-      }));
+      };
+      description = ''
+        roles.ini contents.
+        Will automatically be converted to a .ini file.
+
+        If the value is null, no roles.ini is created and you can
+        modify it manually (e.g. via the web interface).
+      '';
     };
   };
 
   config = mkIf cfg.enable {
     services.phpfpm.poolConfigs = mkIf (cfg.pool == "${poolName}") {
-      "${poolName}" = {
-        listen = phpfpmSocketName;
-        phpOptions = ''
-          extension = ${pkgs.phpPackages.imagick}/lib/php/extensions/imagick.so
-          date.timezone = "${cfg.timezone}"
-        '';
-        extraConfig = ''
-          listen.owner = nginx
-          listen.group = nginx
-          listen.mode = 0600
-          user = icingaweb2
-          pm = dynamic
-          pm.max_children = 75
-          pm.start_servers = 2
-          pm.min_spare_servers = 2
-          pm.max_spare_servers = 10
-        '';
-      };
+      "${poolName}" = ''
+        listen = "${phpfpmSocketName}"
+        listen.owner = nginx
+        listen.group = nginx
+        listen.mode = 0600
+        user = icingaweb2
+        pm = dynamic
+        pm.max_children = 75
+        pm.start_servers = 2
+        pm.min_spare_servers = 2
+        pm.max_spare_servers = 10
+      '';
     };
 
+    services.phpfpm.phpOptions = mkIf (cfg.pool == "${poolName}")
+      ''
+        extension = ${pkgs.phpPackages.imagick}/lib/php/extensions/imagick.so
+        date.timezone = "${cfg.timezone}"
+      '';
+
     systemd.services."phpfpm-${poolName}".serviceConfig.ReadWritePaths = [ "/etc/icingaweb2" ];
 
     services.nginx = {
@@ -609,11 +226,11 @@ in {
       // doModule "test"
       // doModule "translation"
       # Configs
-      // optionalAttrs (!cfg.generalConfig.mutable) { "icingaweb2/config.ini".text = configIni; }
-      // optionalAttrs (!cfg.mutableResources) { "icingaweb2/resources.ini".text = resourcesIni; }
-      // optionalAttrs (!cfg.mutableAuthConfig) { "icingaweb2/authentication.ini".text = authenticationIni; }
-      // optionalAttrs (!cfg.mutableGroupsConfig) { "icingaweb2/groups.ini".text = groupsIni; }
-      // optionalAttrs (!cfg.mutableRolesConfig) { "icingaweb2/roles.ini".text = rolesIni; };
+      // optionalAttrs (cfg.generalConfig != null) { "icingaweb2/config.ini".text = generators.toINI {} (defaultConfig // cfg.generalConfig); }
+      // optionalAttrs (cfg.resources != null) { "icingaweb2/resources.ini".text = generators.toINI {} cfg.resources; }
+      // optionalAttrs (cfg.authentications != null) { "icingaweb2/authentication.ini".text = generators.toINI {} cfg.authentications; }
+      // optionalAttrs (cfg.groupBackends != null) { "icingaweb2/groups.ini".text = generators.toINI {} cfg.groupBackends; }
+      // optionalAttrs (cfg.roles != null) { "icingaweb2/roles.ini".text = generators.toINI {} cfg.roles; };
 
     # User and group
     users.groups.icingaweb2 = {};
diff --git a/nixos/modules/services/web-servers/nginx/default.nix b/nixos/modules/services/web-servers/nginx/default.nix
index bf9f0c21aedf..3a154ab75ba9 100644
--- a/nixos/modules/services/web-servers/nginx/default.nix
+++ b/nixos/modules/services/web-servers/nginx/default.nix
@@ -44,19 +44,7 @@ let
     }
   ''));
 
-  awkFormat = builtins.toFile "awkFormat-nginx.awk" ''
-    awk -f
-    {sub(/^[ \t]+/,"");idx=0}
-    /\{/{ctx++;idx=1}
-    /\}/{ctx--}
-    {id="";for(i=idx;i<ctx;i++)id=sprintf("%s%s", id, "\t");printf "%s%s\n", id, $0}
-  '';
-
-  configFile = pkgs.runCommand "nginx.conf" {} (''
-    awk -f ${awkFormat} ${pre-configFile} | sed '/^\s*$/d' > $out
-  '');
-
-  pre-configFile = pkgs.writeText "pre-nginx.conf" ''
+  configFile = pkgs.writers.writeNginxConfig "nginx.conf" ''
     user ${cfg.user} ${cfg.group};
     error_log ${cfg.logError};
     daemon off;
diff --git a/nixos/modules/services/x11/colord.nix b/nixos/modules/services/x11/colord.nix
index d9e81d750725..17568df091d4 100644
--- a/nixos/modules/services/x11/colord.nix
+++ b/nixos/modules/services/x11/colord.nix
@@ -18,22 +18,23 @@ in {
 
   config = mkIf cfg.enable {
 
+    environment.systemPackages = [ pkgs.colord ];
+
     services.dbus.packages = [ pkgs.colord ];
 
     services.udev.packages = [ pkgs.colord ];
 
-    environment.systemPackages = [ pkgs.colord ];
+    systemd.packages = [ pkgs.colord ];
 
-    systemd.services.colord = {
-      description = "Manage, Install and Generate Color Profiles";
-      serviceConfig = {
-        Type = "dbus";
-        BusName = "org.freedesktop.ColorManager";
-        ExecStart = "${pkgs.colord}/libexec/colord";
-        PrivateTmp = true;
-      };
+    environment.etc."tmpfiles.d/colord.conf".source = "${pkgs.colord}/lib/tmpfiles.d/colord.conf";
+
+    users.users.colord = {
+      home = "/var/lib/colord";
+      group = "colord";
     };
 
+    users.groups.colord = {};
+
   };
 
 }
diff --git a/nixos/modules/system/boot/systemd-lib.nix b/nixos/modules/system/boot/systemd-lib.nix
index 68a40377ee13..28ad4f121bbe 100644
--- a/nixos/modules/system/boot/systemd-lib.nix
+++ b/nixos/modules/system/boot/systemd-lib.nix
@@ -9,12 +9,11 @@ in rec {
 
   shellEscape = s: (replaceChars [ "\\" ] [ "\\\\" ] s);
 
+  mkPathSafeName = lib.replaceChars ["@" ":" "\\" "[" "]"] ["-" "-" "-" "" ""];
+
   makeUnit = name: unit:
-    let
-      pathSafeName = lib.replaceChars ["@" ":" "\\" "[" "]"] ["-" "-" "-" "" ""] name;
-    in
     if unit.enable then
-      pkgs.runCommand "unit-${pathSafeName}"
+      pkgs.runCommand "unit-${mkPathSafeName name}"
         { preferLocalBuild = true;
           allowSubstitutes = false;
           inherit (unit) text;
@@ -24,7 +23,7 @@ in rec {
           echo -n "$text" > $out/${shellEscape name}
         ''
     else
-      pkgs.runCommand "unit-${pathSafeName}-disabled"
+      pkgs.runCommand "unit-${mkPathSafeName name}-disabled"
         { preferLocalBuild = true;
           allowSubstitutes = false;
         }
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index a5acf78a8839..b366f019f6e0 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -114,10 +114,11 @@ in
   ipv6 = handleTest ./ipv6.nix {};
   jackett = handleTest ./jackett.nix {};
   jenkins = handleTest ./jenkins.nix {};
-  #kafka = handleTest ./kafka.nix {}; # broken since openjdk: 8u181 -> 8u192
+  kafka = handleTest ./kafka.nix {};
   kerberos = handleTest ./kerberos/default.nix {};
   kernel-latest = handleTest ./kernel-latest.nix {};
   kernel-lts = handleTest ./kernel-lts.nix {};
+  kernel-testing = handleTest ./kernel-testing.nix {};
   keymap = handleTest ./keymap.nix {};
   knot = handleTest ./knot.nix {};
   kubernetes.dns = handleTestOn ["x86_64-linux"] ./kubernetes/dns.nix {};
@@ -131,6 +132,7 @@ in
   #lightdm = handleTest ./lightdm.nix {};
   login = handleTest ./login.nix {};
   #logstash = handleTest ./logstash.nix {};
+  mailcatcher = handleTest ./mailcatcher.nix {};
   mathics = handleTest ./mathics.nix {};
   matrix-synapse = handleTest ./matrix-synapse.nix {};
   memcached = handleTest ./memcached.nix {};
@@ -220,6 +222,8 @@ in
   switchTest = handleTest ./switch-test.nix {};
   syncthing-relay = handleTest ./syncthing-relay.nix {};
   systemd = handleTest ./systemd.nix {};
+  systemd-confinement = handleTest ./systemd-confinement.nix {};
+  pdns-recursor = handleTest ./pdns-recursor.nix {};
   taskserver = handleTest ./taskserver.nix {};
   telegraf = handleTest ./telegraf.nix {};
   tomcat = handleTest ./tomcat.nix {};
@@ -229,6 +233,7 @@ in
   upnp = handleTest ./upnp.nix {};
   vault = handleTest ./vault.nix {};
   virtualbox = handleTestOn ["x86_64-linux"] ./virtualbox.nix {};
+  wireguard = handleTest ./wireguard {};
   wordpress = handleTest ./wordpress.nix {};
   xautolock = handleTest ./xautolock.nix {};
   xdg-desktop-portal = handleTest ./xdg-desktop-portal.nix {};
diff --git a/nixos/tests/docker-tools.nix b/nixos/tests/docker-tools.nix
index 399e4d4e428f..502b537ed68b 100644
--- a/nixos/tests/docker-tools.nix
+++ b/nixos/tests/docker-tools.nix
@@ -34,8 +34,8 @@ import ./make-test.nix ({ pkgs, ... }: {
 
       # To test the pullImage tool
       $docker->succeed("docker load --input='${pkgs.dockerTools.examples.nixFromDockerHub}'");
-      $docker->succeed("docker run --rm nixos/nix:2.2.1 nix-store --version");
-      $docker->succeed("docker rmi nixos/nix:2.2.1");
+      $docker->succeed("docker run --rm nix:2.2.1 nix-store --version");
+      $docker->succeed("docker rmi nix:2.2.1");
 
       # To test runAsRoot and entry point
       $docker->succeed("docker load --input='${pkgs.dockerTools.examples.nginx}'");
diff --git a/nixos/tests/kafka.nix b/nixos/tests/kafka.nix
index 72f91f6428a5..f526d18befee 100644
--- a/nixos/tests/kafka.nix
+++ b/nixos/tests/kafka.nix
@@ -72,4 +72,5 @@ in with pkgs; {
   kafka_1_1  = makeKafkaTest "kafka_1_1"  apacheKafka_1_1;
   kafka_2_0  = makeKafkaTest "kafka_2_0"  apacheKafka_2_0;
   kafka_2_1  = makeKafkaTest "kafka_2_1"  apacheKafka_2_1;
+  kafka_2_2  = makeKafkaTest "kafka_2_2"  apacheKafka_2_2;
 }
diff --git a/nixos/tests/kernel-testing.nix b/nixos/tests/kernel-testing.nix
new file mode 100644
index 000000000000..276d2de12bb5
--- /dev/null
+++ b/nixos/tests/kernel-testing.nix
@@ -0,0 +1,17 @@
+import ./make-test.nix ({ pkgs, ...} : {
+  name = "kernel-testing";
+  meta = with pkgs.stdenv.lib.maintainers; {
+    maintainers = [ nequissimus ];
+  };
+
+  machine = { pkgs, ... }:
+    {
+      boot.kernelPackages = pkgs.linuxPackages_testing;
+    };
+
+  testScript =
+    ''
+      $machine->succeed("uname -s | grep 'Linux'");
+      $machine->succeed("uname -a | grep '${pkgs.linuxPackages_testing.kernel.modDirVersion}'");
+    '';
+})
diff --git a/nixos/tests/ldap.nix b/nixos/tests/ldap.nix
index b3fd42e75886..fe859876ed25 100644
--- a/nixos/tests/ldap.nix
+++ b/nixos/tests/ldap.nix
@@ -28,20 +28,19 @@ let
       users.ldap.daemon = {
         enable = useDaemon;
         rootpwmoddn = "cn=admin,${dbSuffix}";
-        rootpwmodpw = "/etc/nslcd.rootpwmodpw";
+        rootpwmodpwFile = "/etc/nslcd.rootpwmodpw";
       };
-      # NOTE: password stored in clear in Nix's store, but this is a test.
-      environment.etc."nslcd.rootpwmodpw".source = pkgs.writeText "rootpwmodpw" dbAdminPwd;
       users.ldap.loginPam = true;
       users.ldap.nsswitch = true;
       users.ldap.server = "ldap://server";
       users.ldap.base = "ou=posix,${dbSuffix}";
       users.ldap.bind = {
         distinguishedName = "cn=admin,${dbSuffix}";
-        password = "/etc/ldap/bind.password";
+        passwordFile = "/etc/ldap/bind.password";
       };
-      # NOTE: password stored in clear in Nix's store, but this is a test.
+      # NOTE: passwords stored in clear in Nix's store, but this is a test.
       environment.etc."ldap/bind.password".source = pkgs.writeText "password" dbAdminPwd;
+      environment.etc."nslcd.rootpwmodpw".source = pkgs.writeText "rootpwmodpw" dbAdminPwd;
     };
 in
 
diff --git a/nixos/tests/mailcatcher.nix b/nixos/tests/mailcatcher.nix
new file mode 100644
index 000000000000..d45b5d4edfc5
--- /dev/null
+++ b/nixos/tests/mailcatcher.nix
@@ -0,0 +1,26 @@
+import ./make-test.nix ({ lib, ... }:
+
+{
+  name = "mailcatcher";
+  meta.maintainers = [ lib.maintainers.aanderse ];
+
+  machine =
+    { pkgs, ... }:
+    {
+      services.mailcatcher.enable = true;
+
+      networking.defaultMailServer.directDelivery = true;
+      networking.defaultMailServer.hostName = "localhost:1025";
+
+      environment.systemPackages = [ pkgs.mailutils ];
+    };
+
+  testScript = ''
+    startAll;
+
+    $machine->waitForUnit('mailcatcher.service');
+    $machine->waitForOpenPort('1025');
+    $machine->succeed('echo "this is the body of the email" | mail -s "subject" root@example.org');
+    $machine->succeed('curl http://localhost:1080/messages/1.source') =~ /this is the body of the email/ or die;
+  '';
+})
diff --git a/nixos/tests/minio.nix b/nixos/tests/minio.nix
index 40a599546650..f1218b537711 100644
--- a/nixos/tests/minio.nix
+++ b/nixos/tests/minio.nix
@@ -1,4 +1,24 @@
-import ./make-test.nix ({ pkgs, ...} : {
+import ./make-test.nix ({ pkgs, ...} :
+let
+    accessKey = "BKIKJAA5BMMU2RHO6IBB";
+    secretKey = "V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12";
+    minioPythonScript = pkgs.writeScript "minio-test.py" ''
+      #! ${pkgs.python3.withPackages(ps: [ ps.minio ])}/bin/python
+      import io
+      import os
+      from minio import Minio
+      minioClient = Minio('localhost:9000',
+                    access_key='${accessKey}',
+                    secret_key='${secretKey}',
+                    secure=False)
+      sio = io.BytesIO()
+      sio.write(b'Test from Python')
+      sio.seek(0, os.SEEK_END)
+      sio_len = sio.tell()
+      sio.seek(0)
+      minioClient.put_object('test-bucket', 'test.txt', sio, sio_len, content_type='text/plain')
+    '';
+  in {
   name = "minio";
   meta = with pkgs.stdenv.lib.maintainers; {
     maintainers = [ bachp ];
@@ -8,8 +28,7 @@ import ./make-test.nix ({ pkgs, ...} : {
     machine = { pkgs, ... }: {
       services.minio = {
         enable = true;
-        accessKey = "BKIKJAA5BMMU2RHO6IBB";
-        secretKey = "V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12";
+        inherit accessKey secretKey;
       };
       environment.systemPackages = [ pkgs.minio-client ];
 
@@ -25,9 +44,11 @@ import ./make-test.nix ({ pkgs, ...} : {
       $machine->waitForOpenPort(9000);
 
       # Create a test bucket on the server
-      $machine->succeed("mc config host add minio http://localhost:9000 BKIKJAA5BMMU2RHO6IBB V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12 S3v4");
+      $machine->succeed("mc config host add minio http://localhost:9000 ${accessKey} ${secretKey} S3v4");
       $machine->succeed("mc mb minio/test-bucket");
+      $machine->succeed("${minioPythonScript}");
       $machine->succeed("mc ls minio") =~ /test-bucket/ or die;
+      $machine->succeed("mc cat minio/test-bucket/test.txt") =~ /Test from Python/ or die;
       $machine->shutdown;
 
     '';
diff --git a/nixos/tests/mysql.nix b/nixos/tests/mysql.nix
index 1a6117793664..fedc7f0ab1f0 100644
--- a/nixos/tests/mysql.nix
+++ b/nixos/tests/mysql.nix
@@ -5,7 +5,7 @@ import ./make-test.nix ({ pkgs, ...} : {
   };
 
   nodes = {
-    master =
+    mysql =
       { pkgs, ... }:
 
       {
@@ -13,12 +13,34 @@ import ./make-test.nix ({ pkgs, ...} : {
         services.mysql.initialDatabases = [ { name = "testdb"; schema = ./testdb.sql; } ];
         services.mysql.package = pkgs.mysql;
       };
+
+    mariadb =
+      { pkgs, ... }:
+
+      {
+        users.users.testuser = { };
+        services.mysql.enable = true;
+        services.mysql.ensureDatabases = [ "testdb" ];
+        services.mysql.ensureUsers = [{
+          name = "testuser";
+          ensurePermissions = {
+            "testdb.*" = "ALL PRIVILEGES";
+          };
+        }];
+        services.mysql.package = pkgs.mariadb;
+      };
+
   };
 
   testScript = ''
     startAll;
 
-    $master->waitForUnit("mysql");
-    $master->succeed("echo 'use testdb; select * from tests' | mysql -u root -N | grep 4");
+    $mysql->waitForUnit("mysql");
+    $mysql->succeed("echo 'use testdb; select * from tests' | mysql -u root -N | grep 4");
+
+    $mariadb->waitForUnit("mysql");
+    $mariadb->succeed("echo 'use testdb; create table tests (test_id INT, PRIMARY KEY (test_id));' | sudo -u testuser mysql -u testuser");
+    $mariadb->succeed("echo 'use testdb; insert into tests values (42);' | sudo -u testuser mysql -u testuser");
+    $mariadb->succeed("echo 'use testdb; select test_id from tests' | sudo -u testuser mysql -u testuser -N | grep 42");
   '';
 })
diff --git a/nixos/tests/openldap.nix b/nixos/tests/openldap.nix
index 1eaf87a8eaa8..3ef90e183479 100644
--- a/nixos/tests/openldap.nix
+++ b/nixos/tests/openldap.nix
@@ -4,16 +4,12 @@ import ./make-test.nix {
   machine = { pkgs, ... }: {
     services.openldap = {
       enable = true;
-      extraConfig = ''
-        include ${pkgs.openldap}/etc/schema/core.schema
-        include ${pkgs.openldap}/etc/schema/cosine.schema
-        include ${pkgs.openldap}/etc/schema/inetorgperson.schema
-        include ${pkgs.openldap}/etc/schema/nis.schema
-        database bdb
-        suffix dc=example
+      suffix = "dc=example";
+      rootdn = "cn=root,dc=example";
+      rootpw = "notapassword";
+      database = "bdb";
+      extraDatabaseConfig = ''
         directory /var/db/openldap
-        rootdn cn=root,dc=example
-        rootpw notapassword
       '';
       declarativeContents = ''
         dn: dc=example
diff --git a/nixos/tests/pdns-recursor.nix b/nixos/tests/pdns-recursor.nix
new file mode 100644
index 000000000000..bf6e6093d69c
--- /dev/null
+++ b/nixos/tests/pdns-recursor.nix
@@ -0,0 +1,12 @@
+import ./make-test.nix ({ pkgs, ... }: {
+  name = "powerdns";
+
+  nodes.server = { ... }: {
+    services.pdns-recursor.enable = true;
+  };
+
+  testScript = ''
+    $server->waitForUnit("pdns-recursor");
+    $server->waitForOpenPort("53");
+  '';
+})
diff --git a/nixos/tests/systemd-confinement.nix b/nixos/tests/systemd-confinement.nix
new file mode 100644
index 000000000000..b7b10fb36aac
--- /dev/null
+++ b/nixos/tests/systemd-confinement.nix
@@ -0,0 +1,168 @@
+import ./make-test.nix {
+  name = "systemd-confinement";
+
+  machine = { pkgs, lib, ... }: let
+    testServer = pkgs.writeScript "testserver.sh" ''
+      #!${pkgs.stdenv.shell}
+      export PATH=${lib.escapeShellArg "${pkgs.coreutils}/bin"}
+      ${lib.escapeShellArg pkgs.stdenv.shell} 2>&1
+      echo "exit-status:$?"
+    '';
+
+    testClient = pkgs.writeScriptBin "chroot-exec" ''
+      #!${pkgs.stdenv.shell} -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
+      exit "''${ret:-1}"
+    '';
+
+    mkTestStep = num: { description, config ? {}, testScript }: {
+      systemd.sockets."test${toString num}" = {
+        description = "Socket for Test Service ${toString num}";
+        wantedBy = [ "sockets.target" ];
+        socketConfig.ListenStream = "/run/test${toString num}.sock";
+        socketConfig.Accept = true;
+      };
+
+      systemd.services."test${toString num}@" = {
+        description = "Confined Test Service ${toString num}";
+        confinement = (config.confinement or {}) // { enable = true; };
+        serviceConfig = (config.serviceConfig or {}) // {
+          ExecStart = testServer;
+          StandardInput = "socket";
+        };
+      } // removeAttrs config [ "confinement" "serviceConfig" ];
+
+      __testSteps = lib.mkOrder num ''
+        subtest '${lib.escape ["\\" "'"] description}', sub {
+          $machine->succeed('echo ${toString num} > /teststep');
+          ${testScript}
+        };
+      '';
+    };
+
+  in {
+    imports = lib.imap1 mkTestStep [
+      { description = "chroot-only confinement";
+        config.confinement.mode = "chroot-only";
+        testScript = ''
+          $machine->succeed(
+            'test "$(chroot-exec ls -1 / | paste -sd,)" = bin,nix',
+            'test "$(chroot-exec id -u)" = 0',
+            'chroot-exec chown 65534 /bin',
+          );
+        '';
+      }
+      { description = "full confinement with APIVFS";
+        testScript = ''
+          $machine->fail(
+            'chroot-exec ls -l /etc',
+            'chroot-exec ls -l /run',
+            'chroot-exec chown 65534 /bin',
+          );
+          $machine->succeed(
+            'test "$(chroot-exec id -u)" = 0',
+            'chroot-exec chown 0 /bin',
+          );
+        '';
+      }
+      { description = "check existence of bind-mounted /etc";
+        config.serviceConfig.BindReadOnlyPaths = [ "/etc" ];
+        testScript = ''
+          $machine->succeed('test -n "$(chroot-exec cat /etc/passwd)"');
+        '';
+      }
+      { description = "check if User/Group really runs as non-root";
+        config.serviceConfig.User = "chroot-testuser";
+        config.serviceConfig.Group = "chroot-testgroup";
+        testScript = ''
+          $machine->succeed('chroot-exec ls -l /dev');
+          $machine->succeed('test "$(chroot-exec id -u)" != 0');
+          $machine->fail('chroot-exec touch /bin/test');
+        '';
+      }
+      (let
+        symlink = pkgs.runCommand "symlink" {
+          target = pkgs.writeText "symlink-target" "got me\n";
+        } "ln -s \"$target\" \"$out\"";
+      in {
+        description = "check if symlinks are properly bind-mounted";
+        config.confinement.packages = lib.singleton symlink;
+        testScript = ''
+          $machine->fail('chroot-exec test -e /etc');
+          $machine->succeed('chroot-exec cat ${symlink} >&2');
+          $machine->succeed('test "$(chroot-exec cat ${symlink})" = "got me"');
+        '';
+      })
+      { description = "check if StateDirectory works";
+        config.serviceConfig.User = "chroot-testuser";
+        config.serviceConfig.Group = "chroot-testgroup";
+        config.serviceConfig.StateDirectory = "testme";
+        testScript = ''
+          $machine->succeed('chroot-exec touch /tmp/canary');
+          $machine->succeed('chroot-exec "echo works > /var/lib/testme/foo"');
+          $machine->succeed('test "$(< /var/lib/testme/foo)" = works');
+          $machine->succeed('test ! -e /tmp/canary');
+        '';
+      }
+      { description = "check if /bin/sh works";
+        testScript = ''
+          $machine->succeed(
+            'chroot-exec test -e /bin/sh',
+            'test "$(chroot-exec \'/bin/sh -c "echo bar"\')" = bar',
+          );
+        '';
+      }
+      { description = "check if suppressing /bin/sh works";
+        config.confinement.binSh = null;
+        testScript = ''
+          $machine->succeed(
+            'chroot-exec test ! -e /bin/sh',
+            'test "$(chroot-exec \'/bin/sh -c "echo foo"\')" != foo',
+          );
+        '';
+      }
+      { description = "check if we can set /bin/sh to something different";
+        config.confinement.binSh = "${pkgs.hello}/bin/hello";
+        testScript = ''
+          $machine->succeed(
+            'chroot-exec test -e /bin/sh',
+            'test "$(chroot-exec /bin/sh -g foo)" = foo',
+          );
+        '';
+      }
+      { description = "check if only Exec* dependencies are included";
+        config.environment.FOOBAR = pkgs.writeText "foobar" "eek\n";
+        testScript = ''
+          $machine->succeed('test "$(chroot-exec \'cat "$FOOBAR"\')" != eek');
+        '';
+      }
+      { description = "check if all unit dependencies are included";
+        config.environment.FOOBAR = pkgs.writeText "foobar" "eek\n";
+        config.confinement.fullUnit = true;
+        testScript = ''
+          $machine->succeed('test "$(chroot-exec \'cat "$FOOBAR"\')" = eek');
+        '';
+      }
+    ];
+
+    options.__testSteps = lib.mkOption {
+      type = lib.types.lines;
+      description = "All of the test steps combined as a single script.";
+    };
+
+    config.environment.systemPackages = lib.singleton testClient;
+
+    config.users.groups.chroot-testgroup = {};
+    config.users.users.chroot-testuser = {
+      description = "Chroot Test User";
+      group = "chroot-testgroup";
+    };
+  };
+
+  testScript = { nodes, ... }: ''
+    $machine->waitForUnit('multi-user.target');
+    ${nodes.machine.config.__testSteps}
+  '';
+}
diff --git a/nixos/tests/wireguard/default.nix b/nixos/tests/wireguard/default.nix
new file mode 100644
index 000000000000..b0797b963235
--- /dev/null
+++ b/nixos/tests/wireguard/default.nix
@@ -0,0 +1,97 @@
+let
+  wg-snakeoil-keys = import ./snakeoil-keys.nix;
+in
+
+import ../make-test.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;
+        };
+      };
+
+      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;
+
+        peers = lib.singleton {
+          allowedIPs = [ "10.23.42.2/32" "fc00::2/128" ];
+
+          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;
+        };
+      };
+
+      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 = ''
+    startAll;
+
+    $peer0->waitForUnit("wireguard-wg0.service");
+    $peer1->waitForUnit("wireguard-wg0.service");
+
+    $peer1->succeed("ping -c5 fc00::1");
+    $peer1->succeed("ping -c5 10.23.42.1")
+  '';
+})
diff --git a/nixos/tests/wireguard/snakeoil-keys.nix b/nixos/tests/wireguard/snakeoil-keys.nix
new file mode 100644
index 000000000000..55ad582d4059
--- /dev/null
+++ b/nixos/tests/wireguard/snakeoil-keys.nix
@@ -0,0 +1,11 @@
+{
+  peer0 = {
+    privateKey = "OPuVRS2T0/AtHDp3PXkNuLQYDiqJaBEEnYe42BSnJnQ=";
+    publicKey = "IujkG119YPr2cVQzJkSLYCdjpHIDjvr/qH1w1tdKswY=";
+  };
+
+  peer1 = {
+    privateKey = "uO8JVo/sanx2DOM0L9GUEtzKZ82RGkRnYgpaYc7iXmg=";
+    publicKey = "Ks9yRJIi/0vYgRmn14mIOQRwkcUGBujYINbMpik2SBI=";
+  };
+}
diff --git a/pkgs/applications/altcoins/monero-gui/default.nix b/pkgs/applications/altcoins/monero-gui/default.nix
index fdfc350961c7..f597d6b6527c 100644
--- a/pkgs/applications/altcoins/monero-gui/default.nix
+++ b/pkgs/applications/altcoins/monero-gui/default.nix
@@ -2,8 +2,8 @@
 , makeWrapper, makeDesktopItem
 , qtbase, qmake, qtmultimedia, qttools
 , qtgraphicaleffects, qtdeclarative
-, qtlocation, qtquickcontrols2, qtwebchannel
-, qtwebengine, qtx11extras, qtxmlpatterns
+, qtlocation, qtquickcontrols, qtquickcontrols2
+, qtwebchannel, qtwebengine, qtx11extras, qtxmlpatterns
 , monero, unbound, readline, boost, libunwind
 , libsodium, pcsclite, zeromq, cppzmq, pkgconfig
 , hidapi
@@ -11,6 +11,18 @@
 
 with stdenv.lib;
 
+let
+  qmlPath = qmlLib: "${qmlLib}/${qtbase.qtQmlPrefix}";
+
+  qml2ImportPath = concatMapStringsSep ":" qmlPath [
+    qtbase.bin qtmultimedia.bin qtgraphicaleffects
+    qtdeclarative.bin qtlocation.bin
+    qtquickcontrols qtquickcontrols2.bin
+    qtwebchannel.bin qtwebengine.bin qtxmlpatterns
+  ];
+
+in
+
 stdenv.mkDerivation rec {
   name = "monero-gui-${version}";
   version = "0.14.0.0";
@@ -26,7 +38,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     qtbase qtmultimedia qtgraphicaleffects
-    qtdeclarative qtlocation qtquickcontrols2
+    qtdeclarative qtlocation
+    qtquickcontrols qtquickcontrols2
     qtwebchannel qtwebengine qtx11extras
     qtxmlpatterns monero unbound readline
     boost libunwind libsodium pcsclite zeromq
@@ -81,6 +94,11 @@ stdenv.mkDerivation rec {
       cp $src/images/appicons/$size.png \
          $out/share/icons/hicolor/$size/apps/monero.png
     done;
+
+    # wrap runtime dependencies
+    wrapProgram $out/bin/monero-wallet-gui \
+      --set QML2_IMPORT_PATH "${qml2ImportPath}" \
+      --set QT_PLUGIN_PATH "${qtbase.bin}/${qtbase.qtPluginPrefix}"
   '';
 
   meta = {
diff --git a/pkgs/applications/audio/clementine/default.nix b/pkgs/applications/audio/clementine/default.nix
index b3a0c6377214..1b0dfebe22c2 100644
--- a/pkgs/applications/audio/clementine/default.nix
+++ b/pkgs/applications/audio/clementine/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, fetchpatch, boost, cmake, chromaprint, gettext, gst_all_1, liblastfm
-, qt4, taglib, fftw, glew, qjson, sqlite, libgpod, libplist, usbmuxd, libmtp
+, taglib, fftw, glew, qjson, sqlite, libgpod, libplist, usbmuxd, libmtp
 , libpulseaudio, gvfs, libcdio, libechonest, libspotify, pcre, projectm, protobuf
 , qca2, pkgconfig, sparsehash, config, makeWrapper, gst_plugins }:
 
@@ -49,7 +49,6 @@ let
     protobuf
     qca2
     qjson
-    qt4
     sqlite
     taglib
   ]
diff --git a/pkgs/applications/audio/lollypop/default.nix b/pkgs/applications/audio/lollypop/default.nix
index 6c4818f869ff..3b850a27327b 100644
--- a/pkgs/applications/audio/lollypop/default.nix
+++ b/pkgs/applications/audio/lollypop/default.nix
@@ -5,7 +5,7 @@
 
 python3.pkgs.buildPythonApplication rec  {
   pname = "lollypop";
-  version = "1.0";
+  version = "1.0.3";
 
   format = "other";
   doCheck = false;
@@ -14,7 +14,7 @@ python3.pkgs.buildPythonApplication rec  {
     url = "https://gitlab.gnome.org/World/lollypop";
     rev = "refs/tags/${version}";
     fetchSubmodules = true;
-    sha256 = "00hjxpgmhzhyjjdpm92cbbxwnc17xdhhk8svk5ih3n18yk5655fs";
+    sha256 = "1gjxcwl467h7011j9v4zy1j0fjlz480ibvk4akr6xwjg894jykbx";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/audio/meters_lv2/default.nix b/pkgs/applications/audio/meters_lv2/default.nix
index 669ffbb2688a..a2368017cc1e 100644
--- a/pkgs/applications/audio/meters_lv2/default.nix
+++ b/pkgs/applications/audio/meters_lv2/default.nix
@@ -1,24 +1,24 @@
 { stdenv, fetchurl, pkgconfig
-, lv2, libGLU_combined, gtk2, cairo, pango, fftw }:
+, lv2, libGLU_combined, gtk2, cairo, pango, fftwFloat, libjack2 }:
 
 let
-  version = "0.8.1";
+  version = "0.9.10";
   name = "meters.lv2-${version}";
 
   # robtk submodule is pegged to this version
-  robtkVersion = "0.3.0";
+  robtkVersion = "0.6.2";
   robtkName = "robtk-${robtkVersion}";
 
   src = fetchurl {
     name = "${name}.tar.gz";
     url = "https://github.com/x42/meters.lv2/archive/v${version}.tar.gz";
-    sha256 = "142dg0j34mv5b0agajj2x1n9kgsmkfh08n1cjzk0j8n4xk2wb6ri";
+    sha256 = "0yfyn7j8g50w671b1z7ph4ppjx8ddj5c6nx53syp5y5mfr1b94nx";
   };
 
   robtkSrc = fetchurl {
     name = "${robtkName}.tar.gz";
     url = "https://github.com/x42/robtk/archive/v${robtkVersion}.tar.gz";
-    sha256 = "1ny89i2sgga56k7fxskp9y8sb7pfhp6wgw5mni842p19z6q7h8rq";
+    sha256 = "1v79xys1k2923wpivdjd44vand6c4agwvnrqi4c8kdv9r07b559v";
   };
 
 in
@@ -26,15 +26,13 @@ stdenv.mkDerivation {
   inherit name;
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ lv2 libGLU_combined gtk2 cairo pango fftw ];
+  buildInputs = [ lv2 libGLU_combined gtk2 cairo pango fftwFloat libjack2 ];
 
   srcs = [ src robtkSrc ];
   sourceRoot = name;
 
   postUnpack = "mv ${robtkName}/* ${name}/robtk"; # */
 
-  postPatch = "sed -i 's/fftw3f/fftw3/' Makefile";
-
   preConfigure = "makeFlagsArray=( PREFIX=$out )";
   meter_VERSION = version;
 
diff --git a/pkgs/applications/audio/padthv1/default.nix b/pkgs/applications/audio/padthv1/default.nix
index 084487fd407a..5957a740f350 100644
--- a/pkgs/applications/audio/padthv1/default.nix
+++ b/pkgs/applications/audio/padthv1/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "padthv1-${version}";
-  version = "0.9.4";
+  version = "0.9.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/padthv1/${name}.tar.gz";
-    sha256 = "0k4vlg3clsn2i4k12imvcjiwlp9nx1mikwyrnarg9shxzzdzcf4y";
+    sha256 = "0cd1jfb3ynfrsbz8jwfsbvs5liyddxg4zghrvz931qkkqi117hbh";
   };
 
   buildInputs = [ libjack2 alsaLib libsndfile liblo lv2 qt5.qtbase qt5.qttools fftw ];
diff --git a/pkgs/applications/audio/paprefs/default.nix b/pkgs/applications/audio/paprefs/default.nix
index 23ba3582ce61..6ad931d4867a 100644
--- a/pkgs/applications/audio/paprefs/default.nix
+++ b/pkgs/applications/audio/paprefs/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, meson, ninja, gettext, pkgconfig, pulseaudioFull, gtkmm3, dbus-glib, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
-  name = "paprefs-1.0";
+  name = "paprefs-1.1";
 
   src = fetchurl {
     url = "https://freedesktop.org/software/pulseaudio/paprefs/${name}.tar.xz";
-    sha256 = "0y77i9gaaassvvjrpwb4xbgqcmr51zmj5rh4z8zm687i5izf84md";
+    sha256 = "189z5p20hk0xv9vwvym293503j4pwl03xqk9hl7cl6dwgv0l7wkf";
   };
 
   nativeBuildInputs = [ meson ninja gettext pkgconfig wrapGAppsHook ];
diff --git a/pkgs/applications/audio/qsynth/default.nix b/pkgs/applications/audio/qsynth/default.nix
index 26adc6394349..603ca8b36405 100644
--- a/pkgs/applications/audio/qsynth/default.nix
+++ b/pkgs/applications/audio/qsynth/default.nix
@@ -1,23 +1,17 @@
-{ stdenv, fetchurl, alsaLib, fluidsynth, libjack2, qtbase, qttools, qtx11extras, cmake, pkgconfig }:
+{ stdenv, fetchurl, alsaLib, fluidsynth, libjack2, qt5, autoconf, pkgconfig }:
 
 stdenv.mkDerivation  rec {
   name = "qsynth-${version}";
-  version = "0.5.2";
+  version = "0.5.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/qsynth/${name}.tar.gz";
-    sha256 = "1rfkaxq1pyc4hv3l0i6wicianbcbm1wp53kh9i5d4jsljgisd1dv";
+    sha256 = "08x7znvbwi9miavcarymi7dsv8njmxzwzma20dbmz8j2aswm53w5";
   };
 
-  # cmake is looking for qsynth.desktop.in and fails if it doesn't find it
-  # seems like a bug and can presumable go in the next version after 0.5.2
-  postPatch = ''
-    mv src/qsynth.desktop src/qsynth.desktop.in
-  '';
+  nativeBuildInputs = [ autoconf pkgconfig ];
 
-  nativeBuildInputs = [ cmake pkgconfig ];
-
-  buildInputs = [ alsaLib fluidsynth libjack2 qtbase qttools qtx11extras ];
+  buildInputs = [ alsaLib fluidsynth libjack2 qt5.qtbase qt5.qttools qt5.qtx11extras ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/audio/samplv1/default.nix b/pkgs/applications/audio/samplv1/default.nix
index 73f24e03e307..cba85aacfbb8 100644
--- a/pkgs/applications/audio/samplv1/default.nix
+++ b/pkgs/applications/audio/samplv1/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "samplv1-${version}";
-  version = "0.9.4";
+  version = "0.9.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/samplv1/${name}.tar.gz";
-    sha256 = "17a61lliplhs14b3x83qz3kv7ww4dn3a02jfdlcx2z903hwn5sld";
+    sha256 = "0402rdr46za21w34m7ajzbwiiqcd1h0da3b0ldsr2z5g2mrkzxv8";
   };
 
   buildInputs = [ libjack2 alsaLib liblo libsndfile lv2 qt5.qtbase qt5.qttools];
diff --git a/pkgs/applications/audio/synthv1/default.nix b/pkgs/applications/audio/synthv1/default.nix
index e44df51404a4..0918cf42830b 100644
--- a/pkgs/applications/audio/synthv1/default.nix
+++ b/pkgs/applications/audio/synthv1/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "synthv1-${version}";
-  version = "0.9.4";
+  version = "0.9.5";
 
   src = fetchurl {
     url = "mirror://sourceforge/synthv1/${name}.tar.gz";
-    sha256 = "18xjj14g8gnnbwyrf39bdxc5aswb620w9i323skdf6rnaq229jyv";
+    sha256 = "1b9w4cml3cmcg09kh852cahas6l9ks8wl3gzp1az8rzxz4229yg1";
   };
 
   buildInputs = [ qt5.qtbase qt5.qttools libjack2 alsaLib liblo lv2 ];
diff --git a/pkgs/applications/audio/yoshimi/default.nix b/pkgs/applications/audio/yoshimi/default.nix
index 24c033001cb6..63bb966e3887 100644
--- a/pkgs/applications/audio/yoshimi/default.nix
+++ b/pkgs/applications/audio/yoshimi/default.nix
@@ -6,11 +6,11 @@ assert stdenv ? glibc;
 
 stdenv.mkDerivation  rec {
   name = "yoshimi-${version}";
-  version = "1.5.10.1";
+  version = "1.5.10.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/yoshimi/${name}.tar.bz2";
-    sha256 = "02mmy17sa3dlwmjjahn8rfd6h67c5s0q3fvkf6ljrc2mbbpwc375";
+    sha256 = "1rr99qkq80s8l2iv3x4ccxan07m15dvmd5s9b10386bfjbwbya01";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/audio/zynaddsubfx/default.nix b/pkgs/applications/audio/zynaddsubfx/default.nix
index 1b3429f39d7f..b8cca7c72015 100644
--- a/pkgs/applications/audio/zynaddsubfx/default.nix
+++ b/pkgs/applications/audio/zynaddsubfx/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation  rec {
   name = "zynaddsubfx-${version}";
-  version = "3.0.3";
+  version = "3.0.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/zynaddsubfx/zynaddsubfx-${version}.tar.bz2";
-    sha256 = "1hfpiqdm337gl4ynkmmp2qss2m5z8mzqzjrbiyg6w1v4js7l9phi";
+    sha256 = "18m4ax0x06y1hx4g2g3gf02v0bldkrrb5m7fsr5jlfp1kvjd2j1x";
   };
 
   buildInputs = [ alsaLib cairo libjack2 fftw fltk13 lash libjpeg libXpm minixml ntk zlib liblo ];
diff --git a/pkgs/applications/editors/android-studio/common.nix b/pkgs/applications/editors/android-studio/common.nix
index a1465766f8bf..fdba9f7be774 100644
--- a/pkgs/applications/editors/android-studio/common.nix
+++ b/pkgs/applications/editors/android-studio/common.nix
@@ -39,11 +39,12 @@
 
 let
   drvName = "android-studio-${channel}-${version}";
+  archiveFormat = if builtins.elem channel [ "dev" "canary" ] then "tar.gz" else "zip";
   androidStudio = stdenv.mkDerivation {
     name = drvName;
 
     src = fetchurl {
-      url = "https://dl.google.com/dl/android/studio/ide-zips/${version}/android-studio-ide-${build}-linux.zip";
+      url = "https://dl.google.com/dl/android/studio/ide-zips/${version}/android-studio-ide-${build}-linux.${archiveFormat}";
       sha256 = sha256Hash;
     };
 
@@ -141,6 +142,9 @@ in runCommand
     '';
     preferLocalBuild = true;
     allowSubstitutes = false;
+    passthru = {
+      unwrapped = androidStudio;
+    };
     meta = with stdenv.lib; {
       description = "The Official IDE for Android (${channel} channel)";
       longDescription = ''
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index 7cd436288e67..e5e5e179b890 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -13,14 +13,14 @@ let
     sha256Hash = "0smh3d3v8n0isxg7fkls20622gp52f58i2b6wa4a0g8wnvmd6mw2";
   };
   betaVersion = {
-    version = "3.4.0.16"; # "Android Studio 3.4 RC 2"
-    build = "183.5370308";
-    sha256Hash = "0d7d6n7n1zzhxpdykbwwbrw139mqxkp20d4l0570pk7975p1s2q9";
+    version = "3.4.0.17"; # "Android Studio 3.4 RC 3"
+    build = "183.5400832";
+    sha256Hash = "1v4apc73jdhavhzj8j46mzh15rw08w1hd9y9ykarj3b5q7i2vyq1";
   };
   latestVersion = { # canary & dev
-    version = "3.5.0.7"; # "Android Studio 3.5 Canary 8"
-    build = "191.5375575";
-    sha256Hash = "0vssynvj0j4xbin9h95lciilc3j9mkm53vwzxxr3kqxwl74qx4mj";
+    version = "3.5.0.9"; # "Android Studio 3.5 Canary 10"
+    build = "191.5416148";
+    sha256Hash = "03d2x6bqasw417dxc7b8y65rral73xm2ci512gprmsvwy42k3mqi";
   };
 in rec {
   # Old alias (TODO @primeos: Remove after 19.03 is branched off):
diff --git a/pkgs/applications/editors/emacs/default.nix b/pkgs/applications/editors/emacs/default.nix
index 2f7a4233656c..fe77ffe84bb1 100644
--- a/pkgs/applications/editors/emacs/default.nix
+++ b/pkgs/applications/editors/emacs/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, lib, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm, Xaw3d, libXcursor
-, pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
+{ stdenv, lib, fetchpatch, fetchurl, ncurses, xlibsWrapper, libXaw, libXpm
+, Xaw3d, libXcursor,  pkgconfig, gettext, libXft, dbus, libpng, libjpeg, libungif
 , libtiff, librsvg, gconf, libxml2, imagemagick, gnutls, libselinux
 , alsaLib, cairo, acl, gpm, cf-private, AppKit, GSS, ImageIO, m17n_lib, libotf
 , systemd ? null
@@ -44,6 +44,13 @@ stdenv.mkDerivation rec {
   patches = [
     ./clean-env.patch
     ./tramp-detect-wrapped-gvfsd.patch
+
+    # should drop this at next package update
+    (fetchpatch {
+      name = "support-hunspell-1.7.0-in-ispell.el.patch";
+      url = "https://git.savannah.gnu.org/cgit/emacs.git/patch/?id=2925ce5a7ec1424cfaea9f2f86bd3cab27832584";
+      sha256 = "0w7cgw6zgr7phbivb98innps1rlqf5q2lhwkrwdmai8sbca5bd11";
+    })
   ];
 
   postPatch = lib.optionalString srcRepo ''
@@ -123,7 +130,7 @@ stdenv.mkDerivation rec {
     let libPath = lib.makeLibraryPath [
       libXcursor
     ];
-    in lib.optionalString (withX && toolkit == "lucid") ''
+    in lib.optionalString (stdenv.isLinux && withX && toolkit == "lucid") ''
       patchelf --set-rpath \
         "$(patchelf --print-rpath "$out/bin/emacs"):${libPath}" \
         "$out/bin/emacs"
diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix
index c3d24b9776f6..584c12d5ff63 100644
--- a/pkgs/applications/editors/jetbrains/default.nix
+++ b/pkgs/applications/editors/jetbrains/default.nix
@@ -250,12 +250,12 @@ in
 
   clion = buildClion rec {
     name = "clion-${version}";
-    version = "2018.3.4"; /* updated by script */
+    version = "2019.1"; /* updated by script */
     description  = "C/C++ IDE. New. Intelligent. Cross-platform";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
-      sha256 = "1zglpw9vc3ybdmwymi0c2m6anhcmx9jcqi69gnn06n9f4x1v6gwn"; /* updated by script */
+      sha256 = "1rlqnnv6b7lg18si31zd97ixnslwp8j6imkkjq0j5n9sydsr8xzj"; /* updated by script */
     };
     wmClass = "jetbrains-clion";
     update-channel = "CLion RELEASE"; # channel's id as in http://www.jetbrains.com/updates/updates.xml
@@ -263,12 +263,12 @@ in
 
   datagrip = buildDataGrip rec {
     name = "datagrip-${version}";
-    version = "2018.3.2"; /* updated by script */
+    version = "2018.3.4"; /* updated by script */
     description = "Your Swiss Army Knife for Databases and SQL";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/datagrip/${name}.tar.gz";
-      sha256 = "0vj1cgmg33626i38x9wmh5hqr1lf0x3m23gzq30rp4q4cbi38806"; /* updated by script */
+      sha256 = "10sw41kkf2k60xjpwgc73i182y7px3dmqz2awnrl4gffdb9jgzmy"; /* updated by script */
     };
     wmClass = "jetbrains-datagrip";
     update-channel = "DataGrip RELEASE";
@@ -276,12 +276,12 @@ in
 
   goland = buildGoland rec {
     name = "goland-${version}";
-    version = "2018.3.3"; /* updated by script */
+    version = "2019.1"; /* updated by script */
     description = "Up and Coming Go IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/go/${name}.tar.gz";
-      sha256 = "065z8084xkv6w8m7pq98rgls1avzrqm23mrxdq5172rs5p1c5r9f"; /* updated by script */
+      sha256 = "0aq3x5aixh86h1zvvwrbr2f1nnqdpfvlsadd2ckmf5s5kghvg5r9"; /* updated by script */
     };
     wmClass = "jetbrains-goland";
     update-channel = "GoLand RELEASE";
@@ -289,12 +289,12 @@ in
 
   idea-community = buildIdea rec {
     name = "idea-community-${version}";
-    version = "2018.3.4"; /* updated by script */
+    version = "2019.1"; /* updated by script */
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
-      sha256 = "0j5yc7n04jlyyghmwllpfvcd2g6k1syjp07xb1ljyx7rm4jcf8q6"; /* updated by script */
+      sha256 = "0zyw88dd2v4igp080l99cyq6h0bmyri8a50fjp69ripiz9qaawx1"; /* updated by script */
     };
     wmClass = "jetbrains-idea-ce";
     update-channel = "IntelliJ IDEA RELEASE";
@@ -302,12 +302,12 @@ in
 
   idea-ultimate = buildIdea rec {
     name = "idea-ultimate-${version}";
-    version = "2018.3.4"; /* updated by script */
+    version = "2019.1"; /* updated by script */
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
-      url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jdk.tar.gz";
-      sha256 = "0s3r3h1zcwkfqhsfb224fgy62fdhnd4gjgk2h6pyhq1frnh3x5bg"; /* updated by script */
+      url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jbr.tar.gz";
+      sha256 = "0fsdf090cwwrsq3azknc9rpwwsl71cvsx4flivnqwfakb6rh4f1j"; /* updated by script */
     };
     wmClass = "jetbrains-idea";
     update-channel = "IntelliJ IDEA RELEASE";
@@ -315,12 +315,12 @@ in
 
   phpstorm = buildPhpStorm rec {
     name = "phpstorm-${version}";
-    version = "2018.3.3"; /* updated by script */
+    version = "2019.1"; /* updated by script */
     description = "Professional IDE for Web and PHP developers";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
-      sha256 = "0znhw83h46a3haspwcin5xjf3ask8ijxla778p9vdbi9xs0zqx39"; /* updated by script */
+      sha256 = "1bv2a16wsc9j82w14qfrfjgszwkihk0jwp8bp8z9618q04c8vmgf"; /* updated by script */
     };
     wmClass = "jetbrains-phpstorm";
     update-channel = "PhpStorm RELEASE";
@@ -328,12 +328,12 @@ in
 
   pycharm-community = buildPycharm rec {
     name = "pycharm-community-${version}";
-    version = "2018.3.4"; /* updated by script */
+    version = "2019.1"; /* updated by script */
     description = "PyCharm Community Edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "11kzzwkp206l466ii6vm6iqmhpx0s594vh37x2lwwsgmg6qzz6vq"; /* updated by script */
+      sha256 = "173qm2g6pjga2jlw8sa59bxw543b56r56ikqwv2wp0jq5z61v26f"; /* updated by script */
     };
     wmClass = "jetbrains-pycharm-ce";
     update-channel = "PyCharm RELEASE";
@@ -341,12 +341,12 @@ in
 
   pycharm-professional = buildPycharm rec {
     name = "pycharm-professional-${version}";
-    version = "2018.3.4"; /* updated by script */
+    version = "2019.1"; /* updated by script */
     description = "PyCharm Professional Edition";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/python/${name}.tar.gz";
-      sha256 = "1m8lzghs6g57fwcv6bpmnf21d4w2k10gsmi0i2wv2j8ff4hcy7ij"; /* updated by script */
+      sha256 = "0gjphdzdxgvflkzaakf3c1wnig86lxhxyx6xk6rg40yj6f2hzi47"; /* updated by script */
     };
     wmClass = "jetbrains-pycharm";
     update-channel = "PyCharm RELEASE";
@@ -354,12 +354,12 @@ in
 
   rider = buildRider rec {
     name = "rider-${version}";
-    version = "2018.3.2"; /* updated by script */
+    version = "2018.3.4"; /* updated by script */
     description = "A cross-platform .NET IDE based on the IntelliJ platform and ReSharper";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/rider/JetBrains.Rider-${version}.tar.gz";
-      sha256 = "1ffzbp2xca2z8g0wlkvmqr0j2f2dnqafpnvzk9zd5asfhhbyrhg5"; /* updated by script */
+      sha256 = "1klmg8wgj3shp4s0n2nn7n39zsk1mch6g9ifhwn5cgywpbzgam4p"; /* updated by script */
     };
     wmClass = "jetbrains-rider";
     update-channel = "Rider RELEASE";
@@ -367,12 +367,12 @@ in
 
   ruby-mine = buildRubyMine rec {
     name = "ruby-mine-${version}";
-    version = "2018.3.3"; /* updated by script */
+    version = "2018.3.5"; /* updated by script */
     description = "The Most Intelligent Ruby and Rails IDE";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
-      sha256 = "1zjcdsr91y07dhqmhqy2yq6c0rhsxg2m52fz14hhmphddlwvhzny"; /* updated by script */
+      sha256 = "1gykag8fsfqxv0d6fipn18hhpdvn4qxva2kkb0v330vp73wm2i2w"; /* updated by script */
     };
     wmClass = "jetbrains-rubymine";
     update-channel = "RubyMine RELEASE";
@@ -380,12 +380,12 @@ in
 
   webstorm = buildWebStorm rec {
     name = "webstorm-${version}";
-    version = "2018.3.4"; /* updated by script */
+    version = "2019.1"; /* updated by script */
     description = "Professional IDE for Web and JavaScript development";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz";
-      sha256 = "11l39yy8qdrr89y9x3i9acp0am4xb86z6v7wg1kc9fd5p13jr2xs"; /* updated by script */
+      sha256 = "0r6a9g8ydnxf805gn2wajnwkcyfn0xksbsrs8wq6j4ghipkhscxj"; /* updated by script */
     };
     wmClass = "jetbrains-webstorm";
     update-channel = "WebStorm RELEASE";
diff --git a/pkgs/applications/editors/neovim/neovim-remote.nix b/pkgs/applications/editors/neovim/neovim-remote.nix
index cda45c2c739d..891fd32df70b 100644
--- a/pkgs/applications/editors/neovim/neovim-remote.nix
+++ b/pkgs/applications/editors/neovim/neovim-remote.nix
@@ -4,14 +4,14 @@ with stdenv.lib;
 
 pythonPackages.buildPythonApplication rec {
   pname = "neovim-remote";
-  version = "2.1.4";
+  version = "2.1.5";
   disabled = !pythonPackages.isPy3k;
 
   src = fetchFromGitHub {
     owner = "mhinz";
     repo = "neovim-remote";
     rev = "v${version}";
-    sha256 = "1s438cbyyzgg96b6639wk1ny6d6p2ywcba41l3r027wzyl7wrn8v";
+    sha256 = "1h05b68ka1ka217f6svq8yxvnscwf9sl5cx46c0b6ygcbz1vr3ba";
   };
 
   propagatedBuildInputs = with pythonPackages; [ pynvim psutil ];
diff --git a/pkgs/applications/editors/okteta/default.nix b/pkgs/applications/editors/okteta/default.nix
index 3cc3b9143894..f2068eb30df0 100644
--- a/pkgs/applications/editors/okteta/default.nix
+++ b/pkgs/applications/editors/okteta/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "okteta-${version}";
-  version = "0.25.5";
+  version = "0.26.0";
 
   src = fetchurl {
     url = "mirror://kde/stable/okteta/${version}/src/${name}.tar.xz";
-    sha256 = "1680hx4n36msz86gyjsdr5v7nf8rpybvzrvfw8y98l95hfq3l6g9";
+    sha256 = "0rxvbllisz4zl687zgpb9jj2nbxgfhhf2bj8bnsfaab5jb6jpi2y";
   };
 
   nativeBuildInputs = [ qtscript extra-cmake-modules kdoctools ];
diff --git a/pkgs/applications/editors/sublime/3/common.nix b/pkgs/applications/editors/sublime/3/common.nix
index 8f304524dffa..8b94b87e0505 100644
--- a/pkgs/applications/editors/sublime/3/common.nix
+++ b/pkgs/applications/editors/sublime/3/common.nix
@@ -1,6 +1,6 @@
 {buildVersion, x32sha256, x64sha256, dev ? false}:
 
-{ fetchurl, stdenv, glib, xorg, cairo, gtk2, gtk3, pango, makeWrapper, wrapGAppsHook, openssl, bzip2, runtimeShell,
+{ fetchurl, stdenv, glib, glibcLocales, xorg, cairo, gtk2, gtk3, pango, makeWrapper, wrapGAppsHook, openssl, bzip2, runtimeShell,
   pkexecPath ? "/run/wrappers/bin/pkexec", libredirect,
   gksuSupport ? false, gksu, unzip, zip, bash,
   writeScript, common-updater-scripts, curl, gnugrep}:
@@ -99,6 +99,7 @@ in let
       wrapProgram $out/sublime_text \
         --set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
         --set NIX_REDIRECTS ${builtins.concatStringsSep ":" redirects} \
+        --set LOCALE_ARCHIVE "${glibcLocales.out}/lib/locale/locale-archive" \
         ${stdenv.lib.optionalString (!legacy) ''"''${gappsWrapperArgs[@]}"''}
 
       # Without this, plugin_host crashes, even though it has the rpath
diff --git a/pkgs/applications/editors/sublime/3/packages.nix b/pkgs/applications/editors/sublime/3/packages.nix
index eab51463f16f..9d7539b5b651 100644
--- a/pkgs/applications/editors/sublime/3/packages.nix
+++ b/pkgs/applications/editors/sublime/3/packages.nix
@@ -5,10 +5,10 @@ let
 in
   rec {
     sublime3-dev = common {
-      buildVersion = "3184";
+      buildVersion = "3203";
       dev = true;
-      x32sha256 = "1b6f1fid75g5z247dbnyyj276lrlv99scrdk1vvfcr6vyws77vzr";
-      x64sha256 = "03127jhfjr17ai96p3axh5b5940fds8jcw6vkid8y6dmvd2dpylz";
+      x32sha256 = "004hnlm2dvcfagf3bkbfqxlnkgqk46jrm8w9yagpjwkpdy76mgyx";
+      x64sha256 = "0dp4vi39s2gq5a7snz0byrf44i0csbzwq6hn7i2zqa6rpvfywa1d";
     } {};
 
     sublime3 = common {
diff --git a/pkgs/applications/editors/typora/default.nix b/pkgs/applications/editors/typora/default.nix
index ebd7c77f678c..deb4974a9b14 100644
--- a/pkgs/applications/editors/typora/default.nix
+++ b/pkgs/applications/editors/typora/default.nix
@@ -1,32 +1,44 @@
-{ stdenv, fetchurl, makeWrapper, electron_3, dpkg, gtk3, glib, gnome3, wrapGAppsHook }:
+{ stdenv, fetchurl, makeWrapper, electron_3, dpkg, gtk3, glib, gsettings-desktop-schemas, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   pname = "typora";
-  version = "0.9.64";
+  version = "0.9.68";
 
   src = fetchurl {
     url = "https://www.typora.io/linux/typora_${version}_amd64.deb";
-    sha256 = "0dffydc11ys2i38gdy8080ph1xlbbzhcdcc06hyfv0dr0nf58a09";
+    sha256 = "09hkmnh9avzb7nc8i67vhbv6nc1v90kk88aq01mpmyibpdqp03zp";
   };
 
-  nativeBuildInputs = [ dpkg makeWrapper wrapGAppsHook ];
+  nativeBuildInputs = [
+    dpkg
+    makeWrapper
+    wrapGAppsHook
+  ];
 
-  buildInputs = [ gtk3 glib gnome3.gsettings-desktop-schemas ];
+  buildInputs = [
+    glib
+    gsettings-desktop-schemas
+    gtk3
+  ];
 
   unpackPhase = "dpkg-deb -x $src .";
 
   dontWrapGApps = true;
 
   installPhase = ''
-    mkdir -p $out/bin $out/share/typora
+    runHook preInstall
+
+    mkdir -p $out/bin $out/share
     {
       cd usr
-      mv share/typora/resources/app/* $out/share/typora
-      mv share/applications $out/share
-      mv share/icons $out/share
-      mv share/doc $out/share
+      mv share/typora/resources/app $out/share/typora
+      mv share/{applications,icons,doc} $out/share/
     }
 
+    runHook postInstall
+  '';
+
+  postFixup = ''
     makeWrapper ${electron_3}/bin/electron $out/bin/typora \
       --add-flags $out/share/typora \
       "''${gappsWrapperArgs[@]}" \
@@ -37,7 +49,7 @@ stdenv.mkDerivation rec {
     description = "A minimal Markdown reading & writing app";
     homepage = https://typora.io;
     license = licenses.unfree;
-    maintainers = with maintainers; [ jensbin ];
+    maintainers = with maintainers; [ jensbin worldofpeace ];
     inherit (electron_3.meta) platforms;
   };
 }
diff --git a/pkgs/applications/editors/vscode/default.nix b/pkgs/applications/editors/vscode/default.nix
index 07333a4b8032..ace5bd968cee 100644
--- a/pkgs/applications/editors/vscode/default.nix
+++ b/pkgs/applications/editors/vscode/default.nix
@@ -18,16 +18,16 @@ let
   }.${system};
 
   sha256 = {
-    "i686-linux" = "1qll0hyqyn3vb0v35h9y8rk4l3r6zzc5bkra6pb23bnr4bna4y80";
-    "x86_64-linux" = "1sfvv4g7kmvabqxasil41gasr7hsmgf8wwc4dl1940pb7x19fllq";
-    "x86_64-darwin" = "0gjdppr59pyb2wawvf7yyk7357a5naxga74zf9gc7d9s1fz78hls";
+    "i686-linux" = "0yfnsmixw3kh7lhb8npqhyihy146a31c1k90smn4kqvmlvm06jir";
+    "x86_64-linux" = "002bbwj4hxr58lbhjc05s3l9aw37ak06kp98hs8fpmznjsa5x14y";
+    "x86_64-darwin" = "1f9hkydlyjh2z5d99pwpsqg9yf05pgi5y0mbprgbxacayqcrq2nr";
   }.${system};
 
   archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
 in
   stdenv.mkDerivation rec {
     name = "vscode-${version}";
-    version = "1.32.3";
+    version = "1.33.0";
 
     src = fetchurl {
       name = "VSCode_${version}_${plat}.${archive_fmt}";
diff --git a/pkgs/applications/graphics/ImageMagick/7.0.nix b/pkgs/applications/graphics/ImageMagick/7.0.nix
index f8753ecd1eb8..efbf5864faa8 100644
--- a/pkgs/applications/graphics/ImageMagick/7.0.nix
+++ b/pkgs/applications/graphics/ImageMagick/7.0.nix
@@ -84,7 +84,6 @@ stdenv.mkDerivation rec {
     description = "A software suite to create, edit, compose, or convert bitmap images";
     platforms = platforms.linux ++ platforms.darwin;
     license = licenses.asl20;
-    broken = ghostscript != null; # https://github.com/NixOS/nixpkgs/issues/55118
     maintainers = with maintainers; [ the-kenny ];
   };
 }
diff --git a/pkgs/applications/graphics/ktikz/default.nix b/pkgs/applications/graphics/ktikz/default.nix
index 4b3a423a8ce2..25abcd9d41d7 100644
--- a/pkgs/applications/graphics/ktikz/default.nix
+++ b/pkgs/applications/graphics/ktikz/default.nix
@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
     # lrelease command:
     LRELEASECOMMAND = lrelease
     # qcollectiongenerator command:
-    #QCOLLECTIONGENERATORCOMMAND = qcollectiongenerator
+    QCOLLECTIONGENERATORCOMMAND = qhelpgenerator
 
     # TikZ documentation default file path:
     TIKZ_DOCUMENTATION_DEFAULT = @out@/share/doc/texmf/pgf/pgfmanual.pdf.gz
diff --git a/pkgs/applications/graphics/renderdoc/default.nix b/pkgs/applications/graphics/renderdoc/default.nix
index 3990d0989062..89828ff45d7c 100644
--- a/pkgs/applications/graphics/renderdoc/default.nix
+++ b/pkgs/applications/graphics/renderdoc/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchFromGitHub, cmake, pkgconfig
 , qtbase, qtx11extras, qtsvg, makeWrapper
 , vulkan-loader, xorg
-, python36, bison, pcre, automake, autoconf
+, python3, bison, pcre, automake, autoconf
 }:
 let
   custom_swig = fetchFromGitHub {
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    qtbase qtsvg xorg.libpthreadstubs xorg.libXdmcp qtx11extras vulkan-loader python36
+    qtbase qtsvg xorg.libpthreadstubs xorg.libXdmcp qtx11extras vulkan-loader python3
   ];
 
   nativeBuildInputs = [ cmake makeWrapper pkgconfig bison pcre automake autoconf ];
diff --git a/pkgs/applications/graphics/wings/default.nix b/pkgs/applications/graphics/wings/default.nix
index 891f3586fa59..0a4e9ada0787 100644
--- a/pkgs/applications/graphics/wings/default.nix
+++ b/pkgs/applications/graphics/wings/default.nix
@@ -1,10 +1,10 @@
 { fetchurl, stdenv, erlang, cl, libGL, libGLU, runtimeShell }:
 
 stdenv.mkDerivation rec {
-  name = "wings-2.2.1";
+  name = "wings-2.2.3";
   src = fetchurl {
     url = "mirror://sourceforge/wings/${name}.tar.bz2";
-    sha256 = "1adlq3wd9bz0hjznpzsgilxgsbhr0kk01f06872mq37v4cbw76bh";
+    sha256 = "1b9xdmh0186xxs92i831vm9yq0il1hngi8bl9a1q7fs26wb8js1g";
   };
 
   ERL_LIBS = "${cl}/lib/erlang/lib";
diff --git a/pkgs/applications/graphics/yed/default.nix b/pkgs/applications/graphics/yed/default.nix
index 7267e9bc4857..799ceef1beda 100644
--- a/pkgs/applications/graphics/yed/default.nix
+++ b/pkgs/applications/graphics/yed/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "yEd-${version}";
-  version = "3.18.2";
+  version = "3.19";
 
   src = fetchzip {
     url = "https://www.yworks.com/resources/yed/demo/${name}.zip";
-    sha256 = "1csj19j9mfx4jfc949sz672h8lnfj217nn32d54cxj8llks82ycy";
+    sha256 = "0l70pc7wl2ghfkjab9w2mbx7crwha7xwkrpmspsi5c6q56dw7s33";
   };
 
   nativeBuildInputs = [ makeWrapper unzip ];
diff --git a/pkgs/applications/kde/akonadi/akonadi-paths.patch b/pkgs/applications/kde/akonadi/akonadi-paths.patch
index 9fa3c8a14141..fcbbbbb72eb3 100644
--- a/pkgs/applications/kde/akonadi/akonadi-paths.patch
+++ b/pkgs/applications/kde/akonadi/akonadi-paths.patch
@@ -31,10 +31,10 @@ index be1cc4afb..6d0c1d7e5 100644
      }
      return true;
 diff --git a/src/server/storage/dbconfigmysql.cpp b/src/server/storage/dbconfigmysql.cpp
-index 8b057b459..3fa4548ad 100644
+index dfff6fc29..419e54a5b 100644
 --- a/src/server/storage/dbconfigmysql.cpp
 +++ b/src/server/storage/dbconfigmysql.cpp
-@@ -63,7 +63,6 @@ bool DbConfigMysql::init(QSettings &settings)
+@@ -82,7 +82,6 @@ bool DbConfigMysql::init(QSettings &settings)
      // determine default settings depending on the driver
      QString defaultHostName;
      QString defaultOptions;
@@ -42,7 +42,7 @@ index 8b057b459..3fa4548ad 100644
      QString defaultCleanShutdownCommand;
  
  #ifndef Q_OS_WIN
-@@ -71,25 +70,7 @@ bool DbConfigMysql::init(QSettings &settings)
+@@ -90,16 +89,7 @@ bool DbConfigMysql::init(QSettings &settings)
  #endif
  
      const bool defaultInternalServer = true;
@@ -51,38 +51,29 @@ index 8b057b459..3fa4548ad 100644
 -        defaultServerPath = QStringLiteral(MYSQLD_EXECUTABLE);
 -    }
 -#endif
--    const QStringList mysqldSearchPath = QStringList()
--                                         << QStringLiteral("/usr/bin")
--                                         << QStringLiteral("/usr/sbin")
--                                         << QStringLiteral("/usr/local/sbin")
--                                         << QStringLiteral("/usr/local/libexec")
--                                         << QStringLiteral("/usr/libexec")
--                                         << QStringLiteral("/opt/mysql/libexec")
--                                         << QStringLiteral("/opt/local/lib/mysql5/bin")
--                                         << QStringLiteral("/opt/mysql/sbin");
 -    if (defaultServerPath.isEmpty()) {
--        defaultServerPath = QStandardPaths::findExecutable(QStringLiteral("mysqld"), mysqldSearchPath);
+-        defaultServerPath = findExecutable(QStringLiteral("mysqld"));
 -    }
 -
--    const QString mysqladminPath = QStandardPaths::findExecutable(QStringLiteral("mysqladmin"), mysqldSearchPath);
+-    const QString mysqladminPath = findExecutable(QStringLiteral("mysqladmin"));
 +    const QString mysqladminPath = QLatin1String(NIXPKGS_MYSQL_MYSQLADMIN);
      if (!mysqladminPath.isEmpty()) {
  #ifndef Q_OS_WIN
          defaultCleanShutdownCommand = QStringLiteral("%1 --defaults-file=%2/mysql.conf --socket=%3/mysql.socket shutdown")
-@@ -99,10 +80,10 @@ bool DbConfigMysql::init(QSettings &settings)
+@@ -109,10 +99,10 @@ bool DbConfigMysql::init(QSettings &settings)
  #endif
      }
  
--    mMysqlInstallDbPath = QStandardPaths::findExecutable(QStringLiteral("mysql_install_db"), mysqldSearchPath);
+-    mMysqlInstallDbPath = findExecutable(QStringLiteral("mysql_install_db"));
 +    mMysqlInstallDbPath = QLatin1String(NIXPKGS_MYSQL_MYSQL_INSTALL_DB);
      qCDebug(AKONADISERVER_LOG) << "Found mysql_install_db: " << mMysqlInstallDbPath;
  
--    mMysqlCheckPath = QStandardPaths::findExecutable(QStringLiteral("mysqlcheck"), mysqldSearchPath);
+-    mMysqlCheckPath = findExecutable(QStringLiteral("mysqlcheck"));
 +    mMysqlCheckPath = QLatin1String(NIXPKGS_MYSQL_MYSQLCHECK);
      qCDebug(AKONADISERVER_LOG) << "Found mysqlcheck: " << mMysqlCheckPath;
  
      mInternalServer = settings.value(QStringLiteral("QMYSQL/StartServer"), defaultInternalServer).toBool();
-@@ -119,7 +100,7 @@ bool DbConfigMysql::init(QSettings &settings)
+@@ -129,7 +119,7 @@ bool DbConfigMysql::init(QSettings &settings)
      mUserName = settings.value(QStringLiteral("User")).toString();
      mPassword = settings.value(QStringLiteral("Password")).toString();
      mConnectionOptions = settings.value(QStringLiteral("Options"), defaultOptions).toString();
@@ -91,7 +82,7 @@ index 8b057b459..3fa4548ad 100644
      mCleanServerShutdownCommand = settings.value(QStringLiteral("CleanServerShutdownCommand"), defaultCleanShutdownCommand).toString();
      settings.endGroup();
  
-@@ -129,9 +110,6 @@ bool DbConfigMysql::init(QSettings &settings)
+@@ -139,9 +129,6 @@ bool DbConfigMysql::init(QSettings &settings)
          // intentionally not namespaced as we are the only one in this db instance when using internal mode
          mDatabaseName = QStringLiteral("akonadi");
      }
@@ -101,7 +92,7 @@ index 8b057b459..3fa4548ad 100644
  
      qCDebug(AKONADISERVER_LOG) << "Using mysqld:" << mMysqldPath;
  
-@@ -140,9 +118,6 @@ bool DbConfigMysql::init(QSettings &settings)
+@@ -150,9 +137,6 @@ bool DbConfigMysql::init(QSettings &settings)
      settings.setValue(QStringLiteral("Name"), mDatabaseName);
      settings.setValue(QStringLiteral("Host"), mHostName);
      settings.setValue(QStringLiteral("Options"), mConnectionOptions);
@@ -111,7 +102,7 @@ index 8b057b459..3fa4548ad 100644
      settings.setValue(QStringLiteral("StartServer"), mInternalServer);
      settings.endGroup();
      settings.sync();
-@@ -196,7 +171,7 @@ bool DbConfigMysql::startInternalServer()
+@@ -206,7 +190,7 @@ bool DbConfigMysql::startInternalServer()
  #endif
  
      // generate config file
@@ -189,3 +180,6 @@ index 6b50ae50e..f94a8c5eb 100644
      settings.setValue(QStringLiteral("InitDbPath"), mInitDbPath);
      settings.setValue(QStringLiteral("StartServer"), mInternalServer);
      settings.endGroup();
+-- 
+2.18.1
+
diff --git a/pkgs/applications/kde/fetch.sh b/pkgs/applications/kde/fetch.sh
index 6f6acd1e8bb8..e06c7f0d14aa 100644
--- a/pkgs/applications/kde/fetch.sh
+++ b/pkgs/applications/kde/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( https://download.kde.org/stable/applications/18.12.1/ -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/applications/18.12.3/ )
diff --git a/pkgs/applications/kde/srcs.nix b/pkgs/applications/kde/srcs.nix
index 1efdd3e61235..416273d719fe 100644
--- a/pkgs/applications/kde/srcs.nix
+++ b/pkgs/applications/kde/srcs.nix
@@ -3,1723 +3,1723 @@
 
 {
   akonadi = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/akonadi-18.12.1.tar.xz";
-      sha256 = "141j1wicfl8lgwdgs8yh0mcs4gw004wz8ck21pz55xc1mi4yh9cx";
-      name = "akonadi-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/akonadi-18.12.3.tar.xz";
+      sha256 = "f930deaade1cac1488b8af05cc28f4a78a441c34dbe875b673af3423f8a14658";
+      name = "akonadi-18.12.3.tar.xz";
     };
   };
   akonadi-calendar = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/akonadi-calendar-18.12.1.tar.xz";
-      sha256 = "108ax9bpng5qp3cbn3f2x096l9jsv0x3d8xckcfvd4a3svgap1ri";
-      name = "akonadi-calendar-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/akonadi-calendar-18.12.3.tar.xz";
+      sha256 = "19f92642ba4d62dfccca19ac3ced94495e9137d60a77a672c5443585f30cdaee";
+      name = "akonadi-calendar-18.12.3.tar.xz";
     };
   };
   akonadi-calendar-tools = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/akonadi-calendar-tools-18.12.1.tar.xz";
-      sha256 = "0a54jka0szi3d2dv4kr7s78lbm1sx6a47mccjzc2rp1w2x8dkagl";
-      name = "akonadi-calendar-tools-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/akonadi-calendar-tools-18.12.3.tar.xz";
+      sha256 = "636ea364bea079cae0b899204add76b0d1d9a80d1955c914bc1dad3a6fc731ed";
+      name = "akonadi-calendar-tools-18.12.3.tar.xz";
     };
   };
   akonadiconsole = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/akonadiconsole-18.12.1.tar.xz";
-      sha256 = "06mhpk66ck37k6bfi83cmnjv39lwvm245m0climh1idfi6mn08wk";
-      name = "akonadiconsole-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/akonadiconsole-18.12.3.tar.xz";
+      sha256 = "d052084ecc1665976f7db08d11a15609f017b0803dd30b71b5d1dccc60ac6ed0";
+      name = "akonadiconsole-18.12.3.tar.xz";
     };
   };
   akonadi-contacts = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/akonadi-contacts-18.12.1.tar.xz";
-      sha256 = "1lnqq2qalvzq6g4dwfnlgvrz9wpnl4g64is8ylrb6jf4bvfg3kvq";
-      name = "akonadi-contacts-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/akonadi-contacts-18.12.3.tar.xz";
+      sha256 = "6ad8e352744c258b66a0c6155322681fa4ec50422c81fe4248414b0834e645cc";
+      name = "akonadi-contacts-18.12.3.tar.xz";
     };
   };
   akonadi-import-wizard = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/akonadi-import-wizard-18.12.1.tar.xz";
-      sha256 = "09r5nspv1l8i1ipjxn5xwi6swkggy10hsa8p5bj0qqclsf17ip5j";
-      name = "akonadi-import-wizard-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/akonadi-import-wizard-18.12.3.tar.xz";
+      sha256 = "a74ca212ab05706d5beb94696a933cb46dfd83d5ebd6723de97f7ce4efbe6104";
+      name = "akonadi-import-wizard-18.12.3.tar.xz";
     };
   };
   akonadi-mime = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/akonadi-mime-18.12.1.tar.xz";
-      sha256 = "0fyxls0qhvqcbhpw17vhr8m4h94s2d69c8bpf45k19f005gbb6dk";
-      name = "akonadi-mime-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/akonadi-mime-18.12.3.tar.xz";
+      sha256 = "ff7d91c77b629bba6b93ee6b15c0ebee08aa37368aa8bcae48ecbbacf64bc1b4";
+      name = "akonadi-mime-18.12.3.tar.xz";
     };
   };
   akonadi-notes = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/akonadi-notes-18.12.1.tar.xz";
-      sha256 = "1m2v3qj06pbpdncxcb37131q6xhbsrwp6qv72rmlwlj0cj7xyfl4";
-      name = "akonadi-notes-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/akonadi-notes-18.12.3.tar.xz";
+      sha256 = "ac2f5ef0a3f4621d6af6fef028d641334212d940a1fc3ffc1e3cc6534ca6be60";
+      name = "akonadi-notes-18.12.3.tar.xz";
     };
   };
   akonadi-search = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/akonadi-search-18.12.1.tar.xz";
-      sha256 = "1wwv92kmk4kwr8dj7y34nb2337s80hwnjblnfz4kl3z3ka782gd6";
-      name = "akonadi-search-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/akonadi-search-18.12.3.tar.xz";
+      sha256 = "6436a0f71229cf7917cb4f269f34a2046c24860ecfc03e7018b9d2a7f9e66346";
+      name = "akonadi-search-18.12.3.tar.xz";
     };
   };
   akregator = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/akregator-18.12.1.tar.xz";
-      sha256 = "0zjc6vgf5pdbmj7b3kl15aqkamg5slaxd5n4092pf7nf3v3r74r9";
-      name = "akregator-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/akregator-18.12.3.tar.xz";
+      sha256 = "d3a4f0f4b677825d1b3e1461a020c17a36abe458d7e3ab40389627e2d8163ea1";
+      name = "akregator-18.12.3.tar.xz";
     };
   };
   analitza = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/analitza-18.12.1.tar.xz";
-      sha256 = "0iwlkxcqj62l25ldpa325ymkvhim2mm152h3jqh3z1sc683hc1kv";
-      name = "analitza-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/analitza-18.12.3.tar.xz";
+      sha256 = "c241b6a3d849534ccd50601c0aebd5cd785220bb7957ed7f6b1d3db35ba0f925";
+      name = "analitza-18.12.3.tar.xz";
     };
   };
   ark = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ark-18.12.1.tar.xz";
-      sha256 = "1pcaaq8qdj3w15f0zqfwy7xwknpmb70yc7g4nmj4p48ahq5s2r86";
-      name = "ark-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ark-18.12.3.tar.xz";
+      sha256 = "ecf781b5d3691bb967c9170938c1133e2972ee97d71aab2de65487a952700722";
+      name = "ark-18.12.3.tar.xz";
     };
   };
   artikulate = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/artikulate-18.12.1.tar.xz";
-      sha256 = "17msfgq83iy5dfl5qkmj4f89aa2gbk7p00f7bwiz2fnlg642wyq1";
-      name = "artikulate-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/artikulate-18.12.3.tar.xz";
+      sha256 = "f40cc532dd1093d53ab4f825716ea4f4f4d7f954ac6c58ef412b63323a76c278";
+      name = "artikulate-18.12.3.tar.xz";
     };
   };
   audiocd-kio = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/audiocd-kio-18.12.1.tar.xz";
-      sha256 = "0kv03d2w0vf9fpp89ymnkizzyhckz9pjj8fcqwbacb78k6p52g6p";
-      name = "audiocd-kio-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/audiocd-kio-18.12.3.tar.xz";
+      sha256 = "c15ebda9330688c0304be36999f4900ccd7c0b1ce11e19c296975414dafe53c8";
+      name = "audiocd-kio-18.12.3.tar.xz";
     };
   };
   baloo-widgets = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/baloo-widgets-18.12.1.tar.xz";
-      sha256 = "0axgx1zrbaki20vh9j9bd0h3qvn0ws4cza8smlgvlzx7fkbidmw3";
-      name = "baloo-widgets-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/baloo-widgets-18.12.3.tar.xz";
+      sha256 = "b8475ba1a74f8ebc6a36029b60ac803ab0d2c81c253b8c16bd05b6249454c3e3";
+      name = "baloo-widgets-18.12.3.tar.xz";
     };
   };
   blinken = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/blinken-18.12.1.tar.xz";
-      sha256 = "0ka47snqj1xwf8m1qqa1vxgjwm151dzlk22zg07yh987qgc6fbj2";
-      name = "blinken-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/blinken-18.12.3.tar.xz";
+      sha256 = "2b6a11fa56b8837618e157a4a974eb1dff956cfb8b93e6cb0601bda66a234579";
+      name = "blinken-18.12.3.tar.xz";
     };
   };
   bomber = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/bomber-18.12.1.tar.xz";
-      sha256 = "0a5vvb2ka08lyvybr12gm3lfgvfj3r99kqw1prhr9n97w7f8yc1d";
-      name = "bomber-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/bomber-18.12.3.tar.xz";
+      sha256 = "5b8e24aba4fb14ffc72313f9754315d6a7d98a3e00ee118a2551ac3357ead771";
+      name = "bomber-18.12.3.tar.xz";
     };
   };
   bovo = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/bovo-18.12.1.tar.xz";
-      sha256 = "19w4xfqx6bxs8fr8vkma57ibl5b1jdqfjax240fg81qyqzkx4xsp";
-      name = "bovo-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/bovo-18.12.3.tar.xz";
+      sha256 = "7fc7ff304cf5b5bf2049fdd53fbb4a819bddefc77fde94702c5118240403d972";
+      name = "bovo-18.12.3.tar.xz";
     };
   };
   calendarsupport = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/calendarsupport-18.12.1.tar.xz";
-      sha256 = "0hpq85wh94dlmrfabh1k76xdc9xqavfccjnfy20i71q2ml92gx4p";
-      name = "calendarsupport-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/calendarsupport-18.12.3.tar.xz";
+      sha256 = "e3c23c152a3e339628e79b168e56c22c5c2610600013f3aa8706168569cacfa5";
+      name = "calendarsupport-18.12.3.tar.xz";
     };
   };
   cantor = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/cantor-18.12.1.tar.xz";
-      sha256 = "132zlpcqkbjdb1vrcy6innf6qmxlqibzpf0bgdi33q797vw63drc";
-      name = "cantor-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/cantor-18.12.3.tar.xz";
+      sha256 = "2537b8e8a9e5b72a2b3bf2b08d24c4978f52ef18ced61cdcfd2a09069f670398";
+      name = "cantor-18.12.3.tar.xz";
     };
   };
   cervisia = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/cervisia-18.12.1.tar.xz";
-      sha256 = "02ka1crhkb3dka3qp82vs624fz3hcwydm559x5dq0cdbibdmhqx7";
-      name = "cervisia-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/cervisia-18.12.3.tar.xz";
+      sha256 = "a5e4034b0d1ee07c2efaef6e8eef17b48a340e9d046cd23efceaf67f07ab5a85";
+      name = "cervisia-18.12.3.tar.xz";
     };
   };
   dolphin = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/dolphin-18.12.1.tar.xz";
-      sha256 = "1d3m2h8czxqmgpd060lnj05f0r4bqirqibvbakrl1sv2xxafz8qq";
-      name = "dolphin-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/dolphin-18.12.3.tar.xz";
+      sha256 = "c4921759bdfec9a96201a5d76a67869f867ec7e3caf92f8e46fa5d853a0741b1";
+      name = "dolphin-18.12.3.tar.xz";
     };
   };
   dolphin-plugins = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/dolphin-plugins-18.12.1.tar.xz";
-      sha256 = "0j2cj91732p2wh0g73xxjghbbivlva4mr91vdjrp6dkc4b2vjxh8";
-      name = "dolphin-plugins-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/dolphin-plugins-18.12.3.tar.xz";
+      sha256 = "1bff5f828f11e9b9a527b59f12ec16745fa19fb09392ca1872d6b0c909212427";
+      name = "dolphin-plugins-18.12.3.tar.xz";
     };
   };
   dragon = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/dragon-18.12.1.tar.xz";
-      sha256 = "0ffxpl30xdm5vgrfc6b1k2gzfp3jwakn6my4zq0zfrrlf75hbgkm";
-      name = "dragon-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/dragon-18.12.3.tar.xz";
+      sha256 = "115d60bfdef498ea75bc077a7091fb738615b399b03ec2a76a4bf34f19b407f3";
+      name = "dragon-18.12.3.tar.xz";
     };
   };
   eventviews = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/eventviews-18.12.1.tar.xz";
-      sha256 = "0qvndqj8jhrn9p1g4d4p3l54d7hz9zzkkg92yfjcajcrnl2i0fn1";
-      name = "eventviews-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/eventviews-18.12.3.tar.xz";
+      sha256 = "994ddea6894fd73eeb851b04083bc886288e4531aa770c0b2e5d8e1740bbe4d0";
+      name = "eventviews-18.12.3.tar.xz";
     };
   };
   ffmpegthumbs = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ffmpegthumbs-18.12.1.tar.xz";
-      sha256 = "0j9vwqgsb9pz8hpacsmm4pxss25q7622fr7gq1n2dxf19f1zwxki";
-      name = "ffmpegthumbs-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ffmpegthumbs-18.12.3.tar.xz";
+      sha256 = "4db8ab905d80863f898b6a3ea8cd0cc7baad91ad953d6b65df230079be04b338";
+      name = "ffmpegthumbs-18.12.3.tar.xz";
     };
   };
   filelight = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/filelight-18.12.1.tar.xz";
-      sha256 = "1p9k1ajyjlb001mz8w8jli3ha84z91sc43721xdpngcshz7i8i6f";
-      name = "filelight-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/filelight-18.12.3.tar.xz";
+      sha256 = "9090bc7c7ac2586e857cdc246a94621c1453e7f65c6d491f2f374f43d3e4af1a";
+      name = "filelight-18.12.3.tar.xz";
     };
   };
   granatier = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/granatier-18.12.1.tar.xz";
-      sha256 = "02lmap2axki56d3kfhmx7h6ibqjnx5ga73vsvvx1w4fjikgzm2rn";
-      name = "granatier-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/granatier-18.12.3.tar.xz";
+      sha256 = "ad065e488f9a751423d571f51449e766c625e88ca7d3c30d21ff3b9027fc04af";
+      name = "granatier-18.12.3.tar.xz";
     };
   };
   grantlee-editor = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/grantlee-editor-18.12.1.tar.xz";
-      sha256 = "0r85wirr4dcvja5cynjb0n51lmlijkffg35czqpjvnf2xv1claj4";
-      name = "grantlee-editor-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/grantlee-editor-18.12.3.tar.xz";
+      sha256 = "d46831a589815581bce45c3954eb12fcbb1692fb407f566952a39e3e8c546b9c";
+      name = "grantlee-editor-18.12.3.tar.xz";
     };
   };
   grantleetheme = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/grantleetheme-18.12.1.tar.xz";
-      sha256 = "1c4n27abzpynh6nykfw9z2rhxlmmicvvw0081gsm9h7w1r8n4flc";
-      name = "grantleetheme-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/grantleetheme-18.12.3.tar.xz";
+      sha256 = "7853075503f2a19713ce43ba077dde8036f892dee7f41e64ebc9af06b4005402";
+      name = "grantleetheme-18.12.3.tar.xz";
     };
   };
   gwenview = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/gwenview-18.12.1.tar.xz";
-      sha256 = "01iraiynpsacp8hnmdc9cxlk6qakbbypdck939kcij6j7gm5l2fm";
-      name = "gwenview-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/gwenview-18.12.3.tar.xz";
+      sha256 = "0b4ff869fc09140e258e894f5169fc6c96f1126891b8ed1a391d4624d6ab0c35";
+      name = "gwenview-18.12.3.tar.xz";
     };
   };
   incidenceeditor = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/incidenceeditor-18.12.1.tar.xz";
-      sha256 = "1h1da8vg9x450hm9g936rms6n9d5ddqdl7jrwah3khbzihjpkgvz";
-      name = "incidenceeditor-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/incidenceeditor-18.12.3.tar.xz";
+      sha256 = "b0fa13390b31a24a8bca99f20b132841849d95dba9de3b8a4c9ae979d226ec02";
+      name = "incidenceeditor-18.12.3.tar.xz";
     };
   };
   juk = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/juk-18.12.1.tar.xz";
-      sha256 = "14zlpac1z3gaym83d5vmr7vvqwdzxhfscydwb2qv4ng947lrrs1n";
-      name = "juk-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/juk-18.12.3.tar.xz";
+      sha256 = "8755710f551b3173561ebfcc996f32b3fd8de78d5574584f8e37015541a9fdca";
+      name = "juk-18.12.3.tar.xz";
     };
   };
   k3b = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/k3b-18.12.1.tar.xz";
-      sha256 = "1f5l8jyi30qm225nxp0sahm7lwdk9r2gqzbdrrzhadx6gfm80a4s";
-      name = "k3b-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/k3b-18.12.3.tar.xz";
+      sha256 = "cee825ff0c058cc1cbe3bf47a7acbe3889949460ba383ffae3756b67b418362e";
+      name = "k3b-18.12.3.tar.xz";
     };
   };
   kaccounts-integration = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kaccounts-integration-18.12.1.tar.xz";
-      sha256 = "1mb9rfp7vw9bkndlbwh5ayd9m3znwrl1i6kr0s5872sscmhx2giz";
-      name = "kaccounts-integration-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kaccounts-integration-18.12.3.tar.xz";
+      sha256 = "6e7e4d7aac270f605a5fd4ec9efea8c13807ccb67c11fd3412c1d794ab09e6ce";
+      name = "kaccounts-integration-18.12.3.tar.xz";
     };
   };
   kaccounts-providers = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kaccounts-providers-18.12.1.tar.xz";
-      sha256 = "0pjk7wsqbgibx8racd4qikv3i1j4iqgnbp81mm5nss7hilrnv1vi";
-      name = "kaccounts-providers-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kaccounts-providers-18.12.3.tar.xz";
+      sha256 = "4d084ffdac10a8a8cc8b79a9b17116893c023288c9e29d1cbabe3d28cd0ba5f6";
+      name = "kaccounts-providers-18.12.3.tar.xz";
     };
   };
   kaddressbook = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kaddressbook-18.12.1.tar.xz";
-      sha256 = "0n4abjcq2iana9xyzkghgrs6h9nr0k2vxqrxghnh5iqahn2766ak";
-      name = "kaddressbook-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kaddressbook-18.12.3.tar.xz";
+      sha256 = "81d3ba7d5e8ed14b0cc32825f1efbdccbf9f79ffe4e1f8c888179c3d04b5bd28";
+      name = "kaddressbook-18.12.3.tar.xz";
     };
   };
   kajongg = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kajongg-18.12.1.tar.xz";
-      sha256 = "11c1iyfwqjqihyb3lqvnrb9jsrah0wl1kbrbm2lbmaqf0qnqqr8a";
-      name = "kajongg-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kajongg-18.12.3.tar.xz";
+      sha256 = "e3fba4ddb19e8dfd43f917d737bf13c2391a3042c6941181ab81f4bcd66096f9";
+      name = "kajongg-18.12.3.tar.xz";
     };
   };
   kalarm = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kalarm-18.12.1.tar.xz";
-      sha256 = "1z2rf30ad2rlkcc9ki09pkrvdd8b9f60vsjzvsqfgxx8i87z1lil";
-      name = "kalarm-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kalarm-18.12.3.tar.xz";
+      sha256 = "5c116221e78755b8afd80287885cb50380c2136acd25aa615d3f6041cc0fbeb3";
+      name = "kalarm-18.12.3.tar.xz";
     };
   };
   kalarmcal = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kalarmcal-18.12.1.tar.xz";
-      sha256 = "0wykbg24llympx7m9bkf4aciv6pli359nnnzpli7rh4q58vbnfn7";
-      name = "kalarmcal-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kalarmcal-18.12.3.tar.xz";
+      sha256 = "2658b2d8055558878cf84d50daf333a5f694a586800b9ccfd3eded3304af8ef8";
+      name = "kalarmcal-18.12.3.tar.xz";
     };
   };
   kalgebra = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kalgebra-18.12.1.tar.xz";
-      sha256 = "09g4v4f2xlilqrf2aqsz7zbjqnnrndhhlkkwbrypn148gdnxngs4";
-      name = "kalgebra-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kalgebra-18.12.3.tar.xz";
+      sha256 = "a93b319c6a3fab3d3a12923f8153a6f38281887e176fffaa37ca6cc677a280b5";
+      name = "kalgebra-18.12.3.tar.xz";
     };
   };
   kalzium = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kalzium-18.12.1.tar.xz";
-      sha256 = "1c5li3dhrfiw7kpjv6kfby2c2pq22sraqb3vc0s4nz1h9jnjcah7";
-      name = "kalzium-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kalzium-18.12.3.tar.xz";
+      sha256 = "100f63b0c1624c10ce7bb54a6a8fa6dfaf6800f580bfc0889745e171fe135fef";
+      name = "kalzium-18.12.3.tar.xz";
     };
   };
   kamera = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kamera-18.12.1.tar.xz";
-      sha256 = "177lgyhc5klrpssbk2bsdwmg5hnk92mbjwb7s39kl9h53kw0jmzj";
-      name = "kamera-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kamera-18.12.3.tar.xz";
+      sha256 = "5e0e5a710cffd95019279d68daa27fdd4fba1401450673efa757ffc8a7ca495f";
+      name = "kamera-18.12.3.tar.xz";
     };
   };
   kamoso = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kamoso-18.12.1.tar.xz";
-      sha256 = "1j467cpga2shvibwx3df4vxksfkp5q1hp6az8kcky6gljcmxy06p";
-      name = "kamoso-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kamoso-18.12.3.tar.xz";
+      sha256 = "ed62bbdf8eeefb85605113c3a916b01eec16846825cffe9b0b0c1f5a4580feb3";
+      name = "kamoso-18.12.3.tar.xz";
     };
   };
   kanagram = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kanagram-18.12.1.tar.xz";
-      sha256 = "0ybn3aal51p29g28daalwmpm85306ivgl8rkxhccq7pzfwaww1bx";
-      name = "kanagram-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kanagram-18.12.3.tar.xz";
+      sha256 = "dcc06543830ab06066f2f37eba6722f5cb0893355e30cee8d522085ed5fb2204";
+      name = "kanagram-18.12.3.tar.xz";
     };
   };
   kapman = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kapman-18.12.1.tar.xz";
-      sha256 = "117fkqhn0mg3z14sl64vmkz26rclfrjarf7kvxicvbw0x8s3vsgj";
-      name = "kapman-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kapman-18.12.3.tar.xz";
+      sha256 = "ad4a6377d260df76d000631ab4c95e5cb82ce47d031edc9801b6ed92d856305c";
+      name = "kapman-18.12.3.tar.xz";
     };
   };
   kapptemplate = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kapptemplate-18.12.1.tar.xz";
-      sha256 = "1q52d30zz1ip6x8z56i25ll8hgzd6fp4pckfgr6byh82ymck8kxa";
-      name = "kapptemplate-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kapptemplate-18.12.3.tar.xz";
+      sha256 = "dd4e34e1ed60f4cb03836576dfd5d306ec1890cd0fe583b516bf49c628f1078f";
+      name = "kapptemplate-18.12.3.tar.xz";
     };
   };
   kate = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kate-18.12.1.tar.xz";
-      sha256 = "0p9j9r2ffqh6p5pdxhk1pi8km1ypdsjs1h0g4ncnzwpvkir1rhk7";
-      name = "kate-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kate-18.12.3.tar.xz";
+      sha256 = "f7f2cba41a4c88b65885532db6b6161c66055a6697d20ee88adb70f302d387e1";
+      name = "kate-18.12.3.tar.xz";
     };
   };
   katomic = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/katomic-18.12.1.tar.xz";
-      sha256 = "0pxj8vgx3ijvyznn5gvhv2scwbqhaqc2pmq2897b190vsx9mvkh6";
-      name = "katomic-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/katomic-18.12.3.tar.xz";
+      sha256 = "0e18087d0de067282023a98b800807632dd6a91bab51cf0d43d53bffba9b33f1";
+      name = "katomic-18.12.3.tar.xz";
     };
   };
   kbackup = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kbackup-18.12.1.tar.xz";
-      sha256 = "0x42d7zssddhxdsx7vpvk4630c69pvllpfz40dqk2n3hghx9xvsw";
-      name = "kbackup-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kbackup-18.12.3.tar.xz";
+      sha256 = "7b42f7fff48f4cf735e27603d0e44ecd13d5c85474680f8d24850eaadd4f13bf";
+      name = "kbackup-18.12.3.tar.xz";
     };
   };
   kblackbox = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kblackbox-18.12.1.tar.xz";
-      sha256 = "1wlwdfh23h175gsflmfmr63myds9vz3cs5dp8gr2zlxssdhc2s1p";
-      name = "kblackbox-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kblackbox-18.12.3.tar.xz";
+      sha256 = "d88b2906de45b129f1706b3d250b80f86acb0cc926a3cee679265b86c8934a9b";
+      name = "kblackbox-18.12.3.tar.xz";
     };
   };
   kblocks = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kblocks-18.12.1.tar.xz";
-      sha256 = "1fzsyr8g536k54j3lgqr52a1cmcdmv85z11afhkz2186smnc63pa";
-      name = "kblocks-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kblocks-18.12.3.tar.xz";
+      sha256 = "e981107096893a8078ab978c429f367432a74de1bdeffe8fb628ccc397701332";
+      name = "kblocks-18.12.3.tar.xz";
     };
   };
   kblog = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kblog-18.12.1.tar.xz";
-      sha256 = "0zdqjgan05049md0483l4c27gfwqdzmmx7wv3bziy91kd9bmfv0x";
-      name = "kblog-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kblog-18.12.3.tar.xz";
+      sha256 = "cd84b34312f6c5a9cf56322614caafcf434a800aeff66173a2c6f7cccc0fd2cc";
+      name = "kblog-18.12.3.tar.xz";
     };
   };
   kbounce = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kbounce-18.12.1.tar.xz";
-      sha256 = "1209x02jip17n63ilvbi5knz4584k16c6zbrp8rg982qcabny355";
-      name = "kbounce-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kbounce-18.12.3.tar.xz";
+      sha256 = "c62cb68b4246c1aef73efb04ea883599384afbd977e8da93893346cbd835f343";
+      name = "kbounce-18.12.3.tar.xz";
     };
   };
   kbreakout = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kbreakout-18.12.1.tar.xz";
-      sha256 = "0myh4qncrvm2kd2gwvl7v2078cvv66czl9zsiava8lzq588wddwq";
-      name = "kbreakout-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kbreakout-18.12.3.tar.xz";
+      sha256 = "23e1cc935eab6a2520e683185cb223243c71553b1ef6059a21f09d72e8fe00af";
+      name = "kbreakout-18.12.3.tar.xz";
     };
   };
   kbruch = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kbruch-18.12.1.tar.xz";
-      sha256 = "0jlq08c6zjmdalhbgh2fy5qghj65l12jn7wvr0j2h0s6fqck1djh";
-      name = "kbruch-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kbruch-18.12.3.tar.xz";
+      sha256 = "e98f79865c4d095d7682ab97b0e4e7d23715e402be676d66f184cfbe3eff598d";
+      name = "kbruch-18.12.3.tar.xz";
     };
   };
   kcachegrind = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kcachegrind-18.12.1.tar.xz";
-      sha256 = "0w7fdsflqmkisap6mr805b6knf83nrjrr6bxi1snrl43ipy5ls29";
-      name = "kcachegrind-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kcachegrind-18.12.3.tar.xz";
+      sha256 = "48011190a0ef28998e6c96b9d644e3d06b68606b7d1467c84a8d176eeebb9adf";
+      name = "kcachegrind-18.12.3.tar.xz";
     };
   };
   kcalc = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kcalc-18.12.1.tar.xz";
-      sha256 = "0ffafikh53yfwrsaiyxr4qxy01v8lv02y4xvj56qmhi429j9ax93";
-      name = "kcalc-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kcalc-18.12.3.tar.xz";
+      sha256 = "10b3ebb5efab3731e9f12a8632546685281179881b03aae98f96a2cdbd21f02f";
+      name = "kcalc-18.12.3.tar.xz";
     };
   };
   kcalcore = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kcalcore-18.12.1.tar.xz";
-      sha256 = "1383zmpw8nzx1fs3d55k38f3znbdc7rs21yrka6fmymgh5c3jkki";
-      name = "kcalcore-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kcalcore-18.12.3.tar.xz";
+      sha256 = "d6d6ce1bbdea4eac352b74bcc4bee77da107fdbafab47440b6be5fc3f9d90452";
+      name = "kcalcore-18.12.3.tar.xz";
     };
   };
   kcalutils = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kcalutils-18.12.1.tar.xz";
-      sha256 = "0w6kc39j3m5db8s47q4wh4wm0szl9vwr455i26d99vv8jay6mbpp";
-      name = "kcalutils-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kcalutils-18.12.3.tar.xz";
+      sha256 = "715c48c46cd62f773da4e804e66cdb97eae7c4832a7fe058db2fca61dc4111f9";
+      name = "kcalutils-18.12.3.tar.xz";
     };
   };
   kcharselect = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kcharselect-18.12.1.tar.xz";
-      sha256 = "1p4ap7vs1nd9gr4z71h6cx6fz99k1lliz28ibbky9a60wvnlfim6";
-      name = "kcharselect-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kcharselect-18.12.3.tar.xz";
+      sha256 = "e24e0268c5810cd3cf733dd8fcc8a9e04a111b761d4c1351d9976b3888278dcb";
+      name = "kcharselect-18.12.3.tar.xz";
     };
   };
   kcolorchooser = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kcolorchooser-18.12.1.tar.xz";
-      sha256 = "1lhnnywpfb4v1hwlc8h71lrvb145pc7wcaz7f7wf2kyh5pjkfbzn";
-      name = "kcolorchooser-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kcolorchooser-18.12.3.tar.xz";
+      sha256 = "8defdb9450922b675dc80561a0f4bb119e621a85dd73661fc4caacef8db91228";
+      name = "kcolorchooser-18.12.3.tar.xz";
     };
   };
   kcontacts = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kcontacts-18.12.1.tar.xz";
-      sha256 = "0d32l8hhggcy6dyyps5im74k0psnxrwxa6yni5bmj8m0z7f298ba";
-      name = "kcontacts-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kcontacts-18.12.3.tar.xz";
+      sha256 = "ba244937e36456065ec4c40fd1b44d011df487a940756ddc0ddd761f58454dd3";
+      name = "kcontacts-18.12.3.tar.xz";
     };
   };
   kcron = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kcron-18.12.1.tar.xz";
-      sha256 = "0211xs7zwii5a93827rsnp1gkay78h2hs49lvdc2kah9ccsh0kzn";
-      name = "kcron-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kcron-18.12.3.tar.xz";
+      sha256 = "ba1d7e3ed5453a4867b4900deb957f1020f1533bdadfc36a1c6f83921bfd6ca3";
+      name = "kcron-18.12.3.tar.xz";
     };
   };
   kdav = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdav-18.12.1.tar.xz";
-      sha256 = "0kr07p4gnxyzrgnbj7vkh93wmqwnvv8sc06i2yardr8qp6jhpg77";
-      name = "kdav-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdav-18.12.3.tar.xz";
+      sha256 = "3ce99c65573d6374e91abff50b3a738515da07371f07c1b6e4b1800069a77c23";
+      name = "kdav-18.12.3.tar.xz";
     };
   };
   kdebugsettings = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdebugsettings-18.12.1.tar.xz";
-      sha256 = "1wbi0f82dwd7a8s6szg0yc2mraiinng9a5wjw8xjacgkyyjpqbr3";
-      name = "kdebugsettings-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdebugsettings-18.12.3.tar.xz";
+      sha256 = "680eeec77314d23ca3a40c803b4c22a1800dc982fa81cba9f44dbfa9222539f7";
+      name = "kdebugsettings-18.12.3.tar.xz";
     };
   };
   kde-dev-scripts = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kde-dev-scripts-18.12.1.tar.xz";
-      sha256 = "1k0xjlwpmdl2qpj4x04q9x299wmva2ds4y2wpayah865knvx91j3";
-      name = "kde-dev-scripts-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kde-dev-scripts-18.12.3.tar.xz";
+      sha256 = "c62f05b86615a810beb2573ee2106bc68fc8be586b66bcdde62d3ba4e4c16fb4";
+      name = "kde-dev-scripts-18.12.3.tar.xz";
     };
   };
   kde-dev-utils = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kde-dev-utils-18.12.1.tar.xz";
-      sha256 = "06k01z2ljkcsdzz4zsdp8hr3flss552h0jgy25qv7y1izggk05dj";
-      name = "kde-dev-utils-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kde-dev-utils-18.12.3.tar.xz";
+      sha256 = "f53b896b62b7d2267b78d23fb24cf495932c4c8b552d8bf56c722a49acc54be6";
+      name = "kde-dev-utils-18.12.3.tar.xz";
     };
   };
   kdeedu-data = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdeedu-data-18.12.1.tar.xz";
-      sha256 = "1pnjydj3g768z5zxwbfwvxvlhdbg9rscr3vd1dw4srs338lp0maq";
-      name = "kdeedu-data-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdeedu-data-18.12.3.tar.xz";
+      sha256 = "cebaa135b21cba27015b1679e02a6625b9b444828ec7595e1a46f53dd7ae3999";
+      name = "kdeedu-data-18.12.3.tar.xz";
     };
   };
   kdegraphics-mobipocket = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdegraphics-mobipocket-18.12.1.tar.xz";
-      sha256 = "1bv3981nsy61m8shlwbry9yb37218s2q1k9fas3xgv1260rjmmfq";
-      name = "kdegraphics-mobipocket-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdegraphics-mobipocket-18.12.3.tar.xz";
+      sha256 = "69ae8b6f45b8c9ec3a73e636f7a779257ebbd6f8016d24294bec844a51f2cc52";
+      name = "kdegraphics-mobipocket-18.12.3.tar.xz";
     };
   };
   kdegraphics-thumbnailers = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdegraphics-thumbnailers-18.12.1.tar.xz";
-      sha256 = "1rz578dz6nr3m23kd4njdcx01nmjgskxlla4zqgd33gg08kppmvj";
-      name = "kdegraphics-thumbnailers-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdegraphics-thumbnailers-18.12.3.tar.xz";
+      sha256 = "9bc36ea2eb8a177899bf81b1cdc63a92b8e5dae12308f3e71046a63e58aafec0";
+      name = "kdegraphics-thumbnailers-18.12.3.tar.xz";
     };
   };
   kdenetwork-filesharing = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdenetwork-filesharing-18.12.1.tar.xz";
-      sha256 = "1zxkbcdndbr3sygwpiiw70pxb71hil1x8zj7lgq2yyw968ianah4";
-      name = "kdenetwork-filesharing-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdenetwork-filesharing-18.12.3.tar.xz";
+      sha256 = "296c71526de0e51b4385962c76c2870cfe344b9dafdd2f5f2fba81801350d503";
+      name = "kdenetwork-filesharing-18.12.3.tar.xz";
     };
   };
   kdenlive = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdenlive-18.12.1.tar.xz";
-      sha256 = "189p0sqlmfkaxsdiy1mh0mmskw6ha4zi64fx99w7wnbid8x52bjf";
-      name = "kdenlive-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdenlive-18.12.3.tar.xz";
+      sha256 = "fcfe2474bc271e730ed95edb21ae46e93c1ce773ed036f63c9fb2db02cbc7e64";
+      name = "kdenlive-18.12.3.tar.xz";
     };
   };
   kdepim-addons = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdepim-addons-18.12.1.tar.xz";
-      sha256 = "1gz6rqg39vl2arzs64srpr7xn1syxxiznz58gdss40152gz0hlsp";
-      name = "kdepim-addons-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdepim-addons-18.12.3.tar.xz";
+      sha256 = "450a3f257e998e733b69703a1a813abab93c571c602702cbb4d9ab4ac25e8ce5";
+      name = "kdepim-addons-18.12.3.tar.xz";
     };
   };
   kdepim-apps-libs = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdepim-apps-libs-18.12.1.tar.xz";
-      sha256 = "06q306m09666jh4cx3w0bif81x424hxlvsf31wjhfzdp737xfq3i";
-      name = "kdepim-apps-libs-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdepim-apps-libs-18.12.3.tar.xz";
+      sha256 = "40a6fb24fc262f5340fda4aed453c5d515976aea745765e83cf8053b44d60164";
+      name = "kdepim-apps-libs-18.12.3.tar.xz";
     };
   };
   kdepim-runtime = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdepim-runtime-18.12.1.tar.xz";
-      sha256 = "1vb9rqzyjww7lkc3g2aw43ks7is1bg1nx2mbn8wvmc7cgga66nbc";
-      name = "kdepim-runtime-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdepim-runtime-18.12.3.tar.xz";
+      sha256 = "f3a5da19bb0f60e148d071cf07fd9fd4e6ea116f6125567c767c03b98ea844c3";
+      name = "kdepim-runtime-18.12.3.tar.xz";
     };
   };
   kdesdk-kioslaves = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdesdk-kioslaves-18.12.1.tar.xz";
-      sha256 = "05bds4r70ys4mygmjl5x5hcrygds57mqqmzfv79zq9hcfp2b0g69";
-      name = "kdesdk-kioslaves-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdesdk-kioslaves-18.12.3.tar.xz";
+      sha256 = "1f1951eca1c4081277782e80ef6b7c6768b2bb5a7d1830d69954f2fec27462ad";
+      name = "kdesdk-kioslaves-18.12.3.tar.xz";
     };
   };
   kdesdk-thumbnailers = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdesdk-thumbnailers-18.12.1.tar.xz";
-      sha256 = "1584qy2aa8q7zzgf2zxqw7p2h2l2xfgsa2mrmxaa36xaxbglcvkb";
-      name = "kdesdk-thumbnailers-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdesdk-thumbnailers-18.12.3.tar.xz";
+      sha256 = "a4694da94bd671a1395a32a527c919fb2207e8a959ceff32a11488e2015a784b";
+      name = "kdesdk-thumbnailers-18.12.3.tar.xz";
     };
   };
   kdf = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdf-18.12.1.tar.xz";
-      sha256 = "0zr6k8di9fvzmgvh4s8ji81zdynpkg5yrnddlc9mgid0w9czaw11";
-      name = "kdf-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdf-18.12.3.tar.xz";
+      sha256 = "a8a9e8a4c2bdc1855078383f10720b4b3a388c678dee148494dc18ba5019a6ae";
+      name = "kdf-18.12.3.tar.xz";
     };
   };
   kdialog = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdialog-18.12.1.tar.xz";
-      sha256 = "0i4c2kjyp0dix12vxhj078h7vbylcqxgqx10hzwaszx3wlrycwa2";
-      name = "kdialog-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdialog-18.12.3.tar.xz";
+      sha256 = "8b17013ced4b02ceaf89ed3d3fdcfa4fce06fac54d54041fb1e47169f2def212";
+      name = "kdialog-18.12.3.tar.xz";
     };
   };
   kdiamond = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kdiamond-18.12.1.tar.xz";
-      sha256 = "0j5g1gh267q528k0947brc8nvgq81690hqp7mrf90wxg8qp4ysm4";
-      name = "kdiamond-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kdiamond-18.12.3.tar.xz";
+      sha256 = "b3d959cc195b924ca877df2762c3e8ef115ac41c2355f34efbbcaabe9b02b500";
+      name = "kdiamond-18.12.3.tar.xz";
     };
   };
   keditbookmarks = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/keditbookmarks-18.12.1.tar.xz";
-      sha256 = "0fnxmgfgnh8d6sg7g7ai53xywa22qv4pn4xxj503rjs4a3fsm3j1";
-      name = "keditbookmarks-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/keditbookmarks-18.12.3.tar.xz";
+      sha256 = "8d1f1a6ffa3b68d318ac6eb72707e5e5bb4f6f43ebb25c0475121469a71f6a8d";
+      name = "keditbookmarks-18.12.3.tar.xz";
     };
   };
   kfind = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kfind-18.12.1.tar.xz";
-      sha256 = "1vhi66syjhmc5i64ffgpilyxw9y10qb7633p3gx7vsnbjhvfx45b";
-      name = "kfind-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kfind-18.12.3.tar.xz";
+      sha256 = "ad123b24f88e1ade5a845c16a84a483835cce31b92741107d8dbd02f462d4cd9";
+      name = "kfind-18.12.3.tar.xz";
     };
   };
   kfloppy = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kfloppy-18.12.1.tar.xz";
-      sha256 = "1fx40gb7h0z832qidn635jj7caipxcrzxmrbdfnj8ji2sczs1hyq";
-      name = "kfloppy-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kfloppy-18.12.3.tar.xz";
+      sha256 = "d68af7c572591a1a297cc823c1cb16a8a15973983c31f2e598d75dcc09ae2363";
+      name = "kfloppy-18.12.3.tar.xz";
     };
   };
   kfourinline = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kfourinline-18.12.1.tar.xz";
-      sha256 = "1dwa4nw6998ljbppr4bhwpdg201djk5rjrzjgfs5xv0pynamph0g";
-      name = "kfourinline-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kfourinline-18.12.3.tar.xz";
+      sha256 = "cd3c3129c50502d9fe35f2382fcb1a512519626eb1b776600fdac2190390b9ce";
+      name = "kfourinline-18.12.3.tar.xz";
     };
   };
   kgeography = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kgeography-18.12.1.tar.xz";
-      sha256 = "02xir13p0r67vx3csdra9nza82a25k807cjl3w2pq3dqcg9grrcf";
-      name = "kgeography-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kgeography-18.12.3.tar.xz";
+      sha256 = "ae019c4fc6c2b52344466266a19c6047e5dc414a92461a21d0e9c003dd4433c9";
+      name = "kgeography-18.12.3.tar.xz";
     };
   };
   kget = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kget-18.12.1.tar.xz";
-      sha256 = "0jlpih49rifpqzxzgjc4kv3hv7y42v6pcamyvrmk6q1768lqp7nb";
-      name = "kget-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kget-18.12.3.tar.xz";
+      sha256 = "3386c07c61f072df4259f83895be43c64559c059c24df1b31ca66c4f2b599f86";
+      name = "kget-18.12.3.tar.xz";
     };
   };
   kgoldrunner = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kgoldrunner-18.12.1.tar.xz";
-      sha256 = "19qdw319lzfhmmmmawdpb0dlkz9k1iz6imkwf1qndfv89b6wklba";
-      name = "kgoldrunner-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kgoldrunner-18.12.3.tar.xz";
+      sha256 = "1d54b485ccb81106853d5229422c753a5b0bbd2f9239a17b1c44f737a32d93b6";
+      name = "kgoldrunner-18.12.3.tar.xz";
     };
   };
   kgpg = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kgpg-18.12.1.tar.xz";
-      sha256 = "1rar3hj3wc9vpxc81h0ly1mi87m9cdx17j58k9n02q91jqb8892y";
-      name = "kgpg-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kgpg-18.12.3.tar.xz";
+      sha256 = "05d70923f4c9d068b339dc0a3d3f28890cafe1fbef9820dd6157c1f5fd8f19e8";
+      name = "kgpg-18.12.3.tar.xz";
     };
   };
   khangman = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/khangman-18.12.1.tar.xz";
-      sha256 = "10wk0xdrs6pldg8j5bnsbdx835isxrapb1gm9gx4vjj49riq062q";
-      name = "khangman-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/khangman-18.12.3.tar.xz";
+      sha256 = "1a7cdd27abf229603965ff6b3392bd7935f7f5a2d6418b23f802cfae45f74013";
+      name = "khangman-18.12.3.tar.xz";
     };
   };
   khelpcenter = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/khelpcenter-18.12.1.tar.xz";
-      sha256 = "143f61ngvljm4046q4allwxhx6fis0hd92xdqk8955xwdf42fq6y";
-      name = "khelpcenter-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/khelpcenter-18.12.3.tar.xz";
+      sha256 = "5b4a9ed17d0898c74cf7fd1612e2d055086d5e04148b3b17df5977255fc240b8";
+      name = "khelpcenter-18.12.3.tar.xz";
     };
   };
   kidentitymanagement = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kidentitymanagement-18.12.1.tar.xz";
-      sha256 = "1pl8yzrhfvkxcxasywzklhpx2477whn662s13c5mp6yhpxyxl5xq";
-      name = "kidentitymanagement-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kidentitymanagement-18.12.3.tar.xz";
+      sha256 = "4e8cac86c2ecfe6325bbf8fb7e50a026f6af978be3809f327eddfed7b3aed662";
+      name = "kidentitymanagement-18.12.3.tar.xz";
     };
   };
   kig = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kig-18.12.1.tar.xz";
-      sha256 = "0cc093gwq2cr4ir3rdfkhijjsjvjddw4n7hvrxbshv7pqmnbrjgc";
-      name = "kig-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kig-18.12.3.tar.xz";
+      sha256 = "abba87c3569e571e6d1761dc2e6c0e32969ea09eba6d9c0462cb4dc7bd62d7a2";
+      name = "kig-18.12.3.tar.xz";
     };
   };
   kigo = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kigo-18.12.1.tar.xz";
-      sha256 = "07m3p9r59c4qfwpgipb024mzxi4safiidpypm8gmx87vbsqc99f2";
-      name = "kigo-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kigo-18.12.3.tar.xz";
+      sha256 = "fa767319c3ac3e2dea48a5b09284e47e5f0c5d1862af813258758773998d1484";
+      name = "kigo-18.12.3.tar.xz";
     };
   };
   killbots = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/killbots-18.12.1.tar.xz";
-      sha256 = "12jbvqmi0cx5ma7lai67qamml7qig269vhvjrcvm7jwlg0qx8v43";
-      name = "killbots-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/killbots-18.12.3.tar.xz";
+      sha256 = "4efb4fcd4f34f1843b990a92e5b0309c196071f0778cdc8376eff5eef405deb9";
+      name = "killbots-18.12.3.tar.xz";
     };
   };
   kimagemapeditor = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kimagemapeditor-18.12.1.tar.xz";
-      sha256 = "1mqzd3ja27c4askz9cxfaf6g8wcwlasjka79h4dmvjrw4rkqs4y4";
-      name = "kimagemapeditor-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kimagemapeditor-18.12.3.tar.xz";
+      sha256 = "addaaf257c35e8169288a8e7a50a1628f3ceeb6a2a845c3d260dfe94662438c6";
+      name = "kimagemapeditor-18.12.3.tar.xz";
     };
   };
   kimap = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kimap-18.12.1.tar.xz";
-      sha256 = "1v1qd91pr4xx0wsvvqlg8pcsbyi0n7c90ki0pz8v8z2vay5fagnm";
-      name = "kimap-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kimap-18.12.3.tar.xz";
+      sha256 = "00aed701a3bdcc218902998e63e7c587549f77a1aa0d1bd7dad4a1837adc9992";
+      name = "kimap-18.12.3.tar.xz";
     };
   };
   kio-extras = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kio-extras-18.12.1.tar.xz";
-      sha256 = "17y5awdyck2zjrgb9l2s4rdyvp1pqc6jrdyjv5vhchjdkfb91vw3";
-      name = "kio-extras-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kio-extras-18.12.3.tar.xz";
+      sha256 = "f8879abaea6fcf31ee0bd4a55d0c24a5fded6d61abed1b059f704f797793aef2";
+      name = "kio-extras-18.12.3.tar.xz";
     };
   };
   kirigami-gallery = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kirigami-gallery-18.12.1.tar.xz";
-      sha256 = "1wrvhpdg2qk6ri1hjhdbk6w6rzyxamn6hxfl4mjcaip9gamjlbr0";
-      name = "kirigami-gallery-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kirigami-gallery-18.12.3.tar.xz";
+      sha256 = "64da8da506718e6b7b62e04a9d2fc40ec73f909f9a6b5afd29b4c81c20053e39";
+      name = "kirigami-gallery-18.12.3.tar.xz";
     };
   };
   kiriki = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kiriki-18.12.1.tar.xz";
-      sha256 = "1sxn7qvhyaaf4681hx1hgv2mmfhn64qn6q0rad9vps69cb1rx7pz";
-      name = "kiriki-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kiriki-18.12.3.tar.xz";
+      sha256 = "0b67b5069625fe04f6ffaa65d0d4abcf86f2f067483b4db15508d2b5ee9742ac";
+      name = "kiriki-18.12.3.tar.xz";
     };
   };
   kiten = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kiten-18.12.1.tar.xz";
-      sha256 = "1d964cc7bkr1vgsbbnm9c8na2nls3kmfk9wfkrzdgnj2643dl947";
-      name = "kiten-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kiten-18.12.3.tar.xz";
+      sha256 = "0e0bc0b0b2609a7872b45647976c87ec92ccb068d05113b8dc58e43c6eb1facf";
+      name = "kiten-18.12.3.tar.xz";
     };
   };
   kitinerary = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kitinerary-18.12.1.tar.xz";
-      sha256 = "14bkyi4xj00i8bzjq6z68y67iyylix0c1n8wr1nz0s05pmlg8sws";
-      name = "kitinerary-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kitinerary-18.12.3.tar.xz";
+      sha256 = "f45ef90cb3fb53d83a30837c304b9f7cfa5dbf2953421233d97c101d66a81f35";
+      name = "kitinerary-18.12.3.tar.xz";
     };
   };
   kjumpingcube = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kjumpingcube-18.12.1.tar.xz";
-      sha256 = "0i7lj2qi3mdvghpxyhwiakivxsd85ahy427d418sdykh7dfmn9ih";
-      name = "kjumpingcube-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kjumpingcube-18.12.3.tar.xz";
+      sha256 = "6409a3bb398ab90959afc24fa42b01b6e544526b1dab6f36bb700703fa794993";
+      name = "kjumpingcube-18.12.3.tar.xz";
     };
   };
   kldap = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kldap-18.12.1.tar.xz";
-      sha256 = "117w3jk4i77p8a7dvj03kgxqlhgbkmhyl7w282gl38kxyr7z8hbn";
-      name = "kldap-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kldap-18.12.3.tar.xz";
+      sha256 = "dc5c8f33aad9e82f0cee65c6fc530f6bd9b82ec9cc21d1ce904f0fe9bdf5140e";
+      name = "kldap-18.12.3.tar.xz";
     };
   };
   kleopatra = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kleopatra-18.12.1.tar.xz";
-      sha256 = "1njgfigld774r9xyckip118svxrkylh0a5ib5y8976zb0v71m5mj";
-      name = "kleopatra-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kleopatra-18.12.3.tar.xz";
+      sha256 = "ea165519846d70206e951d8d904bc02d17ed724db100638e657f7c930c4c490b";
+      name = "kleopatra-18.12.3.tar.xz";
     };
   };
   klettres = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/klettres-18.12.1.tar.xz";
-      sha256 = "0xxrkx468wx2f3gb3d77i648xxmy6bq6q0nq121fk2apgdp2dzqk";
-      name = "klettres-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/klettres-18.12.3.tar.xz";
+      sha256 = "4ca89a54858d1f8ac43e8cb485b80a3bb5ead501d39e7e30d8c9b6b8d2d7fd93";
+      name = "klettres-18.12.3.tar.xz";
     };
   };
   klickety = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/klickety-18.12.1.tar.xz";
-      sha256 = "14jvifvm47q0ca7jq7d152l53nswhbwggs0q067n3chmf07g2izy";
-      name = "klickety-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/klickety-18.12.3.tar.xz";
+      sha256 = "45ed455fd9628aaf081bfa6b672199fbb6913c7dc5d5c04ad9df206a3bd962a5";
+      name = "klickety-18.12.3.tar.xz";
     };
   };
   klines = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/klines-18.12.1.tar.xz";
-      sha256 = "1bs7vaqs67232msmsrsfi9avbqrzvyjihsakzxpkn976xwql3zxf";
-      name = "klines-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/klines-18.12.3.tar.xz";
+      sha256 = "6d93e5bee1135f4eeb67e7f845a4fd658be7e5fb33f42c0ad6320200bc86fd80";
+      name = "klines-18.12.3.tar.xz";
     };
   };
   kmag = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kmag-18.12.1.tar.xz";
-      sha256 = "1ig9fbnza2xvxvd1adh9riv3zmrdmm0km8jpqjmh124i8g416qpw";
-      name = "kmag-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kmag-18.12.3.tar.xz";
+      sha256 = "04f1357e46bb3e32c85f08c9d5655cde6351c6efd27824a17019ea8562e8d5ba";
+      name = "kmag-18.12.3.tar.xz";
     };
   };
   kmahjongg = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kmahjongg-18.12.1.tar.xz";
-      sha256 = "0ajml6xy4ljmrn5qbvy08mcf5v5jqzmclsbr6811rrxqxb5fqbqd";
-      name = "kmahjongg-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kmahjongg-18.12.3.tar.xz";
+      sha256 = "188a8d921b72965d4ed0f6490048cde7b9d5606cca7d3cea12463dc71a90ccf6";
+      name = "kmahjongg-18.12.3.tar.xz";
     };
   };
   kmail = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kmail-18.12.1.tar.xz";
-      sha256 = "1wakrrlxp3v0k93hx2c8p136a3hd746l8fxks0g3cwvhl1immxw7";
-      name = "kmail-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kmail-18.12.3.tar.xz";
+      sha256 = "9dd9865d4a463ac552c25126ecaee662b83548091c5abef168bdc7a6d2fb5c76";
+      name = "kmail-18.12.3.tar.xz";
     };
   };
   kmail-account-wizard = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kmail-account-wizard-18.12.1.tar.xz";
-      sha256 = "0v3lwgk3b30ggv6573r6k5z09lcpfzspp5znnsn4650fgrrzg2j3";
-      name = "kmail-account-wizard-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kmail-account-wizard-18.12.3.tar.xz";
+      sha256 = "102a4170cb4f80c7a9ba3aec7a4d34a3e6a8ca18c975b5c0ea33cf7bac9e21df";
+      name = "kmail-account-wizard-18.12.3.tar.xz";
     };
   };
   kmailtransport = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kmailtransport-18.12.1.tar.xz";
-      sha256 = "1ybaps485ic2m8nfy63kw6x7f3l2l67lhyy5zsm7rjipbaqgi2vm";
-      name = "kmailtransport-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kmailtransport-18.12.3.tar.xz";
+      sha256 = "8aaa6045f29195074c61fd58112ca7dfbe594df66cac91bac7b246ab2ab9fad1";
+      name = "kmailtransport-18.12.3.tar.xz";
     };
   };
   kmbox = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kmbox-18.12.1.tar.xz";
-      sha256 = "0anh25klbgb67ynl9mlcny2mrawsd98mzyffvgsd8xkback684zf";
-      name = "kmbox-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kmbox-18.12.3.tar.xz";
+      sha256 = "13a88db1ab0d628a3053a0d6ab5d89cd2f6cbadb3082b52e5dc7048516a10841";
+      name = "kmbox-18.12.3.tar.xz";
     };
   };
   kmime = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kmime-18.12.1.tar.xz";
-      sha256 = "05kjfqaadkflyh1vabzgbx33vr3c70sm2nkp8r9dsa7kg3wij0n2";
-      name = "kmime-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kmime-18.12.3.tar.xz";
+      sha256 = "a09b0757e6ba663bf52d9bb8f7f104f3f19f734a858f6d532a6a20888ebcd274";
+      name = "kmime-18.12.3.tar.xz";
     };
   };
   kmines = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kmines-18.12.1.tar.xz";
-      sha256 = "0dq1jirzb6ljhb7wdrrkyxvmlwg84xzhfikcn9v6nmz9f3pbliwi";
-      name = "kmines-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kmines-18.12.3.tar.xz";
+      sha256 = "40c16b57614098555c32252c75e3890922b62d7005b9059f6ae92e11c96d980f";
+      name = "kmines-18.12.3.tar.xz";
     };
   };
   kmix = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kmix-18.12.1.tar.xz";
-      sha256 = "1ra7jmi5xlq9gbh7csv40sxr20lv8dz659m1jx4ixkzppcj42s73";
-      name = "kmix-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kmix-18.12.3.tar.xz";
+      sha256 = "4edf31a36a5d700cc190ba7a5a0d76789729069d48324a22bda7977cb4ed081a";
+      name = "kmix-18.12.3.tar.xz";
     };
   };
   kmousetool = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kmousetool-18.12.1.tar.xz";
-      sha256 = "07ywyxkm510faaqzywp5rw0lr2x1djhyhkjwyv8l42iw7231bn8x";
-      name = "kmousetool-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kmousetool-18.12.3.tar.xz";
+      sha256 = "34f6bb6f69c284e9cc88d8a31d59c16f003310c33e1e1affd5c363d18f8a91a8";
+      name = "kmousetool-18.12.3.tar.xz";
     };
   };
   kmouth = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kmouth-18.12.1.tar.xz";
-      sha256 = "1g82shlrfm70ddfy2zfv12gv8hwzavz47q4qsyblyzq329kwgww5";
-      name = "kmouth-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kmouth-18.12.3.tar.xz";
+      sha256 = "89b83fb8b4a5eb3c7a6409cd25c730a8bc3be72983c1a75f5e3d3abf01064486";
+      name = "kmouth-18.12.3.tar.xz";
     };
   };
   kmplot = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kmplot-18.12.1.tar.xz";
-      sha256 = "0xl913pajyrhadld2ij9y0ai2w558wa60qfx1y1xwsjfm8124qgf";
-      name = "kmplot-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kmplot-18.12.3.tar.xz";
+      sha256 = "2dd6eec34088b5d3b591091cce41616ee310a66aa2d16e5800db56044d60dd7b";
+      name = "kmplot-18.12.3.tar.xz";
     };
   };
   knavalbattle = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/knavalbattle-18.12.1.tar.xz";
-      sha256 = "1p03c980w4d10mkmvm01imi7vg6cp3wqz0wvw2d5vz47i0jhm2w8";
-      name = "knavalbattle-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/knavalbattle-18.12.3.tar.xz";
+      sha256 = "bce9294830a55e96b234c93fa20eb7d7ae963223e724ab0211ec472c79d35fa3";
+      name = "knavalbattle-18.12.3.tar.xz";
     };
   };
   knetwalk = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/knetwalk-18.12.1.tar.xz";
-      sha256 = "0x5794f91b84l4d8hgkqi33rdqa7s1plhprhmbfvsi4grpms6c0c";
-      name = "knetwalk-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/knetwalk-18.12.3.tar.xz";
+      sha256 = "75ed9859ebb0c40d4efadaf1724b50c1a0436a5d3cd7cb540031cf5535794e3f";
+      name = "knetwalk-18.12.3.tar.xz";
     };
   };
   knights = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/knights-18.12.1.tar.xz";
-      sha256 = "17n7zi100q62wjavfr87369yqp2mjxqz0lyqalagjp25d80z18l2";
-      name = "knights-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/knights-18.12.3.tar.xz";
+      sha256 = "9472ffa7800bd79a84dd0c36e3058d3f6e0813b5695aeffeb73bccb801870990";
+      name = "knights-18.12.3.tar.xz";
     };
   };
   knotes = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/knotes-18.12.1.tar.xz";
-      sha256 = "12n40znf9vczvbf5xfj4zsxwbj2rdj7l1iasmiiil2md8iyjs6dz";
-      name = "knotes-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/knotes-18.12.3.tar.xz";
+      sha256 = "4cd3a4e5064211f3df6ebf4711c2f4e01b09c77580493de9070c9ee842059578";
+      name = "knotes-18.12.3.tar.xz";
     };
   };
   kolf = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kolf-18.12.1.tar.xz";
-      sha256 = "072nmvsxm8ky1nz2pp6ri74ms3rql0qqg004mzbbq061dil4k63i";
-      name = "kolf-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kolf-18.12.3.tar.xz";
+      sha256 = "330cd299702e282a8b248b81cd50ee7ff60a6f512967029730ab87bedb69652f";
+      name = "kolf-18.12.3.tar.xz";
     };
   };
   kollision = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kollision-18.12.1.tar.xz";
-      sha256 = "0idjjfgj8fk0c0l5i6x80cg20p1rpq6kab8z9rh2izvg1v6h7qvl";
-      name = "kollision-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kollision-18.12.3.tar.xz";
+      sha256 = "17376f73da0ea5e05998a4f9f0ccb6c0e41461007b8815637ac1980673e9a856";
+      name = "kollision-18.12.3.tar.xz";
     };
   };
   kolourpaint = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kolourpaint-18.12.1.tar.xz";
-      sha256 = "0h454h5rzk0wki8lbmz57xx3859c27sy9vk1mwawfj963785f2nd";
-      name = "kolourpaint-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kolourpaint-18.12.3.tar.xz";
+      sha256 = "450b714f0d73b59d31c4ceda142a3496d14e51d84b8c8968548a15e05c138f98";
+      name = "kolourpaint-18.12.3.tar.xz";
     };
   };
   kompare = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kompare-18.12.1.tar.xz";
-      sha256 = "099fkxmk7g19l07lf2v3hmqrgfd17fbsv4m5cxdjci8alizw8pp9";
-      name = "kompare-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kompare-18.12.3.tar.xz";
+      sha256 = "7a132a0aced98079fdec37188e9a46f5399e7584ab9d39801d7f0f8176623285";
+      name = "kompare-18.12.3.tar.xz";
     };
   };
   konqueror = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/konqueror-18.12.1.tar.xz";
-      sha256 = "08j4x2xi1iv5661gjpcakp2dmdhvhw3jad98kq3xj9989s7phpfy";
-      name = "konqueror-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/konqueror-18.12.3.tar.xz";
+      sha256 = "d9eb2bb4cd121f9967c6d6e7275dfb56bd41aec03c2b9d903d543b330ca4666a";
+      name = "konqueror-18.12.3.tar.xz";
     };
   };
   konquest = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/konquest-18.12.1.tar.xz";
-      sha256 = "0mlk2vm53nc9dc7ca9ah3ly9qs94md24pi2gmv68pz1ysr51i483";
-      name = "konquest-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/konquest-18.12.3.tar.xz";
+      sha256 = "3698253f8e873819680ed99f377a679bacf5351f3fadc92c07fbaa0f6b269172";
+      name = "konquest-18.12.3.tar.xz";
     };
   };
   konsole = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/konsole-18.12.1.tar.xz";
-      sha256 = "15w1jizs4q6mivv7qjkf0gkqlz0jnrz7b2i59r3kx2fvwwwl18rg";
-      name = "konsole-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/konsole-18.12.3.tar.xz";
+      sha256 = "01ff3245d755a6e38207e58e50e5f82e5c681ead2ad7176d46aec00a8a562e08";
+      name = "konsole-18.12.3.tar.xz";
     };
   };
   kontact = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kontact-18.12.1.tar.xz";
-      sha256 = "0bqn9vh75wpkks1l9hd2bm33k1im356x2091xlnnzs70m4gjxhag";
-      name = "kontact-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kontact-18.12.3.tar.xz";
+      sha256 = "81426545a958d6d71210040f5ede6407048a16d320ea90c405318cdd7e8e9315";
+      name = "kontact-18.12.3.tar.xz";
     };
   };
   kontactinterface = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kontactinterface-18.12.1.tar.xz";
-      sha256 = "0khba3wnpwji4mm5n56bcnffd1v9w4a1b1r7lhlz88dqkakqyb61";
-      name = "kontactinterface-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kontactinterface-18.12.3.tar.xz";
+      sha256 = "4895e884c93ebff36a721f5161386105e729925dbbbf6fafb94c75ba4b291e41";
+      name = "kontactinterface-18.12.3.tar.xz";
     };
   };
   kopete = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kopete-18.12.1.tar.xz";
-      sha256 = "12q62nj287qc4gz8q66spk1d0xykrwkphwaxrh2i3sd07bjmyzqs";
-      name = "kopete-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kopete-18.12.3.tar.xz";
+      sha256 = "8ca7a41e39be23ca6802deade7b5edb88b7e3000bc8e6fb2f68efbc15c2c8d3b";
+      name = "kopete-18.12.3.tar.xz";
     };
   };
   korganizer = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/korganizer-18.12.1.tar.xz";
-      sha256 = "1g8wjrghzxgx9xhqf98z9xlq5svl2v931ifczsfkvs9d3smx2zsg";
-      name = "korganizer-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/korganizer-18.12.3.tar.xz";
+      sha256 = "6a63e60b60af6cb95c78382da15e9e3cf04f936689ce12b62fe38968fad75a9c";
+      name = "korganizer-18.12.3.tar.xz";
     };
   };
   kpat = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kpat-18.12.1.tar.xz";
-      sha256 = "1ami2bssnjm01k3i6bqqciszablkw6975hac2d8zzvg2bz8g4a2a";
-      name = "kpat-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kpat-18.12.3.tar.xz";
+      sha256 = "62c31d6f7a9bb49c09725722bea472811d897b149e29558ca6e248b5d2a41377";
+      name = "kpat-18.12.3.tar.xz";
     };
   };
   kpimtextedit = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kpimtextedit-18.12.1.tar.xz";
-      sha256 = "13ki9gjgakyqcxx4hvs0plqgw0rqx0z95dnyaqv1safqkwrr76hb";
-      name = "kpimtextedit-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kpimtextedit-18.12.3.tar.xz";
+      sha256 = "54586fc97eb863eaa57e589d4461dd9cfbc4d12e58425afadcd22d64ba8a570d";
+      name = "kpimtextedit-18.12.3.tar.xz";
     };
   };
   kpkpass = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kpkpass-18.12.1.tar.xz";
-      sha256 = "1sw3gpvai71lliq4y1snxrhzi9jhl1vxkimlxl2nmhg951nzd4xx";
-      name = "kpkpass-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kpkpass-18.12.3.tar.xz";
+      sha256 = "cd70809ab7a052e0ca2a18266ec5564bde16ac917988798290e3f01e428bd84f";
+      name = "kpkpass-18.12.3.tar.xz";
     };
   };
   kqtquickcharts = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kqtquickcharts-18.12.1.tar.xz";
-      sha256 = "0i8qww267q797pxk3k66d09b0dp7ixbxf92p5bsqf7z4p2graayl";
-      name = "kqtquickcharts-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kqtquickcharts-18.12.3.tar.xz";
+      sha256 = "739859dc261856cf253ac67e2273b20dee476735b4107ece991d7146d45c1bbe";
+      name = "kqtquickcharts-18.12.3.tar.xz";
     };
   };
   krdc = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/krdc-18.12.1.tar.xz";
-      sha256 = "1smdav92rfr92mxk8q7wcmmvrf746vn2xyw36hyszq561ycgwwrx";
-      name = "krdc-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/krdc-18.12.3.tar.xz";
+      sha256 = "c01896b73ab058a20f4c3d8997c28cbb81a7000f5aec346592a9315412c10666";
+      name = "krdc-18.12.3.tar.xz";
     };
   };
   kreversi = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kreversi-18.12.1.tar.xz";
-      sha256 = "171w76xv9dbhy7pxs9swq7xknrwkjk5ndgq4waj6m5dh0109qmx4";
-      name = "kreversi-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kreversi-18.12.3.tar.xz";
+      sha256 = "818ef2ded02caacf2ccf3c012e992070c3b898db319682e8a42cf5726d56b3fc";
+      name = "kreversi-18.12.3.tar.xz";
     };
   };
   krfb = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/krfb-18.12.1.tar.xz";
-      sha256 = "0bhhlp4ask2xqzq9igw0akxr0gb0iilaljwqrcw91fx36sxq46p4";
-      name = "krfb-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/krfb-18.12.3.tar.xz";
+      sha256 = "9596adfe7135930c6c9c8ecd05035e401d80a5e2cd532ba343b7d4c0f57a799b";
+      name = "krfb-18.12.3.tar.xz";
     };
   };
   kross-interpreters = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kross-interpreters-18.12.1.tar.xz";
-      sha256 = "0k57qprmpspp9b8vb124h1whgyskmwd6q7l60vswqizc64xa2src";
-      name = "kross-interpreters-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kross-interpreters-18.12.3.tar.xz";
+      sha256 = "ce2231b2faa9accc6342a37024651b988eefbcb9b3968025ffa4752d0cbdc70c";
+      name = "kross-interpreters-18.12.3.tar.xz";
     };
   };
   kruler = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kruler-18.12.1.tar.xz";
-      sha256 = "1wfxapw6grx860wa6fyya8fnvlrpmdzsz64fnx64h0mky09j21r6";
-      name = "kruler-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kruler-18.12.3.tar.xz";
+      sha256 = "1b347c552648caca99364a0524945d0849cd84b29e4d07f62ee518ec07a98e33";
+      name = "kruler-18.12.3.tar.xz";
     };
   };
   kshisen = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kshisen-18.12.1.tar.xz";
-      sha256 = "0wz4jfrqqvzz2p5f6hwyj7rpijsnhbzmm2m7jhjrljjl5lfdqd3x";
-      name = "kshisen-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kshisen-18.12.3.tar.xz";
+      sha256 = "00c5de16c335262287bab37b07822b6fd2997abcec25a0ad0a7d1ece6769060f";
+      name = "kshisen-18.12.3.tar.xz";
     };
   };
   ksirk = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ksirk-18.12.1.tar.xz";
-      sha256 = "108bw284jsff3qgg98vzs93m6dl8wjfkmbrkjgij03w00jb47bqf";
-      name = "ksirk-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ksirk-18.12.3.tar.xz";
+      sha256 = "cb8f3cc98fe861b0f4ebff77aeeffa12905b98b6db0c8800525f4fb052be4e7a";
+      name = "ksirk-18.12.3.tar.xz";
     };
   };
   ksmtp = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ksmtp-18.12.1.tar.xz";
-      sha256 = "0zj4gpfz2njrdnfbjy7s9xci0il7qmmzargkszgj9jdzpm5qlaas";
-      name = "ksmtp-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ksmtp-18.12.3.tar.xz";
+      sha256 = "90578b1b3ac1ce14bf4f34799b1b400b06734c72f3fecd41f5f07aed37ed3b74";
+      name = "ksmtp-18.12.3.tar.xz";
     };
   };
   ksnakeduel = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ksnakeduel-18.12.1.tar.xz";
-      sha256 = "1l0gfh5vfcfnk3sdl8wsqbc2vcmsdf9frpngfacv4ndm4xc371ql";
-      name = "ksnakeduel-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ksnakeduel-18.12.3.tar.xz";
+      sha256 = "5d55e4c11baecbd77b94dd004b490a7f73870a383e0bf3ad0381f22d36a27a36";
+      name = "ksnakeduel-18.12.3.tar.xz";
     };
   };
   kspaceduel = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kspaceduel-18.12.1.tar.xz";
-      sha256 = "01pcnqpzbrnwxavmfpdib78kc44am9in711012j2621cccx2r9cw";
-      name = "kspaceduel-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kspaceduel-18.12.3.tar.xz";
+      sha256 = "f40d0a7c578f461875efaf9e25d2b061486a21f750ce8bc922db4aed6fed1f11";
+      name = "kspaceduel-18.12.3.tar.xz";
     };
   };
   ksquares = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ksquares-18.12.1.tar.xz";
-      sha256 = "1gyd7qipp821jzn94yrw4b0d46ays0hs26q17hxnbx07hyfj3kcb";
-      name = "ksquares-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ksquares-18.12.3.tar.xz";
+      sha256 = "82a90b7fe5ca8e46950a0de1742783c522fcd85bbc3aabe5955834865bc36b7d";
+      name = "ksquares-18.12.3.tar.xz";
     };
   };
   ksudoku = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ksudoku-18.12.1.tar.xz";
-      sha256 = "1cm5r4fkc7ha0c3mbcank9h2fhym7qc8k1q69lpmzrbm9hw2kgrs";
-      name = "ksudoku-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ksudoku-18.12.3.tar.xz";
+      sha256 = "4a44248f2bde9c66c911fe7ed7bd54e31956053dac18e29217a355ad2b3a05e1";
+      name = "ksudoku-18.12.3.tar.xz";
     };
   };
   ksystemlog = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ksystemlog-18.12.1.tar.xz";
-      sha256 = "1s5b4j67q6nm7r4b1ibvypsd5z9la7cri7z1r7hzihv4nry8pk5c";
-      name = "ksystemlog-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ksystemlog-18.12.3.tar.xz";
+      sha256 = "93f276698b74af654f3ed147d5c025162bd919ec6c79a7c7dd7678051c307e52";
+      name = "ksystemlog-18.12.3.tar.xz";
     };
   };
   kteatime = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kteatime-18.12.1.tar.xz";
-      sha256 = "01p4d61d16k2pppf51sz52y0w4qc1dyqnmhjlnr5w75rfmwvvivg";
-      name = "kteatime-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kteatime-18.12.3.tar.xz";
+      sha256 = "24b3e51edc9d6625ca5b3542bd5edd1d42d79142f2c30f886e1b9515dcdfac6d";
+      name = "kteatime-18.12.3.tar.xz";
     };
   };
   ktimer = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktimer-18.12.1.tar.xz";
-      sha256 = "0wqkfvbdcnwh1jzn2ac7k4pa8amr51ajhljc95mvps03m9d92rsf";
-      name = "ktimer-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktimer-18.12.3.tar.xz";
+      sha256 = "b3808fa9821c3a624b880b9a5607c8e12287cd38418ff06dd9af8345f324fe7e";
+      name = "ktimer-18.12.3.tar.xz";
     };
   };
   ktnef = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktnef-18.12.1.tar.xz";
-      sha256 = "0id7hkmgr5zc12zfrj5ydxyhgdrlx4ip1dsw301i27id104fqb69";
-      name = "ktnef-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktnef-18.12.3.tar.xz";
+      sha256 = "7633f86514d01a1e3709f6854b3b9c859fa1905043bb53240c1ae53f3b76a6ec";
+      name = "ktnef-18.12.3.tar.xz";
     };
   };
   ktouch = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktouch-18.12.1.tar.xz";
-      sha256 = "0v3lhxx45l41bw14wi7n4k29d1c9xmacrscjyj84fmy09nlyyaa5";
-      name = "ktouch-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktouch-18.12.3.tar.xz";
+      sha256 = "194f308a114c89873ee88eb069ecda88d5d1e1ad97c150e2d61cf248719b4bb6";
+      name = "ktouch-18.12.3.tar.xz";
     };
   };
   ktp-accounts-kcm = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktp-accounts-kcm-18.12.1.tar.xz";
-      sha256 = "1aswmp7504kpwlb37rvxx514ac5256h5lhwj9xl479vyxgaazxsn";
-      name = "ktp-accounts-kcm-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktp-accounts-kcm-18.12.3.tar.xz";
+      sha256 = "ab6ab0f6cb438ec68b110158f7c6555572f04ad69da04f5e1d144cfc4a8ee8cb";
+      name = "ktp-accounts-kcm-18.12.3.tar.xz";
     };
   };
   ktp-approver = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktp-approver-18.12.1.tar.xz";
-      sha256 = "1jr5kxlj2229rknxhi5jsgdjgx9n0n5jx7lc4aa2c96kd843n2ah";
-      name = "ktp-approver-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktp-approver-18.12.3.tar.xz";
+      sha256 = "0616fcad79fdeae5f2a58b167419f1745e94cea21950faa535e7b5a6c2e53cf6";
+      name = "ktp-approver-18.12.3.tar.xz";
     };
   };
   ktp-auth-handler = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktp-auth-handler-18.12.1.tar.xz";
-      sha256 = "1fwcibz8dh94xaprpyybn0dlh1fyd6rsx9zsx8cyxqhx96fq8v28";
-      name = "ktp-auth-handler-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktp-auth-handler-18.12.3.tar.xz";
+      sha256 = "91d6e0148c9006117bc67969012f7a12405e186fc8ffd4011732dc3e7c16a4be";
+      name = "ktp-auth-handler-18.12.3.tar.xz";
     };
   };
   ktp-call-ui = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktp-call-ui-18.12.1.tar.xz";
-      sha256 = "1f63w374d9smz7147lax9zqfvikqhl2hllvnlb03zl49kh13s8h3";
-      name = "ktp-call-ui-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktp-call-ui-18.12.3.tar.xz";
+      sha256 = "3558b9ef7a2a000f6b49454c4477dcd9700168a1f2c060267b24c78725097571";
+      name = "ktp-call-ui-18.12.3.tar.xz";
     };
   };
   ktp-common-internals = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktp-common-internals-18.12.1.tar.xz";
-      sha256 = "1frnzsql9mk78bjfc2kpwmsf8nkx1ybhm1snq125kkzayqipvdkp";
-      name = "ktp-common-internals-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktp-common-internals-18.12.3.tar.xz";
+      sha256 = "3913a515d98f74940e0db6b85fc5c6c128c68cffb427c93164052be437634740";
+      name = "ktp-common-internals-18.12.3.tar.xz";
     };
   };
   ktp-contact-list = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktp-contact-list-18.12.1.tar.xz";
-      sha256 = "13aiy156372qapwddr2i3nf1jkzbj9905rvd55akwpa8sy70m3kw";
-      name = "ktp-contact-list-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktp-contact-list-18.12.3.tar.xz";
+      sha256 = "8f858371ec3760bc042dbf6f022ba834ca5b9ae43997e67bf395978df603d0c1";
+      name = "ktp-contact-list-18.12.3.tar.xz";
     };
   };
   ktp-contact-runner = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktp-contact-runner-18.12.1.tar.xz";
-      sha256 = "1grpgg3fgyzf97n60jmpjgviz5194awmrl6yfaal7hd1cdkfrs34";
-      name = "ktp-contact-runner-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktp-contact-runner-18.12.3.tar.xz";
+      sha256 = "886d561952ac1a8a5fa50ffdff8699358480d18d58cbaec217ed865d2047f0a9";
+      name = "ktp-contact-runner-18.12.3.tar.xz";
     };
   };
   ktp-desktop-applets = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktp-desktop-applets-18.12.1.tar.xz";
-      sha256 = "0iikcp7rvvrn7189kdzj1i4qzhkgh06gzr8hm49gy29qxqk36ykn";
-      name = "ktp-desktop-applets-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktp-desktop-applets-18.12.3.tar.xz";
+      sha256 = "439dca1046beba0d2579918f2e409e6629e5063da6eeb1001bcd65ff3edb32c4";
+      name = "ktp-desktop-applets-18.12.3.tar.xz";
     };
   };
   ktp-filetransfer-handler = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktp-filetransfer-handler-18.12.1.tar.xz";
-      sha256 = "04dnh7yb0jajs79xh1wyq9d48nklvldc7lnk1lp194iz8yydvylx";
-      name = "ktp-filetransfer-handler-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktp-filetransfer-handler-18.12.3.tar.xz";
+      sha256 = "898c7f4ffc8d8bec691cc9744fb356722cf7957f39d2d855138492b647542231";
+      name = "ktp-filetransfer-handler-18.12.3.tar.xz";
     };
   };
   ktp-kded-module = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktp-kded-module-18.12.1.tar.xz";
-      sha256 = "0kmw8pifb4xry3zqpq671rh39ziaka8zx60p5xzs10rl17rmxwzs";
-      name = "ktp-kded-module-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktp-kded-module-18.12.3.tar.xz";
+      sha256 = "ebbd02a1441caf8e9ced851c8f814255ac4b9e75485a4bc59026f647d3fd4854";
+      name = "ktp-kded-module-18.12.3.tar.xz";
     };
   };
   ktp-send-file = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktp-send-file-18.12.1.tar.xz";
-      sha256 = "01i059vsaydw410sv15vzwysgxcy2n9wm3qcnal4fx7wgw5xx163";
-      name = "ktp-send-file-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktp-send-file-18.12.3.tar.xz";
+      sha256 = "0015551c42d66f14ae508eee76f138584bbec3b77a4aff4a003255b52d8414f2";
+      name = "ktp-send-file-18.12.3.tar.xz";
     };
   };
   ktp-text-ui = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktp-text-ui-18.12.1.tar.xz";
-      sha256 = "14smhdcvy0v1s1rbkss1g6jyzfm6y1nqjp8a9wcbygbzh88g0bjy";
-      name = "ktp-text-ui-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktp-text-ui-18.12.3.tar.xz";
+      sha256 = "6a37a26b0b226d5d30b298a4d6d85f8dcfe9f39cbc35e1b6322651678815a34e";
+      name = "ktp-text-ui-18.12.3.tar.xz";
     };
   };
   ktuberling = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/ktuberling-18.12.1.tar.xz";
-      sha256 = "0h0w2knfs97bzxaja3dkc78fjfymic09b6zid41kxd4mi41lngkk";
-      name = "ktuberling-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/ktuberling-18.12.3.tar.xz";
+      sha256 = "b69815f3553f843c30ab9d026ca7da97e62e66b58851111d1e4d29e57d67bd04";
+      name = "ktuberling-18.12.3.tar.xz";
     };
   };
   kturtle = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kturtle-18.12.1.tar.xz";
-      sha256 = "0b2505gmys2p11ryj7bqr60zgh0ydp16xidhkv6hhykmrmp2bsm1";
-      name = "kturtle-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kturtle-18.12.3.tar.xz";
+      sha256 = "4677335b4f8a3e363425652815d19ae13e9f8942b01051553b485100c4996253";
+      name = "kturtle-18.12.3.tar.xz";
     };
   };
   kubrick = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kubrick-18.12.1.tar.xz";
-      sha256 = "0vq8djk5xc00cz4a2inbw62x9pigxxjcxi92h8qayigi7cf9xrll";
-      name = "kubrick-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kubrick-18.12.3.tar.xz";
+      sha256 = "0deb9022a028a6c068203e5bf20820b5561c92b5117735e8a58f212c2ba460e3";
+      name = "kubrick-18.12.3.tar.xz";
     };
   };
   kwalletmanager = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kwalletmanager-18.12.1.tar.xz";
-      sha256 = "1d3kdxc53n2ss73r9ld6rr5w9zhvkglrcbw8whq2hsam79mh0vsn";
-      name = "kwalletmanager-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kwalletmanager-18.12.3.tar.xz";
+      sha256 = "78232285c08241dc06cd6da88dcdce0d850417dd73f0d07034ec6d9a6f97f478";
+      name = "kwalletmanager-18.12.3.tar.xz";
     };
   };
   kwave = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kwave-18.12.1.tar.xz";
-      sha256 = "150lqffzzyb2ajyg97sprzbm6zq1iq4psl6vics51lw7sybwj4m3";
-      name = "kwave-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kwave-18.12.3.tar.xz";
+      sha256 = "4ca9a15ecd06b96e013855f8109b52fcd4a848652438b2e7a2f55a8fcb1d1c48";
+      name = "kwave-18.12.3.tar.xz";
     };
   };
   kwordquiz = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/kwordquiz-18.12.1.tar.xz";
-      sha256 = "1da9jjdk2avdmdm16s63h0hk5swml37afwdnsd777ilj2x8a5ndf";
-      name = "kwordquiz-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/kwordquiz-18.12.3.tar.xz";
+      sha256 = "e609d6b7f93abe0ca7ba844c51dff8d89d435daa9d0a6be68e789b70370459cc";
+      name = "kwordquiz-18.12.3.tar.xz";
     };
   };
   libgravatar = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libgravatar-18.12.1.tar.xz";
-      sha256 = "1a7b46zqv5m7c9arfmcxhrcnrkcligz3ryygxv801zfa7277l8j6";
-      name = "libgravatar-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libgravatar-18.12.3.tar.xz";
+      sha256 = "c44c139fbaffda352f0fe461065622cff65b6f1cc13cee8a0137acb27de143ee";
+      name = "libgravatar-18.12.3.tar.xz";
     };
   };
   libkcddb = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkcddb-18.12.1.tar.xz";
-      sha256 = "1k9rbkf12g1hsn23nyhc65zrppkikk8xplm7l321kxpnq2prm155";
-      name = "libkcddb-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkcddb-18.12.3.tar.xz";
+      sha256 = "38bffd551b82628a25b46bd598c257927855b77c6b6b73a9b69ac7bf538afc29";
+      name = "libkcddb-18.12.3.tar.xz";
     };
   };
   libkcompactdisc = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkcompactdisc-18.12.1.tar.xz";
-      sha256 = "0v7fh9s9qbljgfjyi3bd9w7wp69y4qjg0jj8cmn11snrsd8zzaac";
-      name = "libkcompactdisc-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkcompactdisc-18.12.3.tar.xz";
+      sha256 = "a464ebfdd1a2834c2597e7ffd1b0d946ddfda348eea5ac8d1d42b46d6c478926";
+      name = "libkcompactdisc-18.12.3.tar.xz";
     };
   };
   libkdcraw = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkdcraw-18.12.1.tar.xz";
-      sha256 = "1g58cpzqzl6vl62lbrqd8fyscxspqypxq4lyj3d2k9b0b66hjc6c";
-      name = "libkdcraw-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkdcraw-18.12.3.tar.xz";
+      sha256 = "c4b6541419b2ebee15d24744d10e67c9a137e616766e765c13e5056c2a37ef99";
+      name = "libkdcraw-18.12.3.tar.xz";
     };
   };
   libkdegames = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkdegames-18.12.1.tar.xz";
-      sha256 = "0iksk5gnl860xcmpaj56wxaamhm9zhjnyszj4nssppssn8kr1r65";
-      name = "libkdegames-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkdegames-18.12.3.tar.xz";
+      sha256 = "7c833fe476043f0492a09a52af60ee7652805cccbbb72e5f473a9d35abff9ed9";
+      name = "libkdegames-18.12.3.tar.xz";
     };
   };
   libkdepim = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkdepim-18.12.1.tar.xz";
-      sha256 = "1qvzj68p630mzafwyv7f3q1fd615yca7amc0q7kp2cs08fnv67fp";
-      name = "libkdepim-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkdepim-18.12.3.tar.xz";
+      sha256 = "1c53148dd9f477b1ca2ea622b25100eab95531115e9798264d3e65d28183e640";
+      name = "libkdepim-18.12.3.tar.xz";
     };
   };
   libkeduvocdocument = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkeduvocdocument-18.12.1.tar.xz";
-      sha256 = "0zgl0dw8sb5lffzv580nql04i0n31ma8569wrhh75kg12qb5yd7w";
-      name = "libkeduvocdocument-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkeduvocdocument-18.12.3.tar.xz";
+      sha256 = "907076104f445f22fa31c2fa5ecfdabbb8b18faab52fc10c879a53d6245aaad4";
+      name = "libkeduvocdocument-18.12.3.tar.xz";
     };
   };
   libkexiv2 = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkexiv2-18.12.1.tar.xz";
-      sha256 = "1jgk14dgf30czsah0mjrs7lsll0s4aks2075pfmvrnsl71vfbsj3";
-      name = "libkexiv2-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkexiv2-18.12.3.tar.xz";
+      sha256 = "1d14ff63af42ab7e19e2039648a95ea5dc946afbe3e3df52c17ce1618a02ebdc";
+      name = "libkexiv2-18.12.3.tar.xz";
     };
   };
   libkgapi = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkgapi-18.12.1.tar.xz";
-      sha256 = "1g5mzdw4mrlqhi9zby51m1sgkq1gjmkd7smja287kjf7whdx0sn3";
-      name = "libkgapi-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkgapi-18.12.3.tar.xz";
+      sha256 = "de0314fd83d8fa8f88e6a355c4725047d2e507e0d40f1950c8ae083c2bc21924";
+      name = "libkgapi-18.12.3.tar.xz";
     };
   };
   libkgeomap = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkgeomap-18.12.1.tar.xz";
-      sha256 = "0ijf71ss8qirrgx45x4wnry049d2bllgnlzm8gll4mj1hv9jhjdz";
-      name = "libkgeomap-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkgeomap-18.12.3.tar.xz";
+      sha256 = "2c4459e61e471f0344d03cfa5f00fe2a1890cd2c1501323ceed26d522496c47b";
+      name = "libkgeomap-18.12.3.tar.xz";
     };
   };
   libkipi = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkipi-18.12.1.tar.xz";
-      sha256 = "1372kmqni0vb8bryv0h30pljikabjdq44v1fjpgg81f4v1n4pfxv";
-      name = "libkipi-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkipi-18.12.3.tar.xz";
+      sha256 = "96abf4552d535cf101c76ff5b1cb0198eccfd4bdfb7dc192b66bf709af037a31";
+      name = "libkipi-18.12.3.tar.xz";
     };
   };
   libkleo = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkleo-18.12.1.tar.xz";
-      sha256 = "1p1bw0wzwg2zccgkqs50j92rzkpvcspjdj85zanmryg568mz9r1x";
-      name = "libkleo-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkleo-18.12.3.tar.xz";
+      sha256 = "e528ed366352404d48313a8c154f56c672470bf06524ea7a150a726d3eb87d69";
+      name = "libkleo-18.12.3.tar.xz";
     };
   };
   libkmahjongg = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkmahjongg-18.12.1.tar.xz";
-      sha256 = "1q590f7l10a1zjcg3dv3ns1003xrnr7zlmff03zg3a9zcqj11kwv";
-      name = "libkmahjongg-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkmahjongg-18.12.3.tar.xz";
+      sha256 = "25e5cea50b6c96f18efa8d013ab58abfaac7845edb969b8e63e0c297482a6be4";
+      name = "libkmahjongg-18.12.3.tar.xz";
     };
   };
   libkomparediff2 = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libkomparediff2-18.12.1.tar.xz";
-      sha256 = "0ik6bclbipp01gfy3zfkijvl5m0y3z2dfxr76jvzmi53ypm7g0xn";
-      name = "libkomparediff2-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libkomparediff2-18.12.3.tar.xz";
+      sha256 = "f70bf7470f67419a7071a4df23d929c4c4ed80d588b3096d48486ee0f27d890c";
+      name = "libkomparediff2-18.12.3.tar.xz";
     };
   };
   libksane = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libksane-18.12.1.tar.xz";
-      sha256 = "15dgc5dshs6yzv03wvc5xvqfz70gqy51a0r54qzbr5fc9s6pywr8";
-      name = "libksane-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libksane-18.12.3.tar.xz";
+      sha256 = "40bf814cebac7ef00dc18fbdeabb2f9fd786c9144d787d5dc36a58fe18c33034";
+      name = "libksane-18.12.3.tar.xz";
     };
   };
   libksieve = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/libksieve-18.12.1.tar.xz";
-      sha256 = "0kcg94bsww3vlc3vpybw20c4iax0bfkamicy7hwyyyzwgx38dvd1";
-      name = "libksieve-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/libksieve-18.12.3.tar.xz";
+      sha256 = "ce18756940d86dff8eafd77883d202ab90e3d8273f5248ffd97627b974211754";
+      name = "libksieve-18.12.3.tar.xz";
     };
   };
   lokalize = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/lokalize-18.12.1.tar.xz";
-      sha256 = "1spzi7zbckvxy3izmcqjnslmqf4vgr7zrwa0idmqi4q59dcsgw9g";
-      name = "lokalize-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/lokalize-18.12.3.tar.xz";
+      sha256 = "cce11b9384d27006855a141d2241a67d05679baa7096db2311c49a78bd642fed";
+      name = "lokalize-18.12.3.tar.xz";
     };
   };
   lskat = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/lskat-18.12.1.tar.xz";
-      sha256 = "0603lxw1fxz9vpawy59z3qga0f1bvvgv9yqk29b16fmp5hf5qgxm";
-      name = "lskat-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/lskat-18.12.3.tar.xz";
+      sha256 = "d81d3af26b9f23abc40f1e2f97410d662c11d4641b67c32d427846a561f0b1e2";
+      name = "lskat-18.12.3.tar.xz";
     };
   };
   mailcommon = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/mailcommon-18.12.1.tar.xz";
-      sha256 = "0l1b115vnxfl2ykwnj09ikv7vlfa5bvfzlii6jj2znkmspi9y7r2";
-      name = "mailcommon-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/mailcommon-18.12.3.tar.xz";
+      sha256 = "789d89fad58af80202dfcc41f7c7435871a60309d1d46f93cabcb37dd6ae97e1";
+      name = "mailcommon-18.12.3.tar.xz";
     };
   };
   mailimporter = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/mailimporter-18.12.1.tar.xz";
-      sha256 = "1k8gqjabcvafcvsqwclvz58r15k1bpz52wnnnbwcp0y27ab08a98";
-      name = "mailimporter-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/mailimporter-18.12.3.tar.xz";
+      sha256 = "1c0e583fa36fc1b87154367cbe02cf1ec68d9f36d8a37bd6b220e9d9aadfcfa3";
+      name = "mailimporter-18.12.3.tar.xz";
     };
   };
   marble = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/marble-18.12.1.tar.xz";
-      sha256 = "0hamj04ma9qycfisjv48myxj1427rz7g0lmw7pwanzghg610fgwy";
-      name = "marble-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/marble-18.12.3.tar.xz";
+      sha256 = "0bfd7ae576e42ebbddadc8c83c2fec5edaf462bcf284642b1002d36d751b24ee";
+      name = "marble-18.12.3.tar.xz";
     };
   };
   mbox-importer = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/mbox-importer-18.12.1.tar.xz";
-      sha256 = "1h2abj7v6v3rmvsv9bb1wj7sabhh9f35bx1yfk2hhfzf6l4r5f2n";
-      name = "mbox-importer-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/mbox-importer-18.12.3.tar.xz";
+      sha256 = "a220ca69dd6f78cf18c3d8cb1bb293dc2ab2ff45f2a25df72cad8df78f581201";
+      name = "mbox-importer-18.12.3.tar.xz";
     };
   };
   messagelib = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/messagelib-18.12.1.tar.xz";
-      sha256 = "1hfk54w0dhp82fxa4q19d4224pjnw5f8m7ap4gwlrqdj350liqd8";
-      name = "messagelib-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/messagelib-18.12.3.tar.xz";
+      sha256 = "0064a8df62a08d0dfb06af28d4aff8a645a0e8bb01d91ab23647b3d26d3af7d8";
+      name = "messagelib-18.12.3.tar.xz";
     };
   };
   minuet = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/minuet-18.12.1.tar.xz";
-      sha256 = "160wq3j7vcf1k0ayd8axg37ghj5ymn56g7znaz4gzc8ar1q5nccz";
-      name = "minuet-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/minuet-18.12.3.tar.xz";
+      sha256 = "9244ec364d031c73f9aed9568012a28b847ec4dceca61040324af7afd3d64009";
+      name = "minuet-18.12.3.tar.xz";
     };
   };
   okular = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/okular-18.12.1.tar.xz";
-      sha256 = "1k1srr2434j665v6m89vl7x42361pqxaw45dc5b4bhw8q2xfipyl";
-      name = "okular-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/okular-18.12.3.tar.xz";
+      sha256 = "d7ef9b59acb5746ebc64399f4c1a99faf0c1530bf6a818b3bfd34b73476d90ab";
+      name = "okular-18.12.3.tar.xz";
     };
   };
   palapeli = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/palapeli-18.12.1.tar.xz";
-      sha256 = "0pwflnnnbfxf185m3r4vdw5jpd5jld0wm0qnwk2gl41v2ahb5pqd";
-      name = "palapeli-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/palapeli-18.12.3.tar.xz";
+      sha256 = "b28fa1cf7a763125a09baa8f4e7562e17892475444d3907e566281328502e593";
+      name = "palapeli-18.12.3.tar.xz";
     };
   };
   parley = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/parley-18.12.1.tar.xz";
-      sha256 = "1yv4m9f4jhc36ffnrxd6rq5117rj163hs6835mkkzja7z13csn6z";
-      name = "parley-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/parley-18.12.3.tar.xz";
+      sha256 = "289bc5aa88d7a33fdf0d668b45412f163d74e86d3deb9492db53a11f7c6a7f75";
+      name = "parley-18.12.3.tar.xz";
     };
   };
   picmi = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/picmi-18.12.1.tar.xz";
-      sha256 = "0dmhvxy0g4jjbxk53bz1g1r8vqdzhzbcwg0f1ck85gz7f5g67b7v";
-      name = "picmi-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/picmi-18.12.3.tar.xz";
+      sha256 = "0691c70d746aa9d444559970e002561a1123963d617b36ceef4a8c3ee4730f49";
+      name = "picmi-18.12.3.tar.xz";
     };
   };
   pimcommon = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/pimcommon-18.12.1.tar.xz";
-      sha256 = "09av3zdr463gjc877ipa5vz84yf4qpj2ixs9x4ajmfmsmb5m6w7z";
-      name = "pimcommon-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/pimcommon-18.12.3.tar.xz";
+      sha256 = "f4a0bf8146d1140c0252a5315baa826651968352a828c004d91b06e0e98c6b9e";
+      name = "pimcommon-18.12.3.tar.xz";
     };
   };
   pim-data-exporter = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/pim-data-exporter-18.12.1.tar.xz";
-      sha256 = "111n4l9z3dazz7qhv67k00s88p515r8ai2sm419pbyfdn6wxpzmb";
-      name = "pim-data-exporter-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/pim-data-exporter-18.12.3.tar.xz";
+      sha256 = "7deb5baf5a36b96f1414e0b67192cd1ad48f396fb3cb5f5eb2fc90a312d74941";
+      name = "pim-data-exporter-18.12.3.tar.xz";
     };
   };
   pim-sieve-editor = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/pim-sieve-editor-18.12.1.tar.xz";
-      sha256 = "0i0jrmz4cyjcpapga89ixfqx7xg0nyk3r75ymfzw891fyhm7ns67";
-      name = "pim-sieve-editor-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/pim-sieve-editor-18.12.3.tar.xz";
+      sha256 = "6e755ec258b0a75e4e83adb82551c1779c2ab7766aef26d2f1c9c00f3809deb5";
+      name = "pim-sieve-editor-18.12.3.tar.xz";
     };
   };
   poxml = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/poxml-18.12.1.tar.xz";
-      sha256 = "0hrpvpsy3mbyrikj68lr2af9m162w3nzhcpdqgrhsv5ji3j0bpqb";
-      name = "poxml-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/poxml-18.12.3.tar.xz";
+      sha256 = "6714e371957d175b859894149a3791acb3b8ef62b653b7b09f34819e92c8eaf7";
+      name = "poxml-18.12.3.tar.xz";
     };
   };
   print-manager = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/print-manager-18.12.1.tar.xz";
-      sha256 = "01kk592gi2rrqwaxmfd1fycnya0rvjafxxv6lrk3rs0nm4g9phxr";
-      name = "print-manager-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/print-manager-18.12.3.tar.xz";
+      sha256 = "917ea500bcd11d2ca3cc1e7de1b38d7ef72f1d397182aaac2c6a31cd338f387d";
+      name = "print-manager-18.12.3.tar.xz";
     };
   };
   rocs = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/rocs-18.12.1.tar.xz";
-      sha256 = "0d34bv8ya5lrdrbqqlc927x4cdfjwyr8q2xbmx4c1vaw8w29glw9";
-      name = "rocs-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/rocs-18.12.3.tar.xz";
+      sha256 = "6b007b0b11a8128787c316f055a99dde83619dd35287e04867949e84661c2b11";
+      name = "rocs-18.12.3.tar.xz";
     };
   };
   signon-kwallet-extension = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/signon-kwallet-extension-18.12.1.tar.xz";
-      sha256 = "018vyzd3rspfsqansxfbv4q0izgj7dfpmzjj04x8pffg1w0x902n";
-      name = "signon-kwallet-extension-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/signon-kwallet-extension-18.12.3.tar.xz";
+      sha256 = "9a6c25cf19a382cbfd219c043838ad691c4c53ae8c3bc9f4b59f9f6f98bd3a4f";
+      name = "signon-kwallet-extension-18.12.3.tar.xz";
     };
   };
   spectacle = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/spectacle-18.12.1.tar.xz";
-      sha256 = "1r9iapwi1lp1p7x0dimblpmsizv1ys9708vdlzrk8q4m8rwn7ld9";
-      name = "spectacle-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/spectacle-18.12.3.tar.xz";
+      sha256 = "8abf85b85de7844c503ef84182303c47cf425f5c14d71e723e3c887ee87ce06e";
+      name = "spectacle-18.12.3.tar.xz";
     };
   };
   step = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/step-18.12.1.tar.xz";
-      sha256 = "1gn8l09r5rllz1mypsw2wfjhijy0i0bi4lspp271dinms6ryx6p4";
-      name = "step-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/step-18.12.3.tar.xz";
+      sha256 = "35abaf0a4597e141f4db08ad91ebcefafe43609b986a93a11e5f3ec19165c755";
+      name = "step-18.12.3.tar.xz";
     };
   };
   svgpart = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/svgpart-18.12.1.tar.xz";
-      sha256 = "06rvbav94ysifha47lp52pvpc77y33p4zq4yfbmyh1pqkiw5db2s";
-      name = "svgpart-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/svgpart-18.12.3.tar.xz";
+      sha256 = "675ab3b652b0d2619abb305ce7c00beb8a80067416e4ea7e216cfa201a7ff8ef";
+      name = "svgpart-18.12.3.tar.xz";
     };
   };
   sweeper = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/sweeper-18.12.1.tar.xz";
-      sha256 = "0bp0my9gf4n5p7v3g0q390lf9q4lh42mg2zngwadqcvrsi2w4av4";
-      name = "sweeper-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/sweeper-18.12.3.tar.xz";
+      sha256 = "8007da0f4d835e376fb049d539ca9fd6840ef7196f25b62cf652374a645fc6e0";
+      name = "sweeper-18.12.3.tar.xz";
     };
   };
   umbrello = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/umbrello-18.12.1.tar.xz";
-      sha256 = "12kk04frx8fxcih22nv5c1765wawlf7wpiscaqmzlmrpa611x65r";
-      name = "umbrello-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/umbrello-18.12.3.tar.xz";
+      sha256 = "2ab53b33cf1fcaea470c01b2421e911d4287b1d0421fa33e0b60043fe6943cc7";
+      name = "umbrello-18.12.3.tar.xz";
     };
   };
   zeroconf-ioslave = {
-    version = "18.12.1";
+    version = "18.12.3";
     src = fetchurl {
-      url = "${mirror}/stable/applications/18.12.1/src/zeroconf-ioslave-18.12.1.tar.xz";
-      sha256 = "1gzr50kqlwd2d47yc2k6yz2v0w2gp10c7glhb61jpdzsqy7r7cvp";
-      name = "zeroconf-ioslave-18.12.1.tar.xz";
+      url = "${mirror}/stable/applications/18.12.3/src/zeroconf-ioslave-18.12.3.tar.xz";
+      sha256 = "b3adcaec0ebd89ddaf839954fb387e59791683d98f93da0c3dacb0266cd02a12";
+      name = "zeroconf-ioslave-18.12.3.tar.xz";
     };
   };
 }
diff --git a/pkgs/applications/misc/cura/default.nix b/pkgs/applications/misc/cura/default.nix
index f7907746d107..d570a2570d1c 100644
--- a/pkgs/applications/misc/cura/default.nix
+++ b/pkgs/applications/misc/cura/default.nix
@@ -1,14 +1,14 @@
-{ mkDerivation, lib, fetchFromGitHub, cmake, python3, qtbase, qtquickcontrols2, curaengine }:
+{ mkDerivation, lib, fetchFromGitHub, cmake, python3, qtbase, qtquickcontrols2, qtgraphicaleffects, curaengine }:
 
 mkDerivation rec {
   name = "cura-${version}";
-  version = "3.6.0";
+  version = "4.0.0";
 
   src = fetchFromGitHub {
     owner = "Ultimaker";
     repo = "Cura";
     rev = version;
-    sha256 = "0wzkbqdd1670smw1vnq634rkpcjwnhwcvimhvjq904gy2fylgr90";
+    sha256 = "18pxlmrw8m2mir177f0j9bma7rk29vam91gd86c0d458nw21q2qf";
   };
 
   materials = fetchFromGitHub {
@@ -18,7 +18,7 @@ mkDerivation rec {
     sha256 = "0g2dkph0ll7d9109n17vmfwb4fpc8lhyb1z1q68j8vblyvg08d12";
   };
 
-  buildInputs = [ qtbase qtquickcontrols2 ];
+  buildInputs = [ qtbase qtquickcontrols2 qtgraphicaleffects ];
   propagatedBuildInputs = with python3.pkgs; [
     libsavitar numpy-stl pyserial requests uranium zeroconf
   ];
@@ -27,6 +27,12 @@ mkDerivation rec {
   cmakeFlags = [
     "-DURANIUM_DIR=${python3.pkgs.uranium.src}"
     "-DCURA_VERSION=${version}"
+
+    # see https://github.com/Ultimaker/Cura/issues/5142
+    "-DCURA_SDK_VERSION=6.0.0"
+
+    # remove after 4.0.0, see https://github.com/void-linux/void-packages/pull/9880#issuecomment-475453025
+    "-DCURA_CLOUD_API_VERSION=1"
   ];
 
   postPatch = ''
diff --git a/pkgs/applications/misc/curaengine/default.nix b/pkgs/applications/misc/curaengine/default.nix
index ac0f9d542dde..9188e461e519 100644
--- a/pkgs/applications/misc/curaengine/default.nix
+++ b/pkgs/applications/misc/curaengine/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "curaengine-${version}";
-  version = "3.6.0";
+  version = "4.0.0";
 
   src = fetchFromGitHub {
     owner = "Ultimaker";
     repo = "CuraEngine";
     rev = version;
-    sha256 = "1iwmblvs3qw57698i8bbazyxha18bj9irnkcscdb0596g8q93fcm";
+    sha256 = "0p4zcckrlrpyp5xdqgvp0phmawyh4cy8vipim9fvgsfcin4vhrv7";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/gollum/Gemfile.lock b/pkgs/applications/misc/gollum/Gemfile.lock
index e6c66cba1e06..4490ff60a5b9 100644
--- a/pkgs/applications/misc/gollum/Gemfile.lock
+++ b/pkgs/applications/misc/gollum/Gemfile.lock
@@ -29,15 +29,15 @@ GEM
       sanitize (~> 2.1.1, >= 2.1.1)
       stringex (~> 2.6)
       twitter-text (= 1.14.7)
-    json (2.1.0)
+    json (2.2.0)
     kramdown (1.9.0)
     mime-types (3.2.2)
       mime-types-data (~> 3.2015)
-    mime-types-data (3.2018.0812)
-    mini_portile2 (2.3.0)
+    mime-types-data (3.2019.0331)
+    mini_portile2 (2.4.0)
     mustache (0.99.8)
-    nokogiri (1.8.4)
-      mini_portile2 (~> 2.3.0)
+    nokogiri (1.10.2)
+      mini_portile2 (~> 2.4.0)
     posix-spawn (0.3.13)
     rack (1.6.11)
     rack-protection (1.5.5)
@@ -49,8 +49,8 @@ GEM
       rack (~> 1.5)
       rack-protection (~> 1.4)
       tilt (>= 1.3, < 3)
-    stringex (2.8.4)
-    tilt (2.0.8)
+    stringex (2.8.5)
+    tilt (2.0.9)
     twitter-text (1.14.7)
       unf (~> 0.1.0)
     unf (0.1.4)
@@ -65,4 +65,4 @@ DEPENDENCIES
   gollum
 
 BUNDLED WITH
-   1.16.4
+   1.17.2
diff --git a/pkgs/applications/misc/gollum/gemset.nix b/pkgs/applications/misc/gollum/gemset.nix
index bb105805ca8e..bef80a95bbb5 100644
--- a/pkgs/applications/misc/gollum/gemset.nix
+++ b/pkgs/applications/misc/gollum/gemset.nix
@@ -1,5 +1,7 @@
 {
   charlock_holmes = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1nf1l31n10yaark2rrg5qzyzcx9w80681449s3j09qmnipsl8rl5";
@@ -8,6 +10,8 @@
     version = "0.7.6";
   };
   diff-lcs = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "18w22bjz424gzafv6nzv98h0aqkwz3d9xhm7cbr1wfbyas8zayza";
@@ -17,6 +21,8 @@
   };
   gemojione = {
     dependencies = ["json"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0ayk8r147k1s38nj18pwk76npx1p7jhi86silk800nj913pjvrhj";
@@ -25,6 +31,8 @@
     version = "3.3.0";
   };
   github-markup = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "17g6g18gdjg63k75sfwiskjzl9i0hfcnrkcpb4fwrnb20v3jgswp";
@@ -34,6 +42,8 @@
   };
   gitlab-grit = {
     dependencies = ["charlock_holmes" "diff-lcs" "mime-types" "posix-spawn"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0xgs3l81ghlc5nm75n0pz7b2cj3hpscfq5iy27c483nnjn2v5mc4";
@@ -43,6 +53,8 @@
   };
   gollum = {
     dependencies = ["gemojione" "gollum-lib" "kramdown" "mustache" "sinatra" "useragent"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0ik1b0f73lcxfwfml1h84dp6br79g0z9v6x54wvl46n9d1ndrhl7";
@@ -52,6 +64,8 @@
   };
   gollum-grit_adapter = {
     dependencies = ["gitlab-grit"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0fcibm63v1afc0fj5rki0mm51m7nndil4cjcjjvkh3yigfn4nr4b";
@@ -61,6 +75,8 @@
   };
   gollum-lib = {
     dependencies = ["gemojione" "github-markup" "gollum-grit_adapter" "nokogiri" "rouge" "sanitize" "stringex" "twitter-text"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1699wiir6f2a8yawk3qg0xn3zdc10mz783v53ri1ivfnzdrm3dvf";
@@ -69,14 +85,18 @@
     version = "4.2.10";
   };
   json = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "01v6jjpvh3gnq6sgllpfqahlgxzj50ailwhj9b3cd20hi2dx0vxp";
+      sha256 = "0sx97bm9by389rbzv8r1f43h06xcz8vwi3h5jv074gvparql7lcx";
       type = "gem";
     };
-    version = "2.1.0";
+    version = "2.2.0";
   };
   kramdown = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "12sral2xli39mnr4b9m2sxdlgam4ni0a1mkxawc5311z107zj3p0";
@@ -86,6 +106,8 @@
   };
   mime-types = {
     dependencies = ["mime-types-data"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
@@ -94,22 +116,28 @@
     version = "3.2.2";
   };
   mime-types-data = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "07wvp0aw2gjm4njibb70as6rh5hi1zzri5vky1q6jx95h8l56idc";
+      sha256 = "1m00pg19cm47n1qlcxgl91ajh2yq0fszvn1vy8fy0s1jkrp9fw4a";
       type = "gem";
     };
-    version = "3.2018.0812";
+    version = "3.2019.0331";
   };
   mini_portile2 = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "13d32jjadpjj6d2wdhkfpsmy68zjx90p49bgf8f7nkpz86r1fr11";
+      sha256 = "15zplpfw3knqifj9bpf604rb3wc1vhq6363pd6lvhayng8wql5vy";
       type = "gem";
     };
-    version = "2.3.0";
+    version = "2.4.0";
   };
   mustache = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1g5hplm0k06vwxwqzwn1mq5bd02yp0h3rym4zwzw26aqi7drcsl2";
@@ -119,14 +147,18 @@
   };
   nokogiri = {
     dependencies = ["mini_portile2"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1h9nml9h3m0mpvmh8jfnqvblnz5n5y3mmhgfc38avfmfzdrq9bgc";
+      sha256 = "0sy96cc8i5y4p67fhf4d9c6sg8ymrrva21zyvzw55l0pa1582wx2";
       type = "gem";
     };
-    version = "1.8.4";
+    version = "1.10.2";
   };
   posix-spawn = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1pmxmpins57qrbr31bs3bm7gidhaacmrp4md6i962gvpq4gyfcjw";
@@ -135,6 +167,8 @@
     version = "0.3.13";
   };
   rack = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
@@ -144,6 +178,8 @@
   };
   rack-protection = {
     dependencies = ["rack"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0my0wlw4a5l3hs79jkx2xzv7djhajgf8d28k8ai1ddlnxxb0v7ss";
@@ -152,6 +188,8 @@
     version = "1.5.5";
   };
   rouge = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "02kpahk5nkc33yxnn75649kzxaz073wvazr2zyg491nndykgnvcs";
@@ -161,6 +199,8 @@
   };
   sanitize = {
     dependencies = ["nokogiri"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "12ip1d80r0dgc621qn7c32bk12xxgkkg3w6q21s1ckxivcd7r898";
@@ -170,6 +210,8 @@
   };
   sinatra = {
     dependencies = ["rack" "rack-protection" "tilt"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0byxzl7rx3ki0xd7aiv1x8mbah7hzd8f81l65nq8857kmgzj1jqq";
@@ -178,23 +220,29 @@
     version = "1.4.8";
   };
   stringex = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0c5dfrjzkskzfsdvwsviq4111rwwpbk9022nxwdidz014mky5vi1";
+      sha256 = "15ns7j5smw04w6w7bqd5mm2qcl7w9lhwykyb974i4isgg9yc23ys";
       type = "gem";
     };
-    version = "2.8.4";
+    version = "2.8.5";
   };
   tilt = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0020mrgdf11q23hm1ddd6fv691l51vi10af00f137ilcdb2ycfra";
+      sha256 = "0ca4k0clwf0rkvy7726x4nxpjxkpv67w043i39saxgldxd97zmwz";
       type = "gem";
     };
-    version = "2.0.8";
+    version = "2.0.9";
   };
   twitter-text = {
     dependencies = ["unf"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1732h7hy1k152w8wfvjsx7b79alk45i5imwd37ia4qcx8hfm3gvg";
@@ -204,6 +252,8 @@
   };
   unf = {
     dependencies = ["unf_ext"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0bh2cf73i2ffh4fcpdn9ir4mhq8zi50ik0zqa1braahzadx536a9";
@@ -212,6 +262,8 @@
     version = "0.1.4";
   };
   unf_ext = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "06p1i6qhy34bpb8q8ms88y6f2kz86azwm098yvcc0nyqk9y729j1";
@@ -220,6 +272,8 @@
     version = "0.0.7.5";
   };
   useragent = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1fv5kvq494swy0p17h9qya9r50w15xsi9zmvhzb8gh55kq6ki50p";
diff --git a/pkgs/applications/misc/googler/default.nix b/pkgs/applications/misc/googler/default.nix
index 4b5c17d8e51b..7ff7f6f811f7 100644
--- a/pkgs/applications/misc/googler/default.nix
+++ b/pkgs/applications/misc/googler/default.nix
@@ -1,14 +1,14 @@
 {stdenv, fetchFromGitHub, python}:
 
 stdenv.mkDerivation rec {
-  version = "3.7.1";
+  version = "3.8";
   name = "googler-${version}";
 
   src = fetchFromGitHub {
     owner = "jarun";
     repo = "googler";
     rev = "v${version}";
-    sha256 = "0dcszpz85h3yjnr55ixf8mzsdv46w3g27frhgcsl5zlsgk6vl8kw";
+    sha256 = "0f15rivjdj8r7wwrckcsaxxx129yh41fj4rhz4cbvbsb5f0f2daj";
   };
 
   propagatedBuildInputs = [ python ];
diff --git a/pkgs/applications/misc/gphoto2/default.nix b/pkgs/applications/misc/gphoto2/default.nix
index 5131e0739e73..9313199efb82 100644
--- a/pkgs/applications/misc/gphoto2/default.nix
+++ b/pkgs/applications/misc/gphoto2/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "gphoto2-2.5.17";
+  name = "gphoto2-2.5.20";
 
   src = fetchurl {
     url = "mirror://sourceforge/gphoto/${name}.tar.bz2";
-    sha256 = "0kslwclyyzvnxjw3gdzhlagj7l5f8lba833ipr9s0s0c4hwi0mxa";
+    sha256 = "1xj80abkzvqrd6g1j1q946lhbp03gyapyxdwbhc0y14g1ash6vx3";
   };
 
   nativeBuildInputs = [ pkgconfig gettext libtool ];
diff --git a/pkgs/applications/misc/gramps/default.nix b/pkgs/applications/misc/gramps/default.nix
index db18ff73412c..e9026ded4702 100644
--- a/pkgs/applications/misc/gramps/default.nix
+++ b/pkgs/applications/misc/gramps/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, gtk3, pythonPackages, intltool, gnome3,
-  pango, gobject-introspection, wrapGAppsHook,
+  pango, gobject-introspection, wrapGAppsHook, gettext,
 # Optional packages:
  enableOSM ? true, osm-gps-map,
  enableGraphviz ? true, graphviz,
@@ -12,7 +12,7 @@ in buildPythonApplication rec {
   version = "5.0.1";
   name = "gramps-${version}";
 
-  nativeBuildInputs = [ wrapGAppsHook ];
+  nativeBuildInputs = [ wrapGAppsHook gettext ];
   buildInputs = [ intltool gtk3 gobject-introspection pango gnome3.gexiv2 ] 
     # Map support
     ++ stdenv.lib.optional enableOSM osm-gps-map
diff --git a/pkgs/applications/misc/iterm2/default.nix b/pkgs/applications/misc/iterm2/default.nix
index fa2ac38d383b..e493226be60a 100644
--- a/pkgs/applications/misc/iterm2/default.nix
+++ b/pkgs/applications/misc/iterm2/default.nix
@@ -15,6 +15,7 @@ stdenv.mkDerivation rec {
   postPatch = ''
     sed -i -e 's/CODE_SIGN_IDENTITY = "Developer ID Application"/CODE_SIGN_IDENTITY = ""/g' ./iTerm2.xcodeproj/project.pbxproj
   '';
+  preConfigure = "LD=$CC";
   makeFlagsArray = ["Deployment"];
   installPhase = ''
     mkdir -p "$out/Applications"
diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix
index 8fab25fbce02..32d10712b763 100644
--- a/pkgs/applications/misc/josm/default.nix
+++ b/pkgs/applications/misc/josm/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv, makeDesktopItem, makeWrapper, unzip, jdk11 }:
+{ fetchurl, stdenv, makeDesktopItem, makeWrapper, unzip, jdk11, libXxf86vm }:
 
 stdenv.mkDerivation rec {
   name = "josm-${version}";
@@ -21,12 +21,14 @@ stdenv.mkDerivation rec {
     categories = "Education;Geoscience;Maps;";
   };
 
+  # Add libXxf86vm to path because it is needed by at least Kendzi3D plugin
   buildCommand = ''
     mkdir -p $out/bin $out/share/java
     cp -v $src $out/share/java/josm.jar
 
     makeWrapper ${jdk11}/bin/java $out/bin/josm \
-      --add-flags "-jar $out/share/java/josm.jar"
+      --add-flags "-jar $out/share/java/josm.jar" \
+      --prefix LD_LIBRARY_PATH ":" '${libXxf86vm}/lib'
 
     mkdir -p $out/share/applications
     cp $desktopItem/share/applications"/"* $out/share/applications
diff --git a/pkgs/applications/misc/khal/default.nix b/pkgs/applications/misc/khal/default.nix
index da0c8c38e73d..2e32bbd611a1 100644
--- a/pkgs/applications/misc/khal/default.nix
+++ b/pkgs/applications/misc/khal/default.nix
@@ -2,18 +2,17 @@
 
 with python3.pkgs; buildPythonApplication rec {
   pname = "khal";
-  version = "0.9.10";
+  version = "0.10.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "03h0j0d3xyqh98x5v2gv63wv3g91hip3vsaxvybsn5iz331d23h4";
+    sha256 = "1r8bkgjwkh7i8ygvsv51h1cnax50sb183vafg66x5snxf3dgjl6l";
   };
 
-  LC_ALL = "en_US.UTF-8";
-
   propagatedBuildInputs = [
     atomicwrites
     click
+    click-log
     configobj
     dateutil
     icalendar
@@ -27,15 +26,14 @@ with python3.pkgs; buildPythonApplication rec {
     pkginfo
     freezegun
   ];
-  nativeBuildInputs = [ setuptools_scm pkgs.glibcLocales ];
+  nativeBuildInputs = [ setuptools_scm ];
   checkInputs = [ pytest ];
 
   postInstall = ''
     install -D misc/__khal $out/share/zsh/site-functions/__khal
   '';
 
-  # One test fails as of 0.9.10 due to the upgrade to icalendar 4.0.3
-  doCheck = false;
+  doCheck = !stdenv.isAarch64;
 
   checkPhase = ''
     py.test
diff --git a/pkgs/applications/misc/kitty/default.nix b/pkgs/applications/misc/kitty/default.nix
index 58b6ae9aae83..3edb48cc489b 100644
--- a/pkgs/applications/misc/kitty/default.nix
+++ b/pkgs/applications/misc/kitty/default.nix
@@ -2,7 +2,20 @@
   harfbuzz, fontconfig, pkgconfig, ncurses, imagemagick, xsel,
   libstartup_notification, libX11, libXrandr, libXinerama, libXcursor,
   libxkbcommon, libXi, libXext, wayland-protocols, wayland,
-  which, dbus
+  which, dbus,
+  Cocoa,
+  CoreGraphics,
+  Foundation,
+  IOKit,
+  Kernel,
+  OpenGL,
+  cf-private,
+  libicns,
+  libpng,
+  librsvg,
+  optipng,
+  python3,
+  zlib,
 }:
 
 with python3Packages;
@@ -19,12 +32,32 @@ buildPythonApplication rec {
   };
 
   buildInputs = [
-    fontconfig glfw ncurses libunistring harfbuzz libX11
+    ncurses harfbuzz
+  ] ++ stdenv.lib.optionals stdenv.isDarwin [
+    Cocoa
+    CoreGraphics
+    Foundation
+    IOKit
+    Kernel
+    OpenGL
+    cf-private
+    libpng
+    python3
+    zlib
+  ] ++ stdenv.lib.optionals stdenv.isLinux [
+    fontconfig glfw libunistring libX11
     libXrandr libXinerama libXcursor libxkbcommon libXi libXext
     wayland-protocols wayland dbus
   ];
 
-  nativeBuildInputs = [ pkgconfig which sphinx ncurses ];
+  nativeBuildInputs = [
+    pkgconfig which sphinx ncurses
+  ] ++ stdenv.lib.optionals stdenv.isDarwin [
+    imagemagick
+    libicns  # For the png2icns tool.
+    librsvg
+    optipng
+  ];
 
   outputs = [ "out" "terminfo" ];
 
@@ -33,16 +66,30 @@ buildPythonApplication rec {
       src = ./fix-paths.patch;
       libstartup_notification = "${libstartup_notification}/lib/libstartup-notification-1.so";
     })
+  ] ++ stdenv.lib.optionals stdenv.isDarwin [
+    ./macos-10.11.patch
+    ./no-lto.patch
+    ./no-werror.patch
+    ./png2icns.patch
   ];
 
-  buildPhase = ''
+  buildPhase = if stdenv.isDarwin then ''
+    make app
+  '' else ''
     ${python.interpreter} setup.py linux-package
   '';
 
   installPhase = ''
     runHook preInstall
     mkdir -p $out
+    ${if stdenv.isDarwin then ''
+    mkdir "$out/bin"
+    ln -s ../Applications/kitty.app/Contents/MacOS/kitty "$out/bin/kitty"
+    mkdir "$out/Applications"
+    cp -r kitty.app "$out/Applications/kitty.app"
+    '' else ''
     cp -r linux-package/{bin,share,lib} $out
+    ''}
     wrapProgram "$out/bin/kitty" --prefix PATH : "$out/bin:${stdenv.lib.makeBinPath [ imagemagick xsel ]}"
     runHook postInstall
 
@@ -54,8 +101,13 @@ buildPythonApplication rec {
   '';
 
   postInstall = ''
+    terminfo_src=${if stdenv.isDarwin then
+      ''"$out/Applications/kitty.app/Contents/Resources/terminfo"''
+      else
+      "$out/share/terminfo"}
+
     mkdir -p $terminfo/share
-    mv $out/share/terminfo $terminfo/share/terminfo
+    mv "$terminfo_src" $terminfo/share/terminfo
 
     mkdir -p $out/nix-support
     echo "$terminfo" >> $out/nix-support/propagated-user-env-packages
@@ -65,7 +117,7 @@ buildPythonApplication rec {
     homepage = https://github.com/kovidgoyal/kitty;
     description = "A modern, hackable, featureful, OpenGL based terminal emulator";
     license = licenses.gpl3;
-    platforms = platforms.linux;
+    platforms = platforms.darwin ++ platforms.linux;
     maintainers = with maintainers; [ tex rvolosatovs ];
   };
 }
diff --git a/pkgs/applications/misc/kitty/macos-10.11.patch b/pkgs/applications/misc/kitty/macos-10.11.patch
new file mode 100644
index 000000000000..c8bf46839e8a
--- /dev/null
+++ b/pkgs/applications/misc/kitty/macos-10.11.patch
@@ -0,0 +1,116 @@
+commit 749772b8b8179eb3b71e542fd9ed5621feb578f5
+Author: Matthew Glazar <strager.nds@gmail.com>
+Date:   Thu Feb 28 22:01:32 2019 -0800
+
+    Support macOS 10.11
+
+    Allow Kitty to run on macOS 10.11 El Capitan.
+
+diff --git a/glfw/cocoa_init.m b/glfw/cocoa_init.m
+index 1e719d2e..05a680e4 100644
+--- a/glfw/cocoa_init.m
++++ b/glfw/cocoa_init.m
+@@ -30,6 +30,10 @@
+   #define NSEventMaskKeyUp NSKeyUpMask
+   #define NSEventMaskKeyDown NSKeyDownMask
+   #define NSEventModifierFlagCommand NSCommandKeyMask
++  #define NSEventModifierFlagControl NSControlKeyMask
++  #define NSEventModifierFlagDeviceIndependentFlagsMask NSDeviceIndependentModifierFlagsMask
++  #define NSEventModifierFlagShift NSShiftKeyMask
++  #define NSEventTypeApplicationDefined NSApplicationDefined
+ #endif
+
+ // Change to our application bundle's resources directory, if present
+diff --git a/glfw/cocoa_window.m b/glfw/cocoa_window.m
+index 1ce79b56..fd2255fc 100644
+--- a/glfw/cocoa_window.m
++++ b/glfw/cocoa_window.m
+@@ -41,6 +41,7 @@
+  #define NSWindowStyleMaskTitled NSTitledWindowMask
+  #define NSEventModifierFlagCommand NSCommandKeyMask
+  #define NSEventModifierFlagControl NSControlKeyMask
++ #define NSEventModifierFlagNumericPad NSNumericPadKeyMask
+  #define NSEventModifierFlagOption NSAlternateKeyMask
+  #define NSEventModifierFlagShift NSShiftKeyMask
+  #define NSEventModifierFlagCapsLock NSAlphaShiftKeyMask
+diff --git a/kitty/cocoa_window.m b/kitty/cocoa_window.m
+index 5e9252ba..99eb3352 100644
+--- a/kitty/cocoa_window.m
++++ b/kitty/cocoa_window.m
+@@ -15,6 +15,9 @@
+ #include <objc/runtime.h>
+
+ #if (MAC_OS_X_VERSION_MAX_ALLOWED < 101200)
++typedef NSUInteger NSWindowStyleMask;
++#define NSWindowStyleMaskBorderless NSBorderlessWindowMask
++#define NSWindowStyleMaskFullScreen NSFullScreenWindowMask
+ #define NSWindowStyleMaskResizable NSResizableWindowMask
+ #define NSEventModifierFlagOption NSAlternateKeyMask
+ #define NSEventModifierFlagCommand NSCommandKeyMask
+diff --git a/kitty/logging.c b/kitty/logging.c
+index 45c88174..1ec9f1b0 100644
+--- a/kitty/logging.c
++++ b/kitty/logging.c
+@@ -5,12 +5,21 @@
+  * Distributed under terms of the GPL3 license.
+  */
+
++#ifdef __APPLE__
++#include <AvailabilityMacros.h>
++#endif
++#if defined(__APPLE__) && defined(MAC_OS_X_VERSION_10_12) && MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_12
++#define USE_APPLE_OS_LOG 1
++#else
++#define USE_APPLE_OS_LOG 0
++#endif
++
+ #include "data-types.h"
+ #include <stdlib.h>
+ #include <stdarg.h>
+ #include <time.h>
+ #include <sys/time.h>
+-#ifdef __APPLE__
++#if USE_APPLE_OS_LOG
+ #include <os/log.h>
+ #endif
+
+@@ -21,7 +30,7 @@ void
+ log_error(const char *fmt, ...) {
+     va_list ar;
+     struct timeval tv;
+-#ifdef __APPLE__
++#if USE_APPLE_OS_LOG
+     // Apple does not provide a varargs style os_logv
+     char logbuf[16 * 1024] = {0};
+ #else
+@@ -44,7 +53,7 @@ log_error(const char *fmt, ...) {
+     if (use_os_log) { bufprint(vsnprintf, fmt, ar); }
+     else vfprintf(stderr, fmt, ar);
+     va_end(ar);
+-#ifdef __APPLE__
++#if USE_APPLE_OS_LOG
+     if (use_os_log) os_log(OS_LOG_DEFAULT, "%{public}s", logbuf);
+ #endif
+     if (!use_os_log) fprintf(stderr, "\n");
+@@ -66,7 +75,7 @@ static PyMethodDef module_methods[] = {
+ bool
+ init_logging(PyObject *module) {
+     if (PyModule_AddFunctions(module, module_methods) != 0) return false;
+-#ifdef __APPLE__
++#if USE_APPLE_OS_LOG
+     if (getenv("KITTY_LAUNCHED_BY_LAUNCH_SERVICES") != NULL) use_os_log = true;
+ #endif
+     return true;
+diff --git a/setup.py b/setup.py
+index f8643fce..55a96e73 100755
+--- a/setup.py
++++ b/setup.py
+@@ -711,7 +711,7 @@ Categories=System;TerminalEmulator;
+             CFBundlePackageType='APPL',
+             CFBundleSignature='????',
+             CFBundleExecutable=appname,
+-            LSMinimumSystemVersion='10.12.0',
++            LSMinimumSystemVersion='10.11.0',
+             LSRequiresNativeExecution=True,
+             NSAppleScriptEnabled=False,
+             # Needed for dark mode in Mojave when linking against older SDKs
diff --git a/pkgs/applications/misc/kitty/no-lto.patch b/pkgs/applications/misc/kitty/no-lto.patch
new file mode 100644
index 000000000000..c5fdeb7ddc03
--- /dev/null
+++ b/pkgs/applications/misc/kitty/no-lto.patch
@@ -0,0 +1,12 @@
+--- a/setup.py
++++ b/setup.py
+@@ -223,9 +223,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')
+
+     if profile:
+         cppflags.append('-DWITH_PROFILER')
diff --git a/pkgs/applications/misc/kitty/no-werror.patch b/pkgs/applications/misc/kitty/no-werror.patch
new file mode 100644
index 000000000000..c9b6dcd6b694
--- /dev/null
+++ b/pkgs/applications/misc/kitty/no-werror.patch
@@ -0,0 +1,11 @@
+--- a/setup.py
++++ b/setup.py
+@@ -202,7 +202,7 @@ def init_env(
+     cflags = os.environ.get(
+         'OVERRIDE_CFLAGS', (
+             '-Wextra -Wno-missing-field-initializers -Wall -std=c11'
+-            ' -pedantic-errors -Werror {} {} -fwrapv {} {} -pipe {} -fvisibility=hidden'
++            ' {} {} -fwrapv {} {} -pipe {} -fvisibility=hidden'
+         ).format(
+             optimize,
+             ' '.join(sanitize_args),
diff --git a/pkgs/applications/misc/kitty/png2icns.patch b/pkgs/applications/misc/kitty/png2icns.patch
new file mode 100644
index 000000000000..d2d0806c862f
--- /dev/null
+++ b/pkgs/applications/misc/kitty/png2icns.patch
@@ -0,0 +1,19 @@
+--- a/setup.py
++++ b/setup.py
+@@ -744,9 +744,15 @@ Categories=System;TerminalEmulator;
+         if not os.path.exists(logo_dir):
+             raise SystemExit('The kitty logo has not been generated, you need to run logo/make.py')
+         subprocess.check_call([
+-            'iconutil', '-c', 'icns', logo_dir, '-o',
++            'png2icns',
+             os.path.join('Resources', 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',
++        )])
+     # }}}
+ # }}}
diff --git a/pkgs/applications/misc/octoprint/default.nix b/pkgs/applications/misc/octoprint/default.nix
index e173f6d0d7d5..76a0a5748081 100644
--- a/pkgs/applications/misc/octoprint/default.nix
+++ b/pkgs/applications/misc/octoprint/default.nix
@@ -19,6 +19,9 @@ let
       (mkOverride "pylru"       "1.0.9"  "0b0pq0l7xv83dfsajsc49jcxzc99kb9jfx1a1dlx22hzcy962dvi")
       (mkOverride "sarge"       "0.1.4"  "08s8896973bz1gg0pkr592w6g4p6v47bkfvws5i91p9xf8b35yar")
       (mkOverride "tornado"     "4.5.3"  "02jzd23l4r6fswmwxaica9ldlyc2p6q8dk6dyff7j58fmdzf853d")
+
+      # https://github.com/NixOS/nixpkgs/pull/58179#issuecomment-478605134
+      (mkOverride "werkzeug"    "0.14.1" "c3fd7a7d41976d9f44db327260e263132466836cef6f91512889ed60ad26557c")
     ]);
   };
 
diff --git a/pkgs/applications/misc/polar-bookshelf/default.nix b/pkgs/applications/misc/polar-bookshelf/default.nix
index 82468e1bf9f0..11c643fac2c3 100644
--- a/pkgs/applications/misc/polar-bookshelf/default.nix
+++ b/pkgs/applications/misc/polar-bookshelf/default.nix
@@ -10,12 +10,12 @@
 
 stdenv.mkDerivation rec {
   name = "polar-bookshelf-${version}";
-  version = "1.12.0";
+  version = "1.13.10";
 
   # fetching a .deb because there's no easy way to package this Electron app
   src = fetchurl {
     url = "https://github.com/burtonator/polar-bookshelf/releases/download/v${version}/polar-bookshelf-${version}-amd64.deb";
-    sha256 = "058pl54mkbvcjyjmdz81r0ibk1qkc3798pkkdw1kp2cbg16qkfyh";
+    sha256 = "1bxcyf6n2m5x1z8ic6kzskinyyc6lh6nj0bycbwc524n6ms5j99p";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/safeeyes/default.nix b/pkgs/applications/misc/safeeyes/default.nix
index f4918565f353..de1e7a093d5a 100644
--- a/pkgs/applications/misc/safeeyes/default.nix
+++ b/pkgs/applications/misc/safeeyes/default.nix
@@ -6,12 +6,12 @@ let inherit (python3Packages) python buildPythonApplication fetchPypi;
 in buildPythonApplication rec {
   name = "${pname}-${version}";
   pname = "safeeyes";
-  version = "2.0.8.1";
+  version = "2.0.9";
   namePrefix = "";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1x52ym8n4r6h38n4mcydxkvz71hhrd9wbiq4gzvwrai0xzl6qqsq";
+    sha256 = "13q06jv8hm0dynmr3g5pf1m4j3w9iabrpz1nhpl02f7x0d90whg2";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/misc/solaar/default.nix b/pkgs/applications/misc/solaar/default.nix
index 1928da18681f..cb2cd3f1e62f 100644
--- a/pkgs/applications/misc/solaar/default.nix
+++ b/pkgs/applications/misc/solaar/default.nix
@@ -1,5 +1,9 @@
-{fetchFromGitHub, stdenv, gtk3, pythonPackages, gobject-introspection}:
-pythonPackages.buildPythonApplication rec {
+{ fetchFromGitHub, lib, gobject-introspection, gtk3, python3Packages }:
+
+# Although we copy in the udev rules here, you probably just want to use logitech-udev-rules instead of
+# adding this to services.udev.packages on NixOS
+
+python3Packages.buildPythonApplication rec {
   pname = "solaar-unstable";
   version = "2019-01-30";
 
@@ -10,7 +14,8 @@ pythonPackages.buildPythonApplication rec {
     sha256 = "0xg181xcwzzs8pdqvjrkjyaaga7ir93hzjvd17j9g3ns8xfj2mvr";
   };
 
-  propagatedBuildInputs = [pythonPackages.pygobject3 pythonPackages.pyudev gobject-introspection gtk3];
+  propagatedBuildInputs = with python3Packages; [ gobject-introspection gtk3 pygobject3 pyudev ];
+
   postInstall = ''
     wrapProgram "$out/bin/solaar" \
       --prefix PYTHONPATH : "$PYTHONPATH" \
@@ -19,12 +24,12 @@ pythonPackages.buildPythonApplication rec {
       --prefix PYTHONPATH : "$PYTHONPATH" \
       --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH"
 
-    mkdir -p $out/lib/udev/rules.d
-    cp rules.d/*.rules $out/lib/udev/rules.d/
+    install -Dm644 -t $out/etc/udev/rules.d rules.d/*.rules
   '';
 
   enableParallelBuilding = true;
-  meta = with stdenv.lib; {
+
+  meta = with lib; {
     description = "Linux devices manager for the Logitech Unifying Receiver";
     longDescription = ''
       Solaar is a Linux device manager for Logitech’s Unifying Receiver
@@ -40,6 +45,6 @@ pythonPackages.buildPythonApplication rec {
     license = licenses.gpl2;
     homepage = https://pwr.github.io/Solaar/;
     platforms = platforms.linux;
-    maintainers = [maintainers.spinus maintainers.ysndr];
+    maintainers = with maintainers; [ spinus ysndr ];
   };
 }
diff --git a/pkgs/applications/misc/stupidterm/default.nix b/pkgs/applications/misc/stupidterm/default.nix
index 483fb9cf95a0..1fc96e551ac7 100644
--- a/pkgs/applications/misc/stupidterm/default.nix
+++ b/pkgs/applications/misc/stupidterm/default.nix
@@ -1,7 +1,8 @@
 { stdenv, fetchFromGitHub, pkgconfig, vte, gtk }:
 
 stdenv.mkDerivation rec {
-  name = "stupidterm-2018-09-25";
+  pname = "stupidterm";
+  version = "2019-03-26";
 
   nativeBuildInputs = [ pkgconfig ];
 
@@ -10,17 +11,19 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "esmil";
     repo = "stupidterm";
-    rev = "d1bc020797330df83d427e361d3620e346a4e792";
-    sha256 = "1yh2vhq3d0qbh0dh2h9yc7s9gkffgkb987vvwz2bdnvlskrjmmdj";
+    rev = "f824e41c2ca9016db73556c5d2f5a2861e235c8e";
+    sha256 = "1f73wvqqvj5pr3fvb7jjc4bi1iwgkkknz24k8n69mdb75jnfjipp";
   };
 
   makeFlags = "PKGCONFIG=${pkgconfig}/bin/pkg-config binary=stupidterm";
 
   installPhase = ''
-    mkdir -p $out/bin $out/share/applications $out/share/stupidterm
-    cp stupidterm $out/bin
-    substituteAll ${./stupidterm.desktop} $out/share/applications/stupidterm.desktop
-    substituteAll stupidterm.ini $out/share/stupidterm/stupidterm.ini
+    install -D stupidterm $out/bin/stupidterm
+    install -D -m 644 stupidterm.desktop $out/share/applications/stupidterm.desktop
+    install -D -m 644 stupidterm.ini $out/share/stupidterm/stupidterm.ini
+
+    substituteInPlace $out/share/applications/stupidterm.desktop \
+      --replace "Exec=st" "Exec=$out/bin/stupidterm"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/stupidterm/stupidterm.desktop b/pkgs/applications/misc/stupidterm/stupidterm.desktop
deleted file mode 100644
index c26d46060183..000000000000
--- a/pkgs/applications/misc/stupidterm/stupidterm.desktop
+++ /dev/null
@@ -1,9 +0,0 @@
-[Desktop Entry]
-Version=20170315
-Name=stupidterm
-Comment=VTE based terminal emulator
-Exec=stupidterm
-Icon=utilities-terminal
-Terminal=false
-Type=Application
-Categories=System;TerminalEmulator;
diff --git a/pkgs/applications/misc/sweethome3d/default.nix b/pkgs/applications/misc/sweethome3d/default.nix
index 825b52cda7f8..293f6aaa3c6f 100644
--- a/pkgs/applications/misc/sweethome3d/default.nix
+++ b/pkgs/applications/misc/sweethome3d/default.nix
@@ -74,15 +74,15 @@ let
 in rec {
 
   application = mkSweetHome3D rec {
-    version = "6.0";
+    version = "6.1.2";
     module = "SweetHome3D";
     name = stdenv.lib.toLower module + "-application-" + version;
     description = "Design and visualize your future home";
     license = stdenv.lib.licenses.gpl2Plus;
     src = fetchsvn {
       url = "https://svn.code.sf.net/p/sweethome3d/code/tags/V_" + d2u version + "/SweetHome3D/";
-      sha256 = "1l4kc1c2iwkggmcdb2wksb4vrh97ll804vc51yawhdlq9g567ky9";
-      rev = "6647";
+      sha256 = "14svi112kml175dblzcdjzhlfwbp1cy6rki49mqb3632hwmif6ya";
+      rev = "6750";
     };
     desktopName = "Sweet Home 3D";
     icons = {
diff --git a/pkgs/applications/misc/terminator/default.nix b/pkgs/applications/misc/terminator/default.nix
index 4a6ad4e5ea38..80dffe6d93f2 100644
--- a/pkgs/applications/misc/terminator/default.nix
+++ b/pkgs/applications/misc/terminator/default.nix
@@ -12,7 +12,9 @@ python2.pkgs.buildPythonApplication rec {
   };
 
   nativeBuildInputs = [ file intltool wrapGAppsHook gobject-introspection ];
-  buildInputs = [ gtk3 vte libnotify keybinder3 ];
+  buildInputs = [ gtk3 vte libnotify keybinder3
+    gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943
+  ];
   propagatedBuildInputs = with python2.pkgs; [ pygobject3 psutil pycairo ];
 
   postPatch = ''
diff --git a/pkgs/applications/misc/tilix/default.nix b/pkgs/applications/misc/tilix/default.nix
index ab6ef3294700..ed9ae5ade9ff 100644
--- a/pkgs/applications/misc/tilix/default.nix
+++ b/pkgs/applications/misc/tilix/default.nix
@@ -4,19 +4,20 @@
 
 stdenv.mkDerivation rec {
   pname = "tilix";
-  version = "1.8.9";
+  version = "1.9.0";
 
   src = fetchFromGitHub {
     owner = "gnunn1";
     repo = "tilix";
     rev = version;
-    sha256 = "1l1ib3g01mxiywbwjxc2522qgjy3ymjzy8bxl42k0hprpp95rw9d";
+    sha256 = "1k8hqpq6bzmn06b4s8c257n37ghgp3fl7l9g6fy0giwk1x0ix735";
   };
 
   nativeBuildInputs = [
     autoreconfHook dmd desktop-file-utils perlPackages.Po4a pkgconfig xdg_utils
     wrapGAppsHook
   ];
+
   buildInputs = [ gnome3.dconf gettext gsettings-desktop-schemas gtkd dbus libsecret ];
 
   preBuild = ''
@@ -34,7 +35,10 @@ stdenv.mkDerivation rec {
 
     substituteInPlace $out/share/applications/com.gexperts.Tilix.desktop \
       --replace "Exec=tilix" "Exec=$out/bin/tilix"
-    sed -i '/^DBusActivatable=/d' $out/share/applications/com.gexperts.Tilix.desktop
+
+    # TODO: Won't be needed after the switch to Meson
+    substituteInPlace $out/share/dbus-1/services/com.gexperts.Tilix.service \
+     --replace "/usr/bin/tilix" "$out/bin/tilix"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/workrave/default.nix b/pkgs/applications/misc/workrave/default.nix
index 7e54f943856a..1547d2962116 100644
--- a/pkgs/applications/misc/workrave/default.nix
+++ b/pkgs/applications/misc/workrave/default.nix
@@ -7,11 +7,11 @@
 
 stdenv.mkDerivation rec {
   name = "workrave-${version}";
-  version = "1.10.23";
+  version = "1.10.31";
 
   src = let
   in fetchFromGitHub {
-    sha256 = "1qhlwfhwk5agv4904d6bsf83k9k89q7bms6agg967vsca4905vcw";
+    sha256 = "0v2mx2idaxlsyv5w66b7pknlill9j9i2gqcs3vq54gak7ix9fj1p";
     rev = with stdenv.lib;
       "v" + concatStringsSep "_" (splitString "." version);
     repo = "workrave";
diff --git a/pkgs/applications/misc/xmrig/default.nix b/pkgs/applications/misc/xmrig/default.nix
index 22ababbca3be..ff0555eb9657 100644
--- a/pkgs/applications/misc/xmrig/default.nix
+++ b/pkgs/applications/misc/xmrig/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "xmrig-${version}";
-  version = "2.13.1";
+  version = "2.14.1";
 
   src = fetchFromGitHub {
     owner = "xmrig";
     repo = "xmrig";
     rev = "v${version}";
-    sha256 = "1s6hz9r0079r9sd1wgd1nm6wn1dmix4smz7174g9a29z2zcqr160";
+    sha256 = "0pc3ssmnn36xs3jgznx36q4z3qh06fkbz8md3p3rk6rpvly929pn";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/xmrig/proxy.nix b/pkgs/applications/misc/xmrig/proxy.nix
index 2df0cdafdc4b..6040b60707a2 100644
--- a/pkgs/applications/misc/xmrig/proxy.nix
+++ b/pkgs/applications/misc/xmrig/proxy.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "xmrig-proxy-${version}";
-  version = "2.11.0";
+  version = "2.14.0";
 
   src = fetchFromGitHub {
     owner = "xmrig";
     repo = "xmrig-proxy";
     rev = "v${version}";
-    sha256 = "1jjcgnpkxdafsdsxndsvzd84i6mwk7ix4vvgs3k1dla9ll9nwq5j";
+    sha256 = "0yw9g18blrwncy1ya9iwbfx8l7bs0v6nmnkk71bxz4zj9d8dkal3";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/applications/misc/xtermcontrol/default.nix b/pkgs/applications/misc/xtermcontrol/default.nix
index f3e743b5528c..21f95c65fa56 100644
--- a/pkgs/applications/misc/xtermcontrol/default.nix
+++ b/pkgs/applications/misc/xtermcontrol/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  version = "3.6";
+  version = "3.7";
   name = "xtermcontrol-${version}";
 
   src = fetchurl {
     url = "https://thrysoee.dk/xtermcontrol/xtermcontrol-${version}.tar.gz";
-    sha256 = "01bwgxya6qh4br2lx3v98p7j1b99skgr6c1frw5kdkxy57qlpgkz";
+    sha256 = "04m12ddaps5sdbqvkwkp6lh81i8vh5ya5gzcxkrkilsga3m6qff2";
   };
 
   meta = {
diff --git a/pkgs/applications/networking/brig/default.nix b/pkgs/applications/networking/brig/default.nix
index 7c6f2d8a570f..b86cb7d3dd92 100644
--- a/pkgs/applications/networking/brig/default.nix
+++ b/pkgs/applications/networking/brig/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildGoPackage, fetchFromGitHub, fetchgx }:
+{ stdenv, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   name = "brig-${version}";
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index 04713afe6107..49426a8af3b2 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -25,7 +25,7 @@
 # package customization
 , enableNaCl ? false
 , enableWideVine ? false
-, useVaapi ? true
+, useVaapi ? false
 , gnomeSupport ? false, gnome ? null
 , gnomeKeyringSupport ? false, libgnome-keyring3 ? null
 , proprietaryCodecs ? true
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 10635383fdee..68aee1f98d76 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -11,7 +11,7 @@
 , proprietaryCodecs ? true
 , enablePepperFlash ? false
 , enableWideVine ? false
-, useVaapi ? true
+, useVaapi ? false # test video on radeon, before enabling this
 , cupsSupport ? true
 , pulseSupport ? config.pulseaudio or stdenv.isLinux
 , commandLineArgs ? ""
diff --git a/pkgs/applications/networking/browsers/chromium/update.nix b/pkgs/applications/networking/browsers/chromium/update.nix
index 277ad29abe29..2334dc6a71e4 100644
--- a/pkgs/applications/networking/browsers/chromium/update.nix
+++ b/pkgs/applications/networking/browsers/chromium/update.nix
@@ -97,13 +97,13 @@ in rec {
 
         builtins.tryEval (builtins.fetchurl url)
 
-      ... except that tryEval on fetchurl isn't working and doesn't catch errors
-      for fetchurl, so we go for a different approach.
+      ... except that tryEval on fetchurl isn't working and doesn't catch
+      errors for fetchurl, so we go for a different approach.
 
       We only have fixed-output derivations that can have networking access, so
-      we abuse MD5 and its weaknesses to forge a fixed-output derivation which
+      we abuse SHA1 and its weaknesses to forge a fixed-output derivation which
       is not so fixed, because it emits different contents that have the same
-      MD5 hash.
+      SHA1 hash.
 
       Using this method, we can distinguish whether the URL is available or
       whether it's not based on the actual content.
@@ -111,25 +111,50 @@ in rec {
       So let's use tryEval as soon as it's working with fetchurl in Nix.
     */
     tryFetch = url: let
-      mkBin = b: runCommand "binary-blurb" { inherit b; } ''
-        h="$(echo "$b" | sed -e ':r;N;$!br;s/[^ \n][^ \n]/\\x&/g;s/[ \n]//g')"
-        echo -ne "$h" > "$out"
-      '';
-
-      # Both MD5 hash collision examples are from:
-      # https://en.wikipedia.org/wiki/MD5#Collision_vulnerabilities
-      hashCollTrue = mkBin ''
-        d131dd02c5e6eec4 693d9a0698aff95c 2fcab58712467eab 4004583eb8fb7f89
-        55ad340609f4b302 83e488832571415a 085125e8f7cdc99f d91dbdf280373c5b
-        d8823e3156348f5b ae6dacd436c919c6 dd53e2b487da03fd 02396306d248cda0
-        e99f33420f577ee8 ce54b67080a80d1e c69821bcb6a88393 96f9652b6ff72a70
-      '';
-
-      hashCollFalse = mkBin ''
-        d131dd02c5e6eec4 693d9a0698aff95c 2fcab50712467eab 4004583eb8fb7f89
-        55ad340609f4b302 83e4888325f1415a 085125e8f7cdc99f d91dbd7280373c5b
-        d8823e3156348f5b ae6dacd436c919c6 dd53e23487da03fd 02396306d248cda0
-        e99f33420f577ee8 ce54b67080280d1e c69821bcb6a88393 96f965ab6ff72a70
+      # SHA1 hash collisions from https://shattered.io/static/shattered.pdf:
+      collisions = runCommand "sha1-collisions" {
+        outputs = [ "out" "good" "bad" ];
+        base64 = ''
+          QlpoOTFBWSZTWbL5V5MABl///////9Pv///v////+/////HDdK739/677r+W3/75rUNr4
+          Aa/AAAAAAACgEVTRtQDQAaA0AAyGmjTQGmgAAANGgAaMIAYgGgAABo0AAAAAADQAIAGQ0
+          MgDIGmjQA0DRk0AaMQ0DQAGIANGgAAGRoNGQMRpo0GIGgBoGQAAIAGQ0MgDIGmjQA0DRk
+          0AaMQ0DQAGIANGgAAGRoNGQMRpo0GIGgBoGQAAIAGQ0MgDIGmjQA0DRk0AaMQ0DQAGIAN
+          GgAAGRoNGQMRpo0GIGgBoGQAAIAGQ0MgDIGmjQA0DRk0AaMQ0DQAGIANGgAAGRoNGQMRp
+          o0GIGgBoGQAABVTUExEZATTICnkxNR+p6E09JppoyamjGhkm0ammIyaekbUejU9JiGnqZ
+          qaaDxJ6m0JkZMQ2oaYmJ6gxqMyE2TUzJqfItligtJQJfYbl9Zy9QjQuB5mHQRdSSXCCTH
+          MgmSDYmdOoOmLTBJWiCpOhMQYpQlOYpJjn+wQUJSTCEpOMekaFaaNB6glCC0hKEJdHr6B
+          mUIHeph7YxS8WJYyGwgWnMTFJBDFSxSCCYljiEk7HZgJzJVDHJxMgY6tCEIIWgsKSlSZ0
+          S8GckoIIF+551Ro4RCw260VCEpWJSlpWx/PMrLyVoyhWMAneDilBcUIeZ1j6NCkus0qUC
+          Wnahhk5KT4GpWMh3vm2nJWjTL9Qg+84iExBJhNKpbV9tvEN265t3fu/TKkt4rXFTsV+Nc
+          upJXhOhOhJMQQktrqt4K8mSh9M2DAO2X7uXGVL9YQxUtzQmS7uBndL7M6R7vX869VxqPu
+          renSuHYNq1yTXOfNWLwgvKlRlFYqLCs6OChDp0HuTzCWscmGudLyqUuwVGG75nmyZhKpJ
+          yOE/pOZyHyrZxGM51DYIN+Jc8yVJgAykxKCEtW55MlfudLg3KG6TtozalunXrroSxUpVL
+          StWrWLFihMnVpkyZOrQnUrE6xq1CGtJlbAb5ShMbV1CZgqlKC0wCFCpMmUKSEkvFLaZC8
+          wHOCVAlvzaJQ/T+XLb5Dh5TNM67p6KZ4e4ZSGyVENx2O27LzrTIteAreTkMZpW95GS0CE
+          JYhMc4nToTJ0wQhKEyddaLb/rTqmgJSlkpnALxMhlNmuKEpkEkqhKUoEq3SoKUpIQcDgW
+          lC0rYahMmLuPQ0fHqZaF4v2W8IoJ2EhMhYmSw7qql27WJS+G4rUplToFi2rSv0NSrVvDU
+          pltQ8Lv6F8pXyxmFBSxiLSxglNC4uvXVKmAtusXy4YXGX1ixedEvXF1aX6t8adYnYCpC6
+          rW1ZzdZYlCCxKEv8vpbqdSsXl8v1jCQv0KEPxPTa/5rtWSF1dSgg4z4KjfIMNtgwWoWLE
+          sRhKxsSA9ji7V5LRPwtumeQ8V57UtFSPIUmtQdOQfseI2Ly1DMtk4Jl8n927w34zrWG6P
+          i4jzC82js/46Rt2IZoadWxOtMInS2xYmcu8mOw9PLYxQ4bdfFw3ZPf/g2pzSwZDhGrZAl
+          9lqky0W+yeanadC037xk496t0Dq3ctfmqmjgie8ln9k6Q0K1krb3dK9el4Xsu44LpGcen
+          r2eQZ1s1IhOhnE56WnXf0BLWn9Xz15fMkzi4kpVxiTKGEpffErEEMvEeMZhUl6yD1SdeJ
+          YbxzGNM3ak2TAaglLZlDCVnoM6wV5DRrycwF8Zh/fRsdmhkMfAO1duwknrsFwrzePWeMw
+          l107DWzymxdQwiSXx/lncnn75jL9mUzw2bUDqj20LTgtawxK2SlQg1CCZDQMgSpEqLjRM
+          sykM9zbSIUqil0zNk7Nu+b5J0DKZlhl9CtpGKgX5uyp0idoJ3we9bSrY7PupnUL5eWiDp
+          V5mmnNUhOnYi8xyClkLbNmAXyoWk7GaVrM2umkbpqHDzDymiKjetgzTocWNsJ2E0zPcfh
+          t46J4ipaXGCfF7fuO0a70c82bvqo3HceIcRlshgu73seO8BqlLIap2z5jTOY+T2ucCnBt
+          Atva3aHdchJg9AJ5YdKHz7LoA3VKmeqxAlFyEnQLBxB2PAhAZ8KvmuR6ELXws1Qr13Nd1
+          i4nsp189jqvaNzt+0nEnIaniuP1+/UOZdyfoZh57ku8sYHKdvfW/jYSUks+0rK+qtte+p
+          y8jWL9cOJ0fV8rrH/t+85/p1z2N67p/ZsZ3JmdyliL7lrNxZUlx0MVIl6PxXOUuGOeArW
+          3vuEvJ2beoh7SGyZKHKbR2bBWO1d49JDIcVM6lQtu9UO8ec8pOnXmkcponBPLNM2CwZ9k
+          NC/4ct6rQkPkQHMcV/8XckU4UJCy+VeTA==
+        '';
+      } ''
+        echo "$base64" | base64 -d | tar xj
+        mv good.pdf "$good"
+        mv bad.pdf "$bad"
+        touch "$out"
       '';
 
       cacheVal = let
@@ -137,31 +162,40 @@ in rec {
         timeSlice = builtins.currentTime / 600;
       in "${urlHash}-${toString timeSlice}";
 
-      successBin = stdenv.mkDerivation {
-        name = "tryfetch-${cacheVal}";
-        inherit url;
-
-        outputHash = "79054025255fb1a26e4bc422aef54eb4";
-        outputHashMode = "flat";
-        outputHashAlgo = "md5";
-
-        nativeBuildInputs = [ curl ];
-        preferLocalBuild = true;
-
-        buildCommand = ''
-          if SSL_CERT_FILE="${cacert}/etc/ssl/certs/ca-bundle.crt" \
-             curl -s -L -f -I "$url" > /dev/null; then
-            cat "${hashCollTrue}" > "$out"
-          else
-            cat "${hashCollFalse}" > "$out"
-          fi
-        '';
-
-        impureEnvVars = lib.fetchers.proxyImpureEnvVars;
-      };
-
     in {
-      success = builtins.readFile successBin == builtins.readFile hashCollTrue;
+      success = import (runCommand "check-success" {
+        result = stdenv.mkDerivation {
+          name = "tryfetch-${cacheVal}";
+          inherit url;
+
+          outputHash = "d00bbe65d80f6d53d5c15da7c6b4f0a655c5a86a";
+          outputHashMode = "flat";
+          outputHashAlgo = "sha1";
+
+          nativeBuildInputs = [ curl ];
+          preferLocalBuild = true;
+
+          inherit (collisions) good bad;
+
+          buildCommand = ''
+            if SSL_CERT_FILE="${cacert}/etc/ssl/certs/ca-bundle.crt" \
+               curl -s -L -f -I "$url" > /dev/null; then
+              cp "$good" "$out"
+            else
+              cp "$bad" "$out"
+            fi
+          '';
+
+          impureEnvVars = lib.fetchers.proxyImpureEnvVars;
+        };
+        inherit (collisions) good;
+      } ''
+        if cmp -s "$result" "$good"; then
+          echo true > "$out"
+        else
+          echo false > "$out"
+        fi
+      '');
       value = builtins.fetchurl url;
     };
 
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
index b4da79a49838..de83e0e0646c 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 = "18xzddqi8rgng5vksx23jaiv103prxc38pshwp702nfjfqap7fwy";
-    sha256bin64 = "1r9nnc1xn319aqzxjh10n6nh714lghgskgdkpvw3hnvgb0v9jw4v";
-    version = "73.0.3683.86";
+    sha256 = "1lpgkf292f6v6v19zjp1si6vvizixk9192yjx76pq1d790678qrb";
+    sha256bin64 = "028c3gjh5zbxr53wkk3s5jvgwc2fz9cnvnyr58q4la91vyrbjslm";
+    version = "74.0.3729.61";
   };
   dev = {
-    sha256 = "0vdiaraw3jjr7ykdqbrhjzppvqs9d7jkkx1qyi50dyvrhipxdihz";
-    sha256bin64 = "0c5mnb1zz1mjs7h18f1c15ygqxl1kcpm2s1imyprh80mapmsxdxk";
-    version = "74.0.3729.22";
+    sha256 = "15197r2gbx4h7dsasvgz0vcl7mqmj0glc4sip99dw145drwdpmsq";
+    sha256bin64 = "1qf089l5k7l69msrn49z5lkg932n1rgnzgr9yg5ja89arcgynacv";
+    version = "75.0.3753.4";
   };
   stable = {
-    sha256 = "18xzddqi8rgng5vksx23jaiv103prxc38pshwp702nfjfqap7fwy";
-    sha256bin64 = "1mmm4lxvcfvdj6jpqaas51lx1c9zky4zp374phs3cmh9v8l2ijkb";
-    version = "73.0.3683.86";
+    sha256 = "1bskjr7yiwvdab1b5mp36y6964xqpgks6dqazm4qifwqvqcw80pb";
+    sha256bin64 = "00ndrqhmnk567sw6xj22m84126qvivq0jzfx0v46ya3kq6ln22gr";
+    version = "73.0.3683.103";
   };
 }
diff --git a/pkgs/applications/networking/browsers/eolie/default.nix b/pkgs/applications/networking/browsers/eolie/default.nix
index 5b3e8d727d0c..e067f3f15eb5 100644
--- a/pkgs/applications/networking/browsers/eolie/default.nix
+++ b/pkgs/applications/networking/browsers/eolie/default.nix
@@ -5,7 +5,7 @@
 
 python3.pkgs.buildPythonApplication rec {
   pname = "eolie";
-  version = "0.9.45";
+  version = "0.9.60";
 
   format = "other";
   doCheck = false;
@@ -14,7 +14,7 @@ python3.pkgs.buildPythonApplication rec {
     url = "https://gitlab.gnome.org/World/eolie";
     rev = "refs/tags/${version}";
     fetchSubmodules = true;
-    sha256 = "0x6f2qqqxpjf28mqxs4jlrz2z8wa9nvb9h24nf8qwmzavjjbraqg";
+    sha256 = "1mhl7p8pwp8lqx5z15r0lx1y4mb2c1gjwy3w6041cyc4hyb91693";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
index dbad2012e8ca..ca295183e221 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/beta_sources.nix
@@ -1,995 +1,995 @@
 {
-  version = "67.0b3";
+  version = "67.0b7";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ach/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ach/firefox-67.0b7.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "11f2b3d99e303f747c565fa2a28ca8dbc6eada8c13ccdc931a99e060621078615519a29dd7dcb5636f2744a5ceb52ee738925a6cd2b81b6ac8573d5e0e048053";
+      sha512 = "4f640887e38c4c6fd30f8c6bb3d296336a73c9c039c9ebcd0b26080528d5ee2f9ae3e041d107d4dfb2fdc9fbbe50669e8f4332adb02f01e700b24afeb918b0c7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/af/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/af/firefox-67.0b7.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "4eb18c3f12f793c5d6f6895c900d8263a0f2ecce8c77aa2a9ae6404297ab3d29c7e544e823b13328bf8ef460a676d71c05b3f81f14b63f649377a3246241f058";
+      sha512 = "75e2d8b31e3a4cfa43893d22d3d6cb274834daebfcc1ac27a7e77cf5404f5ac521362e9b57de7977c9117a6a5d4e1a975403c55d7bd61d5e06aae9d2957bfeba";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/an/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/an/firefox-67.0b7.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "780cb363915cfe5e7707336523f9a3291ade23d904637d76fa54fc2708a7ff4a4f83e05b00c0c173343d5d849aab52f25baedfe87d6f351cb1398ea24e488269";
+      sha512 = "4018b692d2bad85bb7e2d90416f6ff1b3a61bcb2d352b8d3a6b9771348434b624f923185015bd3bb32786fa83f8ce184a3464a91a80e17dc94113805fdf386ff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ar/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ar/firefox-67.0b7.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "1dbc639e81bda848471552f635ed76d415e4c56a7cf3aec48052c85b36b74f510f9ac990a14632f15c67402ef2f3a44bdd0cc8efe6c2bfba153d44640c254b19";
+      sha512 = "9459917b266241cde076463d100d29bfda4f2da401d261fb2baa87fddffe86a983a5f873983aab5db8a16704d36850608a670da12d9fb93792bdeda7864bdded";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/as/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/as/firefox-67.0b7.tar.bz2";
       locale = "as";
       arch = "linux-x86_64";
-      sha512 = "d9b47091bf60252ed7c1d70a8da2fca29b47a2892f82c7f9140b07ca82ed0701065d1b092eaa917d70a3a0abf0f9aafbd47ea1281afd37b31444418127d2b78b";
+      sha512 = "78cfd264f164400e76bf1a2935daa97c1e43b65bf057eb1287de07e148238205dfb72c3412437ad42948b9e9d47bc2a2c2f2360ac9255b2f834cc1a62c282678";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ast/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ast/firefox-67.0b7.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "9316ecf3c7b2b94a6e3d5dae3cf9369146392aa7b2f8ddffadd4553afbec3e1060ff96abf3703b843f071c1875bb52bf41ceb5bf94725096e1b9ccebb310ae93";
+      sha512 = "ec2ab27cbf93854c995d3d2fafcbd3e121224aac344a058e6c8113a3fedf62650037054967987fde6d035013366f7c5ebd4b179ab37b7c8a8a2fe95490cf80ff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/az/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/az/firefox-67.0b7.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "dd3212e4f5486b0aadbbd2cf453fac155c6c19d17d4a83575d77e93de44986c2b73c825d78efdc69542cc3f5ee66c251460236383ae74db2264b3010884ff013";
+      sha512 = "a86a3475738ad39c05db2ec9084032c7b3141882348870ab29e0940a1da0098e548175257d2b656332c23ae0db224a9f12d0c630985c25c0a0ff8d84d00db6df";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/be/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/be/firefox-67.0b7.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "063c3a6c7c8ad97afe20889425b1dcb64167ed291cf30c139efbe8d82b93af4467b6d1661c849bbb5da5fc49fa37602cc106f4a1d398f7cc12251c4aec7d73bc";
+      sha512 = "5d997969f984fb9e9bf5dfbf64b66bf604abab0a4c1d2e53b82990197dd233b7605f3ae294053428a0f8509f0c640771b203d865e2e655fdb9449bdfa9454a97";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/bg/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/bg/firefox-67.0b7.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "b706567418d5e1ddd123ac149c6a077bbc324961fd19c3c4bd430b7f6e57bd0ad1024746152bb924e7e2205d6bcdb5f017077ac078b9847eb36568ed1aa8d7da";
+      sha512 = "930794602f594588382b959ef54d4ff05cb8ba71d39ecc23934d29e8820bbad8204708392c28185fd97b2eff7cd1a93a7156736675ceb072c4b820cc78be6efe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/bn-BD/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/bn-BD/firefox-67.0b7.tar.bz2";
       locale = "bn-BD";
       arch = "linux-x86_64";
-      sha512 = "501c08adf36e82af49a80cf915e2c701cca27c7f85deeac1e9802b48812c677e383ff32862810123f5d97ae207a85cd76eb4b0fe4b5b85c41d5d18bff43897ba";
+      sha512 = "f186acacbe502a620f8b2dbc1ed6fb3d978128af749b8f55efa122cff6ba3702c21361e47fd5a4af33b533a7961ccc13dcb0ed19e2617b244a87c82295f491a7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/bn-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/bn-IN/firefox-67.0b7.tar.bz2";
       locale = "bn-IN";
       arch = "linux-x86_64";
-      sha512 = "480a6a5cc80c94a49fcb0c4698d61cb3a842587d2d5d2dc0d725f32013a5e5ad7fac705ba029f6273243d301ede477f23f154aab813986a2d0815684bcb815ad";
+      sha512 = "fbc97c4a4fa81edeb8b6af71accae9155f7efab2e79a724a671a07adcfa5f0f252faac3a3ec63db452126aa0ac87b2943657e9d18094274ce72995f3f7ea3f35";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/br/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/br/firefox-67.0b7.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "4254f6a1ee5d480879428aff82098c2696204196bf725b828f244eee3c8047b1bc2553a63c7bda6127589e3f8985128111d57db4ee46ff49ab58a20a2b67b163";
+      sha512 = "ded74968f5cb4b9794d1a200fcf378698c5d31bace8b0e39e1c6710d665b7152e77fd565cdd694b8e556857d9415dc6af912c5c44bd5c937baf52cacb33d399d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/bs/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/bs/firefox-67.0b7.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "a73a689bce631342bf9bf528aa03640468966252ebfd2e3337f487bd8f18013dbd1df863394042c68192a1794b5449aa57d6fb21aa87a261129079118291407b";
+      sha512 = "b98385274bc71ce17144adbb164e9d42fbac318ea953fd994468cf6066fa0dd5aced6d737da3be21f0e0bdcf30507ecf29f2865941df8b6a6334dcbd4394cfa0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ca/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ca/firefox-67.0b7.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "70a67de9946280b01d5588d2738b09dc2a7c47dcf0490147624b6bd5c0a814ff9a83b7536d74e48955189a76e2866c21779a4711d3f6c45510c1441b4aae7dd2";
+      sha512 = "497a623b9e39035337ca67bee7d04399f38eadba23ecb9c354ee848c969746655c693c3fbc00ad5e826ea0d5140dd0ac6ace029c35b56fe3cccf79c8612de68c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/cak/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/cak/firefox-67.0b7.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "9a7035f053f90fbb95e38a6212de58a9d3d8e97844dd14e02dda2c0479709eec8d18da959f1df88846e9cb9e1145c7cc63afab57456a95e4ce658ee93906f97e";
+      sha512 = "55ed818b0b3acee7416615ddb606f0695f948fa633b44889e1881acd091ac514a57a8678d8830a91bc7097282a2df30396e3f27a0df225b7fb6de458cc5ff832";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/cs/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/cs/firefox-67.0b7.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "0860057519ebaecdc7e3b1c55990dfa81e18d86adc296bc9401da3954cb0b682573e0973fc12977ffe1b038ccca093a424a012dc18c9b5829c1a7da0b8e6515a";
+      sha512 = "a79c77cf3fad65437e20dc4f086778daac9bd403228ac0efbc1aa5b69216b6aaa91488f5691bd9cb9e27a44b7107342ff3cbe03be73a83a9f449eeb777afcfba";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/cy/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/cy/firefox-67.0b7.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "fa7a8a6c7dbfe4eb9483f44daa3a9b7b9088289d5ec96285223b976ee2302ea35fffa869242840680968154cb76249f9f1eb45ce5552d100ae0aec991383266b";
+      sha512 = "da13683201a46d15bb6f6c4ed871459a83894a8d883a743637a978ed202001dda2bf0812f02c193f178023a1229357b394d69e6e902cf76afb27f4929fc6829b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/da/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/da/firefox-67.0b7.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "f0f53e38090c3221ca8ad70d7b314bb81ca398bfaf9b1e959ed4a3c66a1e140b8a7f7406b0839352d89bc1b78bf873ef1b935946487c617cea860eb997555c44";
+      sha512 = "9694ffc20872aa9e033255a8c5f8c98b4dad2159aa3dc2bd841240b2c462b519831c5d938d3ba7470c738f3c587ed211367ca1f7a00e225a90744ca330d97e15";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/de/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/de/firefox-67.0b7.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "289604681dd8b5bceb5b800b61c7530be2dee1bb0fe3b6e53c447893ac71140092fb230e1ce4204bc39249121bd66d132720bc9e8495b7e6c18c0357e44bb733";
+      sha512 = "0fc81d549c2636d2e58b8f4e9923e6d5d691a64bf2909107735eff9aee6bba0de4d967066fa6937f237939391c86ccca55ae03b8e55513600108bd86ed200899";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/dsb/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/dsb/firefox-67.0b7.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "ad631d282608b69809fd35ce42c84e92c9d548ac64960adcfbbe94ef90c677476c3c58a5368c9b3ae3280c2f9ac8209c41e6ce16fb58f1f06c5bb8c99fd54930";
+      sha512 = "ddff938d5a79e9253c6815846b9951d8b64618d5308d8fde620e21492cc4979bb56d88d716861661a50d01f0f020eb1cd6baeeff83436e584b94f80b3e93eb88";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/el/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/el/firefox-67.0b7.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "da0cd4dfecc6780ba12f77ccb621e4a3e42d1e1d53b96a9abdac70668a5e9f41c97261b83874ad297d536721846f7d93b507d458bd79bcdeb78d37b329f9f7a3";
+      sha512 = "099ea9058e26600be8ea8a82cda49a3a76585cb6078bc221a653cc385022ff7991f8b9e02cb7caf7a6562bcc84c00cd7a69c01678d31fa1dc89f2c2659347de3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/en-CA/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/en-CA/firefox-67.0b7.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "67b7c5c6a0a3e3be3642bc8277891270f9c4778305fad9a8db66578f183987abcd723b0418536010b3e9e49fd8989bea8f5762261d716a38fc347eeb22e0e4b8";
+      sha512 = "6ebb2c19ed3705834a29f64d79fe8d0cd4c8b5e17ee957e30e11f63399c887491e354a641df37743de9d3a9e4b864efe4b6a2481a029ed545f06932a49da26c9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/en-GB/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/en-GB/firefox-67.0b7.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "b4ecf69359d231a695ec520dd8330ad64cc3d943b5f79bae5db15b8424548ba8f251f584839a1b40d8a6163ab9a49976ae738e093975852f6cd5551a09e38220";
+      sha512 = "924da12dcde359bb0576f14b75d2114808f495e98903762a960f508ce939b36f35a02f4858042b9be99305c4f505dc7e4427bbe5258c5315efb91c13e9125e3f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/en-US/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/en-US/firefox-67.0b7.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "c8f1ecfa5c4893af77df2a1fa95d508276eb33cd4f2d8c137190a3c962d02e991b7702e71d84ea7248c6d30525e8c6254c1d854e1b3c62e98d5230684db5958a";
+      sha512 = "d85347fc794383b2c9ce848ec064010e3255cbf471187952d4adaa2f3ae461befd8515b95601a5d7c6c86281c956601408829bb161dbcc6c259686e73eaa7773";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/en-ZA/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/en-ZA/firefox-67.0b7.tar.bz2";
       locale = "en-ZA";
       arch = "linux-x86_64";
-      sha512 = "63001f411e4596814ed381de5c49f3981baf4d3ed5ac230a1b57a3aa84967bf4d4f287fedb029a6c3f9ae2a0fe7c1523370f68077d9a69e1a7cdc9956ef813bd";
+      sha512 = "6c843b8069e7f375d42ffdf7898a1331a9f847676dd0e13f6cec0701ae4ce8c70b415da314889781208d49696af4e291b078bce0d64721010fb269cdbd321bc3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/eo/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/eo/firefox-67.0b7.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "69e64203e63006dd2282c435defa7540f2ca898e5368b3e7ba8da328820d54c4f7d31b7393e181dccf1fac1762b225b0934f01f57c27a55c436e9ebd5b81e6fb";
+      sha512 = "dd6e0d4d343c479cdcdcaba4947994c45618116f6943f0e9b0c2654de6bb1ab849a99679bd2a5a646ea0f6e0bc7b392f67de2766701bf9151c99d59bec5e2ba3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/es-AR/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/es-AR/firefox-67.0b7.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "717cb900acb1c12193d82ebbad209b02cf37295391e4182cb0c8a77f75b3b1ef49b1c75bb2e25c74d3c78d83747a3a96efae2b4b722f59ce527308002ad61624";
+      sha512 = "4defc2bd2a7831081ac70b29915087e94eed6659dcb23e961b7200cc6b89feda2c0442fc969fcfee57c537ad487fce6edebca2ac62f356b3c387e1a7d1790d93";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/es-CL/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/es-CL/firefox-67.0b7.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "34287fb3c29e998674e2358d7c9fd89e27a58d34f56c3836ae2703709e4df27bf61b9b71c6fba790350e11efde7aaf39bc2ac7ac22f54c9a2d4c539dd234a6ff";
+      sha512 = "c0494964c5bf6d0938dbd78d5b801e000fa6c850d95f629a375e8ea69d58fb7bce8cc38d32b456fb8341230b13eb4eb34b31b59e46b32941281a6283e9d52e7c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/es-ES/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/es-ES/firefox-67.0b7.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "ad97a4fa1eef87928957f562739aeb915b718e54b394abc14a1c30e39834f5837d5bdadf13b56748a18aa5f57565010c1b2653c68820972f4d8e11a6807825db";
+      sha512 = "a4a7f4fd7552ef57c3fec732cf48f6d442ce34cdccf6cd01f713b1468522d33d61c3307b6919df4ea38ba4ab2b1a237147586dbe4052e7084f03ae0f71848389";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/es-MX/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/es-MX/firefox-67.0b7.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "637dfd7723a517482b231a2c14101b31a9ce9780478dcaf11233a68e4d04bc59b8fe4bdee1bdbd38e1cfcb44fe75286856aeef12901a67b0cb09b2a1ae0857a2";
+      sha512 = "6de76564a94bd0a61834ca2957ff4e969551d7fe74716d80975c5249f85aeaeb7e0f40d0ed8a5653a237eabaa527de234192b97df1525043148c2eb3246799ba";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/et/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/et/firefox-67.0b7.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "155e384bd34b2546d33da1f14ddf925cd27ffbabda0c67bed22f1c1f5848fdbfcb588b06c422d445806665bde0acda6b7de14a4c4b1fcecd5f2b7aa26a0a51cb";
+      sha512 = "3406361c8358703e6166bfe19cf690a3b03083e043d9215a88ee9cf923f82064217232622da0286b44b0cd3f9b6ce570e73f06b2f8558096d2c0f97089fbc691";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/eu/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/eu/firefox-67.0b7.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "aa85d76255ec15a7e3c428d9e7068c14b6bcd51785f86221b0e84dc757cf645808db5d20c7891fc4397b1368cf7ca372eed41ed5cb7d54f9a2045a512450ff7e";
+      sha512 = "e1e3858a11982c22aa2d592343365db0fdf4acf5ae5d366e9f862d550a0e90e383182d6e20a1e85b5af62746f3750ab97269037973575edc8eb2f7e12e8231da";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/fa/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/fa/firefox-67.0b7.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "7328dd170e9ba00da4371d0b1246b1aa165feae07de5a36e229273d871594434f8ded34a2ad999dc79e3b03a6a91810b0e1f83f32e00c5f8313381a1f520d088";
+      sha512 = "e4171bc5e5bfd699eb0a99fc7f7f3783fbbd8c888d506e7cd76bffd1c053056713729c41990cb6cb4433c1f9f964bf00449e682fa953995a21ba2b41e781ed01";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ff/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ff/firefox-67.0b7.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "4ac68dc528688dcd5ada985c64ff872e11e4af1d0e87b74f23687ec09300633916b83f093cf82f197364dfa34af07a7195816773662e7cfaeea2fdf0ade6aa12";
+      sha512 = "c7dd25f2dd80913eb688ed7eb3e485f3f320e3fedc71bd65ed54b63c48952de065110d084db3e32bb22c9bb315f353280d5a9f396f025464d0b6114f1ce3c4fd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/fi/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/fi/firefox-67.0b7.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "b19014b5ea7b9851351ce3c3dcfad9b7982abee865f08de5d84a8f1b3122346e4ad41c27aa644f7bed2daec6b406d4a24a1b740b21e18efc5acb48786043c948";
+      sha512 = "d8303e66241a4371717ca390a295c16140f6917e8f013e4bcf2e4f21127544ee12989d8e1befe5b907b7bea51ae6b20922b1f68dd645c0677c2c68ce0bc90295";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/fr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/fr/firefox-67.0b7.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "4ad62eae404ce084199b7d91664fabdd2d2599b5583f45381ff2b43ebdc4b4b64023d9df268a8fdcc4240e2448af8e398c3a10fca3af8a7134ede3524a42b08b";
+      sha512 = "a5454f58aa2f5f04e730504d17500d8e5edba8e3f9828d4e9aa07eed872d7f25e8156a337fe384ae523e51a74f86d6e8b306e1184fd8fd8cca71bc6dc5423d06";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/fy-NL/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/fy-NL/firefox-67.0b7.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "f0ef305457177803e9607d297bc92403cbe21ee8c0ff4e5e3f2518ca0c810bea260703f92d1ac0b774c24e1f4cee6860aafc42b4e451aca85b76ea504aec77f0";
+      sha512 = "83bbe2d56ff8a6ba2b2bdc5550c0d0621bc2f938b2977feb23627be0c38b9f43ed1eec4eb96ca875441fce5d5e0a00bb8ae3c5f6630ad93cf3e4683baf2d7090";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ga-IE/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ga-IE/firefox-67.0b7.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "9d64557f167e860b51487829fbb3c5f6e1cc569accf1169ab8f962c67b2a9c14e32e3ca2ffebe8e8653d71a8178aef7056a4b8780a6d5f2c892f946e89cdb0c5";
+      sha512 = "9be4bd1576733024fb7374e9b343c200c6a2ada0961ee12b3217413407564d61749707613b5542c5a20d47ec4c9b505aac86a6587f70213e78df5f77cac3c2e5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/gd/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/gd/firefox-67.0b7.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "7a6761e28ac26e5e057c90d0e70e050f7b1b7ab573e1f14f59ec24aa944a21292fbf79e7ae7ef523a831bde8faf14c6823900aab8f69ac2074ac4ef4dc484847";
+      sha512 = "77ec579a29ae1ff35565311b38a4f09f0bc37aef54d0287a93dbf757ccef8beaa2cfd736a319b73bdfc6f48f942c9e885a8302a70a9a7844955e8147cd9afb4d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/gl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/gl/firefox-67.0b7.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "47d38310cceb0e4048587019a5326af60fd74bad420290a264c231a0982620dac86a44264cc075e12b6bdfcaa9142ed406b75d1a2ee2842515dc6bf2aea65da7";
+      sha512 = "2e047ae403ac4d043b063387c02fd17e47ead72737caaaa93a04b326b500c1e25b4f3a7d6ae2127b628dff86b31e49f0e500b3685bd945fb223598a584116dfc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/gn/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/gn/firefox-67.0b7.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "9f00bb1aaf2d659817226bf2279def1305e6bcc59913939a1ed75513734d08f8d1ffff3477c0237fea248fdaba8dc684e91105e7b1b9f307aa15686a58c22d5a";
+      sha512 = "6372fc7499b7a1ee418d267c73ae05f68e03307a647fa90d5f66e3d3fa80bacbaef78b276446855bf3aa5b7979072c69fcfa5f7a07d91bc56f39493c549c3bfa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/gu-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/gu-IN/firefox-67.0b7.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "bcdda5c4fa8b56996a3d7d3c8fe49a74747292b9105dd4ef3250407185e7dfcfeeac044c92c40632b770c92b6adc6a3baddd69de955550b7d000eac376cb5ece";
+      sha512 = "5bda58c9d0f14ab1484f8821cc7231186ac11eb610f021df398120d38ed4b0bfd7c2c3b8bacad75f2b35e8ee8d34f95cb56e816c4db8f2f79acca5ec76e02a18";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/he/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/he/firefox-67.0b7.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "3c393930310aa008927eb8029a27df38abd94d4efe5dc962c4cc88d608f8de16084441c346bf4a0d0f7a9d58d45acb39106b889211e556b1ae33bef613bf98c0";
+      sha512 = "558b5f326e87df3c668458488a6fc6261cc84915d9bf90451c8a426fb973b048279f1e0d2755e4c9bc081df52351e8b70dabf5a8113e07b9fd7e9bfdcc8914fe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/hi-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/hi-IN/firefox-67.0b7.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "1aef06d19d5df0185159327d50f3da92c911a15ba1a63217638e3502857c1e870bc8d66ea8561f7eede11f2fb88babf46b61f7f4702b409862923db250136045";
+      sha512 = "30abd8a9ab1c410f3293c4d70895b98cd0921d95ef8b986f30ffdc0cc273d7b10dd038ffae2658ae209f8625ee4493b467e4cc4b737fbc4a1a1f8ff5341843a4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/hr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/hr/firefox-67.0b7.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "ad916962a974f350121c8a1fe10e60909f3631198ca345bf1b3481a4271fe113fab39d163446ed2f7cacf2fe80e24ce0d21dd65904310e6b4419742104786b4a";
+      sha512 = "052277cdecbda15e260ad9cfbc9ce4e4efaf0391f301cc4870ccdb37320a9829284c41cdf09f908aac13fd745437d8b08bc4d5665aadb72e9af8cd648514271e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/hsb/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/hsb/firefox-67.0b7.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "d5ee859dbc8fd5414bf8e33ec5ec0231f7c5136b3d94c41ed5064ee43aff4bd4b0264181c45f5c2435a908f85e81563a93956cba351f845d598bc218123a54ad";
+      sha512 = "d3641686918b38a41eeb3d20d583f4d2a7ae31e40a3c5dcb74acb268eeb5d6a37eee86fe7262277649ebb406d2ff7ed35e20fc8e261a0f7ec230f08b8440f629";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/hu/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/hu/firefox-67.0b7.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "d0fa06ff806cf1ece5d0fd53a882c276c7aa17671b4f03cbc46ceaed9f2ce8ee810116d34a2e5671f0cf0009ffa3f720472a9e74c23f51ec5df4380b1ac0ade3";
+      sha512 = "6b986fbbe8722aa8fe50e0f5bad42d75d7ea11bfec33ff3cae417bb98bda64994e6f7ddadf2e7645d8d2b313908221f68cb1be91957b2542f35355750b408e81";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/hy-AM/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/hy-AM/firefox-67.0b7.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "ce7765e5bfb9a0e3f28b91a6f034027a3b66974bfc25e30e9a78c77778ca5e64f3da4e461bb1746350a870a11c81cc144d9b8b8254fa8abfb134429db7676f1f";
+      sha512 = "4f49a55aa4a3f84c3d4d0d21cb59b42d27530baf8df8697b7baf2b3e2bcbd07a80f94ba462d63caab57ffdbcc2bceec6598778e942be353953de28c912ffced5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ia/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ia/firefox-67.0b7.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "9063edfd6bbb8b8b511d757bdff3f16b6533a3112cb5880d5bbb78b026007069c976b4c6b4deba8ee1e6d5b8addc0a0cac5ff8ee0e341cfef2631d4654e1fd07";
+      sha512 = "66cd918c709013c519210cfd7d9e0e7f4f8124de1c39b0f101076d8e75e30e593efa0401c145dcf1591ef86ee78713b83fa32429c9ea3fe2c4190a0ee88bff73";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/id/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/id/firefox-67.0b7.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "7581c34d656ada027adabb6be533c3c820220ffa5636b6e703cbc8b90869982140f034a4032d9d65637b82b04819192e2b082866a1d1d8fcca650fa52a270b7b";
+      sha512 = "93dac59182acde7c59e9e3c762a4e981652cda78e042849cd3bf5e5d7de4a3f435350c633384b0908ca53210d33974e19dd36d22977094914828f1bb8327b6d3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/is/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/is/firefox-67.0b7.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "1376d4256f025361afbf4578a9ac71ef231125ab10a7ca990841354d257187bde8f057a715f9b01c439e80c08e0576171190fa45c00c0365cc134ecd2786907d";
+      sha512 = "a1020a3f594bb43050120df62faf3fab7c03619b5432f4027eec368fb559f692b9eb25d4eb2f953617db5414a1ad24c7409c963950d03dd1df4d084b66764248";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/it/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/it/firefox-67.0b7.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "35fdd5845bd34fefdcfa186d212a2bea03e7fea16c457faba70ca70a7ae6ee0210d221671c91f123b09be0694feb59f3d006a435af0d1ec2b2f5c090d99c8f0b";
+      sha512 = "ccfeaead66f61caf73b7c37ced5c7dabe688e1b5994386ee44d740b9e1fde2956b697f638ee7eedb5761bf35a94d82530543f1588b88720e5c07c3d6e10f82bc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ja/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ja/firefox-67.0b7.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "de3ba04d2509f2f2e08df218304bb661ab34dfb50e17f04d7782bc4f70dc2c8b3003476f6e886a94370796ab8bfb336509e719b5ec89adf7f00c4d43c08573a6";
+      sha512 = "e3048bcc92ce62fd5622cdfa96b75abdb35bbbc8e17411bcd7c1d8cf64de9e073989fe2b6f86bb1f56c4c6b398479f1f946a1cdcb563be9cdf1aae63e36e153a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ka/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ka/firefox-67.0b7.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "c8e57390daf39013ceab5e7d23dcd92337979ea72ee8a0d5c9353baeaec4483464406347e04b030a268a6029597a3a086352621fa049fb663690565e59b81ebe";
+      sha512 = "20a66af34848ebcfb266fe5dd8c7a8d663aa8aef543988a5b06e33e4ca8cd9636dac8cc8dd219471e49bb596013d42664fcef4c4e2588e36c4e40ebcba947fdc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/kab/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/kab/firefox-67.0b7.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "55c2a67360bd26397fd06a5ec310e954d41b4aff44dbdbc72f58195e41d590b3500000a7d58ab8cd2e3cc086ade45a57172a47dba226607005bfa1853bf4ed0d";
+      sha512 = "619787bcc7b1a0ca6daccf6e5a555be342c09d7fb6f55c2fea3ca340a1852faab87bfb2af9f6828dd51fb94cc3a799d577f5b0b3561b7039e8fc177ae1bb8df4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/kk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/kk/firefox-67.0b7.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "64e6c297802516e90bbbe258a57b5b942ce866da33d99bd8fcaf4c96755cc9140bbcecf6de2cb8d355721b2bbde4a3c525f55ffc5550aca5289d13a88c8a5899";
+      sha512 = "74478792242cb29304c37c7aafcb17783da6c7d7ae75e4307f20640104bb4a9e232c709082d30747a66c4bda87fac4020f9672c99b6858b9b08765f9253b4b73";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/km/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/km/firefox-67.0b7.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "974f57f62f18a02077aba767c3c79930d1bae1188b9592a61ddd611a518fb7809e24f33dd81fa1c9a8710659716cbb3da4eda36c62709cc151c9736ca066d886";
+      sha512 = "8c62ada471c71c98344ba08e83593e78c6de6a4f95016fe48e444bb4bb36c727475268ad58adda8212f37229cc1f785df78f3b843e8b55905c661bfdb2a3f334";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/kn/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/kn/firefox-67.0b7.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "021a9a71aa4827a3dc2d83aa952db6de963cd274eb59ff4a6ea9833b8ebe0098e9a0f53dd40662e5053bf8dd73224e3b51b375b5459602b3bda6d5a65d7c4239";
+      sha512 = "77f8b91894a9c94672f71375bc83692a40771beacffa66ae76624cac2633138280e9a0ca5bd1f9b91373a7c31e26ff7fcc1eb0cd148c8b881890ee374a9dbb67";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ko/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ko/firefox-67.0b7.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "a4c8c66e44f24cb2708a7f7303068acb2b88a79fb7f80f829f400ad3baeda5a9d22d9b2763f1913595ceab9d4cdb454637e4a377b1e6c739bccc0049bbb3404e";
+      sha512 = "ba8129e14fedc719ee60dc382dccec57f6d6bbf010da46d7853d99cf60b2f8cb8f685f2551e8e32e052745de4cdef214f3fce1fad5ecc73e4eb81253f4ae72e9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/lij/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/lij/firefox-67.0b7.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "df21a7f5ba15c559f48261fc7c8a9bdd003d6d2f4499f236f2bb4a742f60316a4f4aa530b42ca127f63de65edb44396630b107ea7375be83b3e79ce83685e918";
+      sha512 = "c8f093d027bc7ad7b5cc92b4a756ff0fa216607a27e6bff28545d140a8d4730cdb32c4e222ef0998ce3ca3a20c2a11c83d66a88858fc9614dcb65b77926ab89a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/lt/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/lt/firefox-67.0b7.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "e7460524641f4754b37e28c0d6c21ee1336c3774a4a0adb9d22ee7cdfd54077e932f4d8271872e55a1254f8a383e73f6e65a8349035adc13aee055b5b6056505";
+      sha512 = "51088c7053b8f0654202b508442f808c0d66498aa80f7bbaa92b4084115ef71f250afdbad1e5957e1c5798ec164f5d86c0d61e7a99dbfd2a1cf2df17f3ad3da9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/lv/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/lv/firefox-67.0b7.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "4dcf1502fc75c0221432be889103530572321c1cdffad7aeacf43c9202d279f2f745e8eb69dda84a897f49f28cb6e8950f23c2da9517c99ef6cd5cbc6c3b4590";
+      sha512 = "7fce010fcade668aeda3a322376e3753f1bffb853559a76c573babd2cd553e032fccc0cc9a71ddb437b8aed87560ff1bdf3458e39d2d81bdc8bc916e8716e9fe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/mai/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/mai/firefox-67.0b7.tar.bz2";
       locale = "mai";
       arch = "linux-x86_64";
-      sha512 = "59057f3c6a4c3d615702902fb33c4093786ea427de4584e3984da15fcc0698cc59d5277a458da808efd8052b048c456a96f7a0dcb2509e0de39e3f7bcf792ae7";
+      sha512 = "8b641a43ec2633ee07c065e33681f81dc36805b13f3221485d1fc4bdb1ffeee4df79d378d1f50720943679030662f89dae42e005a01ab9281aed090c994b0cc8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/mk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/mk/firefox-67.0b7.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "2268b3451c4f24189beaf9877b293e0fbc597d1ef3565078fa9981319b6d582a174409bb2b72e5e465af99796775785d3a6e224a84cfe9c7071412c457c62599";
+      sha512 = "2fa98f6d1f35419ae526f062f6742be138daa4715f501d49b5ee2bb7ef63edacee8283245fc2ab81d484b0625a39e58fccc2aa9e255f56f980d37bde86fa57ed";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ml/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ml/firefox-67.0b7.tar.bz2";
       locale = "ml";
       arch = "linux-x86_64";
-      sha512 = "33c68a4067a850aaf045b6fd7d68e705e79db4729bfb34e480d104b70b8477f324210b048be1b77ca838f07c26c4c2d313f0fc0163996e6d74a1396c9c30b5f4";
+      sha512 = "cdda564dce2c6178f33fb79f26d007fb96b544de3c4d0b5fc67d689cdea1c5b99dceb91f3ab9922c00c725ca8b15eb555c7ec7c661981a2159f7ac1af78474d8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/mr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/mr/firefox-67.0b7.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "2df80867c2c3c5a96dca0ce251ed1e8f43a5b9a7346abff062908a202fdcf5d324101c0d533230d9e8cb4fea0ea9513b231a2b70b0a5394044a1b951191144ba";
+      sha512 = "264be2bd1a0e73a84485419bf80fe04b3ebfe60de588ae6b2b7130ef5867139f285fee577d8bd50b5b161a040ab7d90d3cfc37dc26cd5461d412c667302128b7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ms/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ms/firefox-67.0b7.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "01ce0e34c613db9993617a27a94495dcd79766ba6490cbc234db5f65a582551d490580d223ed560c6b6e41994cd8245192782a7525f43c64cea6a046d64ef6a2";
+      sha512 = "b33d82fdb3c566060553986d796f5e3d405d748029efc814af8c412328522d52c5cfbcc52071c75db6453bc4097d7fad8c40ac897822ba7f3b1237c14735e81c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/my/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/my/firefox-67.0b7.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "d0363a51c6980fe0da29ba80675625becc1b0f8ca31f6435a9555336fb09777cbc97bd8028a1f0db8021c193f890c9ef6839380be45551fb94527cb44bf18288";
+      sha512 = "696a6e013b998b7525b06d6247ebcf658276eb23fbf82a6beed6264a8ed754df367242ad6b70e36e76f84c86116b8186819ece9c4db8964a531f225e84ccc9fc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/nb-NO/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/nb-NO/firefox-67.0b7.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "654ae72206d1da43e51b5694499534d1bbe207f45cd5d95d59d12ee1561b03274fa41fc86ce33d8b72e65216a4aea8a0d782c9d0bd54958f9ce010b72dd436ce";
+      sha512 = "7871bb5bb005d8cda4bc8f37029fee266b303335791fef063dacd5b6146631ba50f7396ef7f2874bb90d21c738fe88f8ea470636e229914888a2d9b3f87af228";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ne-NP/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ne-NP/firefox-67.0b7.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "838721a064e26b82cbdcdfeec73dc69716f3c738222e7c4db3b35115d625119f3a7e989dd674e33e714f4031b041cc8d37cffce2a97227072fe2655e95ad5b63";
+      sha512 = "79b2f7d885b2e06a6a3b66cff07c2f5004494e54fb251631ccf774bc95bd1e006e77f0ebace97401a4137742b3f6664abe8e63ef31b3221ce70ef81a91544d93";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/nl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/nl/firefox-67.0b7.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "b8a162f90b2e55cab4eb0d6273d9bc8c2ab5169a55b494e9cba2e691f02de9f92d43b8408104db418955cafebfdb96abed79c749d353db48ef9f35cc9ebd92bc";
+      sha512 = "cb889ade72f02ed026d5363c4ce3858856c2c472b9116f89add41fcc54086deef0c95e16c5cb4dd984534e18167a48330738a2701beb07ab7a316e58fe9e71c7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/nn-NO/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/nn-NO/firefox-67.0b7.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "162f5283bd3da23f7b91429feba5f56c567f8561304c4eeec720f4ad19990b9d9b1bd7002ac3231469d1b0ac0b31f591e6ba4cff89a6d809dd21eafb3a05b97d";
+      sha512 = "1969741dda5c2637f6b11eb0d15c3b49b425f440dc37a688d33292b1f4e5742de45c22df0f1097265e0b68b1769405a25f3338519e14284749dac1aedfb455ef";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/oc/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/oc/firefox-67.0b7.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "874802ef73bd58d451279b29621d7936dda1482a0d1ef32be52c2a5c03ef55a8158f85d5b501910a7bacee72389db48352cf783b014850952c554176d4bdac85";
+      sha512 = "ffe7886c6a79dfc496e9a60ccb939b9d3641152ec93036a13eb1e3939d1e497a030b4c0332868673b81fcaf7a1a84ce52ed7f2aa656aff9bcc18fc00bceeeee2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/or/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/or/firefox-67.0b7.tar.bz2";
       locale = "or";
       arch = "linux-x86_64";
-      sha512 = "1368e404e6fb0a899d75353f5426870ec4aa8fcbbec9044b15944fc935eb19ed87779f4d382a0947f08ecb10b54053efadbb4f0a0daa0c4ae942a71e6683ec03";
+      sha512 = "227875a863199d30d1a64432249cc9c2692edabec3bf04fccb747f10ba3e4874e1fe8d3ff7164c2d58ae4d49071672082a82b554aaa9da18f0e491dbf7886bf2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/pa-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/pa-IN/firefox-67.0b7.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "3127de639d7cc1d406a2fa0cd689c75d76cde69c7703067c7d1bd7ccf49d593b45c022ed54ab3d5cc1134089b759f2e11ccd5061468f56a6eb0a87f6a36d5fd6";
+      sha512 = "127685a93f4ca5c073c480ba2f3ff84d5d5a063671e325feb8620255978121aaf391c4ab759a3ea013847d9e416420bb3a7ef74cd4087f6ff3a6bb16a97e219d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/pl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/pl/firefox-67.0b7.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "1a2d2eaadd3cf85ce75405cd7d43708498234368bd22118b6bb93f5dceb0166ca56acb6e65963b01407832dd8c67deee7bb297e76d7dbf820826be9c7ebcb475";
+      sha512 = "f8166b5258ef763c91cbe5b917b12405d57dec0d905a35acf534ce6554fb43f08e8c86ee9db012464a11ffd76688c5b0c2b4343367ebf071d1e68aa3ce147891";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/pt-BR/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/pt-BR/firefox-67.0b7.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "6db512be623dfd52855f016782fa7d46794ced20d99a972fa6c6bf65f044425f54ee4f74aae153a6bf8fde7577d1e68a282678c88e3fba9fb9def986fb65a37e";
+      sha512 = "ba05cebc862fff1764a8cb2a2d3fcdf542c42e5ed453df7605733750318b8257754a20e9a3aef12e8740d647e7aaf7451e6507beb30abc6b87714d8307c0b777";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/pt-PT/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/pt-PT/firefox-67.0b7.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "8e4125affc4ef4ced3f00260771a2c13056a7e61e491c6dd872557b911bbf95854df26c2fc1dff7eb0acfb8a08586d53419294f59d093f1a6c66950acc2e2999";
+      sha512 = "7d76b136ede93cdc4d06a9afc645ca74f06eb56d63be7914a696e6f9d1282eb9da5be72535e46a48007115d37334d5bc3a5b4ac954c486a5af8cf94e9bfe1352";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/rm/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/rm/firefox-67.0b7.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "0c065424ca45a4ab705ec4e4a34f62c0c7907d36d8d8ece0a3c83e4a1de2dd3b953e8732c848e50474ffd409b708ccd6860fea20261ac8aea54d001aa614f0f3";
+      sha512 = "83ea66dfa3c4674c7f58d18125ff0886d4526740c6c697ff049eb4953179904b868065a053c15ff72308c822513dc523e4706fbd0bfde30eda7fa6802c9f9be9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ro/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ro/firefox-67.0b7.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "a7c9e889410b608976bc874f40cfe0a1725ba2aaab6f77d7d81cf37ace1179095e35ecbf322f2effd935fb555fdd673a6424e9f808dd5d86171ad810df7ea166";
+      sha512 = "c00bb8c7e6d1c39d5ceb7d33f967eb1d63f28baca1da07190f4b422049c1f3a4d7162abbbce99d9f5b353e3e04b856e919d438ebaea4be664ce74e92cd0c58fb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ru/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ru/firefox-67.0b7.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "d082810232a8988b902fe171653fc734e96c4ad996f58f1a9d0e0537e84475c1fd0d3dd481fe95a36b8dee2ddf43692394cf56eb0c00db1513f4db4829a96946";
+      sha512 = "c8d26a7ebe38cf9b9d7d3d212100bae71f33db180ed864d342f2446998b0362a7626b704792e76ebabb70f00fb204629585fd30125fff257087dd81e7ac34312";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/si/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/si/firefox-67.0b7.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "11cc83d5f72c813878a4556079c5e0faf2f870cd1447b580c79ff5c6204e9d07720527ee26a897e7013b3f3b6abea080d2a33ba45f83adb9b10f33099c1a24e1";
+      sha512 = "f0cff6dce739353091fc49d20a38c7c8d911e4870aa56688b67a81315d7e2c7802affd333604f2b6bce3d3422e915f74b66e92ab6c3a9bfda91fa06d6dc9fd7f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/sk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/sk/firefox-67.0b7.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "f5195f375b0b48f7d97b46717692719a263fe56bb57bff329f2030a862d97c85f8346584ac052e0d5ff9c84dd693761ccdfa1be9c77d71f20716465800b5c8a1";
+      sha512 = "ad6039a84f9951a96df13a4fb1210d068d8e9d83aaaaaf4ce5af70641273be598c42be5d7dc04de3ceff19bb821ee0c2e6799aa81fc77b093decbd2342f91afd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/sl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/sl/firefox-67.0b7.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "2ad38cce1cd391a5bcfee2e5ad09abc685953845f9db40ed312f5d9041af1cb9aaaedae11e83c7c194697c148b4849001751325190a9eaa71086c63542985967";
+      sha512 = "243dd384fc56462e0b9b03ee1e9d128a207482d58c4b86fa5f5cecf103e2f5ee97c6b211f073c57946594a5528182ba2495cf21791272a2cc66ece7059954492";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/son/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/son/firefox-67.0b7.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "52e667bd300f14264c88e6f8233d927b75f40851c1ec3df6372763354e8c16b058b3a81b36543dcca957a381ad9e9d18c3c5c61eee6d3756f1dc81795d6186a7";
+      sha512 = "bc929d4d699b382f7452daec9028b2fa25668621a6001a0ab5cc668c582996f6f490ab399d068b3cbda679ca10d416cd6b73ae08352f30e6f8a10586ee4a3433";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/sq/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/sq/firefox-67.0b7.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "f5957a9b2642e43eaf5760cbf61420955cb000f5e68df11338ea302832b0283e37da81dd82c80097ae320ab5f682d7d73efb3d6f7a8155c6343cbcf1e58db04b";
+      sha512 = "b9700033307e7aabcb54fb198af0119d576de3bcb774338d2cbea8e88c53f8b7031395bc72d5713d5b4268fa5adddd9c00bb010e816064c98371cf0a65d7f9c0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/sr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/sr/firefox-67.0b7.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "1c407abffe0e3b403bcf2fddfcf82033fb0189149442a3f627fc92672c4a9fca48e6047d0f63e8c7c22afa62fdedce1cbde76ce5983f95f8dd48a1455d85baec";
+      sha512 = "543df36ac28a266f45f75889227534145803f65b3701d134fb62e507743320fe8f56b078d4f42d193b65b51a06d00f2bb6c9de9599bb66572f0e014d6dbd8b56";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/sv-SE/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/sv-SE/firefox-67.0b7.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "7fa984889a9ae450a7338a9b32f4c2001d2c9de67ec6650a443c499b5bacd35f2ae9aaa9ced7ecd17205d95417f11e85380689d9d9bc811f1e3549052b2d933f";
+      sha512 = "cac64975be8c887b065bba9fe127d25d298893947a8ee957a75ba316ea8695001c498d7e942949f25b3323c7519c163c275710d635b173a75d8dff3ea38879f2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ta/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ta/firefox-67.0b7.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "af4dfd7664be7b70c6833f96ae84565d4bb6d1b2ed3e405ca7a0b41765bad50e183a847b1c7b860b5216085ed651e0d568984595b2734a32f2ef95409ee3e45d";
+      sha512 = "f7e744a20394315e5d5eca04b152546db49546ba8b13e6b99f61f248ed762c207ded2747e89ba73e84b63330d42b006f5c200417ac931f1c46694784eec8d76b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/te/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/te/firefox-67.0b7.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "71a0ab73df2eae31252d80da67c6ac2de372d52a1fc719a79c3d9d8e22dfac3e1f92abe7cc811159a1578f4688ab2030dfb25ec4649357e73ff155f3ac10ce85";
+      sha512 = "1f6580c3744c3aa87e5c0b82d84d97081a6de8db07f6cfb458187f332d7d509a9a3177c51644ccd7a093ead843c92ec371b2e3b01602d7c751415c5b8d8711dc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/th/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/th/firefox-67.0b7.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "a0c4cfb9214ac387f4231e9dbd7dc9c24bf47c87b05f47eb44530474e09d85e4372cd0a3d7493905d1a2f316eed444adbe096d345956bdefdee0aef096a1a065";
+      sha512 = "653b3aa5d1e62c1ff8d131d657474527da4711203c45a85e219f85107456d528e6fdba7124c5c303858c8274d585fb555883a5edd60aac58f4504ab69e906f7b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/tr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/tr/firefox-67.0b7.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "fd93cc618576898ed99eb40671d563b34ca3423bc541c6336f39553569229f9aa9f28c4a402a4af1459e07ba83b78924b8d5b7bebb630148cdb23dafdb91adf0";
+      sha512 = "6b797effabdfe357eb35efbd3631260032d732a7dbc8ebe2963e8e27b2c5db07f55e0e23738eed4f14479b5a0e26abc549843a11cec41297ffc78c2baffacd1e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/uk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/uk/firefox-67.0b7.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "428b095abd6f2fc78e2141430866e5e1735e1e1b01e92b1c9dd8bd7d69a1350a537e5aae6655a83a7885f758df17f5a9e383a6dfb21eff1ebced24b912f40aeb";
+      sha512 = "e8d0c9271d81cb416e3ddc78e6cdfcb326cdf42baab0beeb938ebc94b469b1071e66497d1f30693b7b90b03dcfa3e0e9826c93c37559cf417303108f540f0b2c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/ur/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/ur/firefox-67.0b7.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "4e9f6f9e8b1116a29fa97209c48ef537ed2b6a1b8c3652f612dc6b43808d581a11ffed7ce403d1ed282f60d3fecc261d97fd01f36423bf28b5871c6a9af51d8d";
+      sha512 = "4a19ce739f4c3afef097123ffb8491ed3f433a661ea06c908c9ccd4f2e06af1e6a599ce4fcb58ed02876bd45ae00c23f8ea3fb28786cb6456b1d2399b6acc70b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/uz/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/uz/firefox-67.0b7.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "3721de62582e7c4f74bdcdc62b893566d76fe9518932a5a710efeba9f468bf90dbf1a13b8bc24d087144be1cff07be800de5c45f6cb9127e72c1fac316d79e6d";
+      sha512 = "b768bb27409f056818543ff0491f50fd954ccb22a2a17a2eaddcd5f4a5295c0c6d510050659283e70bdfdbcfe145776624111f4ae17c4b28a95b12f98fc31665";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/vi/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/vi/firefox-67.0b7.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "78613cb653c8bb1f2f97079eb68b9db265880d4df560f89774807bc2e0e2b57de9c7cda25bf527e167c4dc629432bedae1d4ca77e3898276d8eebe40220d30a1";
+      sha512 = "664e3ca40e13489fc66824639616a605f0a5227ddf4f1f9191204e95a323a64ba9ba1e025787ac669c6eb11ed61c3a70eac686f8a36aedadbd4a8199dcf5380d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/xh/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/xh/firefox-67.0b7.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "a6227fadbab4e7054da87b6aeb178df10ed869c9b3661fc5064c16c95d184e50191f10c30981b762762d0e875bc011afbd5a48859bfe83a78359dff432e97d0c";
+      sha512 = "06e70c70539d568814f1bbbe76932d19baa02b4e449566a2c9cda8c67d24305debe01e98b95d8dfa8fee47d1f93dbf4d875dfee0bb20f006a18b2c4689312875";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/zh-CN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/zh-CN/firefox-67.0b7.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "869573cee66047a7d929e3caaaf5d8a5bbdf3c59f6427741f563f765b9552ea6a48795ed4b6cb22b138c0665df2cc66f1aa57a41448db9589e8f8b5b32e75c19";
+      sha512 = "e167ae10b29a0313ffe6e2c0f9e832b11a4563a0a848d8ce3f3d74d99d0b6060b3d947e8f7779ca9ce93418bb59cc84dddf0183baa295e83a59789e029be7d24";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-x86_64/zh-TW/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-x86_64/zh-TW/firefox-67.0b7.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "b724921603065ce5d104d6f79b76f2c7435d4494c7b3bcd3e296700adfeba8acfa1866ba17bd345b77249a1323f2d1efe853947281815353f0e70823b9c71fbc";
+      sha512 = "e1213d631b1e7f061829860e468ee57b0188cd5b33cf64c0c3a60ea0ecf2efe041ea0081008883aa15f5a204c78d0e764b84bc76e2f43c85d6710fbc87162dc6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ach/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ach/firefox-67.0b7.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "1de7e30cd429e527a18e5360d676ad246852b88af7efa55d5a63726a54a6ef18e6cbc3b8460ae9cc7a9bdd49a0e9b8bbdb1b169178f9eeb19c2fb053656a8206";
+      sha512 = "cc6670bf09ab557ee746e750718871082cd3a2e1bd29d01612edd2e1cf5efcd2314fd806c78f3caf4c22407f8b89dbab014349570e40e20a5707559284fe2b5c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/af/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/af/firefox-67.0b7.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "0614fe8d2dcaaf65e90735af05ed7f7de05ed8db643dcb2c6e90521a471deb90fff28fb4945169172bb69c38d8ad3ba83f062e239856eee69c3846d54d384f20";
+      sha512 = "af7c92690c6b6c4f060fa0fb6e07a079e30cfd9cec8776ba10e7486eb58f5beddcb80fee5eca56ca683c1f600f55d49792a0a6251a15d37bb9e032aa7af1fb96";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/an/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/an/firefox-67.0b7.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "e4504eb558d528750f6fb85c0b5f0b1f5cfb2d7b5fcdeff9279841a3745066e9f4bc36e40ddb61d6762bbdabc152f3b3169055f6acb6249b8eff9251b834770b";
+      sha512 = "941f9395026952442df31e69f3c343e27f5b9cabf8bbffb440f0bd9467559f3a725ec7419533191fded2e166f18b140a9eb36fa65fac588f71f8c0e533e2efcf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ar/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ar/firefox-67.0b7.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "c29f8c79ab9b912e4289771604c941897e97ec120d894a5cf1dbd87adeb75bb506de237a4fd5f3946a27d99b17b61b86a99855bf769a95fed94bd7a95368b0ff";
+      sha512 = "613c2736af5a0ab9f9033a50353286538578c1414f908832e20df51f07e308fbbd5dd6705f60bbe39fe7d945542d0b76d902517b7b56f99bdc28e58f50f7bdfc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/as/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/as/firefox-67.0b7.tar.bz2";
       locale = "as";
       arch = "linux-i686";
-      sha512 = "3ba288c8f7c7a65c28b01c7fd03887236cb8fe7b1cc894acff6aab4482b5aa8253afe44005078313efbb6d6a59bb0570bb1545cec7b276d0ea49b8c6a6789ea7";
+      sha512 = "04adae89682be2eb9a6f93e65878a80916c572e24b0fc53ac0896272878cce0e8d1395257410cb088d5a20129c76479aaa6387d6f502e7253c16fa765624fcc6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ast/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ast/firefox-67.0b7.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "02196e4e52b5a4f19ff7e64d43303c5b93bb15e3112cbac246fbf1a858433eb3fbee27f5811a8704efb3b22b14ea148334e1a83b8ee6e9421ffb98ae7a3755b6";
+      sha512 = "b169f44b0e7f6361d1181fa6124218949839d43c6b110803b09bbe38a82276f96954e36eb0d8f90d528746f7916b260ed0b0bde45b7c1b372875bc95887b4f13";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/az/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/az/firefox-67.0b7.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "9a9e0f0ba619c1595485e02c39e04be98f06aad5ff377c92db20df4f747269fb5c02b97a6634b792bcaddfdfd8fde775476de74208979983f28add00ea610fb7";
+      sha512 = "1e4b74ed6102b7ba8e8e6f40f3de36788a9654e98b9f56cc0d5a84a83d67909a85c29d93f941cab572687186dec43bda24ee37d46c008b8d21d6760c658184f7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/be/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/be/firefox-67.0b7.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "e83484d9f5c9e7e67bf57addb3228cc6263bcc7c9169f23600e8bf2d3b66055398932b476e5e08f9e7def3dbd5d5635a04a02beef3e7a2f3c48da3463c3509bd";
+      sha512 = "cb6a52927341c5c10bc34126ffcfd40e60201254c18d0a05212c5202eb0e44e31fa19826f635f75280ad310a6a61a0a7c764e4bb84dcc7ff31ffb534797875c8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/bg/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/bg/firefox-67.0b7.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "9b0dd085c86a4b599b8acc8e4360acc02863de24f38e44741b468c632a96afc1216834ebfe2d63f9660b9eac7c3c07afc6be541f7d9b73278be3740eecaac88d";
+      sha512 = "4c7a5083a7b656182fce99238f52c8f197d108d33b40cfdf97ffe477963547a08b8bcc295464adf8ffc40df2f4b5feaa28d25ad294a4a9e7fc0759fb2ab9db7c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/bn-BD/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/bn-BD/firefox-67.0b7.tar.bz2";
       locale = "bn-BD";
       arch = "linux-i686";
-      sha512 = "8a2acb357c740ec58ae405b1420b96703f5882e998edfc463177734a60b2bc291191ba66a21ff1ef43038fea7c9bda3ab6cb81d99ef2a7ae3c5e2bf7c8a6106a";
+      sha512 = "5626d60a4369b7ba31c2c860c5eb050af60724ece57cd4a1d5b9483660787fb11ec76ba8e4bef78de42850dfd90a44fe36d43f48a738ff271f2fd35a295680ef";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/bn-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/bn-IN/firefox-67.0b7.tar.bz2";
       locale = "bn-IN";
       arch = "linux-i686";
-      sha512 = "4d8b9b1b7fea4fcfdbe6be3867d2ff450cd9da8aa68f1a0968c099ac83ed1eaae985d65cc1bc49f72df4246b999c185a6bd80bfd003bda32306de555c285c042";
+      sha512 = "d0dcbece3d24ff4c56a7df33414f7795a7fb7b991e26c552340e969349e0b5a3519e95c8465f4ff5dc5a7b9a11dd13b7e730b43130e34afca766912cf6a4a36a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/br/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/br/firefox-67.0b7.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "576129e42365a45559cedde4f903160b940bd395803444f4e4ae8ea9f330690f7fdeb26a124e2289ab767a5d482fbb0d7589b2381228b0568013298c39a47c53";
+      sha512 = "d8d424953af0c782e7c4b17bec49a9dd663d8a0da92cadc8010344c079f81b120573ff64cedbaccb4eb85826e6d7feec12b7e2bc5ec3b508997729fba13c18ac";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/bs/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/bs/firefox-67.0b7.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "025d5556e57388204bf664bdcf02b0c4ac0d261076ee0b8f7508c60e11f5f3db5b6b286be02dba3ff300b97f91fbbc757523930b2f2af074cf0e93221662ef05";
+      sha512 = "4da5029faf08b6fdeeb1eac89ebe49f59748c06e77a1ef13d503eb71e33b5362c74474a35f7a907f528dc0f59b78f989df45d8c35e83e6ef971c425fbdb3a0a0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ca/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ca/firefox-67.0b7.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "c79a135fbeedd25194afc7bc26d507441ebc569bf5242c9642b0846eb64ed067f4d6120d36c41eee1c09879e0ef349670240c55b1ae16367eb302a827e9871c8";
+      sha512 = "f990b67201656b18109c6827853bf064d7726fbccde19e5058c7860b2e4b993eccf1925d2a77d4b1c4ef4c3b3fa4f2368c49ee0e67da0405b762ad39edd91f94";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/cak/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/cak/firefox-67.0b7.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "c81e0116ae56f946315c924cd08fedbef94ae6f808cddaddfd8deb0fb02f1d03639492aeee0f14ae7e5e35face7463d267d518ad743101fcc9cbc09073e66526";
+      sha512 = "f0e6446b82a011513a603e903b910838686db5b771215deb5620c476f51cc27e2f7ec115f876cd710a1255e4edc1bf888afd9f1b370bc8fd5d4a40c3fe99cf3c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/cs/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/cs/firefox-67.0b7.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "e98f38c27df71ebfe98ee4bf7c2f83b3dad59c32f18f5988b33b3ba634745967e0f6bd87cdd686c34aedcb2ed82903bdc7d39aa6dfd4d57b75d6f0220ce72ed5";
+      sha512 = "9a0246263397595b5aaf23b0d73921cd25d57db315717bde934b67aea0ff917869948efdaa25465185f8352ad9e7b1e8f784cbd3d79c04c0f5ab9d34428ceb77";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/cy/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/cy/firefox-67.0b7.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "0dc65fa91f0e6dc20d521d604e78502e468729a072ba30362bd45749f6b58617c474f420148461cb420676a7f474a2dbcd63782250d497eeb3226b0ecfe62907";
+      sha512 = "34f72078d377157739b407f685e9c6835539c9e2f535bb52e12141c94b993ac1e389b251f316bc1a3a6d5682c7de9f2484b18e48cc6c39a18add56eff17df0c2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/da/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/da/firefox-67.0b7.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "72323391c6d05186d70e441f6ddc6a703d168111181c65b3896fba2548eb9abb0ab7fbf03cd179664037781cdd82a238786c6b00ca1fbacc6c8144f739cda56e";
+      sha512 = "5743b79c209e89dbc9c902dd7609581577765719d1e0148373f85ebcfd3b5a2f225c758033583455353af22314651a7ddbd447b65de7c637b4ccf5eef4401a65";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/de/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/de/firefox-67.0b7.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "859330bcfe7b4cc7db395f44f8c1f415235619f1dac51e3037eeb12fd3625a733b470ab87da019a1b95d6f53c3b48a015d38ce1c749116417a21f3cd81f0ba47";
+      sha512 = "4f22bf0fa90f9fb4156815fb9cbe0e8380b7b36347f548e34709a38c2b02beb324645f0084148c2b054e2610d8ea0029e68db174cbfff95531d8f339c153bd7a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/dsb/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/dsb/firefox-67.0b7.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "91d4b0f70b9bed51764ad02328f2bf9c29a3686b4ff32b45cb46b7e1717adc665ebb1c4c0a1a5ca0714c95700eadff7f8118d7688a14784d22259d471f11ac77";
+      sha512 = "3cbf358e86490dc3c466fdf69a9bb6bb2bbbf56059a81bc2e1d551998ec07c319d7e9d467bad61e6e73f06fe2235254fbe7b2690c9f8c426d4e332851ae18f56";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/el/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/el/firefox-67.0b7.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "47383cbab6b8900f450f84bcb38e15d0948be0941bd7aaa28ed91e3cb4453735ce293f818f38f2e816d683d983911c0c9c7ba170eee62437edec73c8c07051a5";
+      sha512 = "fe632688fcfbf523e9ba3c1c7adb134631900f37dea6381fb41c4a7fce67034c0033417b5ef8c87cb33b303712fc309620844614f8719dfc440ae634c1dc18a0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/en-CA/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/en-CA/firefox-67.0b7.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "d5903366e487bdc61c52cf8ffc42f5f9cb890cd00e7e0a35b1011c83ee977196f1a0d56bab7046b7edbb936181ffc7df254090c5157f1eb6cc71f37ec9c99cb4";
+      sha512 = "15a26c6a0ec18625708b0779f00d6831146f5146f7ca0bfe35b00808ce45a3ebf29f129dcaea5d2799feeb1ce7b0055f76f704f448b884a36a354df4467adfbb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/en-GB/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/en-GB/firefox-67.0b7.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "f561418b07588a11d66d6bb0c016b2ba7cb4e09af9e32f7d8d99e7d3a106ef3a3f04980ac284b608e9b9504564d9b7d23dba4fc82b6e910f38eeadc096606896";
+      sha512 = "5b756fca80fc72c6f3925bf1df427da4a118753bf30641b266c6c392705ec87834c1fc46ac08c1d54d032ddd4abd6fc35a71f47fc89d04c766c094d863daba1e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/en-US/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/en-US/firefox-67.0b7.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "d93ea0e8b17d6085115a072d6495136ab20383a57400f3aa2969f12076e0f5aeecc1fb6d0459c6e34a1debd8339f0804f81df00ceececc2e4264614e516bad64";
+      sha512 = "00f3682c17fa8276e7f79ffea28b80a59b20063f6a945fe7b81265966cfcd526bf10272cc174aa600e4393c6e5b894b90673dbe170fe571f03412d403dfd630f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/en-ZA/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/en-ZA/firefox-67.0b7.tar.bz2";
       locale = "en-ZA";
       arch = "linux-i686";
-      sha512 = "f0d02912d321fe2023e7c9436cfba0665baffbe27a6dc3b98d8f9061954d5ecb8bfc2d75de28a8e2068acc1fc05a75f8fc6a10def2cc45c35b6cdd60a68ff103";
+      sha512 = "8fcbc170bb6efa955b577c7071e1c78fdde129508bb47ae2a266d6b79e980f82fb3c615a7453f3eec6db3f9352a4809fff2656c65a64f5bbc4afaf75fbb225d9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/eo/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/eo/firefox-67.0b7.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "295ca3fca2c63bc85f59fd21d673e8f60f6846a5ec36c29ce7e36464b14a7fade07c2c16212ec19fcf3c872d73215195e50994c60223afa2dada1056d23bc203";
+      sha512 = "05915f7e7f38fd0ccb9926ef96fe2641efcd42073d8acd18875a18fe3c63603fabbb66bfd83a24111678f1b38f8ef172c2524afd2a0e4632b8920853ed381751";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/es-AR/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/es-AR/firefox-67.0b7.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "f45f3a51a9e6b9881ce1c5f758e1e46dd97a7c49e3448edd3ef3277aee220c994a06b1cd005bff270fb21e3928a0ec035930eb6c42d8631c32a66a5c493afa17";
+      sha512 = "bb88d6801b9416b9767488ede19c52d9e9802d895dbfe2bb5408169ef43732e06696243126099e46619a08d8d705df4d66a6cf87ab58ce3cc8dc99fd8949b4cb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/es-CL/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/es-CL/firefox-67.0b7.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "5e7c5ccb383281006652b898f1d930aa81081fe4e5896f173da5b4a3fc06be0c5208ece83bf31507748b555947fe0d14cd3cc85a5689a1d6be06912786070ad5";
+      sha512 = "495c588e1059ed5d212c707ed5aa74a3aad8a372d11fed0da2f810928d645fee0d7d9aa28f1185ebd9aaa99baf14b1a0fe41e34b9e5aa7e00ecf46f9bc7b78be";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/es-ES/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/es-ES/firefox-67.0b7.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "fe1bcf7b79fc631402332f182b32fdba58f04c9121cf770e1c22afeaadb6323fb92ce889e19659c8f6fbdaa5d388e1075ef18b6fee72df33459c43aee1aa0b13";
+      sha512 = "4be53b2d2fbef3ae7f1601b8869cbc57075a998c9847c8ed333ce9def39c3f23b9ebda61f14fb6382fe2aef5bf0a253f43da4d07d8f51080c0505c7c2cfb9e07";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/es-MX/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/es-MX/firefox-67.0b7.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "b7e9b4d9dd21f4166e7d23f42e68e7c9f8b1e1bddecd434a997a7d584a926051a2e32d8e90eaa59efdf3b4ab0c44ba86f24ab7ef7015dfe3fcf1c9bad8af22a1";
+      sha512 = "090166a767ba1df247d74116fabaaf90f751c27cf7cf55282cea650e1f10747966aa84e813ae79c891041c3adcc44e165bbccf723d77aa8b9abb6e3957602a69";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/et/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/et/firefox-67.0b7.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "29fe0b389e94d421c4922567db49807ca09388d949b16bae4d0173727acaf2d5ac027c32a668abef25ca01e565713a235f38cd12cd46c24ebec6655cb2b66016";
+      sha512 = "56f84137cd9643211ec1de4891261621eeb033aff71704318e69a39d034fe1ded0b3a78a1d98a90878b841e5ea4eceec7e3a3848dc6743a121c8616d216a18ee";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/eu/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/eu/firefox-67.0b7.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "6421e14fb73553a6f82ec3a4e4d49bceeb10e4d7cdd66f4b3a6e574dcdb50657cd09475b636ffbce0e33d9eb37043eacc95ae9072bfbaf593cdbc00e393a4022";
+      sha512 = "91457da7072aa989bb18a35541f85a902cec6d425e583ea907c4ba31a65bfbb5991baae4357e0c1edab5696ec68c79c73e5033aa6fd14f2cf60940133c5eb245";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/fa/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/fa/firefox-67.0b7.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "4a30d00e74c65ac0a8d3faac436bd366f4b88043632e36edc8f417ace18e6f837da987efe579714cb27f597f399d7ed0f66c59b80ae79c19ee05c448e6e648b5";
+      sha512 = "3b29bb2e12c17773d18a157c8c4ef602d80b0e25c9bc399d4d803daa6bbbede64929064ea5daf4f0b0a514b4032801ba3fa8ad8d0dd45ee98a824c2daa852364";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ff/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ff/firefox-67.0b7.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "3f9d67ff5702b9e8dc26199d990dfdac2a6bd9284fcfc591d86d0a7099192a3ed53a9c47982f9a6e0665977bdfb9ec955fb7faae7a1f291fd0352b47cfea9ab5";
+      sha512 = "411b8a922893fb37c05358c5da39b63c4cb8d1697667738bdc139fe2b2ac6f0ddf9b94ad7214a323cab69748990dd3a45effb336352c48eea92f48710ee6c40c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/fi/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/fi/firefox-67.0b7.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "7f1c4448d2ae9facaa6b50b8f96b254cb1c3777ddccb0125fbaa827bdadc8416662b7e9887e5ecff7647a1b2e57eccb40255ed5ba86307c5ca735561dee26741";
+      sha512 = "526884ed9354b13eb3d2385d597eb43d2ec40ca8f0c106503f3e84a110c00c5da5422124aae2cc05c3e75999d4d50598909bb057a4dcaa389ab6dca726b3c378";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/fr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/fr/firefox-67.0b7.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "73faddedf5f29e38af8dc926347e7c0c814cf001564492122500559254a9c0f5ff4730ab57c0131d271f598ccd09868713b1f91b28c71cf56f74398f4d2bdfd6";
+      sha512 = "fafcf0501a1624f145ba02b08c4e5e4d160af0fd3d9dd13c22726ddd8b40108eda1bbd3322ba84dc2fcf7ceb39593cb85c614efe5833ec32fae767cafad28c0a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/fy-NL/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/fy-NL/firefox-67.0b7.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "9b0505175c9842262811dfd197d0b3805b79b1a9462063dc513b076f951cba4add15fccc174a1c3d7577592140058cd1a1549a1ad1371ef26f16591f52f37c19";
+      sha512 = "e6d12c42dee42740087121eeaf961d279e121e41ac79187e18fae5bba136ab27888b3b35b6db4899a8a77debdc785dab78c4b4fad08746e0e752b1082978e18c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ga-IE/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ga-IE/firefox-67.0b7.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "452f62e56c8d3a08c735579c93112bcf08cd85299fd32b07a19ea9b61d2734d6c282272afdca10b8efa362ac0328dbdd0414fb816bb2fd2134867f4287b02378";
+      sha512 = "44db77514fe972772b8331e9c502eb3417a810046046cb8ae48a1eda0984e299a58058a685d81c408b0a72f3172b24bdb57db70d595a2da93b90581d01a5b401";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/gd/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/gd/firefox-67.0b7.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "96551a86bd630765ec58c3ea03bea5a2dff017732171942edac8ebe7f53378cb06808eac4fcf84943d9304eacd997fce0059a0cc88f7beb6b6ae3cbdc7f68eec";
+      sha512 = "2b65bc81c0c9476b3196f5489eaf2f24502fb4abd585c0b1d9046a63a2bdb0f16a05e928369204ea028cb215a40a68a459c1c5f988c5d6882aa15d1e0a7b5b1c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/gl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/gl/firefox-67.0b7.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "a8772b5e51a8cc78ea15769e36c1e3f8f5ee67df15700f1205c44a83b203ba1ee73e8924823f84c2ed0ffaa4e8da2adfe907580e958c675ad4c45717d53043f7";
+      sha512 = "8d4fa0b6177b7926eb9f16c08e4b5f0e430add37622d712d77a2099c63e0fdc21ed9e2b7a72457868d968c1af42b3aa83b22c8f55cc913ce1d5eb913b12d1b2d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/gn/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/gn/firefox-67.0b7.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "5f2e15118861f1b9e1c10c38388fabc57e5a95895aad1375cda9227457d0a66d8935d7c71ea60fc276c258f5607923654c4623f5c5f6277f4f62763d4afc85d9";
+      sha512 = "1bf077f3282702124bbb968057942e2f701157de1b1e678cb55a0280907337952a0c3118ec874d0ca2ec26dc2063769b4cc2a2045e703c1761076e45e6c061cc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/gu-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/gu-IN/firefox-67.0b7.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "eeedd81022a1cce8feb05109808a4aa085787fcc9f1e6f733b1bfe4c7f3e75136c2379b0c7955d37bb54bdc83f8ad4d8285002e82d4896c9c80e3c6e82db29a2";
+      sha512 = "405a61a2c70c26569059bcbbd1723ce378a9d6a40d5373e294c1e5064b503e5b68a42c77bd023920348bbcfc05309605e9ac102a3b1627525fb3ec3fbbc58be9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/he/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/he/firefox-67.0b7.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "caff91df5a15edd7a1967de30bb90697a5f816cc066b52e325faa5f3c4857f64bf9545a90fbf2bb0e22f3ca480633647ded204a842231ab5329d60d2a9189ffb";
+      sha512 = "09d8d4a4eb70ba7da3a7d90d61ebe23f3943b4bd2f06d356b1745e7d9297f1c2160312ed1c8077ddeb88f6ae27c675a5bb5f1f81e19d16c6675a5cf2385ebe0c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/hi-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/hi-IN/firefox-67.0b7.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "b2809f7a45dec4e018662b02989f54529429608e3dc1bdaba1ccf0b85d3783ff53e611a2c27805831c43351c476c37f60b9448aa92410f67e01f25c57790ec3d";
+      sha512 = "c8c65bda9d1582df1b015425466d6806b41a09f4bf6e0146cc07932abc3e827db4fc89083711102b0716f6325e563d8e7a0a3c25af4f8e8f9bf31bc33a33345e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/hr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/hr/firefox-67.0b7.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "910c3e9bfc57c8b17e44635bf4884cf3df5791824d2025fd959b59457842bc40c197f74f34f5faa25b4c3016b21af471c8b69fd3baed55a581f2800fa12b8b15";
+      sha512 = "2beffc8293f955476c10de22c8fe45a46ab7769ea8ae85f611ea23c3171ff01dcc2df50907ca876f5d13b299d5b0959d3f1cdfa5153427e116a84a08c05fb144";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/hsb/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/hsb/firefox-67.0b7.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "95151f7f43b3410a20a1fce1c842b991dd96f622bb86703e1a6b510b4fcb8779d69f799a3f2185371adf8107273e379ce87d7c2221ecb9b4b9b77f4b1a189e66";
+      sha512 = "87efee6e2c24a0891193a1e745ab34f397e3c557b8c2e9491d2c935eb24bd221fa562b3f22eff71c1647ab55d87374e70541df0696a12830596dfe8aba23c6bc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/hu/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/hu/firefox-67.0b7.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "82d0d85616be5cefbd29e26855707959d4735521e5e9898f3e5779c81bfd43b7c6e3988f14a05a0bcdaa20d430dbe01f4ec28eb2230c04a5d9a9ad286ea6301c";
+      sha512 = "87732b73fbf821a8912a45cf873d4917dde729cd731d53c0c843d681d92681d395981152f93c1ea8fc415a93053974905fb03fcd6a4f71a7e07b12e0ea1ff9bd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/hy-AM/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/hy-AM/firefox-67.0b7.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "7e7edd213143da25b8f65999bdaa948657e44dad890ee1a017250c5ad4f412bd055b54951d6033995643b0db7238f790a281a1c6b489e8358fce3c2c86a96939";
+      sha512 = "7dcc8bd376fdf4227ac74b1d24965d70b274975800fbde94682a24de3c1ef8348581be3ad9d0715f16c0c9d8ff4995c31e4d38d99d8aa72a50acbaf8d4888e61";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ia/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ia/firefox-67.0b7.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "b2383594b7861a106c59187bbad1368ce0ea940661e0263657ac81b4fcbfb7007128aa602b92839ce0fd9e0a0c8ca52f6cc98cffa4cf3b766ab93c442b3253e4";
+      sha512 = "806b578c4005107896f6455e53987ab23785c737169a4f553d4e152345f4e77a7014f38a27407a4310288c0e2d08674b349f9f54bcd02c2b3fc7b30b27fc0a17";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/id/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/id/firefox-67.0b7.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "f65688844cac3c6df375d4ac33e1ea7b2543ccc297f9395f36a1042cee21f4c0ddbb9031472989cce8dbef5d7a4849c432f51affe2cb37ba0be7d3adbba20d16";
+      sha512 = "3c054ce894b6c61bde78f447095dda8352593da1879572234e10f0edb49fe89a0049f84404d45c6dea0e6e2aa75fd96a606e943260cd83166d447e65ecc435ae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/is/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/is/firefox-67.0b7.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "ec96914385094d0d91f485b2e0f913d80b0be9ccaa2e32e33fb53a8c774e68749611499bb5eb84a4e0306674bdceec29b4eaea4e5caf35ae09945df0115c7506";
+      sha512 = "3e0bc49ba210a864cf083ade56b89d1c78f93b2776cd3d71a1c3c649ecb5053942e9eda9a2d6eab97250268c9177bbb8d81c764860e5fa1a4ccf41f5e540fc0b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/it/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/it/firefox-67.0b7.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "fa14ecf7557657579d7ed99e9b38757f5c7ceaf5b7651d0691fa1f79844f9ac73624927e3e61670d804eb9b51edf192ab106b8c45ee9fe2688a7c2acf75f7621";
+      sha512 = "f410dfa055193d5ec70807a9374b9c9ec92a9f5484d52f241ea15c35ea60be58e72442949036e153e4adaa0a56c0ef0070fcac13258561b35c6d09c5dc1b3b42";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ja/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ja/firefox-67.0b7.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "e66f742293156ed55c73d6836e605a93c07b59ed8ac782a0ddb05d3037a0a9850ab80a9b7108e9a68d9be0fb551cb887f7d6a47e32e69625fce680b36246ddd4";
+      sha512 = "b0dd90d9a944cf99d76ac5b2f68c81d90d2dfa4fd544f0bcdf239bf091ae0dc96d5a5b4d190531fe90f38bf0d810bbb75057f70ae8cc090416535821f3630794";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ka/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ka/firefox-67.0b7.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "670988adfad3e3394ee00ba1012f362284116d42f68231fb1f9460dad0c92464016f21ca8b2387f94a16bccc959298b84ae273dd3007e382eb1bc36240403ae6";
+      sha512 = "d7d91f22ed6d4ac25fe67685aaa947fcee5a624b4e501954809d9f2ac3abd150e19aac283636a10456f5d18b20f4a50084ace34bd8eba7a82ddfc0176efe8a7b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/kab/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/kab/firefox-67.0b7.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "1c3e2b19d98c30daa7ac662dd1cbdcdce0f50c78e49bc2c0d732ffff7669c5e8d54feda5a0a2fd911532a4d92d8b95ad6a0fbda09d9d9a6deda19cd2a9af765f";
+      sha512 = "825c0a1d1dcfe3206567bf24072c27a62e3a90ff839a59ff9402fb669df77a0879ed2d47904081c6c5315d5c8079f7fe4ba0468d8ee10e5f98539fa349e4709e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/kk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/kk/firefox-67.0b7.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "38ba521126874287c25ef6d7f8434ce690615bed64c54f211b5d2be8413fbe8368673c6d886032577e70ef680ae4d580cd55994c2ec03c841a7e0aca96bae58b";
+      sha512 = "662f37a871ac7b8b897428324ef31752bbe3fe64f319525e77a42d873497decde5153a8ede2de135e79f9e107f0ca014502d27cf11e1d94ccd7e63fb0e7d1da9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/km/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/km/firefox-67.0b7.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "7a40a68076dc5c12525ffaed910204eef377dc33d4490da94fe8475a85bb806be29d146705bf39b804298faea49a94e2f97a59b2ac10e48b114eaec09bcb0da5";
+      sha512 = "ef722c12393f16945fbeea506f3463b37feb555db84558b2a193d810d4eaba0b94380784a2f1f0e8385c1e182a3137d5c11683bf6aa3525805b0383f1da70509";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/kn/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/kn/firefox-67.0b7.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "099f8a81e4800b47b96d0ca1965b7c298d916e8fd0e2d8b1425982f60e55564a1f86b0b84f4e7e98199ef6e1ddb67d1885bab99d89ab1df0c31fe88584c14a8c";
+      sha512 = "0b17f9793835559512f779e2939344775e8c29e8ff760fb3521e3425e8b306b6dee8de993837f894f55eff57e82756a9335acd35e26ddd5125540ba3037ef8a6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ko/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ko/firefox-67.0b7.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "6d125e9aebfad15e6db11160b094468bee8699ef23e6945fad5978c05cb77f36aa814b7a342b5ea35b857ea4083dccbe72f845542cdae6d5a7e444b7d2b6eee3";
+      sha512 = "62e694465b436294aa52919e3184257e096300759da93cbad3cca823c64a6102b7221bbca36dda9eefc4459eb70969dd1141449d4118d5955abc45fcb1b84315";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/lij/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/lij/firefox-67.0b7.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "0f972d750cac614d2ab1a5c2f0b3dee926e161cb31c49d0ed3c034e791356cfc2b200e69c5b59064dfd6d5afe6a91a82ffe69198d563146a1c729e65f0375350";
+      sha512 = "b86473816e14f0af2e916678c0dcfac61c315f8686194f25422d5a0179d7a741b1dd9e53f95ad09b9e59781e0dc179bc3ae598fd763c96811ecb8317903de980";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/lt/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/lt/firefox-67.0b7.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "c8589f0fce64104d939c527745c11ede8b87f2dff5deb2a281f2a8344fb8efdacb4f7cee276873787f03fce7317097c6a261e1a7c34e5fe5e0d637574c42ffda";
+      sha512 = "c98e0f2c5270454817688aca95efb7af028ab46835e242348a0977bd6eb350d1cab8583829647d226b149a24ad2c8125b2ccff88f1c29046cef6e05e3081db9a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/lv/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/lv/firefox-67.0b7.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "b02552ef2afdfb6ccd0dfd708692bc750c63859af2f01565c14ac274f32793523fd6254deceae823fce84b49167f40779b7c9b87bb4246ee3d59f70aebb0a0c2";
+      sha512 = "bbc568daccced664a217d962aaedf48123bc123243fa3920c346bab6f85f4ea19ed3664d60a9179797c2089baf15e3dbfc8e2d84e56d2bc40a54f4ecdea2d032";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/mai/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/mai/firefox-67.0b7.tar.bz2";
       locale = "mai";
       arch = "linux-i686";
-      sha512 = "3758f78bb9340e45e576d1ee77b37b21d9deb36c15ac55aa07f537aec53a7565d791ec02c770044db8c5a6ade3aa691a9e36428756c68e9c9fcaf5d419a94786";
+      sha512 = "10ff02bd9503c422692f39e27256d7a6cb2c1cd3b2188e493cac9b0158775c7f1c36e733433933b8290a7807ce6d6ae57c9c0ff46e6908300d0fb6e5b8c7f39e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/mk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/mk/firefox-67.0b7.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "d2cd50a8d290241f62c63a9b2f70dd82ae5cf9a158004d9d27ddb946edab410e94fde09b065be68d514995a26328f3b19f62ef2e8109bbf0a17e0efa95c60b34";
+      sha512 = "dc5438604cd8cec32aee799f03e7776f97ec03f50d473f19ca468fc7bee9c11ff5b92a8b14fbaad218b44c106b39a4dc7ebb63355c80cda4e925694b7635aa17";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ml/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ml/firefox-67.0b7.tar.bz2";
       locale = "ml";
       arch = "linux-i686";
-      sha512 = "506b35fe63908f1d8bfb015f4e3907df86d9669224669e90cd0c5c387c1447bd045bc32bb076d99d2f93ed8f838e0fbfc673294032577a34265b6604788624d7";
+      sha512 = "b6de0d78c6202e2677aadcb0792989277585c5626d41d12bc48b982566879b5cf35ad44d8ad05cc6d09b1ee0e063685c87ffe768b6791375505b192016fb328e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/mr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/mr/firefox-67.0b7.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "1bc9619204d9c9b58c378843d007ce7c34cde08d1c9da15fa06b91b4e43a19a606f014cd0b6237da3684777a737809cf796a7a32e3acc1870f7ce500d230d1e2";
+      sha512 = "f8660c94c8316de8ba94f9d5aad35ab3ecca57cb307bb49f5ee5867e3fee12405c210f982f617fceba69b4b8e4ff2c49767d28a00b1ae5643172ec5475512316";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ms/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ms/firefox-67.0b7.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "3666c9711a5195e8ac38db3ac4569435727d7c2c4027d7f3ae0249d53fabb7940986d42e9e4b4a0d8f8ef628d8a725919fbf66eac8f3623244eed834c1353934";
+      sha512 = "b11a9c2ec0abc8c623e3d1a13eeae1b184f2b2ff5ad9f8db62a4e5da118da2ea9dc02113d2f1a54246a07c7fc1e041942cdff4e44056e5584815fe0e4d0ad99b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/my/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/my/firefox-67.0b7.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "765cf716c8b8c16dd584d47c828c6ce31858d61e18e0576e616cf5b310cd468e351e409ce45405b2ea62bceec59a6fe22c2469026fa960cf6d8f761a2e61cb2d";
+      sha512 = "08aab48716713a02d779ea41a1fe7396a199336a84b79c97a4bd8da3201e71e5c1afb48acf731fc9653316b05d53cce0f85a1777fbb7e2f02de7452e137d2727";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/nb-NO/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/nb-NO/firefox-67.0b7.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "a420bc6aea2647a357ec249f89e6dd3f00de21b8527cd365bd7a9653f64383b44824c776c2253bf93e358841ca24688da671069036655ba56abc9b87f2ae7107";
+      sha512 = "38e7e2153151f40c69712ace80bf9fa23aadc1024a2da2e8b54bc304e97f9cf3f0b93779e194ca7d352ca58234eb056cd9bbc81537f666bd4c406057c88ffdce";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ne-NP/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ne-NP/firefox-67.0b7.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "b47767970c5d35a2602fd05b5d8460ad523bb2c1142e86ab9d79ba20bc4c43dd818c38de03cd38e202bcb87221c364aff80c09fb195ad29f02a7259454c15a35";
+      sha512 = "802a0832d0767ef3618690da5a30117b9d41bcc0aeacca32657ecc57c39db1fb495ecbe211a47976803f50f6a314df08ffe7e1b17c436786d98e31e2ff4423f5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/nl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/nl/firefox-67.0b7.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "52707a553abf0eeee782deaf5b48aba9c39d874598a22e3b34b0ba81c28184628bdbb0d1199cb5d887eed1c0a2871a96caac87f8e432c703926932041b327f2a";
+      sha512 = "56616e78daa5c44a2e7cddb64e50cffe0daaba8a245f12d842e6d7657dc22ac030ff98630d2cd1693454fb9859bb62fcd3119affb9cc950ce7d06a1eab123cbd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/nn-NO/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/nn-NO/firefox-67.0b7.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "710a6c6ab9eea84655419bc4d9df1f59e9c7247150c191ccd6dd6e3f09c8d53029df0e59d84b71358b75cb07aa1891e53bc342789f1e84861d5aebdf94b305fe";
+      sha512 = "245d00bd0517f8b7cfbdc60a04fe37ce491dec9106824c2efeba8ea401e502a1d49c9d5e88ca3b0c712dc74beded5c19b4115922662373ccc3e185802547e7fb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/oc/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/oc/firefox-67.0b7.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "3318f4e3b12361df8745c588b6dbd5d30757c27ca454e34d4e11082a012fdfc7d057cacddd3652bf644f7d1e35fd27993165f326591aad5f5d6567e473e84f4f";
+      sha512 = "b18dce7f515d26ad694370888a9b78710d5ae75e99eff6274ea29bbba7e9c8959013eeef8a20cc2709c318c9cc054b4722ccf0f13bc583963e1b50df84eb4d35";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/or/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/or/firefox-67.0b7.tar.bz2";
       locale = "or";
       arch = "linux-i686";
-      sha512 = "a31c92880d7c4b0d6fa38c14e78d1a04d525f4e5d850dcbe8fdb391b94c400a5c5cf9bab545c0b3da69363431fcb2bd4e3cbfefe72fd1569798197b444a654be";
+      sha512 = "c4ace90090a9473dbbb14575980e8598f998bbec64db3d9d9f77730ead00698b63f0992b95d82b21e73d0797278a87890a485862df19f0c1c972c31b97a70857";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/pa-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/pa-IN/firefox-67.0b7.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "1430ae5415c3a741533ce3c47959ead2576bcac5d5fae8aada9d08b3b985cae41fa67ab8bde1446fd76c86e4ad98e9c9612e86e4c045e43f306062027ae1a08d";
+      sha512 = "3a25e29cc1e05ca625a2f420fb4d027532999fab675ada891d8b8b54c502ad40bad408fda7f8ec9a3269e25948e8a42424b8a2cc7b1e228825106c8da5a34099";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/pl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/pl/firefox-67.0b7.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "832c8d156fd5eccad841b8c2594e710d905d5a9fdcf9050b8dfd4b6cea70754f1d3c410a3e9027fa0f58655b8259b945cc40c0b7fe2faf3cbcbaea61371c630a";
+      sha512 = "cb6631f1dc737157ea0d17552437f2ed5cadc36e390d485390aeaff85fabd11780d3a5d1d9217e2129a53fce30668ca20e68f32470766712c2e767e8a26defb7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/pt-BR/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/pt-BR/firefox-67.0b7.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "211898f366e9525fe056d3518306783949383e0f0ce8d58a8a200c131b238a946c40ed48f705076d460f960ff8dde5ad990d8f792f3d7ec1b3de835c569dba46";
+      sha512 = "f50a5a71514fdd0c82f9cca78ac67cc984772abd5f9109f60270db64f81f3832e8612ed3b6c23e91642017da9b16eda825fe783ee28eacb29edfa23b1e6c3d04";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/pt-PT/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/pt-PT/firefox-67.0b7.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "801f436d5e898db798f4bb676f0851fd0c4211447b29e77b92d9dcb263b166ca7fd8cf7eac62ba0c0745bee395b76281994109290e4de6bbeb2faf851b465d4e";
+      sha512 = "dd99864a07358442c3e97cc889e1a891df6db469f6238c13b36acd6fef38063de5bb307319fdcfd82c91a66a9f67f6170b0a6379f6435020fe30e69884829076";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/rm/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/rm/firefox-67.0b7.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "88c9ad5b1321742c1d9772025ef4fe2af17c68b26e0cfb0ef9e141d79e64c126ea283cdea4584dcc5502ce0731bbca8d2efc769ff64796fdf0e4f310910a7c0f";
+      sha512 = "2d8f8a8c4d9398d02adcc9d827b76352b761235ed5c43ea0c4ee5798d19d611e3aeb9fe4f44df874a96a1905bc7c5e9d7f16b85606c62bd4508e5120fb5787e8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ro/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ro/firefox-67.0b7.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "b19e845ccbad456fdaab9b7ff8db805164575f03250d05ba9e68f05cc093f87c6aeb7bc2906719f10fcca46a756abf343b0c2ace28ab527c41a263ec6dfef46b";
+      sha512 = "513698be75508cd4f59da1fa8f81b5954b5082c402cde9a263a58dfaca9e27f7aa5dc87eb0d4cf6f15facc2834c6ad121cfb89744c1b00c19181a2f05c31cc1b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ru/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ru/firefox-67.0b7.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "8a4ac0dead737c5f2152b7a2cabc3c913e863662c229ef10caaed3a3ffeb26d901357b42c9a6b21a738c0d7903097826a05bfc22483c4f3bba7fbb3553d993db";
+      sha512 = "c4cfdf7a472bba06ab3035845c996b54a3e08f5f4cc380fdf8752b5d57aa3dcedd9248aa1e0f92655762e2efed8e8ab1901968d65b66ae565b60404fffd654de";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/si/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/si/firefox-67.0b7.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "59f38709d47b24aa191b4d7a895bf0d84cd2109b9e3a369bea0fd3b6ad34fd355fb2d2504475421d2aa53884973a695a26a23fd7e67ea197c39b8f1a94837446";
+      sha512 = "ba8bef7194359cbe9a1a52af4ea5e8615a3e3688cc0d575c76fda5319684aa336c59e2492ecaf65ecc68939996243fc07f910e3a2c4a36de876130abe100dba0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/sk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/sk/firefox-67.0b7.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "1af7893d32d0b92054c6d193a74f2a39b7b4b57489375b14d2071c2d961ea0d2de3951b21688b9d4fd1df80d3a1a07953c04fefddcfb4c1fc455a1c453707124";
+      sha512 = "afed2ee53d88d86bf45923cbf00952914c01b6b70909079a25fede7db3cb221433c5957788875a00e5788cf83a24f771399c8ca77661d042fa58de967b8fec55";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/sl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/sl/firefox-67.0b7.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "ded50cbc0eed584f05d4f51d93559f17a772ef2b22d78a2528ffbe35d820d9c66a2feeb60ee8fc3c7bd526afef738408cd0b75888054367f0fdc2036395c98f7";
+      sha512 = "5482c61f33923473af23ac5819e6fe379c497ee4dbf205fd1df14903bb59c74fa41f2aca9a98116383675848748a992a11cb0fafbfb227b41fd168c071810586";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/son/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/son/firefox-67.0b7.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "488d2945e65391e99db380018bb1b15ea71bd8c8cf405ef8677126e7a5d39c283ea566859447b28ea7a898ed39dfa774406ee0387c0d6438312fd97521bf5542";
+      sha512 = "6b5dc673099a66390dfb9307a93f9852ff8c2e6f4ad42e3ca3988fd53b5bc2fc03f51bd91d1b93cfb4fa7d6f481681182e961e08c84558e14cc19f181189fd60";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/sq/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/sq/firefox-67.0b7.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "8cead9353559ad7a1a2821833d62783e9bf182e836c34af5a9a564dfa95c45b2c9eaf229d3677a605f81b6c91d1b6975af1979368c1fe3d36ea473e81e71f873";
+      sha512 = "ef584e79c07fce073e188ff5ad24138c59b764b144a5eb80847142887ac007d47336338e75ef69f1c27063294e2d65cfcf7c49a25ca59b294481463f6add1b9c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/sr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/sr/firefox-67.0b7.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "70bb9688e3d693aa3a88d8e73d41b45481da94737fb383925f8ba85c180ab2944a4e358f3dbf02bd548d283ca7206ac6a8aa6e94a1c86cd57db1d87cc2dea013";
+      sha512 = "9ba0eb04dfd9355163baaf446d3b62be4ddaedae82558b5207fcb4ee08c315d1f86606cd917451fc6d2bf1dd33693ded40f66e17aa399a0f33187b038fb0a04e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/sv-SE/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/sv-SE/firefox-67.0b7.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "95555e40b3088969082ba14a24a7baef71bec6394ec160d82c3acb6c00bd6a3f6c344a1a91a7d17d0d25ffd047e70b0ca90daeef48c0f19312ee2a1829497029";
+      sha512 = "4a764e632fff6ebe332e02473a17038ae6fbcff261bfd8ccc109751208002864bbdd9040a0ed706862f57f217b4dbe2e771982837ace14bc11177624d396452a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ta/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ta/firefox-67.0b7.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "e85c7da5c3fc77c0f549d2f78029d211c3b6a5dce0a3d91a7d7b29f57d1300f041b8f9a93c6fe91e5f9266f69733c9a4fed1a34cc39738218ce8232999f9795c";
+      sha512 = "b15916fe4d9fd6fc634c98da18de4ab970b52bafa1cda862ad81fbea2713ae40e11a2e472e88dab813cf6e26158cd2bbad118b8bf48061360ce0cd6f3ab8c669";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/te/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/te/firefox-67.0b7.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "dcd0f4d7f851e56c44296651f85e473c211b04944b7a1dd883def4bffe1bfb7da2fa0f390e9814ea023a7d542e38c4aad526c31db8fdc9143b305c6f7d3f84bc";
+      sha512 = "4f25e30a084e2308739a60513ccbcc4eef516cc61879cb75411b150237164c0093d0fa6edbcdaf4e96815fdb4f7e87e4ea2cee8d60cfd488002b6459530eb682";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/th/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/th/firefox-67.0b7.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "750fc22b914dce12bf4721b3882c22519c325ef846017db29824afb1d67e87176e574c1ad6f2f3d9ffa5066c7de35207eab7ab654da83e0420e6c1466a595c3d";
+      sha512 = "0245154e664a10a646fdbb6cea2c565a4830a34caf4ce6eb86508bd96d7c6e95de447d4b023ea28f5937d6506b439f137580e059b9cc149f01b8d7d112caad39";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/tr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/tr/firefox-67.0b7.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "b418750ab9f54b643c6adc9c9c9a67809dda04648005b5dbb1b0f603bd40798bf775551f8343831068a881135c624691d7177efaba3dc0fad48ba167b007ea38";
+      sha512 = "ffc35c836068960c96bbaaf1561c0d7260a190bf01f37c4f256d360747b52cc28d980c9fe63dd2f2a282f148620adcb9b37783e217ae0de10edfae3b08093366";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/uk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/uk/firefox-67.0b7.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "19475661fed75fb6dea76fe94838142629be2df25456a78ba7a546449685a24e7618d3c77a09fd2a06311155b04f96b1ea549e3dfcdccb3f94e168c6fdc729d8";
+      sha512 = "ebca303ac7b6b276596421788e72bea9b473810b5de4c9c6aad1a4631db560e4dbf34f1a938aeafe318c93f2d511ff7330a9400f032e9fcfc04be30baf99cb42";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/ur/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/ur/firefox-67.0b7.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "dab11bd3860fc0418ab054f76631283e9ec8e3a0add9a2b4002009b7e813e19f99f2f699dd794dd414380ad74466b968519f87befaaf605351d83f38ba976abf";
+      sha512 = "09462bea4096bea32afb94f79e9f20bb5c41f02b35a4429103389d3e8ff898c18ccfddb13db33dda4af8315b6acf76b24008b70bf0d3c8331e6e812fd924290e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/uz/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/uz/firefox-67.0b7.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "9de5f11a80c8752089a78519d24c82bcf55b5cbfa599b8e176df6c0f290d82382cabfbb0e9baf3a4b8b19761fac8ac34a807d62b94bfa0c478f422947c60fe84";
+      sha512 = "267c646d61be23f11e4139365b463c746b0adfc5ee7f3248c8f48c093e1706b468e187e574fd12330a8cb5bd062940eb383c9c6d42d0159f12b3eff6933c3a55";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/vi/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/vi/firefox-67.0b7.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "e82f0905a5781780d96e5a0e9d38d78a1e51fa6547a64896a7eca174139a774da106d3ea052346bd9ef3873909bff66e711c30c8de9c2151bc3aae0d58db9d8f";
+      sha512 = "4f4aad99ab5ac6ea231f0dd3384487c5577f9025d3e83e6960146435767e3133267495d781b04112c4a4734548d643310c6bcc7b97fa57c917798dc127f8a5a5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/xh/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/xh/firefox-67.0b7.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "8f66b8667097e5545f6d9edef33d31e3a2e213b350dd719d108683bc3b6f79c53b3ef5e4c6eade455d9c77fd7f6e3e9c7ceb66fb52d591635f8165e660a7b285";
+      sha512 = "3c422d7a1089ac4405bea8268d48a56bfffa1c15fcc1362bad00f045200f2deac14bb31985cca2476a226998a55f2f6ffdc27c17a1fb7e28d667770102147fd3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/zh-CN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/zh-CN/firefox-67.0b7.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "5b3053c5e7b826db8c2e5fb11cd29d3643aca6e28e890c950beddfe6be9789a5381b575c136c06b36c13cb8abd14cfb3d6ddc33a31aba26bd412e35fc45bbb5f";
+      sha512 = "b7d06b17e5a652c87a2b644be00c3ee6eded4b6a7daf79e7663d6452b7c7e5506971b819296b7c251a17055747e6b310e60ead1ca08490bba8d056df7424942d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b3/linux-i686/zh-TW/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/67.0b7/linux-i686/zh-TW/firefox-67.0b7.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "1fcfc2da45f171f923053b26dc01628943f0d25ea4e0c8cff1f71d58c11171388ac65063a585c6e926176f69d97a9b84e859513f80d08a1e3058bc62a8ab7150";
+      sha512 = "a5ef8efc618641fe7af9fd645388a6942ceabdd6f239c37af7776f753e3703802f707c64925e7a151d4e80acb2a720c4bfd1f8969db053a708616e0191bafa4f";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
index 1cc08f2630c8..8f1817627bad 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/devedition_sources.nix
@@ -1,995 +1,995 @@
 {
-  version = "67.0b3";
+  version = "67.0b7";
   sources = [
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ach/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ach/firefox-67.0b7.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "6f92e25312b75b615e5ede81e7f32379f548e52aa37a424de1f2f5d67dfb575db2618e592a0652a93aaad4f1c789b5bc5a9b4e8f888c526fedc5ad885e1136d6";
+      sha512 = "065f94cf555016d4a4cf87ab48c93ac5dfddf3fe55769b46b008df89a6b8525705e3d1d42f1378b01c4fd84c0c6330fe213a8bbeb968b2062ecfb7fd0d99da14";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/af/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/af/firefox-67.0b7.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "e740e11c798dfb99b230839dd7d45cffc35df4415ab4a4ada412866f427c94409ad91277bb05ac5a2dcc098f287a87f6309f21094c76ae4f5af1aca72d1f2e0a";
+      sha512 = "f41ea86f9d0247f861a3f2f336dfb480706e114beadfd95d907335b6eededea46d4252e8b5f711b73e73dab2af4f189dcd1bc6b5f0430fb65a35b4df6e58b801";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/an/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/an/firefox-67.0b7.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "11fab1af385bab9579d976b5f621302f0a1e5aae66fffc983e8f3bed9f1419f07c5cfec942e39e81ab1e6cb2b75ddd597d144a2cb2a84d231d1eef951d81e8b2";
+      sha512 = "f22157f1c04b359dab1cd87e3f18cf2dcaa5bdb8bef504f4492b9be87288a6002a31997885303216572f2000018c4951998a68f9314862b2ea7c4ce7be943085";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ar/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ar/firefox-67.0b7.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "ce66b95022608bf2fcbe5e1bcaee92ce6db5b5fdd3383c3625316a35bc59e32e0bbd33b81faac5ddb92b34b05773185522a18495a46b80006163b07d6e12f6ee";
+      sha512 = "51ba06d4ca42fca5d5eb706ce3ec166c08967282d3b66802b11f41814058164ec71f28f8e4dac37affab15179c4e411b8634b42a5cf4693e9fa5186cbf0440f6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/as/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/as/firefox-67.0b7.tar.bz2";
       locale = "as";
       arch = "linux-x86_64";
-      sha512 = "d3c4c75ee9d7160accaf578d9651614eee63bd9d028fd832963479b98a824ccd3023a92a02a8e10f23a13454097f0dd054d6426465d8c99dfbdb83169f3c6b5d";
+      sha512 = "461afa6427e234f64fd95f8d6901fa4ad6e1a7aca08ac60205f3e27a8af55b0735fa50b0ae460460e842273f4488662133c1ef9d72bd14bbe69450f1c8c13bb0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ast/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ast/firefox-67.0b7.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "8c4d062f0d727b826a264af04d8d2c6b2e3830a23340a17adea743b60b1543eb27e043d38ad92cb206fa2c0964b3d9e4f0521d9cf79077238e6af9c06ab1cd79";
+      sha512 = "45bfaa2fccf2b2441a71ca3c23846e6cc03398e5a48202dd9f2912cca8f9c4623a1cfbe315d81952dcec4e8cda491d9b455a19743c32b278f2641828e0cd82fc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/az/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/az/firefox-67.0b7.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "6a6f323dfbc9750e0388e1497bd56a90918e7e0df37de987c0b11e24d407e221623a0a46a1f01645f1ce39494f912a2d53f6aa4b057333fdfaadf2a7ffafac40";
+      sha512 = "a12c0ee9516e78479413c5e79a43e149632648a83dc88e87b443a4163aae98f554ceac48b456845e881db575a87d9c8d0772546c844ff567d7ea6be1c51597b8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/be/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/be/firefox-67.0b7.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "62027b9f2b0662f89c8869752961caa1e0edcc37a81f0a0ad04b37a434562671f7ea2b8aaef53acbab2e98f0b670af261cd73335da382e54abf8cc32c66cea48";
+      sha512 = "756723c6774e76f62f2447724f4c2ca350e94f81dfb9d3e4b64381d3d0e34cc81a7b56868aef1996e97ae13c15f192e83cbfd30a7b171a7536731d9ab9035eef";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/bg/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/bg/firefox-67.0b7.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "4a66c203cd023625fcc2ea480614b52d7ddf0f0f02f56002b5195480f570b73899b0f924767620ccbb618a1cc3fad05252d22b12518931b29d3ba435fc81e2e8";
+      sha512 = "6b548c459ad6d0933733a571f800050b6e416618a0d465acbe251e8899ccb5b3d4b3eef7f46982c9f4f888f2a21aca4f9fcc990615345a6868fa45797f843ad8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/bn-BD/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/bn-BD/firefox-67.0b7.tar.bz2";
       locale = "bn-BD";
       arch = "linux-x86_64";
-      sha512 = "a01d365a171c1822264355a1aa2e38e32345177b40356edd852b1d9a7e5a8250d02c88447405742392a2506c67f4ae5b364e5ca02c3c9243082647e1379154bd";
+      sha512 = "7a97d2daef6459cf2eafc7c7469c827c0fbc3fe241aa2a08865ce3b83b4e667f59371d33fb96e834ad1e6de29040146324359473dcca3c6acd2dd892e4aade64";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/bn-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/bn-IN/firefox-67.0b7.tar.bz2";
       locale = "bn-IN";
       arch = "linux-x86_64";
-      sha512 = "0f8085a95d18b37c1fb7079af42fc365d7806f0b68c04285a8b00577853c77c69f673f442deb1ec88a7cee4326b6bb275f51ab19bea3fae09659b401c79058b6";
+      sha512 = "6545354d98ef743017e1b7b951df4f1d7149b9918a2b0e242c10c886cf193a542a8c94f3c98f491b3e5b21ce860cd14cb066a9688b375f435e01aa4b5d9692b8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/br/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/br/firefox-67.0b7.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "04346fef1b76660543ab4858fb6ec3094dccee4f8a9bfbcbb306d88c1906ef6465fa10cba88d587c7d20a2c3963d123e60f18a5301952f64ebbf083f87caaed0";
+      sha512 = "85095550969c5708df47a9f0c67245273fd0c81bf831707ea99d07fd9e679d4ae4c12416b764599826f08329dfe7460c4c4109b21887fe416aec638e6730ca62";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/bs/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/bs/firefox-67.0b7.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "62fb42ab5995307a230d12ffadf898f3f73c7e31158aff69d02792f7ef4e08cc411907b7d6970616ff682413cb31deab99e7e6df13cd54cd841c03f4c385cc99";
+      sha512 = "3eddbcfd63cbf85f74a8f24b7cd1b47390369ffe4f89663178b6bf893fd5feb040c521814b2033a79cfb75ddd0201fce2bc3993715c50eb1a39c6889fe515a53";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ca/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ca/firefox-67.0b7.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "03431f48433c1c7699ab54d6ff52418859ad040f848ed6e1702ebe4d04cf621e9c2e04ac198cfdf24baabbd6e2e60dc95b5cbef6595cd08bdb8ef483ae0135b2";
+      sha512 = "ce4e8b99648dea33ed485aa364e99aa2b76afab2119a375c0b1beb6acba52bea6386beccc00db84692817ebbc7cda54bfd39755430ad195f4a409d24b6f9cdde";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/cak/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/cak/firefox-67.0b7.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "c19764772599bb69be4d432eb8c91349dfe60a9c0b2805181eded7f9bc5586941cdec38f1e5c7fe4b3667da5c76272deded6e6369194f84e201761638f7e03e4";
+      sha512 = "1cb2eaa6c83bb7c8552094f2b40a710b9e00b48fcc9d76b95ae650834e8f4e33b898fd1e3fddf3e4c90997ee9560e1876acee2a763719bdaa2b98913d62bb073";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/cs/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/cs/firefox-67.0b7.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "56d6915184fc41ce4efc2ee067f7189566754af20c265bba3a74c3c9ea694fa5141f0cc67b99f1e1ad91b2c39237f48e920eaed4ca1a98a20dcb7c98088c6437";
+      sha512 = "b4212d47a104fa1a1905036886285973250c6b7b253c7b8f1d75a02561af2f7a127edc153ee47f1ca386f198d0a79106ae27c4abdfdbad05fcaac5b179aa64a5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/cy/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/cy/firefox-67.0b7.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "64580166832f4852e82b817a0085f7e47c8af07349b1f0c71be9cf95db05b0fbc4e02f1f253ffe21280c66c240195f7ff419c38e9874c5ef66c240c5a0a8ec40";
+      sha512 = "6238a0f598da4b323a245c7f025e0e67e511c8b07f7f6fa2dee5d7fc232fc9eb21d4a0c00d3b5d9a4912cdbe5fc3f50ed8c4125e7e6cee5337d21580491a31b0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/da/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/da/firefox-67.0b7.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "62cc7967d2661b0c213a36a0ef693968c96cd2196be33ed0e49f14ee4bcd2aad4b161d517f8289ae4bc918e2b0b4c0e964d13287000018b5137a261765dd4b48";
+      sha512 = "f3e5b994100272063fa50ce90edafc913333902431ac24050b10ad96f686516efca6501260e2201d6fd8a8b835efaa3f478e29a8337040f5274056bca1e4b893";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/de/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/de/firefox-67.0b7.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "08c1d2dd9370296e5b2e325c3b1b4027af3c2d003f20cf1f1e116fcb98219b01c69efbe9ebadac5eb73c5dfd863cd838834a349ae338db630651dd1efc99d244";
+      sha512 = "b85685a7119e9b77325cbd3091f447b1ec2a65781b398fdfa0b8ce6c0bee0b40acb67b8922626fe3ded23838e4d760a61b9382671f99ab3d97b2cbeabc180759";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/dsb/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/dsb/firefox-67.0b7.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "3c078ffb4702cab4580f4d36c95df33d6b196d8d9a53e6d9df8bc38e8b78b2857103b6d27c52f29499bd73006f1221fe9bf8862a0df935e38842761e2009b5c3";
+      sha512 = "16c488a16b880441e8f24f0dce65a4e311a68fa6f1c6bc137283213be938518371963f2bc4e04d56adac25bee86223018d8701372187a8db81d88f24fa32c26b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/el/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/el/firefox-67.0b7.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "4a8a3ffc7a6649daf011e29d52ca1a6c6a8ab710cd42cbb93fb86ca2a21003f7abde7e2adc0dfafae8f4f7f4b99884da4a15e278be9563ad841de40c01c8ed72";
+      sha512 = "8bb987cc8f2d0cd5528319530cbdb8efbdf8ccae4164c376ac08dae9e3f94460e73c9295fc7da0a0f88f4bc39f8b9e576e3462edf15c4b794f48571975c9442a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/en-CA/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/en-CA/firefox-67.0b7.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "74cff19eed362cfcb474ee5b2a38f65359e5492d533f71e9bcb8d1a0d5406f4413abfaa86eeda39a24f54a9e8df3b1c5f1345ece330698eaf42a5b33911361bd";
+      sha512 = "b615236a7c24d4d45bdb7286c820df4a96829ad2afea2d2f3ef9f539f5841b5fceb90790226d61db393e7c3b7e626ed0c4898e146dfcbe35d468fef8f18953d4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/en-GB/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/en-GB/firefox-67.0b7.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "4f5a5e72ed82fda64ca0e27e12590ac9e860358314336f4b8c40e86130667fe32b5a907462e7e8018d9b5a0eac3f66df4e13490253987bd734910adb1f1c5f65";
+      sha512 = "d658c78001a8dcb6ed58d63205b9a845b55a668299e514fd948245341b2aaf02da7721e7312e763b38b02e8375d20a98abf3d3714f75236fb0bbd3074e08a3ec";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/en-US/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/en-US/firefox-67.0b7.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "5d6c40fa2d8c4554965a1b833e0a4daffde53024351145c3e2cf603d16a51885056726851d469edb36e330dded5dde12e08ea98cbcd622c9e38c4400d4f6b2dc";
+      sha512 = "b1911ac01ee72cf64ada7e8b8d983514446f174785927f20c88e15e4394f4aa57f50fa916295e5223cd67cca0c3c8e13488242c10491ff05d66e1439ed38486d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/en-ZA/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/en-ZA/firefox-67.0b7.tar.bz2";
       locale = "en-ZA";
       arch = "linux-x86_64";
-      sha512 = "3290373b1ee884160582bf8f578a91bbd740ba984c27fd658a1808985e0d0c93a5a87ae4928a100e59c5a2c8134f0ca3fe717014acfe9c482f595bb2918272bd";
+      sha512 = "390815b14e35134377cee24bd5731914cf4ae08f12206f2a3502d12c3e97322763c6c5a9d05a5b0b7f8e85247d5d61999f499c513fa8c3033aa6eb0f22b0eff6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/eo/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/eo/firefox-67.0b7.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "54b1265f1de4cc866cc414d58a7e599424a58d45f3d9959b6c51d5de6ef700b830cfed2c001fd9ba632c13619667483a6a78e2bd18df25587f073131618f47e1";
+      sha512 = "b80d91463d9be96e29eab4d15ec76952e7c664e30934de1b14d165864962c4aacc2725f08b6e301487c55e386f324a3072c3969bc4f474d7120f2c723d9e76f0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/es-AR/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/es-AR/firefox-67.0b7.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "1096be162ad84cb342ddf042dacd14e2dd2e1c2230b181a03ca17b95657e0b1247716dd285e9935d9a661962143407cf3928e8875ac375deb81c6de1ac7ccbf2";
+      sha512 = "03558cb0909a4f8fb2076b36be023cc768a84de64b3113d9c795e763cb762b68378826d1fc8c30b77f3c0e55d6f3ed6ca2d023b531084548b24c4a9bdd4d41da";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/es-CL/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/es-CL/firefox-67.0b7.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "9edac158d6f5261240212335fe215693809689cbbf8a6e55b3592b4e42b907621e0b1823d469253b879193873ffe3dce28068c96fee1170735b0383c6a94475f";
+      sha512 = "45d5284a78cc6f985d3fb68888f9a03b155f924549f43e4364deb87e0dd0c2f9c532e8a0b8062db8d265c810230956533c6b7477d66f5adbce82779f6e55d0df";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/es-ES/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/es-ES/firefox-67.0b7.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "7ac79d8268ecf61568b4bfe251e86da8d0a5ca3df806531bfd1469e27024e10790fa7856477a419fe9972f64edb83ef3ff5dbe038c8cb0788ab93bb69268bf9b";
+      sha512 = "650c869a200ba5891be7b377030e32ea8e5c5e1bacfbd9028ad6d5909651aca8da7c82b399ad5491b071cebab168cd7ef3f14b00b8af562a02ee5696dd29c249";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/es-MX/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/es-MX/firefox-67.0b7.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "53de9d03e23cda6235b834affa93a5a1806257c28d33bb16733718796a19b0166fe1aea04b3c4a8defe276fb268aba58d036bc288351c788a190cea9a400a214";
+      sha512 = "4fe0d5ee804dcbfd9b99f658af522be71acce6e9a9bf96ecb47bfe8e8327d1bdefe20c70ae474cab3ef7b1007ab339f6ad4ab4250e9f985e885147a039daa83f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/et/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/et/firefox-67.0b7.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "6b169f3726d19ade972490a21dc0c9d591cd6e68b541a370e450d4a8555f15681b55b8b949731b20b37ab79dd0fc152143fa4bcf32a4a8063ee079b2e1f34e13";
+      sha512 = "d3df04eacdc53b02f2a78314f086588983b9ada6855604337e82a5ed1e0046210e2cfd37153570c46dad632ac066bc87e19794898144ee5d78cea0ecef1193e5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/eu/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/eu/firefox-67.0b7.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "6f54e4bebedd5ab42fb5f7dba2652b2eb1b430041e1124748c903c51cc3d7e432c08b8d80111f50a3cfe8b373b280b833fbdab7074c53b1b839d5af2c0042257";
+      sha512 = "b0bb4cabb709ea6dd66fcacfe0536e03d9615bf94ede192bb4aa6f84592b94206be039909f46ba37397d9d396b08f8cecea8e07c6b64d8578280026d89dbc6df";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/fa/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/fa/firefox-67.0b7.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "7126be3ccd3ecd5e4b67c2d79bc6c9a653e8111b30cefe3bf59104519069f9e92cb8343021f3310c578bc299c09b993735120da5db94816cb8a88e9de7b5dcb9";
+      sha512 = "6dc15ce8ffa1839df3a9aebc160022cb3be335fca06b41ee87190bc4fb8fb78be4b220855b0bee75efc771d1ecab3080116b3440b225f2e15f20536f84f2b111";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ff/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ff/firefox-67.0b7.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "19da85777fca5b464f7366b86557335874578f5701b8423604eac47fb75afbc4bd90a153b1a7425d55b183b61863c27679375cec492d442e76762d8ffeae0b59";
+      sha512 = "367edbbb90d98216d3d5ea457b101e4a0d682e36961c87477be887ae1f7b0dd5efeddd81e12298cab2e9c2e7a9ab1560288263857e79ee7f561a84bec3eadeab";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/fi/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/fi/firefox-67.0b7.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "d4be2da403b81fd4ff26b85e9f6d61281f675606cd359ec7ab5ffefb05a86e630e9b4bcdb63900cbb328e8cd2dead109839ec8d863febb866a4dda2fa5785727";
+      sha512 = "3a2ba7291fb2efb95663dc01e488fed254045b9d23f84c896a29273c825cf5f1ec5883aa66d2afa0dbaba3ff6cc9b87f14e845010073d897b8dc275a47260ac3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/fr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/fr/firefox-67.0b7.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "99793c8e00172c0f80dd92544db7be826d365a2b5fae84d493d567939cf484b25e4d655187e715d88eb942388aa7d693284134cc48cc79059f3758875c5d9a8f";
+      sha512 = "8aec13533118aab96aef3b7e7e23b65a651d5211346c1769f649128a50ae13b2e5827ed6195ce265584dd3f63e956b28689b60f807ceaf63d7bc558d5c5300ce";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/fy-NL/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/fy-NL/firefox-67.0b7.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "4250d8e9725a2bfca3db347300e65e710f2befd58f9f5975f54ac7bdf3b6da44bb3de49324bab337b587537c9c3b8c237530ced494fdd2f51e749a29201928e3";
+      sha512 = "593f36d08d2af14243779f8ca8223b9e00809330f4012ede586917e98c875d39fed9aa856caf32f8afc6bf14c47ca6e5db0e0a8c9897767c97e9edd60558d229";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ga-IE/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ga-IE/firefox-67.0b7.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "d91b27a37efde6c6d92ee481678fb6de0b21f8e5d3651d8ab3fd1e88873f659d59ea34d40bba508b3096588d277d8ea9bf33c058960ca00e3fd048892e9cca49";
+      sha512 = "a272716be03895e1562373ab93abd0c4eb2ac3e8ad5caa1b868607faf125167157aeb22a652d2edf4148c9096178acecdaaff7dcc13e993914e4e8ba899f31bc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/gd/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/gd/firefox-67.0b7.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "e51b80ee2ef1aca1eb4ded88336fa70dc16aeedeba1da8196f03656a240ca033df66211d160de8354b48340cd27731cb36d362ad44dcc2b1167573b0a9ede396";
+      sha512 = "3eb05e39c33873a7323cfe966c31cf1ac073edcb37b6aa37e71b58d29e3dea87db8a4d5cddf9bd64e618e2cb2a3a2314ac9e9a5cd23f099fe391dff9bf7d5bd1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/gl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/gl/firefox-67.0b7.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "ddfe71a48bb7a813f1053f569e7a7d8c0de9df9ee8ac79b9bac4e3cf6fb1c8b2a0da622d4e8dffe8e729e8eda33587e1cd7f88aface8ede13554d516f57569de";
+      sha512 = "078113798dde9058778c334b428247c83c95030c35b4964bc1a3b70aeba9d6967338c84f0b88873bc95e2d9cc123eed669dc7cd5345ce81e0ad021ff0e432a49";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/gn/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/gn/firefox-67.0b7.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "73d4497fff9d4b9daf4c729d1ece5b9723f764c89251f42ca2353d4681a665c4a7978ac367b87b452247e9480ca099c89e7fbd0339c5051667561094836f42d3";
+      sha512 = "9c5ca6da7eab1cec26ff66649f005b77523ddf325869236a166545c7e0b50522d9023883f831dbc6520396a146e415a458e3528cc96e12d357ae5286dbcc932c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/gu-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/gu-IN/firefox-67.0b7.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "c2faba90a33d7d66bcac96c5f8f03de0957551ff844e48d291299876999c3ebd4c9b3b74066930eb4766be3768f119377725b774fc2ca2a51b4ea26cdc41ed70";
+      sha512 = "1074f26748385576f096927f230f4363fb28ee21da467392c23f26b912c6bbdea39d0d816ce60c8bae724b294e979f01662e25f9de9d9801c815bf3363bbce8c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/he/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/he/firefox-67.0b7.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "131be19a8eac0888c1718d3656fe67be0d400a50def8189e78dda181ec8775584803ac7ca640aa37b591dee814eb56bb3df375d6374c672a4d160bdc59052a6d";
+      sha512 = "9533939e4705ea4ab9b111fe4940c1e875824ac53b1856ad18c4a412f9f8d60d1befb3ce363ae128fb74ad1328504e7a34c20906862ff30e3b83f18535a49e1b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/hi-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/hi-IN/firefox-67.0b7.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "54fdfb3faa99f132853cd7875b3700a16391140d4a31910f853406b9bbdd35c1fd3a431410e5c99098deee9e7874d0ade58c67327d15de93546bec3b18070cb8";
+      sha512 = "af50bc6a8951e51babc5e9c5426205f218dca19833ce65baa6b7898a5b469c41129499d094ef8dc0759f34b09dbf25861dd32d97de934548c2713a81f8c253b7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/hr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/hr/firefox-67.0b7.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "80543d41613d61b2483c7db43cc806983f06f434d4efe1e9ce9144b804e0d4179f67b8a9f7ffb7dc507fbe80db47a1edfbe0b8af8f4d4824b751822f43de2de6";
+      sha512 = "dec21b5d230caf1c1be6e712bd926ed1eb6b74825ae0f07f7c6f39545d0419b71b57c404ecb897d11d9f54f08cebd236dd5d77d9ee1a64a900914fd9158cf4e6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/hsb/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/hsb/firefox-67.0b7.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "294480baa247e5f46c7dcf7ed461d196cf8bc5ecbc5df4446d57da65d786ac316090114e009ea79be19e102264e85d272ea5872e520d60c59a82251420ac5446";
+      sha512 = "023bde601d59f9daf8daefa1f9894ec43fbb96a7ebe5b31776a288c07105b3ee10b5972c5a676e04062acc81e8d850424b8e7aec6b8ac8d9194284641768934d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/hu/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/hu/firefox-67.0b7.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "cdeea61b7f62898a0f971502c7899bac5f7ff26a68a9747efc4a6e1004398ac9acb51d67610751183f3fea03a0df1b2153007d442080959409f57b357ebe7638";
+      sha512 = "d4fdad7244ba456012e36b64149ef5f3d52b5d139bee585b57a138556ef1f541908a24cd97a1bbd2ef2044852b9c3e7abcf0f634cfcc18a0b44765a3c78126ed";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/hy-AM/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/hy-AM/firefox-67.0b7.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "534ecf1e57b3679733302a115809c78440eb13d1a1ca0b89249df22680790975d1f1f055e38e77eb67019fb65a938bdc930df1619394ae4daa5eab3e10512439";
+      sha512 = "4443c51211b8d2874e4cc8dff770c87db4291465ac615d087a9852c81b256e47599fe1e87d24d2e3b0145d68e47e8f128158f89bb0d6bd9baa92615e3b79656c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ia/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ia/firefox-67.0b7.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "c4f0134a80b8489712e372371e09b2366f37cd35a7e51269f0a8a7a44693a0fae239e1e92312ada3f4a622ebe988752d8c616308a0c116964f4fa87478e9d099";
+      sha512 = "589f94f2b4c873fa43896b57148ca1a7e16038b71476050754a0a0374bf0abe97d9d8ca0208f0101568f9fc1cf441e439817106cc3d68f10a0a075fdd455f89b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/id/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/id/firefox-67.0b7.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "9477c048d306b30976e80d6e990d4352a157ffff76d036490dc6519d71b4c42586f5f5931c1127917ae33755f3d3f7526f6a8100d874646c2a3021c2a6801b09";
+      sha512 = "602f2fc520a61267f3b8ffe011d50b2e3c1abd4af0e805fdd7a1ace4adda69ce00cdc6b0feb26a46360711e6bf49c83bb33e01b0af5222a71456234119cdde5c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/is/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/is/firefox-67.0b7.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "81217b9057d40431f61a241bc5356d2fc4e7e111a8f9467847e60e9fb14c5865c477754571894f75213b8011b504d941fce6e2e6b5f419c18e8c985802108617";
+      sha512 = "162b3fa20530f59fe80e347f068bbd8d7d370a23ee2b3f4582c181ace473cdee06e9655ef08dd6bf514df728cd79935368bfab245110b6d143634be252f84e8f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/it/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/it/firefox-67.0b7.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "33ffd210e3258ae166f22d2ab6185a29ab4a6b27a52305bc46c24b2acb234ceadc39a648850557c8618ece107cd9158f55c092cfa0dd019db7475d2f62155593";
+      sha512 = "6887b97e91954598c0ac214b5c072ccb5669a200b5a38875b6dd1ea546b14de7dad9639c64b4b49d3039fddbae22ae7f58b0cd4f3e243c780a1a65ea831181a0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ja/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ja/firefox-67.0b7.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "b580d86e5edc343457396977319c4268d8c3f151d9c2ea335aab8b943967f2547fd6474bb7fee13c7da736997f2215e833d37478b3558a17cace07a195a982a3";
+      sha512 = "194911f101d7eba5a7ec2325a4b4accd27cc26c990255e73d9aaac9a281d40b6bc38091cf7cb138a6ff3ec083639a41b0aa2b005c39f1f89da79526ab3ff2349";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ka/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ka/firefox-67.0b7.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "0966a2ef7f5719394664bf3d6a3e05e725cf041f658a84b182cbd4a94478c2f88abef2cdf13af817effe22ad93a21233f8860717c61e061e11bf37c8d490efdf";
+      sha512 = "d8804f06b2dfbd57f316695d5dd5350e3057fcb2da4e3831b86b6aeef2e9b558d791f00ada3578ae1c7e51432643814c0394922e128fa8fe9da1604edc84ee1a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/kab/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/kab/firefox-67.0b7.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "6c6108336939a2f1bbdf09c4779a87844e9c8513496adb82a7d4a78c774685aa1b06ccfa2efd327be12ebe41bf6a86fd5b55dc6abc134b5fc1ee2447927cc234";
+      sha512 = "ee49177da5ff8b91458b1de3940494d7ac503b7c1b752fcea2b4d2f66d4bd8dcdcabfc5b898a34528ff02ae170adac3b48db4aed164d955c4e146df9275fe682";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/kk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/kk/firefox-67.0b7.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "1ed0deee8306c43c7901ea0cb20682de3f39fef337a5b6af80754426218809a8c6d9375bbd64163aa4846580b63bad8fc36f417bbae435fb10a8ecbccdf18b95";
+      sha512 = "04db9af4da7b10129d28d9a67dcbb233e2a77815f3bee3a8ab9f139020c0876c99c856b460ebeda07e3a5228e9c3943f75e22ce4f1d8a61ae20c143f7263862c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/km/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/km/firefox-67.0b7.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "0c4b85770b63cb3d23feb65e1652d8c0784892037be7595b117699a2014e30a3ac56e8ea025df301877d41240f9a60b9bbceb26b19059fc8fb6dabe12449f8eb";
+      sha512 = "2fdb978f01b44f81041bb3a829504634ddeef593568dc31bfba712d79b96c43d4d4aa95d8a989312cf758d72f54086cfbb0e6a4b1ed705c666b6da2e5b54dc7d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/kn/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/kn/firefox-67.0b7.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "5af2c4ba1e8733c18211c02dae32ab3223d25622fd4858e15e5b91bef6b88923462c1593b1ec83049640200b60edfcf378364bd1650640217aaa5752cb6f7c70";
+      sha512 = "04686a8b7ff088f1f65087c02c1dddd05005134a6d96d69b649364e4a93db2ae2ab0c1512d37141099d6aa41d6ed51aa26faa942c95cdb3cfb2eeb279d12e99a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ko/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ko/firefox-67.0b7.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "bba635f50877392506f3be5d5cbcf10ae314e1db09ba31bf0ab902bd002c2daf554dbbeaa7addc2f5796d1f16731e59179b856773a093765c95fbd0fe15bc72a";
+      sha512 = "a798b80f716300ea8211470db9583e326029eb46da217f9862d7deceb3c8f418f09e9a3a355a7ef0b8da3f502d6714571b7a3a0f0177fa5afc565d3df47b6cfc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/lij/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/lij/firefox-67.0b7.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "d2f309827de644d9305eae52c090f5a4ba152f8dcd97b1f8e7fe8279e9cb79f9eacf063886db2756eb9a6fc82c3c568c34b31caad10940f60a9d6c359f9011ad";
+      sha512 = "693ed9d8c28b7401606de9f2c45c93988861f1cd606b5d0d1f9bbff31f367c603f8761b24508ce3d1d5b533a6bd9555a33827b531859262201e6e187e60d5209";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/lt/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/lt/firefox-67.0b7.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "305f2f1736bfdd499018e0ca7c319c0340ade19d85e76d8993d33a083d11689760ab1a2a6bd721d3a96ad25695b013fc43cf27ecd625b1b91ddef7390c84405f";
+      sha512 = "291dea291f6bf2c9c0373f8c342e000cadd70ae2d4725c833e63bd99a5e0de5b8ced26d445787900086e55201123503ce850f9f3d481dd1fd05dccd5c66153e6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/lv/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/lv/firefox-67.0b7.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "66b0c9c1c0eb30385e2c5bb67a5535a86b98bcc834dc7e019cc0d5e85b7645eeffb822cd9720fc80e7815aa0ced526921097c5f112f554a3b3c072ec6c0b9839";
+      sha512 = "dca344e94c86ee0ede7f993696484eb576b54a71da7151be9ee40540d9c8c740d399840a5c024156660f2b9d6a73c6f086691df9e3b59dddd653d5a25a8ce1ba";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/mai/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/mai/firefox-67.0b7.tar.bz2";
       locale = "mai";
       arch = "linux-x86_64";
-      sha512 = "cf2210da8f1724306eda52d5c7d4c10aba3d586b564db1073596bef39652ec8dcffa7a660d733efe85dd5252a5055ef04bd69c7e89eecff72c38c56570e6ecfc";
+      sha512 = "ceb2a05d4c051e31fe1969787f4d2ac0e73714e45c233cf40045cd35ad751d84c064afab14ac58bb976140976a29b9da5d40c91c1bacd965624667c5fc62294d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/mk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/mk/firefox-67.0b7.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "46843427dad63ff55b5c28329ac4ac45c6d24862887e0b1da96ac1fb5c7b71a888f9c1678f7c2222fa974695b1b52b94c460d72e069e46ac1c832f315fe2c245";
+      sha512 = "ee1fa59d256e279c08a4110ec0f14e64f80dd2ca02ff01033bb29f0336e49118c07ec93b0ca8bc318356dc62fd05d9bf3201d9491ac278a8b5a836cf6310fe04";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ml/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ml/firefox-67.0b7.tar.bz2";
       locale = "ml";
       arch = "linux-x86_64";
-      sha512 = "86f33f7617702572c595149f32351fb55bd9cfd2849738e3bfc9dce00a93cb2225d9350f871e6ea4c2ead3fec95bb0f6e5e5abf8e43c9ee866320261f6b6252f";
+      sha512 = "477d66f1c875c53e678ccd64a666b64fafabb8b9cfc6cbb11dc33a14707d7a90758f8a42a855020f650e59b1f55373208c3cc96b69ecafc7ac3937eeca00c7ff";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/mr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/mr/firefox-67.0b7.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "53258dcb4942f05b09ee88e7cee441afbb40598ef295ad1aaaa54023b43fb670dc43e2f5e2c4e8cf6d22747e4ce3620ffa7d998f6bcf99a82d4c572bd275d726";
+      sha512 = "06cfe20c7756d6786a7cd94677f83aa82fb1cbe83245412d087f7ff06372af3dc9ce5d2f5017838d74cfce864e0405c5abec417924feb26fb9b9dd7298f833d0";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ms/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ms/firefox-67.0b7.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "3cfce6144383a66bd2c1d95bfb1303638d4c8daf037d50fc64a23c1471576e9d3a6252ead3e2df12963390b760f557f877b3f990106a14dab0c855b735cfe678";
+      sha512 = "d0bbe9e5d7dae906dd7140725873126d4583c7e31f3bf4a3d0a7716f5af46f5b5eb65aef3aee32e010e1a82ef59e279febfafb08458c43fe9e8751dd1ff68e81";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/my/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/my/firefox-67.0b7.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "c8fcef429d8c32fb181534231b6dced9254691bb7ff1b41feccf0d0d279332f548e91eee57146560d1f6d6563d196315f3825b40962e36d3b5c5127c064ea481";
+      sha512 = "073aae70db0f59630c16e13c91db7c2a7fdb8a11ccf56843fabe4d666751e27d369e1d57118a1e385b8586d3024ffb3c90f8f61d7bade807aedd6f74e92640b6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/nb-NO/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/nb-NO/firefox-67.0b7.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "ea5db18440da59a88b598b0f6a476c16a99b302a7c68c063e9ae7935454d7f8eef49d42edd2a15c7d4de1c23f1c4ddaf715f28d42422c72f64398efbfd89c5a2";
+      sha512 = "bf4c6affece8d031da249dfd113f1c2f7507a8b4473e03daf5a44e7c0ce71fe6caa4759f78ca954761f90bee06402f7f5b5a9f785c1785f973feb1294947e0d9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ne-NP/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ne-NP/firefox-67.0b7.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "af70e4841f1a88f6cb8d6c7d8c280438d8a4df7cc33a32228848101efe3e06d27e2f6d935c5a94de37dac79a4b0506c0c486b0c3e7ed38edc8d13ceb8c697c63";
+      sha512 = "16902e80be172af3bc8a2f02821d9e738864f593951619159a0c362cebf0a5827b1f3be9063c1429db8b1ad52aad8923db8053b6367d21bc97333ceda0899d25";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/nl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/nl/firefox-67.0b7.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "fcf421026b33dd00e3e755257b37d634f28857872c6918169cd1495832c4249bf31126349105eee573b2e591cdfe6cd3551b03b3e3476b5d882b3675029f4488";
+      sha512 = "1ba6650ba4140d4f32391f7e05577379a43ca5ddf064ac86c93c633bc1d78c6c84e6d5c4227577dbbaef4d5bae9173861295805e1cf559ac25fea434db2df578";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/nn-NO/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/nn-NO/firefox-67.0b7.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "1e7a6e228e2ddc9d761b5b5748e5c7946f17076c190175a782bc3976631692153a940d3ab3659ab9a5214a93563831fec61691aba516be8481b197ee5c84945b";
+      sha512 = "860030e55b0c514ec4219ec295a02f2ab344bb87e31292ca4ad11501c02e9eec3f1b82720b7c3d69c043ddc0a53fb9ff3e83b38d4e0443d57849d68bf98b0e05";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/oc/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/oc/firefox-67.0b7.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "3168e101e8c5ab1f681bc37d9e13fa80ac444a13eef275c2e8b97270f57cda4ece01d47c62145ba01f32c257412a6458c554f838e6a5f94879874771da6f2200";
+      sha512 = "33de39c5c495d0ceb5e1b65fe96458887d0a918681504c7c6a561359e29b82a7026673516a5afaf67717ecc0aedffa8acebc92b4002d160924e87d401e963ca3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/or/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/or/firefox-67.0b7.tar.bz2";
       locale = "or";
       arch = "linux-x86_64";
-      sha512 = "7cffa469fbb80f882fd26d177938ae874c3f6199c5f5d1c5fec01655800c0854aff5f1cdd6581a29a851317f82bb5ed67e250e2af574cfe43e3498c5cc31be73";
+      sha512 = "a1deaf9593ba66eb3e2e1a019ccc8a3b5c7455b0cd250d6be3708971406148404a3e10f3d67ca5ba39a25c92d27006d1196e11e12f8b8c5cca518d748b5c7841";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/pa-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/pa-IN/firefox-67.0b7.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "972a5d577feb6c43a35d728852a581112f7e617f05c859b8027bc00d01765da8ff9a8efa40750ea786fc845737ddaf12db912372c8438a3a4f01a39abebbcb42";
+      sha512 = "35df203d2c9a892b5cc4c9d12c10e7203f466c949f382074f550a45df54f670168713ac096ec085cb835f51f0790c9af2a88786d474a0dbcd6c8041d2a1a1244";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/pl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/pl/firefox-67.0b7.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "62d612019b6462647df32312f31b241938e436fbcdcebb4af9bd0060ff990b6d717bb0d9a511e6b38d0d34b5fd346a15475d576197a048487a0b890e0e0550a4";
+      sha512 = "81b08e3cc5e2b7dba6110ebd455431fc04df6a9bd54e15f5ccac9792b80133d9c8ca4b59746189d5dd752b48e4053ddb30dbfb01f3467617349eff8dd7de35f9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/pt-BR/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/pt-BR/firefox-67.0b7.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "1c82ef4401706826e82c42477aa288d7ce8e0133527f4c6b21ad30f507bd5b3044c2fd8a5503c5b6f784c366c8f47d29960eb5e95e4bcf07077491d14cd5ce9f";
+      sha512 = "821bdd23cb73437898dc2fe570ff5a108a2a862b2cfd97d1427cd235761c5d24f6db33dffc32c0080576c72a9f1b2def8c7d398bd3ee354d5097b58731d74ae5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/pt-PT/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/pt-PT/firefox-67.0b7.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "142f0a79261fdf6fc989814f941aa7c23443f84e2353f92fb23518b94a642d04255013c6565a952063f966e4976e1013561799c9c9ae13b6a0fe9ec4e084e07c";
+      sha512 = "611b13950d89e3c21a95c726afba58201f4be46bed6c16bf3c732400b15cea50860cbcefd98ad83ee864b8bad9e89e42b2bd075f448ee8d8eed352fdebe176d9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/rm/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/rm/firefox-67.0b7.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "0a5f903de81cee3d42f39f4047f8fac3ba09d8bc39c620b8ed91b5b9e6e95c9996d8982daa65cc7a64ea2118890b2df48290813ba16ccf769b30c3bf5202c7f9";
+      sha512 = "53cc28912e17b5302489f0f4a89fc4ab53edc319a8702158ee7ab0a0943b4c619ddb022a5549a0c4ee2912a98f5b695117a991bfde2f10a9036196298334a208";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ro/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ro/firefox-67.0b7.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "6d1fcc23ac8e8aaadaeff509039f2c2420125f45cb1c3d7a9ca8070dfe1084ddddbd95b5195c9ae370bfd801f16b5cd8060ea699e68cd7d3e08c4486d60af350";
+      sha512 = "50c753c9cd79bfe6d9b8564f64d275958b7e44823e4fa5575bbd784ce4cb4f7b1c3c71fa962a8a26f1ecbd1f2a12f108fc7505659be08063d0246ea29488a440";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ru/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ru/firefox-67.0b7.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "a27b6a1d331b870c2369fd88636c042c4f8eb6e1d5ead902a9308b55530c25d2ea07550c806ab4e023806c61e204ce175ae0d744b8d6b67f3edd28e1b09092e1";
+      sha512 = "d739ceef1bc6328ee17187e54e3910e1746d516f2e21f03319863a3d564be6ea348c87a8ea9f302b692c99b16c242578af15788082e121b857a1a089ef0c7549";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/si/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/si/firefox-67.0b7.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "b5db77c8cc860ab67fcbbd8d7666db1a8f4e6c51834bf4178d0c79023d46b95074b54f4e04d93373942ece875dcf3575ed4d56846dfc7aa9bd6e025120355a7b";
+      sha512 = "35a4cd2e1e324a0d8e78b679dc5b55b1bbbe2e73a9b37a65cdb24209d9eee5d52de59b3656f2fb65b6f2513fe4ef70027cfe5e9268a103df95510dc673eedbe7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/sk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/sk/firefox-67.0b7.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "f6fd2829ca5a1685922567db09c619b0ed85c03b37e7e14a12a2ec031999ad8873ffb78c49727562a72d73daf0fcbd497ba944b644f64e5759d9af16dfd9881a";
+      sha512 = "4ce6acf4dbf83010c726988eef0ba90fc1b54aa4213e4c335446d632dc99a4f9646954f45e4ed143a132802f10db8a68a6335ee4f855c65c4adfb02dbeca4443";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/sl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/sl/firefox-67.0b7.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "4e014c4e5ea0410986c4942efc93a02a87512b0744f65aa68e46572c22494f4e49031e56ff4e9c02cbd2bce7115adb19baf2692c84902a74949e80db8a2e83f6";
+      sha512 = "097dadda67b70b58244020b4a747dfb6a9a638552b2387ac3dec1130fab79e156bfbe0e4dc913e1669420dac827ef0efcb639560fd5366f8829e94456b2afb74";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/son/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/son/firefox-67.0b7.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "09e79df45a4cd207179e9588cfd106872b93209a19281c322992f01e427f7cb0f90ef3e232923a69042b149498eb0b5b7db4ada0937a50c65083884f29cb8b09";
+      sha512 = "c01e0d7d45bdc5eea290c939a906efe18720e4f1fc60dd33afb5252f59c90bf40e227f1392212cfb272efdda6c1ffda14ab617d02332610d0f890f886d053f0e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/sq/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/sq/firefox-67.0b7.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "e05ab4911a66c1c19dfe73a0097c5d11acbd5645ad71c44d2a7ee2c85845483a57f00f60f32cc39d6f5a2ee0c897671c9c994730c581d588c48091320b12a9e0";
+      sha512 = "68020ac5ad6035fef3d58990718f14cb4175a2962b850b8ba98cb5832a169cb72c4eab9036da693b93faeb601ac0f35ae23b80d748be0dfe4d0414b51571f6e6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/sr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/sr/firefox-67.0b7.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "0f9120b28b53c3a0a05dc112eb4979e28291de7447411c014719a0d922bf135aabdfb79f8e8ee35fdcbd751a103aa60cbe3fb7e42b5e376fdbc6c75cc7e81990";
+      sha512 = "ce18d0ba989949e79cda33eb4ac26a3d7588acbd511e57c9c31ef3a3f8011b7f669cff02e4b0405bb2615c18e600d75824fbd556519dcd09616fe27181f87748";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/sv-SE/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/sv-SE/firefox-67.0b7.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "d50930865c83fda9070d3392df4fa6bc2f76dcecc98dddc2251180f2ce070cfab5aa4c661e2a27311e94543dd00433113b1603e0c2d90d919d6d9819f2cebaa1";
+      sha512 = "96008e9c2ec4b8cc3bc646185a502cf26622d3f4f2d9b23ad02a963c5e4e5a1b98c1bc2bba342b0979c4b9e079c22a9130ab322d27d0d469afc02a41e8f3888c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ta/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ta/firefox-67.0b7.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "84813aec14978bef5a2fe13098269fb04bf55a182eb2d5ffbcf1420c60c446c7eb065be415c8f3872f0f360998fe129e46f9963f44150db3493fdbd0cd66f241";
+      sha512 = "e90c1bcb5326d3823ac6e8c0bbc1d3e98a5911f870d791af42a7f6aa539c95e267eca1248df03567f7e09853178c40c428b3cc04bbaf15553f1cdc028194c60d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/te/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/te/firefox-67.0b7.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "7b14527fad8437031f0bc3187c503c453c202fff3f011b0670ef356ff002da1706c1ddf25220835bc969609da64b8b7ebe7b2ae3eaf175797c57c8e118f52a1c";
+      sha512 = "a5a04abacc8afec69e4d865ed89f0f029b623cf24cf05d275ae79dd292d28e5fa000ee9fde4325144e2a7727d0be5929c9f7c30194eb802b35efcb2101422e84";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/th/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/th/firefox-67.0b7.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "0eb2d831439433e27ac572ab6e440748203ee2bdee2531281f5e33b42868194063cc0721eee86c4dd1b5e600d883513b739f8f75ea30acbe50d464d5e4e660d4";
+      sha512 = "1bfa1ee19141416707afd13594ad94da0e5ad5bf71ffe098109dd093624531a438df3dc3d4da603821d29e139a007923e367ce6ef55837169b49469ee030e752";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/tr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/tr/firefox-67.0b7.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "5324c7a9f1db368a4c944ae2d6fd2fac7b80d27638f7efb488f452f0c20746c264efbd4025eb959a0114b4f30bc02cf494d37ee9929aebfba29615a7ede2b9c7";
+      sha512 = "d89513130852096ec1bd685cf5072456035024e951dc9b6cace23ac8d9d51fba47465c3b76d96810bfbbb651188bc9a5ff082ec58771bacc6c9b1eb46d99ae37";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/uk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/uk/firefox-67.0b7.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "53f99d76e1381450c07c699e4549f15e6eb92e5f83e4a3be883c72693082e3eeea9a93dec4b2daa5268b4551846664c242bc029183e6ab8c651886a8e487cbf0";
+      sha512 = "382b333159efaa048cfa73d7e11874a00e4f34c48ab38c4263f49184d00e3f35a71cc21d11cb09b0e68c04e714d086aad30b346d91955fcbaeaadd968c29fba6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/ur/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/ur/firefox-67.0b7.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "50fd6cbd3a413f6bb3327a707ef59779eb0323bd28e0dfc842b30f9a42d78bc46be9807fc72e44ae8cfa1c9955efa4dd20be44fb3ea70189bff3e601a18c9a4a";
+      sha512 = "a620241d89b926eb1b42646a1d52e75f049191b711cca724ea1b6335ebf8c0773ffebe97cbc355396b21c16b7c322c8346029a64355ebdea2a5eef1e5329754c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/uz/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/uz/firefox-67.0b7.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "a77f509def0075f3ebea49f6f5834d5336c5a6d37c5282190fc3db04e833221a9195e098f7003ba18a8dfb0c86575f3ad801b4db77c3d59cdaae04d6407076b7";
+      sha512 = "d392eb81144e93fa11b7c85c6defab5eaba7585a93f5fa475531d2be73a65c546f3f88b24cd3370bf301c4f780e60a53bf68bdd480fd4a6785e9c1583e71da47";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/vi/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/vi/firefox-67.0b7.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "23e6dc916993b0925989d49b6fae3291002b4fe305d95c3984bad208ab6565ecbfe153b892855edc0b3189ff68e12597cf51e19d1b9b3473e1836ea6442f66c8";
+      sha512 = "7b4686deba1dd981e398f1bb6f192f828cb1cecccce6715c81cdbf5e89b4727cec214784a1920382e14c1091b20bff0919f74e1da8bfbb1a3568309801bf7a9a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/xh/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/xh/firefox-67.0b7.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "23d5b22f678dcc8f9157a66cb547d8593572e2e4a8df426fe2a411a4bdce72491a769e5a4fc1827c5e99b16103c7738eea221fc5a5d9e13b65e722056e3508b1";
+      sha512 = "63cc7b999aae85c46cc60b2cc0747a25e1d0663756938c329fc539a3e8ae04e43224051e066cd05bb38ba351f1ddf868d1651da94c0064d9715e5019b78496e8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/zh-CN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/zh-CN/firefox-67.0b7.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "3d1ba89ba92c09f9c29c9ecb946e36434236e84c42392534ae6f7aeb15fc267b7368f24598eaaedc8ee3a938c6071c89b73678fbc97e5983b625fbf69c8583e9";
+      sha512 = "1d902bbc7a703e7b541669c7f12427cbc74c01d784383409def1babd9907a93c53c32ee6c52d4c237b79bee69d005226580387a08e3ed51c1d685853637c34b6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-x86_64/zh-TW/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-x86_64/zh-TW/firefox-67.0b7.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "dba6bc4173b00ed5c9cef6bc7881a4cbb64af32d21cf05099a2832a98479cdc08780389970ef94e003a2a895bece74a444f78dd1833429d349954099ed7b466c";
+      sha512 = "cf8133b5330c4badbdbca14681226a3298e4bf4844ca2be6208f4fd7d3d209f4215b4a3a1b599d59b449e3c76808d71eec1705bec47c964b219212d4032ba1ca";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ach/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ach/firefox-67.0b7.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "edec732055469a0d9db953cd6a622e28129e6bc537a7c936b30c28816a7a79f6004faf4815bf5794f47ccac39d0c43d5c52d0d088cc8bf625eb57cb5df8e56e3";
+      sha512 = "c285920aa77f311451f3eb36991118072afd9d5fe863d88a49fecfb56549f1bada5ac364d457e7158a2c600b216cd5672775f87d85f3aaeb8fe648d19c8b7086";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/af/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/af/firefox-67.0b7.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "f7a6f355dad3bbc64fcfe9ded8d0e2f11bd8ecca9fefc40823bbbdf15fd28b63d3eb97597484c463e8704495286298536bf883aa07a0779bed704a544b899d2d";
+      sha512 = "335452fc21c6b25775b93ccdc1ada7ee9430ba9f4b6b8f6760a00477fc00a2bc1e68f318c0260cb3386dfb6ff5f1780293393f9f700f15b2013186d60735d789";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/an/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/an/firefox-67.0b7.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "f78556f850d9afc76418e78b684af8f1c85a9fb5c8636324c36f9859ceb9fe72cdec4fe652b326902ee3cdab54881859cdd7271906f085d687d56477f49359a1";
+      sha512 = "548e723fad381a772e48d8a60a2bbbf11fce50ca187fbf052d9fe153fe9c6c592769fdba4eb3c4b423ed9775497add0abc1ccf378e13ee4f069531fd0cc03e29";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ar/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ar/firefox-67.0b7.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "1d2ba213fb80aa3b9f2ee91f1744a5933b84d0b6803342e03d2c49dcb31be2694be27c13cf2a900f4297d62ad0b1cc44b43f72452d9cf79926db83baa7883d2b";
+      sha512 = "08834c2b950ec4fe06fe1fc3eb65e4701c01c08fdd91e59195053ae7638bf807a20346460ac9938590c5625e3e6845bab4205321e8d5e312fca69250eccf8303";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/as/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/as/firefox-67.0b7.tar.bz2";
       locale = "as";
       arch = "linux-i686";
-      sha512 = "2d05c7a47944d7b9be1fda11d6f170a4990afe047f0f437632e86b7763fc376d4e624e21a0324c6ffb0c497ece24e00641eaf2de6956a2f22100c3f5d974a62a";
+      sha512 = "9573895c11a55f34ea6e43e0f072119873a28c85478b144ad4822ce6632b09d2290a87db67957b3c306668ffae0bf2c5703d4e3ecdaf1ae77170dc9e28ffb2e7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ast/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ast/firefox-67.0b7.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "c3d09ca3d4c7f40a0ac0560341f8063aa982b9d65d2eaf5b236b4bf7eecf716cc72a7887cb1e7b7bc504fedbbe37c4c8cb4d48d0beaeb3667d68554152fbaa40";
+      sha512 = "be780b51079ed16aa62b00e0d116d8507f4cb858a22a5fba1e95d5f38c087b56b66e37a3ae50f4e2b5e5db6a5162762dc6cae94e9c07d263e38c480fabab50dc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/az/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/az/firefox-67.0b7.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "d7e6ca272bdae3d59cec97378564bc9d3c0bf9a19f3f2fbb17cd4af21bb2895da53fe884c715faa29b9e318391d571dc01303103e78037022500cde0e28ec990";
+      sha512 = "11c28539d558882835eae2c70e1dd72019eeea8892bc0062467e77b6a87208ad8d9ec3ce8b6e58037013f92e495db1bf611ab8e64ac69102c832952a021d018e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/be/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/be/firefox-67.0b7.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "021568f9f320840e1abdbcbac5b7dbcb96fdfaaec5e953209ad579ab6a974a796a7f7408505b0b273a0395c9ad8ef580a4535b44753c5b7cf3b7df6d7079f358";
+      sha512 = "2ba110389b2f416aad2d62e0b85ef2b99494be3add97908b8687243968cb44a6ac0057f0ffdb815ad7e93ea1d84e718163fb14839819efd9a4a38375595a9be1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/bg/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/bg/firefox-67.0b7.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "827430e8e99d9235dc75a28e39cc6a02b04c1f7d69a5c6beec57060619aebe5bd1feebb52315fcf31be510bc7788c72d732ca7e77ddd7aa862335e2f5aa14e2e";
+      sha512 = "e5793f784fa49d07714f9984a884dcf9685431e37453525f67c0263d991edf380fcd96e956f9d715dc4d32c790b5996ff23d7e759ba5849b91777e20cfea97fb";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/bn-BD/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/bn-BD/firefox-67.0b7.tar.bz2";
       locale = "bn-BD";
       arch = "linux-i686";
-      sha512 = "4dfc72172d4241fada52404097ca6c8418046ce3aa53bf56ac35dedffb2de14b45d8ca03d204c941074cd8c36ff035a11d5ce1afc8f63cddb0e0f24f9803485f";
+      sha512 = "80670cf579eaa7f7788a90ac4fea4e85a433324eb258d6d922a85585a9bf8fd8e3955343e4707a06e98f1c6ebf7881b0dabf4a9e4a3a8b503c2cb779d7a60c4b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/bn-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/bn-IN/firefox-67.0b7.tar.bz2";
       locale = "bn-IN";
       arch = "linux-i686";
-      sha512 = "47c5e0da01eeed8ab2fd74900060420d25454db563bd7eb5a00e828f07dfec6f4d4bb8cd79d40b12497694dce051ca0e8dc3a034d4e2bc69f93e79dfc44ec891";
+      sha512 = "bfdcb672b4bae1bb140867e82f3ec1ee8a431d076d337ebd44ba17bf532506672ed6631ee54d80dbfa0b7814b77099fed2de345620a94e14d63e7c59578ee01e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/br/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/br/firefox-67.0b7.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "080ffc5207c0b1fb82cf02d1377b126953be6c3d9d9e406471c4e24db75e43f6e3baec8ce7173499638a5dcc297b90013c12bf310f7f33004983ef39275583be";
+      sha512 = "275b32a715d433027b9a7132624358e47d35ac7f81cb43aab21d646aa7938ca7ee26aa67839fecabb556badf5a8bdf6656ff3df5fe9311452b9aa37aee34f98f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/bs/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/bs/firefox-67.0b7.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "7d24e13a08a1973788c63561dae2e5646db110442dd8a39fdd3716c1d6701493503706b402792f909a8f454ff2ddcf289919afb922909889efc5704e08d10565";
+      sha512 = "2684ad81e644ff26985c938fe88433b70e5f007b0fb767e361070376ce10cd81d179c96c500209316e5cd5dc239fb68080fccef04988014ee79caf4d7c480197";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ca/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ca/firefox-67.0b7.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "d255300de33c115560a71d470c082383d2d2fba907a90d316000ee96ef00945822a868ddfb4504bd5501fb71c2d3da20625108232ba0c00149e84117d29ca34e";
+      sha512 = "6cee8b8cf26e38e785387200d84792a01081981b3c2934d2f9d06ef50b26967d0098e1429b1af7cd819618f5079af2a7533060a886be5ff10db0bb108fecc68e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/cak/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/cak/firefox-67.0b7.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "05eb98b5cb0173aa0de1f0a683979ca6275b1bf905340bed1c3bb528269c5dc266d560c8ddcf53f96785d38c2ed54f872c81e5dfaa2831d844240feb7c8503a4";
+      sha512 = "a7f3963b020a074006fb6e367ad25b632899d14b915d35e64613a39fd0c185425063e92717bcbcd3138c05ff73e7734a84833c0065ad8655166a50aaee845946";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/cs/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/cs/firefox-67.0b7.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "ee75a3e8c5a9d806cb63e554f9575e589b648f3d53634dc86a843a9deb94f45537c4ec24d032ab2bf26b28c395093bbd3b6b6d0793739df34c753d14019b285c";
+      sha512 = "7ecce91b3fd5986aa58b51e24c46d3c689050a41e95bab3136589b660db1ea4509c93cab7bcfaf13b93ff533ddbc584fcdfde60a0b8d4485b937cfab9e98e64c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/cy/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/cy/firefox-67.0b7.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "d925d4806fcb022708949154d6ed39d095b0b8187bd17e3ad331f19fff5208432c1cf9a832c9e44ed05e7b76ce11cf4a56585bfe76bc76289a8318c3f622704e";
+      sha512 = "2f402c190177ed0aaf52923d003fe886403ed086d6ffcb0ccde9d0e9384168712da5aa7d7ddcd0730a0d6387a079c699226e039494667affb66d911882f20892";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/da/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/da/firefox-67.0b7.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "c0f5d65ca5f6d4598dd0cd216e5a8974d7759fd34b67d116fbaa9aa7489fa16867f7e1d0ec396640e0899212c8400d45f58961b2bdcca6fced91d27f69eebd0e";
+      sha512 = "7235f4293b950fa26aebf81726b00420db83e423a2d423569ed4d7754aee7fcbeae50b442ea831052220d9ed4c84d922b5a4658bb92a5bc6c27f57c4c0fecdb3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/de/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/de/firefox-67.0b7.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "0332b4828a391b2d0df5312582891aa01a0c8d2dd26dc17d05dd9f5e178fc481df2cad2a7705cc7ba54ba7c62c16c1c9d84b5e31f50e11e31e341419e040ce0f";
+      sha512 = "472bd0c3013a9e5b1ef96b30b1f5738a8c9bb63e76673bed6a45aa4c28dde3f1e5ed3cce16d18b47448c92f6129ebe22479480f24b9fa277f1b4ba1155ed11e5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/dsb/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/dsb/firefox-67.0b7.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "f4673ebe58a0f72dbc1ed995b3bbf198f53b446149e5a156ae420603b59bed18c2e201583ceef188d58ded2cfe06284209010a373656844dca5b2d43f2eec206";
+      sha512 = "b4c8001347555317bf5cbd89e29174700c025eb8f309a472126c572dd5b6c85384263264ed7a8ecda404faf632b9b2a3973a1b948f30c3e3b205bc42d6b17bcc";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/el/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/el/firefox-67.0b7.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "0f9b5872236e25e0d50130d7f2d68a8494f5781b74710e989fc50f9c641befbbf44ba086530964395fe555a8e785d6480c51add5f6ee76cd61fe5b7b0cbcd6e6";
+      sha512 = "de37aa7776c31e28c670fae321d7bde7d4be5024bf5e5494688aae1aae909ffd034b46004b0d816988cfcf03ce9ffa326a503882eebc6ed05a67df0bb3d89d68";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/en-CA/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/en-CA/firefox-67.0b7.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "87c5471f178c8b6a2a8495b68e85eba9b2071986256fdfa6a9bbb53452fe6abb7ff67fe69a2bee1fc7fc099bcbad20b5d8aef08c690e1cc833c1a7c14833d3c8";
+      sha512 = "95cbe469dbaa9627163fb989e6b366324a4005ddcddc5255735c95825c6cf116a6af12bbe4d44d1c6b55c824ae00e8b122020f261cd3f9e450cef25147b2bf15";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/en-GB/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/en-GB/firefox-67.0b7.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "d8e03f77489a56054d830327013f1d3e081d982977737e37425a77356ddca5413ff6b22cf1620caed7ff9a9959f881ca011d8cbab3e23963a6f6ab60439eae8a";
+      sha512 = "cbb468eb20d7bc4dfcfa229dc45e0fdbceed9d97830baa000642d7e740f1f28605de57112b54b75b1e08fcdb2a4e03cd7a7fcb3fbeaa4fae84ad57c1e564c506";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/en-US/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/en-US/firefox-67.0b7.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "43ee8c9cedd59c1d774d9ddd2ba5c4c0ec0cf70b9cb389791d729e31b49fe5f4fc42aa9685953f5a778b8a8a7ff8b6200fff24c452f7550fb33d311062d17dc1";
+      sha512 = "2ae29e73ab8f8dd068b5e09ed78b2473294f0791643adac77e1aa565149138b3e01b605f20f6b2e02a242d44e67bb5e036305631bcebdf2a15fbaf9931f011d8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/en-ZA/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/en-ZA/firefox-67.0b7.tar.bz2";
       locale = "en-ZA";
       arch = "linux-i686";
-      sha512 = "038536b6a059833cf617b8faa3617ea7f6807d323e2384f677554d388584e6239dc52dd89b71140e578e327adf085d5a40774bb96cac49d4eb5c13551f98e667";
+      sha512 = "b91e664151d3b2cffba5cf23be229540a72e1499b1329818f416f9437a3141a98de20b5ce17b2ee2b8c7f540e589a4f1bd9a949f03bfcdd8a8c00fe92b0f6cf7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/eo/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/eo/firefox-67.0b7.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "2d6c69e001455d4ec27629ed8e982465bc5dde5b063745eaac7c970cb5df7bcbd23d4b8178cecd4ef5080822902b2750b0fcfd6f4ef2cd787921f40193402869";
+      sha512 = "09eadcf32183d49b388d8c8aa1535349814ba42068f8325aa34351b6b4a51ec7e31d070ac836519e9d531bd29981913f5998cd83427b308b68f026cd27ba5fb3";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/es-AR/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/es-AR/firefox-67.0b7.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "d6d27a9ba475bdefbb617554f3bcff832c80edde7be8a10a7da97439fd57519fd75aa66b76fe82459a623daebbcc95a7ec70a311b79f439373817d7c2b905171";
+      sha512 = "792b7c4934e4e9cd0ebac9586919bd65a142230c0e88da7eb5e848c05b7a8e5d82a906815f448a4c618f0b068d3512c7170cf0e409cf0111b24a87eb1039dd47";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/es-CL/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/es-CL/firefox-67.0b7.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "d696f2e5f6404fcd9a8cf10180580ad6be7d44a8214f2f8d58bbd3540125d6a02cb051e205afc7101bf670d5c6db623384053d897c976367b609f6f404eb453c";
+      sha512 = "7729ac7e668023838ebb5790e0fe482f20926308e7701c51d010bc0680605967e7918ff572fd50961d749522fc15d8b48524b6f3b532428f2ad1bb3c341e0369";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/es-ES/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/es-ES/firefox-67.0b7.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "5b737602c3c3849f2a6f207ff521bfd4cb109581ba3ef2ed9da9de68f0982ad2ed2fe9ddcffab74fc812b54c1793005e51130d7019399bb16e5189001b9de384";
+      sha512 = "14cc974cf9cb588d35c9a426b38d747cdef83334a0f46de482588263e0c4dae0179821dc6dbe938ccf5c17ff8d2952665522e77b9dc7ce5a8a65ff8c2d2b8f12";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/es-MX/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/es-MX/firefox-67.0b7.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "2acdeae665f77542e07d9e909e114abbed8b05fa1e77a94eab479053b0b5dfcd3db80d35d53cb4bba8587466a8da1deccea808b305223b870c919516c191f735";
+      sha512 = "0eda6a4240bf8645af0d1f7396155cdf13d73091c5599c76876ecbc45972c3cdc6685d694aba41d42a7f50d49fcf4910a382f1afd210e88bd8b1e219cdf954c6";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/et/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/et/firefox-67.0b7.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "3bb8f23ec9d311d496af593bedf2fd00056cbc1500441f9a83332308b6175e0dbfcf35ecdd4d53e16127718c187ed8807fd5ac0bb7aef3027ed42e90c2f21a91";
+      sha512 = "6ef2f06a3549fb58bee6ac59f45b7758f40c3b76a16aebf2d2ad2bf602e4510883d0c28c941162e96d3694dff44628770f62682c5278bb09af30933442ac5baf";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/eu/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/eu/firefox-67.0b7.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "94f1a14d78ee9b9acd6ef7366687e3430a5e5eacc0719b2ad87d7e55cb8335b72a1b89c7c6219566b5be1715affc127ea1aea61c7cf7099d1318b2c03cc195cb";
+      sha512 = "38b323bdb16931abc8ee01b1e3e19e893d2eb830f55775e52e22cf8975b44eb67420d4b703fdb24cd221728c728b6b8f55d6476c9fb4a22324b9acf422d03d23";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/fa/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/fa/firefox-67.0b7.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "b3c29b7f445856246e70cf80b839d16b35263a3ceefe705cb3f44246c6e3a20b252759396c6130df80939506e9fbe19783bad168885b1e62a41d8b143ea59eff";
+      sha512 = "3211681e01a02745e800be7e7744b25c12c6c774efc2eb9e9167eb13e55a25512c6f8e9d5203967851310c38b9304d1c4556673ae305b782d274c2e8eec13d8f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ff/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ff/firefox-67.0b7.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "da82ffa93eb910f6e22b86e8bd8e7258b9c458e36bfb092d8ca91d7ceb080ab863016e5951b7a73c8af986fabda11bd5e35393df3202c765c9cb6640ade7ec84";
+      sha512 = "17a867cf3d51f59b740991cc70d235a55dcdec256913a461055c82f461f629e51fde1ff8931f6315507a1ae4f9d7e632e69a06303e720bad0d6ff853ea45f1d7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/fi/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/fi/firefox-67.0b7.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "f00df21343824dda6f1f3ef207efcbdabce4a1eb400fb98858a23a3236a0cda11fb0e5a49d2b615726d200b488357686d8bc1807b1f4eaefe5fa7b9d0fe08284";
+      sha512 = "9cbd9620e6ebbed8e02d3acd35967b1f797ac8ae141de45d4be5bc21b166ce6803b4b667b05de789c23f8326c652b2b978b5681dc84af49798d319019dc9bcf9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/fr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/fr/firefox-67.0b7.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "92090431ea5513582222d0f84e30c964f5291e177f52ec8285f5cbc117deca98b638f201441ba0195f94c5d6bb16d02ebd9200998457eaf1ddeaf83a54c70dd2";
+      sha512 = "e4cace463f0f87532274f1094c7e843eca07100541f300bdd092860dee986a87779e03bb960e4f6a06d652d93d0e667093c516614442277a9106a84cd8d9ca75";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/fy-NL/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/fy-NL/firefox-67.0b7.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "699c9c2107c5c1442e635eabb8f18c36050954d03e7bcd1b46f3a38214fd970f370294630200f31de864aaa98345b6d81f863e5258ea9b4088cc253d0bf6e1e7";
+      sha512 = "1cacbe08d3a059ced3397110fff471b5879e3eab9d2391383063638d62792c76432ef58be2b2c7d4e23bb72fa145a175ff228314c768a1fd3bb41b72df990b66";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ga-IE/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ga-IE/firefox-67.0b7.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "18899eabccaaa895cc84da3b179977f75653f1eb416a7add3a7b4d763498c3999c3ac8b477e4a4d28c806893a3a04037e3b9d43029b96e11f49a448982599a98";
+      sha512 = "c38de270ccf6b7ba5caf2ebb986c80a7d35996a3b7087816a2438e5dc8440819501eb08f9810c592c699b101693cea256c5265b37f51433558fade6030ecfc5a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/gd/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/gd/firefox-67.0b7.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "ed26f0255fb387cb122b3b951f6c7b4d86fd1d770efaac5af1c0dea71ae2627138b9e0d690ddbb5bab6dd2ac1f34e60b73056a35cce8e895e06cd099d2e1e8df";
+      sha512 = "57573946f74bce289e14e7b07d4056e3fe2b631480a6fe25d8c844a7e8e39c5be4e065d21540fe53bb798cd35cbc26839cfb238ace6c312c6a1b46e477f6116b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/gl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/gl/firefox-67.0b7.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "f814d398b77d90ec5ed3bdab7d056bbe6e6f45f0789d5f17cdaceecacd6027227d71427478c0f09b00fd6cb86adcbccbc20ed68ba2aa0bec9bdeb04db4e02338";
+      sha512 = "816c5bc6f70d211471d469c4c2e8492fbf314419a24be460ba9df68f1548f1051333864220d664214f830fb15bc9e19092de5e070c09dcb938674f93b7b05131";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/gn/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/gn/firefox-67.0b7.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "c16fe7ca563f9b22742e004b06c0e65c11db087c0f9ff745e1055a8a7e0418708f8aa958ffea9793a6b63c95154dd31c7620c34c038d095e35d35acbbc442555";
+      sha512 = "dc09910ccc01bbb19adb3d02ea593dc959912a704d43e23e734ffd9d7f9bd19338832786544dfecf2faede03a9560e10537073208c1c7f23e1078a876c6efa54";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/gu-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/gu-IN/firefox-67.0b7.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "9c317777703eb82e7bb36bc4499288e6444961ee972370b33d059de609940dc6415c1cd0e4345c7aec7628d72e56c805df4d754e7896f86675d59400db8a467c";
+      sha512 = "e2160344d5b59640c454f1387106c775a4c7b230db11b08748a6b5f253af9aee6656cc579068693e37c9c690a5cf21cd999d805c335b83f1b66f5d762387f8fd";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/he/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/he/firefox-67.0b7.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "ec308c970c79eefe955bc69f17003a330189244282d6c635c50db92667cc9bb2dc19be0dae84314fa93920e8fb99d05238e66d2c0a78ac0c5dc4527f690246f4";
+      sha512 = "0c2cdf90dcf41e0912eb13e11e0461d007dca9c78449bbbf674e672b47552f3210ffd14b80442781c5746a098098e31756828652cab0e347db020cc37c3f6f6a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/hi-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/hi-IN/firefox-67.0b7.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "b985b06e99b57160f74a73bf1a860071add5df0908dcb9930c8ba41d1fc99754f8e09628436efbc3b6fa68638991458db27ae99b3470615a1166becc09a2edbd";
+      sha512 = "0adb98dd37ddbfba3bc08ce59dd9f401fb00c6c5deb550b1a92baf2f2e42e4ab6aecc0f9ba3d35c57cefa3326f112bff351f4ff9a258369889565e4277445475";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/hr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/hr/firefox-67.0b7.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "2238427d7008991c47f949086cb02ed53f25ff9874e06b50e128be8b0852e9cdb229c666a68d4ea99e535411afceec9d44d0736ba10180af50276c661b0de77b";
+      sha512 = "86782b71427e4da1c30371e40a16d84b13b24e04358d812a41faa08fe7bf178241d44fa91922058554e959008e276d38dfd61f7389e0c9e44737979486f22718";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/hsb/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/hsb/firefox-67.0b7.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "c7f8ba3a9e147b5cff4045ff2d8a2f98999a5ace4e7e38906cd399858f2ce71d293cb2ec1be05e07b6f9ca3d2db0653b65985d4ac90cd701150db32b5902f678";
+      sha512 = "9ba1fe0695fd467d48c1fbe78423f0b91c962524762f1807b5778a9f81c6ff623cc6d4eba618a228ec182414e6e6823447b3992dab43176655fe8f90fc865c79";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/hu/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/hu/firefox-67.0b7.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "66b675adb57d1853efc58e220c9cea4785fca1ca9a1e136b37e50305847d03d787ade256a29a521092ba30c77a711c8051d09af661cc1fea70897a3814304fa4";
+      sha512 = "47d44fca671a44fe085bafc404992ca8c2b3fb2155c178c2cf38860e7105678077125487fcc459da3396157904fe6870e47bfbed09b4eaaddbb404715e2d098b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/hy-AM/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/hy-AM/firefox-67.0b7.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "b3f8a3f960bff7c2f3f81b819a97a7da7cb33352126ccb5c02c2825aa4a2ab8cf0ec71c4f9231f16634eda68e02be8c9aa5f9e1201c4d62ebf34fb03dd1f3a21";
+      sha512 = "72fab75e3cb0df96c2aa101475f1e66e5ad36473b400d4ea3efb1e14b22028a67303228b04fcf39221995ee3b18302d9d447b315c48401b8acd566d815bae60d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ia/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ia/firefox-67.0b7.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "22e183915ed085a99258869f46444804d8dcbfb4ab6f200b7894455dbe4744df82c04fc15b603dbaac0d267995e487d0615e2844249abd849565d2ee59da5904";
+      sha512 = "a057c3b8bf87fbda631206a6c2ba1398c18641b92093478f472e818f81dece057234c221322497eee68d33838f5dc99a6cadc92f157aa464802e92f08f7a5f20";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/id/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/id/firefox-67.0b7.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "61b353d4614b4ecae841270149fecac33ed5461ca50a9e005b58a852e0bc0927b849d49962e3650db8c7df8ef7dda6b0d7d5593a9b275930f04d1d5f95fbdb7e";
+      sha512 = "c9165eef8d41c5e72956beccac415fd4695178c465ecd81abe82fbc372826d8823056a1484e01442f883022182818e7c5154441c113519b2a918e1233346001c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/is/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/is/firefox-67.0b7.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "875fa8b0aa77724a91fefb614a022190f3f62ae87514eee765c3e6df52bc5ecf7b0f50bde11cd06c2eb424db1283347688963a151f3b391f1f1dbb4d9ea56b34";
+      sha512 = "b41810b6e4b5f28efe83aee464f5edee0784f24982198fc0b3e333b7a16d816504e8ad558e6298517695f06c3c7f87d7b98ad80e0baa6b10d748c57ec3fa8e5e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/it/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/it/firefox-67.0b7.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "52090824d82a32a9be79306e4a5f4ea0d212b1a23c85af46e4e5e251eb273db6a10455867340efa541fdc0185039b8dbd1f1ee8cbd291284dbee957cadc0a0b0";
+      sha512 = "a20c21d5249fdcd0e7c2bb62177046ac26fc6b0b87f53ed56511f44798fe6a99737851045de3dcd2f42db689b32853848d25df8cf2a8cf731853fdc23a191a7a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ja/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ja/firefox-67.0b7.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "c5f2280482c62a3fef44584e77f7d5f2b7e84868afe826070f7f28c17a1c3fb360c941641bbb8c5849e3380c64807db3c15dc89399b4bd8dea271e8b2c3c5ebf";
+      sha512 = "233574779b07c9173b160760dd1b229305b225e9b9580a680baa31a0f5b6b2133fe3013dd2f4cdabec3a1c930aa1def9f3ae687c4043cc9a4edb83ede83a353c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ka/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ka/firefox-67.0b7.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "d738c1d9cf5f453e5753f8948cf342bd12b138bad7f50daea3214762a18002da48a732752cb5df85bc360c58b56f5436a932e767c00091419a03dc6b65067411";
+      sha512 = "b1e3b26e05c527111888b5d683e040873c3dd324bf3d3c143e22abf1e55bfc4b43ccea09fdf05a58dd28710d5624b01529c1e341b963c13895caf2931c7048e4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/kab/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/kab/firefox-67.0b7.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "560974dc8f0ec5f21d6ae472e82bf4b8d1898d015da6a175a22d97b21cac589a0813c2089219b902161760ff9c44dfef06dfb9efaeaa7164cfa0099dad121cd4";
+      sha512 = "3f0a5dfe8701ac74fafd654607d40b3a258586bb7791823be84db682a84339ec1f0305212de9efc2754ec90ae7584a05c58c26d370090871af38e5ef8bbb95a2";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/kk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/kk/firefox-67.0b7.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "e29016346a9a2d31ebab3a20c4a38f1562a9b1520db29d84d611b3ee1bbcea78ddf834cc190fae56ada11df9e89ca3095a03c76c791ce7023a64971d74ba94f9";
+      sha512 = "55a39f67b34b21d3fb31b4dfbbde75af058ba32b1e5f666847d2d053743ae51cf0787a09959fdb8fd27df6daf38f801f7aa2c0c6ac4f64d8ecaac3d893242e5d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/km/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/km/firefox-67.0b7.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "56f911d18bd5b25d52ea5699ac9091ac48561115b9a4ea52e2b0c3264ba5cf760992b703657d700d00d0d3803328789371980d2bf7af602860a06fb028aed029";
+      sha512 = "e4fbc74ef0df4989b5776d3a5c526f323d2472f5a2460b539c120c54e3c3fb3cb8397e71126fef3cccbbe9326d2346195f08f415c49938dd65f63807894f67b1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/kn/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/kn/firefox-67.0b7.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "74b7298667567d260f49425112774c7d0648dbd50c05552d81a0a0fb17a9213b87e2858c1af09178b641fb9e83fa85e3066d9aa6c4ce47f37e255f1a45aa95ad";
+      sha512 = "5834427a79672c0e7538825e52eff561a7f018e763eab8755e295396f64315de968360ba4a8a039215dc80444d8e465a1d5ba7c11a60694b4ea16e7f0f340a77";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ko/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ko/firefox-67.0b7.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "0ae3c684c3307b68d493a98505b8f1b953bf09a3ecf72bb6fa975c3ecd0e18f15503ed870cfec490fa32b203655fd28eb15d2c1c3d1a0aadef4bf40e252b8e52";
+      sha512 = "9761f01f078d2cec24ac785c68c95588de533be04b4ab37184b01c677c98ffd70dbbc1d1550338253dc38edc884d51d134496cef70a05435a838edc0b5068990";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/lij/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/lij/firefox-67.0b7.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "d5c7bd4e302f4e2dd3a9140527aad89e3dfde8043d0b42cea1d7aaa084f9d2aef70c70d74de0c86658172bd005f8cd0c1e46a17322067a7f2813388e2897a868";
+      sha512 = "4b3bc0acb18d2a2f80a4a469882df2b72594357ef201f337996bbb3315c260ee503030620e9e42a823ebd8cdca531f63e9a94b9f52bfafb83a7cde1e520d0e3e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/lt/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/lt/firefox-67.0b7.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "1eccb336c06a6e0a2e45258331d9a1fc8a08da3b6a813f9b0c0e619c98eced2ec74d332035bd5bc836a87c338cc257dcf39cf43322024fd13b285bf489eec6e0";
+      sha512 = "5e9b8361dadc8df55055dbd15f4b2245cdb9acd7ddd7853417451246e59fd4b30b570c30acb2ed078cad3fc239f15218045ec99eb006c8702677ad289e73271e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/lv/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/lv/firefox-67.0b7.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "bbc4eec6b0a775a036c13f99da28d9f84c6b275c90ff9604df1477833720af10f224f44d753b70988237b13f8b8f30a0460080ae5c186c000d04e79abb871edd";
+      sha512 = "757428fc0c04f757c424da039bef8d7f4653bae24b1532c1bff55305a1f7be8063e9e4a01ea5034f7f2badbb5202bfcb82954cb39438c714dd97ed0b6af07f04";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/mai/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/mai/firefox-67.0b7.tar.bz2";
       locale = "mai";
       arch = "linux-i686";
-      sha512 = "5aecfeb26c218ee28683c41ead672d83420a29fd8833dfac1758dffa302128818d62be30e1995598c06945baae83a534c26ac3265fca9380d0dc69248e5977de";
+      sha512 = "451cb28d1aa9d8898827be4645eb32f49cdea09b493802c78c9b4316b22fef7cd99a46c1c07e2f06e7dec2415abb6bd3cc7b4075e54805a843aee852aeeb19ba";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/mk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/mk/firefox-67.0b7.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "3d544a8a671b884b6e32d75460d37b6eb1fb32d8c178f3c1ff7bcbbaf52a00934095f2e7cc757c43e85392ff41b9173bbfec049ff11deabcb3af8288f5ca68c5";
+      sha512 = "6ce5dc05deb1f2761a8a1d4703522b4b90fa6ceb1d7189818f0b22340d956664af1ec3b92c965bbc46889835e4403e1ba189b3c0bdea92e36a8aaf3061a3625b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ml/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ml/firefox-67.0b7.tar.bz2";
       locale = "ml";
       arch = "linux-i686";
-      sha512 = "a60bcbd2e07aa6b26e6c88c8c8cd73609ed0997499e34a4e832210345ab8e54ca087b0d25a2691df4c5e81994fb55f47d00f4fcf31f187766c165cecb88fbd24";
+      sha512 = "fc9a68806276cbc7e9b3b528d6b93075429aa8759722bac01575680e6f7e94914f51e44ba0968aa841631aa876bcf716a0f9c1cbafdea31adfc0dddf758a80c7";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/mr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/mr/firefox-67.0b7.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "d7146a0759b4b9f4a86b05d46d97cb9fb4c3902654ef9a72b2e2894e09725c9fec06988af24f4cacfffad208f8dd8b3d81661cf3b56f192c7c0d421b06d0f3fc";
+      sha512 = "0ecf5e23e5c2bcc32946e3e4672557224e0af6081f8280a9c1f49927bd9dec9b3ce4b445c800a8ae48e75a514e24beb2bc0e760f859bf1f5a6c0cf02c594a6c1";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ms/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ms/firefox-67.0b7.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "dffb810f78f9543a4adb004cb0978c16fe26ab0130b0bd96f421023573c752563ccb7f0fad592f35212fbf289a1a11f767830a73c6530ca3cd0409a2f9bb185b";
+      sha512 = "1adbb3d092dd0909f5ddaac58240dc587dc819fe8a64e5e5bd3a81ba2d7effb516ade1a37bf437c42803ebb9860b322917ee347b62d4ff1cee503f3432988923";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/my/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/my/firefox-67.0b7.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "1764a68ec37a63341fefa497f3143a00ef805659f1587b9afc71864b4dd59ecc99b24fe5479dcb41104dc4c63cd0ccd4dad64af9079deec7dff031c6391f48af";
+      sha512 = "c7f9549a94b511231bd0cd22e7705cec80548a52eaf8f4af5fc975d18e0ee504a2e7be5b4b06504d66cceab993dff4ecc37e014ddcd051ccd545ef19cffcec5e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/nb-NO/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/nb-NO/firefox-67.0b7.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "eb66af2f40d9764727a08786fe5518375e7540ad96d27cb94f272921846754e8e0652a8d251cc044b0e61361bb0b90f81cf262fef5917f7cc0243fa08b9d67e0";
+      sha512 = "a6129f1dd66cde5a9166ae180ca24d533f7b2ac463eff50276354f0db7eacf28f64d5df587e833342c1968fd3c4a1f9f91861907767e5ed0ff543c37da6925bb";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ne-NP/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ne-NP/firefox-67.0b7.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "1744bd86601013541a0edfdd04d4b3cb31ede3f9c509b527943324eaee49b4b1e41e3583a889161c7c39de4827a5ed57a50c5c34ab781616eee5b27a5b9dec65";
+      sha512 = "3281cac33c6dd97b497d2a10e4d4c9c60efd6d138ec9944d0d0e836629c036c7fb0c00cf84e27bd9bb7e443ddb6a69df4485a014930e2ba0a4ad8a224644a9c8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/nl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/nl/firefox-67.0b7.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "e41f60c1611191b74b1e4adc9c34993dcbe000643b7da3933715be53d3c5ecee88d4f88b3759db0f4c5fa328402b354c2d8bc2bac4029404cba3f0bd2eb4624b";
+      sha512 = "b54914b0b065514a0af1f469fd601b76bc8c30087d7a23d5466ab5c8a71e5ec31ff5293ec2b1a621d6c4ad64158144d0f0691682cf974b97cde011701a8a9fa8";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/nn-NO/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/nn-NO/firefox-67.0b7.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "9e78f2abfe4acf9174847efb4884b0e353ab515ef25fbd33c7c31c52f95aeb7c20e89189a5523a17066d51b7ad66e082adcadfe4dec559cf278618487c9fe985";
+      sha512 = "6790ce0522f6595447a9f3b7419255cab8f4635807f8e67d83095d37c89aeb4eef657aa8c1b9a3aaa436b06484872933e5b0a8a115e43f7fcf17381726653c2e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/oc/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/oc/firefox-67.0b7.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "34f41164ab80783d9d8bea8bf0869ca6d5cfebab75543a707be692206501b27bcb9715010e0111d1545c360b8a76d5101775cfc49f5a1d0c6c0041cb2f427d57";
+      sha512 = "418bef24367b311cd26d05e736b73127538297b5c2a672b9e3e4c2b1f81b92e04564f3722a41fb2fd05d712f7c848248d020a2040843e797f7ec7747fe274b53";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/or/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/or/firefox-67.0b7.tar.bz2";
       locale = "or";
       arch = "linux-i686";
-      sha512 = "c6b1f25b00589072cb0429697d9ef1afa3250521795b34f1a65e8ebd7490db238bdf954783cd30db2fd0010da61341514ef277063d1315ef38432b91432d3400";
+      sha512 = "50972ebf6d86827604b066ad175a6a16250225083ae7b66a27690d8c052da84899a382fe80ea7f329b0d79b826375e9a356f5660f0f19b106f9539ca4375d023";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/pa-IN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/pa-IN/firefox-67.0b7.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "8fb50efd68bd39c90e58783db2c70bf72de8cbeba3075501b3a68e3512e59d2135009981a8d97aad4de5567b6d0afaec682c5ecc7de4034d9061ca920d1e9f3f";
+      sha512 = "96a3cf9c11b1d1c77e3d51576229d046072fa44ca035bfae726e1dfcda696b0f78e5ee34a0d8372fc641245f41e685ce716be6a19bdeeafb0dd74a3aca5e089a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/pl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/pl/firefox-67.0b7.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "008aaca90764895b7bc3bc5ab7fedd7560805858711b68242ee453b452fe36ff92c3a8fb6b95af20f275e18c4802341da43a5c3a253d082f35a60aac16fbafa2";
+      sha512 = "5edef293b1d8140240d7621503032d6b28ab6ac6c481ee82c0252e7dfa8a24633e00401ad790a80165f8074a289a58125afa29d1133331aa38c6e6a1740b1261";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/pt-BR/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/pt-BR/firefox-67.0b7.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "8e2af026781619e6a161439b7830f69b20e54656b98b7479de4d780304547426760eb0535f99f8254318f3092ede2337aa3f15ada85d023cb4073f560499fc28";
+      sha512 = "f294b7fb5e2f2277ea5985e7441e9515a434ae45ec45b40e590e469720cedece0b5475e7f5249b8dd4aaf1d1dbf76a2150aa9a5bf53dc1e81042b9ebbd1956b9";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/pt-PT/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/pt-PT/firefox-67.0b7.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "566f931ef9d580ea448df801888fa9022a4790c78bd08cbac4a62eaf506ef9791ed11c2335b80494fa7b9d705eee9a3bfcdb17ef0f1397846273d8d52c9f44ed";
+      sha512 = "76e69887b1f6aad40164db1c7129ec0b80052dcb039a3e70ce7b5829d1f01e4a4006c028474cf101e59af61c0889f54f00351bdf94aed5d7929ffaa26625239f";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/rm/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/rm/firefox-67.0b7.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "5513a55aafd4d18c513195e6d42cc108b1ac8a4eedfeb229617692d7444cbdb7ee2ae3dbaecb5e7133c97142de8223ad6a44eac86c06f26a77c0c0e0eb76977c";
+      sha512 = "07a18b9c089cbd64eb4baca99a76cfe2358e2bc5b3e8e63e7ebff64c801218774fe6c50cdfad0d5317963db74d79fc7d65000ee68b87f31700ab54249e73c39c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ro/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ro/firefox-67.0b7.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "3f75b24431eaeb4bd42aee093dea0acbba89e07d835beda38a99ea1af3023991d80d0502d7b0c8860393a6d7c19d7a768be2e8a6820b26b24f592b8bea5a7130";
+      sha512 = "f9412dc6fe36f9c36d36c1ec3f9ea757a9401d0f111c2b95332c0c2fc64308969764d06df39c57ae457b924214c841843b9d64d42020920d83fffcfe2cb18834";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ru/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ru/firefox-67.0b7.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "aaf03f30b5369a668f09fb5b0f7d98804bb8158ae92abfe4d6f878b63c8996d3017fac5619eda34cf09a47f8b82ca8d1bd558d2ca2d22977db62207d01198f3c";
+      sha512 = "da5cc7a67b119d1b454ab5a6597bf697ec95411f32680971ad9ca0882d74b8008ca84d72878271379a7404ccba4f04b00f9d606ac157323d6cd33646bacea313";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/si/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/si/firefox-67.0b7.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "c1575904c1ecf14e6ab3c7602f24c338a0cbceecf826e361f667f75ba1eb4878932f08973ac0591067f5ea91439f698f95c76b690e6911b9d09e9ddbe74dc227";
+      sha512 = "31713c81b82debe496f6b94799f81f68390b5c8fef96024a5baa8e54ffc39d39fcd820683873abf3b6456b5e789e2b882a6f0dba9a64e145a79782013fef74b5";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/sk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/sk/firefox-67.0b7.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "2e2d1859f261fe8a7bbb47c77ec6ec8e9fdfbdede203b3f37ee7b7cd638208398ef96207b6d592d96d1e7a2b36fd88abea957f447e31ab42232ea17da56d9753";
+      sha512 = "0475c5ddde2f150fe2c2a62d6d62db80084f7bf37ec191e2b976d6fd5a0a0169d7c557cd1cf9ab56b0f666b84bea8a6d51510320e8aa75096b654b6b335be26a";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/sl/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/sl/firefox-67.0b7.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "098676a8eab68cb3217238007a520ea7bbd8a352202f29cd8e5af89a9c927edf5f7300574bee6960a39494171cd33088c732b9d1061cb6da13c0d700518d1745";
+      sha512 = "771f9c7a404a2a2cbcc754fbd26ed5a47d093da522c8270526f1ba31b0535a669beb7325d81b38f6667b8cf982c95cb5a8528bb80fe32b8e2770d45b1b3d2311";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/son/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/son/firefox-67.0b7.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "31b4d4aa2cf5a4e6d3699c78ae885f900aafa92d63e99dff5ea945e07ec413b3ac47437791e077dba7fc318312298fccabb2ff607094247cf50a2b467cb3dd1d";
+      sha512 = "b283f759743e0298bc9c0dbc82c524a6e997754cdf9aa57792ada118631635bd673559275e9e6cd270e49ecae57587082290d66f023f9dcbe1fe0ec5d2649644";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/sq/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/sq/firefox-67.0b7.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "fb228ff2c47673cb0bdfd6456178c40f2fdda05a201180c56f8f55ef9b619568ecef2a4d9a58710d8223e278fbcd3c525c8623e4018787990b4e8c23a117932e";
+      sha512 = "698a5dfe611fb2956d319b81b09886ebe511ad2f1e99bd6970de31498ed8f016edc3d136a9c3aeae42367cef09639b5ae9a22539560fc394bf93bc83d1344e3b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/sr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/sr/firefox-67.0b7.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "ec229dd8da411e27d2110c4adc22eb2a1e6f324b4cb41fd3e015b5d7c076d2d15e5c7b1119900267667381e68433a0da399e3016a9c50205cb6257edac53efcc";
+      sha512 = "a9c3b24129df77638866d9cd72afa5f72dd6181355174e40e0cf8ac2c1a1da87c9a60565e6d97863e50e14a76ccfe0110194ce2547f8297bcd89bf8cade4f24e";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/sv-SE/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/sv-SE/firefox-67.0b7.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "435955b0eafc6530ec62324259d9f1d938ba50c408f7be385a43bf9a65dc2034259484b15d2753fb71fd037f5d1b374ba69011212d3886d31df41e31075ada70";
+      sha512 = "e71cc0f01b4a9e279810523dcf98b43a9ef82a64769ee7cfde94896d0caed75a0bfda07cad1f0120d44b738f48a0998d090deb49a7e9395cfd0150e18d292c2c";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ta/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ta/firefox-67.0b7.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "004d2314b24427d3d1c9ecbe8431af17e52cf28154533c957399cf98ab2330cb264044af20aaa82c96000d02d70b36d7416d440135d3b06c9710c7b28fe761f1";
+      sha512 = "5c7948e1db8a8523591cfa598cf2b1971f01d7b8a79baeb932aee2aaa8ba8230aecf783bf7be8b27312599b8a59abceedd07cfa5e140e9107289e717efd77894";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/te/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/te/firefox-67.0b7.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "2a64f3e63de53b86ae35247424eb81f0997b61f4d2b4ace2e7e5748bd9897a3f0e692e407958d5b9037f6d77d40214114c84e2602cc23860f046f48b4194b503";
+      sha512 = "01c2e2103faa9b2bd22c6b3a9604433350095a8bcee430007114c440b765f091dd3adc28119c24c9024d70fdff1256220305ac8b4f66182e6fa9e5dd35c7c20d";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/th/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/th/firefox-67.0b7.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "afb72ed47b6c0b7b8ac34c30ae33cdd840fcab50382d3123407709d5a0e1e0ee91e3b58aa2028d9e35d43a5dc7cbda1a6e1bde705706d6e0aa3bd57161a5b940";
+      sha512 = "9782614b88612fb1bc669dc26a61d266fbf1a8613e3ad3cd1193482985c05f182343589589c24ff016ce4dd1c63c755348dbdb6a699cb2f093ea00f7a629e573";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/tr/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/tr/firefox-67.0b7.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "1359ebd9c24daa248194383090c36ff9f1f0d30eda8f228c9fb7bc3ec28db353292d70f0ca0e41aaf98f1cf1483527939bcd6ede3cc4e9dab881efe142a63d65";
+      sha512 = "4dacea29f57f6acedf30231d08d86d53afb88b055195a0c11a9f4e2598460900b3b20be4aa22a8fd5794de3f636a575a0e55815621dbeac4a2f7854399915767";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/uk/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/uk/firefox-67.0b7.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "5323a344773973ce752f259e9198f0f12582219e91d790831248adf3a9dda20d1efdb5fd016cddbcce9b71a80750a916360c28bde19f92f5804fd720f61ca98c";
+      sha512 = "3b92fc3c99366d332261c8cfe57a04fcbf285b5d5976e60da29a0844a30e9e15b1441cebfb8bda6dfc048f95ec233ee099042285effccd2d9fa10dc572b03e2b";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/ur/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/ur/firefox-67.0b7.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "1d1ccc64f63f1e5c5abafe252aeb04aa5b57e5103e55d2771c689aca5fa2933ad6ee0e0c099216eeee8bcbdded209c753eb1b80e49a9bcaaae158b7345dec559";
+      sha512 = "0194916cd60f933c5a8ac7738487b90584e2881cd45f51aa1fa81ccd410b0596623bdb880226247a943910add37342e54cccc9bd250e2091cadf871f26931ea4";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/uz/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/uz/firefox-67.0b7.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "fd603350c2072f1bc6648ae06a6838995e3ceb1d0c01604ea14ce97177a171853800ef38c4d53581a46602d95d5112bf5e34008cb0cd3726379e6f911621d424";
+      sha512 = "579779fe27dd2d30a5fe2498eba0e9227f0322f3533837dee60240cbfe98b68ba2b696984a110dd42f4a5b3c12110f61e33c38f7f489fa69a5c1c38280932466";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/vi/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/vi/firefox-67.0b7.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "27c88553d4a5b523afbf35e5d2da2b33591513e61ef4d2de2031e50f503e082dd24721e6b3553025d50a9f8a4ce4c7c6083afceb21ea01979bf79296c2265856";
+      sha512 = "d7f8699f2f172725095bacb2a7a9dda73d131933d308420a938b49a7cbdc0cb56e957573f9f8c46a909cc07184f848e98713390b1eea816e97cb6f4007179902";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/xh/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/xh/firefox-67.0b7.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "0716d2a37769de4703754f343d0be22f2d9c13415102ce2713ea210748be0969d740780852f1ce3078efeb496fe0fcf67e7bdd49896015a2bc1f5be466a91cb3";
+      sha512 = "4201fd07a57086607501c193ccab243a6a6e1758d349895ed1fcd3ef1142b450da16285881b9319bb63afe7f622e5cb7dbf68db27d17c6f21ab94920d5c8a305";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/zh-CN/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/zh-CN/firefox-67.0b7.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "a7054b5a8e3059d801087e655faaaa03aa44d4a95db8d742f25cb6205020378635cd8caffe8e0930dc36456a67192aa5a926c3d9fed79d33c2bbdc9e765769a3";
+      sha512 = "d0a35927d7fd6b6f72b21ad6c15533af13a478d8465f1eb39ef9ddf1dfeaf5653d097e59de410f97453f9b545b97b9b82f22973366efc3b03aff7603594f7edf";
     }
-    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b3/linux-i686/zh-TW/firefox-67.0b3.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/devedition/releases/67.0b7/linux-i686/zh-TW/firefox-67.0b7.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "3c59974d146c83594c4a553a5b0c60df95437bcf6120960125f92345c4918b7a3c51166711af495486ccd709391dfbc647b4f5461171a4cd6a468f2bcd7b439a";
+      sha512 = "f01bccf18cec3f201a9a69e167543de472d7dde86304539d6c17f093468d5197b0230ef4280a0b7af8d5a264485a69667fd81b458d85ab0bc7175aa80667d419";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index 3ce04e185051..d60cb4203501 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
@@ -1,995 +1,995 @@
 {
-  version = "66.0.1";
+  version = "66.0.2";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ach/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ach/firefox-66.0.2.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "71dae8969de79a910a0a058e0a3b98ae7c4dbb96f11ff503b7818c0746ededf51eaeee5cf28178bae09a969aa2ce62e2cb65415b59b97bb828a26411a1dce26d";
+      sha512 = "65f92c4efa17af90eee9c44add39c3b3cc0749a334043fbc56d24966979631248de2bc2f9f7978e97482a363528412bf38780d84955d8cd0edc05898dadc30dd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/af/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/af/firefox-66.0.2.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "03009e8f5edfa4c67390dd0091eeade5bea5a59e358d67f31bd73c80a1d439b73d2dd02930cd53d89b893e271a6d2ac71e9a9b96ec4c239a4233e947b9b25ad3";
+      sha512 = "06f8e60fda4ce450ffbdaf12dc95cbf3dd8ec7cc6b9bbc8ea76c144e800a17b96fbdbeb31c6f118a50b14ea7f55b5ff125380ce86b4ab2d2bdd05d5ec4e33881";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/an/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/an/firefox-66.0.2.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "8831213e8d1ef30e12905d99161bc6e24816bcbfe41b19d9dbd192ef777425abc383e4726e7744f961f701ca7b9ed708b45c7707799586635bd01e789c7c60c0";
+      sha512 = "9f3a0c73bcca0445ea9002e46c4d42d8ad2cc06419f663270cfcd4c6a57e1937530e6a1b0302648fcc7a64e5e3b7fe41424e56ba9c81a6726b556630f81165ec";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ar/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ar/firefox-66.0.2.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "cfb77c98cc68de702dec4f3a3f87a15eef642b7c793c1d16be37105282c693a4f610299720e79dd1c77b32832463c319195ec7d4179b907c081f4e9ff2e78b3e";
+      sha512 = "f9db879e2aedbc09f58a004a6b7e4836da8c0715367335028176c7051b831e5f88c9d7cacea91bcd3ecfe4f0c041f9f8d16c1a27ccffa9a89ed41b7dd3b4c472";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/as/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/as/firefox-66.0.2.tar.bz2";
       locale = "as";
       arch = "linux-x86_64";
-      sha512 = "da99215fdb304c3df816d35d8e14106d71d777c292604961ca234028603da4cfdd3650306125b5a9ef6cd799b3b939cadbb410efb0bd78d344e48efc76d31512";
+      sha512 = "3be820595d129db7cbe07d6500c9d9128a55adacf6f1d3d53fdec8d705453d9f94c53ff489de74805237024cd668f2c9568bc67fa2df686c3a4e7544a252b694";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ast/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ast/firefox-66.0.2.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "6b5635ca0142d20411c8285adfef867204b948280cd1195b5ef8e0c5a0bd81633fbdcf8f3a28bf6df73267ea4f7f861d6cad6b52178261950dac6bbb4a596a1c";
+      sha512 = "c04842ed940c442549504cb8b26610c00508fa1d7155cd690d43227b343816d8c780282d330ecfc2ce951a486f022adbe18ffa8008aa3a43c89b079af968b466";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/az/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/az/firefox-66.0.2.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "f91c6e4ed17028768acd4c5fe7b25b09b7547564ae98365c5b43610d02810417868088abf774e21d5d0195fa11dd6ac9a9a5e9837eb253dda95678dc469dc331";
+      sha512 = "2deb0ebfa3e2bb74c3c7f80c08b0323d81b38f9399037a3955fbb53e219850a8899ed19aff5b81188c3c8e4bbecb411ad046e0fbb5fe5834d5023935e1e10968";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/be/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/be/firefox-66.0.2.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "17a40ea56fedf1ffa6e5d99543d47512b52d810593cbc05b16b8a5a310f55a680086bc309afd34e8068dac15d1c5bb47d52611b18a0e679e3e0a3a6fe7d0e147";
+      sha512 = "c7012a19e0283cf0b7c45153f078eb9170447c95c62141bb1ea54516e363b11b306e1d7d89f673387ccac727b36caf51ead6dcbae3d290923eb05bc792c06187";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/bg/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/bg/firefox-66.0.2.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "7a063f35275c5011dc6f14cfdac043f33218f2bec68282db38020610cb79c1cc5cd3e3dd34becaf4e56c84ad457d71b9eb0e60374836ad7c62346c94f06c9b03";
+      sha512 = "b9e54ea4d35e4f2d53c8e87e86f1b4d245ca677279ad16ff4d10abb252801245c80666d977993739f14ecc6ee5d80e07abfdd0ebb096c71a65eec4fa7df3bbbc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/bn-BD/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/bn-BD/firefox-66.0.2.tar.bz2";
       locale = "bn-BD";
       arch = "linux-x86_64";
-      sha512 = "c2676a7034704eb6ff7df573681c1881781825dcd0e2a19ff69cc2228719689c48ae06d5edc2a985bd217bae3cd7da519cf2e6305a60717037f66c7050cfe157";
+      sha512 = "bf75162072dfafaebc0c02339d5e2697ebf27615cc7d902c0d2504e986592764293272573d23f5faee12dc253b8ec29fa994106fac21a8fe9f11cacff2b28fc0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/bn-IN/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/bn-IN/firefox-66.0.2.tar.bz2";
       locale = "bn-IN";
       arch = "linux-x86_64";
-      sha512 = "d89ab4a8070800d18e21be019937fef040345858058af71a33b240a62117e5968328d8ceefa7145664d5cae02e17b0ad6b1d0bd2f123559bd7a4e54c25d8fe18";
+      sha512 = "c7bc4d575ab66066c88a5cdfc65cdb958479973ba44a909609aaf71022a427b982918177c2ee80ce692030702191d02408d775d262882809583e2e057a7e7fb4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/br/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/br/firefox-66.0.2.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "13cc045c7bea3aa9efacef755a69272dde64e6724ce40b1d3fbfb1844a1dc5f3f2af8deb24d1547fcdbc1ef15b6264303a1b6ced13857a9573d268b64b2b5b8c";
+      sha512 = "3e929becf7b4ed961c5aef6627e6537b2f9ac71804e206a0a29d7b538dc53a09c7c8b018655846ee16caaa8d704082a5ae25d6b74ab2cf859d78ce58e8ee9617";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/bs/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/bs/firefox-66.0.2.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "68b06e9fc95a29e1b9ca576bef036e9965c7892dfd68bef6e8df3aea0df9879d246d4a00e720ebd9255553daa7c9fb43fe7a1f8f6b7521a54b84e22be2a343b4";
+      sha512 = "13f7240e1c27a7223e37b1fea9885f75969857857e880cb960059039e39fdd5d22100fd693a213cd5e471aa112ae05a9eef3a5a26d277e2b83286769d1333920";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ca/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ca/firefox-66.0.2.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "56766f1b05a5755a90cece9924f53429a99adc44c37b616511cf0bb8103478872ea72fdab3757c430cf4ee4f4f23498b9d8ccc9fba6d67e532d9ea08edba5675";
+      sha512 = "c9ca70971a8ce500c12fabcb4b13f6ee92d3ea55c7db4936fd5be238217af7541b7d87b6d61355d91ef44a0aa98f584d76e99b80fa42eb43da6da12548170942";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/cak/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/cak/firefox-66.0.2.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "6066a3a3c12403ff0d88bfbab1bc28a29037b3843c8d78596ff0749a559494393c28d2961180d321c2579f545fa80c37d2243f66d63537d2aa4f7ebd08a99fbb";
+      sha512 = "3496530d20164aaa8af56e72b294d9e68139bf3c8140a7d94647d0deb802f4dea7801643ea08dda69546e8bacecd29ab1bbee7854eddd3c4dd8d931d902f865c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/cs/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/cs/firefox-66.0.2.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "43a9df354525c665eec2976ed4269e195daaabaf44e2e84f28a43fe0f4fabb6f934d90f797b2746049a1a6fa275a251896f40cf9cb0db9e77c9082b116924c0b";
+      sha512 = "065e44c11789e2c12bb1a1ae4aa67d986c8e718ee964108d8bb9697050c534ce01ef0d1c9b00eb03b28a55a31ed7ba7741fc7fb692a09c1b8512f4f4f2d77d7e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/cy/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/cy/firefox-66.0.2.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "c839c90bef23661f5cc08b1c7aeda9a24c8e5d99117aabe56492d5bb536ddeac92deae2fa7671a2b92d8925bbfb44d89eecd78c9553dff8b2396010f9162dc9e";
+      sha512 = "824263895aaf97000efe2bd59345ddfb4e3f056fb15f93c7c211f001c3921c83d736b8c03c68fcf7b2a35560b12f6581b0df30e9382ccd3d725839d9385b0f8e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/da/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/da/firefox-66.0.2.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "605d674016fdd0724a1305ac1bab2d8070beaf51cffb09c06fd26d464e36fc4a97206746a835bd55d4f80c8f5c8c1f271343598000e77c6036105db65ba064d8";
+      sha512 = "8804542db2d736139718e45e5e549be9981469d4e68d7f6ce0a362289f8ab72994983309dfe1c6c0d1d73694b3b9bd726c13c62048397d8c865717596939bda1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/de/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/de/firefox-66.0.2.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "1c1ba73482b994d696bd7a37e52e999add6f9bb884e968730ba18b98e1c0f1067bc58fabe90223dbbf4145806939ba113abdd1e2203678cd5c3c4a938d7e3df9";
+      sha512 = "44e233c9023d574c0c9a24ac12e91311327b513d790efaddc76d46c869ca6297087039201e4b886575509e78cf9c4a6a18cc898d866e85aea5790dfab8674987";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/dsb/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/dsb/firefox-66.0.2.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "df2d9ea94b7cc8f2e0097d2cda51c1446b7574e0ba2d915cb86201bb75f91f6cd736e28fc136202883a56f835ccc3450077d1ef3a0039b1d26826d66e4408e6f";
+      sha512 = "4d5b87e5310655138f3300a0c6aae55bdd7a8bff419ca1798ffabf54340eb61981d48d17ad8bc9ca396271ed8e57afdb4cca0e1954a66daa8588cc2f954b8d44";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/el/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/el/firefox-66.0.2.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "563a3af598c733d758e593a31b11382352704eeeb649ec9bc98e7e66acebe11c37600b25dc55a8fa5dc0e5993ac97d2967af3d0a87acbe54f898d4e2462affde";
+      sha512 = "add0ed575851a65218361802a597fbcd26cfee5fea3bd76f15c32f0045eace55a65158aa56d50039d1fd5866a34fb3eac091c3746f69ef6529fb6fa5abccb095";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/en-CA/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/en-CA/firefox-66.0.2.tar.bz2";
       locale = "en-CA";
       arch = "linux-x86_64";
-      sha512 = "a8a1fae65e41d30b78488cbf2dce60fe6f4070abf6ad2066e72d6d123bd69b80939d2d9a50759a07236633e0e66199d568b4690c041013770ae1d3a0eb10f230";
+      sha512 = "f02ea6b747a8f3753de493820e21d0b61ab7ca6aa5de7d5b8fbdf9481ccf59d9ce79b3622b10ea13ceddb329d9369a857fbc972932f6b08c25bb9d5177ee4108";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/en-GB/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/en-GB/firefox-66.0.2.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "5a78853680bacb1769076117c5db0760cd714802f4d69fa571b52743bf5cfb66f2a22c344b71c6cde90df5f3a9ba7ae9a68e0ade747ab90ed4cb06541388353b";
+      sha512 = "0afeab9506114ccc8f64299633e19382c1038cef090d7a257a6cbf2b4d89986111c72b7273c7c803d870d05a9456cc8e761d2527d17220f8d70c97738068936d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/en-US/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/en-US/firefox-66.0.2.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "cc49ba1ac399dfb573bf691184d49f080b475b29473657989df35b1220f0bc66c4146d6fef6088f924cf58fa8cb22908a041e15fb027cea88f3e38b6f9fb3e3c";
+      sha512 = "ee23f32f5efe24652a21a32e23d39bf3ea566a9833352b99a051e56da2b9156852d36e922e8afd08c4910bb8e921d1a4e0f49d3dd34d7e0b369584572d7e62a2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/en-ZA/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/en-ZA/firefox-66.0.2.tar.bz2";
       locale = "en-ZA";
       arch = "linux-x86_64";
-      sha512 = "88a7b7003d6896cde106befb505c54e1c652e32432f4aede6d325f9580e613728b1a9522a86149f31aa027c8e639bca5baacdacb49b12c852b6c024b95778851";
+      sha512 = "1165fe055f78c7cf6f7771869dfe710b7d55836a6ad3c09697252dbd7e79f9f597cb97cf733f1268b59f6823f2d456ec8b0af13fbe3c68cb3df8a08a57bab95d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/eo/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/eo/firefox-66.0.2.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "d8b2d0600660efecd59b208d5872d450e66227b50510e67247715b47969ae9999f74813a4142aabfa7d51e725eb5ec5e043f151fd48a925466fdf708b259b3cc";
+      sha512 = "d3d5fd7ac3b89e21d857fd94273f1df7c1118f5be25c294b38cbcf0a6594afd51fd58a164df04e93aa991fea44e51c7fc974d44213ebde1f2415cc43cb242af8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/es-AR/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/es-AR/firefox-66.0.2.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "22362e1bfd29febced992d431bae2a1f9ae929d296d13a44b2fed70040776f89ab651b522eb3171a71d87947f9eea3a13dfabf0cbf35bc44ec346e9c0e9903b6";
+      sha512 = "77332230576e3babcb71b9ca74c14266733fed67a370d7adac8f0bdabaf16358a1ee7188211a3590cfd02a7cbc06e5e125b20f0f68468f3900e94d332a39ef3f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/es-CL/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/es-CL/firefox-66.0.2.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "9edb4071302ea0b8fe7b669fe39c305257ff8d70c3483a8ddfa7f104df33fd68522d993b2d61511649f8c10c7c65270d81e50e2b78b0f5313a232725c5e63876";
+      sha512 = "0a28e64b356f9deba612365ad615f2a5e5d0654ee20e4361ea7959e791faf60aa116f3bd3e451af88cb6738cb815b78cfd26e44c012d03aa624bad4e1257dd00";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/es-ES/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/es-ES/firefox-66.0.2.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "58b7bd746c99df977813547aa40dd0e762fd509c0c5d279620cbc3eecd133e647c451bdde75b3ee588d08247054a6eb7aaaca62520b4a319bd893ee50d82814f";
+      sha512 = "90b18eadcfa5099785d0b46203866e575c4f065f9e70d133393caf5a1551c0f3e22051e274875e6b039b310f2b230e8c85af38eea722e50b357ab3eaf338f9e1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/es-MX/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/es-MX/firefox-66.0.2.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "99d935a84faef492ff90916df69ce3873c34d3bf52eae3070b5aaf6faec3ca21b7d1368a7eca0e3749abd6716fdbe668ba9b3d0411330c1ffcbb384e8eecb153";
+      sha512 = "ae8bb311cae77f2bbb103a2221c42cdb26699c258fe077f0a5871068b66c8ca3cf0df5fdfc6ef58bd5ff91fbebdf519c7f319c9e1a6702cef9fc260c6788fd57";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/et/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/et/firefox-66.0.2.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "f254877741061e688dcd20d2af8ad28e4bf055de203da5b4bd2f339b6fd076adc43610c359023b2bbc977bec79b431884e377dd671fbc3fca64db41d90137e4d";
+      sha512 = "45d48243b86ee2601368ff1a14e918aee4e5f02d3b2e6a8fc2b5f6c97ee76d7b2caad0131863a192651049e099688b3aa27308e121ed49cfc11a012c71978ae5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/eu/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/eu/firefox-66.0.2.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "87cd272e8985f1cf09452488bf66e3abd8d6a34be327a2fcc9f6a43a3aac82637eab2f3f4ffefe8c04f4ecdb6b6fae751201ab81c7a69ee9fc5e0cb876c1988d";
+      sha512 = "9357f45c6c484adafd58a204a233c2620e3493aff2b5a1cae16dd8ca7f73003fb6f6d01bcfa8924c499a3052ac6a5aaeb7dfc0cca3d7a664a12219fd5b57b4e5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/fa/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/fa/firefox-66.0.2.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "7db6fa0900c79051463cdfc88ef9b6983751c5e3709b5980204beac82418099e41226e6b56020f6c04680b44dcab0a384e17a99e9bc7b9aa052c020152f8fb4e";
+      sha512 = "72d81059001c37edcfbc2e994bff4f9c2dff57fff85a562d389789b8752931a898bfa058225b66868e17db9333449399d23f0043b1c4c102a92739f90e61be40";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ff/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ff/firefox-66.0.2.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "3907e1b8561e6347190c8ff142467c936e03466eaeabb94bafcbe7cb36b087ceb7031228e6145bffe805f60ac0e91e8afbb02e4074e1f41dcf6811c7369114d9";
+      sha512 = "fdd14ec7cc8be41fcfd9f2013fd9ed032c119a34cba51642fa3c18cd8ae8ac138859218985a6481d0ac5aa974b226b550eec0f99ea1c62ef65da8c17ad019f22";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/fi/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/fi/firefox-66.0.2.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "d23444590edd8b601468c2e85af06e0a86e1b2b582509b6acc4326b4d50140b6ab999d8882b9d7d85625cb465d05d0dd1a8a9be441ac0ca8bf43615fe65649f1";
+      sha512 = "fe15c43cff8159abe81ae0f51569d5aa4185d7583d92086491d694792c46b10520f77e187dc75379fbbe432da78d869172502e8b8fd6542f3f4d2641cc6df402";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/fr/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/fr/firefox-66.0.2.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "04bbea906fcf4412b07bb6d3d5921b69e12de1da3e5578a0e79df123cb37a3711a765c63ee5666f2e88ea1e2af0d478c9d5e3645f42f40382fdf8d83e92591ed";
+      sha512 = "9125d6bd70290423cc9913146707a50accd43ac1f05ec58257e41805d7a052fcadb25629926e0b20d53c2553476d58b9691f48f59538e68aa7b661ff655c6ca3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/fy-NL/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/fy-NL/firefox-66.0.2.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "cbc5c6c0d71fcde09d2840d27cd431314c3c08673006fd49180d0541816916322109ed164fb2e2184175671db6a6119ef5bfd5f412f7d84f6b878cb6bc3c07aa";
+      sha512 = "b4d4ef0ecee7e0b0f8b429b7cb48641f6d8fecd89962587e5daee7ad43d18ef99c6a03292624ce634c1630f147626df6dc76713f3f9187b63a4ac501180979d1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ga-IE/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ga-IE/firefox-66.0.2.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "92054f32b778ce5314d7bc42c2adb07a7a022b65fb2bc3d6134d8d67506bdb1c021de8754b6694ab062b7c502dcd0b602c82573d4ab885d3c69f8281aca0d0ae";
+      sha512 = "ec94b0dd54d36a78f7ab05901f22eb93c963b48e57b49253f3a3de6a7fe04de227f856fb82c4414d264143bffab5789a9eb3882f8d2dfa8ed6bc0c7d757e2602";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/gd/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/gd/firefox-66.0.2.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "c802e33554d8c2fac9ba30f161ade9d1b6ecf9fe5eef98d493db16a7dcb2e853e83d8d49a42b30dcbf8fa6f2690bd21f057b48dde8ddc4cdad6c0578b02680aa";
+      sha512 = "e283b895cdcb60d5cab1cdcbf64022306e2f7617b880c386096d800c634469f45543802f489a6160eaf531fb35e744d78b806990a776df27a150f06e479d4297";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/gl/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/gl/firefox-66.0.2.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "6abad8c99f7d92b01675bcb401e47d9891702b9684991f174fd93a444729f36305feb529069c5c8ef6e118a076758ad413bb30e921ebfae8358c6646a65dd633";
+      sha512 = "4db9cd8584f30e75e30545803d8dffa935fb75a2f091d20d213f3cf7a55ade3e406d066142d7c4444fe0ef9309f265320caebe07b669c253685c1a0fa4319e91";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/gn/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/gn/firefox-66.0.2.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "27778127fad911b707567f8e1d7f50d16ba56a0287641551aec7d2692b4754be26e0f2592f4a805dc83cf91fd314f0481f5db3c23c682f6dda3fcce8fbcd6fb1";
+      sha512 = "73a5bd92ce989a62f060ae5be5993188b186b26ce3c818b14366d1fd1da09059d02e30ca239a32b74a4cbe2116c3965e5301ce42c2fa08b5af554b399b4cd6e3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/gu-IN/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/gu-IN/firefox-66.0.2.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "6dbea6ab774b16ee9e07442fa50f32ceb2f9828596c8c523a2f47289fbbbbc30546ddb208128163c9de9800d8cd89c598a321454d8d5f58773ea896688459e37";
+      sha512 = "628e0460eddc0b748cb6968d096836a9e88e44ea43facde7b2969a7c262ced4aad51d97f335bd3ea26b378c102b131411d1de0322d618ed47025092647f02e99";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/he/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/he/firefox-66.0.2.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "4a9a836b6dc45ecd69e7b9868f7bcf50c7e9c0d06d2cb2ffaf68cd89a78dee35deb70ad6668dc584ab8cddb05bad421129b525294ec880b4b8b5cc1bed19ea92";
+      sha512 = "315ec2d0af7bf39dd4aff5f7f3ed41b24d9726b3b02003d282dee80f7ab785cedab0ee0d47ef004c5b30407b72228bbc84ae21882268ae34210d5e5cdd9a3be6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/hi-IN/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/hi-IN/firefox-66.0.2.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "7a76a3190102d36ca570131b6e480b5c3e5bb5f4c0fa794db04aebae6fc5d85f6cde9ffec3242f5e87c5d5e3c3ed0d0eea1083593f4cbef286cea708da9b0ff1";
+      sha512 = "63edbdae70206aacd70b777e551a2d2af8226c304f3d8c3052436749f71556f4a8f1d11a941f6918878de3d33491a0bbbd198da80780f7aae8a70acd1b8495ea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/hr/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/hr/firefox-66.0.2.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "0b959d874a690a1cb77fb9d06f797a1b6b51b4b76e0506da310e77427f3bc47f33b3738c24a2576fe381b8bad3c95861e1c5456395f9b77317764ab81c40fbc0";
+      sha512 = "e65fce5ab014392710f9dfd4460db1748cc04f9b36e91d358bea411aec32494717956ff4268c19a3263ee296f52e24a9c9d83cd210f82fb090c1e4df7ac77cf1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/hsb/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/hsb/firefox-66.0.2.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "48a9225e25668779ff7f56c4292166464c702c7316d255d8060143e9902050472b617762852e2faf7b1e405e097c65cb8bf85c1fceda876082766b6443b5911e";
+      sha512 = "c0b164a380f86a90489a201c0e4fe5fed6eb5461a90ebe2b241beb8eeeb6680f10963e589dc52ee1568d9e25989514fbf8ba80c53c1cbb6c2fa931bede95e674";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/hu/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/hu/firefox-66.0.2.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "8115eb6cffb227930c3e42955f4f705ef5898485d568e064058372ddafae7005fd13d5a591f974f01b6ace7deb3196d52e8d2214d57db59ab69ff792df51c9e8";
+      sha512 = "6535c5b15f2321d8b69e6c59fd06b5029611e9b06bb4cc967741aa6edd9eba734f84776a35b6c76ea181481c965fcb452fafed80ea07973e9d6d5ce1cea01005";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/hy-AM/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/hy-AM/firefox-66.0.2.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "39984fc44453d1ff2d430d33401ec76c6272d25aaf5026236a2053393a63fd467ead1a3af1fc5e59fdbafb56314cb16b46aa601e1a9843fe62bbf5a060558e59";
+      sha512 = "af9091a8868031fbc840a00bf584f5c8d868db0b308bb7f492a2257a16ac0c52bfac9da77b07bc4a575ca05854e58c8b892d4b989e199b50d66a4cfb5cf2f2dd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ia/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ia/firefox-66.0.2.tar.bz2";
       locale = "ia";
       arch = "linux-x86_64";
-      sha512 = "93c248257b11bd9f06fa9125366dda8d7b11929e53935b7eb522f9ea26f3315bbe36482cfdda7f4d5af9d8c6276f14fbea1650168e54e82ebb030c7f7959cc25";
+      sha512 = "50a73f0d3260ba21698c59a1a806e47a8329d2f20bd1983d3201de4c0f85599698b0afb5c42239aa8b88bb3e1becd1eaee26643088f55b51b4c3830bde4828e8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/id/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/id/firefox-66.0.2.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "89944b1e65f3a2e88629c4ca27112a78e1e3e597eb67ff7dd1bad9359177f6a59b47ab8eb3846a4abd1f22a0675f6915ef95af580c27a19b57a69757c8da9ae8";
+      sha512 = "e77b80bd36b21bea3c614c4e1b72d41b9fcccd24be0487b98ddb3d94db53ec703cea8103c1d5dd6f037eba8158aa1a3b9f22ae076f7acd9bd8d5b3743c56d7d3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/is/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/is/firefox-66.0.2.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "e1eb5f27ec01e8404056faede53f691cd9159cfbec6e41aae3914d07c31925f24659b0a4f086223beb4d294fcc9fa6a7587fa71677f46fea60c696a541b502be";
+      sha512 = "9b3ee06f79c82ee4215f5a046102e0da4280e89948f5c15b3b8f7cec512b722f6015ee00fa961f2424fa3eaa9d05eb97bfa4514833c8607f8c856fc1ec15e719";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/it/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/it/firefox-66.0.2.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "c8cf1e4e60df22cfe20fbb549dd7830622cd183ac09bfc3123aa48f0079805d17c2210a0680d4722e7daa322dcad11ef06d2098cd51d5eca5060d8cbbc78b5b8";
+      sha512 = "4d03f5c013142361bac168ddc1f1b3195e6e095d281eeea6129d917ccb41007ad7d1c16ac30c49047c3b620ac4e89e6af69fe3ec2b614bb2e6f647e303ee6dd3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ja/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ja/firefox-66.0.2.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "7c884be074ebddc9e8a1540006726a620eaf3533331a18cf40847cf86c270b009a89b976d57f3b7e6bd450b3a1fc5cde86f72ce94069b4199fb1aafa953bde65";
+      sha512 = "5cc48652dc4a23c5fa8f41568cc0a51da5fb6039a5235f6cce79362958b5b7ad0f04ef6d8d832d4d60c39b7802bc87e6e95f2803f2d07a98f7a66ee87e49a2d9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ka/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ka/firefox-66.0.2.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "30c4bcf5c087b09338358d0bf92a990d6637307dafbdfbda8a72290b1851a3eeba595f66d2b245a47e2e789b7b27c3631ecb337847c3b4e9ad28f34549dc9115";
+      sha512 = "50277cf7e49d986746bf2075db7b4de1fba6a793731a82d7b53669cf9b8bc6a4036413611a20700a5e6cb91fc61be8189f86dc47e61a9c493cba17719f668c11";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/kab/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/kab/firefox-66.0.2.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "2da34bd09264883010a038d975a4d09a63a530460c2b94034e16eee3912e9f014253f88273c395a5a59c33e4d058b08165ac8ffec6c92bd4fbc6b368d283dd74";
+      sha512 = "df71955a1ef801b49e86de2be14a9a1cdb325a45a8f9424829fc3333841b9019cc927aff9c7ece78b1e9e7df77f88cd899737dfa856a08e0440a6212acc8b9aa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/kk/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/kk/firefox-66.0.2.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "3ea8a42ca879af580659f796fcc6ccbb23de9a66c26f8e37e207aee22de7090a8d68a33671a8d1429e35026be14d099d9fbc33aafb74ea6d31c2d213b01353f8";
+      sha512 = "ca589dc0d215d8b470f36b05312ad016c523fe4ebb54e37220ad1322e99b5ebf8a3874bce6d131ad6f7ff1008ff29d23393b347dd216bbb0776077a54f84b664";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/km/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/km/firefox-66.0.2.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "d150a56fbe7f7bcc7e5a28d13c0ce1e1ed6ad832ca9c1c07a9ee160482ff91f3ced62d6c78dda587e13020706fb5ea9d269393dada2a47412e95fae69347f24f";
+      sha512 = "46d8788fe845ebf00bfb7c69122e74c5345295aecce61d2903cb55fc85830378aff0280c297082f88a681c393c948a07593c402faeb25c2f22c301207087d930";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/kn/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/kn/firefox-66.0.2.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "f75b51e80863b44773cd4b31d8c75045635f019c907283c765d891dcb9c6867f6c6d25a3ca00a7645128adaa73545b20c0e31bfd1779b099c59d9448ef3f61e5";
+      sha512 = "97fa909c1d3468c17a122e248758fca50a8979ea7cb964dcfddaa17804abf56b62af730665efdd45e9cf617f4ec3f238e6ffd9977a64ee42eb4dddbcf7fbffe9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ko/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ko/firefox-66.0.2.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "db9be13d844555eb6ceb746f5e75a76ec93e84de5f357819a0b999a1132239ef0cf3e4977cf6ad327b6a1989b9fd62460dd46d64bb6965b9808cf4f5712cd1f9";
+      sha512 = "56c3d254ff64554180a1fc6e968a653ecbf8e31403f37f211cc9a41fae9a51b21260d5804ab8c6a36c1feb2b479e55b3c568a46609b3bbd56ad05d47c6ecbe76";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/lij/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/lij/firefox-66.0.2.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "8a56eaaaf84bd81df323490673add48b69132d6fa1c0ffbb3b3d39bc9a0269630f2e825332566446135356ed0ca9a456e05183e3d3330b8103ea622c2c66a1cc";
+      sha512 = "ed2eb3aa60089cbaf3d606959bb8b6f5cc80b0baa466796fa1e2587558bb0e1f62445760f2ecc93f83394a246555660e8fd253dc621ffb3f3ae55817e368d630";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/lt/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/lt/firefox-66.0.2.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "b84fe666bde98a53feaa0475d31351f792b9e470b3486749d8fe261e86993b4fcf782049503542ec0ae9a980a458044b86ffe16c0dbdaa43c67a9cd267219dc1";
+      sha512 = "b22a7db91c29a934dd1ec57bcc77869cd28baa6884e61b25c2b84e4dff5fac9d55e0a7e38f1e8301383644799e5dae8b7fa330d554a9309ef0b58a6bac5ca964";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/lv/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/lv/firefox-66.0.2.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "ac0257115ea022c29098747337839fdf9cbec003bb0eebf56ab9b20ef0dbe25f0215bad4c9d55cc0178b0ec6f062d6578305d866f4eaaccf31557a23e336474a";
+      sha512 = "77bd42fe4966a7dffdf34470cd5657aba9aee81157a78a98a20b0200d71d11162058dfdb9d5a96f9d6648b0513cea3b5c97c8e59e169fe8e955e81c4578ac3bf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/mai/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/mai/firefox-66.0.2.tar.bz2";
       locale = "mai";
       arch = "linux-x86_64";
-      sha512 = "8299cabbbf37683afe6c5b085b9ec86277f2242beb42abf152872a738c9acfb6a43dd9876781567c4d9d4aa5168611c30feceb80a732daaf51564af4b689530c";
+      sha512 = "c110e1559f8f9972b4696c8ee463f813d5088d1babc62333060debf77eac52e7d5b96733bc82c8ffe22aeccfb30c076bba204dbd87890763f3e538a41e2fa414";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/mk/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/mk/firefox-66.0.2.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "e66020b52a450bc9afec362e77b12a1e718eb3bc709fe1b903919bb5a3d0644cd6b4c6e024c059308adbc123a034d26e72d9ddcd6e2ded47d3dfa66abe05d297";
+      sha512 = "57cfad52e649aa43add6f3d908c2f45005bb1e6cd298bd7158e4ed62013c0de053169e5f52ef4c4e0c5521a7b952b26a3cee8ebb088ef26f769a76d025f6f9ec";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ml/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ml/firefox-66.0.2.tar.bz2";
       locale = "ml";
       arch = "linux-x86_64";
-      sha512 = "79458132dccec478d2eeec5b0824a46ebd715f010a7aca412c7cde67dd4f42d374f503858f3548eba839f2cdb7b37343a3466621a4e0c6dad4f10c65c237cca4";
+      sha512 = "df9c00947fba8e813895dab7f31d284187482a640d880841093e2638ae04c8f12bd8239a35dfd5d5ede4a219300306ef449295431eaa1e3480510b1e63a7e281";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/mr/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/mr/firefox-66.0.2.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "be68b4e0148faea1b9f4d20cdd3e6f8ca638a0988d31bdd8150ce5f6c2d436e2616dbdd196a900ec218e93dbaf657c0ec984da01bbe6ee7ec620f0fc149e1aad";
+      sha512 = "4afff5982f466eacb86b1a429e68a17c9cbbb9d7a6e59b3ca7eb33341fec9ce904a4289911a0f39f52d4e8eaa5996c3db97d1887209558238f241847a9f941ad";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ms/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ms/firefox-66.0.2.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "101031f8ad298b3e09a905e66a6e61334081f97ac703c1b93e38431be5acd0f667e8a6906663dda2f671db998ee4c180bf749b685fd204b03b4575223e02852b";
+      sha512 = "ba2b33574bebd9f34a0503f5c651837a3ea278eff635d486f99102e3f25c3130dc496debbd40d7268af3aa37d2b69a7b572eb7b794c44049bde1492e60b2c534";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/my/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/my/firefox-66.0.2.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "c63150470385ea9ea7957fec28f06069a2f5683de2fcedbae8550d3efb9a78aa60e78932960c820774f65e6bf0a99ab770465fe4c34c837983601aa4a4f1abaf";
+      sha512 = "bb5480f0d995512f274eab70ec18160714559f5dc36c937dd4fedea483c2c42964765863c696bf44f1bfd3491b706e14ac223817f1f97553c3968c6c8843a71c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/nb-NO/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/nb-NO/firefox-66.0.2.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "7f06bcd3f3d3f410bdd89ae750d4951d4d464d71846b46e25cebc5c256196582844863ff6126784628b6f00bd9e49ddc64b88f8a8caec42746c09a15e898970b";
+      sha512 = "cee130f0e6a4a18612b8e90fddbf923456deea6d8ba452a01b06b03e637c14b4131160f3bddf9f4feee05a5a675150c917e891b02c04a42234cda6229de12122";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ne-NP/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ne-NP/firefox-66.0.2.tar.bz2";
       locale = "ne-NP";
       arch = "linux-x86_64";
-      sha512 = "e68b0d57bee14ee3ee73a29215bdad547ee77b506e3bf2bab4b1691ea0bb02e1fa9002c9aae07a139df4bd1a454e506cc2f98cb81f7d58969fc1d57123f81c02";
+      sha512 = "cc75630facb9471172e2419d0addc02b1afde95fbf43a53afca63bb6af353adc3dcf45ca7199daeb6e2db312c48ccdffe520b09d316f195f614f5922831791ac";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/nl/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/nl/firefox-66.0.2.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "09828f604f72821d0ac109f05d17cd5119045ff40adf9cf5d2c4a29da707e83b8628dabc3b4e75eda40494b386c60eb20fbcaf9686eda2edab874ac298636848";
+      sha512 = "8e45b9250267a95f583744c94dad0c7bcdc7c00e2dbb1d91efb8b8e56b1f2bff81037936eb840f68e83433590b26a1db18cebbe1dc2ce1f2bae05b65099492d0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/nn-NO/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/nn-NO/firefox-66.0.2.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "ebbbe599e2331a0f0016cfbf598cc3b7deaa9a377dcc4ed00dd6b92adb74b264eff35d9d110362bfc4c290a2a4193915d5e863bda8f5799c0ea502418814faef";
+      sha512 = "689c3ab0d66991573990ff8a3e1e7e7d878addc15609b4cab2b97faff6e8fe44513183f03dd3d23c22795e80e4028f18d2c329cd14f7e7808e784e02a1bc8aff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/oc/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/oc/firefox-66.0.2.tar.bz2";
       locale = "oc";
       arch = "linux-x86_64";
-      sha512 = "36f75eaf0bca5a298aa0cbb641d3da21a772f543a9f7ef4646f2cbfc64fdae0d9495402d6cdad326a1e5628dea3b6b36632a431acf2736a558b3c191cd5f6dda";
+      sha512 = "834d098342739e99bbb2ab1dcee997bfcd433d357962e25bc5ecf3026e2f41525c19b9d11ccf2ca0705590d23f8a13ab316f41a90e1d605dfd284421f502a6f1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/or/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/or/firefox-66.0.2.tar.bz2";
       locale = "or";
       arch = "linux-x86_64";
-      sha512 = "2306c620846dca4dc23f004d1504f305897cc35d6cc43dff9e9e56fb51006ae29acba257a4c2d580903d65366838a3f5d1138b99be9e305e350577079c4d4e49";
+      sha512 = "62a696155aa25b6cc62885f15d29988b50b9a4e8d127ff259759b948be0c6b73eb99237116c188b5a46c638525e5890768a6d3978e9a1fad5a1748b917f2ea7b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/pa-IN/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/pa-IN/firefox-66.0.2.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "b308ed0b2176ed89b4c42221096161ff9c2e445312924b3b192e41dd96cf47c7a51273be6772e1eac75f3cd0b26c0ee10d56d6148f4e1c09a40ca1a3bdcf279b";
+      sha512 = "cc5a35cfba0b96a5d526196b2c56eba9a2cbf75d5bdf564bf85dbc6676849505c62f8e6d8c8a88cc5e6cb7f67d8670878dfe05a074d28bf895790efe7aacf404";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/pl/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/pl/firefox-66.0.2.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "e4484053fb90cafe00134ee7cf348afbab2d0a2373d93afc7532b054b029bfdf97c79147d2252f8fb88f914c2218aef6042ecb81615c4e495112d1705b4fb4f5";
+      sha512 = "1549a76ead00ecff081580f1fc77b31c3c7f57aa9d2a7a24231cdfd20f5ec12803ad61b04bfd1693a571f51e18ee9f29d51b5f60361ea5c5fcf7764b04ff102e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/pt-BR/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/pt-BR/firefox-66.0.2.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "5799eb14edb50b40755b79724edfc5e59fbb9f458ea50ef467798f49fc6bb128eb41f1aca6e402c1e8b3fc93a3d588a7ab845cb262db883373538442a8a363f2";
+      sha512 = "fec6c531e4ccdfce86c461744e4ffac4238ccb3c1e4134c09828e3bb171561241f9e683a2cfdb22dc45f674c03b0d59b212a242ac4344be2a74dca7bcc39ccd4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/pt-PT/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/pt-PT/firefox-66.0.2.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "853d7fca6ec8cc49911a36eddb7500c03d6da1487a2116a1371184a2d17d6e22f8b28c4079eade46ec90cb42ac6be68d5cad9015d5b458f635a88d7272124105";
+      sha512 = "ffb01c1fe171dd86c86617ecf752b196ccf48f6aa117ed86447a741fe82adb00fb908f2f7e01fbea57f6a2cd9c3dc603da47838e61c28a2e1e56a03df9497e80";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/rm/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/rm/firefox-66.0.2.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "97a5438562da5de2b212890cd447227e5bb68caeb7d149941eb6064e5f89a15e17f8455134d0b441b6efa63c369452431ac211664d684870c90e416ddc4b2ac4";
+      sha512 = "941cb0cf6f67146216553804629001f317f0c3ca4c3cd9525cca819a73aac72b31bf62ed6efc550301b870916f2e697dca6d840d7495c1276a9a031e5c173ef6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ro/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ro/firefox-66.0.2.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "aa7a2838a893a968c04765f240bb423cf53e7e05e1f2271f25310e3ce456f40e170d580db78835a45f25a85008da1b9446191871e5345c6091e1be11004fb3ac";
+      sha512 = "53586bc5d4420435005fdb0f920fd4d7812dbe381119ca2f97c91cf60191c794070f301c4b65903fa3dcdba7045636e868cbda8f3e1e20592c226b38b6a51a84";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ru/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ru/firefox-66.0.2.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "bb6e0d8ea567b685a43a3a15a592708ef7f42c97cef0da0673c8e466aa67a6b7d254d2916fa205fa44a88fccf4016a37749a1e56b62e7f4ee8558a662878242a";
+      sha512 = "efa1e8b1c63dfccb1bcd04c943e21cc7529de39ac710d1224588cb9f6e47bb0d600457e49510deb924bb9de32bb61c4aceb027a803e47c75b40f8b00c95bac69";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/si/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/si/firefox-66.0.2.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "32a9c6c8af556ec052711c09d9b52ecfe9156556f4ec5afff65019f50f9dc108af9505fa6c67208034b90bc73b997749f829de913de901265f352778619886ec";
+      sha512 = "cf38f59d72961e3adf56ffcdde2cda6923b2fb09fbed09b3eb5b3bc843905773dafcbab858fbf50328e22f7b36c580d1e6ffe4481827cea006f1901fc04c9899";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/sk/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/sk/firefox-66.0.2.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "adcbeaf8216a056948f74ccf970b6ba1effa127efb0f9b024757ce313f047293feacf96418e1078082a7cd8ca769515f5e59fcf2b3195b762869d4563e8ef3ce";
+      sha512 = "e05c3b45a25ac44d3c6b46dcfb9214fb9c2e40453bf041352e10d6790ccc43a9523c541fa0aba473301b4a0298b74e6e74ee399cd65bcdb59dfdd1b2390d3fdd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/sl/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/sl/firefox-66.0.2.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "3a57061b607496fbc74305afd1dc531ec33d02f6486582faa6718b7b8d8f7feaa6f909c9f666da1276073ebeb44d550fd100389a9ab5acc8c5836395c36249b7";
+      sha512 = "2c1728a9f4f2754d8381aae570c61be4806725ed5913e16bec06d871f101454218e9165daf323d496d94ca3ada1e83e69d2b7947641082a70b99f98844d06650";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/son/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/son/firefox-66.0.2.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "2f13498703df28fc45eeb072edf2432099501a14ce4f4b2066b12b791ecc2585d965da79152c631dee0d29158135ccec1d302494683172aace10949b08b5506e";
+      sha512 = "b3752b9ae75efe0c9eca05f17bb5b9d9e62f92c6ed3fe2602c278f0c2c5e2916400eb1b077054612f21e63c0c26752ec2f03cc34820ff95e4e2d8efe66e15804";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/sq/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/sq/firefox-66.0.2.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "3b64ca5c46299cc324e3d75d5d76e111a3851048c98a1705647b853514c7e891977bef5388ec88098248d582446d01515685ba66e9edc4d9d20dc7e103f8996c";
+      sha512 = "056f6c4a5547057ed8ff3cbaa77d270e5ebb6d315aeabea9d552690eaa6f7c9a5365cddb5c5eedd07b1fcbad64b3bbadc9390c886656650018dd2cb690a29acc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/sr/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/sr/firefox-66.0.2.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "b3645ab35a9953c90593fa2d1ec1eac57eb539e856b68061f68aca42d5b872506a188186fa227d3059cd5ab023124bd47679451e231009d863496420e4914b5a";
+      sha512 = "aa8e8164be5f6c3d40af39807b8f20a4cc5dcbe2230156c60ba92c635b828a40d93918484350e27046464ed67cd3fc4e87ab8bbb0ff4d2594f7d916caa9b6806";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/sv-SE/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/sv-SE/firefox-66.0.2.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "ec46567d475bed5cd26eb4011196b4a14f234ba6b260a8389d7709d637bb445e2dafd99f5fe93213a8a19055f11d565196879e006cb132c8b9f41631e6783573";
+      sha512 = "81936ab4ac5f876eea54a833c2f6c447a74ecb3636461b0334f4126f890aac36dfa77eabd9e16e8f9943ff40fc9a862ff2b1e2f3b3ed1eab51a6beb5516f55da";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ta/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ta/firefox-66.0.2.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "203233bf73aed33693654a8318126c60fe8693d209a0892def59ff7cc3f67e0d1c3ab4433f030f7ddfd844137fb260b0f49e4b20016bfed9f76fbfe2fac2f088";
+      sha512 = "0537cfad54bec863b83e27a7a36c8fe5126cf704c6a5dcab3d4319a55b27533d66ed98b43a664ee3513b2e8e0cc96fd56126d4045a93db7487e76ecfad967250";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/te/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/te/firefox-66.0.2.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "ae3c3e5aa9af5a99ef9964b5c901b8433aa8ede65941492855cb4bcf15471c8214c25cf4a4962db8abe91523ff108fe8da9601a8f535a00446104b6612071703";
+      sha512 = "1084fa1da0cafd8894659636f7cb14498beac52adc92ab0ae4b9ca1e35517482a39a37d1d4906b4bc6a5a1ecb3c443681705582be5a2aa21745c767b0672078f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/th/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/th/firefox-66.0.2.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "e35ee9c0a26259f04c21fa31a8ebb6ba61a8c2e5a8f22e73f93415f96061ef2b2484eec83a81be5a88a40f47ad90623407b29890c0527b88f718a48fad4f8e36";
+      sha512 = "fa6a5eb637154f9eabd3d5e30eea90d17a2281d65bb25d283a91f36a8db05d615fcc633cc77845e29b898699d9b4c091aaf5d1f81b71aa2d60fc2007040068cd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/tr/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/tr/firefox-66.0.2.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "4ccdd702a835b63561aa16c9921543d5e1639a57e7f54385e7bde01106e77599e343fdb94c387290fe06684b8daba9a0ea8146da0b71b108c44bb8e7bc4e58ec";
+      sha512 = "a5df3fb13b78f1cc85bc0881e99390183251c4f8cc108e346bf257a2ca757a6232469e11e8c533b4722cc1381723fae7aa0132e3300bec500ed2c5e5f7070527";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/uk/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/uk/firefox-66.0.2.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "55382add864881c1102eafb37a645b8ea00e068db41085a677e02476aad5925e64f6f1a6617e3e40c5bf58c131dd074759cad317ec0ad5c6fd3c5095908b01f6";
+      sha512 = "7925b95cc4ac4b35bfef29d715ae21bf6f98ab7fc99bfda66f3514cc2d67f9a3f327bcb74a8e1545ad20918c8e50488ff0dfea478a08e9f1bc0c5d28cd8c9a35";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/ur/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/ur/firefox-66.0.2.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "c9b8fb563a85cc7d054c50e1d1b4b2f478ab6800c87fe345013591a94fe5ce9d0def2c7237a6497d757615e7f429f02701709b226cc8a0e2bc8bc645236ed1cd";
+      sha512 = "1fd3b03251130cf5b13a98135a5820379c4cf771ba2fabf0ae34d2dbfadca2b5d971c7c0db588fa75ba2594d5c88493961fde59cf743024bc31a7e2aba149b3b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/uz/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/uz/firefox-66.0.2.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "89901a1bdca4586c21a8d5cbd508b404c22328833cbea5aae92d0a503a603e069f612e61ed15edec607c12517f75b7c2a4c5a6b0c7140f1cdbcb5795430ff01d";
+      sha512 = "9baf67bb532ba992d9e28a59348836fcecab10bf793c2504a93822641fbcd3fbdb1922f4ed68cd5ab9783ca2c3a382360eb9eb50889bf3979e7f16b306320c35";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/vi/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/vi/firefox-66.0.2.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "dc8a0241cfed23c449392b54fbf99a12025cb07d834505dbd712ceacc080aff52e0c139c89a5166aaaabd576fd9977acdf5d433022742047ab48c6a32ec344f0";
+      sha512 = "12afad955cc1674b89af3a8861c3746318fae7e3683ea35e26d3c2f0856c86bb154b860baadecc9d7bedb520e1dea6af0ef73ae420a2b551d5730bfca3c4ed23";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/xh/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/xh/firefox-66.0.2.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "c5e3c29594c2e1fd29d30aa8b98625968330f010677515e41587fff401d0b2aecda31d55e1a3071602e736631d357accc62faf2d50177ba10692476c024dcd36";
+      sha512 = "e9f4f9576e9a0195c6ff8f67cca6bb3794294886ac2a71376c7bf9f8da824b7c15c59d09645e67fdb9f6371142b29d8cf3a45f80039ec405ad1ae837ca105764";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/zh-CN/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/zh-CN/firefox-66.0.2.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "58516ff9de05ffc315ff45332122e78010d4362d8e079e8679c5f56851b92d488399840f35469e9920a6c491ec7bec0854f275368fabe61bb4be68d6dc3a2d1b";
+      sha512 = "4b1558c2b211f9fb69b8b5f4559f1f35bc547a1ee65ee81ce4d9639b886f765fc97e62070cf39d425dcc8f1fa0d13b7c4dfafc3daf60b660b751d8904f46452d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-x86_64/zh-TW/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-x86_64/zh-TW/firefox-66.0.2.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "fbc313943d6640e74619110fbda3432d77a4de43814cf1d19b69132236ba6af86810d6618b71867b03c00e85a01fac26b8a104e2954d79eda8dccdc9e43a4dee";
+      sha512 = "73c4940b6fb87f3f98341bafd894189d9d24357fe3fd1ba28397ffae365f4883933fb759d90a385bb306269376cb2c30b4564e2fd585978ec2fdb73b657e3b18";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ach/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ach/firefox-66.0.2.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "7bdbde365b86a33690e0eb44bebf479eaf3f4f226c23aba210569c0d0ccfa3f3cacdf3287ffe96f1799c84f9f1a91274fef4bcf6fafa472897a672f478160a21";
+      sha512 = "ad20dd3b682f6809f499349fc50131a016fdd424dc87626d151c7b9283d6ed1ef585c829519a434da39ba33a31f6a855628f5e6a950eff89b97465d4d6f97838";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/af/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/af/firefox-66.0.2.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "02bc8c607a10d34868e9564e1e07a60460ef8f07b2493e303bf051e7bf93fdbec31b65c9d4fd54666aa84a8dc0ae9cc87574b88b09f88b8dbc47d0c75822d5b2";
+      sha512 = "8151ed85053d31956fa8f12e296d5d694066b001f07648845cbacbd206e252fa4bb962f349472475feec99f6a26f30a2fc1e63000664bafff6dc83db7674bd7e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/an/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/an/firefox-66.0.2.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "c18a015c159fb1a93471246556ada44098f696cbab2ec4a6d46ebe34590af4ede6649093a8435643052ccaa258e578e232b07a290520dc9b398c167e57eb8bcf";
+      sha512 = "fcb83bf9b222eb5a6d872d6c2b4b7bde7ceb7e97ecf9c908d8dd90a7edb52a10378de453f8ef9643735fdf1bb6459610e77e4c05d14c9c594d94314d707fc222";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ar/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ar/firefox-66.0.2.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "91bfd2d01fff9a906f433f3611d985fe2951f2e179a9b2f00847f99d3889f3ebe2ab207a6f05f0c53379c21cf723ee8c447213f50ee23461ae9d1f01c3d2d77e";
+      sha512 = "b393dca33c937d282c7658a635808682e1c9829a2c7d567f5e8f854295a9dddbc88971c929ae7ba65acb9cdd7f31f6bb1d8b27fe93c3f74bbd82fde6022ca9d0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/as/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/as/firefox-66.0.2.tar.bz2";
       locale = "as";
       arch = "linux-i686";
-      sha512 = "3006a90c9fd343797d9768f4922526089930063a78b999cce9b751ee2ebea11f8a1acf83bec3787b19403b968e7978f51a3e894e098805c90c02fe0786b7e61f";
+      sha512 = "d53e0d3f7892fe68434e6f5bfd4e6e894077932c0c757567c15a43495a2372a97015f0a78ad47dabb7b7bd21509373e9d034ec5db3d0ada955ada23bcf860467";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ast/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ast/firefox-66.0.2.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "df3b69f26544876ff440dc138a60e29971278df8913c27408c53fc8c2510374ba390a4a4feaedfd30e72121ae079584c34948eb61804d105ee37412fb795be58";
+      sha512 = "3ac14d571276b03d4ef74123eeb85a79a422ee9fbd014ec369e0bf7c8efe1d4d3f435897e72a43475e13e0a9ea4a9cfe277455e08bf85d70c2612357ec08a789";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/az/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/az/firefox-66.0.2.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "922866837ee79c614c37abf6b1351f186ca61a05506d891fb51021e6366f1317665e015bf3c0b846b38e6c209b80cf71f5cd6379528cd5064bebb6fe78dcc98d";
+      sha512 = "4894d809e0b3db5f01e898e14f396bb4ecb968e5d0129b55ccd3de31c31c50ddaaddd09742e092f4cc62969e70b5e4d821e1a206bd676d98b346e45e1510c3ea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/be/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/be/firefox-66.0.2.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "9715983648ed356e8f929301daffa6850439edc7186feefdf0146dbfd5e29840075ad3b3d083aa48f5fdb82a387d39c39bb8fb92c8b286086a2ff8486313ba3d";
+      sha512 = "ac0d6cbd5ce46d1cba9405ad097291ff36038be8631b46703b0ed7fcb93cee6a88664d3c73216f6fc21ff3c16f4c02aae31860d49b9b894aac7b79b01faf720b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/bg/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/bg/firefox-66.0.2.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "521ba5736720ada48afbf5a912f87f207a54f30e525853649a1a2ec1b384addeb2badb3ea5cc2ceeee9a0942d6e998155ea02ede81dbd61db41df2e400605aef";
+      sha512 = "0c097df8470e5fe5241525662b262fa1f3d088c3a82c596636a2fc79b9a99263717a4cc6b06734e134511f395ee211f95985f287455541f71f09d5522a85807b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/bn-BD/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/bn-BD/firefox-66.0.2.tar.bz2";
       locale = "bn-BD";
       arch = "linux-i686";
-      sha512 = "87deffea882319d565413d6f17e97474fa7b1c8f6eb6a8a254c6ec0937e00e86db54f832c3480729fc934639be1ae214b4c630c7228864ef2f121692c88b1e11";
+      sha512 = "886bd3d7ede79f0fabba534a07abc26c44f58250f4ec8447b176562cf554aa988f8c88d6f8310cc00f431a9710c4d43a5396312546db1adb81cd40684b83887b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/bn-IN/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/bn-IN/firefox-66.0.2.tar.bz2";
       locale = "bn-IN";
       arch = "linux-i686";
-      sha512 = "2b44479f6af89e42446c5bb7d48350bb4f74be5be58405e85588872e777565b1d0f65af72cffdbe04f9254320f9d5fd6e02915fe5089fb12bf54088547716317";
+      sha512 = "5a686bb6a1ffac5473056ecb6c15bfed19f58d118b0b58fe8a058a66eb3ff6ed9793aa5d67eda8357e7652127a887a244d1bb2cf218ba459e18a791b188a13df";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/br/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/br/firefox-66.0.2.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "b914e9e7c296f390404cc6354f2245350c26febc10961774c5b779fd50dfc508e9999669ac9f9d51d57c1878cc07000c5694594921c2cf1111a355b78fe56f2c";
+      sha512 = "87b7e90a5ab950e428b0a794392b5458e2d7e0e5224982b78ce600adbbf89085e45d6ecf194837e9437465f10e01cd0405d1df99afe90612551af77510514666";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/bs/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/bs/firefox-66.0.2.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "883337946935371223ecf64fd7b9e342b09c32601c8ae9aa76a22b922ae91b711424b59a65da41c8e71a78caa5e2e08db873d2aa34d7a1caa7c5dccddd1cd787";
+      sha512 = "80b0dfe3801ec8c979fb0caacccc6409d64b839c40d4ba0ca6fc114e4dd694299197a24b51138c734c0eac85feba9eeeb4ccf187622632db362b8ba4069b0e83";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ca/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ca/firefox-66.0.2.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "84148fda78e1bf7ebf53bd27686e119bdc601a07e2aeb88564f795484fe0abc4545ce009b76b76ad1f21cb76912ed974c9362dd08b471379271fb39a0d8ed2a6";
+      sha512 = "7d186f282f82b73433f49bd9f0c3703ecf74d5cbca452ac2469123cd99eaea9f47e0bb46d4f5dba37f291fd0a7bff1136028651118a8b46cb362a5b41ae7e83e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/cak/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/cak/firefox-66.0.2.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "279c01a6223fb8c96f05cdcac24fbbebb93157b1f47c2885e25e0bfe3f42eba77edd143992abace5815f8e399bf668ea705c3e55bb6915e113dd13acd602ca78";
+      sha512 = "9a7c2bc579913f23fa0a9e52c077e52516c66afd5a2319290d8a074e2bce6ec86ec2648f45d810c26e2d60c0a6e1e6ce8c810bc460285eaf268f193e9034faf2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/cs/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/cs/firefox-66.0.2.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "48dcca86c1f3927a2ea223c8c5f9ed26d9e35b9070cdcb79c13cdb0e3c60e054c1a4070bc4b059509333dab78cfecad6b0e17daf461e695da7b8f472f71e4807";
+      sha512 = "1068f4851c0ffcd92cfec959ece7264fdb218920d805dec670c57648e59d10bef3a7df1a4de330bde7d99fc52211ee4f862fc9c414a6f2e096e63d4b9afb789a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/cy/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/cy/firefox-66.0.2.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "107570a323480565829d6f393c5d396105a0df2898f3cb7e3a0087062a80834facf7c7461f45138781f5a9b6f7e8a17360b0db022da1aa62004057efa543456a";
+      sha512 = "1bc1629faef6fc5bfda6f294bcb6b97f120c65b9251128ba7157a36502ae8f22f9bce27cf0a32395f3e2a43e952a8fe2d509ddfc0e6e7f282d30a32310c68493";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/da/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/da/firefox-66.0.2.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "380cc253b1300e95fd938a80f85d6ab2dcde0a7a667879b102cf217838ec7abdb0aac89eb399c882f4095d2e8c93860e9d20f28d870a2c8b80151bf4d73481be";
+      sha512 = "b8fd09ae3071742598466eae89d4d038bde1c0a07d1849d9b25269806b64b22371f046ede66e130f6a249e7746d58553c9e79bf918e96a4f22c4d176304ebbab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/de/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/de/firefox-66.0.2.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "519257991f438d47e6aa52f07ef50dcf19107dc3c4bbb689dc4b02b0e5de013ee7a0708076264637c4d496b0a358bc940d11ae58d971ab013aeea0c05245a2ef";
+      sha512 = "226265a47392fc10a9c5638df606bc0cd47403410dd503ea1988dfca29a3c1f6a75ce053e2c604138a453cf5998489396ba5dc173993de5053f9bf0f6dd95996";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/dsb/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/dsb/firefox-66.0.2.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "dc770c4b40684b3d54df64f871b8121b57bf0cab931ded91e11dd909e408744a025f5b27b882b3e8f7c14c5ddd8430b5bdab809ae58ce5c0c748bfd6b315f838";
+      sha512 = "ebe9c8bb5f55ec3915bd1e53ff78005d8799d6ec0e3a7fd940394084aac0cd54fe8852f5e9ecfe63e15efcc48439849c6a8801a8c7127d4bddd880ed4b13b1e7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/el/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/el/firefox-66.0.2.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "517c5aa0fc3dd904f4f66a2ea56dd83d2bb027e1745b35bbff64399548eb321a1d1a019a0821306f483acfba121dea1f52f9a5eea74341766f7e6830ef08ed71";
+      sha512 = "a54f1c2b0d38268a7517ae5436be6194039926d162e10c8deda35d328ad8b367dbbdeef00e727e504726d5e93bcc04dcb254bf92072022eee1b327735a3bc230";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/en-CA/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/en-CA/firefox-66.0.2.tar.bz2";
       locale = "en-CA";
       arch = "linux-i686";
-      sha512 = "45db4c4042bfc2bd1886561962dfbfbb6c71488d138d58f942947463f0c2c82e2f2b13f1113d031f19b0b619437017c0db022b6393077d6b529b8390cc44ab53";
+      sha512 = "78bfae33a23334bc262c0f311a6bafd7e1175235311f7e48017173aeecce29d771b2f70223ce6f54bbb08a7796e18ec53c75499c4e6a821bc5890c14339ee3a2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/en-GB/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/en-GB/firefox-66.0.2.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "51a02e9b02b09fc49bf7e2f962599873b9533d465fc7c9f7b5900586741e109812066bf67b6ec422c95a66781cc60d4ee65da139e043d8a8d9648cf8c83a48c1";
+      sha512 = "6119e0c74ce896ac4569efeb4660feafb1097162a908a68df0cf33cd5bea2633e85ee2149cbec2ff85bdb1579a055d4776b7d4c2473baadcd9c17a2e9cee1dc5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/en-US/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/en-US/firefox-66.0.2.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "bf028f300e912e4aae0da38064f684a1fb0b21686507363c6dad4bed7e725ae68ffe0bdcf055f32106844484dd855716ca60cd42edd0c75166b6015250d3885f";
+      sha512 = "5fadbcdc7d39f21bb8c5051702a1239945e53a058fc61a2fffec0e51c4e31898b0ef5625d51c87612e4fcbf9fc8f3be9e18d6cb86e832d895278965a5c21e034";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/en-ZA/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/en-ZA/firefox-66.0.2.tar.bz2";
       locale = "en-ZA";
       arch = "linux-i686";
-      sha512 = "50b4017bd2bb74463248695b7ce2eae569eb47dd8dc7236b5c6bd9cdf88c386ef6847aa84c0883ca21e5a4abeb0b86f1fc44d30708d5ba338632f169979b1289";
+      sha512 = "7abc0ce1d718bdf2d3d1c47449ce4298194b061f6ef35c95577beb1036e5c4a2fc99bdaa145a888bcae0f316034d522a4766c7b1530e7b4b1c9b7a3066d2a771";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/eo/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/eo/firefox-66.0.2.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "e4b9654cc3cb461fe7bb12e44807da92ecbf299964a5c1845d4f73239724e67945c91d10570be70e57d3f3db643543d6b5d4bc625fb4098947d5a06b6ebf7fdb";
+      sha512 = "67100d6438b6b7ca5072ed1cbce1b77387042f01f0fbef87105c535048e44cbe057996e5441879bbbe2066233a638e1b1faf8e880337bc2cc1488893d14a7aff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/es-AR/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/es-AR/firefox-66.0.2.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "0075ce52d770da93b3d1c61156124f483f5a52c445af874d2ae7122666590338c6537ec5f101ca9e998835cdead0104025bc29de8619fc893867388f961ca048";
+      sha512 = "4ec1451840a7cabac57feca4d62a572bc3719444f858a07d6b664ec649bd4a2f2f5cd78d9b30663ff1e2f6b0acfce864ecea60850ef4972f3ba00f42b979ecf4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/es-CL/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/es-CL/firefox-66.0.2.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "7707eb290e9ecff0ca8876b72d9803c01b2127f00000d030c3f84c4d3e6720e27c9b3460bfd001e6017ea122d9ad274b7950509835922cb7e7787748531f28d9";
+      sha512 = "a75fda20a7c8c0ccdd5ab857f62c59b7e843d5f47ce5ea2aafe0459298606f4e66bbcab6e825134b7a35f4f7b217550b8ebcee780cbaebf5bd438fc382fc49d3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/es-ES/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/es-ES/firefox-66.0.2.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "24cb5aa7cb7ab27bad12315611a0a355421d4d19b482473a7627afdb5e80579bd2061671c394f29e54b71699e53364d47b38cde450da11a090da6da1409723ae";
+      sha512 = "76d8438d349e1d52097208000d96e7994ff3fae46e6a3ed6db0977492b4ccd93b49104393779db6f85d5b8303c01bc1d30c93013536b68992b59063a931948b3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/es-MX/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/es-MX/firefox-66.0.2.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "8aac2eae10062085b466d2e78b78e2366182b54d756cd397b45f075346350702e216a16d78205e3a2c7cd6b9b4f6274239e9001cc39ada4e74ca1beab025a503";
+      sha512 = "34cc6dc8bb07b76e322b3da263be6d91468634a08074da8000ad69a4ef3d93aa281996b5058a24f163db52dad7c73f7264c37bb6905217ddabbf8844076aa934";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/et/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/et/firefox-66.0.2.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "11418bd05482f0c6a7c732a372240c2a8e8d500a4297733121d2a4e3ab4235730abda3c87790d178b8e497d651a43c24dc903a89390939334d32564b9d83db0f";
+      sha512 = "84f6514e106ef5457e20d25497a93f44d6968ed3b44d513325926abbb7c3fa36db8c198f71631f28f03afea4d8d1994de07a2aa14fa64693196b4693e1820a6c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/eu/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/eu/firefox-66.0.2.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "f39983f48a6536e8ffbd6240080e525ff3922d943672a932cf1052b716fbaa5834a0330087b9e31c2fb39ae190162e799875a824d3287b9bd6a6b29f41a4b75f";
+      sha512 = "dc0713db71626da9224050e3af5f94158002b8eeba4ae0a5f7bcd1e837e4bb1850bc180bf77c35473d6395728397af15eeb0082570e9ef62b3690c73f84cd7dc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/fa/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/fa/firefox-66.0.2.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "a592c822f244506c3ed1b285ccbb83998c02a450b36858930c4472750ce36ec94a3b6c517ab673e0f6cb7e419681940d48f3b85ee4a57a3b8ccbd1126c692918";
+      sha512 = "6634a79d9e3be0050fb4c13a8a39e7316084ee7ef48c32b826954133c516f271672f2b89f91d1e62af7ecdaebe33be3418a8a128b2b0b91388ff18d13e265207";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ff/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ff/firefox-66.0.2.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "05ed44fa04def5c68757c110b06362693395321247a9c259141a7d2d213b7b8d65f36b40f6cda00f688b648962dcaa79bfda18ab65610fb2e3d60f5e952f8eb6";
+      sha512 = "b5954d6f5ab4a3fb3c337a67a590513003d781825ff870f8c7a4d10bf73476f017141763f98e433c0f1ba6668f2a76ebcb76bca80e2b73757b3fb2abd98c1ae8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/fi/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/fi/firefox-66.0.2.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "50e94bd764a9a779ad9562224fe7483732b23cac9ed5ad661069edadf7217aea4fb3d1040d59233f6143a11b7581d2781f7d1f226353e28103cc50505518ac59";
+      sha512 = "2973860cce56da4e81058e565d541fa4f785ab8d567486f992e67d6ae2de60e334fd114adb6b584277ad6c01cd4019b1d1917c709bc1437ecd927c9d7851768b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/fr/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/fr/firefox-66.0.2.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "37ca249c1d4a1a7601706c36d3e1f17f2f9da0ad192eb4d0d1700d0b6094f4ff1567a84adad5b03b048b2e84138c9120d32efe07dae25db1ae23513907bb3188";
+      sha512 = "a3f58d4926dfb07c51b21cb900b654a56aa7bfe238c36eef104d66d72fb52b431a0cd5684fef6b20c8aaa6b89203116d6ed18a5f1ee0fa79879c25b64931fc3d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/fy-NL/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/fy-NL/firefox-66.0.2.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "777819bcc97c694c24f1980518af16a817ae2d8e3bb9615fc68dc2a638ae28135faab1921d91c4bd3aaf9d7427badbc01b2680847abdb600dc807aad04fa6fdb";
+      sha512 = "c9befd42b54c68f2fbb5cac27b0c84f0d24691999a3d6547b946b574e959ce895a1b7dee37873f9ab19ab1cbe5f1a313d5b9bd251dbf68d50aa009d0a6952f68";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ga-IE/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ga-IE/firefox-66.0.2.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "72f5dfbe99b38eb0b16a67d1e4621cadf7f899aa307e698747a123eb1b7cf88781209a21a8fe6d360f73e6c57b59778e5ff0deb2cc5ae63bf85a5d965aa0059a";
+      sha512 = "52cdf9616308625a57a56029fcfac0e0a31879b24112a946f219ae86bd72453e04ac8bfb910b387972b398b21e2f26cedb58a6c21867511261946de5bfbc74ae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/gd/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/gd/firefox-66.0.2.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "cf9746cca0b3266b40bf14d281a21f0b5a1da0f991c943c456323b6d2a68adc19ef17ff900d24b10503030a26807149d29d2c9f6776ac584c9d7e851ccb20ecf";
+      sha512 = "e1aa8899fd0b14e34d195975fa9fcd08135dd4a9ba51bb315bf906d924ba962ce39e343a412cc2fd9a01a902ee627809512e9fc476c5630d5ae026feefbf84d2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/gl/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/gl/firefox-66.0.2.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "5d6e0d4278163d8589e54fddbbfbf05281330003146b67fd71c009e39998194cf7b5a8ecca0851b1fb4cbc87c530c1ca3a97e79b0526e6ea3ecfed54a547258f";
+      sha512 = "bf9746a296fa402d3165bcca29257bf6953c49164dae50611de14fc0244c220d3904b0f24dfc1045849e12c37e30276fee9efe8f6a857833347987fd87c58e71";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/gn/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/gn/firefox-66.0.2.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "6510b6ffe2142c31cbd97eb2e8fbf48bc9ef7b8d7c3ee7c9a4515f09ae94b056bebb6b76998056d3971f8b813b1f2a050176c85532f0ccf10b25a1b6e8bd8ac4";
+      sha512 = "1d320e4ccc4f2b8108ad1cd4d1427104aa76a5214259b70ccdcd3dc797dabec0839653e310c74967b99c60f017371db71b99aa695fc6dbec0a7a5db16906d987";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/gu-IN/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/gu-IN/firefox-66.0.2.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "0d6759d51d81406c3e06fefb11e88af5bc3bd452200ae56cd802f3fe070697ebcf3b2bd101266c36be5c4fbc95d5a4e9d97aefd6d97149eb59c58f73c2b41237";
+      sha512 = "98854b4e0d44e55c797a79df6a12dd473e70fd030f410944097f7ac3ca3ca50d80768cc627aa55cf8a686b47fa8ee1c15ea9c7ff89f0c4eaf2a1760515372482";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/he/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/he/firefox-66.0.2.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "5c66288f468f430c6bbd13a8dc55865d4822cd76c32bc6b28fd6d8f457e369bb24e97e68e9508ad7d80cc3a4dc111b4e3a18574279fbeaf1c0cc80c6e144f66e";
+      sha512 = "bfcfda4c361ef95c85ee3b90daa2b641cf0846e242d71321662000eb2e0319eccd01f0382df41053e10daf9a9a5cf97972ab00889d6f1eaaa41a83253e2261fe";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/hi-IN/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/hi-IN/firefox-66.0.2.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "c9b93433b10d01c159c44d4fd34bae60f8c67ca4758b6d41e5f76588e2b636ec06d2739c3c8df09bd2799dc5a46e66c47684198deadf27762aad1ca141b8a217";
+      sha512 = "0fc7933d48d7a648780e7a0aded7912b92749aef7f873338f9eeac6c59e0fe86e997d69886bd2083ea987cf74b176e477ec70a33eafde3aea3f1492da1077c74";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/hr/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/hr/firefox-66.0.2.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "51f3c3a6efeff7b195ec1cfcfaaf98f7c0601ed815e143d9a3d4d7523324812f81b05a84ec4b28e475c76994d4547a4a0282e08d9f3c0b3259c9d58e503e03fe";
+      sha512 = "0cf72ac981d5a2cbafd3d3b4dccf821d235c5743556703cdf2ba1405181342b29c3830b8693b54757404b8ceb3a51c7f8d1a812a26088f21954c37d308c79fa9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/hsb/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/hsb/firefox-66.0.2.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "5cf0d71159709d4699102a6703f3161651a7d9b91a620e59843d8f519010da0013a508aaae515041c42a41a7c406df6234ff5bf4df8d9a97f0887dc77efc3a3c";
+      sha512 = "35d81a78827e8faf1f1f9b939427b2f7198e84aa841cbe2bc764f7531ab26e1e192d539c9818a0b7c8d77bf0dae15ce24bf805f0c7164db509f359be649e1041";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/hu/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/hu/firefox-66.0.2.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "a34cefa5e301450f670f5db22a87d0a3209304abbb973210cf646d0e27d36d32bb1fd8df608a6ce3ab1bf025211fd126c27279627f7f6fe22898c2a25302932d";
+      sha512 = "1d7b3c5cae0f9478b1a68d3c6e9bf4098a54579872fd38440e9bfd118151efadf35dd8db54441861bf4de11bbaf0358df74f26eebbfbff352de7cbaecd04a091";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/hy-AM/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/hy-AM/firefox-66.0.2.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "521809c9b00eb31a5b7bc06f57de93a199a16dd1149d054a98ff7a0cc1591e44d048b7169d4642127bd07ca4e87a56cdb0967aeacda551ea407ee9c9345b7b43";
+      sha512 = "6d36b676b98c749ffc88bf831be7d9be27bd4b435ab32be9b61bf93edf69a3d8ec91a1b6ec2b16d1e5384c6cbea5fe3300e98d6212f5d3260cef121f75e24bc9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ia/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ia/firefox-66.0.2.tar.bz2";
       locale = "ia";
       arch = "linux-i686";
-      sha512 = "e37239b6f31413ac5f1f306cf835adf403fc326e03692b946007efeb09c915a24c0f1f696566269b444d5770eb4e170e484994920bc7c095b51805361d711f5a";
+      sha512 = "38a4baf9dd145fde8400a2c08f142565c41d6dd63ca4317c759e9dddbc76fdebad588127279b31becd0b4033c3d610fbbc6dee4ad3d23d4bee5c55904a8ef939";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/id/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/id/firefox-66.0.2.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "08149319789476ac435eae240dccc258045e7e45e63bd59f7df1c0feacf08ec705ad55338b3fb4ac167ee724a0a67e9e2ba78d7ac2ed7d708872ba03fbe3fad3";
+      sha512 = "06814d2b227ee60324a1e84a7e41b8fcd8e1b8ac35ffdd34b0d45ba528ca12a3d1fe9a60a14ce5b16fdf795f5c4d31d1825f3addbd8300c76fe0eb60bb29d52f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/is/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/is/firefox-66.0.2.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "bb6cb1368bece799dbcf5aa3347d44c8cc14e87594e97b84986b4cd794f88dad0c758dee0b556cbf825808aa090f36d4d57d1bc195c20085de02d71e2b955990";
+      sha512 = "f1b062932ee0b4ddd7aef3944d1d819e6ec0a2fcf4606ba62bcdbff55b13897a09265632c4f7451f673e82de0359e0dd2e927d3e538f32390d3bf2f0b794ce41";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/it/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/it/firefox-66.0.2.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "ec637cfc94e72e34e46d8c4ad07c84c76299c26cb2a10321cf106cac0fa8a52cb95ecae1265262a80369d00080f457600e67fea9adb257dc570adfb167ffdfe7";
+      sha512 = "c4b456da77214a6a8e435bf347ecafa49e3513e0788f750ead5fc17218a5a52809756c02ea0c44d29adc037605b365651eb81eaaada2d21f0235865c1d585e95";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ja/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ja/firefox-66.0.2.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "5208a18f7b72faa8a33b3fc7bfc0a76c9dcd1bf2c1ce5d440b0e14a6898b83970a1fdcc3c1339c06b9fe18c61e0786f882e5e3cd527f8ef0f361ed49727676ed";
+      sha512 = "63f460ece90c5d360060fcbba81db3a62508f915608e393d0610ba1696ee030d81cee4654a25cd1e9e4ef374f3f5c1529d8945c38e10a6552f269beaf2bb71f3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ka/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ka/firefox-66.0.2.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "2fb1dc95ef4df0b0c8f2297d8cc9cbf4a404c14b795a04cc135b314f48fd2affe351aff05447738c7a65a5bee6fae78513413ff548e83612270cc353dad07331";
+      sha512 = "12ea4c14139457b125fbd92b6e23c26b178637638d205a7f19c90818f97730bc7a1ea947ced3c3daa79bfded228d8afc9178c0cb885334db7ee30abbcb909beb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/kab/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/kab/firefox-66.0.2.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "4270a904126485cd404341ece8e4f0e526b1dc5bc9c04c73236df5cafd23ce3b97c0cd4fbf860b6abb940893041cfc5b9311294468181c7cc0335bd248d8a086";
+      sha512 = "64f1c0d5a332e1c7d97a6dfc2f3ed71f1824af41d849113daadcaff8cd9bf6b7b630a2b39468a6ac3599fa69be05abec44c9319658728ac2c666d22e0026ea6d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/kk/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/kk/firefox-66.0.2.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "4f4e9eed0dddb80ae04e01eee3c764474ad07c20be00005bc095ec763133c5b634235f88d2b64742d29eb49bcd6cde8a2587ad9d270a441d8225e1aa76d273a1";
+      sha512 = "a4b75e4fe66d2e0ec08e87fcade8c990aac5f1be28a98f35aaa3f43a7064866ea5ab90a738ec30e7d00dc1111896a3fe3a976b6f97ad1db08177d73fddd60bf9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/km/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/km/firefox-66.0.2.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "5698cf9764c8df917f1b302fd44f58e258e78447e0f6dc8f4246aaf7cc3bace595efc35812ffeaa7bcc249c6aae1d62e7f254dddfd86405e34c7e3b4a95b3229";
+      sha512 = "026c8356efce7734a392f2fbaf8328f22b3a58e32bc8fd588ba73f7aab5f77cb0de2787db652abdedeaf79ad5c2628a84841f5b08e4477d911ea185f1bfb3fdc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/kn/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/kn/firefox-66.0.2.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "5c3d3b2a7c614b1484c2d143a04c6fee7af8b23cec5afe5b8e9a620a2d32bb65873b3b8a158a06240d93eedd6d5a380df3bf200218630aea87510a26d3881890";
+      sha512 = "a10623c4a3e123ed826129d67fddb74e027274440b7c21cbb2c8adcb50a1b7e486b6cc5f16cc8b07beed3e056d034f35ffd61742fa6e77f001fa6b9e5737d938";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ko/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ko/firefox-66.0.2.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "604d52890adf0041789ff4f9b9b64362745db504844482b949dd0d75622e2d45cc097e72c11195966c29cd2178304ee87a98299fe9e64f02009b27e8de6f2892";
+      sha512 = "a598ecf2cd1e6171209cf99fe32e6a9b981ffb92921a738237d1a7c7d575e284943da6cf37b531b3cc5ae3f08e02c2dea0d41a36f94147500977107d4d0f5884";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/lij/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/lij/firefox-66.0.2.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "3959d231d3486086b3fe8b28eb0d8650b2582a603236ac938ad473bd96103378cb395c0a7ab375e587bb1de67d567bdaf4ce03749049501a22e8a7d7f67b5f1b";
+      sha512 = "01c8ce34b83bd851d92bfa47c9d79dc04a17fe925a7d14d0a21e6f2dec7b467ac27c3ecbb48c6cd24254f435208123254ba23ed4b7f4230fcd1108efb597aba8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/lt/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/lt/firefox-66.0.2.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "ca8b8edd741ca6d0c2960b9aaf40df4bce62df81d44269d19202327436eedd3a329a721288199004015df9bc06953e8defbf577c2c2f98248e583fa1ad75548f";
+      sha512 = "ba92713101a02cbcf0f7851b9bcc623174101ef2c7d974fd6a7e47db812347f4319d5b55404a0d5c00707f3bc1c065ef98e0e7ec5112114bbb0704d10de2be80";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/lv/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/lv/firefox-66.0.2.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "a13b02ab06c7b1b813518a1738a9a2a718b3ca249a29c6de569ecc3621534743c003acca4b0fc748b34c5e802d2a0e47034e7c14a6280f2acf91289fe8f172cd";
+      sha512 = "eb9cbf6331da0cf7c1af6d1c69f4b832c07879631788cd4caac865fc9884cceb5f63fb63dab024ac4d4d2cde5bd75b90a46e38473e68cfc800bb2326555980b7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/mai/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/mai/firefox-66.0.2.tar.bz2";
       locale = "mai";
       arch = "linux-i686";
-      sha512 = "f7e9ced2cf6e8d832f92b515821d11b3fde29a4d47fd1dd912800352b735b6020b668c8dacc8870867c1eff4f89e491d2e7dfab6c5051aa28a7633038c125cd1";
+      sha512 = "78e1e89f86e875b31cccec93bc0e85b9c7c9952553724ccb7929cfdc6eaf7f0661d5d40e6d4494528953e30af80a9b83cb16b49ec555fb4556eae8f0e29cccf7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/mk/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/mk/firefox-66.0.2.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "8595fa93d3897a6ebfcf2dacb9104fc691e573257f7a9d79e16e78db2c00bda60b05546a057f2867fd3a6ba6b44ae3cd34b9ffe5b22a5b3a7ebefb7ffc1891c8";
+      sha512 = "45c965b386a88f1ff266d6aa5b50adff28c5b8c5e60cbaca96133ded59eca8c7a9068179e4ba84ee35a48be949a59a1eb81f1b82beab5eef8fc21ddf5b387db1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ml/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ml/firefox-66.0.2.tar.bz2";
       locale = "ml";
       arch = "linux-i686";
-      sha512 = "dbf33d9aca1155b69c312508c8dcea86d97d72b44477de02b7a94d1e63b7ba7bef401f2bbabb69adb192093dbeb9e7e578c69a250630f3749005738b1f67315c";
+      sha512 = "4785519f5fad4d1bcd3f5fdfa219eb0d9373db6d7187b0ccf57056718214206b9d1d73a3fb99f73403bf11bcedec360ec58b22640bd27c15e0ad981516a062c4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/mr/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/mr/firefox-66.0.2.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "56e01bb0c39023630bbef1e6872e67e7c2f5b963c5876a93ec3cc1898e3b48bce0a07e2d5aee537dc38fcdb317737bf21a6c389a019f55798e6b7c571e7f6bf9";
+      sha512 = "54523da6bdc639c3a803a161f670185395f3955093cf4dcfce3e209e5c041af7c12098d1d9c7918888cd826d3e2aa63d645f363f5f82b7b6bfb8a845c35b3db0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ms/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ms/firefox-66.0.2.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "cecd972c19be690998ade7ac8634739aa1eb9c0b53b2c81ab701f7c39c96ba2729f7eb440e6b703bb5e084cb19f0bec81ed2e81bc17179ef2f72d64625866cfd";
+      sha512 = "916ecf06b7426bbb7583ae124c9400a8fd505d764fc190a28b906165737cb9e087a96bed97f566459574cb99e96773a1c458a8a3a97d48075aecee4b30d2f7de";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/my/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/my/firefox-66.0.2.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "597592eda22db07bf4c6fe2a2b875aca8f8ed7bf65c51b92eb62f76489b4c75d042f48c5d8a4e91f9052eb939839ac03e948c479d7573aef8c0d1516fff57a93";
+      sha512 = "f1afaca5fea61cb66379c4fbaa3d1ef89438984ceeaa3eef687b43d5ab9ac00ae9ff8573289aa6b0cd353a11c784eae188f70dc4b314f45058362540e9cb4d3e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/nb-NO/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/nb-NO/firefox-66.0.2.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "8a88590ffe841f672c01ab555bdad7ff4da0ba0e8b62273c0a4279231f6dd7e46bcae863ccf12291607309db161da81ef8c3fbe69fce532976530ba2262a07c6";
+      sha512 = "1a53aa28d7ad3b7aa88fe3014dec35b9ecf2995fb51e49a88574fcdc2ba08f421654c1c4458ea0ed7a9b1acf8d4c70269fa55f37c8fab92331b593b0b27a0421";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ne-NP/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ne-NP/firefox-66.0.2.tar.bz2";
       locale = "ne-NP";
       arch = "linux-i686";
-      sha512 = "166461500759c099006b93bc724f4e2c1d4916a34cb4476d95f5245e150dd4dbdcb4591ad3073cac418f0c35e54dab3c1f8767c468d7bbb548b255e60baf982d";
+      sha512 = "e9f402763dd04f2eb556ec6101749c1203db89305c3be56bf63931d3ab61230303f3b35718fe0aab896adab22248b8c5ecb973a1784d5ac10ea84c3efa0079d2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/nl/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/nl/firefox-66.0.2.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "41bbd77853e0dd1487a484cba0ce6c58bb4303ca2b071e5b68c53452ef625263d8153de7b8368906fe91e5f77644c5ffc7b3933ec4812fc96bacf053744b8b37";
+      sha512 = "6c5e493e2b8d6a065c1db11c84850c462a5e5d68e0bbe97903f76dfda6e150a244236524f2bc82ef75850c84a2cbbdc9bebde4d587f24f3065eea071b74189e2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/nn-NO/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/nn-NO/firefox-66.0.2.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "d744b012829e3269adc91546dceabd122608a564454de64286dfe60686581a5a22c7d36ad6dc6f8f9b43e2d2208dd584aaedab2b3baaece4d75e986f6d1c51c6";
+      sha512 = "134ae8ffe1039df99e7eff2ebd5a86639d4b80b4d19b7382b2948ccb910f1bac4372d0a670faa0ffcf47722bea6c980238c00c338b4625adaa37927dabbde416";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/oc/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/oc/firefox-66.0.2.tar.bz2";
       locale = "oc";
       arch = "linux-i686";
-      sha512 = "63c042f19439ee55ce0e3e2952f277bda0870f6241b4a1f0c26e237e3df684ffbabe33f221a421d3a9f036fe0fcb57d6dde91b603a004e84f0662f77db5c6f55";
+      sha512 = "889ed30b46197a79ab9eeacdb72dac673dd3f584ed23a528ebfb3d2819021f7c08867503086c62a4cf29258a48ea2d370b0480d3096489d1d0596761a05c2b35";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/or/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/or/firefox-66.0.2.tar.bz2";
       locale = "or";
       arch = "linux-i686";
-      sha512 = "c53d5e735452f52d81e21a8fb6410e56953bd2ebe5bb592836dcd267f85d93fafd429daa945add2b16ba6c0fa0502e93dc857a3a2ff91aed29c379773c0b695e";
+      sha512 = "57ad08fa2a598f58480e618d6d78ee691512594dca86d391bf1c9d87c6c06e3bb863b596c1812117c7994e06ec06936d48c81b0cb67750e117740b907ef528a4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/pa-IN/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/pa-IN/firefox-66.0.2.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "832d97cbf36142d6214967ef5c2759108a151f7c4bb549f6d2c4fe0f9b9659f883407e30d52ce548a050981190a61623db9b9ba8945dd6fcf22b2debb3e12b22";
+      sha512 = "f4da8860b36a06e8d7ed5e782f10a0181075b7f4ce85f75ce2d9009a2b5ac089b4df208ab29253414c1aba4e4d954866368b7de57b8f71aa894814008135f613";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/pl/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/pl/firefox-66.0.2.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "b4106df86061a1e13c72a8a68d2a0667a79b513f1bca9a6e6a625172f3721035f9522ed02148dd0fcfbde35457f4c4ee86d2120cf3321df1d6952c40d5af5297";
+      sha512 = "ab449c5f797218f92923abb9bb891ca2b8181f9a858c65515c72808efdf6535e1c0540a74b3038938570f210eca6be446edb2e4dd55e9a5f6e1a55f6d3fe6aeb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/pt-BR/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/pt-BR/firefox-66.0.2.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "b34681439be91184a6884388a536c7b7be98378138fea7c1aa9d5e5768465c52522818468eaf71458d8959a329565e217e59f95c0b433ce7a4b70059c373f4c8";
+      sha512 = "ce1436189aece0310f4a817bf838b88f5daa85c4c11ab14a93b48a6e7f779dc26c3a8ee5e1a0eb7d09a9d8f856c30ba0196e8ebb6e319883c917f46e7f5f4ecc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/pt-PT/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/pt-PT/firefox-66.0.2.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "cb7ca8c8b63d5f961c69c665149e88fbf61d307de2f4a0bce0b0d2d2faf40116ef76779b1660f238346f57a883c18a0376aa504c5340c5b93574406f969b1800";
+      sha512 = "dc07a770cbdfc80a65a48882b3c4a96a74a9771ce75806956cefce7a5748c065b92cfaa066e7a59ff1c78a8584e06aeef96021ab9d22388fede1b824a8740fac";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/rm/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/rm/firefox-66.0.2.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "97a8f3070bd5f1a2014433ba52a07a9ca4d25471a93243fb1bb64569f1fb241b013ee348acf422ed61c083ee170f011f9b25f6ce688135cbe05216871aef9adf";
+      sha512 = "507825359c936c0030440b3ebfafb11e344c0ff1e1b610d23c0d432265c5c5e1de9ce00f69fcbadf87295c4b29be621325a114ed084547bcf6de79e0fd091ac4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ro/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ro/firefox-66.0.2.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "40488a2621dfb609c1063027905694dbd01950969d3c2de7f256f12426fcf960ed9096c32898f9454e2bd457900b6460fabe51453ca632c7b2953c9838132b11";
+      sha512 = "89df1ca413857d9ba492bcfb460d0a9ad8d08ada7064b52a620a1b7534d7e2c063c5bedba6daeb25bd11f10360f4929cb4ae279ae9aca4d9a2d77d9c070cdf4f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ru/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ru/firefox-66.0.2.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "fdcbee693014a253a5a35a4468d30b48e1067ab2463516d0c21bcca2dd049087890bce634eb028dd18dbfb757684f594c75b7046b68be2e95d4e1e6c5040ac03";
+      sha512 = "7bcb17030fbb31c5defa72341ec1d4f6194d2c6bb88636ce75ab4b4af387550915a3527aaec12b67bf7993b5bde4ea7087d59c0d46b62c5acde03d162f1fd408";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/si/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/si/firefox-66.0.2.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "e97eff54787e85d616067d398bb0e34bb322ea6b2fbe98852acfb24a0e08c2694ec46937634123c16d0024b4cb9ca511317166dcc0581cc92286c4ab17fd8ff7";
+      sha512 = "ab54d6eb2f9e6d964b03c50d524d08e2906a6ee4e2161a516e26bafb4065b67cfe613782f57cfa4fb2e0f04204b62fd013ab6f75596d6f3f9162a24f6126b611";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/sk/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/sk/firefox-66.0.2.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "2bfcdb4f6e6bbda6d8e74721885b16cf32823459436bfe646fa1a9f473967e3f67edbfef53a32a36d40522fd188416adb122c79ec72703c19d3041ff62bddbc7";
+      sha512 = "db88ef36e7053594acdf0d46e42e948cfaa5e792e1782f9400343070aed8ace2793e482f25f7e1134ece6ca64ac27023b11888b012d74fc0a0af523a7984cdce";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/sl/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/sl/firefox-66.0.2.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "a02f9f1e55e6c29499873ff53a7fed1e8ebb31efc2b7d35eb771598f724ac4bf01c50f71c8c6bd632f47bf98fe00a8352ea22a155089d9cfb046f5c5fb886719";
+      sha512 = "f98af8f8d38bed7b54955536a8d68de4dc49b6a7bf672c4fc9a5ccc85cd41e5299d3ab897cbc794f2427a0c44da5b54b855c4680315ce6d5b13f378381216a7d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/son/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/son/firefox-66.0.2.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "9d42a89812f50ecc13134eab1377f7a3fddb2bf57a39aa3673ac0a6ab0154870965520e367498abb036844c24d6dd00a3299faeeb126805a990482a36ea78a6a";
+      sha512 = "e146a52b975fe95e5bc5b832a84ed352310f981ef87fa0ddec60cdd05c630db24f8661504a7854a17d26f68042021c4431e5c4199870fb26a060365d4ee8dfd4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/sq/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/sq/firefox-66.0.2.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "296edc5903edd69a8ca727e44e4d13409bcefe81972e626c0f1b58749c6511e1504f7fc7869724aca7725c2ca1ca7044465d6308821ae6aa6c833d56a57c4a82";
+      sha512 = "0904eb3aa5ce9fbd51094b751220f33eb20a2eb5eaa1768adbae36d7caa1c9b1d69782e6392fac877297628f0a075bfa8eeac67c96884f40830d10254ff5f6bc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/sr/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/sr/firefox-66.0.2.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "7ce8e3fc3cd3c402aba07e34b647c05de38879c7dca2b971f3883b0c833a3afb7f3403403c4993eba62279f5bea95562708fb4cb9452c3ae76cbf59b227ba830";
+      sha512 = "984c046333eae94afbffaf8a8b93dc141f77216fa425e3663656487c36056c45cc922fbd0e7173f6c271e1f7b3a3b07caa9d0a21881e6b9de3a9e86a5330d318";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/sv-SE/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/sv-SE/firefox-66.0.2.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "942286bb1ddfec2cd4d8dea7012d1bfa98e0c59692cbd0b45dc7a0dad0e6872cd6ffa36dfcdadf5591894172f81aacec2b0c39c7d6be8fe2810666974b3b5364";
+      sha512 = "55e4fde42ee9b1bfbcf223d8e277101569e914d3e36f74c2dc003a22f1b7f36920a4e7cbb146ee72f6ec4edd90d6e0cf159bd74bd4725232b7e8fb61e9e838f2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ta/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ta/firefox-66.0.2.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "7fe7c079cab423280744b03a55b1807ff7a8bf495a1c95ad7963b303ceaf1045711c33f9a4dc1b23f75bee0016448e54d9067c0d9eb692cf7b8a820375605c2b";
+      sha512 = "f4c00470d6bf3adbe864655b87bc40bbe018cd132204bebad3273f5454966540f724cd135fa53adc432c27fc5876245ba5cf0b9fca1887ee37ab572b7a74cb36";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/te/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/te/firefox-66.0.2.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "35eea8679205d526b1f9a665c14fbc2b0570866ae7a1003429e01e109fd5ba5b0a63cff2adf4c88eac28b22b346fd3612a1a40f09d11f42649bc3ef98f34c6ad";
+      sha512 = "eae9d861788975ebd216d3775273c51dbbb6bfae08eda8bf883609950b1d28de38cb3cc16b48f3f93b15065e2c9b69b882077786398b4ef0794442a3a9377045";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/th/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/th/firefox-66.0.2.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "4db51c9f6b47fd30d5bfb4510f93b8032edcd06ec4f3dc76202d65732ab6cd4ef8eed4b7a500e51a9471d79a2d7752229e1cee2615c167b2419a84f5a039d36f";
+      sha512 = "f25178b67d23a6e04b1719c4553eb30bf6e2563c46ccfc42470d1127c59e4740bfb08589c7a2c034efb37d5b7962d10784ea9a131e265706959dfbf02ccb736d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/tr/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/tr/firefox-66.0.2.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "1be513d36bc5c92666f855efb3d556ac947be0891cb3761151f7da7d77b185819718450144ef6d2edf7228c42952e7dd968688ca00b8fd72ea947d8ebcba37bf";
+      sha512 = "9e57dc0338fc84eda2f5aaf4d14e185af061b853e81163b6ee4002e9a7b1dfbd3025d04073d7981e9983de5e27f81e4db3b23397e5083999d3972c02d1fac06f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/uk/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/uk/firefox-66.0.2.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "2e70a372e54bc6b5e620294ee9cbf13000077ca8565f144bf43d3ffd09cfc57a5189aa5b23d6532897b28e7d9a724f4b21ddff869e02af405879c0ec740a0946";
+      sha512 = "7658f8a0a3679f1c1575d89aee699cbac41c5c922ace6cc9addffd0cefb5c0e6acd8b12797cf07ab1d75a08c8f3ed179af433ef2c18a9751982fba307340b963";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/ur/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/ur/firefox-66.0.2.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "21203b3ecaeb6504b940b22b70297c9890befafc3bf6eb1aeca5d3b8de93657ef50fcc953ac560d72ecf1a74f908740e0f9e4e581bf78ab302ca6ee0595c7f11";
+      sha512 = "499b74fe1d42e0680c89b9eb2c4ae6cfecbae6a301f531fd9a858a8cff181dc9bf36e879149aa503159dfbf292a8a75c0b62bad75bb196a5b8fb8c10e62f51ff";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/uz/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/uz/firefox-66.0.2.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "d5e555907a5ff04ff109d38928cf41c87d2be748319bac6b64b1c70ca440315eccdd630e8a806b5ffc9facc12d969f3739a8917a01b01b05609268ed993e8b72";
+      sha512 = "84eb5a78e66afd9c64ebcd419eaa4272a699a1a0394cb4d45f148b149bbddd6e0d827f62b353d50b09dd0ef6c111278eb7947bd1bebe38dd0da0b6522c9221b1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/vi/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/vi/firefox-66.0.2.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "0db81ab14f46cf76b3ffdbe0425f6ff2428dd214f4ffa9c3a623f218bda7483f78d91accce28004e3afc79475a326597bd9d4f1ac2150592ddbab7251a654aaa";
+      sha512 = "cd8ec1c51ebf079aeed69f5875549727851f3999a26d75ef4e6b15f70b4a746f8dbe29f2527e37c4b3b4ad2d83972ebb7e4781b4d9304e6d09939684bf13a23d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/xh/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/xh/firefox-66.0.2.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "14ec22f2b54f1f01bdab932b9ee344275bd89c36b755252629354e9440e6cac1509b18519519322920b96f043ad2a64fc3477c68364787db7ba95ae9af0fff9a";
+      sha512 = "abfa5c22d001e5f8298b29b53f6864f7ab2745ae474b113fb5ec6fcb3ea2dc27b1c98abfd0e55bc9c0fc0e43be55a362264ee6f7ad2938dc846826ba6e4ab516";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/zh-CN/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/zh-CN/firefox-66.0.2.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "5af1cbe3ede86f3d848e9522ef5b29b269a19602973f961f5fe502643757187e91c1a74ec83ff270da7e37a3e86280e42f8ceaf8233c71cf75c8532f619c4d9f";
+      sha512 = "c9e536e63d06f8a1a94d881008ad5d645cb56fd3acd40ec473ee0f0ddc1957ac567fad96057d27ad00000ac40da06c12f8422f743f37bb9a51ba56de214c13ca";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.1/linux-i686/zh-TW/firefox-66.0.1.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/66.0.2/linux-i686/zh-TW/firefox-66.0.2.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "69a449be2defc350fd719ce907ba61f9b58fd90c190c9f1225f4f3385b144bce48cd063ce3d0432eac32af82b072d3105fccaa88cd2e3894c3790280e1bf1a9b";
+      sha512 = "a47432a5f5c7e39ff66c2c832161f3105dea259d15a9151ffee8fec04fad3a6760ee06bd4828f7e361d78a1bf08163f17014e3389936ec60f1babe764d263371";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index 537e050cf3b4..8b7f15ca7ebb 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -10,10 +10,10 @@ rec {
 
   firefox = common rec {
     pname = "firefox";
-    ffversion = "66.0.1";
+    ffversion = "66.0.2";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
-      sha512 = "3nh42a9s8hzs3823mddqdcrhjb2nrphaz9v94mmp4xx4vra18mhsyddszk6xg5mx33wamvlalicws6l9h1d4i4dnnpchh2l6ch8m9kc";
+      sha512 = "1dzqzigrwb7q75zlyd74ncic3b39yvziccpgbzh7881lzshj7x6f2r6ssj8ssdkh8lm2ckhjzbn6pf44vlh8ciql9bxb8g8sjpg6ii2";
     };
 
     patches = [
diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix
index ffae170a1990..ef31898dd0c7 100644
--- a/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -15,13 +15,13 @@ with lib;
 
 stdenv.mkDerivation rec {
   name = "kubernetes-${version}";
-  version = "1.13.4";
+  version = "1.13.5";
 
   src = fetchFromGitHub {
     owner = "kubernetes";
     repo = "kubernetes";
     rev = "v${version}";
-    sha256 = "1q3dc416fr9nzy64pl7rydahygnird0vpk9yflssw7v9gx84m6x9";
+    sha256 = "06pf4h76zsqs3dsxr57y9sb9sw48nfyw1x2q1725zww61jfz2a6y";
   };
 
   buildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ];
diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix
index 13c7f59f7944..4263abf0771d 100644
--- a/pkgs/applications/networking/cluster/minikube/default.nix
+++ b/pkgs/applications/networking/cluster/minikube/default.nix
@@ -14,9 +14,9 @@ let
 in buildGoPackage rec {
   pname   = "minikube";
   name    = "${pname}-${version}";
-  version = "0.35.0";
+  version = "1.0.0";
 
-  kubernetesVersion = "1.13.4";
+  kubernetesVersion = "1.14.0";
 
   goPackagePath = "k8s.io/minikube";
 
@@ -24,7 +24,7 @@ in buildGoPackage rec {
     owner  = "kubernetes";
     repo   = "minikube";
     rev    = "v${version}";
-    sha256 = "1qb342zs50sdfvfb8vbn7vrx11qqjy1hw518c053s7p34ljb24qd";
+    sha256 = "170iy0h27gkz2hg485rnawdw069gxwgkwsjmfj5yag2kkgl7gxa3";
   };
 
   buildInputs = [ go-bindata makeWrapper gpgme ] ++ stdenv.lib.optional stdenv.hostPlatform.isDarwin vmnet;
diff --git a/pkgs/applications/networking/cluster/terraform-providers/data.nix b/pkgs/applications/networking/cluster/terraform-providers/data.nix
index a171ce38485d..ef0da8e6ff5b 100644
--- a/pkgs/applications/networking/cluster/terraform-providers/data.nix
+++ b/pkgs/applications/networking/cluster/terraform-providers/data.nix
@@ -11,15 +11,15 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-alicloud";
-      version = "1.34.0";
-      sha256  = "1vcf3jvwn7vgbsyp6lqibh3yy301sykjzl9hgzzwxg4p1wq6i038";
+      version = "1.36.0";
+      sha256  = "13rmlsnplcmcxjksm1wizgzlx47h5in5gmqhbm2n6k5ayx4x9ha2";
     };
   archive =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-archive";
-      version = "1.1.0";
-      sha256  = "1fsynv725cmqz819v9p4i4h4w4y77mbya5y9v81sqvacqvr3i05h";
+      version = "1.2.0";
+      sha256  = "1qargj90nl7r8a1fcsj10fnjirskvbn3gz0dsijqnr432jxs2cvh";
     };
   arukas =
     {
@@ -39,8 +39,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-aws";
-      version = "2.1.0";
-      sha256  = "1gz7y8k6x3jg8jqy6n105vg2p4vj5zayfhand7xi82w0ykf8kipn";
+      version = "2.3.0";
+      sha256  = "0cim14q56xr7hm06d4sy205p4xp1x3kbddb4pw65ck671i55h7ln";
     };
   azuread =
     {
@@ -193,8 +193,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-external";
-      version = "1.0.0";
-      sha256  = "1sh0m8d6wp76h1b89j820yl3caji0f0wlgq3pwa5nk99h73rlndn";
+      version = "1.1.0";
+      sha256  = "18gwwcspj31rid0r603z0688nzdwl2nl8wy6hrzw62bx5gy4bdrp";
     };
   fastly =
     {
@@ -228,15 +228,15 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-google";
-      version = "2.2.0";
-      sha256  = "1cnybx6gbd6yfl8nmk2i0k4wag1x5srq927k3ayivr0jgk01d8cl";
+      version = "2.3.0";
+      sha256  = "063z08qamy0yx376qh0pxd446kbnp6z1828x6nr7yzh4dw0rzc3s";
     };
   google-beta =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-google-beta";
-      version = "2.2.0";
-      sha256  = "0m34qas6plh4pchp9vf0hnb3f07y8lzywwmrycfllqg6f7c38869";
+      version = "2.3.0";
+      sha256  = "120vq5bd092ykv6cc53w9208wfmf2hd8hflas282l4yg0b47gx83";
     };
   grafana =
     {
@@ -249,15 +249,15 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-hcloud";
-      version = "1.8.1";
-      sha256  = "07s2fgd9dxajqj0w7pyma0fz5q5a96s7hbpmk1pmbw9lqvxmabgf";
+      version = "1.9.0";
+      sha256  = "08ag1xwn6vj4w8kz37z8hsi8lkvfwkw5n8wjb5c03g9yva1j85yx";
     };
   hedvig =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-hedvig";
-      version = "1.0.2";
-      sha256  = "1zk93iv57f9b8qcr1byhpxjpf1mxpbsd94iyv5k5r2xzw53ccv7q";
+      version = "1.0.3";
+      sha256  = "0kqnbd78m4r97b5w7skkpcnhc0bqh2cky7q0inhdhsb7gvivz1b1";
     };
   helm =
     {
@@ -284,8 +284,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-huaweicloud";
-      version = "1.3.0";
-      sha256  = "1pm2zfss20spfwqidhn04hcq4nxxamjkn6xv8vxm3mgrky1ysvp5";
+      version = "1.4.0";
+      sha256  = "018b57cndl72vjlijwvjx64rxjgimcqq1f6dxdny3wj1j4i0h4fi";
     };
   icinga2 =
     {
@@ -333,8 +333,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-local";
-      version = "1.1.0";
-      sha256  = "1qxfyyg8k43rw0gny4dadamc2a9hk3x6ybdivifjc17m7il0janc";
+      version = "1.2.0";
+      sha256  = "1w63ar3cr4095kza400chmmdzdadb1d871pbd14pzghl63nyg4ig";
     };
   logentries =
     {
@@ -375,8 +375,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-newrelic";
-      version = "1.4.0";
-      sha256  = "09asrq9y0l49vq3cg96zmshdpgv7dgkvi2yda45cqz04bi6jvszz";
+      version = "1.5.0";
+      sha256  = "1if8i435v4nf18hdvwwz3nvlkaf8yjzcxi300blri2xfx95chsxw";
     };
   nomad =
     {
@@ -389,8 +389,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-ns1";
-      version = "1.1.2";
-      sha256  = "0ayxw40yg0k64i3y4hsghzyv3q3bqr1y142y7mc2xwnvgvgzzg98";
+      version = "1.2.0";
+      sha256  = "0j9xghm84zjfgsmix1gdslr4pnhcf2xmb7n1851a3pmxd851fd9b";
     };
   nsxt =
     {
@@ -417,8 +417,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-oci";
-      version = "3.18.0-rc1";
-      sha256  = "08i08lvvi3i2xyz49yk59k9qsiywds9l0cp6xijj16vkkgwysiw2";
+      version = "3.20.0-rc1";
+      sha256  = "07z4bl2fz8wvfjznrci6dxigx8ypi2r4w8xk9fv0bpjm0a6pp813";
     };
   oneandone =
     {
@@ -445,8 +445,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-opentelekomcloud";
-      version = "1.6.1";
-      sha256  = "143sbfhc44bw21wa86lyd2m7vdihhnqs7grrdxpmw4w7bcx9sql2";
+      version = "1.7.0";
+      sha256  = "15p5xvl6ryj5silpd2yrmjjh0d4qf89v8x6zbq8x7j351a1fljak";
     };
   opsgenie =
     {
@@ -459,8 +459,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-oraclepaas";
-      version = "1.4.3";
-      sha256  = "0lyz2fjs4hr28ymx1qlzp93r3w4qn74bglipgv5mf55k543dmwdz";
+      version = "1.5.0";
+      sha256  = "1vnaqzs7i2kn37sxf1sknxn6j1d24xlckqcvkh9xzi8jrmm4rgvr";
     };
   ovh =
     {
@@ -473,8 +473,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-packet";
-      version = "1.4.1";
-      sha256  = "0wky3kw3vhb1bn7n7h03nbd6n7bz1xbmygs0ipnkgq4qyzydjrhh";
+      version = "1.5.0";
+      sha256  = "0c59f2q8ivdn47f4shy674794aijc7byb6273lfcdaal1gb0mw79";
     };
   pagerduty =
     {
@@ -508,8 +508,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-profitbricks";
-      version = "1.4.2";
-      sha256  = "0raz070sj5csyqn3gav1a5p5dsbrym9ba8nfw43hbnk5ixxr0izk";
+      version = "1.4.3";
+      sha256  = "19rqqx5ib23nhvz2smh20cii25g09sdi7kg85m4nlbh63gqg86qf";
     };
   rabbitmq =
     {
@@ -529,8 +529,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-random";
-      version = "2.0.0";
-      sha256  = "0plg139pbvqwbs5hcl7d5kjn7vwknjr4n0ysc2j5s25iyhikkv9s";
+      version = "2.1.0";
+      sha256  = "1219128f838szcjgjv6figrmh4r7lhxrr22mf9fpf5a30wi0ssqf";
     };
   rightscale =
     {
@@ -557,15 +557,15 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-scaleway";
-      version = "1.8.0";
-      sha256  = "1vr3im5jas7m3yn5529m6ghhx4lxf2lksqbznpwyi351sbsn4ji2";
+      version = "1.9.2";
+      sha256  = "0wjkjf4sc3rfxiz3lfw6cfhdn8a7pzmyfw1f2dsp3a6fpa2srbph";
     };
   selectel =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-selectel";
-      version = "2.0.0";
-      sha256  = "1yw1526llvqc3ibrmjffan2lvqas99x93h6rlz9lrgzylgxnqaxy";
+      version = "2.1.0";
+      sha256  = "078pyml9nwv7347yni1h7mjdp8sd4zyccv80mgjn8xh2q208fqpg";
     };
   skytap =
     {
@@ -585,8 +585,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-spotinst";
-      version = "1.8.0";
-      sha256  = "1j6gab5vva21m01p5gh0x1p64jnx9ch2q3zd4f1s8ch9mba6zgsl";
+      version = "1.9.0";
+      sha256  = "0rpkxg50gkm9ji7s4bl1wz7j1z2iw5jq9n1pfmcs9nk0rl17j77j";
     };
   statuscake =
     {
@@ -627,8 +627,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-tfe";
-      version = "0.7.1";
-      sha256  = "0iqr1r4fd14c9fyj4f21kmnlypxsdi1w787gdj2jr27acqkq3pqh";
+      version = "0.8.1";
+      sha256  = "0an0il8h0ly639z92cc007xjjs3cyk25jkbnkp99kkj0mf760729";
     };
   tls =
     {
@@ -648,8 +648,8 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-ucloud";
-      version = "1.3.0";
-      sha256  = "16mnkm781x5ijbdcsxc56kw7ppag4js0gmlx64ry8fwywm8ma0pp";
+      version = "1.4.0";
+      sha256  = "1nl6k2313wwdzpm2n29bab9xs3l00vyhrdl14r82kax6hjm748qm";
     };
   ultradns =
     {
@@ -669,22 +669,22 @@
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-vcd";
-      version = "2.0.0";
-      sha256  = "1h4zcxbrg6j4xy3hw84f9mmnz535a91jgxvymnrjadgm91bn6g8s";
+      version = "2.1.0";
+      sha256  = "0azmjddysl38n58vk94zhm2g7s5aw71gvn83h4n7amf2j7p7ks9j";
     };
   vsphere =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-vsphere";
-      version = "1.9.1";
-      sha256  = "07pxzy8fw0n0kq9mf43bz4cycbwxp8vy0jbl44sknszmzbn4pam7";
+      version = "1.10.0";
+      sha256  = "039s95afqrcpf6jiprqsqnvlsnxbs5vcqrsgg6pbs52rlwp1ixgw";
     };
   yandex =
     {
       owner   = "terraform-providers";
       repo    = "terraform-provider-yandex";
-      version = "0.1.15";
-      sha256  = "03ynfzdlpl5z7lpq5yisqkzsk53lfz71ss30bfvx0q3qhv7514dy";
+      version = "0.2.0";
+      sha256  = "0y7pnl47dg83i7r95gy8h1ayilaji2k5i048l5pkavp1yxx9i22g";
     };
   matchbox =
     {
diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix
index b8af1541809a..9afc61c3c0c4 100644
--- a/pkgs/applications/networking/flexget/default.nix
+++ b/pkgs/applications/networking/flexget/default.nix
@@ -1,4 +1,4 @@
-{ lib, python36 }:
+{ lib, python3 }:
 
 # Flexget have been a trouble maker in the past,
 # if you see flexget breaking when updating packages, don't worry.
@@ -6,7 +6,7 @@
 # -- Mic92
 
 let
-  python' = python36.override { inherit packageOverrides; };
+  python' = python3.override { inherit packageOverrides; };
 
   packageOverrides = self: super: {
     guessit = super.guessit.overridePythonAttrs (old: rec {
@@ -24,16 +24,14 @@ with python'.pkgs;
 
 buildPythonApplication rec {
   pname = "FlexGet";
-  version = "2.17.20";
+  version = "2.20.17";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "a09ef9482ed54f7e96eb8b4d08c59687c5c43a3341c9d2675383693e6c3681c3";
+    sha256 = "ed021d8d5c10555dad8dc1cb93c012e17b541fc25fc122b7ca76bb7e53fe82b3";
   };
 
   postPatch = ''
-    # build for the correct python version
-    substituteInPlace setup.cfg --replace $'[bdist_wheel]\npython-tag = py27' ""
     # remove dependency constraints
     sed 's/==\([0-9]\.\?\)\+//' -i requirements.txt
   '';
@@ -47,12 +45,13 @@ buildPythonApplication rec {
     beautifulsoup4 html5lib
     PyRSS2Gen pynzb rpyc jinja2
     requests dateutil jsonschema
-    pathpy guessit APScheduler
+    pathpy guessit rebulk APScheduler
     terminaltables colorclass
     cherrypy flask flask-restful
     flask-restplus flask-compress
     flask_login flask-cors
     pyparsing zxcvbn-python future
+    progressbar
     # Optional requirements
     deluge-client
     # Plugins
diff --git a/pkgs/applications/networking/google-drive-ocamlfuse/default.nix b/pkgs/applications/networking/google-drive-ocamlfuse/default.nix
index 47270cbcba8a..15e0b5a07b43 100644
--- a/pkgs/applications/networking/google-drive-ocamlfuse/default.nix
+++ b/pkgs/applications/networking/google-drive-ocamlfuse/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "google-drive-ocamlfuse-${version}";
-  version = "0.7.1";
+  version = "0.7.2";
 
   src = fetchFromGitHub {
     owner = "astrada";
     repo = "google-drive-ocamlfuse";
     rev = "v${version}";
-    sha256 = "0sjjlfndz8s78fl7vb8alz3nsksjrm4hbnnj11xa0i6k16v6pv1y";
+    sha256 = "1l6b4bs5x373pw210nl8xal03ns2ib1ls49y64s3lqjfh5wjmnjy";
   };
 
   nativeBuildInputs = [ dune ];
diff --git a/pkgs/applications/networking/instant-messengers/coyim/default.nix b/pkgs/applications/networking/instant-messengers/coyim/default.nix
index 86fb3d7de2c1..e2e94db089da 100644
--- a/pkgs/applications/networking/instant-messengers/coyim/default.nix
+++ b/pkgs/applications/networking/instant-messengers/coyim/default.nix
@@ -3,15 +3,15 @@
 
 buildGoPackage rec {
   name = "coyim-${version}";
-  version = "0.3.7_1";
+  version = "0.3.11";
 
-  goPackagePath = "github.com/twstrike/coyim";
+  goPackagePath = "github.com/coyim/coyim";
 
   src = fetchFromGitHub {
-    owner = "twstrike";
+    owner = "coyim";
     repo = "coyim";
-    rev = "df2c52fe865d38fa27e8a7af1d87612e8c048805";
-    sha256 = "1sna1n9dz1crws6cb1yjhy2kznbngjlbiw2diycshvbfigf7y7xl";
+    rev = "v${version}";
+    sha256 = "1g8nf56j17rdhhj7pv3ha1rb2mfc0mdvyzl35pgcki08w7iw08j3";
   };
 
   nativeBuildInputs = [ pkgconfig wrapGAppsHook glib cairo gdk_pixbuf gtk3 gnome3.adwaita-icon-theme ];
diff --git a/pkgs/applications/networking/instant-messengers/oysttyer/default.nix b/pkgs/applications/networking/instant-messengers/oysttyer/default.nix
index c71db351e9d2..64443461e375 100644
--- a/pkgs/applications/networking/instant-messengers/oysttyer/default.nix
+++ b/pkgs/applications/networking/instant-messengers/oysttyer/default.nix
@@ -3,13 +3,13 @@ fetchFromGitHub, makeWrapper }:
 
 stdenv.mkDerivation rec {
   name = "oysttyer-${version}";
-  version = "2.9.1";
+  version = "2.10.0";
 
   src = fetchFromGitHub {
     owner  = "oysttyer";
     repo   = "oysttyer";
     rev    = "${version}";
-    sha256 = "05bfak4jr8ln4847rkj5qkazqnjym65k1phav3yicbyr3mxywhjw";
+    sha256 = "0cm1hvi68iqgjsg15xdii271pklgzjn9j9afb1c460z71kgy3wz2";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
index 35286d6a2b18..7ce41d9e27e4 100644
--- a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
@@ -3,11 +3,11 @@
 let configFile = writeText "riot-config.json" conf; in
 stdenv.mkDerivation rec {
   name= "riot-web-${version}";
-  version = "1.0.5";
+  version = "1.0.6";
 
   src = fetchurl {
     url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
-    sha256 = "0m0kdnw0pc84yasnybfh9hmkajji0wjk2snv89crdi79s8k572ki";
+    sha256 = "09sm1k3iypqn93iazfx10y4bqz06d2h8f0902sgrj5qbnaq4jcxr";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
index e088bb7666e0..116e4917354e 100644
--- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix
@@ -57,11 +57,11 @@ let
 
 in stdenv.mkDerivation rec {
   name = "signal-desktop-${version}";
-  version = "1.23.1";
+  version = "1.23.2";
 
   src = fetchurl {
     url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb";
-    sha256 = "1i0s0pd67hcwc8m2xyydxky76yq796lg2h91lw7n9xi7lvpg5m4s";
+    sha256 = "0nl8rv0lgp4cwv029kl7y09ngcrik2657m4wjn0rnls8kpmdhd8j";
   };
 
   phases = [ "unpackPhase" "installPhase" ];
diff --git a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
index f510e0e783ec..883258f71b1d 100644
--- a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
@@ -1,16 +1,18 @@
 { 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, libnotify, libpulseaudio, libsecret, libv4l, nspr, nss, pango, systemd, wrapGAppsHook, xorg
+, at-spi2-atk }:
 
 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.34.0.78";
+  version = "8.42.76.54";
 
   rpath = stdenv.lib.makeLibraryPath [
     alsaLib
     atk
+    at-spi2-atk
     cairo
     cups
     curl
@@ -56,7 +58,7 @@ let
     if stdenv.hostPlatform.system == "x86_64-linux" then
       fetchurl {
         url = "https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb";
-        sha256 = "1986nvdw1cpj06rq76hjsif0j4z5g2k01v73r4c4n43q7dgzl5z0";
+        sha256 = "1r2wkaa4ss6b8289db3p012nlhvljbx57hp7jc9n0mp19yphd07l";
       }
     else
       throw "Skype for linux is not supported on ${stdenv.hostPlatform.system}";
diff --git a/pkgs/applications/networking/p2p/gnunet/default.nix b/pkgs/applications/networking/p2p/gnunet/default.nix
index 8e1777b0ce79..715d8e13ec30 100644
--- a/pkgs/applications/networking/p2p/gnunet/default.nix
+++ b/pkgs/applications/networking/p2p/gnunet/default.nix
@@ -4,11 +4,11 @@
 , libpulseaudio, libopus, libogg }:
 
 stdenv.mkDerivation rec {
-  name = "gnunet-0.10.1";
+  name = "gnunet-0.11.0";
 
   src = fetchurl {
     url = "mirror://gnu/gnunet/${name}.tar.gz";
-    sha256 = "04wxzm3wkgqbn42b8ksr4cx6m5cckyig5cls1adh0nwdczwvnp7n";
+    sha256 = "16kydkrjlf2vxflgls46bwaf9kjczf621p456q0qlphd7cy7lixp";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/networking/p2p/tixati/default.nix b/pkgs/applications/networking/p2p/tixati/default.nix
index 13d44655df84..d58c4214d0e0 100644
--- a/pkgs/applications/networking/p2p/tixati/default.nix
+++ b/pkgs/applications/networking/p2p/tixati/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "tixati-${version}";
-  version = "2.58";
+  version = "2.59";
 
   src = fetchurl {
     url = "https://download2.tixati.com/download/tixati-${version}-1.x86_64.manualinstall.tar.gz";
-    sha256 = "077z5i0grkxkgw2npylv4r897434k2pr03brqx5hjpjw3797r141";
+    sha256 = "0vf5y9kj2g7psgdzv2r46jdh5krdps838ca4wwwxi0dd1mwa65my";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/networking/protonvpn-cli/default.nix b/pkgs/applications/networking/protonvpn-cli/default.nix
new file mode 100644
index 000000000000..e79ca515b518
--- /dev/null
+++ b/pkgs/applications/networking/protonvpn-cli/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, lib, fetchFromGitHub, makeWrapper, coreutils
+, openvpn, python, dialog, wget, update-resolv-conf }:
+
+let
+  expectedUpdateResolvPath = "/etc/openvpn/update-resolv-conf";
+  actualUpdateResolvePath = "${update-resolv-conf}/libexec/openvpn/update-resolv-conf";
+
+in stdenv.mkDerivation rec {
+  name = "protonvpn-cli";
+  version = "1.1.2";
+
+  src = fetchFromGitHub {
+    owner = "ProtonVPN";
+    repo = "protonvpn-cli";
+    rev = "v${version}";
+    sha256 = "0xvflr8zf267n3dv63nkk4wjxhbckw56sqmyca3krf410vrd7zlv";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  installPhase = ''
+    mkdir -p "$out/bin"
+    substituteInPlace protonvpn-cli.sh \
+      --replace ${expectedUpdateResolvPath} ${actualUpdateResolvePath} \
+      --replace \$UID 0 \
+      --replace /etc/resolv.conf /dev/null \
+      --replace \
+        "  echo \"Connecting...\"" \
+        "  sed -ri 's@${expectedUpdateResolvPath}@${actualUpdateResolvePath}@g' \"\$openvpn_config\"; echo \"Connecting...\""
+    cp protonvpn-cli.sh "$out/bin/protonvpn-cli"
+    ln -s "$out/bin/protonvpn-cli" "$out/bin/pvpn"
+  '';
+
+  postInstallPhase = ''
+    wrapProgram $out/protonvpn-cli \
+      --prefix PATH : ${lib.makeBinPath [ coreutils openvpn python dialog wget update-resolv-conf ]}
+  '';
+
+  meta = with stdenv.lib; {
+    description = "ProtonVPN Command-Line Tool";
+    homepage = https://github.com/ProtonVPN/protonvpn-cli;
+    maintainers = with maintainers; [ caugner ];
+    license = licenses.mit;
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/networking/ps2client/default.nix b/pkgs/applications/networking/ps2client/default.nix
new file mode 100644
index 000000000000..5b292fe7bec5
--- /dev/null
+++ b/pkgs/applications/networking/ps2client/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  version = "unstable-2018-10-18";
+  name = "ps2client-${version}";
+
+  src = fetchFromGitHub {
+    owner = "ps2dev";
+    repo  = "ps2client";
+    rev = "92fcaf18aabf74daaed40bd50d428cce326a87c0";
+    sha256 = "1rlmns44pxm6dkh6d3cz9sw8v7pvi53r7r5r3kgwdzkhixjj0cdg";
+  };
+
+  patchPhase = ''
+   sed -i -e "s|-I/usr/include||g" -e "s|-I/usr/local/include||g" Makefile
+  '';
+  
+  installPhase = ''
+    make PREFIX=$out install
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Desktop clients to interact with ps2link and ps2netfs";
+    homepage = https://github.com/ps2dev/ps2client;
+    license = licenses.bsd3;
+    maintainers = [ maintainers.genesis ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/networking/remote/remmina/default.nix b/pkgs/applications/networking/remote/remmina/default.nix
index bd4ea2d9238d..951b136dd4e4 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.3";
+  version = "1.3.4";
 
   src = fetchFromGitLab {
     owner  = "Remmina";
     repo   = "Remmina";
     rev    = "v${version}";
-    sha256 = "09mizr9igf22kk26rdx5masai8ghd2nbqryvswkybvia2s6lccrs";
+    sha256 = "18p6v2lalpiba0r318grlc2bvqh2qlpjw811i0934g33faviyfj1";
   };
 
   nativeBuildInputs = [ cmake ninja pkgconfig wrapGAppsHook ];
diff --git a/pkgs/applications/networking/spideroak/default.nix b/pkgs/applications/networking/spideroak/default.nix
index fdb4206d340f..d96a810ee05a 100644
--- a/pkgs/applications/networking/spideroak/default.nix
+++ b/pkgs/applications/networking/spideroak/default.nix
@@ -4,31 +4,21 @@
 }:
 
 let
-  arch = if stdenv.hostPlatform.system == "x86_64-linux" then "x64"
-    else if stdenv.hostPlatform.system == "i686-linux" then "x86"
-    else throw "Spideroak client for: ${stdenv.hostPlatform.system} not supported!";
-
-  interpreter = if stdenv.hostPlatform.system == "x86_64-linux" then "ld-linux-x86-64.so.2"
-    else if stdenv.hostPlatform.system == "i686-linux" then "ld-linux.so.2"
-    else throw "Spideroak client for: ${stdenv.hostPlatform.system} not supported!";
-
-  sha256 = if stdenv.hostPlatform.system == "x86_64-linux" then "a88e5a8fe4a565ac500668bd53cf5784752d7c9253304ddce39ee7b01d078533"
-    else if stdenv.hostPlatform.system == "i686-linux" then "668f3b83a974a3877d16c8743c233a427ea0a44ab84b7f9aec19a2995db66c16"
-    else throw "Spideroak client for: ${stdenv.hostPlatform.system} not supported!";
+  sha256 = "6d6ca2b383bcc81af1217c696eb77864a2b6db7428f4b5bde5b5913ce705eec5";
 
   ldpath = stdenv.lib.makeLibraryPath [
     fontconfig freetype glib libICE libSM
     libX11 libXext libXrender zlib
   ];
 
-  version = "7.1.0";
+  version = "7.5.0";
 
 in stdenv.mkDerivation {
   name = "spideroak-${version}";
 
   src = fetchurl {
-    name = "SpiderOakONE-${version}-slack_tar_${arch}.tgz";
-    url = "https://spideroak.com/release/spideroak/slack_tar_${arch}";
+    name = "SpiderOakONE-${version}-slack_tar_x64.tgz";
+    url = "https://spideroak.com/release/spideroak/slack_tar_x64";
     inherit sha256;
   };
 
@@ -46,7 +36,7 @@ in stdenv.mkDerivation {
 
     rm -f $out/opt/SpiderOakONE/lib/libz*
 
-    patchelf --set-interpreter ${stdenv.glibc.out}/lib/${interpreter} \
+    patchelf --set-interpreter ${stdenv.glibc.out}/lib/ld-linux-x86-64.so.2 \
       "$out/opt/SpiderOakONE/lib/SpiderOakONE"
 
     RPATH=$out/opt/SpiderOakONE/lib:${ldpath}
diff --git a/pkgs/applications/networking/syncplay/default.nix b/pkgs/applications/networking/syncplay/default.nix
index fc9ed59016f6..4f4eaf302455 100644
--- a/pkgs/applications/networking/syncplay/default.nix
+++ b/pkgs/applications/networking/syncplay/default.nix
@@ -2,13 +2,13 @@
 
 python3Packages.buildPythonApplication rec {
   name = "syncplay-${version}";
-  version = "1.6.2";
+  version = "1.6.3";
 
   format = "other";
 
   src = fetchurl {
-    url = https://github.com/Syncplay/syncplay/archive/v1.6.2.tar.gz;
-    sha256 = "1850icvifq4487gqh8awvmvrjdbbkx2kshmysr0fbi6vcf0f3wj2";
+    url = https://github.com/Syncplay/syncplay/archive/v1.6.3.tar.gz;
+    sha256 = "151p1njlp3dp3pfr3l3m6ia5829zvjyjh4p45j6rgnicbh8sqrgs";
   };
 
   propagatedBuildInputs = with python3Packages; [ pyside twisted ];
diff --git a/pkgs/applications/networking/znc/default.nix b/pkgs/applications/networking/znc/default.nix
index 472f6c13c56f..deb768e6feb6 100644
--- a/pkgs/applications/networking/znc/default.nix
+++ b/pkgs/applications/networking/znc/default.nix
@@ -13,11 +13,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "znc-${version}";
-  version = "1.7.2";
+  version = "1.7.3";
 
   src = fetchurl {
     url = "https://znc.in/releases/archive/${name}.tar.gz";
-    sha256 = "1ac2csl5jr56vahnxdynlvrhwlvcc1gqxvyifckc6cn5aj7ygd30";
+    sha256 = "0g8i5hsl4kinpz1wp0a2zniidv3w2sd6awq8676fds516wcc6k0y";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/office/atlassian-cli/default.nix b/pkgs/applications/office/atlassian-cli/default.nix
index be31f5fd102f..6bb84c523362 100644
--- a/pkgs/applications/office/atlassian-cli/default.nix
+++ b/pkgs/applications/office/atlassian-cli/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "atlassian-cli-${version}";
-  version = "7.8.0";
+  version = "8.0.0";
   
   src = fetchzip {
     url  = "https://bobswift.atlassian.net/wiki/download/attachments/16285777/${name}-distribution.zip";
-    sha256  = "111s4d9m6vxq8jwh1d6ar1f4n5zmyjg7gi2vl3aq63kxbfld9vw7";
+    sha256  = "0ysyam06ll70d0baa3hb7wcgqnqflssr64bqjr3db6fnk1q096m8";
     extraPostFetch = "chmod go-w $out";
   };
   
diff --git a/pkgs/applications/office/calligra/default.nix b/pkgs/applications/office/calligra/default.nix
index a7c6165bdd2b..4a050eb5d749 100644
--- a/pkgs/applications/office/calligra/default.nix
+++ b/pkgs/applications/office/calligra/default.nix
@@ -65,5 +65,7 @@ mkDerivation rec {
     maintainers = with maintainers; [ phreedom ebzzry zraexy ];
     platforms = platforms.linux;
     license = with licenses; [ gpl2 lgpl2 ];
+    hydraPlatforms = [];
+    broken = true; # fails to start, kde home not found
   };
 }
diff --git a/pkgs/applications/office/grisbi/default.nix b/pkgs/applications/office/grisbi/default.nix
index f901123065fa..338cdc170656 100644
--- a/pkgs/applications/office/grisbi/default.nix
+++ b/pkgs/applications/office/grisbi/default.nix
@@ -1,17 +1,17 @@
-{ fetchurl, stdenv, gtk, pkgconfig, libofx, intltool, wrapGAppsHook
+{ fetchurl, stdenv, gtk, pkgconfig, libgsf, libofx, intltool, wrapGAppsHook
 , hicolor-icon-theme, libsoup, gnome3 }:
 
 stdenv.mkDerivation rec {
   name = "grisbi-${version}";
-  version = "1.0.4";
+  version = "1.2.1";
 
   src = fetchurl {
     url = "mirror://sourceforge/grisbi/${name}.tar.bz2";
-    sha256 = "1rh2iqvi7lpz5l57vn7qk9azil3y1g65mfbi9hhbx956knh9bpf6";
+    sha1 = "1159c5491967fa7afd251783013579ffb45b891b";
   };
 
   nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
-  buildInputs = [ gtk libofx intltool hicolor-icon-theme libsoup
+  buildInputs = [ gtk libgsf libofx intltool hicolor-icon-theme libsoup
     gnome3.adwaita-icon-theme ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/office/notes-up/default.nix b/pkgs/applications/office/notes-up/default.nix
index 2dee39a0ad3b..08b6d66a344c 100644
--- a/pkgs/applications/office/notes-up/default.nix
+++ b/pkgs/applications/office/notes-up/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   pname = "notes-up";
-  version = "1.6.3";
+  version = "2.0.0";
 
   src = fetchFromGitHub {
     owner = "Philip-Scott";
     repo = "Notes-up";
     rev = version;
-    sha256 = "06fzdb823kkami0jch9ccblsvw3x7zd1d4xz8fv3giscl3f36x4q";
+    sha256 = "16bb9ffsg2csps1cb636rff5vc6f1yyhg65g3y5b4wf2hlbmzgql";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/office/qownnotes/default.nix b/pkgs/applications/office/qownnotes/default.nix
index f28c49ce4dd7..7c72c03edca1 100644
--- a/pkgs/applications/office/qownnotes/default.nix
+++ b/pkgs/applications/office/qownnotes/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "qownnotes";
-  version = "19.3.0";
+  version = "19.3.4";
 
   src = fetchurl {
     url = "https://download.tuxfamily.org/${pname}/src/${pname}-${version}.tar.xz";
     # Can grab official version like so:
     # $ curl https://download.tuxfamily.org/qownnotes/src/qownnotes-19.1.8.tar.xz.sha256
-    sha256 = "09265d9xgqmdw3fbf94fj2irgq2dp2jhkfd2kq33axfzgpm85bdz";
+    sha256 = "4e2d25acf596ed3a759b298e39f6f8bea001c0625e143616bf97560913d7f86f";
   };
 
   nativeBuildInputs = [ qmake qttools ];
diff --git a/pkgs/applications/office/trilium/default.nix b/pkgs/applications/office/trilium/default.nix
index dc9f0b89b2ff..090152961ca3 100644
--- a/pkgs/applications/office/trilium/default.nix
+++ b/pkgs/applications/office/trilium/default.nix
@@ -13,11 +13,11 @@ let
 
 in stdenv.mkDerivation rec {
   name = "trilium-${version}";
-  version = "0.30.4";
+  version = "0.30.6";
 
   src = fetchurl {
     url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-${version}.tar.xz";
-    sha256 = "1541z56rk329sj7a20llhhmv2f552amj1n3cisvqga4gn2yq3hnm";
+    sha256 = "0f2hf2lky4r4nh3hj5fmniy8gjbgdyj8i5d6bhf156yp3lx802ay";
   };
 
   # Fetch from source repo, no longer included in release.
diff --git a/pkgs/applications/radio/gnuradio/limesdr.nix b/pkgs/applications/radio/gnuradio/limesdr.nix
index 45e416a6c941..839cac32dd6d 100644
--- a/pkgs/applications/radio/gnuradio/limesdr.nix
+++ b/pkgs/applications/radio/gnuradio/limesdr.nix
@@ -5,7 +5,7 @@
 assert pythonSupport -> python != null && swig != null;
 
 let
-  version = "1.0.0-RC";
+  version = "2.0.0";
 
 in stdenv.mkDerivation rec {
   name = "gnuradio-limesdr-${version}";
@@ -14,7 +14,7 @@ in stdenv.mkDerivation rec {
     owner = "myriadrf";
     repo = "gr-limesdr";
     rev = "v${version}";
-    sha256 = "0b34mg9nfar2gcir98004ixrxmxi8p3p2hrvvi1razd869x2a0lf";
+    sha256 = "0ldqvfwl0gil89l9s31fjf9d7ki0dk572i8vna336igfaz348ypq";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/science/astronomy/stellarium/default.nix b/pkgs/applications/science/astronomy/stellarium/default.nix
index eb7ba2a8c9c4..fb7963416167 100644
--- a/pkgs/applications/science/astronomy/stellarium/default.nix
+++ b/pkgs/applications/science/astronomy/stellarium/default.nix
@@ -6,13 +6,13 @@
 
 mkDerivation rec {
   name = "stellarium-${version}";
-  version = "0.18.3";
+  version = "0.19.0";
 
   src = fetchFromGitHub {
     owner = "Stellarium";
     repo = "stellarium";
     rev = "v${version}";
-    sha256 = "1cnwfk3vdsxh8gacw22qik401z0kpzd1ralbg9ph2cjqx9x2m1s1";
+    sha256 = "1x9s9v9ann93nyqd8n8adwhx66xgq5vp0liyzl1h1ji6qk8jla3c";
   };
 
   nativeBuildInputs = [ cmake perl ];
diff --git a/pkgs/applications/science/biology/bowtie2/default.nix b/pkgs/applications/science/biology/bowtie2/default.nix
index e97b5d1a3f4f..516608466a93 100644
--- a/pkgs/applications/science/biology/bowtie2/default.nix
+++ b/pkgs/applications/science/biology/bowtie2/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "bowtie2";
-  version = "2.3.4.3";
+  version = "2.3.5";
   name = "${pname}-${version}";
 
   src = fetchFromGitHub {
     owner = "BenLangmead";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1zl3cf327y2p7p03cavymbh7b00djc7lncfaqih33n96iy9q8ibp";
+    sha256 = "12v240wnbc541hl4z2fiymxd3bd6czazs13fjkygldflg48w45m0";
   };
 
   buildInputs = [ zlib tbb python perl ];
diff --git a/pkgs/applications/science/biology/megahit/default.nix b/pkgs/applications/science/biology/megahit/default.nix
new file mode 100644
index 000000000000..56bb35b64df8
--- /dev/null
+++ b/pkgs/applications/science/biology/megahit/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub, zlib }:
+
+stdenv.mkDerivation rec {
+  pname    = "megahit";
+  version = "1.1.4";
+
+  src = fetchFromGitHub {
+    owner = "voutcn";
+    repo = "megahit";
+    rev = "v${version}";
+    sha256 = "011k0776w76l03zmy70kfd3y9zjmdnspfbs9fcxmnl3bdwd36kcw";
+  };
+
+  buildInputs = [ zlib ];
+
+  installPhase = ''
+    for bin in megahit_sdbg_build megahit megahit_asm_core megahit_toolkit; do
+        install -vD $bin $out/bin/$bin
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "An ultra-fast single-node solution for large and complex metagenomics assembly via succinct de Bruijn graph";
+    license     = licenses.gpl3;
+    homepage    = https://github.com/voutcn/megahit;
+    maintainers = with maintainers; [ luispedro ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/applications/science/biology/minimap2/default.nix b/pkgs/applications/science/biology/minimap2/default.nix
index 3f28b5e31ccd..85c2b99b3a78 100644
--- a/pkgs/applications/science/biology/minimap2/default.nix
+++ b/pkgs/applications/science/biology/minimap2/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "minimap2";
-  version = "2.15";
+  version = "2.16";
 
   src = fetchFromGitHub {
     repo = pname;
     owner = "lh3";
     rev = "v${version}";
-    sha256 = "0dy3m2wjmi3whjnmkj3maa1aadz525h7736wm8vvdcwq71ijqb7v";
+    sha256 = "1ggm5psv3gwsz627ik9kl6ry9gzgmfsvya6ni0gv6ahwlrhdim73";
   };
 
   buildInputs = [ zlib ];
diff --git a/pkgs/applications/science/biology/paml/default.nix b/pkgs/applications/science/biology/paml/default.nix
index fe25a04c420a..68efc2030e53 100644
--- a/pkgs/applications/science/biology/paml/default.nix
+++ b/pkgs/applications/science/biology/paml/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  version = "4.9h";
+  version = "4.9i";
   name = "paml-${version}";
   src = fetchurl {
     url = "http://abacus.gene.ucl.ac.uk/software/paml${version}.tgz";
-    sha256 = "1czdfb3naadq0d3y42isrbyja33c3p28k8dv9mxlx2h19b7zcfv2";
+    sha256 = "1k5lcyls6c33ppp5fxl8ply2fy7i2k0gcqaifsl7gnc81d8ay4dw";
   };
 
   preBuild = ''
diff --git a/pkgs/applications/science/biology/stacks/default.nix b/pkgs/applications/science/biology/stacks/default.nix
new file mode 100644
index 000000000000..01b1c0ba81bf
--- /dev/null
+++ b/pkgs/applications/science/biology/stacks/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl, zlib }:
+    
+stdenv.mkDerivation rec {
+  pname = "stacks";
+  version = "2.3e";
+  src = fetchurl {
+    url = "http://catchenlab.life.illinois.edu/stacks/source/${pname}-${version}.tar.gz";
+    sha256 = "046gmq8nzqy5v70ydqrhib2aiyrlja3cljvd37w4qbd4ryj3jr0w";
+  };
+
+  buildInputs = [ zlib ];
+
+  meta = {
+    description = "Software pipeline for building loci from short-read sequences";
+    homepage = http://catchenlab.life.illinois.edu/stacks/;
+    maintainers = [ stdenv.lib.maintainers.bzizou ];
+    license = stdenv.lib.licenses.gpl3;
+  };
+}
diff --git a/pkgs/applications/science/chemistry/jmol/default.nix b/pkgs/applications/science/chemistry/jmol/default.nix
index 7f5eb7b76e8c..c55766b8d615 100644
--- a/pkgs/applications/science/chemistry/jmol/default.nix
+++ b/pkgs/applications/science/chemistry/jmol/default.nix
@@ -17,14 +17,14 @@ let
   };
 in
 stdenv.mkDerivation rec {
-  version = "14.29.31";
+  version = "14.29.32";
   pname = "jmol";
 
   src = let
     baseVersion = "${lib.versions.major version}.${lib.versions.minor version}";
   in fetchurl {
     url = "mirror://sourceforge/jmol/Jmol/Version%20${baseVersion}/Jmol%20${version}/Jmol-${version}-binary.tar.gz";
-    sha256 = "15mxifm1h145bhyrm9rvmipvg048q8rgwg1sn6jmfgrimy0cjraj";
+    sha256 = "0jpl8smljyjpd3x1q6fcamgia1ij7gxk51faw99ys8ydnrzd57di";
   };
 
   patchPhase = ''
diff --git a/pkgs/applications/science/chemistry/molden/default.nix b/pkgs/applications/science/chemistry/molden/default.nix
index 99a8c777cd0e..35d21848e2b3 100644
--- a/pkgs/applications/science/chemistry/molden/default.nix
+++ b/pkgs/applications/science/chemistry/molden/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, which, gfortran, libGLU, xorg } :
 
 stdenv.mkDerivation rec {
-  version = "5.9.3";
+  version = "5.9.5";
   name = "molden-${version}";
 
   src = fetchurl {
     url = "ftp://ftp.cmbi.ru.nl/pub/molgraph/molden/molden${version}.tar.gz";
-    sha256 = "18fz44g7zkm0xcx3w9hm049jv13af67ww7mb5b3kdhmza333a16q";
+    sha256 = "0va5g03kvnzydx0b77y1p536iy7swzvnx6yknp87qgpw1bgrzdj9";
   };
 
   nativeBuildInputs = [ which ];
diff --git a/pkgs/applications/science/chemistry/octopus/default.nix b/pkgs/applications/science/chemistry/octopus/default.nix
index 2dd3c9b64c43..5fc71c9fc6ba 100644
--- a/pkgs/applications/science/chemistry/octopus/default.nix
+++ b/pkgs/applications/science/chemistry/octopus/default.nix
@@ -3,7 +3,7 @@
 }:
 
 let
-  version = "8.3";
+  version = "8.4";
   fftwAll = symlinkJoin { name ="ftw-dev-out"; paths = [ fftw.dev fftw.out ]; };
 
 in stdenv.mkDerivation {
@@ -11,7 +11,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://www.tddft.org/programs/octopus/down.php?file=${version}/octopus-${version}.tar.gz";
-    sha256 = "0nr3qmyfhp6fy8qrp4p43pl5xxfqgqg5g1c2775hxhpsi29xr7zf";
+    sha256 = "1fx5ssnf65b9ld7xs9rvvg8i80pblxpyhqkir0a7xshkk1g60z55";
   };
 
   nativeBuildInputs = [ perl procps fftw.dev ];
diff --git a/pkgs/applications/science/chemistry/quantum-espresso/default.nix b/pkgs/applications/science/chemistry/quantum-espresso/default.nix
index 7a7f1b3596d3..777b3499bedc 100644
--- a/pkgs/applications/science/chemistry/quantum-espresso/default.nix
+++ b/pkgs/applications/science/chemistry/quantum-espresso/default.nix
@@ -4,12 +4,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "6.3";
+  version = "6.4";
   name = "quantum-espresso-${version}";
 
   src = fetchurl {
     url = "https://gitlab.com/QEF/q-e/-/archive/qe-${version}/q-e-qe-${version}.tar.gz";
-    sha256 = "1738z3nhkzcrgnhnfg1r4lipbwvcrcprwhzjbjysnylmzbzwhrs0";
+    sha256 = "1zjblzf0xzwmhmpjm56xvv8wsv5jmp5a204irzyicmd77p86c4vq";
   };
 
   passthru = {
@@ -20,12 +20,6 @@ stdenv.mkDerivation rec {
     patchShebangs configure
   '';
 
-  # remove after 6.3 version:
-  # makefile needs to ignore install directory easier than applying patch
-  preInstall = ''
-    printf "\n.PHONY: install\n" >> Makefile
-  '';
-
   buildInputs = [ fftw openblas gfortran ]
     ++ (stdenv.lib.optionals (mpi != null) [ mpi ]);
 
diff --git a/pkgs/applications/science/electronics/verilator/default.nix b/pkgs/applications/science/electronics/verilator/default.nix
index d2246f656db0..e3c51906435e 100644
--- a/pkgs/applications/science/electronics/verilator/default.nix
+++ b/pkgs/applications/science/electronics/verilator/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name    = "verilator-${version}";
-  version = "4.010";
+  version = "4.012";
 
   src = fetchurl {
     url    = "https://www.veripool.org/ftp/${name}.tgz";
-    sha256 = "0wfmazhxb6bf6qznh7v756fv7jayjgkzar33gazkwdwfwa7p8lan";
+    sha256 = "0xzndazp1g5qxzfirgiv219zmx7qyxfn7wsqbfq93cp1m6rp4pai";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/science/math/ginac/default.nix b/pkgs/applications/science/math/ginac/default.nix
index 18a5281bebb0..4b9f15e0a92f 100644
--- a/pkgs/applications/science/math/ginac/default.nix
+++ b/pkgs/applications/science/math/ginac/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, cln, pkgconfig, readline, gmp, python }:
 
 stdenv.mkDerivation rec {
-  name = "ginac-1.7.4";
+  name = "ginac-1.7.5";
 
   src = fetchurl {
     url    = "${meta.homepage}/${name}.tar.bz2";
-    sha256 = "1vvqv73yk9klbq0mz239zzw77rlp72qcvzci4j1v6rafvji1616n";
+    sha256 = "11v8dpdfq8ybbbadyakp19xc7jgckplbbj6q2hh1c2hj5ps6njz7";
   };
 
   propagatedBuildInputs = [ cln ];
diff --git a/pkgs/applications/science/math/gmsh/default.nix b/pkgs/applications/science/math/gmsh/default.nix
index e3760533edae..8f96eb8f3060 100644
--- a/pkgs/applications/science/math/gmsh/default.nix
+++ b/pkgs/applications/science/math/gmsh/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, cmake, openblasCompat, gfortran, gmm, fltk, libjpeg
 , zlib, libGLU_combined, libGLU, xorg }:
 
-let version = "4.2.1"; in
+let version = "4.2.2"; in
 
 stdenv.mkDerivation {
   name = "gmsh-${version}";
 
   src = fetchurl {
     url = "http://gmsh.info/src/gmsh-${version}-source.tgz";
-    sha256 = "1f11481e68900dc256f88aaed18d03e93b416ba01e9e8c3dc3f6d59a211f0561";
+    sha256 = "e9ee9f5c606bbec5f2adbb8c3d6023c4e2577f487fa4e4ecfcfc94a241cc8dcc";
   };
 
   buildInputs = [ cmake openblasCompat gmm fltk libjpeg zlib libGLU_combined
diff --git a/pkgs/applications/science/math/nauty/default.nix b/pkgs/applications/science/math/nauty/default.nix
index 5b431f419261..7351de53cfce 100644
--- a/pkgs/applications/science/math/nauty/default.nix
+++ b/pkgs/applications/science/math/nauty/default.nix
@@ -1,4 +1,8 @@
-{stdenv, fetchurl}:
+{ stdenv
+, lib
+, fetchurl
+, optimize ? false # impure
+}:
 stdenv.mkDerivation rec {
   name = "nauty-${version}";
   version = "26r11";
@@ -7,6 +11,13 @@ stdenv.mkDerivation rec {
     sha256 = "05z6mk7c31j70md83396cdjmvzzip1hqb88pfszzc6k4gy8h3m2y";
   };
   outputs = [ "out" "dev" ];
+  configureFlags = lib.optionals (!optimize) [
+    # Prevent nauty from sniffing some cpu features. While those are very
+    # widely available, it can lead to nasty bugs when they are not available:
+    # https://groups.google.com/forum/#!topic/sage-packaging/Pe4SRDNYlhA
+    "--disable-popcnt"
+    "--disable-clz"
+  ];
   buildInputs = [];
   installPhase = ''
     mkdir -p "$out"/{bin,share/doc/nauty} "$dev"/{lib,include/nauty}
@@ -14,18 +25,18 @@ stdenv.mkDerivation rec {
     find . -type f -perm -111 \! -name '*.*' \! -name configure -exec cp '{}' "$out/bin" \;
     cp [Rr][Ee][Aa][Dd]* COPYRIGHT This* [Cc]hange* "$out/share/doc/nauty"
 
-    cp *.h $dev/include/nauty
+    cp *.h "$dev/include/nauty"
     for i in *.a; do
       cp "$i" "$dev/lib/lib$i";
     done
   '';
   checkTarget = "checks";
-  meta = {
+  meta = with lib; {
     inherit version;
     description = ''Programs for computing automorphism groups of graphs and digraphs'';
-    license = stdenv.lib.licenses.asl20;
-    maintainers = [stdenv.lib.maintainers.raskin];
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ raskin timokau ];
+    platforms = platforms.linux;
     homepage = http://pallini.di.uniroma1.it/;
   };
 }
diff --git a/pkgs/applications/science/math/sage/sage-src.nix b/pkgs/applications/science/math/sage/sage-src.nix
index dd51059ff01b..75cd308da400 100644
--- a/pkgs/applications/science/math/sage/sage-src.nix
+++ b/pkgs/applications/science/math/sage/sage-src.nix
@@ -137,6 +137,13 @@ stdenv.mkDerivation rec {
 
     # https://trac.sagemath.org/ticket/27405
     ./patches/ignore-pip-deprecation.patch
+
+    # https://trac.sagemath.org/ticket/27360
+    (fetchpatch {
+      name = "eclib-20190226.patch";
+      url = "https://git.sagemath.org/sage.git/patch/?id=f570e3a7fc2965764b84c04ce301a88ded2c42df";
+      sha256 = "0l5c4giixkn15v2a06sfzq5mkxila6l67zkjbacirwprrlpcnmmp";
+    })
   ];
 
   patches = nixPatches ++ bugfixPatches ++ packageUpgradePatches;
diff --git a/pkgs/applications/science/misc/root/5.nix b/pkgs/applications/science/misc/root/5.nix
index 1f0fc663647a..871f5ece9cfe 100644
--- a/pkgs/applications/science/misc/root/5.nix
+++ b/pkgs/applications/science/misc/root/5.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, cmake, pcre, pkgconfig, python2
+{ stdenv, fetchurl, fetchpatch, cmake, pcre, pkgconfig, python2
 , libX11, libXpm, libXft, libXext, libGLU_combined, zlib, libxml2, lzma, gsl_1
 , Cocoa, OpenGL, cf-private, noSplash ? false }:
 
@@ -19,11 +19,30 @@ stdenv.mkDerivation rec {
 
   patches = [
     ./sw_vers_root5.patch
+
+    (fetchpatch {
+      name = "enable_new_gcc.patch";
+      url = "https://aur.archlinux.org/cgit/aur.git/plain/enable_new_gcc.patch?h=root5&id=91c50876081a0af36f84ec4f0f9dba869107fa4f";
+      sha256 = "1rnp0xlw0yqi7mjs4w145njd79i8kkir1qik7zwicdik9axf8ygm";
+    })
+
+    # prevents rootcint from looking in /usr/includes and such
+    ./purify_include_paths_root5.patch
+
+    # disable dictionary generation for stuff that includes libc headers
+    # our glibc requires a modern compiler
+    ./disable_libc_dicts_root5.patch
   ];
 
   preConfigure = ''
     patchShebangs build/unix/
     ln -s ${stdenv.lib.getDev stdenv.cc.libc}/include/AvailabilityMacros.h cint/cint/include/
+  ''
+  # Fix CINTSYSDIR for "build" version of rootcint
+  # This is probably a bug that breaks out-of-source builds
+  + ''
+    substituteInPlace cint/cint/src/loadfile.cxx\
+      --replace 'env = "cint";' 'env = "'`pwd`'/cint";'
   '' + stdenv.lib.optionalString noSplash ''
     substituteInPlace rootx/src/rootx.cxx --replace "gNoLogo = false" "gNoLogo = true"
   '';
@@ -73,8 +92,5 @@ stdenv.mkDerivation rec {
     description = "A data analysis framework";
     platforms = platforms.unix;
     maintainers = with maintainers; [ veprbl ];
-    # needs to be adapted to work with modern glibc
-    # it works on darwin by impurely picking up system's libc headers
-    broken = stdenv.isLinux;
   };
 }
diff --git a/pkgs/applications/science/misc/root/disable_libc_dicts_root5.patch b/pkgs/applications/science/misc/root/disable_libc_dicts_root5.patch
new file mode 100644
index 000000000000..abd6222847ef
--- /dev/null
+++ b/pkgs/applications/science/misc/root/disable_libc_dicts_root5.patch
@@ -0,0 +1,27 @@
+diff --git a/cint/ROOT/CMakeLists.txt b/cint/ROOT/CMakeLists.txt
+--- a/cint/ROOT/CMakeLists.txt
++++ b/cint/ROOT/CMakeLists.txt
+@@ -47,21 +47,13 @@ set(CINTSTLDLLHEADERS
+     ${CMAKE_SOURCE_DIR}/cint/cint/lib/stdstrct/stdcxxfunc.h
+   )
+ set(CINTINCDLLNAMES 
+-    stdfunc 
++#    stdfunc 
+ #    stdcxxfunc
+    )
+ set(CINTINCDLLHEADERS
+-    ${CMAKE_SOURCE_DIR}/cint/cint/lib/stdstrct/stdfunc.h 
++#    ${CMAKE_SOURCE_DIR}/cint/cint/lib/stdstrct/stdfunc.h 
+ #    ${CMAKE_SOURCE_DIR}/cint/cint/lib/stdstrct/stdcxxfunc.h
+    )
+-if(NOT WIN32)
+-  set(CINTSTLDLLNAMES ${CINTSTLDLLNAMES}  valarray)
+-  set(CINTSTLDLLHEADERS ${CINTSTLDLLHEADERS} ${CINTDLLDIR}/vary.h)
+-  set(CINTINCDLLNAMES ${CINTINCDLLNAMES} posix ipc)
+-  set(CINTINCDLLHEADERS ${CINTINCDLLHEADERS} 
+-    ${CMAKE_SOURCE_DIR}/cint/cint/lib/posix/exten.h 
+-    ${CMAKE_SOURCE_DIR}/cint/cint/lib/ipc/ipcif.h)
+-endif()
+ 
+ set(CINTBUILDLOADER
+     vector 
diff --git a/pkgs/applications/science/misc/root/purify_include_paths_root5.patch b/pkgs/applications/science/misc/root/purify_include_paths_root5.patch
new file mode 100644
index 000000000000..6773603b8ad3
--- /dev/null
+++ b/pkgs/applications/science/misc/root/purify_include_paths_root5.patch
@@ -0,0 +1,204 @@
+diff --git a/cint/cint/src/loadfile.cxx b/cint/cint/src/loadfile.cxx
+--- a/cint/cint/src/loadfile.cxx
++++ b/cint/cint/src/loadfile.cxx
+@@ -1365,92 +1365,6 @@ int G__statfilename(const char *filenamein, struct stat *statBuf,
+          }
+       }         
+ #endif /* G__EDU_VERSION */
+-      
+-#ifdef G__VISUAL
+-      /**********************************************
+-       * try /msdev/include
+-       **********************************************/
+-      if('\0'!=G__cintsysdir[0]) {
+-         workname.Format("/msdev/include/%s%s",filename(),addpost[i2]);
+-         res = stat( workname, statBuf );         
+-         if (res==0) {
+-            if (fullPath) fullPath->Swap(workname);
+-            return res;
+-         }
+-      }
+-#endif /* G__VISUAL */
+-         
+-#ifdef G__SYMANTEC
+-      /**********************************************
+-       * try /sc/include
+-       **********************************************/
+-      if('\0'!=G__cintsysdir[0]) {
+-         workname.Format("/sc/include/%s%s",filename(),addpost[i2]);
+-         res = stat( workname, statBuf );         
+-         if (res==0) {
+-            if (fullPath) fullPath->Swap(workname);
+-            return res;
+-         }
+-      }
+-#endif // G__SYMANTEC
+-         
+-#ifndef G__WIN32
+-      /**********************************************
+-       * try /usr/include/filename
+-       **********************************************/
+-      if('\0'!=G__cintsysdir[0]) {
+-         workname.Format("/usr/include/%s%s",filename(),addpost[i2]);
+-         res = stat( workname, statBuf );         
+-         if (res==0) {
+-            if (fullPath) fullPath->Swap(workname);
+-            return res;
+-         }
+-      }
+-#endif
+-      
+-#ifdef __GNUC__
+-      /**********************************************
+-       * try /usr/include/g++/filename
+-       **********************************************/
+-      if('\0'!=G__cintsysdir[0]) {
+-         workname.Format("/usr/include/g++/%s%s",filename(),addpost[i2]);
+-         res = stat( workname, statBuf );         
+-         if (res==0) {
+-            if (fullPath) fullPath->Swap(workname);
+-            return res;
+-         }
+-      }
+-#endif /* __GNUC__ */
+-      
+-#ifndef G__WIN32
+-      /* #ifdef __hpux */
+-      /**********************************************
+-       * try /usr/include/CC/filename
+-       **********************************************/
+-      if('\0'!=G__cintsysdir[0]) {
+-         workname.Format("/usr/include/CC/%s%s",filename(),addpost[i2]);
+-         res = stat( workname, statBuf );         
+-         if (res==0) {
+-            if (fullPath) fullPath->Swap(workname);
+-            return res;
+-         }
+-      }         
+-#endif
+-         
+-#ifndef G__WIN32
+-      /**********************************************
+-       * try /usr/include/codelibs/filename
+-       **********************************************/
+-      if('\0'!=G__cintsysdir[0]) {
+-         workname.Format("/usr/include/codelibs/%s%s"
+-                         ,filename(),addpost[i2]);
+-         res = stat( workname, statBuf );         
+-         if (res==0) {
+-            if (fullPath) fullPath->Swap(workname);
+-            return res;
+-         }
+-      }
+-#endif
+    }
+    return -1;
+ }
+@@ -1960,107 +1874,6 @@ int G__loadfile(const char *filenamein)
+       }
+       if(G__ifile.fp) break;
+ #endif /* G__EDU_VERSION */
+-
+-#ifdef G__VISUAL
+-      /**********************************************
+-       * try /msdev/include
+-       **********************************************/
+-      if('\0'!=G__cintsysdir[0]) {
+-         G__snprintf(G__ifile.name,G__MAXFILENAME,"/msdev/include/%s%s",filename(),addpost[i2]);
+-#ifndef G__WIN32
+-        G__ifile.fp = fopen(G__ifile.name,"r");
+-#else
+-        G__ifile.fp = fopen(G__ifile.name,"rb");
+-#endif
+-        G__globalcomp=G__store_globalcomp;
+-      }
+-      if(G__ifile.fp) break;
+-#endif /* G__VISUAL */
+-
+-#ifdef G__SYMANTEC
+-      /**********************************************
+-       * try /sc/include
+-       **********************************************/
+-      if('\0'!=G__cintsysdir[0]) {
+-         G__snprintf(G__ifile.name,G__MAXFILENAME,"/sc/include/%s%s",filename(),addpost[i2]);
+-#ifndef G__WIN32
+-        G__ifile.fp = fopen(G__ifile.name,"r");
+-#else
+-        G__ifile.fp = fopen(G__ifile.name,"rb");
+-#endif
+-        G__globalcomp=G__store_globalcomp;
+-      }
+-      if(G__ifile.fp) break;
+-#endif /* G__SYMANTEC */
+-
+-#ifndef G__WIN32
+-      /**********************************************
+-       * try /usr/include/filename
+-       **********************************************/
+-      if('\0'!=G__cintsysdir[0]) {
+-         G__snprintf(G__ifile.name,G__MAXFILENAME,"/usr/include/%s%s",filename(),addpost[i2]);
+-#ifndef G__WIN32
+-        G__ifile.fp = fopen(G__ifile.name,"r");
+-#else
+-        G__ifile.fp = fopen(G__ifile.name,"rb");
+-#endif
+-        G__globalcomp=G__store_globalcomp;
+-      }
+-      if(G__ifile.fp) break;
+-#endif
+-
+-#ifdef __GNUC__
+-      /**********************************************
+-       * try /usr/include/g++/filename
+-       **********************************************/
+-      if('\0'!=G__cintsysdir[0]) {
+-         G__snprintf(G__ifile.name,G__MAXFILENAME,"/usr/include/g++/%s%s",filename(),addpost[i2]);
+-#ifndef G__WIN32
+-        G__ifile.fp = fopen(G__ifile.name,"r");
+-#else
+-        G__ifile.fp = fopen(G__ifile.name,"rb");
+-#endif
+-        G__globalcomp=G__store_globalcomp;
+-      }
+-      if(G__ifile.fp) break;
+-#endif /* __GNUC__ */
+-
+-#ifndef G__WIN32
+-/* #ifdef __hpux */
+-      /**********************************************
+-       * try /usr/include/CC/filename
+-       **********************************************/
+-      if('\0'!=G__cintsysdir[0]) {
+-         G__snprintf(G__ifile.name,G__MAXFILENAME,"/usr/include/CC/%s%s",filename(),addpost[i2]);
+-#ifndef G__WIN32
+-        G__ifile.fp = fopen(G__ifile.name,"r");
+-#else
+-        G__ifile.fp = fopen(G__ifile.name,"rb");
+-#endif
+-        G__globalcomp=G__store_globalcomp;
+-      }
+-      if(G__ifile.fp) break;
+-/* #endif __hpux */
+-#endif
+-
+-#ifndef G__WIN32
+-/* #ifdef __hpux */
+-      /**********************************************
+-       * try /usr/include/codelibs/filename
+-       **********************************************/
+-      if('\0'!=G__cintsysdir[0]) {
+-        G__snprintf(G__ifile.name,G__MAXFILENAME,"/usr/include/codelibs/%s%s"
+-                    ,filename(),addpost[i2]);
+-#ifndef G__WIN32
+-        G__ifile.fp = fopen(G__ifile.name,"r");
+-#else
+-        G__ifile.fp = fopen(G__ifile.name,"rb");
+-#endif
+-        G__globalcomp=G__store_globalcomp;
+-      }
+-      if(G__ifile.fp) break;
+-/* #endif __hpux */
+-#endif
+     }
+   }
+ 
diff --git a/pkgs/applications/version-management/cvs-fast-export/default.nix b/pkgs/applications/version-management/cvs-fast-export/default.nix
index 5e1a0cab69d9..d7d0c28dcc12 100644
--- a/pkgs/applications/version-management/cvs-fast-export/default.nix
+++ b/pkgs/applications/version-management/cvs-fast-export/default.nix
@@ -7,7 +7,7 @@ with stdenv; with lib;
 mkDerivation rec {
   name = "cvs-fast-export-${meta.version}";
   meta = {
-    version = "1.45";
+    version = "1.47";
     description = "Export an RCS or CVS history as a fast-import stream";
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ dfoxfranke ];
@@ -16,8 +16,8 @@ mkDerivation rec {
   };
 
   src = fetchurl {
-    url = "http://www.catb.org/~esr/cvs-fast-export/cvs-fast-export-1.45.tar.gz";
-    sha256 = "19pxg6p0pcgyd2fbnh3wy1kazv6vcfi5lzc2whhdi1w9kj4r9c4z";
+    url = "http://www.catb.org/~esr/cvs-fast-export/cvs-fast-export-1.47.tar.gz";
+    sha256 = "08kll7jlak26asvnqgwbkci3d6irvy96ijjl7fmck6h7i5mx5lz7";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/version-management/git-and-tools/hub/default.nix b/pkgs/applications/version-management/git-and-tools/hub/default.nix
index 9f18beda7f93..e6e136e290d8 100644
--- a/pkgs/applications/version-management/git-and-tools/hub/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/hub/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   pname = "hub";
-  version = "2.10.0";
+  version = "2.11.1";
 
   goPackagePath = "github.com/github/hub";
 
@@ -13,7 +13,7 @@ buildGoPackage rec {
     owner = "github";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1vvrc3k81jm9c664g0j9666i7ypn7n7jfyj4gxcybq3sg2d4di27";
+    sha256 = "1gq3m4w4j63n3i43pyq2niwacd8cjypaj27yjabb582x63a431xy";
   };
 
   nativeBuildInputs = [ groff utillinux ];
diff --git a/pkgs/applications/version-management/git-and-tools/qgit/default.nix b/pkgs/applications/version-management/git-and-tools/qgit/default.nix
index 0074d44391ef..06c8bb8cb2dd 100644
--- a/pkgs/applications/version-management/git-and-tools/qgit/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/qgit/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     license = licenses.gpl2;
-    homepage = http://libre.tibirna.org/projects/qgit/wiki/QGit;
+    homepage = https://github.com/tibirna/qgit;
     description = "Graphical front-end to Git";
     maintainers = with maintainers; [ peterhoeg markuskowa ];
     inherit (qtbase.meta) platforms;
diff --git a/pkgs/applications/version-management/gitea/default.nix b/pkgs/applications/version-management/gitea/default.nix
index 6f72b2e1775c..38aa63c1ab07 100644
--- a/pkgs/applications/version-management/gitea/default.nix
+++ b/pkgs/applications/version-management/gitea/default.nix
@@ -7,14 +7,14 @@
 with stdenv.lib;
 
 buildGoPackage rec {
-  name = "gitea-${version}";
-  version = "1.7.3";
+  pname = "gitea";
+  version = "1.7.5";
 
   src = fetchFromGitHub {
     owner = "go-gitea";
     repo = "gitea";
     rev = "v${version}";
-    sha256 = "0q33xn2l2ii8vd3hxr0f6ipk8mv2ahb3p8fzdzylhgg9w15snvsr";
+    sha256 = "063rfb0jwxfq91cw7gp0achqsgi3dpj1pqfi7k5md67bhp2i2si3";
     # Required to generate the same checksum on MacOS due to unicode encoding differences
     # More information: https://github.com/NixOS/nixpkgs/pull/48128
     extraPostFetch = ''
@@ -35,12 +35,15 @@ buildGoPackage rec {
   nativeBuildInputs = [ makeWrapper ]
     ++ optional pamSupport pam;
 
-  buildFlags = optional sqliteSupport "-tags sqlite"
-    ++ optional pamSupport "-tags pam";
-  buildFlagsArray = ''
-    -ldflags=
-      -X=main.Version=${version}
-      ${optionalString sqliteSupport "-X=main.Tags=sqlite"}
+  preBuild = let
+    tags = optional pamSupport "pam"
+        ++ optional sqliteSupport "sqlite";
+    tagsString = concatStringsSep " " tags;
+  in ''
+    export buildFlagsArray=(
+      -tags="${tagsString}"
+      -ldflags='-X "main.Version=${version}" -X "main.Tags=${tagsString}"'
+    )
   '';
 
   outputs = [ "bin" "out" "data" ];
diff --git a/pkgs/applications/version-management/gitlab/gitaly/default.nix b/pkgs/applications/version-management/gitlab/gitaly/default.nix
index d84406e23b3d..d476e7c9038f 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/default.nix
@@ -27,7 +27,14 @@ in buildGoPackage rec {
 
   postInstall = ''
     mkdir -p $ruby
-    cp -rv $src/ruby/{bin,lib} $ruby
+    cp -rv $src/ruby/{bin,lib,git-hooks,vendor} $ruby
+
+    # gitlab-shell will try to read its config relative to the source
+    # code by default which doesn't work in nixos because it's a
+    # read-only filesystem
+    substituteInPlace $ruby/vendor/gitlab-shell/lib/gitlab_config.rb --replace \
+       "File.join(ROOT_PATH, 'config.yml')" \
+       "'/run/gitlab/shell-config.yml'"
   '';
 
   outputs = [ "bin" "out" "ruby" ];
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index 5b786b255019..28056bf6cb81 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -11,14 +11,14 @@ assert withGUI -> qtbase != null && qtmultimedia != null;
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "mkvtoolnix-${version}";
-  version = "31.0.0";
+  pname = "mkvtoolnix";
+  version = "32.0.0";
 
   src = fetchFromGitLab {
     owner  = "mbunkus";
     repo   = "mkvtoolnix";
     rev    = "release-${version}";
-    sha256 = "1fml374ivzzmac0ixhngj4bdxszcaw5yxdmacpn6ia7pdyvpf5lh";
+    sha256 = "022mmgm0a6qxybjrygisg731sg9m9d8svd0mxr77wfknwa7m09c9";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/video/peek/default.nix b/pkgs/applications/video/peek/default.nix
index 728f6387ffa9..374ea08816f7 100644
--- a/pkgs/applications/video/peek/default.nix
+++ b/pkgs/applications/video/peek/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchFromGitHub, cmake, gettext, libxml2, pkgconfig, txt2man, vala, wrapGAppsHook
+{ stdenv, fetchFromGitHub, cmake, gettext, libxml2, pkgconfig, txt2man, vala_0_40, wrapGAppsHook
 , gsettings-desktop-schemas, gtk3, keybinder3, ffmpeg
 }:
 
 stdenv.mkDerivation rec {
-  name = "peek-${version}";
+  pname = "peek";
   version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "phw";
-    repo = "peek";
+    repo = pname;
     rev = version;
     sha256 = "1fnvlklmg6s5rs3ql74isa5fgdkqqrpsyf8k2spxj520239l4vgb";
   };
@@ -17,9 +17,21 @@ stdenv.mkDerivation rec {
     gappsWrapperArgs+=(--prefix PATH : ${stdenv.lib.makeBinPath [ ffmpeg ]})
   '';
 
-  nativeBuildInputs = [ cmake gettext pkgconfig libxml2.bin txt2man vala wrapGAppsHook ];
+  nativeBuildInputs = [
+    cmake
+    gettext
+    pkgconfig
+    libxml2.bin
+    txt2man
+    vala_0_40 # See https://github.com/NixOS/nixpkgs/issues/58433
+    wrapGAppsHook
+  ];
 
-  buildInputs = [ gsettings-desktop-schemas gtk3 keybinder3 ];
+  buildInputs = [
+    gsettings-desktop-schemas
+    gtk3
+    keybinder3
+  ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix
index cd3999e38c09..7f1233a4e04e 100644
--- a/pkgs/applications/video/vlc/default.nix
+++ b/pkgs/applications/video/vlc/default.nix
@@ -13,8 +13,13 @@
 , jackSupport ? false
 , fetchpatch
 , removeReferencesTo
+, chromecastSupport ? true, protobuf, libmicrodns
 }:
 
+# chromecastSupport requires TCP port 8010 to be open for it to work.
+# If your firewall is enabled, make sure to have something like:
+#   networking.firewall.allowedTCPPorts = [ 8010 ];
+
 with stdenv.lib;
 
 assert (withQt5 -> qtbase != null && qtsvg != null && qtx11extras != null);
@@ -42,7 +47,8 @@ stdenv.mkDerivation rec {
     fluidsynth wayland wayland-protocols
   ] ++ optional (!stdenv.hostPlatform.isAarch64) live555
     ++ optionals withQt5    [ qtbase qtsvg qtx11extras ]
-    ++ optional jackSupport libjack2;
+    ++ optional jackSupport libjack2
+    ++ optionals chromecastSupport [ protobuf libmicrodns ];
 
   nativeBuildInputs = [ autoreconfHook perl pkgconfig removeReferencesTo ];
 
@@ -76,7 +82,12 @@ stdenv.mkDerivation rec {
   # "--enable-foo" flags here
   configureFlags = [
     "--with-kde-solid=$out/share/apps/solid/actions"
-  ] ++ optional onlyLibVLC "--disable-vlc";
+  ] ++ optional onlyLibVLC "--disable-vlc"
+    ++ optionals chromecastSupport [
+    "--enable-sout"
+    "--enable-chromecast"
+    "--enable-microdns"
+  ];
 
   # Remove runtime dependencies on libraries
   postConfigure = ''
diff --git a/pkgs/applications/video/xawtv/default.nix b/pkgs/applications/video/xawtv/default.nix
index f6f8016ec1d3..db9a5ce7850b 100644
--- a/pkgs/applications/video/xawtv/default.nix
+++ b/pkgs/applications/video/xawtv/default.nix
@@ -2,10 +2,10 @@
 , libFS, libXaw, libXpm, libXext, libSM, libICE, perl, linux}:
 
 stdenv.mkDerivation rec {
-  name = "xawtv-3.105";
+  name = "xawtv-3.106";
   src = fetchurl {
     url = "https://linuxtv.org/downloads/xawtv/${name}.tar.bz2";
-    sha256 = "03v4k0dychjz1kj890d9pc7v8jh084m01g71x1clmmvc6vc9kn1b";
+    sha256 = "174wd36rk0k23mgx9nlnpc398yd1f0wiv060963axg6sz0v4rksp";
   };
 
   preConfigure = ''
diff --git a/pkgs/applications/virtualization/charliecloud/default.nix b/pkgs/applications/virtualization/charliecloud/default.nix
new file mode 100644
index 000000000000..c55eb342e069
--- /dev/null
+++ b/pkgs/applications/virtualization/charliecloud/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchFromGitHub, python }:
+
+stdenv.mkDerivation rec {
+
+  version = "0.9.8";
+  pname = "charliecloud";
+
+  src = fetchFromGitHub {
+    owner = "hpc";
+    repo = "charliecloud";
+    rev = "v${version}";
+    sha256 = "1w1wy4sj9zqfysrpf04shhppcf5ap4rp7i3ja81sv2fm27k4m9nl";
+  };
+
+  buildInputs = [ python ];
+
+  preConfigure = ''
+    substituteInPlace Makefile --replace '/bin/bash' '${stdenv.shell}'
+    patchShebangs test/
+  '';
+
+  makeFlags = [
+    "PREFIX=$(out)"
+    "LIBEXEC_DIR=lib/charliecloud"
+  ];
+
+  postInstall = ''
+    mkdir -p $out/share/charliecloud
+    mv $out/lib/charliecloud/examples $out/share/charliecloud
+    mv $out/lib/charliecloud/test $out/share/charliecloud
+  '';
+
+  meta = {
+    description = "User-defined software stacks (UDSS) for high-performance computing (HPC) centers";
+    longDescription = ''
+      Charliecloud uses Linux user namespaces to run containers with no
+      privileged operations or daemons and minimal configuration changes on
+      center resources. This simple approach avoids most security risks
+      while maintaining access to the performance and functionality already
+      on offer.
+    '';
+    homepage = https://hpc.github.io/charliecloud;
+    license = stdenv.lib.licenses.asl20;
+    maintainers = [ stdenv.lib.maintainers.bzizou ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+
+}
diff --git a/pkgs/applications/virtualization/runc/default.nix b/pkgs/applications/virtualization/runc/default.nix
index b89ef1dd7bff..1801dd9eddb6 100644
--- a/pkgs/applications/virtualization/runc/default.nix
+++ b/pkgs/applications/virtualization/runc/default.nix
@@ -5,13 +5,13 @@ with lib;
 
 buildGoPackage rec {
   name = "runc-${version}";
-  version = "1.0.0-rc6";
+  version = "1.0.0-rc7";
 
   src = fetchFromGitHub {
     owner = "opencontainers";
     repo = "runc";
     rev = "v${version}";
-    sha256 = "1jwacb8xnmx5fr86gximhbl9dlbdwj3rpf27hav9q1si86w5pb1j";
+    sha256 = "1baryjpka8wmzc6c66bir12i390ix3641a06j33shpsb683ws3fj";
   };
 
   goPackagePath = "github.com/opencontainers/runc";
diff --git a/pkgs/applications/window-managers/i3/status-rust.nix b/pkgs/applications/window-managers/i3/status-rust.nix
index 178d111d79aa..d9095d3911b6 100644
--- a/pkgs/applications/window-managers/i3/status-rust.nix
+++ b/pkgs/applications/window-managers/i3/status-rust.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   name = "i3status-rust-${version}";
-  version = "0.9.0.2019-02-15";
+  version = "0.9.0.2019-03-21";
 
   src = fetchFromGitHub {
     owner = "greshake";
     repo = "i3status-rust";
-    rev = "2dc958995834b529a245c22c510b57d5c928c747";
-    sha256 = "091a2pqgkiwnya2xv5rw5sj730hf6lvkp2kk5midsa3wz2dfbc2j";
+    rev = "18300e6b9259053b80c37aef56c958fe5f50062b";
+    sha256 = "1g1ra0i7jlkdslmfycdyb2wh2s4gfawd0k2pjqx3ayml9kgq33yh";
   };
 
   cargoSha256 = "06izzv86nkn1izapldysyryz9zvjxvq23c742z284bnxjfq5my6i";
diff --git a/pkgs/build-support/bintools-wrapper/default.nix b/pkgs/build-support/bintools-wrapper/default.nix
index 142f5255caad..72327d2bb671 100644
--- a/pkgs/build-support/bintools-wrapper/default.nix
+++ b/pkgs/build-support/bintools-wrapper/default.nix
@@ -186,6 +186,7 @@ stdenv.mkDerivation {
         }.${targetPlatform.parsed.cpu.name}
       else if targetPlatform.isPower then if targetPlatform.isBigEndian then "ppc" else "lppc"
       else if targetPlatform.isSparc then "sparc"
+      else if targetPlatform.isMsp430 then "msp430"
       else if targetPlatform.isAvr then "avr"
       else if targetPlatform.isAlpha then "alpha"
       else throw "unknown emulation for platform: " + targetPlatform.config;
diff --git a/pkgs/build-support/docker/default.nix b/pkgs/build-support/docker/default.nix
index 6efb447e1424..344f1abc8b26 100644
--- a/pkgs/build-support/docker/default.nix
+++ b/pkgs/build-support/docker/default.nix
@@ -45,13 +45,18 @@ rec {
     , sha256
     , os ? "linux"
     , arch ? "amd64"
+
+      # This is used to set name to the pulled image
+    , finalImageName ? imageName
       # This used to set a tag to the pulled image
     , finalImageTag ? "latest"
-    , name ? fixName "docker-image-${imageName}-${finalImageTag}.tar"
+
+    , name ? fixName "docker-image-${finalImageName}-${finalImageTag}.tar"
     }:
 
     runCommand name {
-      inherit imageName imageDigest;
+      inherit imageDigest;
+      imageName = finalImageName;
       imageTag = finalImageTag;
       impureEnvVars = pkgs.stdenv.lib.fetchers.proxyImpureEnvVars;
       outputHashMode = "flat";
@@ -62,7 +67,7 @@ rec {
       SSL_CERT_FILE = "${pkgs.cacert.out}/etc/ssl/certs/ca-bundle.crt";
 
       sourceURL = "docker://${imageName}@${imageDigest}";
-      destNameTag = "${imageName}:${finalImageTag}";
+      destNameTag = "${finalImageName}:${finalImageTag}";
     } ''
       skopeo --override-os ${os} --override-arch ${arch} copy "$sourceURL" "docker-archive://$out:$destNameTag"
     '';
@@ -344,7 +349,7 @@ rec {
       # Tar up the layer and throw it into 'layer.tar'.
       echo "Packing layer..."
       mkdir $out
-      tar -C layer --sort=name --mtime="@$SOURCE_DATE_EPOCH" --owner=${toString uid} --group=${toString gid} -cf $out/layer.tar .
+      tar --transform='s|^\./||' -C layer --sort=name --mtime="@$SOURCE_DATE_EPOCH" --owner=${toString uid} --group=${toString gid} -cf $out/layer.tar .
 
       # Compute a checksum of the tarball.
       echo "Computing layer checksum..."
diff --git a/pkgs/build-support/docker/examples.nix b/pkgs/build-support/docker/examples.nix
index 8a1b35f02d99..557a4dbf54b7 100644
--- a/pkgs/build-support/docker/examples.nix
+++ b/pkgs/build-support/docker/examples.nix
@@ -88,8 +88,9 @@ rec {
   nixFromDockerHub = pullImage {
     imageName = "nixos/nix";
     imageDigest = "sha256:85299d86263a3059cf19f419f9d286cc9f06d3c13146a8ebbb21b3437f598357";
-    sha256 = "0vnp3mhpk4ny3xa3cgngqsargnmvfgld54d5sn4b5av6yqzzp67z";
+    sha256 = "07q9y9r7fsd18sy95ybrvclpkhlal12d30ybnf089hq7v1hgxbi7";
     finalImageTag = "2.2.1";
+    finalImageName = "nix";
   };
 
   # 5. example of multiple contents, emacs and vi happily coexisting
diff --git a/pkgs/build-support/docker/store-path-to-layer.sh b/pkgs/build-support/docker/store-path-to-layer.sh
index ff814c1f6130..4cf338b9b252 100755
--- a/pkgs/build-support/docker/store-path-to-layer.sh
+++ b/pkgs/build-support/docker/store-path-to-layer.sh
@@ -9,6 +9,7 @@ layerPath="./layers/$layerNumber"
 echo "Creating layer #$layerNumber for $@"
 
 mkdir -p "$layerPath"
+tar --no-recursion -rf "$layerPath/layer.tar" /nix /nix/store
 tar -rpf "$layerPath/layer.tar" --hard-dereference --sort=name \
     --mtime="@$SOURCE_DATE_EPOCH" \
     --owner=0 --group=0 "$@"
diff --git a/pkgs/build-support/rust/build-rust-crate/build-crate.nix b/pkgs/build-support/rust/build-rust-crate/build-crate.nix
index 0978f7e1756f..2999c3d4c1d9 100644
--- a/pkgs/build-support/rust/build-rust-crate/build-crate.nix
+++ b/pkgs/build-support/rust/build-rust-crate/build-crate.nix
@@ -11,7 +11,7 @@
     rustcOpts =
       lib.lists.foldl' (opts: opt: opts + " " + opt)
         (if release then "-C opt-level=3" else "-C debuginfo=2")
-        (["-C codegen-units=1"] ++ extraRustcOpts);
+        (["-C codegen-units=$NIX_BUILD_CORES"] ++ extraRustcOpts);
     rustcMeta = "-C metadata=${metadata} -C extra-filename=-${metadata}";
 
     # Some platforms have different names for rustc.
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 b184d363d554..165b3414c6a3 100644
--- a/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
+++ b/pkgs/build-support/rust/build-rust-crate/configure-crate.nix
@@ -22,7 +22,7 @@ let version_ = lib.splitString "-" crateVersion;
     version = lib.splitString "." (lib.head version_);
     rustcOpts = lib.lists.foldl' (opts: opt: opts + " " + opt)
         (if release then "-C opt-level=3" else "-C debuginfo=2")
-        (["-C codegen-units=1"] ++ extraRustcOpts);
+        (["-C codegen-units=$NIX_BUILD_CORES"] ++ extraRustcOpts);
     buildDeps = makeDeps buildDependencies;
     authors = lib.concatStringsSep ":" crateAuthors;
     optLevel = if release then 3 else 0;
diff --git a/pkgs/build-support/trivial-builders.nix b/pkgs/build-support/trivial-builders.nix
index 58bc7147ede4..ab83b73c5455 100644
--- a/pkgs/build-support/trivial-builders.nix
+++ b/pkgs/build-support/trivial-builders.nix
@@ -149,7 +149,7 @@ rec {
         ${text}
         '';
       checkPhase = ''
-        ${runtimeShell} -n $out/bin/${name}
+        ${stdenv.shell} -n $out/bin/${name}
       '';
     };
 
diff --git a/pkgs/build-support/writers/default.nix b/pkgs/build-support/writers/default.nix
index 6e932ce860f6..3454450c1f3a 100644
--- a/pkgs/build-support/writers/default.nix
+++ b/pkgs/build-support/writers/default.nix
@@ -178,6 +178,16 @@ rec {
   writeJSBin = name:
     writeJS "/bin/${name}";
 
+  writeNginxConfig = name: text: pkgs.runCommand name {
+    inherit text;
+    passAsFile = [ "text" ];
+  } /* sh */ ''
+    cp "$textPath" $out
+    ${pkgs.nginx-config-formatter}/bin/nginxfmt $out
+    ${pkgs.gnused}/bin/sed -i '/^$/d' $out
+    ${pkgs.gixy}/bin/gixy $out
+  '';
+
   # writePerl takes a name an attributeset with libraries and some perl sourcecode and
   # returns an executable
   #
diff --git a/pkgs/data/fonts/behdad-fonts/default.nix b/pkgs/data/fonts/behdad-fonts/default.nix
new file mode 100644
index 000000000000..54ddc95bf6cc
--- /dev/null
+++ b/pkgs/data/fonts/behdad-fonts/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "behdad-fonts";
+  version = "0.0.3";
+
+  src = fetchFromGitHub {
+    owner = "font-store";
+    repo = "BehdadFont";
+    rev = "v${version}";
+    sha256 = "0rlmyv82qmyy90zvkjnlva44ia7dyhiyk7axbq526v7zip3g79w0";
+  };
+
+  installPhase = ''
+    mkdir -p $out/share/fonts/behdad-fonts
+    cp -v $( find . -name '*.ttf') $out/share/fonts/behdad-fonts
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/font-store/BehdadFont;
+    description = "A Persian/Arabic Open Source Font";
+    license = licenses.ofl;
+    platforms = platforms.all;
+    maintainers = [ maintainers.linarcx ];
+  };
+}
diff --git a/pkgs/data/fonts/font-awesome-5/default.nix b/pkgs/data/fonts/font-awesome-5/default.nix
index 595a1c0d37f5..51f1d668cd24 100644
--- a/pkgs/data/fonts/font-awesome-5/default.nix
+++ b/pkgs/data/fonts/font-awesome-5/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchzip }:
 
 let
-  version = "5.7.2";
+  version = "5.8.1";
 in fetchzip rec {
   name = "font-awesome-${version}";
 
@@ -12,7 +12,7 @@ in fetchzip rec {
     unzip -j $downloadedFile "Font-Awesome-${version}/otfs/*.otf" -d $out/share/fonts/opentype
   '';
 
-  sha256 = "0b3syzz8baxmwzjgz09dnamm4nzmyvb2yddlrm94ww5j9bjk25al";
+  sha256 = "1fc177sgf4qd231dmpr7cwr1j03wzb927ylpng2gn94iksln924d";
 
   meta = with stdenv.lib; {
     description = "Font Awesome - OTF font";
diff --git a/pkgs/data/fonts/gandom-fonts/default.nix b/pkgs/data/fonts/gandom-fonts/default.nix
new file mode 100644
index 000000000000..938ff272cbd9
--- /dev/null
+++ b/pkgs/data/fonts/gandom-fonts/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "gandom-fonts";
+  version = "0.6";
+
+  src = fetchFromGitHub {
+    owner = "rastikerdar";
+    repo = "gandom-font";
+    rev = "v${version}";
+    sha256 = "1pdbqhvcsz6aq3qgarhfd05ip0wmh7bxqkmxrwa0kgxsly6zxz9x";
+  };
+
+  installPhase = ''
+    mkdir -p $out/share/fonts/gandom-fonts
+    cp -v $( find . -name '*.ttf') $out/share/fonts/gandom-fonts
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/rastikerdar/gandom-font;
+    description = "A Persian (Farsi) Font - فونت (قلم) فارسی گندم";
+    license = licenses.ofl;
+    platforms = platforms.all;
+    maintainers = [ maintainers.linarcx ];
+  };
+}
diff --git a/pkgs/data/fonts/gohufont/default.nix b/pkgs/data/fonts/gohufont/default.nix
index 7936a216ada7..b394cb47157c 100644
--- a/pkgs/data/fonts/gohufont/default.nix
+++ b/pkgs/data/fonts/gohufont/default.nix
@@ -1,49 +1,55 @@
-{ stdenv, fetchurl, mkfontdir, mkfontscale, bdf2psf }:
+{ stdenv, fetchurl, fetchFromGitHub
+, mkfontdir, mkfontscale, bdf2psf, bdftopcf
+}:
 
 stdenv.mkDerivation rec {
-  name = "gohufont-2.0";
+  name = "gohufont-${version}";
+  version = "2.1";
 
-  pcf = fetchurl {
-    url = "http://font.gohu.org/gohufont-2.0.tar.gz";
-    sha256 = "0vi87fvj3m52piz2k6vqday03cah6zvz3dzrvjch3qjna1i1nb7s";
+  src = fetchurl {
+    url = "http://font.gohu.org/${name}.tar.gz";
+    sha256 = "10dsl7insnw95hinkcgmp9rx39lyzb7bpx5g70vswl8d6p4n53bm";
   };
 
-  bdf = fetchurl {
-    url = "http://font.gohu.org/gohufont-bdf-2.0.tar.gz";
-    sha256 = "0rqqavhqbs7pajcblg92mjlz2dxk8b60vgdh271axz7kjs2wf9mr";
+  bdf = fetchFromGitHub {
+    owner  = "hchargois";
+    repo   = "gohufont";
+    rev    = "cc36b8c9fed7141763e55dcee0a97abffcf08224";
+    sha256 = "1hmp11mrr01b29phw0xyj4h9b92qz19cf56ssf6c47c5j2c4xmbv";
   };
 
-  nativeBuildInputs = [ mkfontdir mkfontscale bdf2psf ];
+  nativeBuildInputs = [ mkfontdir mkfontscale bdf2psf bdftopcf ];
 
-  unpackPhase = ''
-    mkdir pcf bdf
-    tar -xzf $pcf --strip-components=1 -C pcf
-    tar -xzf $bdf --strip-components=1 -C bdf
-  '';
-
-  installPhase = ''
+  buildPhase = ''
     # convert bdf to psf fonts
-    sourceRoot="$(pwd)"
+    build=$(pwd)
     mkdir psf
+    cd ${bdf2psf}/usr/share/bdf2psf
+    for i in $bdf/*.bdf; do
+      bdf2psf \
+        --fb "$i" standard.equivalents \
+        ascii.set+useful.set+linux.set 512 \
+        "$build/psf/$(basename $i .bdf).psf"
+    done
+    cd $build
 
-    cd "${bdf2psf}/usr/share/bdf2psf"
-    for i in $sourceRoot/bdf/*.bdf; do
-      bdf2psf --fb $i standard.equivalents \
-                      ascii.set+useful.set+linux.set 512 \
-                      "$sourceRoot/psf/$(basename $i .bdf).psf"
+    # convert hidpi variant to pcf
+    for i in $bdf/hidpi/*.bdf; do
+        name=$(basename $i .bdf).pcf
+        bdftopcf -o "$name" "$i"
     done
-    cd "$sourceRoot"
+  '';
 
+  installPhase = ''
     # install the psf fonts (for the virtual console)
     fontDir="$out/share/consolefonts"
     mkdir -p "$fontDir"
-    mv psf/*.psf "$fontDir"
-
+    mv -t "$fontDir" psf/*.psf
 
     # install the pcf fonts (for xorg applications)
     fontDir="$out/share/fonts/misc"
     mkdir -p "$fontDir"
-    mv pcf/*.pcf.gz "$fontDir"
+    mv -t "$fontDir" *.pcf.gz *.pcf
 
     cd "$fontDir"
     mkfontdir
@@ -52,15 +58,15 @@ stdenv.mkDerivation rec {
 
   outputHashAlgo = "sha256";
   outputHashMode = "recursive";
-  outputHash = "0msl5y9q6hjbhc85v121x1b1rhsh2rbqqy4k234i5mpp8l3087r7";
+  outputHash     = "0kl7k8idl0fnsap2c4j02i33z017p2s4gi2cgspy6ica46fczcc1";
 
   meta = with stdenv.lib; {
     description = ''
       A monospace bitmap font well suited for programming and terminal use
     '';
-    homepage = http://font.gohu.org/;
-    license = licenses.wtfpl;
-    maintainers = with maintainers; [ epitrochoid ];
-    platforms = platforms.linux;
+    homepage    = http://font.gohu.org/;
+    license     = licenses.wtfpl;
+    maintainers = with maintainers; [ epitrochoid rnhmjoj ];
+    platforms   = platforms.unix;
   };
 }
diff --git a/pkgs/data/fonts/inter-ui/default.nix b/pkgs/data/fonts/inter-ui/default.nix
index 81d392982eec..c7bcebcf5b25 100644
--- a/pkgs/data/fonts/inter-ui/default.nix
+++ b/pkgs/data/fonts/inter-ui/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchzip }:
 
 let
-  version = "3.3";
+  version = "3.4";
 in fetchzip {
   name = "inter-${version}";
 
@@ -12,7 +12,7 @@ in fetchzip {
     unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype
   '';
 
-  sha256 = "17fv33ryvbla4f4mfgw7m7gjlwyjlni90a8gpb7jws1qzn0vgazg";
+  sha256 = "1dl4zc1a5dl9xkg094zmzy6bk7gms8vhsiln58ix7sffzcf3pri8";
 
   meta = with stdenv.lib; {
     homepage = https://rsms.me/inter/;
diff --git a/pkgs/data/fonts/manrope/default.nix b/pkgs/data/fonts/manrope/default.nix
new file mode 100644
index 000000000000..1fdf88b79abe
--- /dev/null
+++ b/pkgs/data/fonts/manrope/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "manrope";
+  version = "3";
+  src = fetchFromGitHub {
+    owner = "sharanda";
+    repo = pname;
+    rev = "3bd68c0c325861e32704470a90dfc1868a5c37e9";
+    sha256 = "1k6nmczbl97b9j2a8vx6a1r3q4gd1c2qydv0y9gn8xyl7x8fcvhs";
+  };
+  dontBuild = true;
+  installPhase = ''
+    install -Dm644 -t $out/share/fonts/opentype "desktop font"/*
+  '';
+  meta = with stdenv.lib; {
+    description = "Open-source modern sans-serif font family";
+    homepage = https://github.com/sharanda/manrope;
+    license = licenses.ofl;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
diff --git a/pkgs/data/fonts/nika-fonts/default.nix b/pkgs/data/fonts/nika-fonts/default.nix
new file mode 100644
index 000000000000..f40ee8da7502
--- /dev/null
+++ b/pkgs/data/fonts/nika-fonts/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "nika-fonts";
+  version = "1.0.0";
+
+  src = fetchFromGitHub {
+    owner = "font-store";
+    repo = "NikaFont";
+    rev = "v${version}";
+    sha256 = "16dhk87vmjnywl5wqsl9dzp12ddpfk57w08f7811m3ijqadscdwc";
+  };
+
+  installPhase = ''
+    mkdir -p $out/share/fonts/nika-fonts
+    cp -v $( find . -name '*.ttf') $out/share/fonts/nika-fonts
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/font-store/NikaFont/;
+    description = "Persian/Arabic Open Source Font";
+    license = licenses.ofl;
+    platforms = platforms.all;
+    maintainers = [ maintainers.linarcx ];
+  };
+}
diff --git a/pkgs/data/fonts/parastoo-fonts/default.nix b/pkgs/data/fonts/parastoo-fonts/default.nix
new file mode 100644
index 000000000000..00f03b53078e
--- /dev/null
+++ b/pkgs/data/fonts/parastoo-fonts/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "parastoo-fonts";
+  version = "1.0.0-alpha5";
+
+  src = fetchFromGitHub {
+    owner = "rastikerdar";
+    repo = "parastoo-font";
+    rev = "v${version}";
+    sha256 = "1nya9cbbs6sgv2w3zyah3lb1kqylf922q3fazh4l7bi6zgm8q680";
+  };
+
+  installPhase = ''
+    mkdir -p $out/share/fonts/parastoo-fonts
+    cp -v $( find . -name '*.ttf') $out/share/fonts/parastoo-fonts
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/rastikerdar/parastoo-font;
+    description = "A Persian (Farsi) Font - فونت ( قلم ) فارسی پرستو";
+    license = licenses.ofl;
+    platforms = platforms.all;
+    maintainers = [ maintainers.linarcx ];
+  };
+}
diff --git a/pkgs/data/fonts/sahel-fonts/default.nix b/pkgs/data/fonts/sahel-fonts/default.nix
new file mode 100644
index 000000000000..20545be3dcad
--- /dev/null
+++ b/pkgs/data/fonts/sahel-fonts/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "sahel-fonts";
+  version = "1.0.0-alpha22";
+
+  src = fetchFromGitHub {
+    owner = "rastikerdar";
+    repo = "sahel-font";
+    rev = "v${version}";
+    sha256 = "1kx7byzb5zxspq0i4cvgf4q7sm6xnhdnfyw9zrb1wfmdv3jzaz7p";
+  };
+
+  installPhase = ''
+    mkdir -p $out/share/fonts/sahel-fonts
+    cp -v $( find . -name '*.ttf') $out/share/fonts/sahel-fonts
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/rastikerdar/sahel-font;
+    description = "A Persian (farsi) Font - فونت (قلم) فارسی ساحل";
+    license = licenses.ofl;
+    platforms = platforms.all;
+    maintainers = [ maintainers.linarcx ];
+  };
+}
diff --git a/pkgs/data/fonts/samim-fonts/default.nix b/pkgs/data/fonts/samim-fonts/default.nix
new file mode 100644
index 000000000000..620e2fdcfb9c
--- /dev/null
+++ b/pkgs/data/fonts/samim-fonts/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "samim-fonts";
+  version = "3.1.0";
+
+  src = fetchFromGitHub {
+    owner = "rastikerdar";
+    repo = "samim-font";
+    rev = "v${version}";
+    sha256 = "1mp0pgbn9r098ilajwzag7c21shwb13mq61ly9av0mfbpnhkkjqk";
+  };
+
+  installPhase = ''
+    mkdir -p $out/share/fonts/samim-fonts
+    cp -v $( find . -name '*.ttf') $out/share/fonts/samim-fonts
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/rastikerdar/samim-font;
+    description = "A Persian (Farsi) Font - فونت (قلم) فارسی صمیم";
+    license = licenses.ofl;
+    platforms = platforms.all;
+    maintainers = [ maintainers.linarcx ];
+  };
+}
diff --git a/pkgs/data/fonts/spleen/default.nix b/pkgs/data/fonts/spleen/default.nix
new file mode 100644
index 000000000000..a474c3db779d
--- /dev/null
+++ b/pkgs/data/fonts/spleen/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchurl, mkfontdir, mkfontscale }:
+
+stdenv.mkDerivation rec {
+  pname = "spleen";
+  version = "1.0.4";
+
+  src = fetchurl {
+    url = "https://github.com/fcambus/spleen/releases/download/${version}/spleen-${version}.tar.gz";
+    sha256 = "1x62a5ygn3rpgzbaacz64rp8mn7saymdnxci4l3xasvsjjp60s3g";
+  };
+
+  buildPhase = "gzip -n9 *.pcf";
+  installPhase = ''
+    d="$out/share/fonts/X11/misc/spleen"
+    install -Dm644 *.pcf.gz  -t $d
+    install -Dm644 *.bdf -t $d
+    install -m644 fonts.alias-spleen $d/fonts.alias
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Monospaced bitmap fonts";
+    homepage = https://www.cambus.net/spleen-monospaced-bitmap-fonts;
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
diff --git a/pkgs/desktops/deepin/dbus-factory/default.nix b/pkgs/desktops/deepin/dbus-factory/default.nix
index 3c99c40ee807..ee0c81d7d39e 100644
--- a/pkgs/desktops/deepin/dbus-factory/default.nix
+++ b/pkgs/desktops/deepin/dbus-factory/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     go-dbus-generator
   ];
 
-  makeFlags = [ "GOPATH=$(out)/share/go" ];
+  makeFlags = [ "GOPATH=${placeholder ''out''}/share/go" ];
 
   postPatch = ''
     sed -i -e 's:/share/gocode:/share/go:' Makefile
diff --git a/pkgs/desktops/deepin/dde-api/default.nix b/pkgs/desktops/deepin/dde-api/default.nix
index 6e61a30e258c..8db376e01fd7 100644
--- a/pkgs/desktops/deepin/dde-api/default.nix
+++ b/pkgs/desktops/deepin/dde-api/default.nix
@@ -1,12 +1,32 @@
 { stdenv, buildGoPackage, fetchFromGitHub, pkgconfig,
-  deepin-gettext-tools, go-dbus-factory, go-gir-generator, go-lib,
-  alsaLib, glib, gtk3, libcanberra, libgudev, librsvg, poppler,
-  pulseaudio, go, deepin }:
+  alsaLib,
+  bc,
+  blur-effect,
+  coreutils,
+  dbus-factory,
+  deepin,
+  deepin-gettext-tools,
+  fontconfig,
+  glib,
+  go,
+  go-dbus-factory,
+  go-gir-generator,
+  go-lib,
+  grub2,
+  gtk3,
+  libcanberra,
+  libgudev,
+  librsvg,
+  poppler,
+  pulseaudio,
+  rfkill,
+  xcur2png
+}:
 
 buildGoPackage rec {
   name = "${pname}-${version}";
   pname = "dde-api";
-  version = "3.5.0";
+  version = "3.18.1";
 
   goPackagePath = "pkg.deepin.io/dde/api";
 
@@ -14,33 +34,62 @@ buildGoPackage rec {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1g3s0i5wa6qyv00yksz4r4cy2vhiknq8v0yx7aribvwm3gxf7jw3";
+    sha256 = "0y8v18f6l3ycysdn4qi7c93z805q7alji8wix4j4qh9x9r35d728";
   };
 
   goDeps = ./deps.nix;
 
+  outputs = [ "out" ];
+
   nativeBuildInputs = [
     pkgconfig
-    deepin-gettext-tools
-    go-dbus-factory
-    go-gir-generator
-    go-lib
+    deepin-gettext-tools # build
+    dbus-factory         # build
+    go-dbus-factory      # needed
+    go-gir-generator     # needed
+    go-lib               # build
+    deepin.setupHook
   ];
 
   buildInputs = [
-    alsaLib
-    glib
-    gtk3
-    libcanberra
-    libgudev
-    librsvg
-    poppler
-    pulseaudio
-  ];
+    alsaLib     # needed
+    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
+    grub2       # run (is it really needed?)
+    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?)
+ ];
 
   postPatch = ''
-    patchShebangs .
-    sed -i -e "s|/var|$bin/var|" Makefile
+    searchHardCodedPaths # debugging
+
+    sed -i -e "s|/var|$out/var|" Makefile
+
+    # TODO: confirm where to install grub themes
+    sed -i -e "s|/boot/grub|$out/boot/grub|" Makefile
+
+    fixPath $out /usr/lib/deepin-api \
+      lunar-calendar/main.go \
+      misc/services/com.deepin.api.CursorHelper.service \
+      misc/services/com.deepin.api.Graphic.service \
+      misc/services/com.deepin.api.LunarCalendar.service \
+      misc/services/com.deepin.api.Pinyin.service \
+      misc/system-services/com.deepin.api.Device.service \
+      misc/system-services/com.deepin.api.LocaleHelper.service \
+      misc/system-services/com.deepin.api.SoundThemePlayer.service \
+      misc/systemd/system/deepin-shutdown-sound.service \
+      theme_thumb/gtk/gtk.go \
+      thumbnails/gtk/gtk.go
   '';
 
   buildPhase = ''
@@ -49,10 +98,9 @@ buildGoPackage rec {
   '';
 
   installPhase = ''
-    make install PREFIX="$bin" SYSTEMD_LIB_DIR="$bin/lib" -C go/src/${goPackagePath}
-    mkdir -p $out/share
-    mv $bin/share/gocode $out/share/go
-    remove-references-to -t ${go} $bin/bin/* $bin/lib/deepin-api/*
+    make install PREFIX="$out" SYSTEMD_LIB_DIR="$out/lib" -C go/src/${goPackagePath}
+    mv $out/share/gocode $out/share/go
+    remove-references-to -t ${go} $out/bin/* $out/lib/deepin-api/*
   '';
 
   passthru.updateScript = deepin.updateScript { inherit name; };
diff --git a/pkgs/desktops/deepin/dde-api/deps.nix b/pkgs/desktops/deepin/dde-api/deps.nix
index bd7a13043da2..03758f0d43e1 100644
--- a/pkgs/desktops/deepin/dde-api/deps.nix
+++ b/pkgs/desktops/deepin/dde-api/deps.nix
@@ -1,4 +1,4 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
 [
   {
     goPackagePath = "github.com/alecthomas/template";
@@ -32,8 +32,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/disintegration/imaging";
-      rev = "9458da53d1e65e098d48467a4317c403327e4424";
-      sha256 = "1b0ma9if8s892qfx5b1vjinxn00ah9vsyxijs8knkilrhf5vqcx4";
+      rev = "061e8a750a4db9667cdf9e2af7f4029ba506cb3b";
+      sha256 = "13fkknwz2iby5rdzv9sgam6p27zdgxis3sxgyls9sdir5lbhjhm7";
     };
   }
   {
@@ -41,8 +41,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/fogleman/gg";
-      rev = "0e0ff3ade7039063fe954cc1b45fad6cd4ac80db";
-      sha256 = "06gvsngfwizdxin90nldix5503fqgnwqmqvxzrz0xg5hfazwfra5";
+      rev = "0403632d5b905943a1c2a5b2763aaecd568467ec";
+      sha256 = "1nkldjghbqnzj2djfaxhiv35kk341xhcrj9m2dwq65v684iqkk8n";
     };
   }
   {
@@ -59,8 +59,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/linuxdeepin/go-x11-client";
-      rev = "03541136501cab4910ad8852fe749ef8e18907ca";
-      sha256 = "1iiw8qclpklim81hz1sdjp2ajw0ljvjz19n9jly86nbw6m8x4gkp";
+      rev = "48c75d615ef634d9b1c24f8e8a30f56201b4f561";
+      sha256 = "1x2i9wg6lyskls5qi3d2r84bdhyhgi8v1d8scxx9ysjaw9di9ldl";
     };
   }
   {
@@ -77,8 +77,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/image";
-      rev = "69cc3646b96e61de0b417f4815b86c36e65783ee";
-      sha256 = "0nkywb3r0qvwkmykpswnf0svxi463ycn293y5jjididzxv9qxdp9";
+      rev = "3fc05d484e9f77dd51816890e05f2602e4ca4d65";
+      sha256 = "0mcip8jpz2061j1z658rfskphc92wv6sapy81p95bnjdymi562k3";
     };
   }
   {
@@ -86,8 +86,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/net";
-      rev = "c44066c5c816ec500d459a2a324a753f78531ae0";
-      sha256 = "0mgww74bl15d0jvsh4f3qr1ckjzb8icb8hn0mgs5ppa0b2fgpc4f";
+      rev = "74de082e2cca95839e88aa0aeee5aadf6ce7710f";
+      sha256 = "0a4y3y0q5bkif7wvdkyjkvgnzlbh2n4zk7wsy5j95raf0i3zlw4s";
     };
   }
   {
diff --git a/pkgs/desktops/deepin/dde-calendar/default.nix b/pkgs/desktops/deepin/dde-calendar/default.nix
index 631471527f3a..0ef0da5c70b7 100644
--- a/pkgs/desktops/deepin/dde-calendar/default.nix
+++ b/pkgs/desktops/deepin/dde-calendar/default.nix
@@ -19,6 +19,7 @@ stdenv.mkDerivation rec {
     qmake
     qttools
     deepin-gettext-tools
+    deepin.setupHook
   ];
 
   buildInputs = [
@@ -27,11 +28,14 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
-    patchShebangs .
+    searchHardCodedPaths
+    patchShebangs translate_generation.sh
+    patchShebangs translate_desktop.sh
+
+    fixPath $out /usr com.deepin.Calendar.service
+
     sed -i translate_desktop.sh \
       -e "s,/usr/bin/deepin-desktop-ts-convert,deepin-desktop-ts-convert,"
-    sed -i com.deepin.Calendar.service \
-      -e "s,/usr,$out,"
   '';
 
   passthru.updateScript = deepin.updateScript { inherit name; };
diff --git a/pkgs/desktops/deepin/dde-daemon/default.nix b/pkgs/desktops/deepin/dde-daemon/default.nix
index 3678694be9ee..954d0971c250 100644
--- a/pkgs/desktops/deepin/dde-daemon/default.nix
+++ b/pkgs/desktops/deepin/dde-daemon/default.nix
@@ -1,13 +1,15 @@
 { stdenv, buildGoPackage, fetchFromGitHub, fetchpatch, pkgconfig,
   dbus-factory, go-dbus-factory, go-gir-generator, go-lib,
-  deepin-gettext-tools, dde-api, alsaLib, glib, gtk3, libinput, libnl,
-  librsvg, linux-pam, networkmanager, pulseaudio, xorg, gnome3,
-  python3Packages, hicolor-icon-theme, go, deepin }:
+  deepin-gettext-tools, dde-api, deepin-desktop-schemas,
+  deepin-wallpapers, deepin-desktop-base, alsaLib, glib, gtk3,
+  libgudev, libinput, libnl, librsvg, linux-pam, networkmanager,
+  pulseaudio, xorg, python3, hicolor-icon-theme, glibc, tzdata, go,
+  deepin, makeWrapper, wrapGAppsHook }:
 
 buildGoPackage rec {
   name = "${pname}-${version}";
   pname = "dde-daemon";
-  version = "3.6.0";
+  version = "3.24.1";
 
   goPackagePath = "pkg.deepin.io/dde/daemon";
 
@@ -15,15 +17,14 @@ buildGoPackage rec {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0gn2zp34wg79lvzdfla6yb4gs3f9ll83kj765zvig1wpx51nq1aj";
+    sha256 = "1qxj0mqnl10qj8qidpc1sv8gm4gj5965i07d003yxlxcw9cqwx7y";
   };
 
   patches = [
     # https://github.com/linuxdeepin/dde-daemon/issues/51
     (fetchpatch {
-      name = "dde-daemon_3.2.3.patch";
-      url = https://github.com/jouyouyun/tap-gesture-patches/raw/master/patches/dde-daemon_3.2.3.patch;
-      sha256 = "0a3xb15czpfl2vajpf7ycw37vr7fbw2png1a67mvjjkgx7d1k7dg";
+      url = https://github.com/jouyouyun/tap-gesture-patches/raw/master/patches/dde-daemon_3.8.0.patch;
+      sha256 = "1ampdsp9zlg263flswdw9gj10n7gxh7zi6w6z9jgh29xlai05pvh";
     })
   ];
 
@@ -38,46 +39,70 @@ buildGoPackage rec {
     go-gir-generator
     go-lib
     deepin-gettext-tools
-    dde-api
     linux-pam
     networkmanager
     networkmanager.dev
-    python3Packages.python
+    python3
+    makeWrapper
+    wrapGAppsHook
+    deepin.setupHook
   ];
 
   buildInputs = [
     alsaLib
+    dde-api
+    deepin-desktop-base
+    deepin-desktop-schemas
+    deepin-wallpapers
     glib
-    gnome3.libgudev
+    libgudev
     gtk3
     hicolor-icon-theme
     libinput
     libnl
     librsvg
     pulseaudio
+    tzdata
   ];
 
   postPatch = ''
-    patchShebangs .
+    searchHardCodedPaths
+    patchShebangs network/nm_generator/gen_nm_consts.py
 
-    sed -i network/nm_generator/Makefile -e 's,/usr/share/gir-1.0/NM-1.0.gir,${networkmanager.dev}/share/gir-1.0/NM-1.0.gir,'
+    fixPath $out /usr/share/dde/data launcher/manager.go dock/dock_manager_init.go
+    fixPath ${networkmanager.dev} /usr/share/gir-1.0/NM-1.0.gir network/nm_generator/Makefile
+    fixPath ${glibc.bin} /usr/bin/getconf systeminfo/utils.go
+    fixPath ${deepin-desktop-base} /etc/deepin-version systeminfo/version.go accounts/deepinversion.go
+    fixPath ${tzdata} /usr/share/zoneinfo timedate/zoneinfo/zone.go
+    fixPath ${dde-api} /usr/lib/deepin-api grub2/modify_manger.go accounts/image_blur.go
+    fixPath ${deepin-wallpapers} /usr/share/wallpapers appearance/background/list.go accounts/user.go
 
     sed -i -e "s|{DESTDIR}/etc|{DESTDIR}$out/etc|" Makefile
     sed -i -e "s|{DESTDIR}/var|{DESTDIR}$out/var|" Makefile
     sed -i -e "s|{DESTDIR}/lib|{DESTDIR}$out/lib|" Makefile
 
     find -type f -exec sed -i -e "s,/usr/lib/deepin-daemon,$out/lib/deepin-daemon," {} +
+
+    searchHardCodedPaths
   '';
 
   buildPhase = ''
-    make -C go/src/${goPackagePath}
     # compilation of the nm module is failing
     #make -C go/src/${goPackagePath}/network/nm_generator gen-nm-code
+    make -C go/src/${goPackagePath}
   '';
 
   installPhase = ''
     make install PREFIX="$out" -C go/src/${goPackagePath}
     remove-references-to -t ${go} $out/lib/deepin-daemon/*
+    searchHardCodedPaths $out
+  '';
+
+  postFixup = ''
+    # wrapGAppsHook does not work with binaries outside of $out/bin or $out/libexec
+    for binary in $out/lib/deepin-daemon/*; do
+      wrapProgram $binary "''${gappsWrapperArgs[@]}"
+    done
   '';
 
   passthru.updateScript = deepin.updateScript { inherit name; };
diff --git a/pkgs/desktops/deepin/dde-daemon/deps.nix b/pkgs/desktops/deepin/dde-daemon/deps.nix
index 3d241baa3260..fab2f9f93b20 100644
--- a/pkgs/desktops/deepin/dde-daemon/deps.nix
+++ b/pkgs/desktops/deepin/dde-daemon/deps.nix
@@ -1,4 +1,4 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
 [
   {
     goPackagePath = "github.com/alecthomas/template";
@@ -41,8 +41,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/linuxdeepin/go-x11-client";
-      rev = "03541136501cab4910ad8852fe749ef8e18907ca";
-      sha256 = "1iiw8qclpklim81hz1sdjp2ajw0ljvjz19n9jly86nbw6m8x4gkp";
+      rev = "48c75d615ef634d9b1c24f8e8a30f56201b4f561";
+      sha256 = "1x2i9wg6lyskls5qi3d2r84bdhyhgi8v1d8scxx9ysjaw9di9ldl";
     };
   }
   {
@@ -50,8 +50,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/msteinert/pam";
-      rev = "f4cd9f5e29232537a12db1678f48c702ad6896b7";
-      sha256 = "1vjawxswy3f23v4d72kk95y3b557580670ai9ffvrwy6wy85qync";
+      rev = "f29b9f28d6f9a1f6c4e6fd5db731999eb946574b";
+      sha256 = "1v5z51mgyz2glm7v0mg60xs1as88wx6cqhys2khc5d3khkr8q0qp";
     };
   }
   {
@@ -68,8 +68,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/image";
-      rev = "69cc3646b96e61de0b417f4815b86c36e65783ee";
-      sha256 = "0nkywb3r0qvwkmykpswnf0svxi463ycn293y5jjididzxv9qxdp9";
+      rev = "3fc05d484e9f77dd51816890e05f2602e4ca4d65";
+      sha256 = "0mcip8jpz2061j1z658rfskphc92wv6sapy81p95bnjdymi562k3";
     };
   }
   {
@@ -77,8 +77,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/net";
-      rev = "c44066c5c816ec500d459a2a324a753f78531ae0";
-      sha256 = "0mgww74bl15d0jvsh4f3qr1ckjzb8icb8hn0mgs5ppa0b2fgpc4f";
+      rev = "74de082e2cca95839e88aa0aeee5aadf6ce7710f";
+      sha256 = "0a4y3y0q5bkif7wvdkyjkvgnzlbh2n4zk7wsy5j95raf0i3zlw4s";
     };
   }
   {
@@ -86,8 +86,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/text";
-      rev = "6f44c5a2ea40ee3593d98cdcc905cc1fdaa660e2";
-      sha256 = "00mwzxly5isgf0glz7k3k2dkyqkjfc4z55qxajx4lgcp3h8xn9xj";
+      rev = "e3703dcdd614d2d7488fff034c75c551ea25da95";
+      sha256 = "1xh106aslp04vbzb4hc7cc5fyg2ljwny8fwfwsp5mpbqr9ixkikv";
     };
   }
   {
@@ -104,8 +104,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/linuxdeepin/go-lib.git";
-      rev = "b199d0dc96e979398ea3985334ccf9c20236d1a7";
-      sha256 = "0g84v1adnnyqc1mv45n3wlvnivkm1fi8ywszzgwx8irl3iddfvxv";
+      rev = "3558b2348565e983c7d4a57a0a21bbe716a55b83";
+      sha256 = "0p9yrxa3x71n3jxffh03ahjgimdzvxzhny632k363lkha6glvbnc";
     };
   }
 ]
diff --git a/pkgs/desktops/deepin/dde-polkit-agent/default.nix b/pkgs/desktops/deepin/dde-polkit-agent/default.nix
new file mode 100644
index 000000000000..17b88738c36f
--- /dev/null
+++ b/pkgs/desktops/deepin/dde-polkit-agent/default.nix
@@ -0,0 +1,51 @@
+{ stdenv, fetchFromGitHub, pkgconfig, qmake, qttools, polkit-qt,
+  dtkcore, dtkwidget, dde-qt-dbus-factory, deepin }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "dde-polkit-agent";
+  version = "0.2.4";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "1x7mv63g8412w1bq7fijsdzi8832qjb6gnr1nykcv7imzlycq9m6";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    qmake
+    qttools
+    deepin.setupHook
+  ];
+
+  buildInputs = [
+    dde-qt-dbus-factory
+    dtkcore
+    dtkwidget
+    polkit-qt
+  ];
+
+  postPatch = ''
+    searchHardCodedPaths
+    patchShebangs translate_generation.sh
+
+    fixPath $out /usr dde-polkit-agent.pro polkit-dde-authentication-agent-1.desktop
+    fixPath /run/current-system/sw /usr/lib/polkit-1-dde/plugins pluginmanager.cpp
+  '';
+
+  postFixup = ''
+    searchHardCodedPaths $out
+  '';
+
+  passthru.updateScript = deepin.updateScript { inherit name; };
+
+  meta = with stdenv.lib; {
+    description = "PolicyKit agent for Deepin Desktop Environment";
+    homepage = https://github.com/linuxdeepin/dde-polkit-agent;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/dde-qt-dbus-factory/default.nix b/pkgs/desktops/deepin/dde-qt-dbus-factory/default.nix
index f28d8f77b3c3..1d9c13c17bbc 100644
--- a/pkgs/desktops/deepin/dde-qt-dbus-factory/default.nix
+++ b/pkgs/desktops/deepin/dde-qt-dbus-factory/default.nix
@@ -1,25 +1,28 @@
-{ stdenv, fetchFromGitHub, pkgconfig, qmake, python, deepin }:
+{ stdenv, fetchFromGitHub, pkgconfig, qmake, python3, deepin }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "dde-qt-dbus-factory";
-  version = "1.0.5";
+  version = "1.1.1";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0cz55hsbhy1ab1mndv0sp6xnqrhz2y66w7pcxy8v9k87ii32czf8";
+    sha256 = "1b2i5m6fzkga72hbl85v2rng3qq53di39p7jj2f119wmlfbyp2vg";
   };
 
   nativeBuildInputs = [
     qmake
-    python
+    python3
+    deepin.setupHook
   ];
 
   postPatch = ''
-    sed -i libdframeworkdbus/{DFrameworkdbusConfig.in,libdframeworkdbus.pro} \
-      -e "s,/usr,$out,"
+    searchHardCodedPaths
+    fixPath $out /usr \
+      libdframeworkdbus/DFrameworkdbusConfig.in \
+      libdframeworkdbus/libdframeworkdbus.pro
   '';
 
   enableParallelBuilding = true;
diff --git a/pkgs/desktops/deepin/dde-session-ui/default.nix b/pkgs/desktops/deepin/dde-session-ui/default.nix
index d3970cf87108..a61a0fdbb84e 100644
--- a/pkgs/desktops/deepin/dde-session-ui/default.nix
+++ b/pkgs/desktops/deepin/dde-session-ui/default.nix
@@ -1,18 +1,18 @@
 { stdenv, fetchFromGitHub, pkgconfig, qmake, qtsvg, qttools,
   qtx11extras, xkeyboard_config, xorg, lightdm_qt, gsettings-qt,
   dde-qt-dbus-factory, deepin-gettext-tools, dtkcore, dtkwidget,
-  hicolor-icon-theme, deepin }:
+  deepin-desktop-schemas, deepin, hicolor-icon-theme, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "dde-session-ui";
-  version = "4.6.2";
+  version = "4.9.0";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1fxlrj7vv7nqllwpwc8mxiv9bfqcj9b2qwkpjaq326pfmg5p5lhq";
+    sha256 = "1bh7wbkzikcnka94nzqzl87cs2m6bslrv9r2hdsvqqr3aaad5za3";
   };
 
   nativeBuildInputs = [
@@ -20,6 +20,8 @@ stdenv.mkDerivation rec {
     qmake
     qttools
     deepin-gettext-tools
+    wrapGAppsHook
+    deepin.setupHook
   ];
 
   buildInputs = [
@@ -35,10 +37,13 @@ stdenv.mkDerivation rec {
     xorg.libXtst
     xkeyboard_config
     hicolor-icon-theme
+    deepin-desktop-schemas
   ];
 
   postPatch = ''
-    patchShebangs .
+    searchHardCodedPaths
+    patchShebangs translate_generation.sh
+    patchShebangs translate_desktop.sh
     sed -i translate_desktop.sh -e "s,/usr/bin/deepin-desktop-ts-convert,deepin-desktop-ts-convert,"
     find -type f -exec sed -i -e "s,path = /etc,path = $out/etc," {} +
     find -type f -exec sed -i -e "s,path = /usr,path = $out," {} +
diff --git a/pkgs/desktops/deepin/deepin-desktop-base/default.nix b/pkgs/desktops/deepin/deepin-desktop-base/default.nix
index 80a368c5be99..b5e75c217b1e 100644
--- a/pkgs/desktops/deepin/deepin-desktop-base/default.nix
+++ b/pkgs/desktops/deepin/deepin-desktop-base/default.nix
@@ -3,34 +3,40 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-desktop-base";
-  version = "2018.10.29";
+  version = "2019.03.29";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0l2zb7rpag2q36lqsgvirhjgmj7w243nsi1rywkypf2xm7g2v235";
+    sha256 = "1d016h95nsn5yay9f4c13hixfxj0q01hpxwj2x84i6qpx63dxdwq";
   };
 
+  nativeBuildInputs = [ deepin.setupHook ];
+
   buildInputs = [ deepin-wallpapers ];
 
+  # TODO: Fedora recommended dependencies:
+  #   deepin-wallpapers
+  #   plymouth-theme-deepin
+
   postPatch = ''
-    sed -i Makefile -e "s:/usr:$out:" -e "s:/etc:$out/etc:"
-  '';
+    searchHardCodedPaths
 
-  postInstall = ''
-    # Remove Deepin distro's lsb-release
-    rm $out/etc/lsb-release
+    fixPath $out /etc Makefile
+    fixPath $out /usr Makefile
 
+    # Remove Deepin distro's lsb-release
     # Don't override systemd timeouts
-    rm -r $out/etc/systemd
-
     # Remove apt-specific templates
-    rm -r $out/share/python-apt
-
-    # Remove empty backgrounds directory
-    rm -r $out/share/backgrounds
+    echo ----------------------------------------------------------------
+    echo grep --color=always -E 'lsb-release|systemd|python-apt|backgrounds' Makefile
+    grep --color=always -E 'lsb-release|systemd|python-apt|backgrounds' Makefile
+    echo ----------------------------------------------------------------
+    sed -i -E '/lsb-release|systemd|python-apt|backgrounds/d' Makefile
+  '';
 
+  postInstall = ''
     # Make a symlink for deepin-version
     ln -s ../lib/deepin/desktop-version $out/etc/deepin-version
   '';
@@ -39,6 +45,14 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Base assets and definitions for Deepin Desktop Environment";
+    # TODO: revise
+    longDescription = ''
+      This package provides some components for Deepin desktop environment.
+      - deepin logo
+      - deepin desktop version
+      - login screen background image
+      - language information
+    '';
     homepage = https://github.com/linuxdeepin/deepin-desktop-base;
     license = licenses.gpl3;
     platforms = platforms.linux;
diff --git a/pkgs/desktops/deepin/deepin-desktop-schemas/default.nix b/pkgs/desktops/deepin/deepin-desktop-schemas/default.nix
index d2b70ec4a896..f0a3d711a1d7 100644
--- a/pkgs/desktops/deepin/deepin-desktop-schemas/default.nix
+++ b/pkgs/desktops/deepin/deepin-desktop-schemas/default.nix
@@ -1,21 +1,22 @@
-{ stdenv, fetchFromGitHub, python, deepin-gtk-theme,
-  deepin-icon-theme, deepin-sound-theme, deepin-wallpapers, gnome3,
-  deepin }:
+{ stdenv, fetchFromGitHub, python3, gnome3, glib, deepin-gtk-theme,
+  deepin-icon-theme, deepin-sound-theme, deepin-wallpapers, deepin }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-desktop-schemas";
-  version = "3.4.0";
+  version = "3.13.0";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "10x0rh9z925yzyp8h0vgmg4313smvran06lvr12c3931qkmkzwgq";
+    sha256 = "0bamjcpmsl8xhw3ksgl11wv5xwcdhrkl1namikfzc4an03sk1rdq";
   };
 
   nativeBuildInputs = [
-    python
+    python3
+    glib.dev
+    deepin.setupHook
   ];
 
   buildInputs = [
@@ -27,12 +28,34 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
+    searchHardCodedPaths
+
     # fix default background url
-    sed -i '/picture-uri/s|/usr/share/backgrounds/default_background.jpg|$out/share/backgrounds/deepin/default.png|' \
+    sed -i -e 's,/usr/share/backgrounds/default_background.jpg,/usr/share/backgrounds/deepin/desktop.jpg,' \
+      overrides/common/com.deepin.wrap.gnome.desktop.override
+      
+    fixPath ${deepin-wallpapers} /usr/share/backgrounds \
       overrides/common/com.deepin.wrap.gnome.desktop.override
+
+    fixPath ${deepin-wallpapers} /usr/share/wallpapers/deepin \
+      schemas/com.deepin.dde.appearance.gschema.xml
+
+    # still hardcoded paths:
+    #   /etc/gnome-settings-daemon/xrandr/monitors.xml                                ? gnome3.gnome-settings-daemon
+    #   /usr/share/backgrounds/gnome/adwaita-lock.jpg                                 ? gnome3.gnome-backgrounds
+    #   /usr/share/backgrounds/gnome/adwaita-timed.xml                                gnome3.gnome-backgrounds
+    #   /usr/share/desktop-directories
   '';
 
-  makeFlags = [ "PREFIX=$(out)" ];
+  makeFlags = [ "PREFIX=${placeholder ''out''}" ];
+
+  doCheck = true;
+  checkTarget = "test";
+
+  postInstall = ''
+    glib-compile-schemas --strict $out/share/glib-2.0/schemas
+    searchHardCodedPaths $out
+  '';
 
   passthru.updateScript = deepin.updateScript { inherit name; };
 
diff --git a/pkgs/desktops/deepin/deepin-gettext-tools/default.nix b/pkgs/desktops/deepin/deepin-gettext-tools/default.nix
index 779fae6a113e..d9a6f3701688 100644
--- a/pkgs/desktops/deepin/deepin-gettext-tools/default.nix
+++ b/pkgs/desktops/deepin/deepin-gettext-tools/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     python3Packages.python
   ];
 
-  makeFlags = [ "PREFIX=$(out)" ];
+  makeFlags = [ "PREFIX=${placeholder ''out''}" ];
 
   postPatch = ''
     sed -e 's/sudo cp/cp/' -i src/generate_mo.py
diff --git a/pkgs/desktops/deepin/deepin-gtk-theme/default.nix b/pkgs/desktops/deepin/deepin-gtk-theme/default.nix
index 8d11ca8bf42a..e0657752d102 100644
--- a/pkgs/desktops/deepin/deepin-gtk-theme/default.nix
+++ b/pkgs/desktops/deepin/deepin-gtk-theme/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   propagatedUserEnvPkgs = [ gtk-engine-murrine ];
 
-  makeFlags = [ "PREFIX=$(out)" ];
+  makeFlags = [ "PREFIX=${placeholder ''out''}" ];
 
   passthru.updateScript = deepin.updateScript { inherit name; };
 
diff --git a/pkgs/desktops/deepin/deepin-icon-theme/default.nix b/pkgs/desktops/deepin/deepin-icon-theme/default.nix
index ef4574206019..3b6b61c1ae76 100644
--- a/pkgs/desktops/deepin/deepin-icon-theme/default.nix
+++ b/pkgs/desktops/deepin/deepin-icon-theme/default.nix
@@ -1,29 +1,39 @@
-{ stdenv, fetchFromGitHub, gtk3, papirus-icon-theme, deepin }:
+{ stdenv, fetchFromGitHub, gtk3, xcursorgen, papirus-icon-theme, deepin }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-icon-theme";
-  version = "15.12.64";
+  version = "15.12.68";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0z1yrp6yg2hb67azrbd9ac743jjh83vxdf2j0mmv2lfpd4fqw8qc";
+    sha256 = "12jgz81s5qggmnkfg9m5f799r10p43qmh4zqxl1kjvlrqgvsc9rf";
   };
 
-  nativeBuildInputs = [ gtk3 papirus-icon-theme ];
+  nativeBuildInputs = [ gtk3 xcursorgen ];
 
-  postPatch = ''
-    patchShebangs .
+  buildInputs = [ papirus-icon-theme ];
 
-    # install in $out
-    sed -i -e "s|/usr|$out|g" Makefile tools/hicolor.links
+  postPatch = ''
+    patchShebangs tools/hicolor.links
+    patchShebangs tools/display_unused_links.sh
+    patchShebangs cursors-src/cursors/bitmaps/make.sh
+    patchShebangs cursors-src/render-cursors.sh
 
     # keep icon-theme.cache
     sed -i -e 's|\(-rm -f .*/icon-theme.cache\)|# \1|g' Makefile
   '';
 
+  buildTargets = "all hicolor-links";
+  installTargets = "install-icons install-cursors";
+  installFlags = [ "PREFIX=${placeholder ''out''}" ];
+
+  postInstall = ''
+    cp -a ./Sea ./usr/share/icons/hicolor "$out"/share/icons/
+  '';
+
   passthru.updateScript = deepin.updateScript { inherit name; };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/deepin/deepin-image-viewer/default.nix b/pkgs/desktops/deepin/deepin-image-viewer/default.nix
index 0b08f7cd39a0..7e2840f0f3f2 100644
--- a/pkgs/desktops/deepin/deepin-image-viewer/default.nix
+++ b/pkgs/desktops/deepin/deepin-image-viewer/default.nix
@@ -6,19 +6,20 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-image-viewer";
-  version = "1.3.1";
+  version = "1.3.10";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0dxdvm6hzj6izfxka35za8y7vacd06nksfgzx6xsv7ywzagri4k5";
+    sha256 = "0paanw9sd67ic9yrbzqhrwi4bf4lpvsk16jynx99n76j3jgyijkk";
   };
 
   nativeBuildInputs = [
     pkgconfig
     qmake
     qttools
+    deepin.setupHook
   ];
 
   buildInputs = [
@@ -33,12 +34,12 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
-    patchShebangs .
+    searchHardCodedPaths
+    patchShebangs viewer/generate_translations.sh
+    fixPath $out /usr viewer/com.deepin.ImageViewer.service
     sed -i qimage-plugins/freeimage/freeimage.pro \
            qimage-plugins/libraw/libraw.pro \
       -e "s,\$\$\[QT_INSTALL_PLUGINS\],$out/$qtPluginPrefix,"
-    sed -i viewer/com.deepin.ImageViewer.service \
-      -e "s,/usr,$out,"
   '';
 
   passthru.updateScript = deepin.updateScript { inherit name; };
diff --git a/pkgs/desktops/deepin/deepin-menu/default.nix b/pkgs/desktops/deepin/deepin-menu/default.nix
index 645abfedad71..5de292805b65 100644
--- a/pkgs/desktops/deepin/deepin-menu/default.nix
+++ b/pkgs/desktops/deepin/deepin-menu/default.nix
@@ -16,6 +16,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     pkgconfig
     qmake
+    deepin.setupHook
   ];
 
   buildInputs = [
@@ -25,7 +26,11 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
-    sed -i deepin-menu.pro -e "s,/usr,$out,"
+    searchHardCodedPaths
+    fixPath $out /usr \
+      data/com.deepin.menu.service \
+      deepin-menu.desktop \
+      deepin-menu.pro
   '';
 
   enableParallelBuilding = true;
diff --git a/pkgs/desktops/deepin/deepin-metacity/default.nix b/pkgs/desktops/deepin/deepin-metacity/default.nix
index 28d68883d4b8..fdf2c240e2c8 100644
--- a/pkgs/desktops/deepin/deepin-metacity/default.nix
+++ b/pkgs/desktops/deepin/deepin-metacity/default.nix
@@ -1,25 +1,26 @@
-{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, gnome3, gtk3, libgtop, bamf,
-  json-glib, libcanberra-gtk3, libxkbcommon, libstartup_notification,
-  deepin-wallpapers, deepin-desktop-schemas, deepin }:
+{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, gnome3, glib,
+  gtk3, libgtop, bamf, json-glib, libcanberra-gtk3, libxkbcommon,
+  libstartup_notification, deepin-wallpapers, deepin-desktop-schemas,
+  deepin }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-metacity";
-  version = "3.22.22";
+  version = "3.22.24";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0gr10dv8vphla6z7zqiyyg3n3ag4rrlz43c4kr7fd5xwx2bfvp3d";
+    sha256 = "1im0wz1zlxiag4kpp5d4hv0aa0ybr4bizarr3903hrqv0lp46hyx";
   };
 
   nativeBuildInputs = [
     pkgconfig
     intltool
     libtool
+    glib.dev
     gnome3.gnome-common
-    gnome3.glib.dev
   ];
 
   buildInputs = [
@@ -41,7 +42,7 @@ stdenv.mkDerivation rec {
       -e 's;/usr/share/backgrounds/default_background.jpg;${deepin-wallpapers}/share/backgrounds/deepin/desktop.jpg;'
   '';
 
-  NIX_CFLAGS_COMPILE = "-I${gnome3.glib.dev}/include/gio-unix-2.0";
+  NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
 
   configureFlags = [ "--disable-themes-documentation" ];
 
diff --git a/pkgs/desktops/deepin/deepin-movie-reborn/default.nix b/pkgs/desktops/deepin/deepin-movie-reborn/default.nix
index 3d195f8f1c0c..8a675ca1169e 100644
--- a/pkgs/desktops/deepin/deepin-movie-reborn/default.nix
+++ b/pkgs/desktops/deepin/deepin-movie-reborn/default.nix
@@ -5,13 +5,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-movie-reborn";
-  version = "3.2.14";
+  version = "3.2.21";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1i9sdg2p6qp57rqzrnjbxnqj3mg1qggzyq3yykw271vs8h85a707";
+    sha256 = "09a4sirbdxnrwj9ww2v7b1s9ylsincqzpqm2zisny9zxy22fm8s9";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/deepin/deepin-mutter/default.nix b/pkgs/desktops/deepin/deepin-mutter/default.nix
index d2e29cd2cb8f..fc26440a3ef1 100644
--- a/pkgs/desktops/deepin/deepin-mutter/default.nix
+++ b/pkgs/desktops/deepin/deepin-mutter/default.nix
@@ -1,17 +1,19 @@
-{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, gnome3, gtk3, xorg,
-  libcanberra-gtk3, upower, xkeyboard_config, libxkbcommon,
-  libstartup_notification, libinput, cogl, clutter, systemd, deepin }:
+{ stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, gnome3, gtk3,
+  xorg, libcanberra-gtk3, upower, xkeyboard_config, libxkbcommon,
+  libstartup_notification, libinput, libgudev, cogl, clutter, systemd,
+  gsettings-desktop-schemas, deepin-desktop-schemas, wrapGAppsHook,
+  deepin }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-mutter";
-  version = "3.20.35";
+  version = "3.20.38";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0mwk06kgw8qp8rg1j6px1zlya4x5rr9llax0qks59j56b3m9yim7";
+    sha256 = "1aq7606sgn2c6n8wfgxdryw3lprc4va0zjc0r65798w5656fdi31";
   };
 
   nativeBuildInputs = [
@@ -19,27 +21,32 @@ stdenv.mkDerivation rec {
     intltool
     libtool
     gnome3.gnome-common
+    wrapGAppsHook
+    deepin.setupHook
   ];
 
   buildInputs = [
-    gtk3
+    clutter
+    cogl
+    deepin-desktop-schemas
     gnome3.gnome-desktop
-    gnome3.gsettings-desktop-schemas
-    gnome3.libgudev
     gnome3.zenity
-    upower
-    xorg.libxkbfile
-    libxkbcommon
+    gsettings-desktop-schemas
+    gtk3
     libcanberra-gtk3
-    libstartup_notification
+    libgudev
     libinput
-    xkeyboard_config
-    cogl
-    clutter
+    libstartup_notification
+    libxkbcommon
     systemd
+    upower
+    xkeyboard_config
+    xorg.libxkbfile
   ];
 
-  enableParallelBuilding = true;
+  postPatch = ''
+    searchHardCodedPaths
+  '';
 
   configureFlags = [
     "--enable-native-backend"
@@ -50,6 +57,8 @@ stdenv.mkDerivation rec {
     NOCONFIGURE=1 ./autogen.sh
   '';
 
+  enableParallelBuilding = true;
+
   passthru.updateScript = deepin.updateScript { inherit name; };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/deepin/deepin-sound-theme/default.nix b/pkgs/desktops/deepin/deepin-sound-theme/default.nix
index bb004372497f..bb752cc1ca90 100644
--- a/pkgs/desktops/deepin/deepin-sound-theme/default.nix
+++ b/pkgs/desktops/deepin/deepin-sound-theme/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "1sw4nrn7q7wk1hpicm05apyc0mihaw42iqm52wb8ib8gm1qiylr9";
   };
 
-  makeFlags = [ "PREFIX=$(out)" ];
+  makeFlags = [ "PREFIX=${placeholder ''out''}" ];
 
   passthru.updateScript = deepin.updateScript { inherit name; };
 
diff --git a/pkgs/desktops/deepin/deepin-terminal/default.nix b/pkgs/desktops/deepin/deepin-terminal/default.nix
index 70e15441436d..74337974acca 100644
--- a/pkgs/desktops/deepin/deepin-terminal/default.nix
+++ b/pkgs/desktops/deepin/deepin-terminal/default.nix
@@ -1,19 +1,19 @@
 { stdenv, fetchurl, fetchFromGitHub, pkgconfig, cmake, ninja, vala,
-  gettext, gobject-introspection, at-spi2-core, dbus, epoxy, expect,
-  gtk3, json-glib, libXdmcp, libgee, libpthreadstubs, librsvg,
-  libsecret, libtasn1, libxcb, libxkbcommon, p11-kit, pcre, vte, wnck,
-  deepin-menu, deepin-shortcut-viewer, deepin }:
+  gettext, at-spi2-core, dbus, epoxy, expect, gtk3, json-glib,
+  libXdmcp, libgee, libpthreadstubs, librsvg, libsecret, libtasn1,
+  libxcb, libxkbcommon, p11-kit, pcre, vte, wnck, libselinux,
+  libsepol, utillinux, deepin-menu, deepin-shortcut-viewer, deepin }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-terminal";
-  version = "3.0.10.2";
+  version = "3.2.1.2";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = "deepin-terminal";
     rev = version;
-    sha256 = "0ylhp8q9kfdq9l69drawjaf0q8vcqyflb2a3zfnwbnf06dlpvkz6";
+    sha256 = "0dj386csbiw0yqz9nj6ij0s4d0ak9lpq2bmsfs17bjkgdp0ayp90";
   };
 
   nativeBuildInputs = [
@@ -22,7 +22,8 @@ stdenv.mkDerivation rec {
     ninja
     vala
     gettext
-    gobject-introspection # For setup hook
+    libselinux libsepol utillinux # required by gio
+    deepin.setupHook
   ];
 
   buildInputs = [
@@ -49,15 +50,19 @@ stdenv.mkDerivation rec {
   ];
 
   postPatch = ''
-    patchShebangs .
+    searchHardCodedPaths
   '';
 
-  enableParallelBuilding = true;
+  cmakeFlags = [
+    "-DTEST_BUILD=OFF"
+    "-DUSE_VENDOR_LIB=OFF"
+    "-DVERSION=${version}"
+  ];
 
   passthru.updateScript = deepin.updateScript { inherit name; };
 
   meta = with stdenv.lib; {
-    description = "The default terminal emulation for Deepin";
+    description = "Default terminal emulator for Deepin";
     longDescription = ''
       Deepin terminal, it sharpens your focus in the world of command line!
       It is an advanced terminal emulator with workspace, multiple
diff --git a/pkgs/desktops/deepin/deepin-wallpapers/default.nix b/pkgs/desktops/deepin/deepin-wallpapers/default.nix
index 8f04bd482184..f99974ba9c26 100644
--- a/pkgs/desktops/deepin/deepin-wallpapers/default.nix
+++ b/pkgs/desktops/deepin/deepin-wallpapers/default.nix
@@ -3,19 +3,21 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-wallpapers";
-  version = "1.7.5";
+  version = "1.7.7";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = "deepin-wallpapers";
     rev = version;
-    sha256 = "0mfjkh81ci0gjwmgycrh32by7v9b73nyvyjbqd29ccpb8bpyyakn";
+    sha256 = "09cfnxbpms98ibqbi4xd51181q3az5n8rmndcdr9w12kyzniz7xv";
   };
 
-  nativeBuildInputs = [ dde-api.bin ];
+  nativeBuildInputs = [ dde-api deepin.setupHook ];
 
   postPatch = ''
-    sed -i -e "s:/usr/lib/deepin-api:${dde-api.bin}/lib/deepin-api:" Makefile
+    searchHardCodedPaths # debugging
+
+    sed -i -e "s:/usr/lib/deepin-api:${dde-api}/lib/deepin-api:" Makefile
     sed -i -e "s:/usr/share/wallpapers:$out/share/wallpapers:" Makefile
   '';
 
diff --git a/pkgs/desktops/deepin/deepin-wm/default.nix b/pkgs/desktops/deepin/deepin-wm/default.nix
index ea2f06aae607..d1ae0557aaa7 100644
--- a/pkgs/desktops/deepin/deepin-wm/default.nix
+++ b/pkgs/desktops/deepin/deepin-wm/default.nix
@@ -1,49 +1,55 @@
 { stdenv, fetchFromGitHub, pkgconfig, intltool, libtool, vala, gnome3,
-  bamf, clutter-gtk, pantheon, libcanberra-gtk3, libwnck3,
-  deepin-mutter, deepin-wallpapers, deepin-desktop-schemas,
-  hicolor-icon-theme, deepin }:
+  bamf, clutter-gtk, pantheon, libgee, libcanberra-gtk3, libwnck3,
+  deepin-menu, deepin-mutter, deepin-wallpapers,
+  deepin-desktop-schemas, wrapGAppsHook, deepin }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "deepin-wm";
-  version = "1.9.34";
+  version = "1.9.37";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "13hydcalifdc6723k8l4pk905y9sxic5x1fqww0fyx7j6b3hm13f";
+    sha256 = "1xd2x0kyav2cxnk0bybl7lrmak1r2468slxz5a6anrdriw9l10gi";
   };
 
   nativeBuildInputs = [
     pkgconfig
     intltool
     libtool
-    gnome3.gnome-common
     vala
+    gnome3.gnome-common
+    wrapGAppsHook
+    deepin.setupHook
   ];
 
   buildInputs = [
-    gnome3.gnome-desktop
-    gnome3.libgee
     bamf
     clutter-gtk
-    pantheon.granite
-    libcanberra-gtk3
-    libwnck3
+    deepin-desktop-schemas
+    deepin-menu
     deepin-mutter
     deepin-wallpapers
-    deepin-desktop-schemas
-    hicolor-icon-theme
+    gnome3.gnome-desktop
+    libcanberra-gtk3
+    libgee
+    libwnck3
+    pantheon.granite
   ];
 
   postPatch = ''
-    sed -i src/Background/BackgroundSource.vala \
-      -e 's;/usr/share/backgrounds/default_background.jpg;${deepin-wallpapers}/share/backgrounds/deepin/desktop.jpg;'
+    searchHardCodedPaths
+    fixPath ${deepin-wallpapers} /usr/share/backgrounds src/Background/BackgroundSource.vala
+    # fix background path
+    sed -i 's|default_background.jpg|deepin/desktop.jpg|' src/Background/BackgroundSource.vala
   '';
 
+  NIX_CFLAGS_COMPILE = "-DWNCK_I_KNOW_THIS_IS_UNSTABLE";
+
   preConfigure = ''
-    ./autogen.sh
+    NOCONFIGURE=1 ./autogen.sh
   '';
 
   enableParallelBuilding = true;
diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix
index 4c0e44f6b726..d864fd77389e 100644
--- a/pkgs/desktops/deepin/default.nix
+++ b/pkgs/desktops/deepin/default.nix
@@ -2,6 +2,8 @@
 
 let
   packages = self: with self; {
+    setupHook = ./setup-hook.sh;
+
     updateScript = callPackage ./update.nix { };
 
     dbus-factory = callPackage ./dbus-factory { };
@@ -14,6 +16,7 @@ let
       # XXX: the build is finding references to Go when compiled with go v1.12
       go = go_1_11;
     };
+    dde-polkit-agent = callPackage ./dde-polkit-agent { };
     dde-qt-dbus-factory = callPackage ./dde-qt-dbus-factory { };
     dde-session-ui = callPackage ./dde-session-ui { };
     deepin-desktop-base = callPackage ./deepin-desktop-base { };
@@ -29,11 +32,11 @@ let
     deepin-shortcut-viewer = callPackage ./deepin-shortcut-viewer { };
     deepin-sound-theme = callPackage ./deepin-sound-theme { };
     deepin-terminal = callPackage ./deepin-terminal {
-      inherit (pkgs.gnome3) libgee;
       wnck = pkgs.libwnck3;
     };
     deepin-wallpapers = callPackage ./deepin-wallpapers { };
     deepin-wm = callPackage ./deepin-wm { };
+    dpa-ext-gnomekeyring = callPackage ./dpa-ext-gnomekeyring { };
     dtkcore = callPackage ./dtkcore { };
     dtkwm = callPackage ./dtkwm { };
     dtkwidget = callPackage ./dtkwidget { };
diff --git a/pkgs/desktops/deepin/dpa-ext-gnomekeyring/default.nix b/pkgs/desktops/deepin/dpa-ext-gnomekeyring/default.nix
new file mode 100644
index 000000000000..4baa2262cd6e
--- /dev/null
+++ b/pkgs/desktops/deepin/dpa-ext-gnomekeyring/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchFromGitHub, pkgconfig, qmake, qttools, gnome3,
+  dde-polkit-agent, deepin }:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "dpa-ext-gnomekeyring";
+  version = "0.1.0";
+
+  src = fetchFromGitHub {
+    owner = "linuxdeepin";
+    repo = pname;
+    rev = version;
+    sha256 = "168j42nwyw7vcgwc0fha2pjpwwlgir70fq1hns4ia1dkdqa1nhzw";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    qmake
+    qttools
+    deepin.setupHook
+  ];
+
+  buildInputs = [
+    dde-polkit-agent
+    gnome3.libgnome-keyring
+  ];
+
+  postPatch = ''
+    searchHardCodedPaths
+    patchShebangs translate_generation.sh
+    fixPath $out /usr dpa-ext-gnomekeyring.pro gnomekeyringextention.cpp
+  '';
+
+  passthru.updateScript = deepin.updateScript { inherit name; };
+
+  meta = with stdenv.lib; {
+    description = "GNOME keyring extension for dde-polkit-agent";
+    homepage = https://github.com/linuxdeepin/dpa-ext-gnomekeyring;
+    license = licenses.gpl3;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/desktops/deepin/dtkcore/default.nix b/pkgs/desktops/deepin/dtkcore/default.nix
index 9904c58128f5..4081a40a96e2 100644
--- a/pkgs/desktops/deepin/dtkcore/default.nix
+++ b/pkgs/desktops/deepin/dtkcore/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "dtkcore";
-  version = "2.0.9.8";
+  version = "2.0.10";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "06jj5gpy2qbmc21nf0fnbvgw7nbjjgvzx7m2vg9byw5il8l4g22h";
+    sha256 = "0dwpq6c38gaa95mgjnwj3vjz57n0cz6jfk950xi6s9ww2f4g6kq7";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/deepin/dtkwidget/default.nix b/pkgs/desktops/deepin/dtkwidget/default.nix
index b61f31e40ee9..b55a5fbc9fe9 100644
--- a/pkgs/desktops/deepin/dtkwidget/default.nix
+++ b/pkgs/desktops/deepin/dtkwidget/default.nix
@@ -5,13 +5,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "dtkwidget";
-  version = "2.0.9.10";
+  version = "2.0.10";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0757dzy82bfv97b1gzkwa9zx3jzfbap20v3r1h7lkfcfw95410iw";
+    sha256 = "11a7yirfkcj3rq7va9av4m1pr22mq1yx1j9k18xrqv36n0rlbrr6";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/deepin/go-dbus-factory/default.nix b/pkgs/desktops/deepin/go-dbus-factory/default.nix
index 01d504eda896..ad2926fa403f 100644
--- a/pkgs/desktops/deepin/go-dbus-factory/default.nix
+++ b/pkgs/desktops/deepin/go-dbus-factory/default.nix
@@ -3,16 +3,16 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "go-dbus-factory";
-  version = "0.0.7.1";
+  version = "0.4.0";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0gj2xxv45gh7wr5ry3mcsi46kdsyq9nbd7znssn34kapiv40ixcx";
+    sha256 = "1i1ymi2qpcbf4d6rnfzrbq5n2vwnn8dvbq9xlw7jls3jpr3d5r00";
   };
 
-  makeFlags = [ "PREFIX=$(out)" ];
+  makeFlags = [ "PREFIX=${placeholder ''out''}" ];
 
   postPatch = ''
     sed -i -e 's:/share/gocode:/share/go:' Makefile
diff --git a/pkgs/desktops/deepin/go-dbus-generator/default.nix b/pkgs/desktops/deepin/go-dbus-generator/default.nix
index 1e3da129a612..92cf3960c736 100644
--- a/pkgs/desktops/deepin/go-dbus-generator/default.nix
+++ b/pkgs/desktops/deepin/go-dbus-generator/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
   ];
 
   makeFlags = [
-    "PREFIX=$(out)"
+    "PREFIX=${placeholder ''out''}"
     "GOCACHE=$(TMPDIR)/go-cache"
   ];
 
diff --git a/pkgs/desktops/deepin/go-gir-generator/default.nix b/pkgs/desktops/deepin/go-gir-generator/default.nix
index bd979b31784f..03c906585e3d 100644
--- a/pkgs/desktops/deepin/go-gir-generator/default.nix
+++ b/pkgs/desktops/deepin/go-gir-generator/default.nix
@@ -4,23 +4,15 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "go-gir-generator";
-  version = "1.1.0";
+  version = "2.0.0";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0grp4ffy3vmlknzmymnxq1spwshff2ylqsw82pj4y2v2fcvnqfvb";
+    sha256 = "0d93qzp3dlia5d1yxw0rwca76qk3jyamj9xzmk13vzig8zw0jx16";
   };
 
-  patches = [
-    # fix: dde-api build error with gobject-introspection 1.58+
-    (fetchurl {
-      url = https://github.com/linuxdeepin/go-gir-generator/commit/a7ab229201e28d1be727f5021b3588fa4a1acf5f.patch;
-      sha256 = "13ywalwkjg8wwvd0pvmc2rv1h38airyvimdn9jfb5wis9xm48401";
-    })
-  ];
-
   nativeBuildInputs = [
     pkgconfig
     go
@@ -36,7 +28,7 @@ stdenv.mkDerivation rec {
   '';
 
   makeFlags = [
-    "PREFIX=$(out)"
+    "PREFIX=${placeholder ''out''}"
     "GOCACHE=$(TMPDIR)/go-cache"
   ];
 
diff --git a/pkgs/desktops/deepin/go-lib/default.nix b/pkgs/desktops/deepin/go-lib/default.nix
index 684f1dd7f32d..41315c440901 100644
--- a/pkgs/desktops/deepin/go-lib/default.nix
+++ b/pkgs/desktops/deepin/go-lib/default.nix
@@ -4,13 +4,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "go-lib";
-  version = "1.3.0";
+  version = "1.10.0";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "0g84v1adnnyqc1mv45n3wlvnivkm1fi8ywszzgwx8irl3iddfvxv";
+    sha256 = "090l33y79gdj2xy1bhk2ksl6hvmsfhmx0bhygm4y4d0iqckf2x2m";
   };
 
   buildInputs = [
@@ -21,10 +21,12 @@ stdenv.mkDerivation rec {
     mobile-broadband-provider-info
   ];
 
-  makeFlags = [
-    "PREFIX=$(out)"
-    "GOSITE_DIR=$(out)/share/go"
-  ];
+  installPhase = ''
+    mkdir -p $out/share/go/src/pkg.deepin.io/lib
+    cp -a * $out/share/go/src/pkg.deepin.io/lib
+
+    rm -r $out/share/go/src/pkg.deepin.io/lib/debian
+  '';
 
   passthru.updateScript = deepin.updateScript { inherit name; };
 
diff --git a/pkgs/desktops/deepin/qt5dxcb-plugin/default.nix b/pkgs/desktops/deepin/qt5dxcb-plugin/default.nix
index c4ce0ca563bd..7d2c89165087 100644
--- a/pkgs/desktops/deepin/qt5dxcb-plugin/default.nix
+++ b/pkgs/desktops/deepin/qt5dxcb-plugin/default.nix
@@ -4,13 +4,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "qt5dxcb-plugin";
-  version = "1.1.13";
+  version = "1.1.25";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "12lvh3agw3qdviqf32brmzba5kscnj5al5jhc08lq69a9kmip05x";
+    sha256 = "1nadmj1hdpw4n3kpk3dlx22bmxdli66abhjl73hwrbvszmmcm9vp";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/deepin/qt5integration/default.nix b/pkgs/desktops/deepin/qt5integration/default.nix
index 809156377225..634bac5cf97d 100644
--- a/pkgs/desktops/deepin/qt5integration/default.nix
+++ b/pkgs/desktops/deepin/qt5integration/default.nix
@@ -5,13 +5,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "qt5integration";
-  version = "0.3.6";
+  version = "0.3.8";
 
   src = fetchFromGitHub {
     owner = "linuxdeepin";
     repo = pname;
     rev = version;
-    sha256 = "1v9whlqn07c5c8xnaiicdshj9n88a667gfbn8y8bk5bfylilfzcy";
+    sha256 = "12d6iv2x0q2n73rscma30q31nh7h26gmhlf665gkgl2j825hlx5n";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/deepin/setup-hook.sh b/pkgs/desktops/deepin/setup-hook.sh
new file mode 100755
index 000000000000..15fe5be1538d
--- /dev/null
+++ b/pkgs/desktops/deepin/setup-hook.sh
@@ -0,0 +1,53 @@
+# Helper functions for deepin packaging
+
+searchHardCodedPaths() {
+    # looks for ocurrences of hard coded paths in given (current)
+    # directory and command invocations for the purpose of debugging a
+    # derivation
+
+    local dir=$1
+
+    echo ----------- looking for command invocations
+    grep --color=always -r -E '\<(ExecStart|Exec|startDetached|execute|exec\.(Command|LookPath))\>' $dir || true
+
+    echo ----------- looking for hard coded paths
+    grep --color=always -r -E '/(usr|bin|sbin|etc|var|opt)\>' $dir || true
+
+    echo ----------- done
+}
+
+fixPath() {
+    # Usage:
+    #
+    #   fixPath <parent dir> <path> <files>
+    #
+    # replaces occurences of <path> by <parent_dir><path> in <files>
+    # removing /usr from the start of <path> if present
+
+    local parentdir=$1
+    local path=$2
+    local newpath=$parentdir$(echo $path | sed "s,^/usr,,")
+    local files=("${@:3}")
+    echo ======= grep --color=always "${path}" "${files[@]}"
+    grep --color=always "${path}" "${files[@]}"
+    echo +++++++ sed -i -e "s,$path,$newpath,g" "${files[@]}"
+    sed -i -e "s,$path,$newpath,g" "${files[@]}"
+}
+
+searchForUnresolvedDLL() {
+    # Usage:
+    #
+    #   searchForUnresolvedDLL <dir>
+    #
+    # looks in <dir> for executables with unresolved dynamic library paths
+
+    local dir="$1"
+    echo ======= Looking for executables with unresolved dynamic library dependencies
+    echo $dir
+    for f in $(find -L "$dir" -type f -executable); do
+      if (ldd $f | grep -q "not found"); then
+        echo $f
+        ldd $f | grep --color=always "not found"
+      fi
+    done
+}
diff --git a/pkgs/desktops/deepin/update.nix b/pkgs/desktops/deepin/update.nix
index 22a6acb8ce31..089d9289827e 100644
--- a/pkgs/desktops/deepin/update.nix
+++ b/pkgs/desktops/deepin/update.nix
@@ -1,5 +1,5 @@
 { stdenv, lib, writeScript, coreutils, curl, gnugrep, gnused, jq, common-updater-scripts, nix }:
-{ name, ignored-versions ? "^2014\\.|^v[0-9]+" }:
+{ name, ignored-versions ? "^2014(\\.|rc)|^v[0-9]+" }:
 
 let
   nameAndVersion = builtins.parseDrvName name;
diff --git a/pkgs/desktops/gnome-3/core/mutter/3.28.nix b/pkgs/desktops/gnome-3/core/mutter/3.28.nix
index 2988dd1b47e2..30d082e07e29 100644
--- a/pkgs/desktops/gnome-3/core/mutter/3.28.nix
+++ b/pkgs/desktops/gnome-3/core/mutter/3.28.nix
@@ -1,18 +1,28 @@
-{ fetchurl, stdenv, fetchpatch, pkgconfig, gnome3, intltool, gobject-introspection, upower, cairo
+{ fetchFromGitLab, stdenv, substituteAll, pkgconfig, gnome3, intltool, gobject-introspection, upower, cairo
 , glib, gtk3, pango, cogl, clutter, libstartup_notification, zenity, libcanberra-gtk3
-, gsettings-desktop-schemas, gnome-desktop
+, gsettings-desktop-schemas, gnome-desktop, wrapGAppsHook
 , libtool, makeWrapper, xkeyboard_config, libxkbfile, libxkbcommon, libXtst, libinput
-, geocode-glib, pipewire, libgudev, libwacom, xwayland, autoreconfHook }:
+, geocode-glib, libgudev, libwacom, xwayland, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  name = "mutter-${version}";
+  pname = "mutter";
   version = "3.28.3";
 
-  src = fetchurl {
-    url = "mirror://gnome/sources/mutter/3.28/${name}.tar.xz";
-    sha256 = "0vq3rmq20d6b1mi6sf67wkzqys6hw5j7n7fd4hndcp19d5i26149";
+  src = fetchFromGitLab {
+    domain = "gitlab.gnome.org";
+    owner = "GNOME";
+    repo = pname;
+    rev = "4af8d9d4752a94612a98d619e65828f0070a7b0e"; # HEAD of https://gitlab.gnome.org/GNOME/mutter/tree/gnome-3-28
+    sha256 = "1rmc1bf80yq776xhygi1jzgia1y44j2mr2n94vlxgzqc0whamx2v";
   };
 
+  patches = [
+    (substituteAll {
+      src = ./fix-paths-328.patch;
+      inherit zenity;
+    })
+  ];
+
   configureFlags = [
     "--with-x"
     "--disable-static"
@@ -31,21 +41,16 @@ stdenv.mkDerivation rec {
     libXtst
   ];
 
-  nativeBuildInputs = [ autoreconfHook pkgconfig intltool libtool makeWrapper ];
+  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 pipewire
+    libxkbcommon
   ];
 
-  preFixup = ''
-    wrapProgram "$out/bin/mutter" \
-      --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
-  '';
-
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/desktops/gnome-3/core/mutter/fix-paths-328.patch b/pkgs/desktops/gnome-3/core/mutter/fix-paths-328.patch
new file mode 100644
index 000000000000..6c40624a55da
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/mutter/fix-paths-328.patch
@@ -0,0 +1,13 @@
+diff --git a/src/core/util.c b/src/core/util.c
+index 5b8de18c7..546352a95 100644
+--- a/src/core/util.c
++++ b/src/core/util.c
+@@ -635,7 +635,7 @@ meta_show_dialog (const char *type,
+
+   args = g_ptr_array_new ();
+
+-  append_argument (args, "zenity");
++  append_argument (args, "@zenity@/bin/zenity");
+   append_argument (args, type);
+
+   if (display)
diff --git a/pkgs/desktops/pantheon/apps/elementary-camera/default.nix b/pkgs/desktops/pantheon/apps/elementary-camera/default.nix
index 2e90a96411a3..90f326fb8269 100644
--- a/pkgs/desktops/pantheon/apps/elementary-camera/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-camera/default.nix
@@ -4,7 +4,7 @@
 
 stdenv.mkDerivation rec {
   pname = "camera";
-  version = "1.0.3";
+  version = "1.0.4";
 
   name = "elementary-${pname}-${version}";
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "05rjymflhwbkw8yc57rgi9n7lrhf4dpvfvlifdnazyqn9iiaxc46";
+    sha256 = "1p532f961cjdg7szmxw7hw3av9v342hv5rx7in3bbhlc7adxflyc";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/elementary-files/default.nix b/pkgs/desktops/pantheon/apps/elementary-files/default.nix
index 9855a1394e59..d224dbce7891 100644
--- a/pkgs/desktops/pantheon/apps/elementary-files/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-files/default.nix
@@ -5,7 +5,7 @@
 
 stdenv.mkDerivation rec {
   pname = "files";
-  version = "4.1.5";
+  version = "4.1.6";
 
   name = "elementary-${pname}-${version}";
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "0z0pisg7py2k6i31v18z5fgpj8x64m1s5clfq4vbbjrcjwx6dcx5";
+    sha256 = "1c17d5lvpzyqd7mmzyfms80am46s566xr1r7b27rgv9w7vpzpgm0";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix b/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
index 01fe35e4a8ee..19bf4ce098bc 100644
--- a/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-terminal/default.nix
@@ -4,7 +4,7 @@
 
 stdenv.mkDerivation rec {
   pname = "terminal";
-  version = "5.3.3";
+  version = "5.3.4";
 
   name = "elementary-${pname}-${version}";
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "1rhqfq5dn913g551ribycid4k8add2lanxkkqpv6zzdgvah26ni8";
+    sha256 = "08vwgd385j7cbi7c8442sjygzw9qy2phsi5lva4jaxwm8l15hk86";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/pantheon-shell/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/pantheon-shell/default.nix
index e47dc4c4060c..c661e4f21112 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/pantheon-shell/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/pantheon-shell/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "switchboard-plug-pantheon-shell";
-  version = "2.8.0";
+  version = "2.8.1";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "0yy821hl26jfd9hyigqi7nmaf30iww0lhg9qzcwlfzsvvfwnxagi";
+    sha256 = "1vrnzxqzl84k8gbrais4j1jyap10kvil4cr769jpr3q3bkbblwrw";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/sound/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/sound/default.nix
index e4d0db46923b..baf5becd3477 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/sound/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/sound/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   pname = "switchboard-plug-sound";
-  version = "2.1.3";
+  version = "2.2.0";
 
   src = fetchFromGitHub {
     owner = "elementary";
     repo = pname;
     rev = version;
-    sha256 = "0dvxmjziifffa2rm7h43ca5grhlcpih3rgik50mz808mqfxr4l1q";
+    sha256 = "101a39v8fssc7s56cpi60zsggvw66y9gaxwjvawds928cll0yiy9";
   };
 
   passthru = {
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/calendar-exec.patch b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/calendar-exec.patch
deleted file mode 100644
index 2370fbcd3cb2..000000000000
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/calendar-exec.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/src/Widgets/calendar/Calendar.vala b/src/Widgets/calendar/Calendar.vala
-index 76443ca..d86bd44 100644
---- a/src/Widgets/calendar/Calendar.vala
-+++ b/src/Widgets/calendar/Calendar.vala
-@@ -19,7 +19,7 @@
-
- namespace DateTime.Widgets {
-     public class Calendar : Gtk.Box {
--        private const string CALENDAR_EXEC = "/usr/bin/io.elementary.calendar";
-+        private const string CALENDAR_EXEC = "@elementary-calendar@";
-
-         ControlHeader heading;
-         CalendarView cal;
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix
index ee5cd5118186..5fa95c75ccc9 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix
@@ -43,15 +43,16 @@ stdenv.mkDerivation rec {
   ];
 
   patches = [
-    (substituteAll {
-      src = ./calendar-exec.patch;
-      elementary-calendar = "${elementary-calendar}/bin/io.elementary.calendar";
-    })
     # Use "clock-format" GSettings key that's been moved to granite
     (fetchpatch {
       url = "https://src.fedoraproject.org/rpms/wingpanel-indicator-datetime/raw/c8d515b76aa812c141212d5515621a6febd781a3/f/00-move-clock-format-settings-to-granite.patch";
       sha256 = "1sq3aw9ckkm057rnrclnw9lyrxbpl37fyzfnbixi2q3ypr70n880";
     })
+    # See: https://github.com/elementary/wingpanel-indicator-datetime/pull/117
+    (fetchpatch {
+      url = "https://github.com/elementary/wingpanel-indicator-datetime/commit/4859e72a52d8dac5cad87b192fc912fb013b0ecd.patch";
+      sha256 = "0jfhb5sax4sivdfx7il1rc1dvhy0yfv27qhvwbdy0hza9wf8q9k0";
+    })
   ];
 
   PKG_CONFIG_WINGPANEL_2_0_INDICATORSDIR = "lib/wingpanel";
@@ -61,6 +62,11 @@ stdenv.mkDerivation rec {
     patchShebangs meson/post_install.py
   '';
 
+  # launches elementary-calendar on selection
+  preFixup = ''
+     gappsWrapperArgs+=( --prefix PATH : "${elementary-calendar}/bin" )
+  '';
+
   meta = with stdenv.lib; {
     description = "Date & Time Indicator for Wingpanel";
     homepage = https://github.com/elementary/wingpanel-indicator-datetime;
diff --git a/pkgs/desktops/plasma-5/fetch.sh b/pkgs/desktops/plasma-5/fetch.sh
index 814795499a99..5c27d0d2f182 100644
--- a/pkgs/desktops/plasma-5/fetch.sh
+++ b/pkgs/desktops/plasma-5/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( https://download.kde.org/stable/plasma/5.14.5/ -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/plasma/5.14.5/ )
diff --git a/pkgs/development/compilers/dtc/default.nix b/pkgs/development/compilers/dtc/default.nix
index 9cc60003201c..ea305cc5c84c 100644
--- a/pkgs/development/compilers/dtc/default.nix
+++ b/pkgs/development/compilers/dtc/default.nix
@@ -1,25 +1,18 @@
-{ stdenv, fetchgit, fetchpatch, flex, bison, pkgconfig, python2, swig, which }:
+{ stdenv, fetchgit, flex, bison, pkgconfig, python2, swig, which }:
 
 stdenv.mkDerivation rec {
   pname = "dtc";
-  version = "1.4.7";
+  version = "1.5.0";
 
   src = fetchgit {
     url = "https://git.kernel.org/pub/scm/utils/dtc/dtc.git";
     rev = "refs/tags/v${version}";
-    sha256 = "0l787g1wmd4d6izsp91m5r2qms2h2jg2hhzllfi9qkbnplyz21wn";
+    sha256 = "075gj8bbahfdb8dlif3d2dpzjrkyf3bwbcmx96zpwhlgs0da8jxh";
   };
 
   nativeBuildInputs = [ flex bison pkgconfig swig which ];
   buildInputs = [ python2 ];
 
-  patches = [
-    # Fix setup.py
-    (fetchpatch {
-      url = "https://github.com/dezgeg/dtc/commit/d94a745148ba5c9198143ccc0f7d877fe498ab73.patch";
-      sha256 = "0hpryx04j1swvmjisrfhvss08zzz4nxz9iv72lp4jdgg6vg0argl";
-    })
-  ];
   postPatch = ''
     patchShebangs pylibfdt/
   '';
diff --git a/pkgs/development/compilers/ghc/8.6.4.nix b/pkgs/development/compilers/ghc/8.6.4.nix
index f970836fd696..6cd7522bae87 100644
--- a/pkgs/development/compilers/ghc/8.6.4.nix
+++ b/pkgs/development/compilers/ghc/8.6.4.nix
@@ -32,6 +32,10 @@
 , # What flavour to build. An empty string indicates no
   # specific flavour and falls back to ghc default values.
   ghcFlavour ? stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) "perf-cross"
+
+, # Whether to disable the large address space allocator
+  # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
+  disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
 }:
 
 assert !enableIntegerSimple -> gmp != null;
@@ -151,7 +155,7 @@ stdenv.mkDerivation (rec {
   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=${libffi.dev}/include" "--with-ffi-libraries=${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"
   ] ++ stdenv.lib.optional (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
@@ -162,8 +166,7 @@ stdenv.mkDerivation (rec {
     "CFLAGS=-fuse-ld=gold"
     "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
     "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
-  ] ++ stdenv.lib.optionals (targetPlatform.isDarwin && targetPlatform.isAarch64) [
-    # fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
+  ] ++ stdenv.lib.optionals (disableLargeAddressSpace) [
     "--disable-large-address-space"
   ];
 
diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix
index 087d5a2c678d..88b273500dc0 100644
--- a/pkgs/development/compilers/ghc/head.nix
+++ b/pkgs/development/compilers/ghc/head.nix
@@ -30,6 +30,10 @@
 , # What flavour to build. An empty string indicates no
   # specific flavour and falls back to ghc default values.
   ghcFlavour ? stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform) "perf-cross"
+
+, # Whether to disable the large address space allocator
+  # necessary fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
+  disableLargeAddressSpace ? stdenv.targetPlatform.isDarwin && stdenv.targetPlatform.isAarch64
 }:
 
 assert !enableIntegerSimple -> gmp != null;
@@ -157,8 +161,7 @@ stdenv.mkDerivation (rec {
     "CFLAGS=-fuse-ld=gold"
     "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
     "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
-  ] ++ stdenv.lib.optionals (targetPlatform.isDarwin && targetPlatform.isAarch64) [
-    # fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
+  ] ++ stdenv.lib.optionals (disableLargeAddressSpace) [
     "--disable-large-address-space"
   ];
 
diff --git a/pkgs/development/compilers/glslang/default.nix b/pkgs/development/compilers/glslang/default.nix
index 62c5a0de0a93..784d66a0f242 100644
--- a/pkgs/development/compilers/glslang/default.nix
+++ b/pkgs/development/compilers/glslang/default.nix
@@ -1,35 +1,32 @@
-{ stdenv, fetchFromGitHub, fetchpatch, cmake, bison, spirv-tools, jq }:
-
+{ stdenv, fetchFromGitHub, fetchpatch, cmake, bison, jq, python, spirv-tools, spirv-headers }:
 stdenv.mkDerivation rec {
-  name = "glslang-git-${version}";
-  version = "2018-09-26";
+  name = "glslang-${version}";
+  version = "7.11.3113";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "glslang";
-    rev = "91ac4290bcf2cb930b4fb0981f09c00c0b6797e1";
-    sha256 = "0q477pm0n495acnss16ddlf82a6i5l2dfmvc7r8yi0bgmgpzi4av";
+    rev = "${version}";
+    sha256 = "1kzv2b4q1fddxd7c0hc754nd6rw6y9vijb9fsi13xzzq9dficgb6";
   };
 
-  buildInputs = [ cmake bison jq ] ++ spirv-tools.buildInputs;
+  nativeBuildInputs = [ cmake python bison jq ];
   enableParallelBuilding = true;
 
   postPatch = ''
     cp --no-preserve=mode -r "${spirv-tools.src}" External/spirv-tools
-    ln -s "${spirv-tools.headers}" External/spirv-tools/external/spirv-headers
+    ln -s "${spirv-headers.src}" External/spirv-tools/external/spirv-headers
   '';
 
   preConfigure = ''
     HEADERS_COMMIT=$(jq -r < known_good.json '.commits|map(select(.name=="spirv-tools/external/spirv-headers"))[0].commit')
     TOOLS_COMMIT=$(jq -r < known_good.json '.commits|map(select(.name=="spirv-tools"))[0].commit')
-    if [ "$HEADERS_COMMIT" != "${spirv-tools.headers.rev}" ] || [ "$TOOLS_COMMIT" != "${spirv-tools.src.rev}" ]; then
+    if [ "$HEADERS_COMMIT" != "${spirv-headers.src.rev}" ] || [ "$TOOLS_COMMIT" != "${spirv-tools.src.rev}" ]; then
       echo "ERROR: spirv-tools commits do not match expected versions: expected tools at $TOOLS_COMMIT, headers at $HEADERS_COMMIT";
       exit 1;
     fi
   '';
 
-  doCheck = false; # fails 3 out of 3 tests (ctest)
-
   meta = with stdenv.lib; {
     inherit (src.meta) homepage;
     description = "Khronos reference front-end for GLSL and ESSL";
diff --git a/pkgs/development/compilers/jetbrains-jdk/default.nix b/pkgs/development/compilers/jetbrains-jdk/default.nix
index 876e474bed97..62934dd9eeb3 100644
--- a/pkgs/development/compilers/jetbrains-jdk/default.nix
+++ b/pkgs/development/compilers/jetbrains-jdk/default.nix
@@ -7,12 +7,12 @@
 
 let drv = stdenv.mkDerivation rec {
   pname = "jetbrainsjdk";
-  version = "152b1248.6";
+  version = "202b1483.37";
   name = pname + "-" + version;
 
   src = if stdenv.hostPlatform.system == "x86_64-linux" then
     fetchurl {
-      url = "https://bintray.com/jetbrains/intellij-jdk/download_file?file_path=jbsdk8u${version}_linux_x64.tar.gz";
+      url = "https://bintray.com/jetbrains/intellij-jdk/download_file?file_path=jbrsdk8u${version}_linux_x64.tar.gz";
       sha256 = "12l81g8zhaymh4rzyfl9nyzmpkgzc7wrphm3j4plxx129yn9i7d7";
     }
   else
diff --git a/pkgs/development/compilers/llvm/8/lldb.nix b/pkgs/development/compilers/llvm/8/lldb.nix
index d40eeb4a2074..ae9198e99d27 100644
--- a/pkgs/development/compilers/llvm/8/lldb.nix
+++ b/pkgs/development/compilers/llvm/8/lldb.nix
@@ -45,6 +45,10 @@ stdenv.mkDerivation {
   postInstall = ''
     mkdir -p $out/share/man/man1
     cp ../docs/lldb.1 $out/share/man/man1/
+
+    install -D ../tools/lldb-vscode/package.json $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/package.json
+    mkdir $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
+    ln -s $out/bin/lldb-vscode $out/share/vscode/extensions/llvm-org.lldb-vscode-0.1.0/bin
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/compilers/pakcs/default.nix b/pkgs/development/compilers/pakcs/default.nix
index ef53280b679c..a118e7ab73ba 100644
--- a/pkgs/development/compilers/pakcs/default.nix
+++ b/pkgs/development/compilers/pakcs/default.nix
@@ -4,13 +4,13 @@
 , curl, git, unzip, gnutar, coreutils, sqlite }:
 
 let
-  name = "pakcs-2.0.2";
+  name = "pakcs-2.1.1";
 
   # Don't switch to development release without a reason, because its
   # source updates without version bump. Prefer current release instead.
   src = fetchurl {
     url = "https://www.informatik.uni-kiel.de/~pakcs/download/${name}-src.tar.gz";
-    sha256 = "1hm80gvpsifbsfi13i0iiv7f2b72ymw98bbrm6a8hjsbnfw55jvg";
+    sha256 = "112v9ynqfbbm4x770mcfrai9v5bh7c3zn7jka80pv6v4y65r778c";
   };
 
   curry-frontend = (haskellPackages.override {
diff --git a/pkgs/development/coq-modules/coqhammer/default.nix b/pkgs/development/coq-modules/coqhammer/default.nix
new file mode 100644
index 000000000000..28c651f9b16a
--- /dev/null
+++ b/pkgs/development/coq-modules/coqhammer/default.nix
@@ -0,0 +1,55 @@
+{ stdenv, fetchFromGitHub, coq }:
+
+let
+  params = {
+    "8.8" = {
+      sha256 = "0ms086wp4jmrzyglb8wymchzyflflk01nsfsk4r6qv8rrx81nx9h";
+    };
+    "8.9" = {
+      sha256 = "0hmqwsry8ldg4g4hhwg4b84dgzibpdrg1wwsajhlyqfx3fb3n3b5";
+    };
+  };
+  param = params."${coq.coq-version}";
+in
+
+stdenv.mkDerivation rec {
+  version = "1.1";
+  name = "coq${coq.coq-version}-coqhammer-${version}";
+
+  src = fetchFromGitHub {
+    owner = "lukaszcz";
+    repo = "coqhammer";
+    rev = "v${version}-coq${coq.coq-version}";
+    inherit (param) sha256;
+  };
+
+  postPatch = ''
+    substituteInPlace Makefile.coq.local --replace \
+      '$(if $(COQBIN),$(COQBIN),`coqc -where | xargs dirname | xargs dirname`/bin/)' \
+      '$(out)/bin/'
+    substituteInPlace Makefile.coq.local --replace 'g++' 'c++' --replace 'gcc' 'cc'
+  '';
+
+  buildInputs = [ coq ] ++ (with coq.ocamlPackages; [
+    ocaml findlib camlp5
+  ]);
+
+  preInstall = ''
+    mkdir -p $out/bin
+  '';
+
+  installFlags = [ "COQLIB=$(out)/lib/coq/${coq.coq-version}/" ];
+
+  meta = {
+    homepage = "http://cl-informatik.uibk.ac.at/cek/coqhammer/";
+    description = "Automation for Dependent Type Theory";
+    license = stdenv.lib.licenses.lgpl21;
+    inherit (coq.meta) platforms;
+    maintainers = [ stdenv.lib.maintainers.vbgl ];
+  };
+
+  passthru = {
+    compatibleCoqVersions = v: builtins.hasAttr v params;
+  };
+
+}
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index 911929db28b9..439a7f4dfea3 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -2820,6 +2820,7 @@ broken-packages:
   - applicative-parsec
   - applicative-quoters
   - applicative-splice
+  - approveapi
   - ApproxFun-hs
   - arb-fft
   - arbb-vm
@@ -3007,6 +3008,7 @@ broken-packages:
   - beam
   - beam-core
   - beam-migrate
+  - beam-mysql
   - beam-newtype-field
   - beam-postgres
   - beam-sqlite
@@ -3096,6 +3098,7 @@ broken-packages:
   - BiobaseBlast
   - BiobaseDotP
   - BiobaseEnsembl
+  - BiobaseFasta
   - BiobaseFR3D
   - BiobaseHTTP
   - BiobaseHTTPTools
@@ -3104,6 +3107,7 @@ broken-packages:
   - BiobaseNewick
   - BiobaseTrainingData
   - BiobaseTurner
+  - BiobaseTypes
   - BiobaseVienna
   - BiobaseXNA
   - biocore
@@ -3427,6 +3431,7 @@ broken-packages:
   - Checked
   - checked
   - checkmate
+  - chessIO
   - chevalier-common
   - chiasma
   - chitauri
@@ -5532,6 +5537,7 @@ broken-packages:
   - hist-pl-types
   - historian
   - hit-graph
+  - hit-on
   - HJavaScript
   - hjcase
   - hjs
@@ -6323,6 +6329,7 @@ broken-packages:
   - Ketchup
   - keter
   - kevin
+  - keycloak-hs
   - keyed
   - keyring
   - keysafe
@@ -6774,6 +6781,7 @@ broken-packages:
   - matplotlib
   - matrix-as-xyz
   - matsuri
+  - matterhorn
   - maude
   - maxent
   - maxent-learner-hw
@@ -6985,6 +6993,8 @@ broken-packages:
   - more-containers
   - morfette
   - morfeusz
+  - morley
+  - morley-prelude
   - morph
   - morphisms-functors
   - morphisms-functors-inventory
@@ -7179,6 +7189,7 @@ broken-packages:
   - neural
   - neural-network-blashs
   - neural-network-hmatrix
+  - newhope
   - newports
   - newt
   - newtype-deriving
@@ -7863,6 +7874,7 @@ broken-packages:
   - quickcheck-state-machine
   - quickcheck-state-machine-distributed
   - quickcheck-webdriver
+  - quickcheck-with-counterexamples
   - QuickCheckVariant
   - QuickPlot
   - quickpull
@@ -7996,6 +8008,7 @@ broken-packages:
   - reflection-extras
   - reflex
   - reflex-animation
+  - reflex-basic-host
   - reflex-dom-core
   - reflex-gloss
   - reflex-gloss-scene
@@ -8265,6 +8278,7 @@ broken-packages:
   - scholdoc-citeproc
   - scholdoc-texmath
   - scholdoc-types
+  - SciBaseTypes
   - science-constants-dimensional
   - scion
   - scion-browser
@@ -8531,6 +8545,7 @@ broken-packages:
   - skeletons
   - skell
   - skemmtun
+  - skews
   - skulk
   - skylark-client
   - skype4hs
@@ -8908,6 +8923,7 @@ broken-packages:
   - symantic
   - symantic-cli
   - symantic-grammar
+  - symantic-http-test
   - symantic-lib
   - symengine
   - symengine-hs
@@ -8950,6 +8966,7 @@ broken-packages:
   - Tablify
   - tabloid
   - tabs
+  - taffybar
   - tag-bits
   - tag-stream
   - tagged-exception-core
@@ -8974,6 +8991,7 @@ broken-packages:
   - tamper
   - Tape
   - target
+  - tart
   - task
   - task-distribution
   - taskell
@@ -8998,6 +9016,7 @@ broken-packages:
   - tcp-streams-openssl
   - tdd-util
   - tdigest-Chart
+  - tds
   - TeaHS
   - teams
   - teeth
@@ -9030,6 +9049,7 @@ broken-packages:
   - terminal-punch
   - terminal-text
   - termination-combinators
+  - termonad
   - termplot
   - terntup
   - terrahs
@@ -9201,6 +9221,7 @@ broken-packages:
   - traced
   - tracetree
   - tracker
+  - trackit
   - traction
   - tracy
   - traildb
@@ -9224,6 +9245,7 @@ broken-packages:
   - trasa
   - trasa-client
   - trasa-server
+  - trasa-th
   - travis
   - travis-meta-yaml
   - trawl
@@ -9754,6 +9776,7 @@ broken-packages:
   - xml-tydom-core
   - xml2json
   - xml2x
+  - xmlbf-xmlhtml
   - XmlHtmlWriter
   - XMLParser
   - xmltv
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index fac0a419bfd1..af5bd2220d47 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -94,6 +94,8 @@ self: super: builtins.intersectAttrs super {
   # Won't find it's header files without help.
   sfml-audio = appendConfigureFlag super.sfml-audio "--extra-include-dirs=${pkgs.openal}/include/AL";
 
+  cachix = enableSeparateBinOutput super.cachix;
+
   hzk = overrideCabal super.hzk (drv: {
     preConfigure = "sed -i -e /include-dirs/d hzk.cabal";
     configureFlags =  "--extra-include-dirs=${pkgs.zookeeper_mt}/include/zookeeper";
diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix
index a6fd7bb0ba96..a8d530516a5e 100644
--- a/pkgs/development/haskell-modules/generic-builder.nix
+++ b/pkgs/development/haskell-modules/generic-builder.nix
@@ -73,6 +73,7 @@ in
 , coreSetup ? false # Use only core packages to build Setup.hs.
 , useCpphs ? false
 , hardeningDisable ? stdenv.lib.optional (ghc.isHaLVM or false) "all"
+, enableSeparateBinOutput ? false
 , enableSeparateDataOutput ? false
 , enableSeparateDocOutput ? doHaddock
 , # Don't fail at configure time if there are multiple versions of the
@@ -80,6 +81,10 @@ in
   # built. Will delay failures, if any, to compile time.
   allowInconsistentDependencies ? false
 , maxBuildCores ? 4 # GHC usually suffers beyond -j4. https://ghc.haskell.org/trac/ghc/ticket/9221
+, # Build a pre-linked .o file for this Haskell library.  This can make it
+  # slightly faster to load this library into GHCi, but takes extra disk space
+  # and compile time.
+  enableLibraryForGhci ? true
 } @ args:
 
 assert editedCabalFile != null -> revision != null;
@@ -111,6 +116,8 @@ let
   # the target dir for haddock documentation
   docdir = docoutput: docoutput + "/share/doc/" + pname + "-" + version;
 
+  binDir = if enableSeparateBinOutput then "$bin/bin" else "$out/bin";
+
   newCabalFileUrl = "http://hackage.haskell.org/package/${pname}-${version}/revision/${revision}.cabal";
   newCabalFile = fetchurl {
     url = newCabalFileUrl;
@@ -143,7 +150,10 @@ let
   buildFlagsString = optionalString (buildFlags != []) (" " + concatStringsSep " " buildFlags);
 
   defaultConfigureFlags = [
-    "--verbose" "--prefix=$out" "--libdir=\\$prefix/lib/\\$compiler" "--libsubdir=\\$abi/\\$libname"
+    "--verbose"
+    "--prefix=$out"
+    "--libdir=\\$prefix/lib/\\$compiler"
+    "--libsubdir=\\$abi/\\$libname"
     (optionalString enableSeparateDataOutput "--datadir=$data/share/${ghc.name}")
     (optionalString enableSeparateDocOutput "--docdir=${docdir "$doc"}")
     "--with-gcc=$CC" # Clang won't work without that extra information.
@@ -163,7 +173,7 @@ let
     (optionalString (isGhcjs || versionOlder "7" ghc.version) (enableFeature doCheck "tests"))
     (enableFeature doBenchmark "benchmarks")
     "--enable-library-vanilla"  # TODO: Should this be configurable?
-    "--enable-library-for-ghci" # TODO: Should this be configurable?
+    (enableFeature enableLibraryForGhci "library-for-ghci")
   ] ++ optionals (enableDeadCodeElimination && (stdenv.lib.versionOlder "8.0.1" ghc.version)) [
      "--ghc-option=-split-sections"
   ] ++ optionals dontStrip [
@@ -173,7 +183,8 @@ let
     "--ghcjs"
   ] ++ optionals isCross ([
     "--configure-option=--host=${stdenv.hostPlatform.config}"
-  ] ++ crossCabalFlags);
+  ] ++ crossCabalFlags
+  ) ++ optionals enableSeparateBinOutput ["--bindir=${binDir}"];
 
   setupCompileFlags = [
     (optionalString (!coreSetup) "-${nativePackageDbFlag}=$setupPackageConfDir")
@@ -233,7 +244,10 @@ assert allPkgconfigDepends != [] -> pkgconfig != null;
 stdenv.mkDerivation ({
   name = "${pname}-${version}";
 
-  outputs = [ "out" ] ++ (optional enableSeparateDataOutput "data") ++ (optional enableSeparateDocOutput "doc");
+  outputs = [ "out" ]
+         ++ (optional enableSeparateDataOutput "data")
+         ++ (optional enableSeparateDocOutput "doc")
+         ++ (optional enableSeparateBinOutput "bin");
   setOutputFlags = false;
 
   pos = builtins.unsafeGetAttrPos "pname" args;
@@ -414,7 +428,7 @@ stdenv.mkDerivation ({
       find $packageConfDir -maxdepth 0 -empty -delete;
     ''}
     ${optionalString isGhcjs ''
-      for exeDir in "$out/bin/"*.jsexe; do
+      for exeDir in "${binDir}/"*.jsexe; do
         exe="''${exeDir%.jsexe}"
         printWords '#!${nodejs}/bin/node' > "$exe"
         echo >> "$exe"
@@ -424,7 +438,7 @@ stdenv.mkDerivation ({
     ''}
     ${optionalString doCoverage "mkdir -p $out/share && cp -r dist/hpc $out/share"}
     ${optionalString (enableSharedExecutables && isExecutable && !isGhcjs && stdenv.isDarwin && stdenv.lib.versionOlder ghc.version "7.10") ''
-      for exe in "$out/bin/"* ; do
+      for exe in "${binDir}/"* ; do
         install_name_tool -add_rpath "$out/lib/ghc-${ghc.version}/${pname}-${version}" "$exe"
       done
     ''}
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 442db85c824a..107625226945 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -1570,26 +1570,29 @@ self: {
      }) {};
 
   "BiobaseFasta" = callPackage
-    ({ mkDerivation, base, BiobaseTypes, bytestring, deepseq, filepath
-     , lens, QuickCheck, resourcet, streaming, streaming-bytestring
-     , tasty, tasty-golden, tasty-hunit, tasty-quickcheck, tasty-silver
-     , tasty-th, text
+    ({ mkDerivation, base, BiobaseTypes, bytestring, filepath, lens
+     , QuickCheck, resourcet, streaming, streaming-bytestring
+     , string-conversions, tasty, tasty-golden, tasty-hunit
+     , tasty-quickcheck, tasty-silver, tasty-th, text
      }:
      mkDerivation {
        pname = "BiobaseFasta";
-       version = "0.2.0.0";
-       sha256 = "1ilsq8wjvmz1pw00rfk78f1si7s4ld3gbbp6w8nfq051hgg5ydsh";
+       version = "0.3.0.0";
+       sha256 = "0ka04dfgqv031k17dwnxkrq77r7xzmmbj8byrdrqr7r0z0ad0ns1";
        libraryHaskellDepends = [
-         base BiobaseTypes bytestring deepseq lens resourcet streaming
-         streaming-bytestring
+         base BiobaseTypes bytestring lens resourcet streaming
+         streaming-bytestring string-conversions
        ];
        testHaskellDepends = [
-         base bytestring filepath QuickCheck resourcet streaming
-         streaming-bytestring tasty tasty-golden tasty-hunit
-         tasty-quickcheck tasty-silver tasty-th text
+         base BiobaseTypes bytestring filepath lens QuickCheck resourcet
+         streaming streaming-bytestring string-conversions tasty
+         tasty-golden tasty-hunit tasty-quickcheck tasty-silver tasty-th
+         text
        ];
        description = "streaming FASTA parser";
-       license = stdenv.lib.licenses.gpl3;
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "BiobaseHTTP" = callPackage
@@ -1764,8 +1767,8 @@ self: {
      }:
      mkDerivation {
        pname = "BiobaseTypes";
-       version = "0.1.4.0";
-       sha256 = "1ih3l72i9ahgxb261y43gncdrha3jpzkpavvhbsyqv6vi7pgcj4r";
+       version = "0.2.0.0";
+       sha256 = "16irdkcrih8b1mnjmnzq1bz2hbn02ayzhsmx97fqvy9py21mvrgv";
        libraryHaskellDepends = [
          aeson attoparsec base bimaps binary bytestring cereal cereal-text
          cereal-vector containers data-default deepseq ForestStructures
@@ -1778,6 +1781,8 @@ self: {
        ];
        description = "Collection of types for bioinformatics";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "BiobaseVienna" = callPackage
@@ -2784,8 +2789,8 @@ self: {
      }:
      mkDerivation {
        pname = "Chart";
-       version = "1.9";
-       sha256 = "1f5azj17y8xsb3gjhf7gg1gnnlq12rxkmfjmgcly314d7vghs05z";
+       version = "1.9.1";
+       sha256 = "1pn735k9ifxlb9mdh8xy7wi22cxni8xyr28n8zx9w0j6vprcg89l";
        libraryHaskellDepends = [
          array base colour data-default-class lens mtl old-locale
          operational time vector
@@ -2802,8 +2807,8 @@ self: {
      }:
      mkDerivation {
        pname = "Chart-cairo";
-       version = "1.9";
-       sha256 = "0iany6lfyfb1cw0pxfs5aw5k0a6x41m6ql9ad9w59biwdckbsyqr";
+       version = "1.9.1";
+       sha256 = "0hknj4rsjf2m8p5pyq5zff8ai7v80yvmxb5c6n0bkgxs4317nbl9";
        libraryHaskellDepends = [
          array base cairo Chart colour data-default-class lens mtl
          old-locale operational time
@@ -2822,8 +2827,8 @@ self: {
      }:
      mkDerivation {
        pname = "Chart-diagrams";
-       version = "1.9";
-       sha256 = "1n1fa6198yp5iv7xy0fdxfj794kkll0w7kn2zdq7g52rfx6nkall";
+       version = "1.9.1";
+       sha256 = "188zy20ahz51c8jwp41ij1pp8vanpmfv77bjzafwcib6gjbjlp77";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          base blaze-markup bytestring Chart colour containers
@@ -2843,8 +2848,8 @@ self: {
      }:
      mkDerivation {
        pname = "Chart-gtk";
-       version = "1.9";
-       sha256 = "1p8nf50q031xa1mhv4w3zbyv61i2jyhvd8bq7dqkcqhgknxxpkv0";
+       version = "1.9.1";
+       sha256 = "1lhl7ayyydg5z5zwpr3k4313565p4za3z2f3ngd4hpicp7zbmhx0";
        libraryHaskellDepends = [
          array base cairo Chart Chart-cairo colour data-default-class gtk
          mtl old-locale time
@@ -3833,27 +3838,35 @@ self: {
   "DPutils" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, containers
      , criterion, kan-extensions, lens, mtl, parallel, pipes
-     , pipes-bytestring, pipes-parse, QuickCheck, streaming
-     , streaming-bytestring, stringsearch, tasty, tasty-quickcheck
-     , tasty-th, timeit, transformers, vector
+     , pipes-bytestring, pipes-parse, primitive, QuickCheck, smallcheck
+     , streaming, streaming-bytestring, stringsearch, tasty
+     , tasty-quickcheck, tasty-smallcheck, tasty-th, timeit
+     , transformers, vector
      }:
      mkDerivation {
        pname = "DPutils";
-       version = "0.0.2.0";
-       sha256 = "0axavxxg0n1dsdby8306yrinjhbfrvy5a27kkwiw75xvjprk4w5w";
+       version = "0.1.0.0";
+       sha256 = "153g1rr13jjwqkvfj85nwjhaa0zq8khn24n3dib80nyk0scd4w62";
        libraryHaskellDepends = [
-         attoparsec base bytestring containers kan-extensions parallel pipes
-         QuickCheck streaming streaming-bytestring stringsearch transformers
+         attoparsec base bytestring containers criterion kan-extensions lens
+         mtl parallel pipes pipes-bytestring pipes-parse primitive
+         QuickCheck smallcheck streaming streaming-bytestring stringsearch
+         tasty tasty-quickcheck tasty-smallcheck tasty-th transformers
          vector
        ];
        testHaskellDepends = [
-         base bytestring containers lens mtl pipes pipes-bytestring
-         pipes-parse QuickCheck streaming streaming-bytestring tasty
-         tasty-quickcheck tasty-th vector
+         attoparsec base bytestring containers criterion kan-extensions lens
+         mtl parallel pipes pipes-bytestring pipes-parse primitive
+         QuickCheck smallcheck streaming streaming-bytestring stringsearch
+         tasty tasty-quickcheck tasty-smallcheck tasty-th transformers
+         vector
        ];
        benchmarkHaskellDepends = [
-         base bytestring criterion streaming streaming-bytestring timeit
-         vector
+         attoparsec base bytestring containers criterion kan-extensions lens
+         mtl parallel pipes pipes-bytestring pipes-parse primitive
+         QuickCheck smallcheck streaming streaming-bytestring stringsearch
+         tasty tasty-quickcheck tasty-smallcheck tasty-th timeit
+         transformers vector
        ];
        description = "utilities for DP";
        license = stdenv.lib.licenses.bsd3;
@@ -8553,6 +8566,8 @@ self: {
        pname = "HPDF";
        version = "1.4.10";
        sha256 = "1m072rc03yx5y4djmvj87kn6n23d9378v3ipl8lj3vzfjgfzsayy";
+       revision = "1";
+       editedCabalFile = "1djn0a9rk3qrbz31bxj115r65p28fi3wzcrkrnjvzibl3450pq30";
        libraryHaskellDepends = [
          array base base64-bytestring binary bytestring containers errors
          mtl random vector zlib
@@ -12812,8 +12827,10 @@ self: {
      }:
      mkDerivation {
        pname = "MiniAgda";
-       version = "0.2018.11.6";
-       sha256 = "0zv8n80qmdykj40nqbrxb29grmy4kzjfhjxbyy3d7ylb64rq514n";
+       version = "0.2019.3.29";
+       sha256 = "1lix2p2ly6pjag1gkqfjfdm1jnq5rd9hqgr940jbkgyna75hk9a9";
+       revision = "1";
+       editedCabalFile = "1hiz5g69n1fwknwq7lhq01kzn4cm53zd6l62r747pdc30xm04rqr";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -13537,8 +13554,8 @@ self: {
     ({ mkDerivation, base, containers, ghc-prim, vector }:
      mkDerivation {
        pname = "Naperian";
-       version = "0.1.0.1";
-       sha256 = "0h8kijw9y0p7bpy6qr1334xzbkcici3jrnk16w0cm4mxykrqjhwc";
+       version = "0.1.1.0";
+       sha256 = "1i9hc1pdp9mg9x1xd4wrv06cbhjxw0yhyk2xhsm8jz6rgksa22j7";
        libraryHaskellDepends = [ base containers ghc-prim vector ];
        description = "Naperian Functors for APL-like programming";
        license = "unknown";
@@ -15331,16 +15348,19 @@ self: {
      }:
      mkDerivation {
        pname = "PrimitiveArray";
-       version = "0.9.0.0";
-       sha256 = "0zhv17cjdppli5q66j1yabbgx3ad172w4jj4zhn0va2wsc9fs5vi";
+       version = "0.9.1.0";
+       sha256 = "1kz3jvq4bc7hap7633a87nbgp9gi081qnnhmld26j8rj7wdzkrbp";
        libraryHaskellDepends = [
-         aeson base binary bits cereal cereal-vector deepseq DPutils
-         hashable lens log-domain mtl OrderedBits primitive QuickCheck
-         smallcheck text vector vector-binary-instances vector-th-unbox
+         aeson base binary bits cereal cereal-vector containers deepseq
+         DPutils hashable lens log-domain mtl OrderedBits primitive
+         QuickCheck smallcheck tasty tasty-quickcheck tasty-smallcheck
+         tasty-th text vector vector-binary-instances vector-th-unbox
        ];
        testHaskellDepends = [
-         base containers QuickCheck smallcheck tasty tasty-quickcheck
-         tasty-smallcheck tasty-th
+         aeson base binary bits cereal cereal-vector containers deepseq
+         DPutils hashable lens log-domain mtl OrderedBits primitive
+         QuickCheck smallcheck tasty tasty-quickcheck tasty-smallcheck
+         tasty-th text vector vector-binary-instances vector-th-unbox
        ];
        description = "Efficient multidimensional arrays";
        license = stdenv.lib.licenses.bsd3;
@@ -15714,14 +15734,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "QuickCheck_2_13" = callPackage
+  "QuickCheck_2_13_1" = callPackage
     ({ mkDerivation, base, containers, deepseq, process, random
      , splitmix, template-haskell, transformers
      }:
      mkDerivation {
        pname = "QuickCheck";
-       version = "2.13";
-       sha256 = "1k2iy1fzjp88ssnx4h05364zswky1nkhk051zr6nkyba8j18jx11";
+       version = "2.13.1";
+       sha256 = "1inri6n4rr7v7wrmajikcqmbjh77lvf9m4fw2ib6szdgwyb3lim6";
        libraryHaskellDepends = [
          base containers deepseq random splitmix template-haskell
          transformers
@@ -17087,23 +17107,30 @@ self: {
 
   "SciBaseTypes" = callPackage
     ({ mkDerivation, aeson, base, binary, cereal, deepseq, hashable
-     , lens, log-domain, mtl, QuickCheck, tasty, tasty-quickcheck
-     , tasty-th, vector, vector-th-unbox
+     , lens, log-domain, mtl, QuickCheck, semirings, tasty
+     , tasty-quickcheck, tasty-th, vector, vector-th-unbox
      }:
      mkDerivation {
        pname = "SciBaseTypes";
-       version = "0.0.0.1";
-       sha256 = "14xzlyca61jhfak1vjll5k2ac2hq55hfvbmqbpk8ls56amlyal5j";
+       version = "0.1.0.0";
+       sha256 = "1c0cgzxhamgswn1zhrarbx5vrmzl160nk8dadzi6mphwd2rv6lfr";
        libraryHaskellDepends = [
          aeson base binary cereal deepseq hashable lens log-domain mtl
-         vector vector-th-unbox
+         semirings vector vector-th-unbox
        ];
        testHaskellDepends = [
-         base QuickCheck tasty tasty-quickcheck tasty-th
+         aeson base binary cereal deepseq hashable lens log-domain mtl
+         QuickCheck semirings tasty tasty-quickcheck tasty-th vector
+         vector-th-unbox
+       ];
+       benchmarkHaskellDepends = [
+         aeson base binary cereal deepseq hashable lens log-domain mtl
+         semirings vector vector-th-unbox
        ];
-       benchmarkHaskellDepends = [ base ];
        description = "Base types and classes for statistics, sciences and humanities";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "SciFlow" = callPackage
@@ -18566,6 +18593,24 @@ self: {
        broken = true;
      }) {};
 
+  "TaskMonad" = callPackage
+    ({ mkDerivation, base, containers, mtl, process, random, unix, X11
+     , X11-xft, xmonad, xmonad-contrib
+     }:
+     mkDerivation {
+       pname = "TaskMonad";
+       version = "1.0.1";
+       sha256 = "1kvhb0863kfbi63q0j9jzi3yr97r8zd5vhh5cqgpkra4rjb4qx1r";
+       revision = "1";
+       editedCabalFile = "1gsnl1sbnjh4j51mfniq6x2k9k6054frzxrdkqycmp0cpwhaijwi";
+       libraryHaskellDepends = [
+         base containers mtl process random unix X11 X11-xft xmonad
+         xmonad-contrib
+       ];
+       description = "A collection of tools which can be used to access taskwarrior from xmonad";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "Taxonomy" = callPackage
     ({ mkDerivation, aeson, base, bytestring, either-unwrap, fgl
      , graphviz, parsec, text, vector
@@ -22747,6 +22792,23 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "aeson-casing_0_2_0_0" = callPackage
+    ({ mkDerivation, aeson, base, tasty, tasty-hunit, tasty-quickcheck
+     , tasty-th
+     }:
+     mkDerivation {
+       pname = "aeson-casing";
+       version = "0.2.0.0";
+       sha256 = "0cwjy46ac7vzdvkw6cm5xcbcljf2a4lcvc2xbsh8iwd3fdb0f8rp";
+       libraryHaskellDepends = [ aeson base ];
+       testHaskellDepends = [
+         aeson base tasty tasty-hunit tasty-quickcheck tasty-th
+       ];
+       description = "Tools to change the formatting of field names in Aeson instances";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "aeson-coerce" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, text }:
      mkDerivation {
@@ -22955,13 +23017,13 @@ self: {
      }) {};
 
   "aeson-gadt-th" = callPackage
-    ({ mkDerivation, aeson, base, dependent-sum, markdown-unlit
-     , template-haskell, transformers
+    ({ mkDerivation, aeson, aeson-qq, base, dependent-sum, hspec, HUnit
+     , markdown-unlit, template-haskell, transformers
      }:
      mkDerivation {
        pname = "aeson-gadt-th";
-       version = "0.1.2.1";
-       sha256 = "0i5ld955dw6i5sf1j4cby6xfqf29r9gy1r6lh4901m6xcgh812jv";
+       version = "0.2.0.0";
+       sha256 = "111bx44s451qmnk70bvmf4f1z3wmi2pnwxqmmarvaz8zl4sw91c5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -22969,6 +23031,9 @@ self: {
        ];
        executableHaskellDepends = [ aeson base dependent-sum ];
        executableToolDepends = [ markdown-unlit ];
+       testHaskellDepends = [
+         aeson aeson-qq base dependent-sum hspec HUnit
+       ];
        description = "Derivation of Aeson instances for GADTs";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -29575,8 +29640,8 @@ self: {
      }:
      mkDerivation {
        pname = "approveapi";
-       version = "0.1.0.0";
-       sha256 = "1qwsdcinq3xci5hqq1gs0bsm3kxaf61vw4csajv5nc8y4w48jzj6";
+       version = "0.1.3.0";
+       sha256 = "1ylqv8vgz1nzndgms1rjn2fcqjymlx80xfyil0si2h0jxwxbwfr5";
        libraryHaskellDepends = [
          aeson base base64-bytestring bytestring case-insensitive containers
          deepseq exceptions http-api-data http-client http-client-tls
@@ -29590,6 +29655,8 @@ self: {
        ];
        description = "ApproveAPI Haskell Client";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "approx-rand-test" = callPackage
@@ -30284,8 +30351,8 @@ self: {
        pname = "arithmoi";
        version = "0.8.0.0";
        sha256 = "17nk0n89fb0qh6w8535ll45mq4msir32w6fhqzpzhlpbily3mlw2";
-       revision = "2";
-       editedCabalFile = "1jv5ch28pjiq3a83hyvknzfwmsbwgqs6g9618z79ss3385k0cwl9";
+       revision = "3";
+       editedCabalFile = "1cn6axcdiahaqnq1rsm0snr78lrypay6cxh3yxw3vrrwilavri1i";
        configureFlags = [ "-f-llvm" ];
        libraryHaskellDepends = [
          array base containers deepseq exact-pi ghc-prim integer-gmp
@@ -30664,8 +30731,8 @@ self: {
      }:
      mkDerivation {
        pname = "asap";
-       version = "0.0.3";
-       sha256 = "0pdr491497f8ndxd6blgjrfn5z102kswia9jn2p0q62zk911i0qm";
+       version = "0.0.4";
+       sha256 = "08yfangqxmdh2w39fqnicn16jnb1x9f263f99253khx3sv4q7qrf";
        libraryHaskellDepends = [
          base bytestring jwt lens mtl semigroups text time uuid
        ];
@@ -30931,37 +30998,37 @@ self: {
        broken = true;
      }) {};
 
-  "asif_5_0_0" = callPackage
+  "asif_5_0_2" = callPackage
     ({ mkDerivation, attoparsec, base, binary, bytestring, conduit
      , conduit-combinators, conduit-extra, containers, cpu, directory
      , either, exceptions, foldl, generic-lens, hedgehog, hspec, hw-bits
-     , hw-hspec-hedgehog, hw-ip, iproute, lens, network, old-locale
+     , hw-hspec-hedgehog, hw-ip, lens, network, old-locale
      , optparse-applicative, profunctors, resourcet, temporary-resourcet
      , text, thyme, transformers, vector
      }:
      mkDerivation {
        pname = "asif";
-       version = "5.0.0";
-       sha256 = "1mz2wngsfk474lgmsw8zfg0znvgljhkcvgw8zqz48rnl1339zycp";
+       version = "5.0.2";
+       sha256 = "19wsjpk3jnij6b4ap84g5jaka734za2381yz4x5ahm4f1nvc6gdf";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          attoparsec base binary bytestring conduit conduit-combinators
          conduit-extra containers cpu either exceptions foldl generic-lens
-         hw-bits hw-ip iproute lens network old-locale profunctors resourcet
+         hw-bits hw-ip lens network old-locale profunctors resourcet
          temporary-resourcet text thyme transformers vector
        ];
        executableHaskellDepends = [
          attoparsec base binary bytestring conduit conduit-combinators
          conduit-extra containers cpu directory either exceptions foldl
-         generic-lens hw-bits hw-ip iproute lens network old-locale
+         generic-lens hw-bits hw-ip lens network old-locale
          optparse-applicative profunctors resourcet temporary-resourcet text
          thyme transformers vector
        ];
        testHaskellDepends = [
          attoparsec base binary bytestring conduit conduit-combinators
          conduit-extra containers cpu either exceptions foldl generic-lens
-         hedgehog hspec hw-bits hw-hspec-hedgehog hw-ip iproute lens network
+         hedgehog hspec hw-bits hw-hspec-hedgehog hw-ip lens network
          old-locale profunctors resourcet temporary-resourcet text thyme
          transformers vector
        ];
@@ -32000,24 +32067,24 @@ self: {
   "ats-pkg" = callPackage
     ({ mkDerivation, ansi-wl-pprint, base, binary, bytestring, bzlib
      , Cabal, cli-setup, composition-prelude, containers, cpphs
-     , dependency, dhall, directory, file-embed, filepath, http-client
-     , http-client-tls, libarchive, lzma, microlens, mtl
+     , dependency, dhall, directory, file-embed, filemanip, filepath
+     , http-client, http-client-tls, lzma, microlens, mtl
      , optparse-applicative, parallel-io, process, shake, shake-ats
-     , shake-c, shake-ext, temporary, text, unix, zip-archive, zlib
+     , shake-c, shake-ext, tar, temporary, text, unix, zip-archive, zlib
      }:
      mkDerivation {
        pname = "ats-pkg";
-       version = "3.2.5.11";
-       sha256 = "0x025agqc40184nxdjmmrh0qi7dxffr7a99fca3l1yik1002ssbn";
+       version = "3.2.5.12";
+       sha256 = "174nxhkfb1qvlfxjifrb1pqfrh4na64wvfrnblzpfp03di0hbh3m";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          ansi-wl-pprint base binary bytestring bzlib Cabal
          composition-prelude containers dependency dhall directory
-         file-embed filepath http-client http-client-tls libarchive lzma
+         file-embed filemanip filepath http-client http-client-tls lzma
          microlens mtl parallel-io process shake shake-ats shake-c shake-ext
-         text unix zip-archive zlib
+         tar text unix zip-archive zlib
        ];
        libraryToolDepends = [ cpphs ];
        executableHaskellDepends = [
@@ -33669,19 +33736,19 @@ self: {
 
   "aws-lambda-haskell-runtime" = callPackage
     ({ mkDerivation, aeson, base, bytestring, case-insensitive, conduit
-     , directory, filepath, hspec, microlens-platform, mtl
+     , directory, filepath, hspec, http-client, microlens-platform, mtl
      , optparse-generic, process, template-haskell, text, uuid, wreq
      }:
      mkDerivation {
        pname = "aws-lambda-haskell-runtime";
-       version = "1.0.9";
-       sha256 = "0cx59jmqzjz1ff1mng63pf008mxmfffpv9nlcmrisjliginjh2v3";
+       version = "1.0.10";
+       sha256 = "09rd4jfw59j003q14y76isdb5dg23r0vxqkg8jqf49c9gap7wqsq";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson base bytestring case-insensitive conduit directory filepath
-         microlens-platform mtl optparse-generic process template-haskell
-         text uuid wreq
+         http-client microlens-platform mtl optparse-generic process
+         template-haskell text uuid wreq
        ];
        executableHaskellDepends = [ base mtl ];
        testHaskellDepends = [ base hspec mtl ];
@@ -34175,8 +34242,8 @@ self: {
      }:
      mkDerivation {
        pname = "b9";
-       version = "0.5.68.1";
-       sha256 = "1q5bmnv78lzs3i9i0mcvp652rcrkipcccq6zypfic501d1hzq3ij";
+       version = "0.5.68.2";
+       sha256 = "1frinivjzyyjn9w3xqyr659wrjniv5598frdf9526g7ab484di8w";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -34613,6 +34680,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "barbies_1_1_2_1" = callPackage
+    ({ mkDerivation, base, bifunctors, QuickCheck, tasty, tasty-hunit
+     , tasty-quickcheck
+     }:
+     mkDerivation {
+       pname = "barbies";
+       version = "1.1.2.1";
+       sha256 = "0svcdjs03i4ryhg3qzrp3l7ck0ilgnhxwc2h69qnzknqjklz7p1y";
+       libraryHaskellDepends = [ base bifunctors ];
+       testHaskellDepends = [
+         base QuickCheck tasty tasty-hunit tasty-quickcheck
+       ];
+       description = "Classes for working with types that can change clothes";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "barchart" = callPackage
     ({ mkDerivation, base, cmdargs, csv, diagrams, filepath }:
      mkDerivation {
@@ -35040,6 +35124,29 @@ self: {
        broken = true;
      }) {};
 
+  "base64-bytestring-type_1_0_1" = callPackage
+    ({ mkDerivation, aeson, base, base-compat, base64-bytestring
+     , binary, bytestring, cereal, deepseq, hashable, http-api-data
+     , QuickCheck, serialise, tasty, tasty-quickcheck, text
+     }:
+     mkDerivation {
+       pname = "base64-bytestring-type";
+       version = "1.0.1";
+       sha256 = "03kq4rjj6by02rf3hg815jfdqpdk0xygm5f46r2pn8mb99yd01zn";
+       libraryHaskellDepends = [
+         aeson base base-compat base64-bytestring binary bytestring cereal
+         deepseq hashable http-api-data QuickCheck serialise text
+       ];
+       testHaskellDepends = [
+         aeson base binary bytestring cereal http-api-data serialise tasty
+         tasty-quickcheck
+       ];
+       description = "A newtype around ByteString, for base64 encoding";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "base64-conduit" = callPackage
     ({ mkDerivation, base, base64-bytestring, bytestring, conduit
      , hspec, QuickCheck, transformers
@@ -35698,8 +35805,8 @@ self: {
      }:
      mkDerivation {
        pname = "beam-migrate";
-       version = "0.4.0.0";
-       sha256 = "0q60gkhfqgpwfcv24r4d2ikiq3m7wr3sx5q9cxf05b84g7ppz6s4";
+       version = "0.4.0.1";
+       sha256 = "12c5yibargwrw9z806bik7rly9njq0qa60gsqlh8pbzaaji5fknf";
        libraryHaskellDepends = [
          aeson base beam-core bytestring containers deepseq dependent-map
          dependent-sum free ghc-prim hashable haskell-src-exts microlens mtl
@@ -35727,6 +35834,8 @@ self: {
        ];
        description = "Connection layer between beam and MySQL/MariaDB";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "beam-newtype-field" = callPackage
@@ -41578,10 +41687,8 @@ self: {
      }:
      mkDerivation {
        pname = "broadcast-chan";
-       version = "0.2.0.1";
-       sha256 = "0kbs3yz53x7117fykapy70qlmaxkj9zr5r4n9wf126n4g0i6gcpf";
-       revision = "2";
-       editedCabalFile = "1vvs1m5n6lflmp8hdxksxa4ibllfx609y791wg21lvyz5m208hp9";
+       version = "0.2.0.2";
+       sha256 = "12ax37y9i3cs8wifz01lpq0awm9c235l5xkybf13ywvyk5svb0jv";
        libraryHaskellDepends = [ base unliftio-core ];
        benchmarkHaskellDepends = [ async base criterion deepseq stm ];
        description = "Closable, fair, single-wakeup channel type that avoids 0 reader space leaks";
@@ -41596,8 +41703,8 @@ self: {
      }:
      mkDerivation {
        pname = "broadcast-chan-conduit";
-       version = "0.2.0.1";
-       sha256 = "0q3kikryj38macxnwmlk6xijcmvxys0acryj419n7749n7bpc59s";
+       version = "0.2.0.2";
+       sha256 = "1xnf1ibgnzi4xbmfgrkkfg3pkig7v8vv0xpfhhcdmnybwm2yhlli";
        libraryHaskellDepends = [
          base broadcast-chan conduit resourcet transformers unliftio-core
        ];
@@ -41616,8 +41723,8 @@ self: {
      }:
      mkDerivation {
        pname = "broadcast-chan-pipes";
-       version = "0.2.0.1";
-       sha256 = "0m2g14rlqladhwfvphmnpsddlbc5bhsjdsb4a9r475vkib30gdp2";
+       version = "0.2.0.2";
+       sha256 = "1brr0vjrsd53qji8pmns003m3k1s28hvr2w8875hv2fznmm8x1g7";
        libraryHaskellDepends = [ base broadcast-chan pipes pipes-safe ];
        testHaskellDepends = [
          base broadcast-chan-tests containers foldl pipes pipes-safe
@@ -41636,8 +41743,8 @@ self: {
      }:
      mkDerivation {
        pname = "broadcast-chan-tests";
-       version = "0.2.0.1";
-       sha256 = "1l3zqc693jmvxmb5lln6fmwn01rjpwhvlllkrn3v6hs2bwibrp5n";
+       version = "0.2.0.2";
+       sha256 = "1m7m06pd9vfvz0rfnylpr6pjvizxv31qizri3a400rkz3zanhkym";
        libraryHaskellDepends = [
          async base broadcast-chan clock containers optparse-applicative
          paramtree stm tagged tasty tasty-golden tasty-hunit tasty-travis
@@ -48188,6 +48295,35 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "chessIO" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, directory, haskeline
+     , megaparsec, mtl, parallel, parser-combinators, process, split
+     , stm, time, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "chessIO";
+       version = "0.1.0.0";
+       sha256 = "1rxna3jy50fddw33cjg603gdcmq89qr21q8syz60lm8rri0rg6bh";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         attoparsec base bytestring megaparsec parser-combinators process
+         stm unordered-containers vector
+       ];
+       executableHaskellDepends = [
+         attoparsec base bytestring haskeline megaparsec mtl
+         parser-combinators process split stm unordered-containers vector
+       ];
+       testHaskellDepends = [
+         attoparsec base bytestring directory megaparsec parallel
+         parser-combinators process stm time unordered-containers vector
+       ];
+       description = "Basic chess move generation and UCI client library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "chesshs" = callPackage
     ({ mkDerivation, array, attoparsec, base, bytestring, containers }:
      mkDerivation {
@@ -50267,8 +50403,8 @@ self: {
      }:
      mkDerivation {
        pname = "cli-setup";
-       version = "0.2.0.6";
-       sha256 = "10w251gvlyqvzg2ffs2mdfkd6lla8v0zkaibpnbaz5iy1cajr65z";
+       version = "0.2.0.7";
+       sha256 = "1fp1m48rpgnq3db4nvcnry3h46m7k07g8blivv0mb62w8fdm9smq";
        libraryHaskellDepends = [
          base bytestring directory file-embed process
        ];
@@ -51254,19 +51390,19 @@ self: {
      }) {cmph = null;};
 
   "cmt" = callPackage
-    ({ mkDerivation, attoparsec, base, classy-prelude, directory
-     , file-embed, filepath, process, tasty, tasty-discover
+    ({ mkDerivation, attoparsec, base, classy-prelude, containers
+     , directory, file-embed, filepath, process, tasty, tasty-discover
      , tasty-expected-failure, tasty-hunit, terminal-size, text
      }:
      mkDerivation {
        pname = "cmt";
-       version = "0.4.0.0";
-       sha256 = "17faw3g078i2a15zl1d31wd0ag3hk347hf23widdkcnf6bs4qmr6";
+       version = "0.5.0.0";
+       sha256 = "0wnnqzcqxk976q0zy35gi9l46w2fdjvqnx2nxijmfsxj3f221ggx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         attoparsec base classy-prelude directory filepath process
-         terminal-size text
+         attoparsec base classy-prelude containers directory filepath
+         process terminal-size text
        ];
        executableHaskellDepends = [ base classy-prelude ];
        testHaskellDepends = [
@@ -51677,6 +51813,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "coerce-role" = callPackage
+    ({ mkDerivation, base, unliftio }:
+     mkDerivation {
+       pname = "coerce-role";
+       version = "0.1.0.0";
+       sha256 = "1qllw5wrpk328n2kjxbry3w85fwwkrdxd3cgl3z160ij200mxcyp";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base unliftio ];
+       description = "Having trouble deriving instances because of type roles? Solve it here!";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "coerce-util" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -53391,8 +53539,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "composition-prelude";
-       version = "2.0.2.1";
-       sha256 = "0vxgy13k0ca3bi7rh9wc1pdrlpdjbm6va95djmmysdw8a9yyp9wi";
+       version = "2.0.4.0";
+       sha256 = "1siz9jbwp33i32qwqyyz4yydbmsg35jfw7x7c82arpy401kmk1hk";
        libraryHaskellDepends = [ base ];
        description = "Higher-order function combinators";
        license = stdenv.lib.licenses.bsd3;
@@ -55505,8 +55653,8 @@ self: {
      }:
      mkDerivation {
        pname = "constraints-deriving";
-       version = "1.0.0.0";
-       sha256 = "0a1r5pd1npfahx8hpr5kzw9xvla7f4d6463j80ar35vz854llxhm";
+       version = "1.0.1.0";
+       sha256 = "0jsqm1d8341i98vg98l01sg0vhw398z1x3lf68kz380qiy7paz4c";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal ];
@@ -55544,8 +55692,8 @@ self: {
      }:
      mkDerivation {
        pname = "constraints-extras";
-       version = "0.2.3.3";
-       sha256 = "1399jah0lh127z56wv0h2c94s26fanw58x0x8imakjlj2dlg8km1";
+       version = "0.2.3.4";
+       sha256 = "1xkivpkjgnnrs5fyg0g77f84zh3sxqgxif0l2rhcq1wdad709q55";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base constraints template-haskell ];
@@ -56493,23 +56641,17 @@ self: {
      }) {};
 
   "copilot" = callPackage
-    ({ mkDerivation, base, copilot-c99, copilot-cbmc, copilot-core
-     , copilot-language, copilot-libraries, copilot-sbv, copilot-theorem
-     , directory, random
+    ({ mkDerivation, base, copilot-c99, copilot-core, copilot-language
+     , copilot-libraries, copilot-theorem, directory, filepath
+     , optparse-applicative
      }:
      mkDerivation {
        pname = "copilot";
-       version = "2.2.1";
-       sha256 = "04bfrxvz04jcc1favl21xb4qbj3gd0par0xg1f11r5s73ldnghb9";
-       isLibrary = true;
-       isExecutable = true;
+       version = "3.0";
+       sha256 = "0i28vqzg7pgff0y8ill8zj8qbf1vqk3yfscvhrv5mcywp2fm6f31";
        libraryHaskellDepends = [
-         base copilot-c99 copilot-cbmc copilot-core copilot-language
-         copilot-libraries copilot-sbv copilot-theorem
-       ];
-       executableHaskellDepends = [
-         base copilot-c99 copilot-cbmc copilot-core copilot-language
-         copilot-libraries copilot-sbv copilot-theorem directory random
+         base copilot-c99 copilot-core copilot-language copilot-libraries
+         copilot-theorem directory filepath optparse-applicative
        ];
        description = "A stream DSL for writing embedded C programs";
        license = stdenv.lib.licenses.bsd3;
@@ -56518,22 +56660,17 @@ self: {
      }) {};
 
   "copilot-c99" = callPackage
-    ({ mkDerivation, atom, base, bytestring, containers, copilot-core
-     , csv, directory, pretty, process, QuickCheck, random, text, vector
+    ({ mkDerivation, base, containers, copilot-core, directory
+     , filepath, language-c99, language-c99-simple, language-c99-util
+     , mtl, pretty
      }:
      mkDerivation {
        pname = "copilot-c99";
-       version = "2.2.1";
-       sha256 = "1wyw1jiicx39x7iscy9rld7pnfpan8xfp8lphn7b658hipw0v4aq";
-       isLibrary = true;
-       isExecutable = true;
+       version = "3.0";
+       sha256 = "11v8py8hgp76dlp2n3nw4gqw4s0jnq51vd26y8vi5k71jiwwp0k9";
        libraryHaskellDepends = [
-         atom base bytestring containers copilot-core csv directory pretty
-         process QuickCheck random text vector
-       ];
-       executableHaskellDepends = [
-         atom base bytestring containers copilot-core csv directory pretty
-         process QuickCheck random text vector
+         base containers copilot-core directory filepath language-c99
+         language-c99-simple language-c99-util mtl pretty
        ];
        description = "A compiler for Copilot targeting C99";
        license = stdenv.lib.licenses.bsd3;
@@ -56560,15 +56697,13 @@ self: {
      }) {};
 
   "copilot-core" = callPackage
-    ({ mkDerivation, base, containers, dlist, mtl, pretty, pretty-ncols
-     , random
-     }:
+    ({ mkDerivation, base, containers, dlist, mtl, pretty, random }:
      mkDerivation {
        pname = "copilot-core";
-       version = "2.2.1";
-       sha256 = "1mzxb24chxfrkpr4487dxkwbnhaysyxsrv4y38ma76nq141xr105";
+       version = "3.0";
+       sha256 = "0n6vczrc56hlgkya53apg0g64mvm648xhqqi174gxs45zlb23n9y";
        libraryHaskellDepends = [
-         base containers dlist mtl pretty pretty-ncols random
+         base containers dlist mtl pretty random
        ];
        description = "An intermediate representation for Copilot";
        license = stdenv.lib.licenses.bsd3;
@@ -56582,8 +56717,8 @@ self: {
      }:
      mkDerivation {
        pname = "copilot-language";
-       version = "2.2.1";
-       sha256 = "1pv54iwzcyvw46xq6am2l23sw223n8b9fqc910dkf2kjr6y6q6v8";
+       version = "3.0";
+       sha256 = "094yfrg0szfmskznznlsiqi8ms6pbny7agc2w2qvsmlxn6rdhsk9";
        libraryHaskellDepends = [
          array base containers copilot-core copilot-theorem data-reify
          ghc-prim mtl
@@ -56595,15 +56730,15 @@ self: {
      }) {};
 
   "copilot-libraries" = callPackage
-    ({ mkDerivation, array, base, containers, copilot-language, mtl
-     , parsec
+    ({ mkDerivation, array, base, containers, copilot-language
+     , data-reify, mtl, parsec
      }:
      mkDerivation {
        pname = "copilot-libraries";
-       version = "2.2.1";
-       sha256 = "0ashnay40kkbysnbz8ay0r7ljzwkx07m4z960kfjnh3y6s5qk6ww";
+       version = "3.0";
+       sha256 = "0xrv37m770qnc722iv5x67kjic11q2sd1bcx2b0gr93p54frbjs4";
        libraryHaskellDepends = [
-         array base containers copilot-language mtl parsec
+         array base containers copilot-language data-reify mtl parsec
        ];
        description = "Libraries for the Copilot language";
        license = stdenv.lib.licenses.bsd3;
@@ -56631,15 +56766,15 @@ self: {
   "copilot-theorem" = callPackage
     ({ mkDerivation, ansi-terminal, base, bimap, containers
      , copilot-core, data-default, directory, mtl, parsec, pretty
-     , process, random, smtlib2, transformers, xml
+     , process, random, transformers, xml
      }:
      mkDerivation {
        pname = "copilot-theorem";
-       version = "2.2.1";
-       sha256 = "1qw46k26f6cisyjmjn0d9g7sjkx67vpydiqm7l9f1hib4dygcznx";
+       version = "3.0";
+       sha256 = "1h8gjlfhl473d6h8zafmqv3dzdhmgpyp8bsvysfzb7s2ga5hwnrq";
        libraryHaskellDepends = [
          ansi-terminal base bimap containers copilot-core data-default
-         directory mtl parsec pretty process random smtlib2 transformers xml
+         directory mtl parsec pretty process random transformers xml
        ];
        description = "k-induction for Copilot";
        license = stdenv.lib.licenses.bsd3;
@@ -57152,10 +57287,8 @@ self: {
      }:
      mkDerivation {
        pname = "cpkg";
-       version = "0.1.1.0";
-       sha256 = "1qmz4m9kbkmcb0i7iy1ay1hkkqh826v98lpqf0zpk7sin686xjv4";
-       revision = "1";
-       editedCabalFile = "004178xsld8mmy07z23x51vzbjrjprv17k8mq29vgibkm5kd1l5r";
+       version = "0.1.1.1";
+       sha256 = "06nwkys90i0rdhg1nvwzii88z5f3ijn9kjwrg6lgy2m973zr8668";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -57284,8 +57417,8 @@ self: {
     ({ mkDerivation, base, containers, parallel }:
      mkDerivation {
        pname = "cpsa";
-       version = "3.6.1";
-       sha256 = "04hvb1z483gh7mb5q1mvsiym8jg29512wnrfdssl8y9c90qhk2sp";
+       version = "3.6.2";
+       sha256 = "0byrfj9lqv4k5d0s3d7ib6bwcz50bl23qnk2nk8bzk9s1356g6yi";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -57425,6 +57558,8 @@ self: {
        pname = "cql-io";
        version = "1.1.0";
        sha256 = "1pqqq31f9xcpn5rykkgrakgl17dm1nnskh1m88fxaynzjj485pkw";
+       revision = "1";
+       editedCabalFile = "0zxc28i4c26qi6xpgsyhn0f539ni6wv6c1pixh056bzm9pwp60d7";
        libraryHaskellDepends = [
          async auto-update base bytestring containers cql cryptonite
          data-default-class exceptions hashable HsOpenSSL iproute lens mtl
@@ -59169,8 +59304,8 @@ self: {
      }:
      mkDerivation {
        pname = "csound-catalog";
-       version = "0.7.2";
-       sha256 = "0c16h2m8zkpyjbclvqpd8kq46ciw6qwc94d6v2d66c3g0ixx53vx";
+       version = "0.7.3";
+       sha256 = "18xn06drza3pwyhidlkr478hvn8ss93f3f30wmfrh79ngabip4kp";
        libraryHaskellDepends = [
          base csound-expression csound-sampler sharc-timbre transformers
        ];
@@ -59772,23 +59907,37 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "curl-cookiejar" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, conduit
+     , conduit-extra, http-client, time
+     }:
+     mkDerivation {
+       pname = "curl-cookiejar";
+       version = "0.1.0.0";
+       sha256 = "0fflf6p1qnr7h4dhpv8d1pm1whfphz1dva2yk6s2wk8dv6wbbdfj";
+       libraryHaskellDepends = [
+         attoparsec base bytestring conduit conduit-extra http-client time
+       ];
+       description = "Parsing and pretty-printing of cURL/wget cookie jars";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "curl-runnings" = callPackage
     ({ mkDerivation, aeson, base, bytestring, case-insensitive, cmdargs
      , connection, directory, hspec, hspec-expectations, http-client-tls
-     , http-conduit, http-types, megaparsec, pretty-simple, regex-posix
-     , tar, text, unordered-containers, vector, yaml, zlib
+     , http-conduit, megaparsec, pretty-simple, regex-posix, tar, text
+     , unordered-containers, vector, yaml, zlib
      }:
      mkDerivation {
        pname = "curl-runnings";
-       version = "0.10.0";
-       sha256 = "11mzxsqiikwa0xjiiq4mk4r850zdp9q75x0qz5wrjq4ks4743wp3";
+       version = "0.11.0";
+       sha256 = "18vbb0k9gfi528za6wdw4m8997ks5s6vlwz4c9rjziq5ab0xdcfr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson base bytestring case-insensitive connection directory hspec
-         hspec-expectations http-client-tls http-conduit http-types
-         megaparsec pretty-simple regex-posix text unordered-containers
-         vector yaml
+         hspec-expectations http-client-tls http-conduit megaparsec
+         pretty-simple regex-posix text unordered-containers vector yaml
        ];
        executableHaskellDepends = [
          aeson base bytestring cmdargs directory http-conduit tar text zlib
@@ -62619,21 +62768,22 @@ self: {
 
   "datadog-tracing" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, ffunctor
-     , generic-random, hspec-golden-aeson, mtl, prettyprinter
-     , QuickCheck, quickcheck-text, refined, servant, servant-client
-     , servant-server, tasty, tasty-discover, tasty-hspec, text, time
-     , warp
+     , generic-random, hspec-golden-aeson, http-media, msgpack, mtl
+     , prettyprinter, QuickCheck, quickcheck-text, refined, scientific
+     , servant, servant-client, servant-server, tasty, tasty-discover
+     , tasty-hspec, text, time, unordered-containers, vector, warp
      }:
      mkDerivation {
        pname = "datadog-tracing";
-       version = "1.2.0";
-       sha256 = "1227rkrmlbqbxbvmyhm5yg5wd0jbbiy7vjyqq6vzksvpx2kifsdy";
+       version = "1.3.2";
+       sha256 = "0gag5cga8an4hd63n3vyjxrvgw309a8iw5if22j1dlc972qrzgs1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base bytestring containers ffunctor generic-random mtl
-         prettyprinter QuickCheck quickcheck-text refined servant
-         servant-client text time
+         aeson base bytestring containers ffunctor generic-random http-media
+         msgpack mtl prettyprinter QuickCheck quickcheck-text refined
+         scientific servant servant-client text time unordered-containers
+         vector
        ];
        executableHaskellDepends = [
          aeson base bytestring containers mtl servant servant-server text
@@ -64764,6 +64914,20 @@ self: {
        license = stdenv.lib.licenses.publicDomain;
      }) {};
 
+  "dependent-sum_0_5" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "dependent-sum";
+       version = "0.5";
+       sha256 = "1n5ln2fain1x9zkrzy1sknwm528lrdsnsg52z1d0hfpy5sngndsr";
+       revision = "2";
+       editedCabalFile = "1vxg9v2b5479qm7q9qzjyh9rmcdpr634s3kpjx0skqq0r68bc36s";
+       libraryHaskellDepends = [ base ];
+       description = "Dependent sum type";
+       license = stdenv.lib.licenses.publicDomain;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "dependent-sum-aeson-orphans" = callPackage
     ({ mkDerivation, aeson, base, constraints, constraints-extras
      , dependent-map, dependent-sum
@@ -65593,6 +65757,8 @@ self: {
        pname = "dhall";
        version = "1.21.0";
        sha256 = "03nzp79mmivnyg6s179abf8bj8j60hkng9kgbmfjzvwlfrpwq8lv";
+       revision = "1";
+       editedCabalFile = "0ap1490jks9hmwf73vlrj7bsfrf4m5yvgqxx3ix57w23ia5gy662";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -68841,6 +69007,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "dlist_0_8_0_6" = callPackage
+    ({ mkDerivation, base, Cabal, deepseq, QuickCheck }:
+     mkDerivation {
+       pname = "dlist";
+       version = "0.8.0.6";
+       sha256 = "0gy70df86pfmqwbmnafdw2w5jnflvn5mca8npxzfg23f3p4ll2vq";
+       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 {
@@ -71169,6 +71348,22 @@ self: {
        broken = true;
      }) {};
 
+  "dynamic" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, base, bytestring, cassava
+     , containers, http-conduit, text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "dynamic";
+       version = "0.0.6";
+       sha256 = "0z2mc09iffwh2wxp8j0kqpfh5nflnf3wzk554rx0l54sbszvxvw1";
+       libraryHaskellDepends = [
+         aeson aeson-pretty base bytestring cassava containers http-conduit
+         text unordered-containers vector
+       ];
+       description = "A dynamic type for Haskell";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "dynamic-cabal" = callPackage
     ({ mkDerivation, base, containers, data-default, directory, doctest
      , filepath, ghc, ghc-paths, haskell-generate, haskell-src-exts
@@ -71641,8 +71836,8 @@ self: {
     ({ mkDerivation, base, Cabal, dimensions, QuickCheck, time }:
      mkDerivation {
        pname = "easytensor";
-       version = "1.0.0.1";
-       sha256 = "0ih92gikf67bq9p599vdb9p9dh4b8p7a687n3xiv3q9qm4pdc8aa";
+       version = "1.0.1.0";
+       sha256 = "0s1w8ldd25m3jlqysikhzs4ygv4ar476iynbcy18nfn5qh8dvf8k";
        libraryHaskellDepends = [ base dimensions ];
        testHaskellDepends = [ base Cabal dimensions QuickCheck ];
        benchmarkHaskellDepends = [ base dimensions time ];
@@ -72500,8 +72695,8 @@ self: {
        pname = "either";
        version = "5.0.1";
        sha256 = "064hjfld7dkzs78sy30k5qkiva3hx24rax6dvzz5ygr2c0zypdkc";
-       revision = "1";
-       editedCabalFile = "1kf0dy6nki64kkmjw8214jz3n086g1pghfm26f012b6qv0iakzca";
+       revision = "2";
+       editedCabalFile = "0859h2dc77fq0f14jh11h4i89hrg3iqvzk0yrk78516k6m7n96zc";
        libraryHaskellDepends = [
          base bifunctors mtl profunctors semigroupoids semigroups
        ];
@@ -73272,10 +73467,8 @@ self: {
      }:
      mkDerivation {
        pname = "elm-street";
-       version = "0.0.0";
-       sha256 = "0my3f08h019rhmyvcbf5xz87wnrd52fsqpiqj6jv1544psczc2sq";
-       revision = "1";
-       editedCabalFile = "1a6xx0an11kljw5l5y2mgpsll5515lz18nvpzxa0rc927nnpnf2y";
+       version = "0.0.1";
+       sha256 = "09rc10k6g23wf7b095rk6i2d9h5axlcmfpimhmbpqhm8vyqg72l7";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -73379,8 +73572,8 @@ self: {
      }:
      mkDerivation {
        pname = "elocrypt";
-       version = "2.0.0";
-       sha256 = "0dz5vdcg68fbwhvwz68zlsz5h2aaj1q6gacp1005hkxfb8156lp3";
+       version = "2.0.1";
+       sha256 = "1sb0xb4dx39vmr60slrlr85hwi6drmqdibv0faiw7k48rxvcz1ak";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base MonadRandom random ];
@@ -73395,19 +73588,19 @@ self: {
      }) {};
 
   "elsa" = callPackage
-    ({ mkDerivation, array, base, dequeue, directory, filepath
-     , hashable, json, megaparsec, mtl, tasty, tasty-hunit
+    ({ mkDerivation, ansi-terminal, array, base, dequeue, directory
+     , filepath, hashable, json, megaparsec, mtl, tasty, tasty-hunit
      , unordered-containers
      }:
      mkDerivation {
        pname = "elsa";
-       version = "0.2.0.1";
-       sha256 = "1ipi0vi3mwxmcmqmjk93ips7z3casqxzbls80aw2ysj43ii89m21";
+       version = "0.2.1.2";
+       sha256 = "0qg80wck4zsia9fsih06283c47f3waiskgj1r5s0s4fms9rwg06y";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         array base dequeue directory filepath hashable json megaparsec mtl
-         unordered-containers
+         ansi-terminal array base dequeue directory filepath hashable json
+         megaparsec mtl unordered-containers
        ];
        executableHaskellDepends = [ base mtl ];
        testHaskellDepends = [ base directory filepath tasty tasty-hunit ];
@@ -73530,6 +73723,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "email-validate_2_3_2_11" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, doctest, hspec
+     , QuickCheck, template-haskell
+     }:
+     mkDerivation {
+       pname = "email-validate";
+       version = "2.3.2.11";
+       sha256 = "051h1l6x4dpk2jg1bsxy32zswf8ridlix3k78k0h237gcassrfpb";
+       libraryHaskellDepends = [
+         attoparsec base bytestring template-haskell
+       ];
+       testHaskellDepends = [ base bytestring doctest hspec QuickCheck ];
+       description = "Email address validation";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "email-validate-json" = callPackage
     ({ mkDerivation, aeson, base, email-validate, text }:
      mkDerivation {
@@ -74656,18 +74866,22 @@ self: {
      }) {};
 
   "erd" = callPackage
-    ({ mkDerivation, base, bytestring, containers, graphviz, parsec
-     , text
+    ({ mkDerivation, base, bytestring, containers, graphviz, hspec
+     , parsec, QuickCheck, raw-strings-qq, tasty, tasty-hunit, text
      }:
      mkDerivation {
        pname = "erd";
-       version = "0.1.3.0";
-       sha256 = "00cf1q7472kkl12z48dwnhixvyk99451by577qmfj0vhlnl1dc09";
+       version = "0.2.0.0";
+       sha256 = "1lxqjvsmkqhqaw63r6qp6z9kjz73ki6y3vr85bjs5i0m7ff87799";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          base bytestring containers graphviz parsec text
        ];
+       testHaskellDepends = [
+         base bytestring containers graphviz hspec parsec QuickCheck
+         raw-strings-qq tasty tasty-hunit text
+       ];
        description = "An entity-relationship diagram generator from a plain text description";
        license = stdenv.lib.licenses.publicDomain;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -76460,6 +76674,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "exceptions_0_10_1" = callPackage
+    ({ mkDerivation, base, mtl, QuickCheck, stm, template-haskell
+     , test-framework, test-framework-hunit, test-framework-quickcheck2
+     , transformers, transformers-compat
+     }:
+     mkDerivation {
+       pname = "exceptions";
+       version = "0.10.1";
+       sha256 = "17fz74bi6qy3w7li7ifkcvsy3f9zyj69956jvaqvl5diyqnh791v";
+       libraryHaskellDepends = [
+         base mtl stm template-haskell transformers transformers-compat
+       ];
+       testHaskellDepends = [
+         base mtl QuickCheck stm template-haskell test-framework
+         test-framework-hunit test-framework-quickcheck2 transformers
+         transformers-compat
+       ];
+       description = "Extensible optionally-pure exceptions";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "exchangerates" = callPackage
     ({ mkDerivation, aeson, base, containers, directory, genvalidity
      , genvalidity-containers, genvalidity-hspec
@@ -77782,6 +78018,21 @@ self: {
        broken = true;
      }) {};
 
+  "fair" = callPackage
+    ({ mkDerivation, base, criterion, smallcheck, tasty
+     , tasty-smallcheck, util
+     }:
+     mkDerivation {
+       pname = "fair";
+       version = "0.1.0.0";
+       sha256 = "0x8nz1476pdmcaq99gvzs0ila78z1zhvdkyw886ly8ivfp49ix17";
+       libraryHaskellDepends = [ base util ];
+       testHaskellDepends = [ base smallcheck tasty tasty-smallcheck ];
+       benchmarkHaskellDepends = [ base criterion ];
+       description = "Lists with fair choice";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "fair-predicates" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -77851,6 +78102,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "fakefs" = callPackage
+    ({ mkDerivation, base, containers, hspec, mtl, QuickCheck }:
+     mkDerivation {
+       pname = "fakefs";
+       version = "0.2.0.0";
+       sha256 = "0r20w8grmcfr5vwh8j2kfg9lm9pkcq9cvgnrw1sj2vi38s96icwx";
+       libraryHaskellDepends = [ base containers mtl ];
+       testHaskellDepends = [ base containers hspec QuickCheck ];
+       description = "Extensible fake file system for testing";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "faker" = callPackage
     ({ mkDerivation, base, gimlh, random, split }:
      mkDerivation {
@@ -78280,8 +78543,8 @@ self: {
      }:
      mkDerivation {
        pname = "fastparser";
-       version = "0.3.1.1";
-       sha256 = "0wj50rpjr69sl4kkw6zybh2s9iq9ysv6sc83k50l5kq12p28yc5d";
+       version = "0.3.1.2";
+       sha256 = "0hyai0v9h4zlbr8fnal6l4z9y8zrh4ghhp2wymhf6fg23lahscid";
        libraryHaskellDepends = [
          base bytestring bytestring-lexing containers kan-extensions
          microlens thyme transformers vector-space
@@ -81517,6 +81780,19 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "flow_1_0_18" = callPackage
+    ({ mkDerivation, base, doctest, QuickCheck, template-haskell }:
+     mkDerivation {
+       pname = "flow";
+       version = "1.0.18";
+       sha256 = "1cyac1la7pg7hkpdd2lhk4clh6g1zd2n0f479xvgn14ibs6ki3ph";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base doctest QuickCheck template-haskell ];
+       description = "Write more understandable Haskell";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "flow-er" = callPackage
     ({ mkDerivation, base, doctest, flow, QuickCheck }:
      mkDerivation {
@@ -81939,6 +82215,21 @@ self: {
        broken = true;
      }) {inherit (pkgs) fluidsynth;};
 
+  "flush-queue" = callPackage
+    ({ mkDerivation, async, atomic-primops, base, containers, deepseq
+     , hspec, old-time, QuickCheck, stm
+     }:
+     mkDerivation {
+       pname = "flush-queue";
+       version = "1.0.0";
+       sha256 = "17b6izgpn9rdk3zdhp4kzsna6lv1lhdr8jr6yn2xcwznddb0zb69";
+       libraryHaskellDepends = [ atomic-primops base containers stm ];
+       testHaskellDepends = [ async base hspec QuickCheck stm ];
+       benchmarkHaskellDepends = [ async base deepseq old-time stm ];
+       description = "Concurrent bouded blocking queues optimized for flushing. Both IO and STM implementations.";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "flux-monoid" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -85173,6 +85464,22 @@ self: {
        broken = true;
      }) {};
 
+  "fungll-combinators" = callPackage
+    ({ mkDerivation, array, base, containers, gll, pretty
+     , regex-applicative, text, time, TypeCompose
+     }:
+     mkDerivation {
+       pname = "fungll-combinators";
+       version = "0.1.0.1";
+       sha256 = "111cjr8jznm3jrf70jr89jhy36yhvikzdgv2vybqj43b1l2g8v4q";
+       libraryHaskellDepends = [
+         array base containers gll pretty regex-applicative text time
+         TypeCompose
+       ];
+       description = "GLL parser with simple combinator interface";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "funion" = callPackage
     ({ mkDerivation, base, bytestring, directory, filepath, haskell98
      , HFuse, unix
@@ -85243,6 +85550,17 @@ self: {
        broken = true;
      }) {};
 
+  "funspection" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "funspection";
+       version = "0.1.0.0";
+       sha256 = "1bq7gj8kcgz8ccy6skkqbrfkxavkg3s511shm8fd9s8syqwdglr8";
+       libraryHaskellDepends = [ base ];
+       description = "Type-level function utilities";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "fused-effects" = callPackage
     ({ mkDerivation, base, deepseq, doctest, hspec, MonadRandom
      , QuickCheck, random
@@ -85257,15 +85575,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "fused-effects_0_2_0_1" = callPackage
+  "fused-effects_0_3_0_0" = callPackage
     ({ mkDerivation, base, criterion, deepseq, doctest, hspec
-     , MonadRandom, QuickCheck, random
+     , MonadRandom, QuickCheck, random, transformers
      }:
      mkDerivation {
        pname = "fused-effects";
-       version = "0.2.0.1";
-       sha256 = "1n5ywp07s4fhpjwnk15y72flwaxjd9dingr4xlrpkp00cgfh1ax8";
-       libraryHaskellDepends = [ base deepseq MonadRandom random ];
+       version = "0.3.0.0";
+       sha256 = "1plivl5vdgzpb2pbbhyiv2i6jk39l43bwa574qs9nb5jx5i7n056";
+       libraryHaskellDepends = [
+         base deepseq MonadRandom random transformers
+       ];
        testHaskellDepends = [ base doctest hspec QuickCheck ];
        benchmarkHaskellDepends = [ base criterion ];
        description = "A fast, flexible, fused effect system";
@@ -85302,57 +85622,38 @@ self: {
      }) {};
 
   "futhark" = callPackage
-    ({ mkDerivation, aeson, alex, ansi-terminal, array, base
-     , bifunctors, binary, blaze-html, bytestring, containers
-     , data-binary-ieee754, directory, directory-tree, dlist, extra
-     , file-embed, filepath, free, gitrev, happy, haskeline, http-client
-     , http-client-tls, http-conduit, HUnit, language-c-quote
-     , mainland-pretty, markdown, megaparsec, mtl, neat-interpolation
-     , parallel, parser-combinators, process, process-extras, QuickCheck
-     , random, raw-strings-qq, regex-tdfa, srcloc, tasty, tasty-hunit
-     , tasty-quickcheck, template-haskell, temporary, text
-     , th-lift-instances, time, transformers, vector
+    ({ mkDerivation, aeson, alex, ansi-terminal, array, base, binary
+     , blaze-html, bytestring, containers, data-binary-ieee754
+     , directory, directory-tree, dlist, file-embed, filepath, free
+     , gitrev, happy, haskeline, http-client, http-client-tls
+     , http-conduit, language-c-quote, mainland-pretty, markdown
+     , megaparsec, mtl, neat-interpolation, parallel, parser-combinators
+     , process, process-extras, QuickCheck, random, regex-tdfa, srcloc
+     , tasty, tasty-hunit, tasty-quickcheck, template-haskell, temporary
+     , text, time, transformers, utf8-string, vector
      , vector-binary-instances, versions, zip-archive, zlib
      }:
      mkDerivation {
        pname = "futhark";
-       version = "0.9.1";
-       sha256 = "1l7i4xxh9zb53qqzznqj6kkh6p67a11kkr5839c9kkjwnb6sc86k";
+       version = "0.10.1";
+       sha256 = "03lmzl9z75vfy0phr1vkcxjkqhl1n9avkib7awflib90a6jhpl15";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson ansi-terminal array base bifunctors binary blaze-html
-         bytestring containers data-binary-ieee754 directory directory-tree
-         dlist extra file-embed filepath free gitrev haskeline http-client
+         aeson ansi-terminal array base binary blaze-html bytestring
+         containers data-binary-ieee754 directory directory-tree dlist
+         file-embed filepath free gitrev haskeline http-client
          http-client-tls http-conduit language-c-quote mainland-pretty
          markdown megaparsec mtl neat-interpolation parallel
-         parser-combinators process process-extras random raw-strings-qq
-         regex-tdfa srcloc template-haskell temporary text th-lift-instances
-         time transformers vector vector-binary-instances versions
-         zip-archive zlib
+         parser-combinators process process-extras random regex-tdfa srcloc
+         template-haskell temporary text time transformers utf8-string
+         vector vector-binary-instances versions zip-archive zlib
        ];
        libraryToolDepends = [ alex happy ];
-       executableHaskellDepends = [
-         aeson ansi-terminal array base bifunctors binary blaze-html
-         bytestring containers data-binary-ieee754 directory directory-tree
-         dlist extra file-embed filepath free gitrev haskeline http-client
-         http-client-tls http-conduit language-c-quote mainland-pretty
-         markdown megaparsec mtl neat-interpolation parallel
-         parser-combinators process process-extras random raw-strings-qq
-         regex-tdfa srcloc template-haskell temporary text th-lift-instances
-         time transformers vector vector-binary-instances versions
-         zip-archive zlib
-       ];
+       executableHaskellDepends = [ base text ];
        testHaskellDepends = [
-         aeson ansi-terminal array base bifunctors binary blaze-html
-         bytestring containers data-binary-ieee754 directory directory-tree
-         dlist extra file-embed filepath free gitrev haskeline http-client
-         http-client-tls http-conduit HUnit language-c-quote mainland-pretty
-         markdown megaparsec mtl neat-interpolation parallel
-         parser-combinators process process-extras QuickCheck random
-         raw-strings-qq regex-tdfa srcloc tasty tasty-hunit tasty-quickcheck
-         template-haskell temporary text th-lift-instances time transformers
-         vector vector-binary-instances versions zip-archive zlib
+         base containers megaparsec mtl parser-combinators QuickCheck tasty
+         tasty-hunit tasty-quickcheck text
        ];
        description = "An optimising compiler for a functional, array-oriented language";
        license = stdenv.lib.licenses.isc;
@@ -86568,21 +86869,21 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "generic-data_0_5_0_0" = callPackage
+  "generic-data_0_6_0_0" = callPackage
     ({ mkDerivation, base, base-orphans, contravariant, generic-lens
      , one-liner, show-combinators, tasty, tasty-hunit
      }:
      mkDerivation {
        pname = "generic-data";
-       version = "0.5.0.0";
-       sha256 = "1hy43a1f5y1ymszilz908sl7an7hj7sz7yzchhxh83ki2sf0ya7s";
+       version = "0.6.0.0";
+       sha256 = "0aiz7m78ysmx31754g28x0zls1kds12p2h3n35k7mxf7g1lla6fx";
        libraryHaskellDepends = [
          base base-orphans contravariant show-combinators
        ];
        testHaskellDepends = [
          base generic-lens one-liner tasty tasty-hunit
        ];
-       description = "Utilities for GHC.Generics";
+       description = "Deriving instances with GHC.Generics and related utilities";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -88347,8 +88648,8 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-events";
-       version = "0.8.0.1";
-       sha256 = "1658lr4av48y8m0p5fs3sjxkkbdkwdf6m02byzw69gqg3xzz1i99";
+       version = "0.8.0.2";
+       sha256 = "1cg2p0scnjk4ijr1kjp41d2kls2v7ixsfhdv5331bs04nah06ddy";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -96672,8 +96973,8 @@ self: {
      }:
      mkDerivation {
        pname = "graphmod";
-       version = "1.4.2";
-       sha256 = "196647zh8cz7gpm7z18wqsx0rad3mvq7qrl20varvi34hxck6fwq";
+       version = "1.4.3";
+       sha256 = "1hcj1pmb65a4wkdn2d1p6b7hf91p4dqb9gprihrldfc6xii3hc3z";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -97116,6 +97417,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "greskell-core_0_1_2_5" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, doctest
+     , doctest-discover, hashable, hspec, QuickCheck, scientific
+     , semigroups, text, unordered-containers, uuid, vector
+     }:
+     mkDerivation {
+       pname = "greskell-core";
+       version = "0.1.2.5";
+       sha256 = "1lxz9l968f8jgyyqvph3rvsfnh0kqdmnam95cn97jrfwcndc0wmp";
+       libraryHaskellDepends = [
+         aeson base containers hashable scientific semigroups text
+         unordered-containers uuid vector
+       ];
+       testHaskellDepends = [
+         aeson base bytestring doctest doctest-discover hspec QuickCheck
+         text unordered-containers vector
+       ];
+       description = "Haskell binding for Gremlin graph query language - core data types and tools";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "greskell-websocket" = callPackage
     ({ mkDerivation, aeson, async, base, base64-bytestring, bytestring
      , greskell-core, hashtables, hspec, safe-exceptions, stm, text
@@ -100295,8 +100618,8 @@ self: {
      }:
      mkDerivation {
        pname = "hadolint";
-       version = "1.16.2";
-       sha256 = "1icycnpvp9xc4v02z7sbjjv3g9cx82kssxc0aqzylvskmc1aw1jy";
+       version = "1.16.3";
+       sha256 = "0wpgj4gp6xjgk2564219cg3w54a3lfb9p3bmgdkf1pm6ilbzbf2n";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -102913,8 +103236,8 @@ self: {
     ({ mkDerivation, base, QuickCheck }:
      mkDerivation {
        pname = "has";
-       version = "0.5.0.1";
-       sha256 = "0zydwhr2ac66knmrlf0b9vsys61w6370g9rid2gag2dvmy7xqp2s";
+       version = "0.6.0.1";
+       sha256 = "1w2pdc4vyxd0wl700ba077d5aw7nkjw7nqhm8ydnsjgrv3xvhgah";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base QuickCheck ];
@@ -106466,24 +106789,28 @@ self: {
 
   "haskoin-node" = callPackage
     ({ mkDerivation, base, bytestring, cereal, conduit, conduit-extra
-     , data-default, hashable, haskoin-core, hspec, hspec-discover
-     , HUnit, monad-logger, mtl, network, nqe, random, resourcet
-     , rocksdb-haskell, rocksdb-query, safe, string-conversions, text
-     , time, transformers, unliftio, unordered-containers
+     , containers, data-default, hashable, haskoin-core, hspec
+     , hspec-discover, HUnit, monad-logger, mtl, network, nqe, random
+     , resourcet, rocksdb-haskell, rocksdb-query, safe
+     , string-conversions, text, time, transformers, unliftio
+     , unordered-containers
      }:
      mkDerivation {
        pname = "haskoin-node";
-       version = "0.9.5";
-       sha256 = "1c0nms9q9x0fsg1hkn5kz8jpal79b0143yca156nb563bdlx0pfd";
+       version = "0.9.6";
+       sha256 = "1mcncj4j5xa650y36irffrbpb5r79xna84vpjyc21nkdqag0yqa3";
        libraryHaskellDepends = [
-         base bytestring cereal conduit conduit-extra data-default hashable
-         haskoin-core monad-logger mtl network nqe random resourcet
-         rocksdb-haskell rocksdb-query string-conversions text time
-         transformers unliftio unordered-containers
+         base bytestring cereal conduit conduit-extra containers
+         data-default hashable haskoin-core monad-logger mtl network nqe
+         random resourcet rocksdb-haskell rocksdb-query string-conversions
+         text time transformers unliftio unordered-containers
        ];
        testHaskellDepends = [
-         base bytestring cereal haskoin-core hspec HUnit monad-logger mtl
-         network nqe random rocksdb-haskell safe unliftio
+         base bytestring cereal conduit conduit-extra containers
+         data-default hashable haskoin-core hspec HUnit monad-logger mtl
+         network nqe random resourcet rocksdb-haskell rocksdb-query safe
+         string-conversions text time transformers unliftio
+         unordered-containers
        ];
        testToolDepends = [ hspec-discover ];
        description = "Haskoin Node P2P library for Bitcoin and Bitcoin Cash";
@@ -106539,34 +106866,41 @@ self: {
      }) {};
 
   "haskoin-store" = callPackage
-    ({ mkDerivation, aeson, base, binary, bytestring, cereal, conduit
+    ({ mkDerivation, aeson, base, bytestring, cereal, conduit
      , containers, data-default, directory, filepath, hashable
      , haskoin-core, haskoin-node, hspec, http-types, monad-logger, mtl
-     , network, nqe, optparse-applicative, random, rocksdb-haskell
+     , network, nqe, optparse-applicative, protocol-buffers
+     , protocol-buffers-descriptor, random, rocksdb-haskell
      , rocksdb-query, scotty, string-conversions, text, time
      , transformers, unliftio, unordered-containers
      }:
      mkDerivation {
        pname = "haskoin-store";
-       version = "0.11.2";
-       sha256 = "0jjpr2a1p88dkz17q84yp7y2as2j0i5bj0x0prl1hd9yy4y3aql4";
+       version = "0.13.0";
+       sha256 = "0b34x0z44dw7k9dqn9qx66sy33jfgg7ky1ysh7cv25g1w6v7slqy";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson base bytestring cereal conduit containers data-default
-         hashable haskoin-core haskoin-node monad-logger mtl network nqe
-         random rocksdb-haskell rocksdb-query string-conversions text time
+         hashable haskoin-core haskoin-node http-types monad-logger mtl
+         network nqe protocol-buffers protocol-buffers-descriptor random
+         rocksdb-haskell rocksdb-query scotty string-conversions text time
          transformers unliftio unordered-containers
        ];
        executableHaskellDepends = [
-         aeson base binary bytestring cereal conduit data-default directory
-         filepath haskoin-core haskoin-node http-types monad-logger nqe
-         optparse-applicative rocksdb-haskell scotty string-conversions text
-         transformers unliftio unordered-containers
+         aeson base bytestring cereal conduit containers data-default
+         directory filepath hashable haskoin-core haskoin-node http-types
+         monad-logger mtl network nqe optparse-applicative protocol-buffers
+         protocol-buffers-descriptor random rocksdb-haskell rocksdb-query
+         scotty string-conversions text time transformers unliftio
+         unordered-containers
        ];
        testHaskellDepends = [
-         base data-default haskoin-core haskoin-node hspec monad-logger mtl
-         nqe rocksdb-haskell transformers unliftio unordered-containers
+         aeson base bytestring cereal conduit containers data-default
+         hashable haskoin-core haskoin-node hspec http-types monad-logger
+         mtl network nqe protocol-buffers protocol-buffers-descriptor random
+         rocksdb-haskell rocksdb-query scotty string-conversions text time
+         transformers unliftio unordered-containers
        ];
        description = "Storage and index for Bitcoin and Bitcoin Cash";
        license = stdenv.lib.licenses.publicDomain;
@@ -111585,6 +111919,8 @@ self: {
        pname = "hgeometry";
        version = "0.8.0.0";
        sha256 = "0hypd5936kssw435lcvqj9d7whdzfdfbhvi5hhbi90k5x89xfx6f";
+       revision = "1";
+       editedCabalFile = "1hln65kfw2ji43pkwipyg12i0lq9ly6p3hv2xd7vzp4pzkcpy3zz";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -112791,8 +113127,8 @@ self: {
      }:
      mkDerivation {
        pname = "hinterface";
-       version = "0.9.0";
-       sha256 = "0hkz9p3ljfqvmf07pkkijav3lppvwvyp5hvlqbqcfplmv9n84wdb";
+       version = "0.10.0";
+       sha256 = "0a89h3vn8arms93fj3p3ip208wamljkdxikkg7dlrf143iymcs8n";
        libraryHaskellDepends = [
          array async base binary bytestring containers cryptonite deepseq
          exceptions lifted-async lifted-base memory monad-control
@@ -113218,6 +113554,8 @@ self: {
        executableHaskellDepends = [ base ];
        description = "Haskell Git Helper Tool";
        license = stdenv.lib.licenses.mpl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "hjcase" = callPackage
@@ -113715,6 +114053,27 @@ self: {
        license = stdenv.lib.licenses.gpl3;
      }) {};
 
+  "hledger-makeitso" = callPackage
+    ({ mkDerivation, base, containers, foldl, HUnit, stm, text, time
+     , turtle
+     }:
+     mkDerivation {
+       pname = "hledger-makeitso";
+       version = "0.9.0.1";
+       sha256 = "1114yxv9n7zpay1yn962jjrdmaryv3f4p4aiqph1h0b2zj4bli0r";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers foldl stm text time turtle
+       ];
+       executableHaskellDepends = [ base text turtle ];
+       testHaskellDepends = [
+         base containers foldl HUnit stm text turtle
+       ];
+       description = "An hledger workflow focusing on automated statement import and classification";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "hledger-ui" = callPackage
     ({ mkDerivation, ansi-terminal, async, base, base-compat-batteries
      , brick, cmdargs, containers, data-default, directory, filepath
@@ -115807,8 +116166,8 @@ self: {
      }:
      mkDerivation {
        pname = "hoogle";
-       version = "5.0.17.5";
-       sha256 = "1vpx6v8b0jixn82iqz085w2qpyj5pl2qyhrcd0a4p0vs5qmplf60";
+       version = "5.0.17.6";
+       sha256 = "0kgcgadrp02pcwp0pp56p09kvw3k9i6n4r7qsms3lagq1wcar4dv";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -117729,6 +118088,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hs-functors_0_1_4_0" = callPackage
+    ({ mkDerivation, base, transformers }:
+     mkDerivation {
+       pname = "hs-functors";
+       version = "0.1.4.0";
+       sha256 = "0crih1v1zg0w1m4xcsz1v00j4x2w82fdd17bkhiqa1d56kx3d1af";
+       libraryHaskellDepends = [ base transformers ];
+       description = "Functors from products of Haskell and its dual to Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hs-gchart" = callPackage
     ({ mkDerivation, base, mtl }:
      mkDerivation {
@@ -118000,6 +118371,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hs-profunctors" = callPackage
+    ({ mkDerivation, base, hs-functors }:
+     mkDerivation {
+       pname = "hs-profunctors";
+       version = "0.1.0.0";
+       sha256 = "09iylf1xjxsikjyaib9902na33bkfs8nv3wasyvikg4g82xqay5y";
+       libraryHaskellDepends = [ base hs-functors ];
+       description = "Profunctors from Haskell to Haskell";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hs-re" = callPackage
     ({ mkDerivation, array, base, regex-base, regex-posix }:
      mkDerivation {
@@ -120309,14 +120691,14 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hspec_2_7_0" = callPackage
+  "hspec_2_7_1" = callPackage
     ({ mkDerivation, base, hspec-core, hspec-discover
      , hspec-expectations, QuickCheck
      }:
      mkDerivation {
        pname = "hspec";
-       version = "2.7.0";
-       sha256 = "1qbikvd91cimbn439zwsdcrz0hsl7n2w4cl0vlcw8kbf94nm6z7z";
+       version = "2.7.1";
+       sha256 = "1x8rcr7j1azcaw0fg1xzp8j0gr4ias36z09aj24i4xp8pnyfp341";
        libraryHaskellDepends = [
          base hspec-core hspec-discover hspec-expectations QuickCheck
        ];
@@ -120396,7 +120778,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hspec-core_2_7_0" = callPackage
+  "hspec-core_2_7_1" = callPackage
     ({ mkDerivation, ansi-terminal, array, base, call-stack, clock
      , deepseq, directory, filepath, hspec-expectations, hspec-meta
      , HUnit, process, QuickCheck, quickcheck-io, random, setenv
@@ -120404,8 +120786,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-core";
-       version = "2.7.0";
-       sha256 = "1y4j0ivngz7jrff1riyy2iirnb5kc9p4cr619wdrsrvrm3blgzrz";
+       version = "2.7.1";
+       sha256 = "08vk8588lap00hsln8zl64dazbb28lzk4b4h5vnm7xvhg7r21k1c";
        libraryHaskellDepends = [
          ansi-terminal array base call-stack clock deepseq directory
          filepath hspec-expectations HUnit QuickCheck quickcheck-io random
@@ -120461,13 +120843,13 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "hspec-discover_2_7_0" = callPackage
+  "hspec-discover_2_7_1" = callPackage
     ({ mkDerivation, base, directory, filepath, hspec-meta, QuickCheck
      }:
      mkDerivation {
        pname = "hspec-discover";
-       version = "2.7.0";
-       sha256 = "1n3by0dn3x3kfy7vnyfdz0dr2wwwj82m0ijlm9s1n6aa976xddhw";
+       version = "2.7.1";
+       sha256 = "0r47fm94wa6qrhp8cc1zzkjrxc32rnagfn9m9ga4dm6p6ydw4c8b";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base directory filepath ];
@@ -123599,8 +123981,8 @@ self: {
      }:
      mkDerivation {
        pname = "http2-client-grpc";
-       version = "0.5.0.4";
-       sha256 = "1277qp7gvwvqb12pz6j2nm08zdgx9nia4zak9d4pyw147dcf9qwv";
+       version = "0.6.0.0";
+       sha256 = "0cf6asfh8wmjh1j0i1ldh557n33q1k1kfj604rz7rrrcarmn0m5h";
        libraryHaskellDepends = [
          async base binary bytestring case-insensitive data-default-class
          http2 http2-client http2-grpc-types lens proto-lens text tls
@@ -123618,10 +124000,8 @@ self: {
      }:
      mkDerivation {
        pname = "http2-grpc-types";
-       version = "0.3.0.0";
-       sha256 = "0r3gfc8alm535hqmyy39hd7nhpp3dmba52l4wf38bj7j3ckggpy5";
-       revision = "2";
-       editedCabalFile = "0b3dpd1krsaxxbg08vp9m2r2f2w4ab1dylb6bp945dfyr7fl6c1c";
+       version = "0.4.0.0";
+       sha256 = "1h15smbncifn0c9n0dmwzpwr0fnb3jby9zch71rmsnsirclycsb5";
        libraryHaskellDepends = [
          base binary bytestring case-insensitive proto-lens zlib
        ];
@@ -124481,6 +124861,30 @@ self: {
        broken = true;
      }) {};
 
+  "hw-bits_0_7_0_6" = callPackage
+    ({ mkDerivation, base, bytestring, criterion, hedgehog, hspec
+     , hspec-discover, hw-hspec-hedgehog, hw-int, hw-prim
+     , hw-string-parse, QuickCheck, safe, vector
+     }:
+     mkDerivation {
+       pname = "hw-bits";
+       version = "0.7.0.6";
+       sha256 = "0c3bfr4x52fvvp3yin54xbfxz7nq936v2ac89vcim1gscyw51hvm";
+       libraryHaskellDepends = [
+         base bytestring hw-int hw-prim hw-string-parse safe vector
+       ];
+       testHaskellDepends = [
+         base bytestring hedgehog hspec hw-hspec-hedgehog hw-prim QuickCheck
+         vector
+       ];
+       testToolDepends = [ hspec-discover ];
+       benchmarkHaskellDepends = [ base criterion vector ];
+       description = "Bit manipulation";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "hw-conduit" = callPackage
     ({ mkDerivation, array, base, bytestring, conduit
      , conduit-combinators, criterion, hspec, mmap, time, transformers
@@ -124680,8 +125084,8 @@ self: {
     ({ mkDerivation, base, hedgehog, vector }:
      mkDerivation {
        pname = "hw-hedgehog";
-       version = "0.1.0.2";
-       sha256 = "0fk5qgn011j7cb75xi434vk0vq4bl8w9lrs6hpf45c8mv4c48vby";
+       version = "0.1.0.3";
+       sha256 = "0cck3kxxc7fxfqji9jv15vc9v1zpqz7rzacxfcjc0i6s1ll9vbv2";
        libraryHaskellDepends = [ base hedgehog vector ];
        testHaskellDepends = [ base ];
        description = "Extra hedgehog functionality";
@@ -124752,14 +125156,14 @@ self: {
        broken = true;
      }) {};
 
-  "hw-ip_2_3_0_0" = callPackage
+  "hw-ip_2_3_1_0" = callPackage
     ({ mkDerivation, appar, base, containers, generic-lens, hedgehog
      , hspec, hw-bits, hw-hspec-hedgehog, iproute, text
      }:
      mkDerivation {
        pname = "hw-ip";
-       version = "2.3.0.0";
-       sha256 = "1i5k74gagcijykvdfjy8c97a3bkbab51q7y4hmhvqkx7gsn3lsl5";
+       version = "2.3.1.0";
+       sha256 = "19a2z6lx064y4y2qzhfzzwwpy4hisf86a57ah1f9jjjrvnxr1363";
        libraryHaskellDepends = [
          appar base containers generic-lens hw-bits iproute text
        ];
@@ -125071,6 +125475,32 @@ self: {
        broken = true;
      }) {};
 
+  "hw-prim_0_6_2_23" = callPackage
+    ({ mkDerivation, base, bytestring, criterion, directory, exceptions
+     , hedgehog, hspec, hspec-discover, hw-hspec-hedgehog, mmap
+     , QuickCheck, semigroups, transformers, vector
+     }:
+     mkDerivation {
+       pname = "hw-prim";
+       version = "0.6.2.23";
+       sha256 = "1kilyiq6gj44gz9hqy11ab1sm4j399rkz5k0a98fpzjd6b7ndrmy";
+       libraryHaskellDepends = [
+         base bytestring mmap semigroups transformers vector
+       ];
+       testHaskellDepends = [
+         base bytestring directory exceptions hedgehog hspec
+         hw-hspec-hedgehog mmap QuickCheck semigroups transformers vector
+       ];
+       testToolDepends = [ hspec-discover ];
+       benchmarkHaskellDepends = [
+         base bytestring criterion mmap semigroups transformers vector
+       ];
+       description = "Primitive functions and data types";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "hw-prim-bits" = callPackage
     ({ mkDerivation, base, criterion, hedgehog, hspec, hw-hedgehog
      , hw-hspec-hedgehog, QuickCheck, vector
@@ -125128,6 +125558,42 @@ self: {
        broken = true;
      }) {};
 
+  "hw-rankselect_0_13_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, conduit, criterion, deepseq
+     , directory, generic-lens, hedgehog, hspec, hspec-discover
+     , hw-balancedparens, hw-bits, hw-hedgehog, hw-hspec-hedgehog
+     , hw-prim, hw-rankselect-base, lens, mmap, mtl
+     , optparse-applicative, QuickCheck, resourcet, transformers, vector
+     }:
+     mkDerivation {
+       pname = "hw-rankselect";
+       version = "0.13.0.0";
+       sha256 = "13cdsrg7akizf5gcjvpwr8mwhl6ds9n3y7ql559w52xy5s8viqzv";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base deepseq hw-balancedparens hw-bits hw-prim hw-rankselect-base
+         vector
+       ];
+       executableHaskellDepends = [
+         base directory generic-lens hw-bits hw-prim hw-rankselect-base lens
+         mmap mtl optparse-applicative vector
+       ];
+       testHaskellDepends = [
+         base directory hedgehog hspec hw-bits hw-hedgehog hw-hspec-hedgehog
+         hw-prim hw-rankselect-base mmap QuickCheck transformers vector
+       ];
+       testToolDepends = [ hspec-discover ];
+       benchmarkHaskellDepends = [
+         base bytestring conduit criterion directory hw-bits hw-prim
+         hw-rankselect-base mmap resourcet vector
+       ];
+       description = "Rank-select";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "hw-rankselect-base" = callPackage
     ({ mkDerivation, base, bits-extra, criterion, hedgehog, hspec
      , hw-bits, hw-hedgehog, hw-hspec-hedgehog, hw-int, hw-prim
@@ -125413,23 +125879,22 @@ self: {
   "hwormhole" = callPackage
     ({ mkDerivation, aeson, async, base, binary, binary-conduit
      , bytestring, conduit, conduit-extra, containers, cryptonite
-     , directory, filepath, haskeline, hedgehog, hex, hspec
-     , magic-wormhole, memory, mtl, network, network-info
-     , optparse-applicative, pathwalk, protolude, random, saltine
-     , spake2, temporary, text, transformers, unix-compat, zip
+     , directory, filepath, haskeline, hedgehog, hspec, magic-wormhole
+     , memory, mtl, network, network-info, optparse-applicative
+     , pathwalk, pgp-wordlist, protolude, random, saltine, spake2
+     , temporary, text, transformers, unix-compat, zip
      }:
      mkDerivation {
        pname = "hwormhole";
-       version = "0.2.0.0";
-       sha256 = "0y0wg4zxq8wzym8x7b103h0ai2z5ji22vvqz4i64pnzq83ksmxym";
+       version = "0.2.0.1";
+       sha256 = "1y3x13lh1g048a1myk5kkm078b34p4rdfhjcvfc991ys5zc46sir";
        isLibrary = true;
        isExecutable = true;
-       enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson async base binary bytestring conduit conduit-extra containers
-         cryptonite directory filepath haskeline hex magic-wormhole memory
-         mtl network network-info pathwalk protolude random saltine spake2
-         temporary text transformers unix-compat zip
+         cryptonite directory filepath haskeline magic-wormhole memory mtl
+         network network-info pathwalk pgp-wordlist protolude random saltine
+         spake2 temporary text transformers unix-compat zip
        ];
        executableHaskellDepends = [
          aeson base binary bytestring optparse-applicative protolude text
@@ -128092,8 +128557,8 @@ self: {
      }:
      mkDerivation {
        pname = "imperative-edsl";
-       version = "0.7.1";
-       sha256 = "0cia9yq5z7h3024kwhwjzzaq97281aib1nwimj6b4rp425yfybfr";
+       version = "0.8";
+       sha256 = "0mz6yy472wvcg4ywjhaaqi0cxyy9l437pw4rkwd2j392n6hlfbar";
        libraryHaskellDepends = [
          array base BoundedChan containers data-default-class deepseq
          directory exception-transformers ghc-prim language-c-quote
@@ -128500,6 +128965,26 @@ self: {
        license = stdenv.lib.licenses.gpl3;
      }) {};
 
+  "incremental-parser_0_3_2_2" = callPackage
+    ({ mkDerivation, base, bytestring, checkers, criterion, deepseq
+     , monoid-subclasses, QuickCheck, tasty, tasty-quickcheck, text
+     }:
+     mkDerivation {
+       pname = "incremental-parser";
+       version = "0.3.2.2";
+       sha256 = "0mnqi0fnh5sl1fp74gcwvfm6mxhzrs1x7yl235yl0dhcyjp3vfx7";
+       libraryHaskellDepends = [ base monoid-subclasses ];
+       testHaskellDepends = [
+         base checkers monoid-subclasses QuickCheck tasty tasty-quickcheck
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring criterion deepseq monoid-subclasses text
+       ];
+       description = "Generic parser library capable of providing partial results from partial input";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "incremental-sat-solver" = callPackage
     ({ mkDerivation, base, containers, mtl }:
      mkDerivation {
@@ -128951,6 +129436,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "influxdb_1_6_1_3" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, Cabal
+     , cabal-doctest, clock, containers, doctest, foldl, http-client
+     , http-types, lens, network, optional-args, scientific, tagged
+     , template-haskell, text, time, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "influxdb";
+       version = "1.6.1.3";
+       sha256 = "1l03bwmwxb42cha8v3fj616ks927mcklxrmqxrr1ms53m7bsa587";
+       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 doctest template-haskell ];
+       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
@@ -132498,8 +133007,8 @@ self: {
     ({ mkDerivation, base, hspec, QuickCheck, time }:
      mkDerivation {
        pname = "japanese-calendar";
-       version = "0.1.0.2";
-       sha256 = "1dkfp2qj588nnd5r3ad37145n3mjm76h9pc2y7ga9s76cvi52xqy";
+       version = "0.1.1.0";
+       sha256 = "0nii20qc7w0m2kjbbhg91iad497hlrd35l29xri0lrjmk9s1hsnw";
        libraryHaskellDepends = [ base time ];
        testHaskellDepends = [ base hspec QuickCheck time ];
        description = "Data type of Japanese Calendar (Wareki)";
@@ -133982,8 +134491,8 @@ self: {
        pname = "json-rpc-client";
        version = "0.2.5.0";
        sha256 = "177lrw5m9dxdk6mcay0f92rwyih8q7znwb8m6da6r3zsn30gajak";
-       revision = "9";
-       editedCabalFile = "04b65m8lhk2g2d5x5i637ff3wkgvf4z6dhn5x1pizsj9y3aq35zm";
+       revision = "10";
+       editedCabalFile = "19vf7gibvqgcm27b5n0ls4s7wi1kr87crn776ifqc9gbr2l9bfpi";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -135275,7 +135784,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "katip_0_8_1_0" = callPackage
+  "katip_0_8_2_0" = callPackage
     ({ mkDerivation, aeson, async, auto-update, base, blaze-builder
      , bytestring, containers, criterion, deepseq, directory, either
      , filepath, hostname, microlens, microlens-th, monad-control, mtl
@@ -135287,8 +135796,8 @@ self: {
      }:
      mkDerivation {
        pname = "katip";
-       version = "0.8.1.0";
-       sha256 = "1x03k700c59icr049685y0lpyqjg27mpm1z5g69zy3gh3b87sb0j";
+       version = "0.8.2.0";
+       sha256 = "064i2dbl52i2z7lyvk01ayvf6dzzn20bac3fwh0dlvr5bn49wran";
        libraryHaskellDepends = [
          aeson async auto-update base bytestring containers either hostname
          microlens microlens-th monad-control mtl old-locale resourcet
@@ -136154,6 +136663,17 @@ self: {
        broken = true;
      }) {};
 
+  "key" = callPackage
+    ({ mkDerivation, base, transformers }:
+     mkDerivation {
+       pname = "key";
+       version = "0.1.1.0";
+       sha256 = "15n53kq13hhc659s1hq9wdr530da3h2mg5psncq1d2snkkdswqxf";
+       libraryHaskellDepends = [ base transformers ];
+       description = "Type-safe unconstrained dynamic typing";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "key-state" = callPackage
     ({ mkDerivation, base, hspec }:
      mkDerivation {
@@ -136183,6 +136703,8 @@ self: {
        ];
        testHaskellDepends = [ base ];
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "keycode" = callPackage
@@ -137281,14 +137803,17 @@ self: {
      }) {};
 
   "lambda-options" = callPackage
-    ({ mkDerivation, base, containers, mtl, read-bounded }:
+    ({ mkDerivation, base, containers, funspection, mtl, read-bounded
+     }:
      mkDerivation {
        pname = "lambda-options";
-       version = "0.9.1.0";
-       sha256 = "0rylch5v4lpd5ynyhrzzj72npqdv6q8mp2rx9v7p641r0njw5r5n";
-       libraryHaskellDepends = [ base containers mtl read-bounded ];
-       description = "Declarative command line parser using type-driven pattern matching";
-       license = stdenv.lib.licenses.bsd2;
+       version = "1.0.0.0";
+       sha256 = "1cpd5s0m10d09mqbpy1qxnrpy8np21ci6fcd09d01xj7lx8p2yzx";
+       libraryHaskellDepends = [
+         base containers funspection mtl read-bounded
+       ];
+       description = "Declarative command-line parser using type-driven pattern matching";
+       license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
        broken = true;
      }) {};
@@ -138095,8 +138620,8 @@ self: {
      }:
      mkDerivation {
        pname = "language-ats";
-       version = "1.7.0.6";
-       sha256 = "0d2bjha52jph49jiac045igpxarrksihvv46s047qigs435linck";
+       version = "1.7.1.1";
+       sha256 = "0zqvr8z0mdjjdd9wx3ghf4aiv61brs52wk04d2vqar8nvv2wpzn4";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          ansi-wl-pprint array base composition-prelude containers deepseq
@@ -138234,6 +138759,41 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "language-c99" = callPackage
+    ({ mkDerivation, base, pretty }:
+     mkDerivation {
+       pname = "language-c99";
+       version = "0.1.1";
+       sha256 = "1a6n9n3jzplwgm6136rvhm6zmkvnhxz0nw1bfplikg8kkfgbp5al";
+       libraryHaskellDepends = [ base pretty ];
+       description = "An implementation of the C99 AST that strictly follows the standard";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
+  "language-c99-simple" = callPackage
+    ({ mkDerivation, base, language-c99, language-c99-util, mtl }:
+     mkDerivation {
+       pname = "language-c99-simple";
+       version = "0.1.1";
+       sha256 = "15as36j4bsxxy59683h5p6k0r9d21pv5kr90nr82d2lmnwf46xic";
+       libraryHaskellDepends = [
+         base language-c99 language-c99-util mtl
+       ];
+       description = "C-like AST to simplify writing C99 programs";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
+  "language-c99-util" = callPackage
+    ({ mkDerivation, base, language-c99 }:
+     mkDerivation {
+       pname = "language-c99-util";
+       version = "0.1.1";
+       sha256 = "0rdwb29d2aa9mqkn5b4acwviymxy18sjfmzr01j7n3j4n3q4d2lz";
+       libraryHaskellDepends = [ base language-c99 ];
+       description = "Utilities for language-c99";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "language-cil" = callPackage
     ({ mkDerivation, base, bool-extras }:
      mkDerivation {
@@ -140683,8 +141243,8 @@ self: {
        pname = "lens-properties";
        version = "4.11.1";
        sha256 = "1caciyn75na3f25q9qxjl7ibjam22xlhl5k2pqfiak10lxsmnz2g";
-       revision = "2";
-       editedCabalFile = "1b14fcncz2yby0d4jhx2h0ma6nx0fd1z7hrg1va4h7zn06m99482";
+       revision = "3";
+       editedCabalFile = "1ll8j0zymxnr2xxp2h1aaqfcwd6ihjdllk5b7q02r5kw2b8a266b";
        libraryHaskellDepends = [ base lens QuickCheck transformers ];
        description = "QuickCheck properties for lens";
        license = stdenv.lib.licenses.bsd3;
@@ -140870,10 +141430,8 @@ self: {
      }:
      mkDerivation {
        pname = "lentil";
-       version = "1.1.1.1";
-       sha256 = "00ydjvvpqil044wjb52cf804qn8fdqvf3rn3jghinb10y8i4a62k";
-       revision = "1";
-       editedCabalFile = "1vamkgjrngsdq8k820xkr0h613ly2s3lpf0hdqkvqkynywmd2ing";
+       version = "1.1.2.0";
+       sha256 = "1zhn8wpm1hd50j0nc776d9f3jq46lk5d62srrd66abfkvqxfxw6b";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -140913,8 +141471,8 @@ self: {
        pname = "lenz-template";
        version = "0.2.0.0";
        sha256 = "0g073wfh8522hvmy80dp8an5jr6qjnkfj3119ms3sir7dkfzljqn";
-       revision = "2";
-       editedCabalFile = "0vd1xir15fizd2j575lgbr99gdm83n998w645cr0pzv3li6a56jq";
+       revision = "3";
+       editedCabalFile = "1ydlnn3cppjr3c0ink0k0668dmxk057gild2k84j8f27hcyb0w2j";
        libraryHaskellDepends = [
          base base-unicode-symbols containers lenz template-haskell
        ];
@@ -141222,15 +141780,15 @@ self: {
      }) {};
 
   "libarchive" = callPackage
-    ({ mkDerivation, base, bytestring, c2hs, composition-prelude
+    ({ mkDerivation, base, bytestring, c2hs, composition-prelude, dlist
      , filepath, libarchive
      }:
      mkDerivation {
        pname = "libarchive";
-       version = "1.0.3.0";
-       sha256 = "1ps6wnp5bzlq0ma9d3c5xr1dh2sxn8sx3lg66jx7pqv2s4xnjm41";
+       version = "1.0.5.0";
+       sha256 = "0ndla9nkrgc3q10dp2c407whqfwcwjv95rd22cmjx70c3609mm9r";
        libraryHaskellDepends = [
-         base bytestring composition-prelude filepath
+         base bytestring composition-prelude dlist filepath
        ];
        libraryPkgconfigDepends = [ libarchive ];
        libraryToolDepends = [ c2hs ];
@@ -143442,6 +144000,7 @@ self: {
        doCheck = false;
        description = "Predicate Abstraction-based Horn-Clause/Implication Constraint Solver";
        license = stdenv.lib.licenses.bsd3;
+       maintainers = with stdenv.lib.maintainers; [ peti ];
      }) {inherit (pkgs) git; inherit (pkgs) nettools; 
          inherit (pkgs) ocaml; inherit (pkgs) z3;};
 
@@ -143484,6 +144043,7 @@ self: {
        testSystemDepends = [ z3 ];
        description = "Liquid Types for Haskell";
        license = stdenv.lib.licenses.bsd3;
+       maintainers = with stdenv.lib.maintainers; [ peti ];
      }) {inherit (pkgs) z3;};
 
   "liquidhaskell-cabal" = callPackage
@@ -146059,8 +146619,8 @@ self: {
        pname = "lrucaching";
        version = "0.3.3";
        sha256 = "192a2zap1bmxa2y48n48rmngf18fr8k0az4a230hziv3g795yzma";
-       revision = "6";
-       editedCabalFile = "1zkf8ss6siai3py4drb5hr0m3np2kk3vrzb6kcxhq0vxxz3xynjh";
+       revision = "7";
+       editedCabalFile = "0bwl2hpj0w1wg86az52iwz0afs1h99b599vdn0fgygw2ivhbvqjv";
        libraryHaskellDepends = [
          base base-compat deepseq hashable psqueues vector
        ];
@@ -148853,6 +149413,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "massiv_0_3_0_0" = callPackage
+    ({ mkDerivation, async, base, bytestring, Cabal, cabal-doctest
+     , containers, data-default, data-default-class, deepseq, doctest
+     , exceptions, hspec, primitive, QuickCheck, scheduler
+     , template-haskell, unliftio, unliftio-core, vector
+     }:
+     mkDerivation {
+       pname = "massiv";
+       version = "0.3.0.0";
+       sha256 = "17hi5n8jg15kljnhbl3crqpkqfm4wj2rdz6r9fyqqh2ky8l50c6j";
+       setupHaskellDepends = [ base Cabal cabal-doctest ];
+       libraryHaskellDepends = [
+         base bytestring data-default-class deepseq exceptions primitive
+         scheduler unliftio-core vector
+       ];
+       testHaskellDepends = [
+         async base bytestring containers data-default deepseq doctest hspec
+         QuickCheck scheduler template-haskell unliftio vector
+       ];
+       description = "Massiv (Массив) is an Array Library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "massiv-io" = callPackage
     ({ mkDerivation, base, bytestring, data-default, deepseq, directory
      , filepath, JuicyPixels, massiv, netpbm, process, vector
@@ -148889,20 +149473,18 @@ self: {
   "massiv-scheduler" = callPackage
     ({ mkDerivation, atomic-primops, base, Cabal, cabal-doctest
      , deepseq, doctest, exceptions, hspec, QuickCheck, template-haskell
-     , unliftio-core
+     , unliftio, unliftio-core
      }:
      mkDerivation {
        pname = "massiv-scheduler";
-       version = "0.1.0.0";
-       sha256 = "0yqcpcaff6hx8pn39bh88s5g9nryc4qyr3765wbqbh02fbrjpxkq";
-       revision = "1";
-       editedCabalFile = "1mlbhm8scqlpkqjlc34wmpinvx2lpihhi8jkn99plhxh1s37ai8j";
+       version = "0.1.1.0";
+       sha256 = "1i2j1gapkpx4n7x2s3nnsmns55hl4nrk4csgxak05gnj66p938v3";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          atomic-primops base deepseq exceptions unliftio-core
        ];
        testHaskellDepends = [
-         base deepseq doctest hspec QuickCheck template-haskell
+         base deepseq doctest hspec QuickCheck template-haskell unliftio
        ];
        description = "Work stealing scheduler for Massiv (Массив) and other parallel applications";
        license = stdenv.lib.licenses.bsd3;
@@ -149397,6 +149979,8 @@ self: {
        ];
        description = "Terminal client for the Mattermost chat system";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "mattermost-api" = callPackage
@@ -150703,6 +151287,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "menshen_0_0_3" = callPackage
+    ({ mkDerivation, aeson, base, hspec, QuickCheck, regex-tdfa
+     , scientific, text
+     }:
+     mkDerivation {
+       pname = "menshen";
+       version = "0.0.3";
+       sha256 = "0zx530ksb0zmczbl6k70xg6pxgr2wfga2pg0ghgmpgd9f307xrwb";
+       libraryHaskellDepends = [ base regex-tdfa scientific text ];
+       testHaskellDepends = [
+         aeson base hspec QuickCheck regex-tdfa scientific text
+       ];
+       description = "Data Validation";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "mercury-api" = callPackage
     ({ mkDerivation, ansi-terminal, base, bytestring, clock, directory
      , hashable, HUnit, optparse-applicative, text, unordered-containers
@@ -154539,12 +155140,12 @@ self: {
      }) {};
 
   "monadacme" = callPackage
-    ({ mkDerivation, base }:
+    ({ mkDerivation, base, transformers }:
      mkDerivation {
        pname = "monadacme";
-       version = "0.0.2";
-       sha256 = "1qam6k3gax2kf9zbf0q2mbsknkmx8y73i9qshbylj8wrpf896y97";
-       libraryHaskellDepends = [ base ];
+       version = "0.1.0.0";
+       sha256 = "1k1jqi0q2n34xd07qp3fd4jw48iq4909m1pq2dm90sg46n6003sr";
+       libraryHaskellDepends = [ base transformers ];
        description = "The Acme and AcmeT monads";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -155452,6 +156053,58 @@ self: {
        broken = true;
      }) {morfeusz = null;};
 
+  "morley" = callPackage
+    ({ mkDerivation, aeson, aeson-options, aeson-pretty, base-noprelude
+     , base16-bytestring, base58-bytestring, bifunctors, bytestring
+     , containers, cryptonite, data-default, directory, filepath, fmt
+     , formatting, hspec, hspec-golden-aeson, HUnit, lens, megaparsec
+     , memory, morley-prelude, mtl, named, optparse-applicative
+     , parser-combinators, pretty-simple, QuickCheck
+     , quickcheck-arbitrary-adt, quickcheck-instances, singletons, text
+     , time, timerep, transformers-compat, universum, vinyl
+     }:
+     mkDerivation {
+       pname = "morley";
+       version = "0.1.0.5";
+       sha256 = "1ymkr805wmwd3vpsyjwbfwryvixz3lpl8g24ygsv1ipc4v3cvxj4";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson aeson-options aeson-pretty base-noprelude base16-bytestring
+         base58-bytestring bifunctors bytestring containers cryptonite
+         data-default directory fmt formatting hspec lens megaparsec memory
+         morley-prelude mtl named parser-combinators QuickCheck singletons
+         text time timerep transformers-compat vinyl
+       ];
+       executableHaskellDepends = [
+         base-noprelude fmt megaparsec morley-prelude named
+         optparse-applicative pretty-simple text
+       ];
+       testHaskellDepends = [
+         aeson base-noprelude containers directory filepath fmt formatting
+         hspec hspec-golden-aeson HUnit lens megaparsec morley-prelude
+         QuickCheck quickcheck-arbitrary-adt quickcheck-instances text time
+         universum vinyl
+       ];
+       description = "Developer tools for the Michelson Language";
+       license = stdenv.lib.licenses.agpl3Plus;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
+  "morley-prelude" = callPackage
+    ({ mkDerivation, base-noprelude, universum }:
+     mkDerivation {
+       pname = "morley-prelude";
+       version = "0.1.0.3";
+       sha256 = "0rrh3zdrdyxi8hhf4iw6rxgz4cfbfm25a906k9lfxlp668nbn2si";
+       libraryHaskellDepends = [ base-noprelude universum ];
+       description = "A custom prelude used in Morley";
+       license = stdenv.lib.licenses.agpl3Plus;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "morph" = callPackage
     ({ mkDerivation, aeson, base, bytestring, directory, filepath
      , optparse-applicative, postgresql-simple, text, yaml
@@ -156066,23 +156719,20 @@ self: {
      }) {};
 
   "msgpack" = callPackage
-    ({ mkDerivation, base, binary, blaze-builder, bytestring
-     , containers, data-binary-ieee754, deepseq, hashable, mtl
-     , QuickCheck, tasty, tasty-quickcheck, text, unordered-containers
-     , vector
+    ({ mkDerivation, async, base, binary, bytestring, containers
+     , data-binary-ieee754, deepseq, hashable, mtl, QuickCheck, tasty
+     , tasty-quickcheck, text, unordered-containers, vector
      }:
      mkDerivation {
        pname = "msgpack";
-       version = "1.0.0";
-       sha256 = "0kk6nqn290sh0l0hhglccs0cqgk0fb3xdjzqz19yw9wb8aw01xh8";
-       revision = "1";
-       editedCabalFile = "0fg5hragvpil7212w7pyyiws0zlf4imas9sjj235lb1wjpka52qp";
+       version = "1.0.1.0";
+       sha256 = "1ljb9rdhdbxqs32brrwd42c8v3z7yrl6pr4mzmid1rfqdipard77";
        libraryHaskellDepends = [
-         base binary blaze-builder bytestring containers data-binary-ieee754
-         deepseq hashable mtl text unordered-containers vector
+         base binary bytestring containers data-binary-ieee754 deepseq
+         hashable mtl text unordered-containers vector
        ];
        testHaskellDepends = [
-         base bytestring QuickCheck tasty tasty-quickcheck
+         async base bytestring QuickCheck tasty tasty-quickcheck
        ];
        description = "A Haskell implementation of MessagePack";
        license = stdenv.lib.licenses.bsd3;
@@ -156142,6 +156792,8 @@ self: {
        pname = "msgpack-rpc";
        version = "1.0.0";
        sha256 = "00m5hpj5cd521j3jzsaw49asbpxvka0x1zi2qs26si82wxgnpjkn";
+       revision = "2";
+       editedCabalFile = "10vhvch66vk12gxgvivzz7x829ml8v08qcw9phylf4icwrgirn0p";
        libraryHaskellDepends = [
          base binary binary-conduit bytestring conduit conduit-extra
          exceptions monad-control msgpack mtl network random text
@@ -160147,15 +160799,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "network_3_0_1_0" = callPackage
+  "network_3_0_1_1" = callPackage
     ({ mkDerivation, base, bytestring, deepseq, directory, hspec
-     , hspec-discover, HUnit, unix
+     , hspec-discover, HUnit
      }:
      mkDerivation {
        pname = "network";
-       version = "3.0.1.0";
-       sha256 = "1dk1dabj779sppjl8vbi4kw8l5da5yfc7x5yn0mjy9zrzlfwqq3l";
-       libraryHaskellDepends = [ base bytestring deepseq unix ];
+       version = "3.0.1.1";
+       sha256 = "1xacvl5wf47cz61igb94zf961b9ks0yhr02myxgjf53clm70dg6j";
+       libraryHaskellDepends = [ base bytestring deepseq ];
        testHaskellDepends = [ base bytestring directory hspec HUnit ];
        testToolDepends = [ hspec-discover ];
        description = "Low-level networking interface";
@@ -161316,6 +161968,8 @@ self: {
        ];
        description = "Library implementing the NewHope cryptographic key-exchange protocol";
        license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "newports" = callPackage
@@ -161711,12 +162365,12 @@ self: {
      }) {};
 
   "nimber" = callPackage
-    ({ mkDerivation, arithmoi, base }:
+    ({ mkDerivation, base, integer-logarithms }:
      mkDerivation {
        pname = "nimber";
-       version = "0.1.3";
-       sha256 = "0350fmddnfp09051i89fl5ibrxqy36cx5560l00cjssx2gs2dh8w";
-       libraryHaskellDepends = [ arithmoi base ];
+       version = "0.1.4";
+       sha256 = "1k177w8lccpqq4mwj089v7fbqvbrqskqxqj0gaingm0kmskggaaj";
+       libraryHaskellDepends = [ base integer-logarithms ];
        description = "Finite nimber arithmetic";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -167856,25 +168510,25 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "pandoc-pyplot_1_1_0_0" = callPackage
-    ({ mkDerivation, base, containers, directory, filepath, hspec
-     , hspec-expectations, pandoc-types, tasty, tasty-hspec, tasty-hunit
-     , temporary, typed-process
+  "pandoc-pyplot_2_0_0_0" = callPackage
+    ({ mkDerivation, base, containers, directory, filepath, hashable
+     , hspec, hspec-expectations, pandoc-types, random, tasty
+     , tasty-hspec, tasty-hunit, temporary, text, typed-process
      }:
      mkDerivation {
        pname = "pandoc-pyplot";
-       version = "1.1.0.0";
-       sha256 = "0c04ayg4rnlycsw16gafiwvixxwc66wxfm4nk25bclbl67zyw8qj";
+       version = "2.0.0.0";
+       sha256 = "0mh934ab65fbncva9nmgs8mifsjkh57ay952wl5rn9s6037fj5m5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base containers directory filepath pandoc-types temporary
-         typed-process
+         base containers directory filepath hashable pandoc-types random
+         temporary text typed-process
        ];
        executableHaskellDepends = [ base pandoc-types ];
        testHaskellDepends = [
          base directory filepath hspec hspec-expectations pandoc-types tasty
-         tasty-hspec tasty-hunit temporary
+         tasty-hspec tasty-hunit temporary text
        ];
        description = "A Pandoc filter for including figures generated from Matplotlib";
        license = stdenv.lib.licenses.mit;
@@ -167922,6 +168576,8 @@ self: {
        pname = "pandoc-types";
        version = "1.17.5.4";
        sha256 = "09wk2zskr0r2llsyif3s0x7vix05l1ya7qacsmmkrlhba5naib1j";
+       revision = "1";
+       editedCabalFile = "0bpd2iqmriajl5qg44j4z9c4agb9gsdwbn5l4c5yry6flivysq3c";
        libraryHaskellDepends = [
          aeson base bytestring containers deepseq ghc-prim QuickCheck syb
          transformers
@@ -169335,8 +169991,8 @@ self: {
      }:
      mkDerivation {
        pname = "parsix";
-       version = "0.1.0.3";
-       sha256 = "0b3lzdyr2zbj4rnqkk4nxg2ix2ymvy3cfa7rqay31k637v441c75";
+       version = "0.1.0.4";
+       sha256 = "0ay3a07sj52r413s921519crvd3kf7i4zdmpqy6k1spzqnwzc9nc";
        libraryHaskellDepends = [
          base containers fingertree mtl parsers prettyprinter
          prettyprinter-ansi-terminal text transformers
@@ -169600,6 +170256,40 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "password" = callPackage
+    ({ mkDerivation, base, doctest, QuickCheck, quickcheck-instances
+     , scrypt, text
+     }:
+     mkDerivation {
+       pname = "password";
+       version = "0.1.0.0";
+       sha256 = "097zpb3brl7qib2a7di4y5lpkgzyqanhcyfchpf1xng199k2bwp3";
+       libraryHaskellDepends = [ base scrypt text ];
+       testHaskellDepends = [
+         base doctest QuickCheck quickcheck-instances
+       ];
+       description = "plain-text password and hashed password datatypes and functions";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "password-instances" = callPackage
+    ({ mkDerivation, aeson, base, doctest, http-api-data, password
+     , persistent, QuickCheck, quickcheck-instances
+     }:
+     mkDerivation {
+       pname = "password-instances";
+       version = "0.3.0.0";
+       sha256 = "1ll5c9dpw23v4r3zf3v7rc6y5cjh55myjdg5mvyi1d5kb95pbwp9";
+       libraryHaskellDepends = [
+         aeson base http-api-data password persistent
+       ];
+       testHaskellDepends = [
+         base doctest QuickCheck quickcheck-instances
+       ];
+       description = "typeclass instances for password package";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "passwords" = callPackage
     ({ mkDerivation, base, containers, MonadRandom, random }:
      mkDerivation {
@@ -172945,8 +173635,8 @@ self: {
     ({ mkDerivation, base, unix }:
      mkDerivation {
        pname = "pidfile";
-       version = "0.1.0.3";
-       sha256 = "12m477kinanyxi5612wz0n72qb0cymjb2x9pp0ggsngfpkqzp1j6";
+       version = "0.1.0.4";
+       sha256 = "0z0k923gb0b01r35x1qp4i1743mcn84cj3m12ss7jbxql768jigf";
        libraryHaskellDepends = [ base unix ];
        description = "Run an IO action protected by a pidfile";
        license = stdenv.lib.licenses.bsd3;
@@ -175453,8 +176143,8 @@ self: {
      }:
      mkDerivation {
        pname = "pointfree-fancy";
-       version = "1.1.1.11";
-       sha256 = "0kxk9kxqlxl0j1cq5jvcsgcfggc3xz0qi7a1qw6w1l83gs2vjjrk";
+       version = "1.1.1.12";
+       sha256 = "14ds1bqz82pdij0771q3z524x8qv11dd4gkrn5r0mafrvfw2q6as";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -183646,6 +184336,8 @@ self: {
        libraryHaskellDepends = [ base QuickCheck template-haskell ];
        description = "Get counterexamples from QuickCheck as Haskell values";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "quicklz" = callPackage
@@ -185578,10 +186270,8 @@ self: {
      }:
      mkDerivation {
        pname = "raw-feldspar";
-       version = "0.2.1";
-       sha256 = "1z2qk62p6bjcj5p7r9xdc992cacdi9f5bwxzrxiqz3m3zj7qn63w";
-       revision = "1";
-       editedCabalFile = "1y7n3l959ydvwypb27vdkkkgfglk2jwkjblnq8kqn3540jl7qfhr";
+       version = "0.3";
+       sha256 = "0kxnl7vvqkmrq2cjwgrb4342bvr8a57v652f2pd5yvndamcz5m3w";
        libraryHaskellDepends = [
          array base constraints containers data-default-class data-hash
          imperative-edsl language-c-quote mtl operational-alacarte
@@ -186613,6 +187303,28 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "rebase_1_3_1" = callPackage
+    ({ mkDerivation, base, base-prelude, bifunctors, bytestring
+     , containers, contravariant, contravariant-extras, deepseq, dlist
+     , either, fail, hashable, mtl, profunctors, scientific
+     , semigroupoids, semigroups, stm, text, time, transformers
+     , unordered-containers, uuid, vector, void
+     }:
+     mkDerivation {
+       pname = "rebase";
+       version = "1.3.1";
+       sha256 = "1vnwc12dp8w1sbh4z8wh451nqrlp94jml4kakvj4vscsv6c14dy4";
+       libraryHaskellDepends = [
+         base base-prelude bifunctors bytestring containers contravariant
+         contravariant-extras deepseq dlist either fail hashable mtl
+         profunctors scientific semigroupoids semigroups stm text time
+         transformers unordered-containers uuid vector void
+       ];
+       description = "A more progressive alternative to the \"base\" package";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "rebindable" = callPackage
     ({ mkDerivation, base, data-default-class, indexed }:
      mkDerivation {
@@ -186685,6 +187397,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "record-dot-preprocessor_0_2" = callPackage
+    ({ mkDerivation, base, extra, filepath, ghc, record-hasfield
+     , uniplate
+     }:
+     mkDerivation {
+       pname = "record-dot-preprocessor";
+       version = "0.2";
+       sha256 = "1k2bdinvygn00l12am5n8m2i3vqp6h555mcj6d8xshy320v85np8";
+       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
@@ -186786,6 +187516,18 @@ self: {
        broken = true;
      }) {};
 
+  "record-wrangler" = callPackage
+    ({ mkDerivation, base, template-haskell }:
+     mkDerivation {
+       pname = "record-wrangler";
+       version = "0.1.1.0";
+       sha256 = "1lxbmb73k2ah663na2r7rgj6gxa6z971f6k8gcjbkbf095di1xlc";
+       libraryHaskellDepends = [ base template-haskell ];
+       testHaskellDepends = [ base ];
+       description = "Alter your records with ease";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "records" = callPackage
     ({ mkDerivation, base, kinds, type-functions }:
      mkDerivation {
@@ -187422,8 +188164,8 @@ self: {
      }:
      mkDerivation {
        pname = "reflex";
-       version = "0.6";
-       sha256 = "061s74bypbd6s80ipb6rha0fz0y7mwki0dwhg7g9bcmli32pmafp";
+       version = "0.6.1";
+       sha256 = "1ggp2bpil2ig6rs45fn754kpqnp45lp069nc6ib4isj0dgzb9gpn";
        libraryHaskellDepends = [
          base bifunctors comonad containers data-default dependent-map
          dependent-sum exception-transformers haskell-src-exts
@@ -187481,6 +188223,8 @@ self: {
        executableHaskellDepends = [ base mtl reflex ];
        description = "A basic `reflex` host for backend work";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "reflex-dom" = callPackage
@@ -188577,6 +189321,34 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "registry_0_1_3_1" = callPackage
+    ({ mkDerivation, async, base, containers, exceptions, generic-lens
+     , hashable, hedgehog, hedgehog-corpus, io-memoize, MonadRandom, mtl
+     , multimap, protolude, random, resourcet, semigroupoids, semigroups
+     , tasty, tasty-discover, tasty-hedgehog, tasty-th, template-haskell
+     , text, transformers-base, universum
+     }:
+     mkDerivation {
+       pname = "registry";
+       version = "0.1.3.1";
+       sha256 = "0qwylp0ajmpz17qiah8cpp6c4jl9bc9040vkm0v45afg0paanp7i";
+       libraryHaskellDepends = [
+         base containers exceptions hashable mtl protolude resourcet
+         semigroupoids semigroups template-haskell text transformers-base
+       ];
+       testHaskellDepends = [
+         async base containers exceptions generic-lens hashable hedgehog
+         hedgehog-corpus io-memoize MonadRandom mtl multimap protolude
+         random resourcet semigroupoids semigroups tasty tasty-discover
+         tasty-hedgehog tasty-th template-haskell text transformers-base
+         universum
+       ];
+       testToolDepends = [ tasty-discover ];
+       description = "data structure for assembling components";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "regress" = callPackage
     ({ mkDerivation, ad, base, vector }:
      mkDerivation {
@@ -190034,6 +190806,18 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "rerebase_1_3_1" = callPackage
+    ({ mkDerivation, rebase }:
+     mkDerivation {
+       pname = "rerebase";
+       version = "1.3.1";
+       sha256 = "076gzpgkw19lknk8z7qidxwvg9n432934bnvc843chif075g6r0y";
+       libraryHaskellDepends = [ rebase ];
+       description = "Reexports from \"base\" with a bunch of other standard libraries";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "reroute" = callPackage
     ({ mkDerivation, base, criterion, deepseq, graph-core, hashable
      , hspec, http-api-data, hvect, mtl, random, regex-compat, text
@@ -193720,8 +194504,8 @@ self: {
      }:
      mkDerivation {
        pname = "safe-money";
-       version = "0.8";
-       sha256 = "0a8dvdlia7b6ybrynbv5a87nvl29x2h9abnx9j446ma07s0cvxcc";
+       version = "0.8.1";
+       sha256 = "0yncqrdawf0p7y9qrcz6mc2xd265r3w5kj9lzwqybid8xqbaclij";
        libraryHaskellDepends = [
          base binary constraints deepseq hashable QuickCheck text
          vector-space
@@ -194138,22 +194922,22 @@ self: {
        broken = true;
      }) {};
 
-  "salak_0_2_3" = callPackage
-    ({ mkDerivation, aeson, base, directory, filepath, hspec, menshen
-     , mtl, QuickCheck, scientific, stm, text, transformers
-     , unordered-containers, vector, yaml
+  "salak_0_2_8" = callPackage
+    ({ mkDerivation, attoparsec, base, containers, data-default
+     , directory, filepath, hspec, menshen, mtl, pqueue, QuickCheck
+     , scientific, text, time
      }:
      mkDerivation {
        pname = "salak";
-       version = "0.2.3";
-       sha256 = "1ifa4gvwm3sri6nmgqsi7vrl7vafyzraz9v2y3a8k7gmn0izkmb5";
+       version = "0.2.8";
+       sha256 = "094avciwjwqvgs8d9779w0bbr7vx46dyqq2lwkk5w55k812pndxd";
        libraryHaskellDepends = [
-         aeson base directory filepath menshen mtl scientific stm text
-         transformers unordered-containers vector yaml
+         attoparsec base containers data-default directory filepath menshen
+         mtl pqueue scientific text time
        ];
        testHaskellDepends = [
-         aeson base directory filepath hspec menshen mtl QuickCheck
-         scientific stm text transformers unordered-containers vector yaml
+         attoparsec base containers data-default directory filepath hspec
+         menshen mtl pqueue QuickCheck scientific text time
        ];
        description = "Configuration Loader";
        license = stdenv.lib.licenses.bsd3;
@@ -194161,6 +194945,44 @@ self: {
        broken = true;
      }) {};
 
+  "salak-toml" = callPackage
+    ({ mkDerivation, base, hspec, mtl, QuickCheck, salak, text, time
+     , tomland, unordered-containers
+     }:
+     mkDerivation {
+       pname = "salak-toml";
+       version = "0.2.8";
+       sha256 = "02bnynil1b9y1fhk3h40iqgc8r151i112r90nwfbqsgdrzbhwfss";
+       libraryHaskellDepends = [
+         base mtl salak text time tomland unordered-containers
+       ];
+       testHaskellDepends = [
+         base hspec mtl QuickCheck salak text time tomland
+         unordered-containers
+       ];
+       description = "Configuration Loader for toml";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "salak-yaml" = callPackage
+    ({ mkDerivation, aeson, base, hspec, mtl, QuickCheck, salak, text
+     , unordered-containers, vector, yaml
+     }:
+     mkDerivation {
+       pname = "salak-yaml";
+       version = "0.2.8";
+       sha256 = "0nbn0n19651r5hv3qbxg6ym354sm5170mi99pi60xgb4jgw2zjbw";
+       libraryHaskellDepends = [
+         aeson base mtl salak unordered-containers vector yaml
+       ];
+       testHaskellDepends = [
+         aeson base hspec mtl QuickCheck salak text unordered-containers
+         vector yaml
+       ];
+       description = "Configuration Loader for yaml";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "saltine" = callPackage
     ({ mkDerivation, base, bytestring, libsodium, profunctors
      , QuickCheck, semigroups, test-framework
@@ -195330,6 +196152,26 @@ self: {
        broken = true;
      }) {};
 
+  "scheduler" = callPackage
+    ({ mkDerivation, atomic-primops, base, Cabal, cabal-doctest
+     , deepseq, doctest, exceptions, hspec, QuickCheck, template-haskell
+     , unliftio, unliftio-core
+     }:
+     mkDerivation {
+       pname = "scheduler";
+       version = "1.0.0";
+       sha256 = "1l8ifgdfzn8w6sd0d9pmlhipbmqs16krzicixf4rxxvr2pl8a2ld";
+       setupHaskellDepends = [ base Cabal cabal-doctest ];
+       libraryHaskellDepends = [
+         atomic-primops base deepseq exceptions unliftio-core
+       ];
+       testHaskellDepends = [
+         base deepseq doctest hspec QuickCheck template-haskell unliftio
+       ];
+       description = "Work stealing scheduler";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "schedyield" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -199374,8 +200216,8 @@ self: {
        pname = "servant-mock";
        version = "0.8.5";
        sha256 = "10bvqwyp5ca53k47a1xfbihdv22gjlj97spr1bn5plf5vlk70m5f";
-       revision = "1";
-       editedCabalFile = "0jn1inj9rc6dwf1lml3blwf1kx2d73zpwarn6jwd4j4mf7wvak4a";
+       revision = "2";
+       editedCabalFile = "0269d0yr8sa043wc2ymg3fv60c9pr4jxfy9sar2qqccvngpa1vf5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -199729,6 +200571,35 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "servant-rawm_0_3_1_0" = callPackage
+    ({ mkDerivation, base, bytestring, doctest, filepath, Glob
+     , hspec-wai, http-client, http-media, http-types, lens, resourcet
+     , servant, servant-client, servant-client-core, servant-docs
+     , servant-server, tasty, tasty-hspec, tasty-hunit, text
+     , transformers, wai, wai-app-static, warp
+     }:
+     mkDerivation {
+       pname = "servant-rawm";
+       version = "0.3.1.0";
+       sha256 = "055ys4gkywy1ld0d736fsmc39fix2b4ad4myb7qn0sbax6y9zn3q";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring filepath http-client http-media http-types lens
+         resourcet servant-client servant-client-core servant-docs
+         servant-server wai wai-app-static
+       ];
+       testHaskellDepends = [
+         base bytestring doctest Glob hspec-wai http-client http-media
+         http-types servant servant-client servant-client-core
+         servant-server tasty tasty-hspec tasty-hunit text transformers wai
+         warp
+       ];
+       description = "Embed a raw 'Application' in a Servant API";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "servant-reflex" = callPackage
     ({ mkDerivation, base, bytestring, case-insensitive, containers
      , data-default, exceptions, ghcjs-dom, http-api-data, http-media
@@ -204631,6 +205502,8 @@ self: {
        ];
        description = "A very quick-and-dirty WebSocket server";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "skip-list" = callPackage
@@ -205052,6 +205925,18 @@ self: {
        broken = true;
      }) {};
 
+  "slist" = callPackage
+    ({ mkDerivation, base, doctest, Glob }:
+     mkDerivation {
+       pname = "slist";
+       version = "0.0.0";
+       sha256 = "0w9rgy0afma2gk36jbk7r8kyvl4vfhd0pfbv6ank2pr6kd5a4a0z";
+       libraryHaskellDepends = [ base ];
+       testHaskellDepends = [ base doctest Glob ];
+       description = "Sized list";
+       license = stdenv.lib.licenses.mpl20;
+     }) {};
+
   "sloane" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, attoparsec, base
      , bloomfilter, bytestring, conduit, conduit-extra, containers
@@ -211820,8 +212705,8 @@ self: {
        pname = "step-function";
        version = "0.2";
        sha256 = "1mg7zqqs32zdh1x1738kk0yydyksbhx3y3x8n31f7byk5fvzqq6j";
-       revision = "1";
-       editedCabalFile = "03ga9vwaxsf0c73fciavkm925l7lkgya1a6xghyb8ainrav0bfq4";
+       revision = "2";
+       editedCabalFile = "074399mj4p0sk49rqc9a3fikpsly95mndnmm71ya7wy34nxyafzv";
        libraryHaskellDepends = [
          base base-compat-batteries containers deepseq QuickCheck
        ];
@@ -211842,6 +212727,23 @@ self: {
        broken = true;
      }) {};
 
+  "stern-brocot" = callPackage
+    ({ mkDerivation, alg, base, criterion, smallcheck, tasty
+     , tasty-smallcheck, universe-base
+     }:
+     mkDerivation {
+       pname = "stern-brocot";
+       version = "0.1.0.0";
+       sha256 = "0x3d6k1vbwa0gn41z3lq877l70mghq1gic37l6vg1v4s5cyx0w6m";
+       libraryHaskellDepends = [ alg base universe-base ];
+       testHaskellDepends = [
+         base smallcheck tasty tasty-smallcheck universe-base
+       ];
+       benchmarkHaskellDepends = [ base criterion ];
+       description = "Positive rational numbers represented as paths in the Stern-Brocot tree";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "stgi" = callPackage
     ({ mkDerivation, ansi-terminal, ansi-wl-pprint, base, containers
      , deepseq, parsers, prettyprinter, prettyprinter-ansi-terminal
@@ -212601,15 +213503,15 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "stratosphere_0_35_0" = callPackage
+  "stratosphere_0_36_0" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, containers
      , hashable, hspec, hspec-discover, lens, template-haskell, text
      , unordered-containers
      }:
      mkDerivation {
        pname = "stratosphere";
-       version = "0.35.0";
-       sha256 = "0jwnr6g2ig2p43sd5xvj4n9jkq5waiwx9k1fpryjmi1jvc128zqa";
+       version = "0.36.0";
+       sha256 = "0890g86djpwg9nisqbb5nxxj42r2r8rh98vd5a0dk7lc72navp3k";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -213325,22 +214227,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "streamly_0_6_0" = callPackage
-    ({ mkDerivation, atomic-primops, base, clock, containers, deepseq
+  "streamly_0_6_1" = callPackage
+    ({ mkDerivation, atomic-primops, base, containers, deepseq
      , exceptions, gauge, ghc-prim, heaps, hspec, lockfree-queue
      , monad-control, mtl, QuickCheck, random, transformers
      , transformers-base
      }:
      mkDerivation {
        pname = "streamly";
-       version = "0.6.0";
-       sha256 = "05gwyzp03lz2gv5civg5dkqx1vab261iasrvfvr7sqi4xyj0kzns";
+       version = "0.6.1";
+       sha256 = "141xc4c4ng0cxwlmjcw7v9a7wpi6kdidzwr4wify571ghql75gf2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         atomic-primops base clock containers deepseq exceptions ghc-prim
-         heaps lockfree-queue monad-control mtl transformers
-         transformers-base
+         atomic-primops base containers deepseq exceptions ghc-prim heaps
+         lockfree-queue monad-control mtl transformers transformers-base
        ];
        testHaskellDepends = [
          base containers exceptions hspec mtl QuickCheck random transformers
@@ -215077,7 +215978,6 @@ self: {
        ];
        description = "Efficiently build a bytestring from smaller chunks";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "supercollider-ht" = callPackage
@@ -216188,6 +217088,8 @@ self: {
        ];
        description = "Test symantic-http and its companion libraries";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "symantic-lib" = callPackage
@@ -216421,20 +217323,20 @@ self: {
   "syntactic" = callPackage
     ({ mkDerivation, base, constraints, containers, criterion
      , data-hash, deepseq, mtl, QuickCheck, syb, tagged, tasty
-     , tasty-golden, tasty-quickcheck, tasty-th, template-haskell
-     , tree-view, utf8-string
+     , tasty-golden, tasty-hunit, tasty-quickcheck, tasty-th
+     , template-haskell, tree-view, utf8-string
      }:
      mkDerivation {
        pname = "syntactic";
-       version = "3.7.1";
-       sha256 = "06k2n84dn9rp59rcv29hqkrm5mri6hyhh0hdbh7qfqxa7m06sl6w";
+       version = "3.8";
+       sha256 = "1vwr2wfa9b4782k3v4bp0p5qqy14mwx9mmlax0jskpqwzx0azxvi";
        libraryHaskellDepends = [
          base constraints containers data-hash deepseq mtl syb
          template-haskell tree-view
        ];
        testHaskellDepends = [
          base containers mtl QuickCheck tagged tasty tasty-golden
-         tasty-quickcheck tasty-th utf8-string
+         tasty-hunit tasty-quickcheck tasty-th utf8-string
        ];
        benchmarkHaskellDepends = [ base criterion deepseq ];
        description = "Generic representation and manipulation of abstract syntax";
@@ -217540,6 +218442,8 @@ self: {
        executablePkgconfigDepends = [ gtk3 ];
        description = "A desktop bar similar to xmobar, but with more GUI";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {inherit (pkgs) gtk3;};
 
   "tag-bits" = callPackage
@@ -218364,6 +219268,8 @@ self: {
        ];
        description = "Terminal Art";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "task" = callPackage
@@ -218426,27 +219332,28 @@ self: {
      }) {};
 
   "taskell" = callPackage
-    ({ mkDerivation, aeson, base, brick, bytestring, classy-prelude
-     , config-ini, containers, directory, file-embed, fold-debounce
-     , http-client, http-conduit, http-types, lens, mtl, tasty
-     , tasty-discover, tasty-expected-failure, tasty-hunit
-     , template-haskell, text, time, vty
+    ({ mkDerivation, aeson, attoparsec, base, brick, bytestring
+     , classy-prelude, config-ini, containers, directory, file-embed
+     , fold-debounce, http-client, http-conduit, http-types, lens, mtl
+     , raw-strings-qq, tasty, tasty-discover, tasty-expected-failure
+     , tasty-hunit, template-haskell, text, time, vty
      }:
      mkDerivation {
        pname = "taskell";
-       version = "1.3.6.0";
-       sha256 = "1s7wgn9ixmk5h9s5a977ddj1a0fsjmpifl0i97pak35rk92ca7wc";
+       version = "1.4.0.0";
+       sha256 = "1l0q1wyhkh271rpd6qw12j1kkzdqqcvp2xvqwykn98jwmnhswm4m";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base brick bytestring classy-prelude config-ini containers
-         directory file-embed fold-debounce http-client http-conduit
-         http-types lens mtl template-haskell text time vty
+         aeson attoparsec base brick bytestring classy-prelude config-ini
+         containers directory file-embed fold-debounce http-client
+         http-conduit http-types lens mtl template-haskell text time vty
        ];
        executableHaskellDepends = [ base classy-prelude ];
        testHaskellDepends = [
-         aeson base classy-prelude containers file-embed lens tasty
-         tasty-discover tasty-expected-failure tasty-hunit text time
+         aeson base classy-prelude containers file-embed lens raw-strings-qq
+         tasty tasty-discover tasty-expected-failure tasty-hunit text time
+         vty
        ];
        testToolDepends = [ tasty-discover ];
        description = "A command-line kanban board/task manager";
@@ -219378,6 +220285,8 @@ self: {
        executableHaskellDepends = [ base ];
        description = "Pure Haskell TDS protocol implementation. Mainly for beam-mssql and beam-sybase";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "teams" = callPackage
@@ -219427,6 +220336,21 @@ self: {
        broken = true;
      }) {};
 
+  "telega" = callPackage
+    ({ mkDerivation, aeson, base, http-client, lens, text, transformers
+     , wreq
+     }:
+     mkDerivation {
+       pname = "telega";
+       version = "0.1.0";
+       sha256 = "1ixdac26mkd98apfq3h4xihlwdj8y1mjrcz8f17pkxkb4cmra3cd";
+       libraryHaskellDepends = [
+         aeson base http-client lens text transformers wreq
+       ];
+       description = "Telegram Bot API binding";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "telegram" = callPackage
     ({ mkDerivation, aeson, base, bytestring, data-default
      , http-conduit, url, utf8-string
@@ -220240,6 +221164,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "tensors_0_1_3" = callPackage
+    ({ mkDerivation, base, criterion, hspec, QuickCheck, reflection
+     , vector
+     }:
+     mkDerivation {
+       pname = "tensors";
+       version = "0.1.3";
+       sha256 = "1ca289878jfwhwlawdwbf0mii8y117ha7hyqrlqx651qsswlwwcf";
+       libraryHaskellDepends = [ base vector ];
+       testHaskellDepends = [ base hspec QuickCheck reflection vector ];
+       benchmarkHaskellDepends = [ base criterion vector ];
+       description = "Tensor in Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "term-rewriting" = callPackage
     ({ mkDerivation, ansi-wl-pprint, array, base, containers, HUnit
      , mtl, multiset, parsec, QuickCheck, union-find-array
@@ -220480,6 +221420,8 @@ self: {
        ];
        description = "Terminal emulator configurable in Haskell";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {inherit (pkgs) gtk3; vte_291 = pkgs.vte;};
 
   "termplot" = callPackage
@@ -220701,6 +221643,8 @@ self: {
        pname = "test-framework-quickcheck2";
        version = "0.3.0.5";
        sha256 = "0ngf9vvby4nrdf1i7dxf5m9jn0g2pkq32w48xdr92n9hxka7ixn9";
+       revision = "1";
+       editedCabalFile = "1vmpk70h1594h9s216d3ngkb399fpny1d3sh4gg0vrc75p4as68d";
        libraryHaskellDepends = [
          base extensible-exceptions QuickCheck random test-framework
        ];
@@ -221932,6 +222876,8 @@ self: {
        pname = "text-show";
        version = "3.8";
        sha256 = "1yqmyfmnnph28v0c0rkh0z38xaxrrsljf1zg6zccqw322frw9fsi";
+       revision = "1";
+       editedCabalFile = "03q739smdz7z0nnx6pg7d58mmq65y7abhdxwy57akf7pichnw13b";
        libraryHaskellDepends = [
          array base base-compat-batteries bifunctors bytestring
          bytestring-builder containers contravariant generic-deriving
@@ -221965,6 +222911,8 @@ self: {
        pname = "text-show-instances";
        version = "3.7";
        sha256 = "1bwpj8fdrfhmhlgdql59f75bkcfng7fx9m409m8k0dq9ymawmj5c";
+       revision = "1";
+       editedCabalFile = "0rw9xbyinjrp0rgqwklsv4552k0g0n2nnq7n02i0015q8psfdz6z";
        libraryHaskellDepends = [
          base base-compat-batteries bifunctors binary containers directory
          ghc-boot-th haskeline hpc old-locale old-time pretty random
@@ -223035,6 +223983,8 @@ self: {
        pname = "these";
        version = "0.8";
        sha256 = "145m71z43rqgps0nh29hcfkr3cbs9l82y3dfycf7i5fjr2472rga";
+       revision = "1";
+       editedCabalFile = "0y7q2bzqgd2ii47kqy6fij1qd0l7immgcx6lkq9bswkgvdband11";
        libraryHaskellDepends = [
          aeson assoc base base-compat bifunctors binary containers
          data-default-class deepseq hashable keys lens mtl QuickCheck
@@ -226375,6 +227325,8 @@ self: {
        ];
        description = "A command-line tool for live monitoring";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "traction" = callPackage
@@ -226643,6 +227595,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "transformers-compat_0_6_3" = callPackage
+    ({ mkDerivation, base, ghc-prim, transformers }:
+     mkDerivation {
+       pname = "transformers-compat";
+       version = "0.6.3";
+       sha256 = "08gpfib5s92rxq50y1in9zw2nbi2wm8k3xq7y6s0iahsn4vl5i5i";
+       libraryHaskellDepends = [ base ghc-prim transformers ];
+       description = "A small compatibility shim for the transformers library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "transformers-compose" = callPackage
     ({ mkDerivation, base, transformers }:
      mkDerivation {
@@ -226994,6 +227958,8 @@ self: {
        testHaskellDepends = [ base trasa ];
        description = "Template Haskell to generate trasa routes";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "traverse-with-class" = callPackage
@@ -227121,8 +228087,8 @@ self: {
        pname = "tree-diff";
        version = "0.0.2";
        sha256 = "0zlviaikyk50l577q7h06w5z058v1ngjlhwzfn965xkp978hnsgq";
-       revision = "1";
-       editedCabalFile = "1rl12a2ydg744s289lna4zb0sj0b16abmrngp6qd1kfkih2ygml0";
+       revision = "2";
+       editedCabalFile = "07pz7mhzvh7iwgn2rvw29valfdm4y845zqqffxb89ywbb6gnm8x8";
        libraryHaskellDepends = [
          aeson ansi-terminal ansi-wl-pprint base base-compat bytestring
          containers generics-sop hashable MemoTrie parsec parsers pretty
@@ -227946,8 +228912,10 @@ self: {
      }:
      mkDerivation {
        pname = "tttool";
-       version = "1.8";
-       sha256 = "0j4lgkjg28i7wlz5rnlrii6mzx2bqsagrg3wiiw1z2ncik6qm472";
+       version = "1.8.1";
+       sha256 = "0y33vflq6l51yvv7ilkvra75lhia18gmif0jc5gaqigxl1adfkw1";
+       revision = "1";
+       editedCabalFile = "1rppvnlrgc6kk5k8m0jn0ckyv0bq0l3h2r4gvkbjbd25mj0ls7gh";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -230006,6 +230974,34 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "typerep-map_0_3_2" = callPackage
+    ({ mkDerivation, base, containers, criterion, deepseq
+     , dependent-map, dependent-sum, ghc-prim, ghc-typelits-knownnat
+     , hedgehog, primitive, QuickCheck, tasty, tasty-discover
+     , tasty-hedgehog, tasty-hspec, vector
+     }:
+     mkDerivation {
+       pname = "typerep-map";
+       version = "0.3.2";
+       sha256 = "0s77hj0m9jiqgybccdfl1x88j05fx7grkg16q6kldd1lgqrvrgb0";
+       libraryHaskellDepends = [
+         base containers deepseq ghc-prim primitive vector
+       ];
+       testHaskellDepends = [
+         base ghc-typelits-knownnat hedgehog QuickCheck tasty tasty-discover
+         tasty-hedgehog tasty-hspec
+       ];
+       testToolDepends = [ tasty-discover ];
+       benchmarkHaskellDepends = [
+         base criterion deepseq dependent-map dependent-sum
+         ghc-typelits-knownnat
+       ];
+       doHaddock = false;
+       description = "Efficient implementation of a dependent map with types as keys";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "types-compat" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -236509,8 +237505,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "vulkan-api";
-       version = "1.1.3.1";
-       sha256 = "00wv54ggmmvq1lc9rmp9jn910m5sa30l772p28r2qsq4i8cxrbcy";
+       version = "1.1.4.0";
+       sha256 = "10q98v71miyb1yhnpvz9dlhjs38m4pbz7x1hndz8cfsnjk3n5b22";
        libraryHaskellDepends = [ base ];
        description = "Low-level low-overhead vulkan api bindings";
        license = stdenv.lib.licenses.bsd3;
@@ -239331,6 +240327,30 @@ self: {
        broken = true;
      }) {};
 
+  "webby" = callPackage
+    ({ mkDerivation, aeson, base, binary, bytestring, fast-logger
+     , formatting, http-api-data, http-types, monad-logger, protolude
+     , resourcet, tasty, tasty-hunit, tasty-quickcheck, text, unliftio
+     , unordered-containers, wai
+     }:
+     mkDerivation {
+       pname = "webby";
+       version = "0.1.0.1";
+       sha256 = "0xscyd06zc4sjmhrf4l8cc9qmpw2vx2vydvlv0mw47hk660as67v";
+       libraryHaskellDepends = [
+         aeson base binary bytestring fast-logger formatting http-api-data
+         http-types monad-logger protolude resourcet text unliftio
+         unordered-containers wai
+       ];
+       testHaskellDepends = [
+         aeson base binary bytestring fast-logger formatting http-api-data
+         http-types monad-logger protolude resourcet tasty tasty-hunit
+         tasty-quickcheck text unliftio unordered-containers wai
+       ];
+       description = "A super-simple web server framework";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "webcloud" = callPackage
     ({ mkDerivation, base, bytestring, cgi, optparse-applicative }:
      mkDerivation {
@@ -240697,8 +241717,8 @@ self: {
      }:
      mkDerivation {
        pname = "withdependencies";
-       version = "0.2.4.2";
-       sha256 = "04pk5giqlnls1p62fz9p0sb1288c9qk3ivsq2kb5207cjifyslgz";
+       version = "0.2.4.3";
+       sha256 = "1km9mrasxpzpkrm1cb5s06iwmqd33dmiwld8syx1f7rq9l3pk8d7";
        libraryHaskellDepends = [
          base conduit containers mtl profunctors
        ];
@@ -243814,6 +244834,28 @@ self: {
        license = stdenv.lib.licenses.asl20;
      }) {};
 
+  "xmlbf_0_5" = callPackage
+    ({ mkDerivation, base, bytestring, containers, deepseq, QuickCheck
+     , quickcheck-instances, tasty, tasty-hunit, tasty-quickcheck, text
+     , transformers, unordered-containers
+     }:
+     mkDerivation {
+       pname = "xmlbf";
+       version = "0.5";
+       sha256 = "1wm7xypplnz9sl6ckh8kjsb66pd2cqgr412sdhdm0d7y0yixv2zy";
+       libraryHaskellDepends = [
+         base bytestring containers deepseq text transformers
+         unordered-containers
+       ];
+       testHaskellDepends = [
+         base bytestring deepseq QuickCheck quickcheck-instances tasty
+         tasty-hunit tasty-quickcheck text transformers unordered-containers
+       ];
+       description = "XML back and forth! Parser, renderer, ToXml, FromXml, fixpoints";
+       license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "xmlbf-xeno" = callPackage
     ({ mkDerivation, base, bytestring, html-entities, QuickCheck
      , quickcheck-instances, tasty, tasty-hunit, tasty-quickcheck, text
@@ -243834,6 +244876,27 @@ self: {
        license = stdenv.lib.licenses.asl20;
      }) {};
 
+  "xmlbf-xeno_0_2" = callPackage
+    ({ mkDerivation, base, bytestring, html-entities, QuickCheck
+     , quickcheck-instances, tasty, tasty-hunit, tasty-quickcheck, text
+     , unordered-containers, xeno, xmlbf
+     }:
+     mkDerivation {
+       pname = "xmlbf-xeno";
+       version = "0.2";
+       sha256 = "1x33885kjddmc39p2jxafypcgpm5fajdxzdd6l9z5bpihlpgk7ig";
+       libraryHaskellDepends = [
+         base bytestring html-entities text unordered-containers xeno xmlbf
+       ];
+       testHaskellDepends = [
+         base bytestring QuickCheck quickcheck-instances tasty tasty-hunit
+         tasty-quickcheck text unordered-containers xmlbf
+       ];
+       description = "xeno backend support for the xmlbf library";
+       license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "xmlbf-xmlhtml" = callPackage
     ({ mkDerivation, base, bytestring, html-entities, QuickCheck
      , quickcheck-instances, tasty, tasty-hunit, tasty-quickcheck, text
@@ -243841,8 +244904,8 @@ self: {
      }:
      mkDerivation {
        pname = "xmlbf-xmlhtml";
-       version = "0.1.1";
-       sha256 = "0x8fr4dqa1i3ylwh98r69xavrfgl2i97s9iili14wpqap0pg8aa4";
+       version = "0.2";
+       sha256 = "1h2w98jdr3r9isbl5g39gd3fxlm4vqib15grqgarhx2gj1k9vlxd";
        libraryHaskellDepends = [
          base bytestring html-entities text unordered-containers xmlbf
          xmlhtml
@@ -243853,6 +244916,8 @@ self: {
        ];
        description = "xmlhtml backend support for the xmlbf library";
        license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
      }) {};
 
   "xmlgen" = callPackage
@@ -244822,6 +245887,39 @@ self: {
        broken = true;
      }) {};
 
+  "yam_0_5_16" = callPackage
+    ({ mkDerivation, aeson, base, base16-bytestring, binary, bytestring
+     , data-default, fast-logger, hspec, http-client, http-types, lens
+     , menshen, monad-logger, mtl, mwc-random, QuickCheck, reflection
+     , salak, scientific, servant-client, servant-server
+     , servant-swagger, servant-swagger-ui, swagger2, text
+     , unliftio-core, unordered-containers, vault, vector, wai, warp
+     }:
+     mkDerivation {
+       pname = "yam";
+       version = "0.5.16";
+       sha256 = "107wnnb8q47kl78gl92b6w6z6pvjqqwpisvwcw0xipmisk5d6nzv";
+       libraryHaskellDepends = [
+         aeson base base16-bytestring binary bytestring data-default
+         fast-logger http-client http-types lens menshen monad-logger mtl
+         mwc-random reflection salak scientific servant-client
+         servant-server servant-swagger servant-swagger-ui swagger2 text
+         unliftio-core unordered-containers vault vector wai warp
+       ];
+       testHaskellDepends = [
+         aeson base base16-bytestring binary bytestring data-default
+         fast-logger hspec http-client http-types lens menshen monad-logger
+         mtl mwc-random QuickCheck reflection salak scientific
+         servant-client servant-server servant-swagger servant-swagger-ui
+         swagger2 text unliftio-core unordered-containers vault vector wai
+         warp
+       ];
+       description = "Yam Web";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "yam-app" = callPackage
     ({ mkDerivation, aeson, base, conduit, containers, ctrie
      , data-default, directory, exceptions, fast-logger, monad-control
@@ -244878,6 +245976,23 @@ self: {
        broken = true;
      }) {};
 
+  "yam-datasource_0_5_16" = callPackage
+    ({ mkDerivation, base, conduit, persistent, resource-pool
+     , resourcet, unliftio-core, yam
+     }:
+     mkDerivation {
+       pname = "yam-datasource";
+       version = "0.5.16";
+       sha256 = "0361nlw1fy8kb7wmkksp42zfx7fd7vdjxwvmx5j8mac4mgwyarzq";
+       libraryHaskellDepends = [
+         base conduit persistent resource-pool resourcet unliftio-core yam
+       ];
+       description = "Yam DataSource Middleware";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {};
+
   "yam-job" = callPackage
     ({ mkDerivation, base, cron, yam-app }:
      mkDerivation {
@@ -246556,6 +247671,28 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "yesod-csp_0_2_5_0" = callPackage
+    ({ mkDerivation, attoparsec, base, case-insensitive, hspec
+     , mono-traversable, network-uri, semigroups, syb, template-haskell
+     , text, wai, yesod, yesod-core, yesod-test
+     }:
+     mkDerivation {
+       pname = "yesod-csp";
+       version = "0.2.5.0";
+       sha256 = "16b569jwxw7rim9fmjkl3slddclcp1x75jf8czjj89d1wp202x15";
+       libraryHaskellDepends = [
+         attoparsec base case-insensitive mono-traversable network-uri
+         semigroups syb template-haskell text wai yesod yesod-core
+       ];
+       testHaskellDepends = [
+         attoparsec base hspec network-uri semigroups template-haskell yesod
+         yesod-test
+       ];
+       description = "Add CSP headers to Yesod apps";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "yesod-datatables" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring, data-default
      , HUnit, monad-control, persistent, persistent-sqlite
@@ -248820,15 +249957,16 @@ self: {
      }) {};
 
   "z3" = callPackage
-    ({ mkDerivation, base, containers, gomp, hspec, mtl, QuickCheck, z3
+    ({ mkDerivation, base, containers, gomp, hspec, QuickCheck
+     , transformers, z3
      }:
      mkDerivation {
        pname = "z3";
-       version = "4.3.1";
-       sha256 = "0fsddp5267bpmccg2hhra4z8isqmrdgcp0i0amrxsacgyqa4iqbv";
+       version = "408.0";
+       sha256 = "13qkzy9wc17rm60i24fa9sx15ywbxq4a80g33w20887gvqyc0q53";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [ base containers mtl ];
+       libraryHaskellDepends = [ base containers transformers ];
        librarySystemDepends = [ gomp z3 ];
        testHaskellDepends = [ base hspec QuickCheck ];
        description = "Bindings for the Z3 Theorem Prover";
diff --git a/pkgs/development/haskell-modules/lib.nix b/pkgs/development/haskell-modules/lib.nix
index 9f18db1e6e95..41ce20373d62 100644
--- a/pkgs/development/haskell-modules/lib.nix
+++ b/pkgs/development/haskell-modules/lib.nix
@@ -181,6 +181,8 @@ rec {
   enableStaticLibraries = drv: overrideCabal drv (drv: { enableStaticLibraries = true; });
   disableStaticLibraries = drv: overrideCabal drv (drv: { enableStaticLibraries = false; });
 
+  enableSeparateBinOutput = drv: overrideCabal drv (drv: { enableSeparateBinOutput = true; });
+
   appendPatch = drv: x: appendPatches drv [x];
   appendPatches = drv: xs: overrideCabal drv (drv: { patches = (drv.patches or []) ++ xs; });
 
diff --git a/pkgs/development/interpreters/janet/default.nix b/pkgs/development/interpreters/janet/default.nix
new file mode 100644
index 000000000000..00acfd0df8c1
--- /dev/null
+++ b/pkgs/development/interpreters/janet/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "janet";
+  version = "0.4.0";
+
+  src = fetchFromGitHub {
+    owner = "janet-lang";
+    repo = "janet";
+    rev = "v${version}";
+    sha256 = "1590f1fxb6qfhf1vp2xhbvdn2jfrgipn5572cckk1ma7f13jnkpy";
+  };
+
+  JANET_BUILD=''\"release\"'';
+  PREFIX = placeholder "out";
+
+  doCheck = true;
+
+  meta = with stdenv.lib; {
+    description = "Janet programming language";
+    homepage = https://janet-lang.org/;
+    license = stdenv.lib.licenses.mit;
+    platforms = platforms.all;
+    maintainers = with stdenv.lib.maintainers; [ andrewchambers ];
+  };
+}
diff --git a/pkgs/development/libraries/bullet/roboschool-fork.nix b/pkgs/development/libraries/bullet/roboschool-fork.nix
new file mode 100644
index 000000000000..12fc1834e905
--- /dev/null
+++ b/pkgs/development/libraries/bullet/roboschool-fork.nix
@@ -0,0 +1,57 @@
+{ stdenv, fetchFromGitHub, cmake, libGLU_combined, freeglut
+, Cocoa,  OpenGL
+}:
+
+stdenv.mkDerivation rec {
+  name = "bullet-${version}";
+  version = "2019-03-27";
+
+  src = fetchFromGitHub {
+    owner = "olegklimov";
+    repo = "bullet3";
+    # roboschool needs the HEAD of a specific branch of this fork, see
+    # https://github.com/openai/roboschool/issues/126#issuecomment-421643980
+    # https://github.com/openai/roboschool/pull/62
+    # https://github.com/openai/roboschool/issues/124
+    rev = "3687507ddc04a15de2c5db1e349ada3f2b34b3d6";
+    sha256 = "1wd7vj9136dl7lfb8ll0rc2fdl723y3ls9ipp7657yfl2xrqhvkb";
+  };
+
+  nativeBuildInputs = [ cmake ];
+  buildInputs = stdenv.lib.optionals stdenv.isLinux [ libGLU_combined freeglut ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ Cocoa OpenGL ];
+
+  patches = [ ./gwen-narrowing.patch ];
+
+  postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
+    sed -i 's/FIND_PACKAGE(OpenGL)//' CMakeLists.txt
+    sed -i 's/FIND_LIBRARY(COCOA_LIBRARY Cocoa)//' CMakeLists.txt
+  '';
+
+  cmakeFlags = [
+    "-DBUILD_SHARED_LIBS=ON"
+    "-DBUILD_CPU_DEMOS=OFF"
+    "-DINSTALL_EXTRA_LIBS=ON"
+  ] ++ stdenv.lib.optionals stdenv.isDarwin [
+    "-DOPENGL_FOUND=true"
+    "-DOPENGL_LIBRARIES=${OpenGL}/Library/Frameworks/OpenGL.framework"
+    "-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks/OpenGL.framework"
+    "-DOPENGL_gl_LIBRARY=${OpenGL}/Library/Frameworks/OpenGL.framework"
+    "-DCOCOA_LIBRARY=${Cocoa}/Library/Frameworks/Cocoa.framework"
+    "-DBUILD_BULLET2_DEMOS=OFF"
+    "-DBUILD_UNIT_TESTS=OFF"
+  ];
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "A professional free 3D Game Multiphysics Library";
+    longDescription = ''
+      Bullet 3D Game Multiphysics Library provides state of the art collision
+      detection, soft body and rigid body dynamics.
+    '';
+    homepage = http://bulletphysics.org;
+    license = licenses.zlib;
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/development/libraries/cimg/default.nix b/pkgs/development/libraries/cimg/default.nix
index c294647b35de..a647c84016ba 100644
--- a/pkgs/development/libraries/cimg/default.nix
+++ b/pkgs/development/libraries/cimg/default.nix
@@ -3,11 +3,11 @@
 stdenv.mkDerivation rec {
 
   name = "cimg-${version}";
-  version = "1.7.9";
+  version = "2.5.5";
 
   src = fetchurl {
     url = "http://cimg.eu/files/CImg_${version}.zip";
-    sha256 = "07g81jn25y2wksg9ycf9a7f5bfpcdl3xbrkp1xy3czl043a00y7s";
+    sha256 = "12jwis90ijakfiqngcd8s4a22wzr32f6midszja9ry41ilv63nic";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/development/libraries/cmocka/default.nix b/pkgs/development/libraries/cmocka/default.nix
index d38aa7f0f958..ae110846ff06 100644
--- a/pkgs/development/libraries/cmocka/default.nix
+++ b/pkgs/development/libraries/cmocka/default.nix
@@ -3,11 +3,11 @@
 stdenv.mkDerivation rec {
   pname = "cmocka";
   majorVersion = "1.1";
-  version = "${majorVersion}.3";
+  version = "${majorVersion}.5";
 
   src = fetchurl {
     url = "https://cmocka.org/files/${majorVersion}/cmocka-${version}.tar.xz";
-    sha256 = "1bxzzafjlwzgldcb07hjnlnqvh88wh21r2kw7z8f704w5bvvrsj3";
+    sha256 = "1dm8pdvkyfa8dsbz9bpq7wwgixjij4sii9bbn5sgvqjm5ljdik7h";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/cpptest/default.nix b/pkgs/development/libraries/cpptest/default.nix
index 56b23153dcf2..e663c87f799e 100644
--- a/pkgs/development/libraries/cpptest/default.nix
+++ b/pkgs/development/libraries/cpptest/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "cpptest-1.1.2";
+  name = "cpptest-2.0.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/project/cpptest/cpptest/${name}/${name}.tar.gz";
-    sha256 = "09v070a9dv6zq6hgj4v67i31zsis3s96psrnhlq9g4vhdcaxykwy";
+    sha256 = "0lpy3f2fjx1srh02myanlp6zfi497whlldcrnij39ghfhm0arcnm";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/dlib/default.nix b/pkgs/development/libraries/dlib/default.nix
index a88b3f1b9b68..67a56855bb79 100644
--- a/pkgs/development/libraries/dlib/default.nix
+++ b/pkgs/development/libraries/dlib/default.nix
@@ -1,5 +1,8 @@
 { stdenv, lib, fetchFromGitHub, cmake, pkgconfig, libpng, libjpeg
 , guiSupport ? false, libX11
+
+  # see http://dlib.net/compile.html
+, avxSupport ? true
 }:
 
 stdenv.mkDerivation rec {
@@ -17,6 +20,8 @@ stdenv.mkDerivation rec {
     rm -rf dlib/external
   '';
 
+  cmakeFlags = [ "-DUSE_AVX_INSTRUCTIONS=${if avxSupport then "yes" else "no"}" ];
+
   enableParallelBuilding = true;
   nativeBuildInputs = [ cmake pkgconfig ];
   buildInputs = [ libpng libjpeg ] ++ lib.optional guiSupport libX11;
diff --git a/pkgs/development/libraries/eclib/default.nix b/pkgs/development/libraries/eclib/default.nix
index 2a43cbe8ee53..681062cd6713 100644
--- a/pkgs/development/libraries/eclib/default.nix
+++ b/pkgs/development/libraries/eclib/default.nix
@@ -16,7 +16,7 @@ assert withFlint -> flint != null;
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "eclib";
-  version = "20180815"; # upgrade might break the sage interface
+  version = "20190226"; # upgrade might break the sage interface
   # sage tests to run:
   # src/sage/interfaces/mwrank.py
   # src/sage/libs/eclib
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     owner = "JohnCremona";
     repo = "${pname}";
     rev = "v${version}";
-    sha256 = "12syn83lnzx0xc4r1v3glfimbzndyilkpdmx50xrihbjz1hzczif";
+    sha256 = "1910np1xzyjzszay24xn4b81qhpsvhp5aix9vdpknplni2mq8kwb";
   };
   buildInputs = [
     pari
diff --git a/pkgs/development/libraries/enet/default.nix b/pkgs/development/libraries/enet/default.nix
index 292fba1ace02..c0df404e60eb 100644
--- a/pkgs/development/libraries/enet/default.nix
+++ b/pkgs/development/libraries/enet/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl}:
 
 stdenv.mkDerivation rec {
-  name = "enet-1.3.13";
+  name = "enet-1.3.14";
 
   src = fetchurl {
     url = "http://enet.bespin.org/download/${name}.tar.gz";
-    sha256 = "0p53mnmjbm56wizwraznynx13fcibcxiqny110dp6a5a3w174q73";
+    sha256 = "0w780zc6cy8yq4cskpphx0f91lzh51vh9lwyc5ll8hhamdxgbxlq";
   };
 
   meta = {
diff --git a/pkgs/development/libraries/ffmpeg/3.4.nix b/pkgs/development/libraries/ffmpeg/3.4.nix
index f8343e668a67..5db1e0a47cfc 100644
--- a/pkgs/development/libraries/ffmpeg/3.4.nix
+++ b/pkgs/development/libraries/ffmpeg/3.4.nix
@@ -6,7 +6,7 @@
 
 callPackage ./generic.nix (args // rec {
   version = "${branch}";
-  branch = "3.4.5";
-  sha256 = "0cbzysj9pskxh1kfdwmq2848fn6gi4pvh5y3insv10pdhpcjp8a3";
+  branch = "3.4.6";
+  sha256 = "1s20wzgxxrm56gckyb8cf1lh36hdnkdxvmmnnvdxvia4zb3grf1b";
   darwinFrameworks = [ Cocoa CoreMedia ];
 })
diff --git a/pkgs/development/libraries/gstreamer/good/default.nix b/pkgs/development/libraries/gstreamer/good/default.nix
index d4e7b8c5da42..247a74e3a325 100644
--- a/pkgs/development/libraries/gstreamer/good/default.nix
+++ b/pkgs/development/libraries/gstreamer/good/default.nix
@@ -6,6 +6,9 @@
 , libsoup, libpulseaudio, libintl
 , darwin, lame, mpg123, twolame
 , gtkSupport ? false, gtk3 ? null
+, libXdamage
+, libXext
+, libXfixes
 , ncurses
 }:
 
@@ -49,6 +52,11 @@ stdenv.mkDerivation rec {
     libdv libvpx speex flac taglib
     cairo gdk_pixbuf aalib libcaca
     libsoup libshout lame mpg123 twolame libintl
+    # TODO: Remove the comments once https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/commit/e234932dc703e51a0e1aa3b9c408f12758b12335
+    # is merged and available in nixpkgs.
+    libXdamage # present feature but undeclared in meson_options.txt, see https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/553
+    libXext # present feature but undeclared in meson_options.txt, see https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/553
+    libXfixes # present feature but undeclared in meson_options.txt, see https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/issues/553
     ncurses
   ]
   ++ optional gtkSupport gtk3 # for gtksink
diff --git a/pkgs/development/libraries/kde-frameworks/fetch.sh b/pkgs/development/libraries/kde-frameworks/fetch.sh
index ce41ffa4929f..f240ad124c8b 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.54/ -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/frameworks/5.54/ )
diff --git a/pkgs/development/libraries/libdap/default.nix b/pkgs/development/libraries/libdap/default.nix
index c0ec9d927a83..067144ddfa0c 100644
--- a/pkgs/development/libraries/libdap/default.nix
+++ b/pkgs/development/libraries/libdap/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, bison, libuuid, curl, libxml2, flex }:
 
 stdenv.mkDerivation rec {
-  version = "3.20.2";
+  version = "3.20.3";
   name = "libdap-${version}";
 
   nativeBuildInputs = [ bison flex ];
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://www.opendap.org/pub/source/${name}.tar.gz";
-    sha256 = "0kp35ghj48wqgy67xyplwhmw21r8r0p00y2hw0fv65g4yrsgvsk0";
+    sha256 = "0n6ciicaa7sn88gvg5sgcq0438i3vh6xbl9lxgafjqiznli1k5i9";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/libebml/default.nix b/pkgs/development/libraries/libebml/default.nix
index 59651af2b8cf..6a26910c8bd6 100644
--- a/pkgs/development/libraries/libebml/default.nix
+++ b/pkgs/development/libraries/libebml/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, cmake, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "libebml-${version}";
-  version = "1.3.6";
+  pname = "libebml";
+  version = "1.3.7";
 
   src = fetchFromGitHub {
     owner  = "Matroska-Org";
     repo   = "libebml";
     rev    = "release-${version}";
-    sha256 = "0fl8d35ywj9id93yp78qlxy7j81kjri957agq40r420kmwac3dzs";
+    sha256 = "0pdfl83nbbdddbxajx34srg4mcfcz8ca21qyvlnpw81hfnrhmjkv";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
diff --git a/pkgs/development/libraries/libextractor/default.nix b/pkgs/development/libraries/libextractor/default.nix
index b2d9af657a93..bc371423e439 100644
--- a/pkgs/development/libraries/libextractor/default.nix
+++ b/pkgs/development/libraries/libextractor/default.nix
@@ -7,11 +7,11 @@ assert gtkSupport -> glib != null && gtk3 != null;
 assert videoSupport -> ffmpeg != null && libmpeg2 != null;
 
 stdenv.mkDerivation rec {
-  name = "libextractor-1.8";
+  name = "libextractor-1.9";
 
   src = fetchurl {
     url = "mirror://gnu/libextractor/${name}.tar.gz";
-    sha256 = "1z1cb35griqzvshqdv5ck98dy0sgpsswn7fgiy7lbzi34sma8dg2";
+    sha256 = "1zz2zvikvfibxnk1va3kgzs7djsmiqy7bmk8y01vbsf54ryjb3zh";
   };
 
   preConfigure =
diff --git a/pkgs/development/libraries/libmatroska/default.nix b/pkgs/development/libraries/libmatroska/default.nix
index bbc694619d4c..6df996f30999 100644
--- a/pkgs/development/libraries/libmatroska/default.nix
+++ b/pkgs/development/libraries/libmatroska/default.nix
@@ -2,14 +2,14 @@
 , libebml }:
 
 stdenv.mkDerivation rec {
-  name = "libmatroska-${version}";
-  version = "1.4.9";
+  pname = "libmatroska";
+  version = "1.5.0";
 
   src = fetchFromGitHub {
     owner  = "Matroska-Org";
     repo   = "libmatroska";
     rev    = "release-${version}";
-    sha256 = "1hfrcpvmyqnvdkw8rz1z20zw7fpnjyl5h0g9ky7k6y1a44b1fz86";
+    sha256 = "01kp48ih9pqkm518ylbxicjmknqvb3njb71il2h2wa37whsaals8";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
diff --git a/pkgs/development/libraries/libmicrodns/default.nix b/pkgs/development/libraries/libmicrodns/default.nix
new file mode 100644
index 000000000000..3c55a6b036cc
--- /dev/null
+++ b/pkgs/development/libraries/libmicrodns/default.nix
@@ -0,0 +1,30 @@
+{ stdenv
+, fetchFromGitHub
+, autoreconfHook
+, pkgconfig
+}:
+
+stdenv.mkDerivation rec {
+  version = "0.0.10";
+  pname = "libmicrodns";
+
+  src = fetchFromGitHub {
+    owner = "videolabs";
+    repo = pname;
+    rev = version;
+    sha256 = "1xvl9k49ng35wbsqmnjnyqvkyjf8dcq2ywsq3jp3wh0rgmxhq2fh";
+  };
+
+  nativeBuildInputs = [
+    autoreconfHook
+    pkgconfig
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Minimal mDNS resolver library, used by VLC";
+    homepage = https://github.com/videolabs/libmicrodns;
+    license = licenses.lgpl21;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.shazow ];
+  };
+}
diff --git a/pkgs/development/libraries/libmodbus/default.nix b/pkgs/development/libraries/libmodbus/default.nix
index 10bd7af7fadd..d1ee30698a09 100644
--- a/pkgs/development/libraries/libmodbus/default.nix
+++ b/pkgs/development/libraries/libmodbus/default.nix
@@ -8,6 +8,16 @@ stdenv.mkDerivation rec {
     sha256 = "0drnil8bzd4n4qb0wv3ilm9zvypxvwmzd65w96d6kfm7x6q65j68";
   };
 
+  configureFlags = [
+    # when cross-compiling we assume that the host system will return a valid
+    # pointer for calls to malloc(0) or realloc(0)
+    # https://www.uclibc.org/FAQ.html#gnu_malloc
+    # https://www.gnu.org/software/autoconf/manual/autoconf.html#index-AC_005fFUNC_005fMALLOC-454
+    # the upstream source should be patched to avoid needing this
+    "ac_cv_func_malloc_0_nonnull=yes"
+    "ac_cv_func_realloc_0_nonnull=yes"
+  ];
+
   meta = with stdenv.lib; {
     description = "Library to send/receive data according to the Modbus protocol";
     homepage = http://libmodbus.org/;
diff --git a/pkgs/development/libraries/librealsense/default.nix b/pkgs/development/libraries/librealsense/default.nix
index 875e0a97ae2e..918335597c9b 100644
--- a/pkgs/development/libraries/librealsense/default.nix
+++ b/pkgs/development/libraries/librealsense/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "librealsense-${version}";
-  version = "2.18.0";
+  version = "2.19.0";
 
   src = fetchFromGitHub {
     owner = "IntelRealSense";
     repo = "librealsense";
     rev = "v${version}";
-    sha256 = "09s0rhjpvaa89767m58wk1bqcmdkjk7brwj32k083f2wsdbbzb11";
+    sha256 = "03ljn4igi8l1fd1nvpn448d3sqvxyl0r0l9sbkimlx77g52wjv2j";
   };
 
   buildInputs = [
diff --git a/pkgs/development/libraries/libsoundio/default.nix b/pkgs/development/libraries/libsoundio/default.nix
index 7803b2a5ff11..f53db7241cf7 100644
--- a/pkgs/development/libraries/libsoundio/default.nix
+++ b/pkgs/development/libraries/libsoundio/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, cmake, alsaLib, libjack2, libpulseaudio, AudioUnit }:
 
 stdenv.mkDerivation rec {
-  version = "1.1.0";
+  version = "2.0.0";
   name = "libsoundio-${version}";
 
   src = fetchFromGitHub {
     owner = "andrewrk";
     repo = "libsoundio";
     rev = "${version}";
-    sha256 = "0mw197l4bci1cjc2z877gxwsvk8r43dr7qiwci2hwl2cjlcnqr2p";
+    sha256 = "12l4rvaypv87vigdrmjz48d4d6sq4gfxf5asvnc4adyabxb73i4x";
   };
 
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/libxc/default.nix b/pkgs/development/libraries/libxc/default.nix
index 1293b0af8cce..12fd972b8719 100644
--- a/pkgs/development/libraries/libxc/default.nix
+++ b/pkgs/development/libraries/libxc/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, gfortran, perl }:
 
 let
-  version = "4.2.3";
+  version = "4.3.4";
 
 in stdenv.mkDerivation {
   name = "libxc-${version}";
   src = fetchurl {
     url = "http://www.tddft.org/programs/octopus/down.php?file=libxc/${version}/libxc-${version}.tar.gz";
-    sha256 = "0mj26jga0nj76blf2rp9cmgf0v0yhsp7xrg92zgih7fjlydrxr02";
+    sha256 = "0dw356dfwn2bwjdfwwi4h0kimm69aql2f4yk9f2kk4q7qpfkgvm8";
   };
 
   buildInputs = [ gfortran ];
diff --git a/pkgs/development/libraries/libykclient/default.nix b/pkgs/development/libraries/libykclient/default.nix
new file mode 100644
index 000000000000..9aa189586f05
--- /dev/null
+++ b/pkgs/development/libraries/libykclient/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, help2man, curl }:
+
+stdenv.mkDerivation rec {
+  pname = "libykclient";
+  version = "unstable-2019-03-18";
+  src = fetchFromGitHub {
+    owner = "Yubico";
+    repo = "yubico-c-client";
+    rev = "ad9eda6aac4c3f81784607c30b971f4a050b5c2e";
+    sha256 = "01b19jgv2lypih6lhw9yjjsfl8q1ahl955vhr2ai8ccshh0050yj";
+  };
+
+  nativeBuildInputs = [ autoreconfHook pkgconfig help2man ];
+  buildInputs = [ curl ];
+
+  meta = with stdenv.lib; {
+    description = "Yubikey C client library";
+    homepage = https://developers.yubico.com/yubico-c-client;
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
diff --git a/pkgs/development/libraries/live555/default.nix b/pkgs/development/libraries/live555/default.nix
index 531261a58ca5..f9d07d8d7373 100644
--- a/pkgs/development/libraries/live555/default.nix
+++ b/pkgs/development/libraries/live555/default.nix
@@ -3,14 +3,14 @@
 # Based on https://projects.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD
 stdenv.mkDerivation rec {
   name = "live555-${version}";
-  version = "2019.02.03";
+  version = "2019.03.06";
 
   src = fetchurl { # the upstream doesn't provide a stable URL
     urls = [
       "mirror://sourceforge/slackbuildsdirectlinks/live.${version}.tar.gz"
       "https://download.videolan.org/contrib/live555/live.${version}.tar.gz"
     ];
-    sha256 = "04474r1drvgjpk33yjj79dq2hq15ncw8y3w6g9625zryan8qv4qw";
+    sha256 = "1gasdl95yjabv811knkmy5laj21a54z1jdfq36jdj984k1nw5l0b";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/minixml/default.nix b/pkgs/development/libraries/minixml/default.nix
index c2a61ec6fc1c..972cc3e738c7 100644
--- a/pkgs/development/libraries/minixml/default.nix
+++ b/pkgs/development/libraries/minixml/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "mxml-${version}";
-  version = "2.12";
+  version = "3.0";
 
   src = fetchFromGitHub {
     owner = "michaelrsweet";
     repo = "mxml";
     rev = "v${version}";
-    sha256 = "1m8z503vnfpm576gjpp1h7zmx09n50if2i28v24yx80j820ip94s";
+    sha256 = "0madp2v2md3xq96aham91byns6qy4byd5pbg28q827fdahfhpmq7";
   };
 
   enableParallelBuilding = true;
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A small XML library";
     homepage = https://www.msweet.org/mxml/;
-    license = licenses.lgpl2;
+    license = licenses.asl20;
     platforms = platforms.linux;
     maintainers = [ maintainers.goibhniu ];
   };
diff --git a/pkgs/development/libraries/mtxclient/default.nix b/pkgs/development/libraries/mtxclient/default.nix
index 15c82cb12825..3ab1e0a79749 100644
--- a/pkgs/development/libraries/mtxclient/default.nix
+++ b/pkgs/development/libraries/mtxclient/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, cmake, pkgconfig
+{ stdenv, fetchFromGitHub, fetchpatch, cmake, pkgconfig
 , boost, openssl, zlib, libsodium, olm, gtest, spdlog, nlohmann_json }:
 
 stdenv.mkDerivation rec {
@@ -12,6 +12,14 @@ stdenv.mkDerivation rec {
     sha256 = "19v1qa6mzvc65m7wy7x0g4i24bcg9xk31y1grwvd3zr0l4v6xcgs";
   };
 
+  patches = [
+    # remove on the next mtxclient update
+    (fetchpatch {
+      url = "https://github.com/Nheko-Reborn/mtxclient/commit/41314809da7eb17ec00cff1795af6a528c5e904a.diff";
+      sha256 = "17pzrkdhd4jr8xwd7hhyzak880k8yb9nkg3vcbyjfp5si89dha5j";
+    })
+  ];
+
   postPatch = ''
     ln -s ${nlohmann_json}/include/nlohmann/json.hpp include/json.hpp
   '';
diff --git a/pkgs/development/libraries/nuspell/default.nix b/pkgs/development/libraries/nuspell/default.nix
index 1d92a15ce005..b667dea8d49f 100644
--- a/pkgs/development/libraries/nuspell/default.nix
+++ b/pkgs/development/libraries/nuspell/default.nix
@@ -1,23 +1,24 @@
-{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, boost, icu, catch2 }:
+{ stdenv, fetchFromGitHub, cmake, pkgconfig, boost, icu, catch2 }:
 
 stdenv.mkDerivation rec {
   name = "nuspell-${version}";
-  version = "2.1.0";
+  version = "2.2.0";
 
   src = fetchFromGitHub {
     owner = "nuspell";
     repo = "nuspell";
     rev = "v${version}";
-    sha256 = "0gcw3p1agnx474r7kv27y9jyab20p4j4xx7j9a2yssg54qabm71j";
+    sha256 = "17khkb1sxn1p6rfql72l7a4lxafbxj0dwi95hsmyi6wajvfrg9sy";
   };
 
-  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+  nativeBuildInputs = [ cmake pkgconfig ];
   buildInputs = [ boost icu ];
 
   enableParallelBuilding = true;
 
-  preBuild = ''
-    ln -s ${catch2}/include/catch2/*.hpp tests/
+  postPatch = ''
+    rm -rf external/Catch2
+    ln -sf ${catch2.src} external/Catch2
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/osip/default.nix b/pkgs/development/libraries/osip/default.nix
index 6ee934c60c3a..ce917ccbe7f4 100644
--- a/pkgs/development/libraries/osip/default.nix
+++ b/pkgs/development/libraries/osip/default.nix
@@ -1,9 +1,9 @@
 {stdenv, fetchurl}:
 stdenv.mkDerivation rec {
-  version = "5.0.0";
+  version = "5.1.0";
   src = fetchurl {
     url = "mirror://gnu/osip/libosip2-${version}.tar.gz";
-    sha256 = "00yznbrm9q04wgd4b831km8iwlvwvsnwv87igf79g5vj9yakr88q";
+    sha256 = "0igic785fh458ck33kxb6i34l7bzdp9zpfjy5dxrcvv5gacklms0";
   };
   name = "libosip2-${version}";
 
diff --git a/pkgs/development/libraries/pcl/default.nix b/pkgs/development/libraries/pcl/default.nix
index 14eff45e4a17..08a1613c2feb 100644
--- a/pkgs/development/libraries/pcl/default.nix
+++ b/pkgs/development/libraries/pcl/default.nix
@@ -4,23 +4,15 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "pcl-1.8.1";
+  name = "pcl-1.9.1";
 
   src = fetchFromGitHub {
     owner = "PointCloudLibrary";
     repo = "pcl";
     rev = name;
-    sha256 = "05wvqqi2fyk5innw4mg356r71c1hmc9alc7xkf4g81ds3b3867xq";
+    sha256 = "0g0am3bf14sadfw231l5nmf5d2g1p9i7yq12c6q8rl7nw501ny9j";
   };
 
-  patches = [
-    # boost-1.67 compatibility
-    (fetchpatch {
-      url = "https://github.com/PointCloudLibrary/pcl/commit/2309bdab20fb2a385d374db6a87349199279db18.patch";
-      sha256 = "112p4687xrm0vsm0magmkvsm1hpks9hj42fm0lncy3yy2j1v3r4h";
-      name = "boost167-random.patch";
-  })];
-
   enableParallelBuilding = true;
 
   nativeBuildInputs = [ pkgconfig cmake ];
diff --git a/pkgs/development/libraries/phonon/backends/vlc.nix b/pkgs/development/libraries/phonon/backends/vlc.nix
index 773478f4dc03..829ecdb86e06 100644
--- a/pkgs/development/libraries/phonon/backends/vlc.nix
+++ b/pkgs/development/libraries/phonon/backends/vlc.nix
@@ -7,7 +7,7 @@
 with lib;
 
 let
-  v = "0.10.1";
+  v = "0.10.2";
   pname = "phonon-backend-vlc";
 in
 
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://kde/stable/phonon/${pname}/${v}/${pname}-${v}.tar.xz";
-    sha256 = "0b87mzkw9fdkrwgnh1kw5i5wnrd05rl42hynlykb7cfymsk6v5h9";
+    sha256 = "163jqq5p9n0yfw2fqk0cqn3c6mqycxsvc4956zhkw5345g81a2a9";
   };
 
   buildInputs =
diff --git a/pkgs/development/libraries/physics/applgrid/bad_code.patch b/pkgs/development/libraries/physics/applgrid/bad_code.patch
index c1c8f618fbb3..e90000efe2db 100644
--- a/pkgs/development/libraries/physics/applgrid/bad_code.patch
+++ b/pkgs/development/libraries/physics/applgrid/bad_code.patch
@@ -37,3 +37,14 @@ index d25288e..be354df 100644
    };
  
    typedef double (igrid::*transform_t)(double) const;
+diff --git a/src/lumi_pdf.cxx b/src/lumi_pdf.cxx
+--- a/src/lumi_pdf.cxx
++++ b/src/lumi_pdf.cxx
+@@ -235,6 +235,6 @@ void lumi_pdf::write(const std::string& filename) const {
+ // std::string lumi_pdf::summary(std::ostream& s=std::cout) const { 
+ std::string lumi_pdf::summary() const { 
+   std::stringstream s;
+-  s << "lumi_pdf::lumi_pdf() " << s << "\tsize " << m_combinations.size() << " lookup size " << m_lookup.size() << " " << this; 
++  s << "lumi_pdf::lumi_pdf() " << "\tsize " << m_combinations.size() << " lookup size " << m_lookup.size() << " " << this; 
+   return s.str();
+ }
diff --git a/pkgs/development/libraries/physics/herwig/default.nix b/pkgs/development/libraries/physics/herwig/default.nix
index 722dccaea7be..7a146bb7309a 100644
--- a/pkgs/development/libraries/physics/herwig/default.nix
+++ b/pkgs/development/libraries/physics/herwig/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "herwig-${version}";
-  version = "7.1.4";
+  version = "7.1.5";
 
   src = fetchurl {
     url = "https://www.hepforge.org/archive/herwig/Herwig-${version}.tar.bz2";
-    sha256 = "1awr1jz0q873x8bgwiilzklhk1zkgm6slvpychpnvsf9vk05mmdx";
+    sha256 = "0jnrv59zfa41gc37pqr3vaiz5jkh7w0k0alcax37b3mlbsnacr9r";
   };
 
   nativeBuildInputs = [ autoconf automake libtool ];
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     ++ (with lhapdf.pdf_sets; [ MMHT2014lo68cl MMHT2014nlo68cl ]);
 
   postPatch = ''
-    patchShebangs ./cat_with_cpplines
+    patchShebangs ./
   '';
 
   configureFlags = [
diff --git a/pkgs/development/libraries/physics/thepeg/default.nix b/pkgs/development/libraries/physics/thepeg/default.nix
index 63bc3c06e102..046413c64f49 100644
--- a/pkgs/development/libraries/physics/thepeg/default.nix
+++ b/pkgs/development/libraries/physics/thepeg/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "thepeg-${version}";
-  version = "2.1.4";
+  version = "2.1.5";
 
   src = fetchurl {
     url = "https://www.hepforge.org/archive/thepeg/ThePEG-${version}.tar.bz2";
-    sha256 = "1x9dfxmsbmzmsxrv3cczfyrnqkxjcpy89v6v7ycysrx9k8qkf320";
+    sha256 = "1rmmwhk9abn9mc9j3127axjwpvymv21ld4wcivwz01pldkxh06n6";
   };
 
   buildInputs = [ boost fastjet gsl hepmc lhapdf rivet zlib ];
diff --git a/pkgs/development/libraries/qt-5/5.11/default.nix b/pkgs/development/libraries/qt-5/5.11/default.nix
index 32245929ce62..379c370e1fcc 100644
--- a/pkgs/development/libraries/qt-5/5.11/default.nix
+++ b/pkgs/development/libraries/qt-5/5.11/default.nix
@@ -64,7 +64,11 @@ let
     qttools = [ ./qttools.patch ];
     qtwebengine = [ ./qtwebengine-no-build-skip.patch ]
       ++ optional stdenv.cc.isClang ./qtwebengine-clang-fix.patch
-      ++ optional stdenv.isDarwin ./qtwebengine-darwin-sdk-10.10.patch;
+      ++ optionals stdenv.isDarwin [
+        ./qtwebengine-darwin-no-platform-check.patch
+        ./qtwebengine-darwin-sdk-10.10.patch
+        ./qtwebengine-darwin-old-sdk.patch
+      ];
     qtwebkit = [ ./qtwebkit.patch ]
       ++ optionals stdenv.isDarwin [
         ./qtwebkit-darwin-no-readline.patch
diff --git a/pkgs/development/libraries/qt-5/5.11/fetch.sh b/pkgs/development/libraries/qt-5/5.11/fetch.sh
index dc1088fc371c..2ab3dd71c24f 100644
--- a/pkgs/development/libraries/qt-5/5.11/fetch.sh
+++ b/pkgs/development/libraries/qt-5/5.11/fetch.sh
@@ -1,2 +1 @@
-WGET_ARGS=( http://download.qt.io/official_releases/qt/5.11/5.11.3/submodules/ \
-            -A '*.tar.xz' )
+WGET_ARGS=( http://download.qt.io/official_releases/qt/5.11/5.11.3/submodules/ )
diff --git a/pkgs/development/libraries/qt-5/5.11/qtwebengine-darwin-no-platform-check.patch b/pkgs/development/libraries/qt-5/5.11/qtwebengine-darwin-no-platform-check.patch
new file mode 100644
index 000000000000..3e1a8762b361
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.11/qtwebengine-darwin-no-platform-check.patch
@@ -0,0 +1,37 @@
+diff --git a/mkspecs/features/platform.prf b/mkspecs/features/platform.prf
+--- a/mkspecs/features/platform.prf
++++ b/mkspecs/features/platform.prf
+@@ -38,10 +38,6 @@ defineTest(isPlatformSupported) {
+          return(false)
+     }
+   } else:osx {
+-    !isMinXcodeVersion(7, 3) {
+-      skipBuild("Using Xcode version $$QMAKE_XCODE_VERSION, but at least version 7.3 is required to build Qt WebEngine.")
+-      return(false)
+-    }
+     !clang|intel_icc {
+         skipBuild("Qt WebEngine on macOS requires Clang.")
+         return(false)
+@@ -52,10 +48,6 @@ defineTest(isPlatformSupported) {
+       skipBuild("Building Qt WebEngine requires macOS version 10.11 or newer.")
+       return(false)
+     }
+-    !isMinOSXSDKVersion(10, 10): {
+-      skipBuild("Building Qt WebEngine requires a macOS SDK version of 10.11 or newer. Current version is $${WEBENGINE_OSX_SDK_PRODUCT_VERSION}.")
+-      return(false)
+-    }
+   } else {
+     skipBuild("Unknown platform. Qt WebEngine only supports Linux, Windows, and macOS.")
+     return(false)
+diff --git a/src/core/config/mac_osx.pri b/src/core/config/mac_osx.pri
+--- a/src/core/config/mac_osx.pri
++++ b/src/core/config/mac_osx.pri
+@@ -5,8 +5,6 @@ load(functions)
+ # otherwise query for it.
+ QMAKE_MAC_SDK_VERSION = $$eval(QMAKE_MAC_SDK.$${QMAKE_MAC_SDK}.SDKVersion)
+ isEmpty(QMAKE_MAC_SDK_VERSION) {
+-     QMAKE_MAC_SDK_VERSION = $$system("/usr/bin/xcodebuild -sdk $${QMAKE_MAC_SDK} -version SDKVersion 2>/dev/null")
+-     isEmpty(QMAKE_MAC_SDK_VERSION): error("Could not resolve SDK version for \'$${QMAKE_MAC_SDK}\'")
+ }
+ 
+ QMAKE_CLANG_DIR = "/usr"
diff --git a/pkgs/development/libraries/qt-5/5.11/qtwebengine-darwin-old-sdk.patch b/pkgs/development/libraries/qt-5/5.11/qtwebengine-darwin-old-sdk.patch
new file mode 100644
index 000000000000..b065c2211017
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.11/qtwebengine-darwin-old-sdk.patch
@@ -0,0 +1,21 @@
+diff --git a/src/3rdparty/chromium/third_party/webrtc/sdk/objc/Framework/Classes/Common/RTCFieldTrials.mm b/src/3rdparty/chromium/third_party/webrtc/sdk/objc/Framework/Classes/Common/RTCFieldTrials.mm
+--- a/src/3rdparty/chromium/third_party/webrtc/sdk/objc/Framework/Classes/Common/RTCFieldTrials.mm
++++ b/src/3rdparty/chromium/third_party/webrtc/sdk/objc/Framework/Classes/Common/RTCFieldTrials.mm
+@@ -45,7 +45,7 @@ NSString *RTCFieldTrialTrendlineFilterValue(
+   return [NSString stringWithFormat:format, windowSize, smoothingCoeff, thresholdGain];
+ }
+ 
+-void RTCInitFieldTrialDictionary(NSDictionary<NSString *, NSString *> *fieldTrials) {
++void RTCInitFieldTrialDictionary(NSDictionary *fieldTrials) {
+   if (!fieldTrials) {
+     RTCLogWarning(@"No fieldTrials provided.");
+     return;
+diff --git a/src/3rdparty/chromium/third_party/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h b/src/3rdparty/chromium/third_party/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h
+--- a/src/3rdparty/chromium/third_party/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h
++++ b/src/3rdparty/chromium/third_party/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h
+@@ -40,4 +40,4 @@ RTC_EXTERN NSString *RTCFieldTrialTrendlineFilterValue(
+  *  Must be called before any other call into WebRTC. See:
+  *  webrtc/system_wrappers/include/field_trial_default.h
+  */
+-RTC_EXTERN void RTCInitFieldTrialDictionary(NSDictionary<NSString *, NSString *> *fieldTrials);
++RTC_EXTERN void RTCInitFieldTrialDictionary(NSDictionary *fieldTrials);
diff --git a/pkgs/development/libraries/qt-5/5.12/default.nix b/pkgs/development/libraries/qt-5/5.12/default.nix
index bc6432b5ca5a..6d0e241d7a54 100644
--- a/pkgs/development/libraries/qt-5/5.12/default.nix
+++ b/pkgs/development/libraries/qt-5/5.12/default.nix
@@ -63,7 +63,8 @@ let
     qtwebengine = [
       ./qtwebengine-no-build-skip.patch
       ./qtwebengine-CVE-2019-5786.patch
-    ];
+    ]
+      ++ optional stdenv.isDarwin ./qtwebengine-darwin-no-platform-check.patch;
     qtwebkit = [ ./qtwebkit.patch ]
       ++ optionals stdenv.isDarwin [
         ./qtwebkit-darwin-no-readline.patch
diff --git a/pkgs/development/libraries/qt-5/5.12/fetch.sh b/pkgs/development/libraries/qt-5/5.12/fetch.sh
index b77a58cafa2e..aa3a0fe94898 100644
--- a/pkgs/development/libraries/qt-5/5.12/fetch.sh
+++ b/pkgs/development/libraries/qt-5/5.12/fetch.sh
@@ -1,2 +1 @@
-WGET_ARGS=( http://download.qt.io/official_releases/qt/5.12/5.12.0/submodules/ \
-            -A '*.tar.xz' )
+WGET_ARGS=( http://download.qt.io/official_releases/qt/5.12/5.12.0/submodules/ )
diff --git a/pkgs/development/libraries/qt-5/5.12/qtwebengine-darwin-no-platform-check.patch b/pkgs/development/libraries/qt-5/5.12/qtwebengine-darwin-no-platform-check.patch
new file mode 100644
index 000000000000..364330169bf1
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.12/qtwebengine-darwin-no-platform-check.patch
@@ -0,0 +1,21 @@
+diff --git a/mkspecs/features/platform.prf b/mkspecs/features/platform.prf
+--- a/mkspecs/features/platform.prf
++++ b/mkspecs/features/platform.prf
+@@ -40,8 +40,6 @@ defineTest(isPlatformSupported) {
+   } else:osx {
+     # FIXME: Try to get it back down to 8.2 for building on OS X 10.11
+     !isMinXcodeVersion(8, 3, 3) {
+-      skipBuild("Using Xcode version $$QMAKE_XCODE_VERSION, but at least version 8.3.3 is required to build Qt WebEngine.")
+-      return(false)
+     }
+     !clang|intel_icc {
+         skipBuild("Qt WebEngine on macOS requires Clang.")
+@@ -54,8 +52,6 @@ defineTest(isPlatformSupported) {
+       return(false)
+     }
+     !isMinOSXSDKVersion(10, 12): {
+-      skipBuild("Building Qt WebEngine requires a macOS SDK version of 10.12 or newer. Current version is $${WEBENGINE_OSX_SDK_PRODUCT_VERSION}.")
+-      return(false)
+     }
+   } else {
+     skipBuild("Unknown platform. Qt WebEngine only supports Linux, Windows, and macOS.")
diff --git a/pkgs/development/libraries/qt-5/5.6/fetch.sh b/pkgs/development/libraries/qt-5/5.6/fetch.sh
index ee3a5ddf8deb..bb9eb66a01dc 100644
--- a/pkgs/development/libraries/qt-5/5.6/fetch.sh
+++ b/pkgs/development/libraries/qt-5/5.6/fetch.sh
@@ -1,3 +1,2 @@
 WGET_ARGS=( http://download.qt.io/official_releases/qt/5.6/5.6.3/submodules/ \
-            http://download.qt.io/community_releases/5.6/5.6.3/ \
-            -A '*.tar.xz' )
+            http://download.qt.io/community_releases/5.6/5.6.3/ )
diff --git a/pkgs/development/libraries/qt-5/5.9/default.nix b/pkgs/development/libraries/qt-5/5.9/default.nix
index 589f175efd9c..be84691e6c33 100644
--- a/pkgs/development/libraries/qt-5/5.9/default.nix
+++ b/pkgs/development/libraries/qt-5/5.9/default.nix
@@ -43,7 +43,9 @@ let
     qtscript = [ ./qtscript.patch ];
     qtserialport = [ ./qtserialport.patch ];
     qttools = [ ./qttools.patch ];
-    qtwebengine = [ ./qtwebengine-no-build-skip.patch ];
+    qtwebengine = [ ./qtwebengine-no-build-skip.patch ]
+      ++ optional stdenv.cc.isClang ./qtwebengine-clang-fix.patch
+      ++ optional stdenv.isDarwin ./qtwebengine-darwin-no-platform-check.patch;
     qtwebkit = [ ./qtwebkit.patch ];
     qtvirtualkeyboard = [
       (fetchpatch {
diff --git a/pkgs/development/libraries/qt-5/5.9/fetch.sh b/pkgs/development/libraries/qt-5/5.9/fetch.sh
index e631d3ae9b00..17ebe1e532df 100644
--- a/pkgs/development/libraries/qt-5/5.9/fetch.sh
+++ b/pkgs/development/libraries/qt-5/5.9/fetch.sh
@@ -1,2 +1 @@
-WGET_ARGS=( http://download.qt.io/official_releases/qt/5.9/5.9.7/submodules/ \
-            -A '*.tar.xz' )
+WGET_ARGS=( http://download.qt.io/official_releases/qt/5.9/5.9.7/submodules/ )
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebengine-clang-fix.patch b/pkgs/development/libraries/qt-5/5.9/qtwebengine-clang-fix.patch
new file mode 100644
index 000000000000..cf082cddd11a
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.9/qtwebengine-clang-fix.patch
@@ -0,0 +1,38 @@
+Fix a following build error:
+
+In file included from ../../3rdparty/chromium/device/bluetooth/bluetooth_remote_gatt_characteristic_mac.mm:7:
+In file included from ../../3rdparty/chromium/base/bind.h:8:
+../../3rdparty/chromium/base/bind_internal.h:214:31: error: cannot initialize a parameter of type 'NSError *' with an lvalue of type 'const long'
+    return (receiver.*method)(std::forward<RunArgs>(args)...);
+                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
+../../3rdparty/chromium/base/bind_internal.h:285:20: note: in instantiation of function template specialization 'base::internal::FunctorTraits<void (device::BluetoothRemoteGat
+tCharacteristicMac::*)(NSError *), void>::Invoke<device::BluetoothRemoteGattCharacteristicMac *, const long &>' requested here
+    return Traits::Invoke(std::forward<Functor>(functor),
+                   ^
+../../3rdparty/chromium/base/bind_internal.h:361:43: note: in instantiation of function template specialization 'base::internal::InvokeHelper<false, void>::MakeItSo<void (devi
+ce::BluetoothRemoteGattCharacteristicMac::*const &)(NSError *), device::BluetoothRemoteGattCharacteristicMac *, const long &>' requested here
+    return InvokeHelper<is_weak_call, R>::MakeItSo(
+                                          ^
+../../3rdparty/chromium/base/bind_internal.h:339:12: note: in instantiation of function template specialization 'base::internal::Invoker<base::internal::BindState<void (device::BluetoothRemoteGattCharacteristicMac::*)(NSError *), base::internal::UnretainedWrapper<device::BluetoothRemoteGattCharacteristicMac>, long>, void ()>::RunImpl<void (device::BluetoothRemoteGattCharacteristicMac::*const &)(NSError *), const std::__1::tuple<base::internal::UnretainedWrapper<device::BluetoothRemoteGattCharacteristicMac>, long> &, 0, 1>' requested here
+    return RunImpl(storage->functor_,
+           ^
+../../3rdparty/chromium/base/bind.h:62:45: note: in instantiation of member function 'base::internal::Invoker<base::internal::BindState<void (device::BluetoothRemoteGattCharacteristicMac::*)(NSError *), base::internal::UnretainedWrapper<device::BluetoothRemoteGattCharacteristicMac>, long>, void ()>::Run' requested here
+  PolymorphicInvoke invoke_func = &Invoker::Run;
+                                            ^
+../../3rdparty/chromium/base/bind.h:77:10: note: in instantiation of function template specialization 'base::BindRepeating<void (device::BluetoothRemoteGattCharacteristicMac::*)(NSError *), base::internal::UnretainedWrapper<device::BluetoothRemoteGattCharacteristicMac>, long>' requested here
+  return BindRepeating(std::forward<Functor>(functor),
+         ^
+../../3rdparty/chromium/device/bluetooth/bluetooth_remote_gatt_characteristic_mac.mm:241:15: note: in instantiation of function template specialization 'base::Bind<void (device::BluetoothRemoteGattCharacteristicMac::*)(NSError *), base::internal::UnretainedWrapper<device::BluetoothRemoteGattCharacteristicMac>, long>' requested here
+        base::Bind(&BluetoothRemoteGattCharacteristicMac::DidWriteValue,
+
+--- a/src/3rdparty/chromium/device/bluetooth/bluetooth_remote_gatt_characteristic_mac.mm
++++ b/src/3rdparty/chromium/device/bluetooth/bluetooth_remote_gatt_characteristic_mac.mm
+@@ -239,7 +239,7 @@ void BluetoothRemoteGattCharacteristicMac::WriteRemoteCharacteristic(
+     base::ThreadTaskRunnerHandle::Get()->PostTask(
+         FROM_HERE,
+         base::Bind(&BluetoothRemoteGattCharacteristicMac::DidWriteValue,
+-                   base::Unretained(this), nil));
++                   base::Unretained(this), nullptr));
+   }
+ }
+ 
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebengine-darwin-no-platform-check.patch b/pkgs/development/libraries/qt-5/5.9/qtwebengine-darwin-no-platform-check.patch
new file mode 100644
index 000000000000..7156c41c5ec1
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.9/qtwebengine-darwin-no-platform-check.patch
@@ -0,0 +1,50 @@
+diff --git a/mkspecs/features/configure.prf b/mkspecs/features/configure.prf
+--- a/mkspecs/features/configure.prf
++++ b/mkspecs/features/configure.prf
+@@ -194,9 +194,6 @@ defineTest(runConfigure) {
+         } else {
+             log("Native Spellchecker .............. Not enabled         (Default, enable with WEBENGINE_CONFIG+=use_native_spellchecker)$${EOL}")
+         }
+-        !isMinOSXSDKVersion(10, 10, 3) {
+-            log("  Force Touch API usage .............. Not enabled         (Because the OS X SDK version to be used \"$${WEBENGINE_OSX_SDK_PRODUCT_VERSION}\" is lower than the required \"10.10.3\")$${EOL}")
+-        }
+     }
+ }
+ 
+diff --git a/mkspecs/features/functions.prf b/mkspecs/features/functions.prf
+--- a/mkspecs/features/functions.prf
++++ b/mkspecs/features/functions.prf
+@@ -38,10 +38,6 @@ defineTest(isPlatformSupported) {
+       return(false)
+     }
+   } else:osx {
+-    !isMinXcodeVersion(5, 1) {
+-      skipBuild("Using XCode version $$QMAKE_XCODE_VERSION, but at least version 5.1 is required to build Qt WebEngine.")
+-      return(false)
+-    }
+     !clang|intel_icc {
+         skipBuild("Qt WebEngine on macOS requires Clang.")
+         return(false)
+@@ -52,10 +48,6 @@ defineTest(isPlatformSupported) {
+       skipBuild("Qt WebEngine requires OS X version 10.10 or newer.")
+       return(false)
+     }
+-    !isMinOSXSDKVersion(10, 10): {
+-      skipBuild("Qt WebEngine requires an OS X SDK version of 10.10 or newer. Current version is $${WEBENGINE_OSX_SDK_PRODUCT_VERSION}.")
+-      return(false)
+-    }
+   } else {
+     skipBuild("Unknown platform. Qt WebEngine only supports Linux, Windows, and OS X.")
+     return(false)
+diff --git a/src/core/config/mac_osx.pri b/src/core/config/mac_osx.pri
+--- a/src/core/config/mac_osx.pri
++++ b/src/core/config/mac_osx.pri
+@@ -5,8 +5,6 @@ load(functions)
+ # otherwise query for it.
+ QMAKE_MAC_SDK_VERSION = $$eval(QMAKE_MAC_SDK.$${QMAKE_MAC_SDK}.SDKVersion)
+ isEmpty(QMAKE_MAC_SDK_VERSION) {
+-     QMAKE_MAC_SDK_VERSION = $$system("/usr/bin/xcodebuild -sdk $${QMAKE_MAC_SDK} -version SDKVersion 2>/dev/null")
+-     isEmpty(QMAKE_MAC_SDK_VERSION): error("Could not resolve SDK version for \'$${QMAKE_MAC_SDK}\'")
+ }
+ 
+ QMAKE_CLANG_DIR = "/usr"
diff --git a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
index ddb828323371..91b7acf43654 100644
--- a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
@@ -67,32 +67,12 @@ qtModule {
         src/3rdparty/chromium/gpu/config/gpu_info_collector_linux.cc
     ''
     + optionalString stdenv.isDarwin (''
-      # Remove annoying xcode check
-      substituteInPlace mkspecs/features/platform.prf \
-        --replace "lessThan(QMAKE_XCODE_VERSION, 7.3)" false \
-        --replace "/usr/bin/xcodebuild" "xcodebuild"
-
-      substituteInPlace src/3rdparty/chromium/build/mac_toolchain.py \
-        --replace "/usr/bin/xcode-select" "xcode-select"
-
       substituteInPlace src/core/config/mac_osx.pri \
-        --replace /usr ${stdenv.cc} \
-        --replace "isEmpty(QMAKE_MAC_SDK_VERSION)" false
-
+        --replace /usr ${stdenv.cc}
     ''
-    # TODO remove when new Apple SDK is in
-    + (if lib.versionOlder qtCompatVersion "5.11" then ''
-    substituteInPlace src/3rdparty/chromium/base/mac/foundation_util.mm \
-      --replace "NSArray<NSString*>*" "NSArray*"
-    substituteInPlace src/3rdparty/chromium/base/mac/sdk_forward_declarations.h \
-      --replace "NSDictionary<VNImageOption, id>*" "NSDictionary*" \
-      --replace "NSArray<VNRequest*>*" "NSArray*" \
-      --replace "typedef NSString* VNImageOption NS_STRING_ENUM" "typedef NSString* VNImageOption"
-    '' else ''
-    substituteInPlace src/3rdparty/chromium/third_party/webrtc/sdk/objc/Framework/Classes/Common/RTCFieldTrials.mm \
-      --replace "NSDictionary<NSString *, NSString *> *" "NSDictionary*"
-    substituteInPlace src/3rdparty/chromium/third_party/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h \
-      --replace "NSDictionary<NSString *, NSString *> *" "NSDictionary*"
+    + (optionalString (lib.versionAtLeast qtCompatVersion "5.11") ''
+      substituteInPlace src/3rdparty/chromium/third_party/crashpad/crashpad/util/BUILD.gn \
+        --replace '$sysroot/usr' "${darwin.xnu}"
     '')
     + ''
 
@@ -114,9 +94,6 @@ print('sdk_platform_path=""')
 print('sdk_build="17B41"')
 EOF
 
-    substituteInPlace src/3rdparty/chromium/third_party/crashpad/crashpad/util/BUILD.gn \
-      --replace '$sysroot/usr' "${darwin.xnu}"
-
     # Apple has some secret stuff they don't share with OpenBSM
     substituteInPlace src/3rdparty/chromium/base/mac/mach_port_broker.mm \
       --replace "audit_token_to_pid(msg.trailer.msgh_audit)" "msg.trailer.msgh_audit.val[5]"
diff --git a/pkgs/development/libraries/rdkafka/default.nix b/pkgs/development/libraries/rdkafka/default.nix
index d7967d409792..840891d55ef9 100644
--- a/pkgs/development/libraries/rdkafka/default.nix
+++ b/pkgs/development/libraries/rdkafka/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "rdkafka-${version}";
-  version = "0.11.6";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     owner = "edenhill";
     repo = "librdkafka";
     rev = "v${version}";
-    sha256 = "17fah3x71ipnzvlj0yg8hfmqkk91s942z34p681r4k8giv7avm30";
+    sha256 = "1k4lk2vvvni87brs3j51by3j69ff2892jiq2f4979sxncq0apzlg";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/libraries/science/math/arpack/default.nix b/pkgs/development/libraries/science/math/arpack/default.nix
index 2a6c4af43fc3..05373cd1cbda 100644
--- a/pkgs/development/libraries/science/math/arpack/default.nix
+++ b/pkgs/development/libraries/science/math/arpack/default.nix
@@ -1,32 +1,48 @@
-{ stdenv, fetchurl, autoconf, automake, gettext, libtool
-, gfortran, openblas }:
+{ stdenv, fetchFromGitHub, cmake
+, gfortran, openblas, eigen }:
 
 with stdenv.lib;
 
 let
-  version = "3.6.3";
+  version = "3.7.0";
 in
 stdenv.mkDerivation {
   name = "arpack-${version}";
 
-  src = fetchurl {
-    url = "https://github.com/opencollab/arpack-ng/archive/${version}.tar.gz";
-    sha256 = "0lzlcsrjsi36pv5bnipwjnyg2fx3nrv31bw2klwrg11gb8g5bwv4";
+  src = fetchFromGitHub {
+    owner = "opencollab";
+    repo = "arpack-ng";
+    rev = version;
+    sha256 = "1x7a1dj3dg43nlpvjlh8jzzbadjyr3mbias6f0256qkmgdyk4izr";
   };
 
-  nativeBuildInputs = [ autoconf automake gettext libtool ];
-  buildInputs = [ gfortran openblas ];
+  nativeBuildInputs = [ cmake ];
+  buildInputs = [ gfortran openblas eigen ];
 
   doCheck = true;
 
   BLAS_LIBS = "-L${openblas}/lib -lopenblas";
 
-  INTERFACE64 = optional openblas.blas64 "1";
+  cmakeFlags = [
+    "-DBUILD_SHARED_LIBS=ON"
+    "-DINTERFACE64=${optionalString openblas.blas64 "1"}"
+  ];
+
+  preCheck = if stdenv.isDarwin then ''
+    export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:`pwd`/lib
+  '' else ''
+    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`/lib
+  '' + ''
+    # Prevent tests from using all cores
+    export OMP_NUM_THREADS=2
+  '';
 
-  preConfigure = ''
-    ./bootstrap
+  postInstall = ''
+    mkdir -p $out/lib/pkgconfig
+    cp arpack.pc $out/lib/pkgconfig/
   '';
 
+
   meta = {
     homepage = https://github.com/opencollab/arpack-ng;
     description = ''
diff --git a/pkgs/development/libraries/science/math/clblas/default.nix b/pkgs/development/libraries/science/math/clblas/default.nix
index 7a653a58eb2a..40dbfc53e2cb 100644
--- a/pkgs/development/libraries/science/math/clblas/default.nix
+++ b/pkgs/development/libraries/science/math/clblas/default.nix
@@ -8,21 +8,20 @@
 , ocl-icd
 , opencl-headers
 , Accelerate, CoreGraphics, CoreVideo, OpenCL
-, gtest
 }:
 
 stdenv.mkDerivation rec {
-  name = "clblas-${version}"; 
+  name = "clblas-${version}";
   version = "2.12";
 
   src = fetchFromGitHub {
-    owner = "clMathLibraries"; 
+    owner = "clMathLibraries";
     repo = "clBLAS";
     rev = "v${version}";
     sha256 = "154mz52r5hm0jrp5fqrirzzbki14c1jkacj75flplnykbl36ibjs";
-  }; 
+  };
 
-  patches = [ ./platform.patch ]; 
+  patches = [ ./platform.patch ];
 
   postPatch = ''
     sed -i -re 's/(set\(\s*Boost_USE_STATIC_LIBS\s+).*/\1OFF\ \)/g' src/CMakeLists.txt
@@ -33,7 +32,7 @@ stdenv.mkDerivation rec {
   '';
 
   cmakeFlags = [
-    "-DUSE_SYSTEM_GTEST=ON"
+     "-DBUILD_TEST=OFF"
   ];
 
   buildInputs = [
@@ -42,7 +41,6 @@ stdenv.mkDerivation rec {
     blas
     python
     boost
-    gtest
   ] ++ stdenv.lib.optionals (!stdenv.isDarwin) [
     ocl-icd
     opencl-headers
@@ -61,7 +59,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/clMathLibraries/clBLAS";
     description = "A software library containing BLAS functions written in OpenCL";
     longDescription = ''
-      This package contains a library of BLAS functions on top of OpenCL. 
+      This package contains a library of BLAS functions on top of OpenCL.
     '';
     license = licenses.asl20;
     maintainers = with maintainers; [ artuuge ];
diff --git a/pkgs/development/libraries/science/math/mkl/default.nix b/pkgs/development/libraries/science/math/mkl/default.nix
index 0801238fb121..1e166427a265 100644
--- a/pkgs/development/libraries/science/math/mkl/default.nix
+++ b/pkgs/development/libraries/science/math/mkl/default.nix
@@ -6,19 +6,19 @@
 stdenvNoCC.mkDerivation rec {
   name = "mkl-${version}";
   version = "${date}.${rel}";
-  date = "2019.0";
-  rel = "117";
+  date = "2019.3";
+  rel = "199";
 
   src = if stdenvNoCC.isDarwin
     then
       (fetchurl {
-        url = "http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/13565/m_mkl_${version}.dmg";
-        sha256 = "1f1jppac7vqwn00hkws0p4njx38ajh0n25bsjyb5d7jcacwfvm02";
+        url = "http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/15235/m_mkl_${version}.dmg";
+        sha256 = "14b3ciz7995sqcd6jz7hc8g2x4zwvqxmgxgni46vrlb7n523l62f";
       })
     else
       (fetchurl {
-        url = "http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/13575/l_mkl_${version}.tgz";
-        sha256 = "1bf7i54iqlf7x7fn8kqwmi06g30sxr6nq3ac0r871i6g0p3y47sf";
+        url = "http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/15275/l_mkl_${version}.tgz";
+        sha256 = "13rb2v2872jmvzcqm4fqsvhry0j2r5cn4lqql4wpqbl1yia2pph6";
       });
 
   buildInputs = if stdenvNoCC.isDarwin then [ undmg ] else [ rpmextract ];
@@ -30,7 +30,7 @@ stdenvNoCC.mkDerivation rec {
   '' else ''
     rpmextract rpm/intel-mkl-common-c-${date}-${rel}-${date}-${rel}.noarch.rpm
     rpmextract rpm/intel-mkl-core-rt-${date}-${rel}-${date}-${rel}.x86_64.rpm
-    rpmextract rpm/intel-openmp-19.0.0-${rel}-19.0.0-${rel}.x86_64.rpm
+    rpmextract rpm/intel-openmp-19.0.3-${rel}-19.0.3-${rel}.x86_64.rpm
   '';
 
   installPhase = if stdenvNoCC.isDarwin then ''
@@ -60,8 +60,8 @@ stdenvNoCC.mkDerivation rec {
   outputHashAlgo = "sha256";
   outputHashMode = "recursive";
   outputHash = if stdenvNoCC.isDarwin
-    then "00d49ls9vcjan1ngq2wx2q4p6lnm05zwh67hsmj7bnq43ykrfibw"
-    else "1amagcaan0hk3x9v7gg03gkw02n066v4kmjb32yyzsy5rfrivb1a";
+    then "0rwm46v9amq2clm6wxhr98zzbafr485dz05pihlqsbrbabmlfw30"
+    else "101krzh2mjbfx8kvxim2zphdvgg7iijhbf9xdz3ad3ncgybxbdvw";
 
   meta = with stdenvNoCC.lib; {
     description = "Intel Math Kernel Library";
diff --git a/pkgs/development/libraries/spirv-headers/default.nix b/pkgs/development/libraries/spirv-headers/default.nix
new file mode 100644
index 000000000000..40d272fd07d6
--- /dev/null
+++ b/pkgs/development/libraries/spirv-headers/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchFromGitHub, cmake }:
+stdenv.mkDerivation rec {
+  name = "spirv-headers-${version}";
+  version = "2019.1"; # spirv-tools version whose DEPS file calls for this commit
+
+  src = fetchFromGitHub {
+    owner = "KhronosGroup";
+    repo = "SPIRV-Headers";
+    rev = "79b6681aadcb53c27d1052e5f8a0e82a981dbf2f"; # from spirv-tools' DEPS
+    sha256 = "0flng2rdmc4ndq3j71h6wk1ibcjvhjrg2rzd6rv445vcsf0jh2pj";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  meta = with stdenv.lib; {
+    inherit (src.meta) homepage;
+    description = "Machine-readable components of the Khronos SPIR-V Registry";
+    license = licenses.mit;
+    maintainers = [ maintainers.ralith ];
+  };
+}
diff --git a/pkgs/development/libraries/tbb/default.nix b/pkgs/development/libraries/tbb/default.nix
index d8a74bdf591d..615ac4fa690c 100644
--- a/pkgs/development/libraries/tbb/default.nix
+++ b/pkgs/development/libraries/tbb/default.nix
@@ -2,13 +2,13 @@
 
 with stdenv.lib; stdenv.mkDerivation rec {
   name = "tbb-${version}";
-  version = "2018_U5";
+  version = "2019_U5";
 
   src = fetchFromGitHub {
     owner = "01org";
     repo = "tbb";
     rev = version;
-    sha256 = "080df8h2whnly6n9pslpg07dc9vr0p45gqgy9qijpjvxkjwfkdkp";
+    sha256 = "0390da1iya2mvn3ribjb1f8yvzsqsf5b16wn6dqbjxcz0crmwlzk";
   };
 
   makeFlags = concatStringsSep " " (
@@ -19,11 +19,10 @@ with stdenv.lib; stdenv.mkDerivation rec {
   patches = stdenv.lib.optional stdenv.hostPlatform.isMusl ./glibc-struct-mallinfo.patch;
 
   installPhase = ''
-    mkdir -p $out/{lib,share/doc}
+    mkdir -p $out/lib
     cp "build/"*release*"/"*${stdenv.hostPlatform.extensions.sharedLibrary}* $out/lib/
     mv include $out/
     rm $out/include/index.html
-    mv doc/html $out/share/doc/tbb
   '';
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/tpm2-tss/default.nix b/pkgs/development/libraries/tpm2-tss/default.nix
index d7dd0f76cd59..b092a973bc21 100644
--- a/pkgs/development/libraries/tpm2-tss/default.nix
+++ b/pkgs/development/libraries/tpm2-tss/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   pname = "tpm2-tss";
-  version = "2.2.1";
+  version = "2.2.2";
 
   src = fetchurl {
     url = "https://github.com/tpm2-software/${pname}/releases/download/${version}/${pname}-${version}.tar.gz";
-    sha256 = "194k0gg75ygclwhb205zr26qrnx4hsik7pbazs39yf15js55bksv";
+    sha256 = "0bbi1vpca5j7jbvy2z76jilpf5km5as1k37bkb2mwzmpibnypmf1";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/development/libraries/uthash/default.nix b/pkgs/development/libraries/uthash/default.nix
index 57a1cbf73c2c..b80984303d76 100644
--- a/pkgs/development/libraries/uthash/default.nix
+++ b/pkgs/development/libraries/uthash/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, perl }:
 
 let
-  version = "2.0.2";
+  version = "2.1.0";
 in
 stdenv.mkDerivation rec {
   name = "uthash-${version}";
 
   src = fetchurl {
     url = "https://github.com/troydhanson/uthash/archive/v${version}.tar.gz";
-    sha256 = "1la82gdlyl7m8ahdjirigwfh7zjgkc24cvydrqcri0vsvm8iv8rl";
+    sha256 = "17k6k97n20jpi9zj3lzvqfw8pv670r6rdqrjf8vrbx6hcj7csb0m";
   };
 
   dontBuild = false;
diff --git a/pkgs/development/libraries/vapoursynth-mvtools/default.nix b/pkgs/development/libraries/vapoursynth-mvtools/default.nix
index ecc6b7c30fc7..abdf9fbeed3c 100644
--- a/pkgs/development/libraries/vapoursynth-mvtools/default.nix
+++ b/pkgs/development/libraries/vapoursynth-mvtools/default.nix
@@ -4,13 +4,13 @@
 
 stdenv.mkDerivation rec {
   name = "vapoursynth-mvtools-${version}";
-  version = "20";
+  version = "21";
 
   src = fetchFromGitHub {
     owner  = "dubhater";
     repo   = "vapoursynth-mvtools";
     rev    = "v${version}";
-    sha256 = "0nbq04wbmz7xqfcfpdvgg0p8xhh2xdcwhhx5gwr4j8bm611v0npz";
+    sha256 = "0vjxpp4jmmjhcp8z81idsbgq6jyx0l4r4i32b8alnp6c9fahjh6p";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/libraries/vulkan-headers/default.nix b/pkgs/development/libraries/vulkan-headers/default.nix
index c93ba1b12909..5a3216583085 100644
--- a/pkgs/development/libraries/vulkan-headers/default.nix
+++ b/pkgs/development/libraries/vulkan-headers/default.nix
@@ -1,15 +1,15 @@
 { stdenv, fetchFromGitHub, cmake }:
 stdenv.mkDerivation rec {
   name = "vulkan-headers-${version}";
-  version = "1.1.85";
+  version = "1.1.101.0";
 
   buildInputs = [ cmake ];
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "Vulkan-Headers";
-    rev = "2fd5a24ec4a6df303b2155b3f85b6b8c1d56f6c0";
-    sha256 = "0cj4bd396qddh3nxvr7grnpfz89g3sbvm21cx4k3ga52sp1rslpb";
+    rev = "sdk-${version}";
+    sha256 = "1rrpkibi4lnd9j63aarjk74z0xf4sy30zh8psq1vj92r21hfjr6m";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/vulkan-loader/default.nix b/pkgs/development/libraries/vulkan-loader/default.nix
index 6f720857f7cf..04266361ea52 100644
--- a/pkgs/development/libraries/vulkan-loader/default.nix
+++ b/pkgs/development/libraries/vulkan-loader/default.nix
@@ -2,7 +2,7 @@
 , xlibsWrapper, libxcb, libXrandr, libXext, wayland, libGL_driver }:
 
 let
-  version = "1.1.85";
+  version = "1.1.101.0";
 in
 
 assert version == vulkan-headers.version;
@@ -13,8 +13,8 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "Vulkan-Loader";
-    rev = "b02f64293680c484e1d7ff6ecb88f89277c0dc8c";
-    sha256 = "1n4vjyxlmi2ygx34srwbvalc5gz95gcsrmdw0k10353xja755gmj";
+    rev = "sdk-${version}";
+    sha256 = "0x891bha9mlsh4cvq59d1qnb4fnalwf6ml2b9y221cr7hikilamw";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -28,10 +28,6 @@ stdenv.mkDerivation rec {
 
   outputs = [ "out" "dev" ];
 
-  postInstall = ''
-    cp -r "${vulkan-headers}/include" "$dev"
-  '';
-
   meta = with stdenv.lib; {
     description = "LunarG Vulkan loader";
     homepage    = https://www.lunarg.com;
diff --git a/pkgs/development/libraries/wolfssl/default.nix b/pkgs/development/libraries/wolfssl/default.nix
index 8f3808bffcbc..e7feaabc739a 100644
--- a/pkgs/development/libraries/wolfssl/default.nix
+++ b/pkgs/development/libraries/wolfssl/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "wolfssl-${version}";
-  version = "3.15.7";
+  version = "4.0.0";
 
   src = fetchFromGitHub {
     owner = "wolfSSL";
     repo = "wolfssl";
     rev = "v${version}-stable";
-    sha256 = "128z1f7nry278kdjzq950cr81bml8p17fgdchmpvy0awhh7r20y9";
+    sha256 = "155lmgz81ky0x04c8m2yzlsm58i9jk6hiw1ajc3wizvbpczbca57";
   };
 
   configureFlags = [ "--enable-all" ];
diff --git a/pkgs/development/libraries/yubico-pam/default.nix b/pkgs/development/libraries/yubico-pam/default.nix
new file mode 100644
index 000000000000..5d7d0e664c64
--- /dev/null
+++ b/pkgs/development/libraries/yubico-pam/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig
+, asciidoc, libxslt, docbook_xsl
+, pam, yubikey-personalization, libyubikey, libykclient }:
+
+stdenv.mkDerivation rec {
+  pname = "yubico-pam";
+  version = "unstable-2019-03-19";
+  src = fetchFromGitHub {
+    owner = "Yubico";
+    repo = pname;
+    rev = "1c6fa66825e77b3ad8df46513d0125bed9bde704";
+    sha256 = "1g41wdwa1wbp391w1crbis4hwz60m3y06rd6j59m003zx40sk9s4";
+  };
+
+  nativeBuildInputs = [ autoreconfHook pkgconfig asciidoc libxslt docbook_xsl ];
+  buildInputs = [ pam yubikey-personalization libyubikey libykclient ];
+
+  meta = with stdenv.lib; {
+    description = "Yubico PAM module";
+    homepage = https://developers.yubico.com/yubico-pam;
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
diff --git a/pkgs/development/misc/msp430/gcc-support.nix b/pkgs/development/misc/msp430/gcc-support.nix
new file mode 100644
index 000000000000..a6f84bc86d7d
--- /dev/null
+++ b/pkgs/development/misc/msp430/gcc-support.nix
@@ -0,0 +1,31 @@
+{ stdenvNoCC, fetchzip }:
+
+let
+  mspgccVersion = "6_1_0_0";
+  version = "1.206";
+in stdenvNoCC.mkDerivation {
+  name = "msp430-gcc-support-files-${version}";
+  src = fetchzip {
+    url = "http://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/MSPGCC/${mspgccVersion}/exports/msp430-gcc-support-files-${version}.zip";
+    sha256 = "0h297jms3gkmdcqmfpr3cg6v9wxnms34qbwvwl2fkmrz20vk766q";
+  };
+
+  buildCommand = ''
+    find $src/include -name '*.ld' | xargs install -Dm0644 -t $out/lib
+    find $src/include -name '*.h' | xargs install -Dm0644 -t $out/include
+    install -Dm0644 -t $out/include $src/include/devices.csv
+
+    # appease bintoolsWrapper_addLDVars, search path needed for ld scripts
+    touch $out/lib/lib
+  '';
+
+  meta = with stdenvNoCC.lib; {
+    description = ''
+      Development headers and linker scripts for TI MSP430 microcontrollers
+    '';
+    homepage = https://www.ti.com/tool/msp430-gcc-opensource;
+    license = licenses.bsd3;
+    platforms = [ "msp430-none" ];
+    maintainers = with maintainers; [ aerialx ];
+  };
+}
diff --git a/pkgs/development/misc/msp430/mspdebug.nix b/pkgs/development/misc/msp430/mspdebug.nix
new file mode 100644
index 000000000000..0456c8eae769
--- /dev/null
+++ b/pkgs/development/misc/msp430/mspdebug.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchFromGitHub, libusb, readline ? null }:
+
+let
+  version = "0.25";
+in stdenv.mkDerivation {
+  name = "mspdebug-${version}";
+  src = fetchFromGitHub {
+    owner = "dlbeer";
+    repo = "mspdebug";
+    rev = "v${version}";
+    sha256 = "0prgwb5vx6fd4bj12ss1bbb6axj2kjyriyjxqrzd58s5jyyy8d3c";
+  };
+
+  buildInputs = [ libusb readline ];
+  makeFlags = [ "PREFIX=$(out)" "INSTALL=install" ] ++
+    (if readline == null then [ "WITHOUT_READLINE=1" ] else []);
+
+  meta = with stdenv.lib; {
+    description = "A free programmer, debugger, and gdb proxy for MSP430 MCUs";
+    homepage = https://dlbeer.co.nz/mspdebug/;
+    license = licenses.gpl2;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ aerialx ];
+  };
+}
diff --git a/pkgs/development/misc/msp430/newlib.nix b/pkgs/development/misc/msp430/newlib.nix
new file mode 100644
index 000000000000..4ea98bfc8b2e
--- /dev/null
+++ b/pkgs/development/misc/msp430/newlib.nix
@@ -0,0 +1,25 @@
+{ stdenvNoCC, lndir, newlib, msp430GccSupport }:
+
+stdenvNoCC.mkDerivation {
+  name = "msp430-${newlib.name}";
+  inherit newlib;
+  inherit msp430GccSupport;
+
+  preferLocalBuild = true;
+  allowSubstitutes = false;
+
+  buildCommand = ''
+    mkdir $out
+    ${lndir}/bin/lndir -silent $newlib $out
+    ${lndir}/bin/lndir -silent $msp430GccSupport/include $out/${newlib.incdir}
+    ${lndir}/bin/lndir -silent $msp430GccSupport/lib $out/${newlib.libdir}
+  '';
+
+  passthru = {
+    inherit (newlib) incdir libdir;
+  };
+
+  meta = {
+    platforms = [ "msp430-none" ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/extlib/default.nix b/pkgs/development/ocaml-modules/extlib/default.nix
index de759e922781..dba3e2569574 100644
--- a/pkgs/development/ocaml-modules/extlib/default.nix
+++ b/pkgs/development/ocaml-modules/extlib/default.nix
@@ -3,11 +3,11 @@
 assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "3.11";
 
 stdenv.mkDerivation {
-  name = "ocaml${ocaml.version}-extlib-1.7.5";
+  name = "ocaml${ocaml.version}-extlib-1.7.6";
 
   src = fetchurl {
-    url = http://ygrek.org.ua/p/release/ocaml-extlib/extlib-1.7.5.tar.gz;
-    sha256 = "19slqf5bdj0rrph2w41giwmn6df2qm07942jn058pjkjrnk30d4s";
+    url = http://ygrek.org.ua/p/release/ocaml-extlib/extlib-1.7.6.tar.gz;
+    sha256 = "0wfs20v1yj5apdbj7214wdsr17ayh0qqq7ihidndvc8nmmwfa1dz";
   };
 
   buildInputs = [ ocaml findlib cppo ];
diff --git a/pkgs/development/ocaml-modules/janestreet/default.nix b/pkgs/development/ocaml-modules/janestreet/default.nix
index 504e83734d88..988b7147fcb4 100644
--- a/pkgs/development/ocaml-modules/janestreet/default.nix
+++ b/pkgs/development/ocaml-modules/janestreet/default.nix
@@ -324,10 +324,11 @@ rec {
     pname = "re2";
     hash = "0bl65d0nmvr7k1mkkcc4aai86l5qzgn1xxwmszshpwhaz87cqghd";
     propagatedBuildInputs = [ core_kernel ];
-    meta = {
-      description = "OCaml bindings for RE2";
-      broken = stdenv.isDarwin;
-    };
+    prePatch = ''
+      substituteInPlace src/re2_c/jbuild --replace 'CXX=g++' 'CXX=c++'
+      substituteInPlace src/jbuild --replace '(cxx_flags ((:standard \ -pedantic) (-I re2_c/libre2)))' '(cxx_flags ((:standard \ -pedantic) (-I re2_c/libre2) (-x c++)))'
+    '';
+    meta.description = "OCaml bindings for RE2";
   };
 
   core_extended = janePackage {
diff --git a/pkgs/development/ocaml-modules/stdint/default.nix b/pkgs/development/ocaml-modules/stdint/default.nix
index 129f9dd7289f..0b8f83a1ea3e 100644
--- a/pkgs/development/ocaml-modules/stdint/default.nix
+++ b/pkgs/development/ocaml-modules/stdint/default.nix
@@ -1,19 +1,20 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild }:
+{ stdenv, fetchFromGitHub, ocaml, findlib, dune }:
 
 stdenv.mkDerivation rec {
-  name = "ocaml${ocaml.version}-stdint-${version}";
-  version = "0.5.0";
+  pname = "stdint";
+  name = "ocaml${ocaml.version}-${pname}-${version}";
+  version = "0.5.1";
   src = fetchFromGitHub {
     owner = "andrenth";
     repo = "ocaml-stdint";
     rev = version;
-    sha256 = "1xjzqq13m7cqrfwa6vcwxirm17w8bx025dgnjqjgd3k2lxfgd1j7";
+    sha256 = "0z2z77m3clna9m9k0f8fd1400cdlglvy1kr893qs3907b3v0c057";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild ];
-  configurePhase = "ocaml setup.ml -configure --prefix $out";
+  buildInputs = [ ocaml findlib dune ];
 
-  createFindlibDestdir = true;
+  buildPhase = "dune build -p ${pname}";
+  inherit (dune) installPhase;
 
   meta = {
     description = "Various signed and unsigned integers for OCaml";
diff --git a/pkgs/development/ocaml-modules/syslog/default.nix b/pkgs/development/ocaml-modules/syslog/default.nix
index e8eabcf43b30..117277fe1b6e 100644
--- a/pkgs/development/ocaml-modules/syslog/default.nix
+++ b/pkgs/development/ocaml-modules/syslog/default.nix
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
 
   buildInputs = [ ocaml findlib ];
 
+  buildFlags = [ "all" "opt" ];
+
   createFindlibDestdir = true;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/ocaml-modules/zmq/default.nix b/pkgs/development/ocaml-modules/zmq/default.nix
index 2a1864093719..d454d244959f 100644
--- a/pkgs/development/ocaml-modules/zmq/default.nix
+++ b/pkgs/development/ocaml-modules/zmq/default.nix
@@ -11,10 +11,6 @@ buildDunePackage rec {
     sha256 = "1f5l4bw78y4drabhyvmpj3z8k30bill33ca7bzhr02m55yf6gqpf";
   };
 
-  patches = [
-    ./ocaml-zmq-issue43.patch
-  ];
-
   buildInputs = [ czmq ];
 
   propagatedBuildInputs = [ stdint ];
diff --git a/pkgs/development/ocaml-modules/zmq/ocaml-zmq-issue43.patch b/pkgs/development/ocaml-modules/zmq/ocaml-zmq-issue43.patch
deleted file mode 100644
index 0d01e8b45f39..000000000000
--- a/pkgs/development/ocaml-modules/zmq/ocaml-zmq-issue43.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- source/zmq/src/caml_zmq_stubs.c	1970-01-01 01:00:01.000000000 +0100
-+++ source/zmq/src/caml_zmq_stubs.c	1970-01-01 01:00:01.000000000 +0100
-@@ -35,7 +35,7 @@
- #include "socket.h"
- #include "msg.h"
- 
--#include <uint64.h>
-+#include <ocaml_stdint/uint64.h>
- 
- /**
-  * Version
diff --git a/pkgs/development/perl-modules/DBD-Oracle/default.nix b/pkgs/development/perl-modules/DBD-Oracle/default.nix
new file mode 100644
index 000000000000..9db926bf94da
--- /dev/null
+++ b/pkgs/development/perl-modules/DBD-Oracle/default.nix
@@ -0,0 +1,15 @@
+{ fetchurl, buildPerlPackage, DBI, TestNoWarnings, oracle-instantclient }:
+
+buildPerlPackage rec {
+  name = "DBD-Oracle-1.76";
+
+  src = fetchurl {
+    url = "mirror://cpan/authors/id/Z/ZA/ZARQUON/${name}.tar.gz";
+    sha256 = "b6db7f43c6252179274cfe99c1950b93e248f8f0fe35b07e50388c85d814d5f3";
+  };
+
+  ORACLE_HOME = "${oracle-instantclient}/lib";
+
+  buildInputs = [ TestNoWarnings oracle-instantclient ] ;
+  propagatedBuildInputs = [ DBI ];
+}
diff --git a/pkgs/development/python-modules/aioesphomeapi/default.nix b/pkgs/development/python-modules/aioesphomeapi/default.nix
new file mode 100644
index 000000000000..80c85a2614ca
--- /dev/null
+++ b/pkgs/development/python-modules/aioesphomeapi/default.nix
@@ -0,0 +1,23 @@
+{ lib, buildPythonPackage, fetchPypi, attrs, protobuf, zeroconf }:
+
+buildPythonPackage rec {
+  pname = "aioesphomeapi";
+  version = "1.8.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "16ywa7yggmsx8m2r9azdq7w9fxjh736g1vd1aibgh24g7srhwwhj";
+  };
+
+  propagatedBuildInputs = [ attrs protobuf zeroconf ];
+
+  # no tests implemented
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Python Client for ESPHome native API";
+    homepage = https://github.com/esphome/aioesphomeapi;
+    license = licenses.mit;
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/pkgs/development/python-modules/altair/default.nix b/pkgs/development/python-modules/altair/default.nix
index 544be4f67dd6..b870e9197f87 100644
--- a/pkgs/development/python-modules/altair/default.nix
+++ b/pkgs/development/python-modules/altair/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "altair";
-  version = "2.3.0";
+  version = "2.4.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "9f4bc7cd132c0005deb6b36c7041ee213a69bbdfcd8c0b1a9f1ae8c1fba733f6";
+    sha256 = "1lqln4510qqqla6s8z4ca0271qrhq6yyznsijsdn3nssvxsynqpc";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/amqp/default.nix b/pkgs/development/python-modules/amqp/default.nix
index 54b6e87a1cea..29fd1f592f30 100644
--- a/pkgs/development/python-modules/amqp/default.nix
+++ b/pkgs/development/python-modules/amqp/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "amqp";
-  version = "2.4.1";
+  version = "2.4.2";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "6816eed27521293ee03aa9ace300a07215b11fee4e845588a9b863a7ba30addb";
+    sha256 = "043beb485774ca69718a35602089e524f87168268f0d1ae115f28b88d27f92d7";
   };
 
   checkInputs = [ pytest case pytest-sugar ];
diff --git a/pkgs/development/python-modules/asynctest/default.nix b/pkgs/development/python-modules/asynctest/default.nix
index 187e0924ccac..020ba9df8b00 100644
--- a/pkgs/development/python-modules/asynctest/default.nix
+++ b/pkgs/development/python-modules/asynctest/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "asynctest";
-  version = "0.12.2";
+  version = "0.12.3";
 
   disabled = pythonOlder "3.4";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "77520850ae21620ec31738f4a7b467acaa44de6d3752d8ac7a9f4dcf55d77853";
+    sha256 = "bbeb45bb41344d2cbb814b4c89c04f2c568742352736cabf7af6fcbed06f66cc";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/baselines/default.nix b/pkgs/development/python-modules/baselines/default.nix
new file mode 100644
index 000000000000..2fd58010f5a7
--- /dev/null
+++ b/pkgs/development/python-modules/baselines/default.nix
@@ -0,0 +1,59 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytest
+, gym
+, scipy
+, tqdm
+, joblib
+, dill
+, progressbar2
+, cloudpickle
+, click
+, pyzmq
+, tensorflow
+, mpi4py
+}:
+
+buildPythonPackage rec {
+  pname = "baselines";
+  version = "0.1.5";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0n1mxkcg82gzhkb4j5zzwm335r3rc1sblknqs4x6nkrrh42d65cm";
+  };
+
+  patches = [
+    # already fixed upstream
+    ./fix-dep-names.patch
+  ];
+
+  propagatedBuildInputs = [
+    gym
+    scipy
+    tqdm
+    joblib
+    pyzmq
+    dill
+    progressbar2
+    mpi4py
+    cloudpickle
+    tensorflow
+    click
+  ];
+
+  # fails to create a daemon, probably because of sandboxing
+  doCheck = false;
+
+  checkInputs = [
+    pytest
+  ];
+
+  meta = with lib; {
+    description = "High-quality implementations of reinforcement learning algorithms";
+    homepage = https://github.com/openai/baselines;
+    license = licenses.mit;
+    maintainers = with maintainers; [ timokau ];
+  };
+}
diff --git a/pkgs/development/python-modules/baselines/fix-dep-names.patch b/pkgs/development/python-modules/baselines/fix-dep-names.patch
new file mode 100644
index 000000000000..5b0de29247af
--- /dev/null
+++ b/pkgs/development/python-modules/baselines/fix-dep-names.patch
@@ -0,0 +1,18 @@
+diff --git a/setup.py b/setup.py
+index bf8badc..570be20 100644
+--- a/setup.py
++++ b/setup.py
+@@ -10,11 +10,11 @@ setup(name='baselines',
+       packages=[package for package in find_packages()
+                 if package.startswith('baselines')],
+       install_requires=[
+-          'gym[mujoco,atari,classic_control,robotics]',
++          'gym',
+           'scipy',
+           'tqdm',
+           'joblib',
+-          'zmq',
++          'pyzmq',
+           'dill',
+           'progressbar2',
+           'mpi4py',
diff --git a/pkgs/development/python-modules/beaker/default.nix b/pkgs/development/python-modules/beaker/default.nix
index 7a17fd0f1d0a..3882af3a67df 100644
--- a/pkgs/development/python-modules/beaker/default.nix
+++ b/pkgs/development/python-modules/beaker/default.nix
@@ -2,42 +2,75 @@
 , buildPythonPackage
 , fetchFromGitHub
 , nose
+, pylibmc
+, memcached
+, redis
+, pymongo
 , mock
 , webtest
 , sqlalchemy
 , pycrypto
+, cryptography
 , isPy27
+, isPy3k
 , funcsigs
 , pycryptopp
 }:
 
 buildPythonPackage rec {
   pname = "Beaker";
-  version = "1.8.0";
+  version = "1.10.1";
 
   # The pypy release do not contains the tests
   src = fetchFromGitHub {
     owner = "bbangert";
     repo = "beaker";
     rev = "${version}";
-    sha256 = "17yfr7a307n8rdl09was4j60xqk2s0hk0hywdkigrpj4qnw0is7g";
+    sha256 = "0xrvg503xmi28w0hllr4s7fkap0p09fgw2wax3p1s2r6b3xjvbz7";
   };
 
-  buildInputs =
-    [ nose
-      mock
-      webtest
-    ];
   propagatedBuildInputs = [
     sqlalchemy
     pycrypto
+    cryptography
   ] ++ lib.optionals (isPy27) [
     funcsigs
     pycryptopp
   ];
 
+  checkInputs = [
+    nose
+    mock
+    webtest
+    pylibmc
+    memcached
+    redis
+    pymongo
+  ];
+
+
+  # Can not run memcached tests because it immediately tries to connect
+  postPatch = lib.optionalString isPy3k ''
+    substituteInPlace setup.py \
+      --replace "python-memcached" "python3-memcached"
+    '' + ''
+
+    rm tests/test_memcached.py
+  '';
+
+  # Disable external tests because they need to connect to a live database.
+  # Also disable a test in test_cache.py called "test_upgrade" because
+  # it currently fails on darwin.
+  # Please see issue https://github.com/bbangert/beaker/issues/166
+  checkPhase = ''
+    nosetests \
+      -e ".*test_ext_.*" \
+      -e "test_upgrade" \
+      -vv tests
+  '';
+
   meta = {
     description = "A Session and Caching library with WSGI Middleware";
     maintainers = with lib.maintainers; [ garbas domenkozar ];
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/python-modules/black/default.nix b/pkgs/development/python-modules/black/default.nix
index 6ad124e8fd4b..fc729dd399d2 100644
--- a/pkgs/development/python-modules/black/default.nix
+++ b/pkgs/development/python-modules/black/default.nix
@@ -1,16 +1,16 @@
 { stdenv, buildPythonPackage, fetchPypi, pythonOlder
-, attrs, click, toml, appdirs, aiohttp
+, attrs, click, toml, appdirs, aiohttp, aiohttp-cors
 , glibcLocales, pytest }:
 
 buildPythonPackage rec {
   pname = "black";
-  version = "18.9b0";
+  version = "19.3b0";
 
   disabled = pythonOlder "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1992ramdwv8sg4mbl5ajirwj5i4a48zjgsycib0fnbaliyiajc70";
+    sha256 = "073kd5rs02lisp6n3h7yai9lix520xnaa6c7rdmp2sci9pyhz5b8";
   };
 
   checkInputs =  [ pytest glibcLocales ];
@@ -23,7 +23,7 @@ buildPythonPackage rec {
       --deselect tests/test_black.py::BlackTestCase::test_failed_formatting_does_not_get_cached
   '';
 
-  propagatedBuildInputs = [ attrs appdirs click toml aiohttp ];
+  propagatedBuildInputs = [ attrs appdirs click toml aiohttp aiohttp-cors ];
 
   meta = with stdenv.lib; {
     description = "The uncompromising Python code formatter";
diff --git a/pkgs/development/python-modules/cassandra-driver/default.nix b/pkgs/development/python-modules/cassandra-driver/default.nix
index 05fe33f7e2eb..a40238412c6d 100644
--- a/pkgs/development/python-modules/cassandra-driver/default.nix
+++ b/pkgs/development/python-modules/cassandra-driver/default.nix
@@ -21,11 +21,11 @@
 
 buildPythonPackage rec {
   pname = "cassandra-driver";
-  version = "3.16.0";
+  version = "3.17.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1gjs2lqy0ba6zhh13a1dhirk59i7lc4zcbl7h50619hdm5kv3g22";
+    sha256 = "1z49z6f9rj9kp1v03s1hs1rg8cj49rh0yk0fc2qi57w7slgy2hkd";
   };
 
   buildInputs = [
diff --git a/pkgs/development/python-modules/celery/default.nix b/pkgs/development/python-modules/celery/default.nix
index c22bb427a349..404ead243a98 100644
--- a/pkgs/development/python-modules/celery/default.nix
+++ b/pkgs/development/python-modules/celery/default.nix
@@ -4,13 +4,18 @@
 
 buildPythonPackage rec {
   pname = "celery";
-  version = "4.3.0rc1";
+  version = "4.3.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1jmg47l0b3bnwmg44x48bwziwyk6xqs1y5plvr99a3ikz1l807yf";
+    sha256 = "4c4532aa683f170f40bd76f928b70bc06ff171a959e06e71bf35f2f9d6031ef9";
   };
 
+  postPatch = ''
+    substituteInPlace requirements/test.txt \
+      --replace "pytest>=4.3.1,<4.4.0" pytest
+  '';
+
   # make /etc/protocols accessible to fix socket.getprotobyname('tcp') in sandbox
   preCheck = stdenv.lib.optionalString stdenv.isLinux ''
     export NIX_REDIRECTS=/etc/protocols=${iana-etc}/etc/protocols \
diff --git a/pkgs/development/python-modules/chameleon/default.nix b/pkgs/development/python-modules/chameleon/default.nix
index 104bdb86bf00..41e653354e7b 100644
--- a/pkgs/development/python-modules/chameleon/default.nix
+++ b/pkgs/development/python-modules/chameleon/default.nix
@@ -5,11 +5,11 @@
 
 buildPythonPackage rec {
   pname = "Chameleon";
-  version = "3.5";
+  version = "3.6";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1a83jf211mqjhgbd3abqyrn4mp4vb077ql8fydmv80xg3whrf3yb";
+    sha256 = "0141kfwx553q73wzfl624pppmbhh7fpzvaj5pbj21pqlk2rhfx75";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/cherrypy/17.nix b/pkgs/development/python-modules/cherrypy/17.nix
new file mode 100644
index 000000000000..daeb6ca45267
--- /dev/null
+++ b/pkgs/development/python-modules/cherrypy/17.nix
@@ -0,0 +1,36 @@
+{ lib, buildPythonPackage, fetchPypi
+, setuptools_scm
+, cheroot, contextlib2, portend, routes, six, zc_lockfile
+, backports_unittest-mock, objgraph, pathpy, pytest, pytestcov, backports_functools_lru_cache, requests_toolbelt
+}:
+
+buildPythonPackage rec {
+  pname = "cherrypy";
+  version = "17.4.1";
+
+  src = fetchPypi {
+    pname = "CherryPy";
+    inherit version;
+    sha256 = "1kl17anzz535jgkn9qcy0c2m0zlafph0iv7ph3bb9mfrs2bgvagv";
+  };
+
+  propagatedBuildInputs = [
+    cheroot contextlib2 portend routes six zc_lockfile
+  ];
+
+  nativeBuildInputs = [ setuptools_scm ];
+
+  checkInputs = [
+    backports_unittest-mock objgraph pathpy pytest pytestcov backports_functools_lru_cache requests_toolbelt
+  ];
+
+  checkPhase = ''
+    pytest
+  '';
+
+  meta = with lib; {
+    homepage = https://www.cherrypy.org;
+    description = "A pythonic, object-oriented HTTP framework";
+    license = licenses.bsd3;
+  };
+}
diff --git a/pkgs/development/python-modules/cherrypy/default.nix b/pkgs/development/python-modules/cherrypy/default.nix
index 4a860c5510ca..b39353f649d1 100644
--- a/pkgs/development/python-modules/cherrypy/default.nix
+++ b/pkgs/development/python-modules/cherrypy/default.nix
@@ -1,54 +1,40 @@
 { lib, buildPythonPackage, fetchPypi, isPy3k
-, cheroot, contextlib2, portend, routes, six
-, setuptools_scm, zc_lockfile, more-itertools
-, backports_unittest-mock, objgraph, pathpy, pytest, pytestcov
-, backports_functools_lru_cache, requests_toolbelt, pytest-services
+, setuptools_scm
+, cheroot, portend, more-itertools, zc_lockfile, routes
+, objgraph, pytest, pytestcov, pathpy, requests_toolbelt, pytest-services
 }:
 
-let
-  srcInfo = if isPy3k then {
-    version = "18.1.0";
-    sha256 = "4dd2f59b5af93bd9ca85f1ed0bb8295cd0f5a8ee2b84d476374d4e070aa5c615";
-  } else {
-    version = "17.4.1";
-    sha256 = "1kl17anzz535jgkn9qcy0c2m0zlafph0iv7ph3bb9mfrs2bgvagv";
-  };
-in buildPythonPackage rec {
-  pname = "CherryPy";
-  inherit (srcInfo) version;
+buildPythonPackage rec {
+  pname = "cherrypy";
+  version = "18.1.1";
+
+  disabled = !isPy3k;
 
   src = fetchPypi {
-    inherit pname;
-    inherit (srcInfo) version sha256;
+    pname = "CherryPy";
+    inherit version;
+    sha256 = "6585c19b5e4faffa3613b5bf02c6a27dcc4c69a30d302aba819639a2af6fa48b";
   };
 
-  propagatedBuildInputs = if isPy3k then [
+  propagatedBuildInputs = [
     # required
     cheroot portend more-itertools zc_lockfile
     # optional
     routes
-  ] else [
-    cheroot contextlib2 portend routes six zc_lockfile
   ];
 
-  buildInputs = [ setuptools_scm ];
+  nativeBuildInputs = [ setuptools_scm ];
 
-  checkInputs = if isPy3k then [
+  checkInputs = [
     objgraph pytest pytestcov pathpy requests_toolbelt pytest-services
-  ] else [
-    backports_unittest-mock objgraph pathpy pytest pytestcov backports_functools_lru_cache requests_toolbelt
   ];
 
   checkPhase = ''
-    # 3 out of 5 SignalHandlingTests need network access
-    # test_2_File_Concurrency also fails upstream: https://github.com/cherrypy/cherrypy/issues/1306
-    # ...and skipping it makes 2 other tests fail
-    LANG=en_US.UTF-8 pytest -k "not SignalHandlingTests and not test_4_Autoreload \
-                            and not test_2_File_Concurrency and not test_3_Redirect and not test_4_File_deletion"
+    pytest
   '';
 
   meta = with lib; {
-    homepage = "http://www.cherrypy.org";
+    homepage = https://www.cherrypy.org;
     description = "A pythonic, object-oriented HTTP framework";
     license = licenses.bsd3;
   };
diff --git a/pkgs/development/python-modules/contextvars/default.nix b/pkgs/development/python-modules/contextvars/default.nix
index 27ee2fc82f9e..b378c901fad8 100644
--- a/pkgs/development/python-modules/contextvars/default.nix
+++ b/pkgs/development/python-modules/contextvars/default.nix
@@ -2,16 +2,14 @@
 
 buildPythonPackage rec {
   pname = "contextvars";
-  version = "2.3";
+  version = "2.4";
   disabled = !isPy36;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "09fnni8cyxm070bfv9ay030qbyk0dfds5nq77s0p38h33hp08h93";
+    sha256 = "f38c908aaa59c14335eeea12abea5f443646216c4e29380d7bf34d2018e2c39e";
   };
 
-  # pull request for this patch is https://github.com/MagicStack/contextvars/pull/9
-  patches = [ ./immutables_version.patch ];
   propagatedBuildInputs = [ immutables ];
 
   meta = {
diff --git a/pkgs/development/python-modules/contextvars/immutables_version.patch b/pkgs/development/python-modules/contextvars/immutables_version.patch
deleted file mode 100644
index 733c0502a665..000000000000
--- a/pkgs/development/python-modules/contextvars/immutables_version.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./setup.py	2018-07-30 15:40:14.000000000 +0000
-+++ ./setup.py	2019-02-12 18:33:24.984430303 +0000
-@@ -17,7 +17,7 @@
-     packages=['contextvars'],
-     provides=['contextvars'],
-     install_requires=[
--        'immutables==0.6',
-+        'immutables>=0.6',
-     ],
-     license='Apache License, Version 2.0',
-     classifiers=[
diff --git a/pkgs/development/python-modules/cufflinks/default.nix b/pkgs/development/python-modules/cufflinks/default.nix
index 95825b07b233..1344ef4d6ae2 100644
--- a/pkgs/development/python-modules/cufflinks/default.nix
+++ b/pkgs/development/python-modules/cufflinks/default.nix
@@ -1,19 +1,27 @@
-{ buildPythonPackage, stdenv, fetchPypi, pandas, plotly, colorlover
+{ buildPythonPackage, stdenv, fetchPypi
+, numpy, pandas, plotly, six, colorlover
+, ipython, ipywidgets, nose
 }:
 
 buildPythonPackage rec {
   pname = "cufflinks";
-  version = "0.14.6";
+  version = "0.15";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "4188324361cc584214150aadaeb28ed07e9d150adb714b53c5f09d5b3fcdd28a";
+    sha256 = "014098a4568199957198c0a7fe3dbeb3b4010b6de8d692a41fe3b3ac107b660e";
   };
 
-  propagatedBuildInputs = [ pandas plotly colorlover ];
+  propagatedBuildInputs = [
+    numpy pandas plotly six colorlover
+    ipython ipywidgets
+  ];
 
-  # tests not included in archive
-  doCheck = false;
+  checkInputs = [ nose ];
+
+  checkPhase = ''
+    nosetests -xv tests.py
+  '';
 
   meta = {
     homepage = https://github.com/santosjorge/cufflinks;
diff --git a/pkgs/development/python-modules/devpi-common/default.nix b/pkgs/development/python-modules/devpi-common/default.nix
index 185ab310510a..4a070a578731 100644
--- a/pkgs/development/python-modules/devpi-common/default.nix
+++ b/pkgs/development/python-modules/devpi-common/default.nix
@@ -1,4 +1,4 @@
-{ lib, buildPythonPackage, fetchPypi, requests, py, pytest }:
+{ lib, buildPythonPackage, fetchPypi, requests, py, pytest, pytest-flakes }:
 
 buildPythonPackage rec {
   pname = "devpi-common";
@@ -10,7 +10,7 @@ buildPythonPackage rec {
   };
 
   propagatedBuildInputs = [ requests py ];
-  checkInputs = [ pytest ];
+  checkInputs = [ pytest pytest-flakes ];
 
   checkPhase = ''
     py.test
diff --git a/pkgs/development/python-modules/dlib/default.nix b/pkgs/development/python-modules/dlib/default.nix
index 90e2c526789f..c200b6959b64 100644
--- a/pkgs/development/python-modules/dlib/default.nix
+++ b/pkgs/development/python-modules/dlib/default.nix
@@ -1,12 +1,17 @@
-{ buildPythonPackage, dlib, python, pytest }:
+{ buildPythonPackage, dlib, python, pytest, avxSupport ? true }:
 
 buildPythonPackage {
   inherit (dlib) name src nativeBuildInputs buildInputs meta;
 
+  # although AVX can be enabled, we never test with it. Some Hydra machines
+  # fail because of this, however their build results are probably used on hardware
+  # with AVX support.
   checkPhase = ''
     ${python.interpreter} nix_run_setup test --no USE_AVX_INSTRUCTIONS
   '';
 
+  setupPyBuildFlags = [ "--${if avxSupport then "yes" else "no"} USE_AVX_INSTRUCTIONS" ];
+
   patches = [ ./build-cores.patch ];
 
   checkInputs = [ pytest ];
diff --git a/pkgs/development/python-modules/face_recognition/default.nix b/pkgs/development/python-modules/face_recognition/default.nix
index b532c7d19f73..2856eeeab1b9 100644
--- a/pkgs/development/python-modules/face_recognition/default.nix
+++ b/pkgs/development/python-modules/face_recognition/default.nix
@@ -4,13 +4,13 @@
 
 buildPythonPackage rec {
   pname = "face_recognition";
-  version = "1.2.2";
+  version = "1.2.3";
 
   src = fetchFromGitHub {
     repo = pname;
     owner = "ageitgey";
-    rev = "v${version}";
-    sha256 = "17jnyr80j1p74gyvh1jabvwd3zsxvip2y7cjhh2g6gsjv2dpvrjv";
+    rev = "634db2e4309a365cee2503cb65d6f2e88f519d1e";
+    sha256 = "06zw5hq417d5yp17zynhxhb73074lx2qy64fqfzf711rw5vrn2mx";
   };
 
   postPatch = ''
@@ -19,6 +19,15 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ pillow click dlib numpy face_recognition_models ];
 
+  # Our dlib is compiled with AVX instructions by default which breaks
+  # with "Illegal instruction" on some builders due to missing hardware features.
+  #
+  # As this makes the build fairly unreliable, it's better to skip the test and to ensure that
+  # the build is working and after each change to the package, manual testing should be done.
+  doCheck = false;
+
+  # Although tests are disabled by default, checkPhase still exists, so
+  # maintainers can check the package's functionality locally before modifying it.
   checkInputs = [ flake8 pytest glibcLocales ];
   checkPhase = ''
     LC_ALL="en_US.UTF-8" py.test
diff --git a/pkgs/development/python-modules/first/default.nix b/pkgs/development/python-modules/first/default.nix
index 16c1d79d767a..3b91fb717bc4 100644
--- a/pkgs/development/python-modules/first/default.nix
+++ b/pkgs/development/python-modules/first/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "first";
-  version = "2.0.1";
+  version = "2.0.2";
   name = pname + "-" + version;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0pn9hl2y0pz61la1xhkdz6vl9i2dg3nh0ksizcf0f9ybh8sxxcrv";
+    sha256 = "1gykyrm6zlrbf9iz318p57qwk594mx1jf0d79v79g32zql45na7z";
   };
 
   doCheck = false; # no tests
diff --git a/pkgs/development/python-modules/folium/default.nix b/pkgs/development/python-modules/folium/default.nix
index 78db8e0e10cd..1557cfdd52d5 100644
--- a/pkgs/development/python-modules/folium/default.nix
+++ b/pkgs/development/python-modules/folium/default.nix
@@ -14,11 +14,11 @@
 
 buildPythonPackage rec {
   pname = "folium";
-  version = "0.7.0";
+  version = "0.8.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "04mhdl3k644j45rlfkamxz1paf58fxrmnwgvkrvza2fcwcs4nr9n";
+    sha256 = "0f25fhwxnix8hddzf67barzjwwsvpww112zisrvz2lpl08j388rn";
   };
 
   checkInputs = [ pytest nbconvert pandas mock ];
diff --git a/pkgs/development/python-modules/importlib-metadata/default.nix b/pkgs/development/python-modules/importlib-metadata/default.nix
index 55c835e75cce..046cfbad26b6 100644
--- a/pkgs/development/python-modules/importlib-metadata/default.nix
+++ b/pkgs/development/python-modules/importlib-metadata/default.nix
@@ -1,29 +1,36 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, setuptools_scm
+, zipp
 , pathlib2
 , contextlib2
+, configparser
 , isPy3k
 , importlib-resources
+, packaging
 }:
 
 buildPythonPackage rec {
   pname = "importlib-metadata";
-  version = "0.6";
+  version = "0.8";
 
   src = fetchPypi {
     pname = "importlib_metadata";
     inherit version;
-    sha256 = "36b02c84f9001adf65209fefdf951be8e9014a95eab9938c0779ad5670359b1c";
+    sha256 = "b50191ead8c70adfa12495fba19ce6d75f2e0275c14c5a7beb653d6799b512bd";
   };
 
-  propagatedBuildInputs = [] ++ lib.optionals (!isPy3k) [ pathlib2 contextlib2 ];
+  nativeBuildInputs = [ setuptools_scm ];
 
-  checkInputs = [ importlib-resources ];
+  propagatedBuildInputs = [ zipp ]
+    ++ lib.optionals (!isPy3k) [ pathlib2 contextlib2 configparser ];
+
+  checkInputs = [ importlib-resources packaging ];
 
   meta = with lib; {
     description = "Read metadata from Python packages";
     homepage = https://importlib-metadata.readthedocs.io/;
     license = licenses.asl20;
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/python-modules/jupyterhub/default.nix b/pkgs/development/python-modules/jupyterhub/default.nix
index 0478d59c7085..978ed150ef45 100644
--- a/pkgs/development/python-modules/jupyterhub/default.nix
+++ b/pkgs/development/python-modules/jupyterhub/default.nix
@@ -13,6 +13,7 @@
 , tornado
 , traitlets
 , requests
+, notebook
 , pythonOlder
 , nodePackages
 }:
@@ -106,7 +107,7 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [
     alembic ipython jinja2 pamela python-oauth2 requests sqlalchemy tornado
-    traitlets prometheus_client async_generator
+    traitlets prometheus_client async_generator notebook
   ];
 
   # Disable tests because they take an excessive amount of time to complete.
diff --git a/pkgs/development/python-modules/kombu/default.nix b/pkgs/development/python-modules/kombu/default.nix
index b70228b6835a..72de84f9c59e 100644
--- a/pkgs/development/python-modules/kombu/default.nix
+++ b/pkgs/development/python-modules/kombu/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "kombu";
-  version = "4.3.0";
+  version = "4.5.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "529df9e0ecc0bad9fc2b376c3ce4796c41b482cf697b78b71aea6ebe7ca353c8";
+    sha256 = "389ba09e03b15b55b1a7371a441c894fd8121d174f5583bbbca032b9ea8c9edd";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/lark-parser/default.nix b/pkgs/development/python-modules/lark-parser/default.nix
index 6858a6bcf949..3dedc3b06d88 100644
--- a/pkgs/development/python-modules/lark-parser/default.nix
+++ b/pkgs/development/python-modules/lark-parser/default.nix
@@ -6,13 +6,13 @@
 
 buildPythonPackage rec {
   pname = "lark-parser";
-  version = "0.6.5";
+  version = "0.6.6";
 
   src = fetchFromGitHub {
     owner = "lark-parser";
     repo = "lark";
     rev = version;
-    sha256 = "0mf10xm9blqik8mwrpw0r07vqlk2y4r98yqvk1sq849zqlxmqpsr";
+    sha256 = "0kaiw8zzzcp92p6mzm9zkyhv578p0x4lzjsyl8b4rnsafplmbscs";
   };
 
   checkPhase = ''
diff --git a/pkgs/development/python-modules/libarcus/default.nix b/pkgs/development/python-modules/libarcus/default.nix
index 004fedf79b4d..671949669492 100644
--- a/pkgs/development/python-modules/libarcus/default.nix
+++ b/pkgs/development/python-modules/libarcus/default.nix
@@ -3,14 +3,14 @@
 
 buildPythonPackage rec {
   pname = "libarcus";
-  version = "3.6.0";
+  version = "4.0.0";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "Ultimaker";
     repo = "libArcus";
     rev = version;
-    sha256 = "1zbp6axai47k3p2q497wiajls1h17wss143zynbwbwrqinsfiw43";
+    sha256 = "14c62bsc2cynhaajpdidcqpq2vqwshrdkqyzwvpsjjbfmlx3b1ay";
   };
 
   disabled = pythonOlder "3.4.0";
diff --git a/pkgs/development/python-modules/libgpuarray/default.nix b/pkgs/development/python-modules/libgpuarray/default.nix
index ef01fde2daa7..6babc6ae0145 100644
--- a/pkgs/development/python-modules/libgpuarray/default.nix
+++ b/pkgs/development/python-modules/libgpuarray/default.nix
@@ -66,8 +66,9 @@ buildPythonPackage rec {
 
   enableParallelBuilding = true;
 
+  nativeBuildInputs = [ cmake ];
+
   buildInputs = [
-    cmake
     cython
     nose
   ];
diff --git a/pkgs/development/python-modules/libsavitar/default.nix b/pkgs/development/python-modules/libsavitar/default.nix
index 52760420b83c..dc783ba8f33a 100644
--- a/pkgs/development/python-modules/libsavitar/default.nix
+++ b/pkgs/development/python-modules/libsavitar/default.nix
@@ -2,14 +2,14 @@
 
 buildPythonPackage rec {
   pname = "libsavitar";
-  version = "3.6.0";
+  version = "4.0.0";
   format = "other";
 
   src = fetchFromGitHub {
     owner = "Ultimaker";
     repo = "libSavitar";
     rev = version;
-    sha256 = "1bz8ga0n9aw65hqzajbr93dcv5g555iaihbhs1jq2k47cx66klzv";
+    sha256 = "1q70l37qafzfkpw8vlagmpd2w576b6jc1xmxp3wf3qfq45j8kya0";
   };
 
   postPatch = ''
diff --git a/pkgs/development/python-modules/matplotlib/2.nix b/pkgs/development/python-modules/matplotlib/2.nix
index fb433be8d990..810f37b4b136 100644
--- a/pkgs/development/python-modules/matplotlib/2.nix
+++ b/pkgs/development/python-modules/matplotlib/2.nix
@@ -5,7 +5,8 @@
 , enableGhostscript ? false, ghostscript ? null, gtk3
 , enableGtk2 ? false, pygtk ? null, gobject-introspection
 , enableGtk3 ? false, cairo
-, enableTk ? false, tcl ? null, tk ? null, tkinter ? null, libX11 ? null
+# darwin has its own "MacOSX" backend
+, enableTk ? !stdenv.isDarwin, tcl ? null, tk ? null, tkinter ? null, libX11 ? null
 , enableQt ? false, pyqt4
 , libcxx
 , Cocoa
diff --git a/pkgs/development/python-modules/matplotlib/default.nix b/pkgs/development/python-modules/matplotlib/default.nix
index e795181e2ff0..d3ea365082cd 100644
--- a/pkgs/development/python-modules/matplotlib/default.nix
+++ b/pkgs/development/python-modules/matplotlib/default.nix
@@ -4,7 +4,8 @@
 , enableGhostscript ? true, ghostscript ? null, gtk3
 , enableGtk2 ? false, pygtk ? null, gobject-introspection
 , enableGtk3 ? false, cairo
-, enableTk ? false, tcl ? null, tk ? null, tkinter ? null, libX11 ? null
+# darwin has its own "MacOSX" backend
+, enableTk ? !stdenv.isDarwin, tcl ? null, tk ? null, tkinter ? null, libX11 ? null
 , enableQt ? false, pyqt4
 , libcxx
 , Cocoa
diff --git a/pkgs/development/python-modules/minio/default.nix b/pkgs/development/python-modules/minio/default.nix
new file mode 100644
index 000000000000..c8595f0383e7
--- /dev/null
+++ b/pkgs/development/python-modules/minio/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, lib, buildPythonPackage, isPy3k, fetchPypi
+, urllib3, python-dateutil , pytz, faker, mock, nose }:
+
+buildPythonPackage rec {
+  pname = "minio";
+  version = "4.0.13";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1sbmv1lskm5cs3jmn8f2688pimgibly16g8ycc6fgnsjanyby35l";
+  };
+
+  disabled = !isPy3k;
+
+  checkInputs = [ faker mock nose ];
+  propagatedBuildInputs = [ urllib3 python-dateutil pytz ];
+
+  meta = with lib; {
+    description = "Simple APIs to access any Amazon S3 compatible object storage server";
+    homepage = https://github.com/minio/minio-py;
+    maintainers = with maintainers; [ peterromfeldhk ];
+    license = licenses.asl20;
+  };
+}
diff --git a/pkgs/development/python-modules/netdisco/default.nix b/pkgs/development/python-modules/netdisco/default.nix
index d3fac8df084a..1c9af258995d 100644
--- a/pkgs/development/python-modules/netdisco/default.nix
+++ b/pkgs/development/python-modules/netdisco/default.nix
@@ -2,13 +2,13 @@
 
 buildPythonPackage rec {
   pname = "netdisco";
-  version = "2.5.0";
+  version = "2.6.0";
 
   disabled = !isPy3k;
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "2ecb9830ceed5cf8f2ccc5a9bbe02ca5f6851435f5315a5402f0123311f13b37";
+    sha256 = "2b3aca14a1807712a053f11fd80dc251dd821ee4899aefece515287981817762";
   };
 
   propagatedBuildInputs = [ requests zeroconf netifaces ];
diff --git a/pkgs/development/python-modules/nevow/default.nix b/pkgs/development/python-modules/nevow/default.nix
index 1adfe13dd13b..fa11ab3fb907 100644
--- a/pkgs/development/python-modules/nevow/default.nix
+++ b/pkgs/development/python-modules/nevow/default.nix
@@ -12,6 +12,8 @@ buildPythonPackage rec {
 
   propagatedBuildInputs = [ twisted ];
 
+  checkInputs = [ twisted ];
+
   checkPhase = ''
     trial formless nevow
   '';
diff --git a/pkgs/development/python-modules/nvchecker/default.nix b/pkgs/development/python-modules/nvchecker/default.nix
index c636346a5e36..7ceffb7a8dd2 100644
--- a/pkgs/development/python-modules/nvchecker/default.nix
+++ b/pkgs/development/python-modules/nvchecker/default.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "nvchecker";
-  version = "1.3";
+  version = "1.4.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0lgcc05c515d7692zvcmf36n2qpyn0bi018i1z3jy73abm04230j";
+    sha256 = "0v340wkq4sn9pvcpjh076l8mcqkn3nrn7if8p6iysk02bjxvknbv";
   };
 
   propagatedBuildInputs = [ setuptools structlog tornado pycurl ];
diff --git a/pkgs/development/python-modules/osmnx/default.nix b/pkgs/development/python-modules/osmnx/default.nix
index c34b75bd0415..ae4e8a039711 100755
--- a/pkgs/development/python-modules/osmnx/default.nix
+++ b/pkgs/development/python-modules/osmnx/default.nix
@@ -3,13 +3,13 @@
 
 buildPythonPackage rec {
   pname = "osmnx";
-  version = "0.8.1";
+  version = "0.9";
 
   src = fetchFromGitHub {
     owner  = "gboeing";
     repo   = pname;
     rev    = "v${version}";
-    sha256 = "1pn2v3dhbmb0yhqif9padg7x3sdx27pgfr95i3kxj4v0yrviaf9k";
+    sha256 = "1k3y5kl4k93vxaxyanc040x44s2fyyc3m1ndy2j3kg0037z8ad4z";
   };
 
   propagatedBuildInputs = [ geopandas descartes matplotlib networkx numpy pandas requests Rtree shapely folium scikitlearn scipy ];
diff --git a/pkgs/development/python-modules/pluginbase/default.nix b/pkgs/development/python-modules/pluginbase/default.nix
index 98d189d62b1c..c0d44e2851e2 100644
--- a/pkgs/development/python-modules/pluginbase/default.nix
+++ b/pkgs/development/python-modules/pluginbase/default.nix
@@ -1,16 +1,21 @@
-{ stdenv, fetchPypi, buildPythonPackage, pytest, tox }:
+{ stdenv, fetchPypi, buildPythonPackage, pytest }:
 
 buildPythonPackage rec {
   version = "1.0.0";
   pname = "pluginbase";
 
-  buildInputs = [ pytest tox ];
-
   src = fetchPypi {
     inherit pname version;
     sha256 = "497894df38d0db71e1a4fbbfaceb10c3ef49a3f95a0582e11b75f8adaa030005";
   };
 
+  checkInputs = [ pytest ];
+
+  checkPhase = ''
+    cd tests
+    PYTHONPATH=.. pytest
+  '';
+
   meta = with stdenv.lib; {
     homepage = https://github.com/mitsuhiko/pluginbase;
     description = "A support library for building plugins sytems in Python";
diff --git a/pkgs/development/python-modules/progress/default.nix b/pkgs/development/python-modules/progress/default.nix
index 4b8269136ad2..d6c8d9125d16 100644
--- a/pkgs/development/python-modules/progress/default.nix
+++ b/pkgs/development/python-modules/progress/default.nix
@@ -5,17 +5,14 @@
 }:
 
 buildPythonPackage rec {
-  version = "1.4";
+  version = "1.5";
   pname = "progress";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "5e2f9da88ed8236a76fffbee3ceefd259589cf42dfbc2cec2877102189fae58a";
+    sha256 = "0wj3wvdgfmqj44n32wag3mzpp5fjqkkd321x67v1prxvs78yvv39";
   };
 
-  # tests not packaged with pypi release
-  doCheck = false;
-
   checkPhase = ''
     ${python.interpreter} test_progress.py
   '';
diff --git a/pkgs/development/python-modules/progressbar/default.nix b/pkgs/development/python-modules/progressbar/default.nix
index a8e8bf07ad56..a68ecf59ad0e 100644
--- a/pkgs/development/python-modules/progressbar/default.nix
+++ b/pkgs/development/python-modules/progressbar/default.nix
@@ -4,9 +4,6 @@ buildPythonPackage rec {
   pname = "progressbar";
   version = "2.5";
 
-  # https://github.com/niltonvolpato/python-progressbar/issues/54
-  disabled = isPy3k;
-
   src = fetchPypi {
     inherit pname version;
     sha256 = "5d81cb529da2e223b53962afd6c8ca0f05c6670e40309a7219eacc36af9b6c63";
diff --git a/pkgs/development/python-modules/pybullet/default.nix b/pkgs/development/python-modules/pybullet/default.nix
new file mode 100644
index 000000000000..944278ce3c2c
--- /dev/null
+++ b/pkgs/development/python-modules/pybullet/default.nix
@@ -0,0 +1,34 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, libGLU_combined
+, xorg
+}:
+
+buildPythonPackage rec {
+  pname = "pybullet";
+  version = "2.4.8";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0b6dkrac5zydxqfrf827xhamsimychrn77dsfnz1kf7c1crlwcw9";
+  };
+
+  buildInputs = [
+    libGLU_combined
+    xorg.libX11
+  ];
+
+  patches = [
+    # make sure X11 and OpenGL can be found at runtime
+    ./static-libs.patch
+  ];
+
+  meta = with lib; {
+    description = "Open-source software for robot simulation, integrated with OpenAI Gym";
+    homepage = https://pybullet.org/;
+    license = licenses.zlib;
+    maintainers = with maintainers; [ timokau ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/python-modules/pybullet/static-libs.patch b/pkgs/development/python-modules/pybullet/static-libs.patch
new file mode 100644
index 000000000000..08a68b814866
--- /dev/null
+++ b/pkgs/development/python-modules/pybullet/static-libs.patch
@@ -0,0 +1,13 @@
+diff --git a/setup.py b/setup.py
+index 98efabdbf..e69e79084 100644
+--- a/setup.py
++++ b/setup.py
+@@ -563,6 +563,8 @@ print("-----")
+ 
+ extensions = []
+ 
++libraries += [ "X11", "GL" ] # statically link x11 and opengl
++
+ pybullet_ext = Extension("pybullet",
+         sources =  sources,
+         libraries = libraries,
diff --git a/pkgs/development/python-modules/pyls-black/default.nix b/pkgs/development/python-modules/pyls-black/default.nix
index 10c34dd8353c..bd27de6eba77 100644
--- a/pkgs/development/python-modules/pyls-black/default.nix
+++ b/pkgs/development/python-modules/pyls-black/default.nix
@@ -4,13 +4,13 @@
 
 buildPythonPackage rec {
   pname = "pyls-black";
-  version = "0.3.0";
+  version = "0.4.4";
 
   src = fetchFromGitHub {
     owner = "rupert";
     repo = "pyls-black";
     rev = "v${version}";
-    sha256 = "1pagbafb9r9glzy7nbvrq19msjy4wqahrvmc0wll0a0r4msqpi1d";
+    sha256 = "1ynynay9g6yma39szbzf15ypq3c72fg1i0kjmq1dwxarj68i2gf9";
   };
 
   disabled = !isPy3k;
diff --git a/pkgs/development/python-modules/pyodbc/default.nix b/pkgs/development/python-modules/pyodbc/default.nix
index 428ec1d46b89..d78a5f55aadc 100644
--- a/pkgs/development/python-modules/pyodbc/default.nix
+++ b/pkgs/development/python-modules/pyodbc/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "pyodbc";
-  version = "4.0.25";
+  version = "4.0.26";
   disabled = isPyPy;  # use pypypdbc instead
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "1bbwrb812w5i0x56jfn0l86mxc2ck904hl8y87mziay96znwia0f";
+    sha256 = "1qrxnf7ji5hml7z4y669k4wmk3iz2pcsr05bnn1n912asash09z5";
   };
 
   buildInputs = [ unixODBC ];
diff --git a/pkgs/development/python-modules/pyogg/default.nix b/pkgs/development/python-modules/pyogg/default.nix
index 901cc137f192..88fdc960a2bb 100644
--- a/pkgs/development/python-modules/pyogg/default.nix
+++ b/pkgs/development/python-modules/pyogg/default.nix
@@ -1,34 +1,31 @@
-{ stdenv, lib, fetchPypi, buildPythonPackage, libvorbis, flac, libogg, libopus, opusfile }:
+{ stdenv, lib, fetchPypi, buildPythonPackage, libvorbis, flac, libogg, libopus, opusfile, substituteAll }:
 
 buildPythonPackage rec {
     pname = "PyOgg";
-    version = "0.6.6a1";
+    version = "0.6.9a1";
 
     src = fetchPypi {
       inherit pname version;
-      sha256 = "1ihzgl8p0rc3yjsp27zdrrs2r4qar5yf5l4v8wg0lilvan78h0rs";
+      sha256 = "0xabqwyknpvfc53s7il5pq6b07fcaqvz5bi5vbs3pbaw8602qvim";
     };
 
     buildInputs = [ libvorbis flac libogg libopus ];
     propagatedBuidInputs = [ libvorbis flac libogg libopus opusfile ];
     # There are no tests in this package.
     doCheck = false;
-    postPatch = ''
-      substituteInPlace pyogg/vorbis.py --replace \
-        'libvorbisfile = ExternalLibrary.load("vorbisfile")' "libvorbisfile = ctypes.CDLL('${libvorbis}/lib/libvorbisfile${stdenv.hostPlatform.extensions.sharedLibrary}')"
-      substituteInPlace pyogg/vorbis.py --replace \
-        'libvorbisenc = ExternalLibrary.load("vorbisenc")' "libvorbisenc = ctypes.CDLL('${libvorbis}/lib/libvorbisenc${stdenv.hostPlatform.extensions.sharedLibrary}')"
-      substituteInPlace pyogg/vorbis.py --replace \
-        'libvorbis = ExternalLibrary.load("vorbis")' "libvorbis = ctypes.CDLL('${libvorbis}/lib/libvorbis${stdenv.hostPlatform.extensions.sharedLibrary}')"
-      substituteInPlace pyogg/flac.py --replace \
-        'libflac = ExternalLibrary.load("flac")' "libflac = ctypes.CDLL('${flac.out}/lib/libFLAC${stdenv.hostPlatform.extensions.sharedLibrary}')"
-      substituteInPlace pyogg/ogg.py --replace \
-        'libogg = ExternalLibrary.load("ogg")' "libogg = ctypes.CDLL('${libogg}/lib/libogg${stdenv.hostPlatform.extensions.sharedLibrary}')"
-      substituteInPlace pyogg/opus.py --replace \
-        'libopus = ExternalLibrary.load("opus")' "libopus = ctypes.CDLL('${libopus}/lib/libopus${stdenv.hostPlatform.extensions.sharedLibrary}')"
-      substituteInPlace pyogg/opus.py --replace \
-        'libopusfile = ExternalLibrary.load("opusfile")' "libopusfile = ctypes.CDLL('${opusfile}/lib/libopusfile${stdenv.hostPlatform.extensions.sharedLibrary}')"
-    '';
+    patchFlags = [ "-p1" "--binary" ]; # patch has dos style eol
+    patches = [
+      (substituteAll {
+        src = ./pyogg-paths.patch;
+        flacLibPath="${flac.out}/lib/libFLAC${stdenv.hostPlatform.extensions.sharedLibrary}";
+        oggLibPath="${libogg}/lib/libogg${stdenv.hostPlatform.extensions.sharedLibrary}";
+        vorbisLibPath="${libvorbis}/lib/libvorbis${stdenv.hostPlatform.extensions.sharedLibrary}";
+        vorbisFileLibPath="${libvorbis}/lib/libvorbisfile${stdenv.hostPlatform.extensions.sharedLibrary}";
+        vorbisEncLibPath="${libvorbis}/lib/libvorbisenc${stdenv.hostPlatform.extensions.sharedLibrary}";
+        opusLibPath="${libopus}/lib/libopus${stdenv.hostPlatform.extensions.sharedLibrary}";
+        opusFileLibPath="${opusfile}/lib/libopusfile${stdenv.hostPlatform.extensions.sharedLibrary}";
+      })
+    ];
 
   meta = {
     description = "Xiph.org's Ogg Vorbis, Opus and FLAC for Python";
diff --git a/pkgs/development/python-modules/pyogg/pyogg-paths.patch b/pkgs/development/python-modules/pyogg/pyogg-paths.patch
new file mode 100644
index 000000000000..c7f1933878b4
--- /dev/null
+++ b/pkgs/development/python-modules/pyogg/pyogg-paths.patch
@@ -0,0 +1,79 @@
+diff --git a/pyogg/flac.py b/pyogg/flac.py

+index 37cc788..9fb7e95 100644

+--- a/pyogg/flac.py

++++ b/pyogg/flac.py

+@@ -49,7 +49,7 @@ __here = os.getcwd()

+ libflac = None

+ 

+ try:

+-    libflac = ExternalLibrary.load("FLAC", tests = [lambda lib: hasattr(lib, "FLAC__EntropyCodingMethodTypeString")])

++    libflac = ctypes.CDLL('@flacLibPath@')

+ except ExternalLibraryError:

+     pass

+ except:

+diff --git a/pyogg/ogg.py b/pyogg/ogg.py

+index 7264774..2702e24 100644

+--- a/pyogg/ogg.py

++++ b/pyogg/ogg.py

+@@ -54,7 +54,7 @@ __here = os.getcwd()

+ libogg = None

+ 

+ try:

+-    libogg = ExternalLibrary.load("ogg", tests = [lambda lib: hasattr(lib, "oggpack_writeinit")])

++    libogg = ctypes.CDLL('@oggLibPath@')

+ except ExternalLibraryError:

+     pass

+ except:

+diff --git a/pyogg/opus.py b/pyogg/opus.py

+index 81e73da..640e59c 100644

+--- a/pyogg/opus.py

++++ b/pyogg/opus.py

+@@ -130,7 +130,7 @@ __here = os.getcwd()

+ libopus = None

+ 

+ try:

+-    libopus = ExternalLibrary.load("opus", tests = [lambda lib: hasattr(lib, "opus_encoder_get_size")])

++    libopus = ctypes.CDLL('@opusLibPath@')

+ except ExternalLibraryError:

+     pass

+ except:

+@@ -139,7 +139,7 @@ except:

+ libopusfile = None

+ 

+ try:

+-    libopusfile = ExternalLibrary.load("opusfile", tests = [lambda lib: hasattr(lib, "opus_head_parse")])

++    libopusfile = ctypes.CDLL('@opusFileLibPath@')

+ except ExternalLibraryError:

+     pass

+ except:

+diff --git a/pyogg/vorbis.py b/pyogg/vorbis.py

+index a8e4792..6f44d2d 100644

+--- a/pyogg/vorbis.py

++++ b/pyogg/vorbis.py

+@@ -52,7 +52,7 @@ __here = os.getcwd()

+ libvorbis = None

+ 

+ try:

+-    libvorbis = ExternalLibrary.load("vorbis", tests = [lambda lib: hasattr(lib, "vorbis_info_init")])

++    libvorbis = ctypes.CDLL('@vorbisLibPath@')

+ except ExternalLibraryError:

+     pass

+ except:

+@@ -61,7 +61,7 @@ except:

+ libvorbisfile = None

+ 

+ try:

+-    libvorbisfile = ExternalLibrary.load("vorbisfile", tests = [lambda lib: hasattr(lib, "ov_clear")])

++    libvorbisfile = ctypes.CDLL('@vorbisFileLibPath@')

+ except ExternalLibraryError:

+     pass

+ except:

+@@ -70,7 +70,7 @@ except:

+ libvorbisenc = None

+ 

+ try:

+-    libvorbisenc = ExternalLibrary.load("vorbisenc", tests = [lambda lib: hasattr(lib, "vorbis_encode_init")])

++    libvorbisenc = ctypes.CDLL('@vorbisEncLibPath@')

+ except ExternalLibraryError:

+     pass

+ except:

diff --git a/pkgs/development/python-modules/pyramid_beaker/default.nix b/pkgs/development/python-modules/pyramid_beaker/default.nix
index 299fba098d9d..19b26a30ad71 100644
--- a/pkgs/development/python-modules/pyramid_beaker/default.nix
+++ b/pkgs/development/python-modules/pyramid_beaker/default.nix
@@ -14,7 +14,7 @@ buildPythonPackage rec {
     py.test -k 'not test_includeme' pyramid_beaker/tests.py
   '';
 
-  buildInputs = [ pytest ];
+  checkInputs = [ pytest ];
 
   propagatedBuildInputs = [ beaker pyramid ];
 
diff --git a/pkgs/development/python-modules/pytest-rerunfailures/default.nix b/pkgs/development/python-modules/pytest-rerunfailures/default.nix
index b6aa2460b595..79ce9fa63a9b 100644
--- a/pkgs/development/python-modules/pytest-rerunfailures/default.nix
+++ b/pkgs/development/python-modules/pytest-rerunfailures/default.nix
@@ -2,14 +2,14 @@
 
 buildPythonPackage rec {
   pname = "pytest-rerunfailures";
-  version = "6.0";
+  version = "7.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "978349ae00687504fd0f9d0970c37199ccd89cbdb0cb8c4ed7ee417ede582b40";
+    sha256 = "1zfm9v80bqfdapygy9wmi6j6y5c179ixpnh9ih27py4v6cqwzjgk";
   };
 
-  checkInputs = [ mock ];
+  checkInputs = [ mock pytest ];
 
   propagatedBuildInputs = [ pytest ];
 
diff --git a/pkgs/development/python-modules/roboschool/default.nix b/pkgs/development/python-modules/roboschool/default.nix
new file mode 100644
index 000000000000..8aa45966bd20
--- /dev/null
+++ b/pkgs/development/python-modules/roboschool/default.nix
@@ -0,0 +1,73 @@
+{ lib
+, buildPythonPackage
+, python
+, fetchFromGitHub
+, fetchpatch
+, qt5
+, boost
+, assimp
+, gym
+, bullet-roboschool
+, pkgconfig
+, which
+}:
+
+buildPythonPackage rec {
+  pname = "roboschool";
+  version = "1.0.39";
+
+  src = fetchFromGitHub {
+    owner = "openai";
+    repo = "roboschool";
+    rev = version;
+    sha256 = "1s7rp5bbiglnrfm33wf7x7kqj0ks3b21bqyz18c5g6vx39rxbrmh";
+  };
+
+  propagatedBuildInputs = [
+    gym
+  ];
+
+  nativeBuildInputs = [
+    pkgconfig
+    qt5.qtbase # needs the `moc` tool
+    which
+  ];
+
+  buildInputs = [
+    bullet-roboschool
+    assimp
+    qt5.qtbase
+    boost
+  ];
+
+  NIX_CFLAGS_COMPILE="-I ${python}/include/${python.libPrefix}";
+
+  patches = [
+    # Remove kwarg that was removed in upstream gym
+    # https://github.com/openai/roboschool/pull/180
+    (fetchpatch {
+      name = "remove-close-kwarg.patch";
+      url = "https://github.com/openai/roboschool/pull/180/commits/334f489c8ce7af4887e376139ec676f89da5b16f.patch";
+      sha256 = "0bbz8b63m40a9lrwmh7c8d8gj9kpa8a7svdh08qhrddjkykvip6r";
+    })
+  ];
+
+  preBuild = ''
+    # First build the cpp dependencies
+    cd roboschool/cpp-household
+    make \
+      MOC=moc \
+      -j$NIX_BUILD_CORES
+    cd ../..
+  '';
+
+  # Does a QT sanity check, but QT is not expected to work in isolation
+  doCheck = false;
+
+  meta = with lib; {
+    description = "Open-source software for robot simulation, integrated with OpenAI Gym";
+    homepage = https://github.com/openai/roboschool;
+    license = licenses.mit;
+    maintainers = with maintainers; [ timokau ];
+  };
+}
diff --git a/pkgs/development/python-modules/sasmodels/default.nix b/pkgs/development/python-modules/sasmodels/default.nix
index 88cdbf8a8fd8..116ada8e9544 100644
--- a/pkgs/development/python-modules/sasmodels/default.nix
+++ b/pkgs/development/python-modules/sasmodels/default.nix
@@ -4,13 +4,13 @@
 
 buildPythonPackage rec {
   pname = "sasmodels";
-  version = "0.98";
+  version = "0.99";
 
   src = fetchFromGitHub {
     owner = "SasView";
     repo = "sasmodels";
     rev = "v${version}";
-    sha256 = "02y4lpjwaa73pr46ylk0pw0kbill4nfzqgnfv16v5m0z9smd76ir";
+    sha256 = "1lcvn42h29i0mg4i75xn0dbk711q9ycyhm3h95skqy8i61qmjrx6";
   };
 
   buildInputs = [ opencl-headers ];
diff --git a/pkgs/development/python-modules/shouldbe/default.nix b/pkgs/development/python-modules/shouldbe/default.nix
index df868bb4d5e5..ccff9ff4b9f8 100644
--- a/pkgs/development/python-modules/shouldbe/default.nix
+++ b/pkgs/development/python-modules/shouldbe/default.nix
@@ -6,19 +6,17 @@
 }:
 
 buildPythonPackage rec {
-  version = "0.1.0";
+  version = "0.1.2";
   pname = "shouldbe";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "07pchxpv1xvjbck0xy44k3a1jrvklg0wbyccn14w0i7d135d4174";
+    sha256 = "16zbvjxf71dl4yfbgcr6idyim3mdrfvix1dv8b95p0s9z07372pj";
   };
 
-  buildInputs = [ nose ];
+  checkInputs = [ nose ];
   propagatedBuildInputs = [ forbiddenfruit ];
 
-  doCheck = false;  # Segmentation fault on py 3.5
-
   meta = with stdenv.lib; {
     description = "Python Assertion Helpers inspired by Shouldly";
     homepage =  https://pypi.python.org/pypi/shouldbe/;
diff --git a/pkgs/development/python-modules/speedtest-cli/default.nix b/pkgs/development/python-modules/speedtest-cli/default.nix
index f2c38a3414ba..36816f6133d6 100644
--- a/pkgs/development/python-modules/speedtest-cli/default.nix
+++ b/pkgs/development/python-modules/speedtest-cli/default.nix
@@ -7,11 +7,11 @@
 # required for home-assistant
 buildPythonPackage rec {
   pname = "speedtest-cli";
-  version = "2.0.2";
+  version = "2.1.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "2f3d5aa1086d9b367c03b99db6e3207525af174772d877c6b982289b8d2bdefe";
+    sha256 = "1s3ylvkclzdsyqmpjnsd6ixrbmj7vd4bfsdplkjaz1c2czyy3j9p";
   };
 
   # tests require working internet connection
diff --git a/pkgs/development/python-modules/thinc/default.nix b/pkgs/development/python-modules/thinc/default.nix
index acbc2a608173..79ae18d33eaa 100644
--- a/pkgs/development/python-modules/thinc/default.nix
+++ b/pkgs/development/python-modules/thinc/default.nix
@@ -63,7 +63,10 @@ buildPythonPackage rec {
     substituteInPlace setup.py \
       --replace "pathlib==1.0.1" "pathlib>=1.0.0,<2.0.0" \
       --replace "plac>=0.9.6,<1.0.0" "plac>=0.9.6" \
-      --replace "msgpack-numpy<0.4.4" "msgpack-numpy"
+      --replace "msgpack-numpy<0.4.4" "msgpack-numpy" \
+      --replace "wheel>=0.32.0,<0.33.0" "wheel" \
+      --replace "wrapt>=1.10.0,<1.11.0" "wrapt" \
+      --replace "msgpack>=0.5.6,<0.6.0" "msgpack"
   '';
 
   # Cannot find cython modules.
diff --git a/pkgs/development/python-modules/twilio/default.nix b/pkgs/development/python-modules/twilio/default.nix
index c9b80f3699bd..2b04fdc20c95 100644
--- a/pkgs/development/python-modules/twilio/default.nix
+++ b/pkgs/development/python-modules/twilio/default.nix
@@ -3,13 +3,13 @@
 
 buildPythonPackage rec {
   pname = "twilio";
-  version = "6.24.0";
+  version = "6.26.0";
   # tests not included in PyPi, so fetch from github instead
   src = fetchFromGitHub {
     owner = "twilio";
     repo = "twilio-python";
     rev = version;
-    sha256 = "16lxns59fms75swfjz46484464q4b1fw3ybf8f2k56aas9gyzb2j";
+    sha256 = "0l50n5hljkp7w2l4c36arxf4dxhkfhs7ywwck9y1gvcgsnvccmss";
   };
 
   buildInputs = [ nose mock ];
diff --git a/pkgs/development/python-modules/uranium/default.nix b/pkgs/development/python-modules/uranium/default.nix
index 351279476c8c..b4081870fbe6 100644
--- a/pkgs/development/python-modules/uranium/default.nix
+++ b/pkgs/development/python-modules/uranium/default.nix
@@ -2,7 +2,7 @@
 , pyqt5, numpy, scipy, shapely, libarcus, doxygen, gettext, pythonOlder }:
 
 buildPythonPackage rec {
-  version = "3.6.0";
+  version = "4.0.0";
   pname = "uranium";
   format = "other";
 
@@ -10,7 +10,7 @@ buildPythonPackage rec {
     owner = "Ultimaker";
     repo = "Uranium";
     rev = version;
-    sha256 = "02hid13h8anb9bgv2hhrcdg10bxdxa9hj9pbdv3gw3lpn9r2va98";
+    sha256 = "1dzn064np76q0xpypcwsa7k7arzihg79xw1pgcvdizk9kzc6rw3y";
   };
 
   disabled = pythonOlder "3.5.0";
diff --git a/pkgs/development/python-modules/vine/default.nix b/pkgs/development/python-modules/vine/default.nix
index 08240d5c594a..c3ee5237935e 100644
--- a/pkgs/development/python-modules/vine/default.nix
+++ b/pkgs/development/python-modules/vine/default.nix
@@ -3,13 +3,13 @@
 
 buildPythonPackage rec {
   pname = "vine";
-  version = "1.2.0";
+  version = "1.3.0";
 
   disable = pythonOlder "2.7";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0xjz2sjbr5jrpjk411b7alkghdskhphgsqqrbi7abqfh2pli6j7f";
+    sha256 = "133ee6d7a9016f177ddeaf191c1f58421a1dcc6ee9a42c58b34bed40e1d2cd87";
   };
 
   buildInputs = [ case pytest ];
diff --git a/pkgs/development/python-modules/werkzeug/default.nix b/pkgs/development/python-modules/werkzeug/default.nix
index 9496d51bfc1e..19945785eed9 100644
--- a/pkgs/development/python-modules/werkzeug/default.nix
+++ b/pkgs/development/python-modules/werkzeug/default.nix
@@ -4,18 +4,18 @@
 
 buildPythonPackage rec {
   pname = "Werkzeug";
-  version = "0.14.1";
+  version = "0.15.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "c3fd7a7d41976d9f44db327260e263132466836cef6f91512889ed60ad26557c";
+    sha256 = "ca5c2dcd367d6c0df87185b9082929d255358f5391923269335782b213d52655";
   };
 
   propagatedBuildInputs = [ itsdangerous ];
-  checkInputs = [ pytest requests glibcLocales hypothesis ];
+  checkInputs = [ pytest requests hypothesis ];
 
   checkPhase = ''
-    LC_ALL="en_US.UTF-8" py.test ${stdenv.lib.optionalString stdenv.isDarwin "-k 'not test_get_machine_id'"}
+    pytest ${stdenv.lib.optionalString stdenv.isDarwin "-k 'not test_get_machine_id'"}
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/zipp/default.nix b/pkgs/development/python-modules/zipp/default.nix
new file mode 100644
index 000000000000..2c060c9881c0
--- /dev/null
+++ b/pkgs/development/python-modules/zipp/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, setuptools_scm
+, pytest
+, pytest-flake8
+}:
+
+buildPythonPackage rec {
+  pname = "zipp";
+  version = "0.3.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "55ca87266c38af6658b84db8cfb7343cdb0bf275f93c7afaea0d8e7a209c7478";
+  };
+
+  nativeBuildInputs = [ setuptools_scm ];
+
+  checkInputs = [ pytest pytest-flake8 ];
+
+  checkPhase = ''
+    pytest
+  '';
+
+  meta = with lib; {
+    description = "Pathlib-compatible object wrapper for zip files";
+    homepage = https://github.com/jaraco/zipp;
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/r-modules/default.nix b/pkgs/development/r-modules/default.nix
index d72ad7094d16..5d8d7d562259 100644
--- a/pkgs/development/r-modules/default.nix
+++ b/pkgs/development/r-modules/default.nix
@@ -424,7 +424,6 @@ let
     showtext = [ pkgs.pkgconfig ];
     spate = [ pkgs.pkgconfig ];
     stringi = [ pkgs.pkgconfig ];
-    sys = [ pkgs.libapparmor ];
     sysfonts = [ pkgs.pkgconfig ];
     tesseract = [ pkgs.pkgconfig ];
     Cairo = [ pkgs.pkgconfig ];
@@ -443,6 +442,11 @@ let
     Matrix = [ pkgs.libiconv ];
     mgcv = [ pkgs.libiconv ];
     igraph = [ pkgs.libiconv ];
+    ape = [ pkgs.libiconv ];
+    expm = [ pkgs.libiconv ];
+    mnormt = [ pkgs.libiconv ];
+    phangorn = [ pkgs.libiconv ];
+    quadprog = [ pkgs.libiconv ];
   };
 
   packagesRequireingX = [
diff --git a/pkgs/development/ruby-modules/gem/default.nix b/pkgs/development/ruby-modules/gem/default.nix
index b0abb2c54fc5..c881d4eb4744 100644
--- a/pkgs/development/ruby-modules/gem/default.nix
+++ b/pkgs/development/ruby-modules/gem/default.nix
@@ -63,7 +63,6 @@ let
     else if type == "git" then
       fetchgit {
         inherit (attrs.source) url rev sha256 fetchSubmodules;
-        leaveDotGit = true;
       }
     else if type == "url" then
       fetchurl attrs.source
@@ -95,6 +94,7 @@ stdenv.mkDerivation ((builtins.removeAttrs attrs ["source"]) // {
 
   inherit src;
 
+
   unpackPhase = attrs.unpackPhase or ''
     runHook preUnpack
 
@@ -142,6 +142,12 @@ stdenv.mkDerivation ((builtins.removeAttrs attrs ["source"]) // {
       gempkg=$(echo "$output" | grep -oP 'File: \K(.*)')
 
       echo "gem package built: $gempkg"
+    elif [[ "$type" == "git" ]]; then
+      git init
+      # remove variations to improve the likelihood of a bit-reproducible output
+      rm -rf .git/logs/ .git/hooks/ .git/index .git/FETCH_HEAD .git/ORIG_HEAD .git/refs/remotes/origin/HEAD .git/config
+      # support `git ls-files`
+      git add .
     fi
 
     runHook postBuild
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index f5317519d76b..9759bb532c8d 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, ocamlPackages, cf-private, CoreServices }:
 
 stdenv.mkDerivation rec {
-  version = "0.95.1";
-  name = "flow-${version}";
+  pname = "flow";
+  version = "0.96.0";
 
   src = fetchFromGitHub {
     owner  = "facebook";
     repo   = "flow";
     rev    = "refs/tags/v${version}";
-    sha256 = "0sxmk8qg61j6wdylkw53di65152mynv4agji865h23ay66nyi3lw";
+    sha256 = "04al9jnaxgh8la6s2pzzpzm6pyfc5c6g7pc8cwz4xcngbsw60cpn";
   };
 
   installPhase = ''
diff --git a/pkgs/development/tools/analysis/pmd/default.nix b/pkgs/development/tools/analysis/pmd/default.nix
index 97140d10ca22..c08106eea2ff 100644
--- a/pkgs/development/tools/analysis/pmd/default.nix
+++ b/pkgs/development/tools/analysis/pmd/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "pmd-${version}";
-  version = "6.11.0";
+  version = "6.12.0";
 
   buildInputs = [ unzip ];
 
   src = fetchurl {
     url = "mirror://sourceforge/pmd/pmd-bin-${version}.zip";
-    sha256 = "0mg32bnl6j4p15akdhfc0wgilqvyphcgjimlaqq3jz51dmlr9scb";
+    sha256 = "1fayb62i6p21q1d6y7ixljf37r7n7vwjwa69q5z6wr4zspaj79f9";
   };
 
   installPhase = ''
diff --git a/pkgs/development/tools/build-managers/bazel/default.nix b/pkgs/development/tools/build-managers/bazel/default.nix
index eb9f0d106d10..1e29e4b34f08 100644
--- a/pkgs/development/tools/build-managers/bazel/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/default.nix
@@ -13,12 +13,17 @@
 }:
 
 let
-  srcDeps = lib.singleton (
-    fetchurl {
+  srcDeps = [
+    (fetchurl {
       url = "https://github.com/google/desugar_jdk_libs/archive/915f566d1dc23bc5a8975320cd2ff71be108eb9c.zip";
       sha256 = "0b926df7yxyyyiwm9cmdijy6kplf0sghm23sf163zh8wrk87wfi7";
-    }
-  );
+    })
+
+    (fetchurl {
+        url = "https://mirror.bazel.build/bazel_java_tools/java_tools_pkg-0.5.1.tar.gz";
+        sha256 = "1ld8m5cj9j0r474f56pixcfi0xvx3w7pzwahxngs8f6ns0yimz5w";
+    })
+  ];
 
   distDir = runCommand "bazel-deps" {} ''
     mkdir -p $out
@@ -61,7 +66,7 @@ let
 in
 stdenv.mkDerivation rec {
 
-  version = "0.22.0";
+  version = "0.24.0";
 
   meta = with lib; {
     homepage = "https://github.com/bazelbuild/bazel/";
@@ -85,9 +90,13 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/bazelbuild/bazel/releases/download/${version}/${name}-dist.zip";
-    sha256 = "0hannnvia8rvmi2v5d97j1f6wv0m1kxkd5hq4aqp0dqjr0ka4q38";
+    sha256 = "11gsc00ghxqkbci8nrflkwq1lcvqawlgkaryj458b24si6bjl7b2";
   };
 
+  # 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;
+
   sourceRoot = ".";
 
   patches = [
@@ -168,6 +177,10 @@ stdenv.mkDerivation rec {
           --replace "/usr/bin/env python" "${python}/bin/python" \
           --replace "NIX_STORE_PYTHON_PATH" "${python}/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!
@@ -211,8 +224,17 @@ stdenv.mkDerivation rec {
         src/main/java/com/google/devtools/build/lib/bazel/rules/BazelRuleClassProvider.java \
         --replace /bin:/usr/bin ${defaultShellPath}
 
+      # 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
+      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
 
@@ -236,18 +258,27 @@ stdenv.mkDerivation rec {
     customBash
   ] ++ lib.optionals (stdenv.isDarwin) [ cctools clang libcxx CoreFoundation CoreServices Foundation ];
 
-  # If TMPDIR is in the unpack dir we run afoul of blaze's infinite symlink
-  # detector (see com.google.devtools.build.lib.skyframe.FileFunction).
-  # Change this to $(mktemp -d) as soon as we figure out why.
+  # 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 = ''
-    export TMPDIR=/tmp/.bazel-$UID
-    ./compile.sh
-    scripts/generate_bash_completion.sh \
-        --bazel=./output/bazel \
-        --output=output/bazel-complete.bash \
-        --prepend=scripts/bazel-complete-header.bash \
-        --prepend=scripts/bazel-complete-template.bash
+    # 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 = ''
@@ -255,15 +286,15 @@ stdenv.mkDerivation rec {
 
     # official wrapper scripts that searches for $WORKSPACE_ROOT/tools/bazel
     # if it can’t find something in tools, it calls $out/bin/bazel-real
-    cp scripts/packages/bazel.sh $out/bin/bazel
-    mv output/bazel $out/bin/bazel-real
+    cp ./bazel_src/scripts/packages/bazel.sh $out/bin/bazel
+    mv ./bazel_src/output/bazel $out/bin/bazel-real
 
     wrapProgram "$out/bin/bazel" --add-flags --server_javabase="${runJdk}"
 
     # shell completion files
     mkdir -p $out/share/bash-completion/completions $out/share/zsh/site-functions
-    mv output/bazel-complete.bash $out/share/bash-completion/completions/bazel
-    cp scripts/zsh_completion/_bazel $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;
@@ -278,6 +309,8 @@ stdenv.mkDerivation rec {
         examples/java-native/src/test/java/com/example/myproject:hello
     }
 
+    cd ./bazel_src
+
     # test whether $WORKSPACE_ROOT/tools/bazel works
 
     mkdir -p tools
diff --git a/pkgs/development/tools/build-managers/conan/default.nix b/pkgs/development/tools/build-managers/conan/default.nix
index 72d9f631afbc..8ae56834702b 100644
--- a/pkgs/development/tools/build-managers/conan/default.nix
+++ b/pkgs/development/tools/build-managers/conan/default.nix
@@ -30,6 +30,13 @@ let newPython = python3.override {
         sha256 = "1fyybgbmlr8ms32j7h76hz5g9xc6nf0644mwhc40a0s5k14makav";
       };
     });
+    pluginbase = super.pluginbase.overridePythonAttrs (oldAttrs: rec {
+      version = "0.7";
+      src = oldAttrs.src.override {
+        inherit version;
+        sha256 = "c0abe3218b86533cca287e7057a37481883c07acef7814b70583406938214cc8";
+      };
+    });
   };
 };
 
diff --git a/pkgs/development/tools/build-managers/gradle/default.nix b/pkgs/development/tools/build-managers/gradle/default.nix
index afe93ddf383e..25ff6d09d420 100644
--- a/pkgs/development/tools/build-managers/gradle/default.nix
+++ b/pkgs/development/tools/build-managers/gradle/default.nix
@@ -52,32 +52,32 @@ rec {
   };
 
   gradle_latest = gradleGen rec {
-    name = "gradle-5.0";
-    nativeVersion = "0.14";
+    name = "gradle-5.3.1";
+    nativeVersion = "0.17";
 
     src = fetchurl {
       url = "http://services.gradle.org/distributions/${name}-bin.zip";
-      sha256 = "19krxq9pid9dg6bhdbhhg7ykm5kcx7lv7cr58rj67g0h6jgsqmv1";
+      sha256 = "0dkl6f17zl9pc6y2xm8xqz23x53fck4p2648vpq8572f0mxa2n8w";
     };
   };
 
   gradle_4_10 = gradleGen rec {
-    name = "gradle-4.10.2";
+    name = "gradle-4.10.3";
     nativeVersion = "0.14";
 
     src = fetchurl {
       url = "http://services.gradle.org/distributions/${name}-bin.zip";
-      sha256 = "0a9s2iisivgaapsz4vq1l8fa2w0wnlq0cj67yv5a0rybnahnv75l";
+      sha256 = "0vhqxnk0yj3q9jam5w4kpia70i4h0q4pjxxqwynh3qml0vrcn9l6";
     };
   };
 
   gradle_3_5 = gradleGen rec {
-    name = "gradle-3.5";
+    name = "gradle-3.5.1";
     nativeVersion = "0.14";
 
     src = fetchurl {
       url = "http://services.gradle.org/distributions/${name}-bin.zip";
-      sha256 = "046i268zkg89ps7c1sq8yx9lbn9kighh4gcskxmzf3qriiwm0x0b";
+      sha256 = "1y7fbhrdriclbs5ksxahi0aafsz760lalwyz8r4llysc5pskbkld";
     };
   };
 
@@ -91,6 +91,10 @@ rec {
     };
   };
 
+  # Nix pkgs that depend on this old version:
+  # pkgs/tools/security/jd-gui/default.nix
+  # pkgs/servers/mxisd/default.nix
+  # If these packages are updated, this old version can probably be removed
   gradle_2_5 = gradleGen rec {
     name = "gradle-2.5";
     nativeVersion = "0.10";
diff --git a/pkgs/development/tools/build-managers/scons/default.nix b/pkgs/development/tools/build-managers/scons/default.nix
index 2d0bf244370f..ce15de8678d6 100644
--- a/pkgs/development/tools/build-managers/scons/default.nix
+++ b/pkgs/development/tools/build-managers/scons/default.nix
@@ -8,7 +8,7 @@ in {
     sha256 = "0wzid419mlwqw9llrg8gsx4nkzhqy16m4m40r0xnh6cwscw5wir4";
   };
   scons_latest = mkScons {
-    version = "3.0.4";
-    sha256 = "06lv3pmdz5l23rx3kqsi1k712bdl36i942hgbjh209s94mpb7f72";
+    version = "3.0.5";
+    sha256 = "0gn7fgxvx94bjm4cim29cdz91ar1rmfxk2f39wwgljvdvhinyryz";
   };
 }
diff --git a/pkgs/development/tools/cachix/default.nix b/pkgs/development/tools/cachix/default.nix
index 895d6e4bec62..a127fb137f67 100644
--- a/pkgs/development/tools/cachix/default.nix
+++ b/pkgs/development/tools/cachix/default.nix
@@ -1,3 +1,3 @@
 { haskellPackages, haskell }:
 
-haskell.lib.justStaticExecutables haskellPackages.cachix
+(haskell.lib.doDistribute haskellPackages.cachix).bin
diff --git a/pkgs/development/tools/electron/3.x.nix b/pkgs/development/tools/electron/3.x.nix
index 23620a12530b..597e66f9b293 100644
--- a/pkgs/development/tools/electron/3.x.nix
+++ b/pkgs/development/tools/electron/3.x.nix
@@ -1,7 +1,7 @@
 { stdenv, libXScrnSaver, makeWrapper, fetchurl, unzip, atomEnv, gtk2, at-spi2-atk }:
 
 let
-  version = "3.1.4";
+  version = "3.1.8";
   name = "electron-${version}";
 
   throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
@@ -19,19 +19,19 @@ let
     src = {
       i686-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-ia32.zip";
-        sha256 = "1llwpd10cz5nfwqimib7xkc3xxj3z4y19l97wxma3bciizmmgq3k";
+        sha256 = "1vq4vanlwixgk1q4v5d24f1ywgy2af1r14f9byzfy89vwds77yk9";
       };
       x86_64-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-x64.zip";
-        sha256 = "0mb7q82r9ndvz181lnkplmvwkijzc2msrpfwpghrhsc4j3zbh0bf";
+        sha256 = "13zds8bzn4z11544llkh99fw75gddxs5b9h1m5xgjzw37vf6rpws";
       };
       armv7l-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-armv7l.zip";
-        sha256 = "0cf4jqq3n66dm11cy96q3nj1jxajv49yamhvn5g8a85nq4s5cx6f";
+        sha256 = "0rfw1ydlmixyhifpmm2qyxapx3iqav4nlnzp2km9z7a0hpc4lii6";
       };
       aarch64-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-arm64.zip";
-        sha256 = "0lxp7fpccwk6qdw79dgjlm9hywfwl3aj932qg2aff18vs077skrg";
+        sha256 = "0qrnvzjz78fblfg4r6xpzc40p10y6865gqpwx2h5vsdfp6sgq898";
       };
     }.${stdenv.hostPlatform.system} or throwSystem;
 
@@ -59,7 +59,7 @@ let
 
     src = fetchurl {
       url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-darwin-x64.zip";
-      sha256 = "1indim895a58ds09z91c8jfqmdp7ba85rx6bhq6dabgnvkykwmz0";
+      sha256 = "0ms75306dq2ym838zk9d9nypnd8yjipl0zqyq9bvd4r32p241hw9";
     };
 
     buildInputs = [ unzip ];
diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix
index 8c6dce0114e8..31867a87b77f 100644
--- a/pkgs/development/tools/electron/default.nix
+++ b/pkgs/development/tools/electron/default.nix
@@ -1,7 +1,7 @@
 { stdenv, libXScrnSaver, makeWrapper, fetchurl, unzip, atomEnv, libuuid, at-spi2-atk }:
 
 let
-  version = "4.0.6";
+  version = "4.1.3";
   name = "electron-${version}";
 
   throwSystem = throw "Unsupported system: ${stdenv.hostPlatform.system}";
@@ -16,23 +16,22 @@ let
 
   linux = {
     inherit name version meta;
-
     src = {
       i686-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-ia32.zip";
-        sha256 = "1ffv4wlj827wyq7y2hfaz2d0fapqr2r9likb90ayzh91vmkc8c2y";
+        sha256 = "0fjrzyd872frvlihjr5xssjqirrp0c0aa1s1z8kr5y6hw6d13m2y";
       };
       x86_64-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-x64.zip";
-        sha256 = "01b063jabx7fglh63dk7nh21xxadwxrrvavcwznpw6jhid48g2yz";
+        sha256 = "1qzfz8nm3p6qsx843jl4nlbnx6l0pa6fzz61bb8w2c1p88dwqddy";
       };
       armv7l-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-armv7l.zip";
-        sha256 = "18dsb3pyj9gfn8xyzhblx7nidgp39pfqs1ml07nxfkf1bjdh4c4w";
+        sha256 = "0x5zw0937gm89rfh094kpabzcddw61ckijm8k0k5spir1nb2za9v";
       };
       aarch64-linux = fetchurl {
         url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-linux-arm64.zip";
-        sha256 = "0dx6bzj0laygqkyl8ngbh0yfzyc5mxr3fxlqb867cza9sz5hh95l";
+        sha256 = "1fz9przvm4jf97xbg3m7ipcnf2gv1zxhmby3bqps582nhc17fckd";
       };
     }.${stdenv.hostPlatform.system} or throwSystem;
 
@@ -60,7 +59,7 @@ let
 
     src = fetchurl {
       url = "https://github.com/electron/electron/releases/download/v${version}/electron-v${version}-darwin-x64.zip";
-      sha256 = "0r1yn5lz808xdwp29g4kmlm5v0i1fsdxd4ph537gyz3sfn30dgq9";
+      sha256 = "0s2fiys8mglmz5qf9l1k19p7ipl0r6vd2222n0j8m83bcr1779rz";
     };
 
     buildInputs = [ unzip ];
diff --git a/pkgs/development/tools/godot/default.nix b/pkgs/development/tools/godot/default.nix
index dd6a413cebf2..fe684bbf7b6f 100644
--- a/pkgs/development/tools/godot/default.nix
+++ b/pkgs/development/tools/godot/default.nix
@@ -10,13 +10,13 @@ let
   };
 in stdenv.mkDerivation rec {
   name    = "godot-${version}";
-  version = "3.0.6";
+  version = "3.1";
 
   src = fetchFromGitHub {
     owner  = "godotengine";
     repo   = "godot";
     rev    = "${version}-stable";
-    sha256 = "0g64h0x8dlv6aa9ggfcidk2mknkfl5li7z1phcav8aqp9srj8avf";
+    sha256 = "1z37znqzbn0x8s04pb9dxzni9jzl8m59nfrr14vypww42f9l5i7i";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -51,10 +51,10 @@ in stdenv.mkDerivation rec {
     cp misc/dist/linux/godot.6 "$man/share/man/man6/"
 
     mkdir -p "$out"/share/{applications,icons/hicolor/scalable/apps}
-    cp misc/dist/linux/godot.desktop "$out/share/applications/"
+    cp misc/dist/linux/org.godotengine.Godot.desktop "$out/share/applications/"
     cp icon.svg "$out/share/icons/hicolor/scalable/apps/godot.svg"
     cp icon.png "$out/share/icons/godot.png"
-    substituteInPlace "$out/share/applications/godot.desktop" \
+    substituteInPlace "$out/share/applications/org.godotengine.Godot.desktop" \
       --replace "Exec=godot" "Exec=$out/bin/godot"
   '';
 
diff --git a/pkgs/development/tools/godot/dont_clobber_environment.patch b/pkgs/development/tools/godot/dont_clobber_environment.patch
index c57c85588a01..96a8464b5668 100644
--- a/pkgs/development/tools/godot/dont_clobber_environment.patch
+++ b/pkgs/development/tools/godot/dont_clobber_environment.patch
@@ -1,7 +1,7 @@
 +++ build/SConstruct
-@@ -69,10 +69,10 @@
-         custom_tools = ['mingw']
- 
+@@ -63,10 +63,10 @@ elif platform_arg == 'javascript':
+     custom_tools = ['cc', 'c++', 'ar', 'link', 'textfile', 'zip']
+
  env_base = Environment(tools=custom_tools)
 -if 'TERM' in os.environ:
 -    env_base['ENV']['TERM'] = os.environ['TERM']
@@ -11,6 +11,7 @@
 +    if (k in os.environ):
 +        env_base["ENV"][k] = os.environ[k]
 +
- env_base.global_defaults = global_defaults
  env_base.android_maven_repos = []
  env_base.android_flat_dirs = []
+ env_base.android_dependencies = []
+
diff --git a/pkgs/development/tools/godot/pkg_config_additions.patch b/pkgs/development/tools/godot/pkg_config_additions.patch
index 286372f060ae..409baaa6f266 100644
--- a/pkgs/development/tools/godot/pkg_config_additions.patch
+++ b/pkgs/development/tools/godot/pkg_config_additions.patch
@@ -1,13 +1,22 @@
 +++ b/platform/x11/detect.py
-@@ -142,6 +142,11 @@
-     env.ParseConfig('pkg-config xcursor --cflags --libs')
-     env.ParseConfig('pkg-config xinerama --cflags --libs')
-     env.ParseConfig('pkg-config xrandr --cflags --libs')
-+    env.ParseConfig('pkg-config xrender --cflags --libs')
+@@ -175,6 +175,11 @@ def configure(env):
+     env.ParseConfig('pkg-config xrender --cflags --libs')
+     env.ParseConfig('pkg-config xi --cflags --libs')
+ 
 +    env.ParseConfig('pkg-config xext --cflags --libs')
 +    env.ParseConfig('pkg-config xfixes --cflags --libs')
 +    env.ParseConfig('pkg-config glu --cflags --libs')
 +    env.ParseConfig('pkg-config zlib --cflags --libs')
- 
++
      if (env['touch']):
-         x11_error = os.system("pkg-config xi --modversion > /dev/null ")
+         env.Append(CPPFLAGS=['-DTOUCH_ENABLED'])
+ 
+@@ -264,7 +269,7 @@ def configure(env):
+         print("Enabling ALSA")
+         env.Append(CPPFLAGS=["-DALSA_ENABLED", "-DALSAMIDI_ENABLED"])
+ 	# Don't parse --cflags, we don't need to add /usr/include/alsa to include path
+-        env.ParseConfig('pkg-config alsa --libs')
++        env.ParseConfig('pkg-config alsa --cflags --libs')
+     else:
+         print("ALSA libraries not found, disabling driver")
+ 
diff --git a/pkgs/development/tools/ktlint/default.nix b/pkgs/development/tools/ktlint/default.nix
index 4ce2972e56da..bfad2a3d46a8 100644
--- a/pkgs/development/tools/ktlint/default.nix
+++ b/pkgs/development/tools/ktlint/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "ktlint-${version}";
-  version = "0.30.0";
+  version = "0.31.0";
 
   src = fetchurl {
     url = "https://github.com/shyiko/ktlint/releases/download/${version}/ktlint";
-    sha256 = "0l3h3q4qc7ij3sr9ij1mrhir18xic7qbzgb621fv16zgdk6rjghn";
+    sha256 = "0bqpflvnh423w54162r0d6l503lql1bwqykxw18s2fx1n1gb3n9a";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/mdk/default.nix b/pkgs/development/tools/mdk/default.nix
index 8b5bea7ac6ce..27f0063e24be 100644
--- a/pkgs/development/tools/mdk/default.nix
+++ b/pkgs/development/tools/mdk/default.nix
@@ -1,10 +1,10 @@
 { stdenv, fetchurl, intltool, pkgconfig, glib }:
 
 stdenv.mkDerivation {
-  name = "gnu-mdk-1.2.9";
+  name = "gnu-mdk-1.2.10";
   src = fetchurl {
-    url = https://ftp.gnu.org/gnu/mdk/v1.2.9/mdk-1.2.9.tar.gz;
-    sha256 = "0c24wzrzbk0l4z1p5nnxihaqra75amwmw59va44554infkfms9kc";
+    url = https://ftp.gnu.org/gnu/mdk/v1.2.10/mdk-1.2.10.tar.gz;
+    sha256 = "1rwcq2b5vvv7318j92nxc5dayj27dpfhzc4rjiv4ccvsc0x35x5h";
   };
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ intltool glib ];
diff --git a/pkgs/development/tools/misc/cflow/default.nix b/pkgs/development/tools/misc/cflow/default.nix
index b2dbf65bcb08..ed4886305e3c 100644
--- a/pkgs/development/tools/misc/cflow/default.nix
+++ b/pkgs/development/tools/misc/cflow/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, gettext, emacs }:
 
 stdenv.mkDerivation rec {
-  name = "cflow-1.5";
+  name = "cflow-1.6";
 
   src = fetchurl {
     url = "mirror://gnu/cflow/${name}.tar.bz2";
-    sha256 = "0yq33k5ap1zpnja64n89iai4zh018ffr72wki5a6mzczd880mr3g";
+    sha256 = "1mzd3yf0dfv8h2av5vsxxlhpk21nw064h91b2kgfrdz92r0pnj1l";
   };
 
   patchPhase = ''
diff --git a/pkgs/development/tools/misc/hydra/default.nix b/pkgs/development/tools/misc/hydra/default.nix
index 5b17cc00c31d..1cfd9caa626b 100644
--- a/pkgs/development/tools/misc/hydra/default.nix
+++ b/pkgs/development/tools/misc/hydra/default.nix
@@ -110,6 +110,11 @@ in releaseTools.nixBuild rec {
       url = "https://github.com/NixOS/hydra/commit/08de434bdd0b0a22abc2081be6064a6c846d3920.patch";
       sha256 = "0kz77njp5ynn9l81g3q8zrryvnsr06nk3iw0a60187wxqzf5fmf8";
     })
+  ] ++ [
+    (fetchpatch {
+      url = "https://github.com/NixOS/hydra/pull/648/commits/4171ab4c4fd576c516dc03ba64d1c7945f769af0.patch";
+      sha256 = "1fxa2459kdws6qc419dv4084c1ssmys7kqg4ic7n643kybamsgrx";
+    })
   ];
 
   configureFlags = [ "--with-docbook-xsl=${docbook_xsl}/xml/xsl/docbook" ];
diff --git a/pkgs/development/tools/misc/semver-tool/default.nix b/pkgs/development/tools/misc/semver-tool/default.nix
new file mode 100644
index 000000000000..879346a2b796
--- /dev/null
+++ b/pkgs/development/tools/misc/semver-tool/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, lib, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  pname = "semver-tool";
+  version = "2.1.0";
+
+  src = fetchFromGitHub {
+    owner = "fsaintjacques";
+    repo = pname;
+    rev = version;
+    sha256 = "0lpwsa86qb5w6vbnsn892nb3qpxxx9ifxch8pw3ahzx2dqhdgnrr";
+  };
+
+  dontBuild = true; # otherwise we try to 'make' which fails.
+
+  installPhase = ''
+    runHook preInstall
+
+    mkdir -p $out/bin
+    install src/semver $out/bin
+
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    homepage = https://github.com/fsaintjacques/semver-tool;
+    description = "semver bash implementation";
+    license = licenses.gpl3Plus;
+    platforms = platforms.unix;
+    maintainers = [ maintainers.qyliss ];
+  };
+}
diff --git a/pkgs/development/tools/misc/tokei/default.nix b/pkgs/development/tools/misc/tokei/default.nix
index 66d9d521b058..65a210ed4b91 100644
--- a/pkgs/development/tools/misc/tokei/default.nix
+++ b/pkgs/development/tools/misc/tokei/default.nix
@@ -1,21 +1,21 @@
 { stdenv, fetchFromGitHub, rustPlatform }:
 
 rustPlatform.buildRustPackage rec {
-  name = "tokei-${version}";
-  version = "9.0.0";
+  pname = "tokei";
+  version = "9.1.1";
 
   src = fetchFromGitHub {
-    owner = "Aaronepower";
-    repo = "tokei";
+    owner = "XAMPPRocky";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "04d32w3yc98f6swxap19d6vrv8vi3w843cgnmf28mxcy4nbnls1n";
+    sha256 = "0gz8m5j9p7hwylyl7cdxbli9rpy1p6lsrbym4zk647819pg4k1jp";
   };
 
-  cargoSha256 = "0vjb4j8qwlmvw55i2jif1a7hwv928h90dzwlpcqb0h6nlv812fav";
+  cargoSha256 = "1xai3jxvs8r3s3v5d5w40miw6nihnj9gzlzzdrwphmgrkywr88c4";
 
   meta = with stdenv.lib; {
     description = "Program that displays statistics about your code";
-    homepage = https://github.com/Aaronepower/tokei;
+    homepage = https://github.com/XAMPPRocky/tokei;
     license = with licenses; [ asl20 /* or */ mit ];
     maintainers = with maintainers; [ gebner ];
     platforms = platforms.all;
diff --git a/pkgs/development/tools/ocaml/opaline/default.nix b/pkgs/development/tools/ocaml/opaline/default.nix
index 10088cce4912..fa5393c1871c 100644
--- a/pkgs/development/tools/ocaml/opaline/default.nix
+++ b/pkgs/development/tools/ocaml/opaline/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, ocamlPackages }:
 
 stdenv.mkDerivation rec {
-  version = "0.3.1";
+  version = "0.3.2";
   name = "opaline-${version}";
 
   src = fetchFromGitHub {
     owner = "jaapb";
     repo = "opaline";
     rev = "v${version}";
-    sha256 = "0vd5xaf272hk4iqfj347jvbppy7my5p5gz8yqpkvl1d1i6lzh08v";
+    sha256 = "1aj1fdqymq3pnr39h47hn3kxk5v9pnwx0jap1z2jzh78x970z21m";
   };
 
   buildInputs = with ocamlPackages; [ ocaml findlib ocamlbuild opam-file-format ];
diff --git a/pkgs/development/tools/scalafmt/default.nix b/pkgs/development/tools/scalafmt/default.nix
index 40ed7f44d8c3..db3a2af8f5b5 100644
--- a/pkgs/development/tools/scalafmt/default.nix
+++ b/pkgs/development/tools/scalafmt/default.nix
@@ -2,18 +2,18 @@
 
 let
   baseName = "scalafmt";
-  version = "1.5.1";
+  version = "2.0.0-RC5";
   deps = stdenv.mkDerivation {
     name = "${baseName}-deps-${version}";
     buildCommand = ''
       export COURSIER_CACHE=$(pwd)
-      ${coursier}/bin/coursier fetch com.geirsson:scalafmt-cli_2.12:${version} > deps
+      ${coursier}/bin/coursier fetch org.scalameta:scalafmt-cli_2.12:${version} > deps
       mkdir -p $out/share/java
       cp $(< deps) $out/share/java/
     '';
     outputHashMode = "recursive";
     outputHashAlgo = "sha256";
-    outputHash     = "15xfys9wdlx3rrqb2ab6qcfngkf6sa8v8q8shh10kk8jrc30g6dk";
+    outputHash     = "0y2nja4dj3l7f7m9dxr8xwda8vv27dwj090gfsa78a20vq1d3xxw";
   };
 in
 stdenv.mkDerivation rec {
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Opinionated code formatter for Scala";
-    homepage = http://scalafmt.org;
+    homepage = http://scalameta.org/scalafmt;
     license = licenses.asl20;
     maintainers = [ maintainers.markus1189 ];
   };
diff --git a/pkgs/development/tools/skaffold/default.nix b/pkgs/development/tools/skaffold/default.nix
index b1f8af2491c5..3d08a6b787d8 100644
--- a/pkgs/development/tools/skaffold/default.nix
+++ b/pkgs/development/tools/skaffold/default.nix
@@ -2,9 +2,9 @@
 
 buildGoPackage rec {
   name = "skaffold-${version}";
-  version = "0.25.0";
+  version = "0.26.0";
   # rev is the 0.25.0 commit, mainly for skaffold version command output
-  rev = "0f4b8fe88969e9fa38346934ea6af7c46772d603";
+  rev = "d88680e9ede62da65500702670ef72fc9272a06f";
 
   goPackagePath = "github.com/GoogleContainerTools/skaffold";
   subPackages = ["cmd/skaffold"];
@@ -20,7 +20,7 @@ buildGoPackage rec {
     owner = "GoogleContainerTools";
     repo = "skaffold";
     rev = "v${version}";
-    sha256 = "0adcim029w64494sb3cw14xhv2vf33l8vhwm2wz8mnmr402nbvkx";
+    sha256 = "151x7hs1876ij5kc1xlm1m7pyff6i22ddhfvjsgwb8sjl4h1ays5";
   };
 
   meta = {
diff --git a/pkgs/development/tools/sourcetrail/default.nix b/pkgs/development/tools/sourcetrail/default.nix
index 2182f8697aab..42042b87198d 100644
--- a/pkgs/development/tools/sourcetrail/default.nix
+++ b/pkgs/development/tools/sourcetrail/default.nix
@@ -3,12 +3,12 @@
 
 stdenv.mkDerivation rec {
   name = "sourcetrail-${version}";
-  version = "2018.3.55";
+  version = "2019.1.11";
 
   src = fetchurl {
     name = "sourtrail.tar.gz";
     url = "https://www.sourcetrail.com/downloads/${version}/linux/64bit";
-    sha256 = "6f5fbbecc221e7165ecbf1c4d208e302dade4feea9d43eb3265521efc0a376e2";
+    sha256 = "09f3qdgdqg6dlai43050qh4iv1d4j43isk81q68swalpnvjn72w0";
   };
 
   nativeBuildInputs = [ autoPatchelfHook ];
diff --git a/pkgs/development/tools/spirv-tools/default.nix b/pkgs/development/tools/spirv-tools/default.nix
index 5100b3624c42..c9df2703daa5 100644
--- a/pkgs/development/tools/spirv-tools/default.nix
+++ b/pkgs/development/tools/spirv-tools/default.nix
@@ -1,38 +1,25 @@
-{ stdenv, fetchFromGitHub, cmake, python }:
-
+{ stdenv, fetchFromGitHub, cmake, python, spirv-headers }:
 let
-
-spirv_sources = {
-  # `glslang` requires a specific version of `spirv-tools` and `spirv-headers` as specified in `known-good.json`.
-  tools = fetchFromGitHub {
-    owner = "KhronosGroup";
-    repo = "SPIRV-Tools";
-    rev = "9bfe0eb25e3dfdf4f3fd86ab6c0cda009c9bd661";
-    sha256 = "1spfii4zib1lmz40vnz1d1cr6is7q2n7rvar1vfzi33gwrn8rqhi";
-  };
-  headers = fetchFromGitHub {
-    owner = "KhronosGroup";
-    repo = "SPIRV-Headers";
-    rev = "d5b2e1255f706ce1f88812217e9a554f299848af";
-    sha256 = "18530mpa030ckjhn78z9vbfd35l5jgh3mg22ra6k8gw8zx4wjhsl";
-  };
-};
-
+  # Update spirv-headers rev in lockstep according to DEPs file
+  version = "2019.1";
 in
 
+assert version == spirv-headers.version;
 stdenv.mkDerivation rec {
   name = "spirv-tools-${version}";
-  version = "2018-09-20";
+  inherit version;
 
-  src = spirv_sources.tools;
-  patchPhase = ''ln -sv ${spirv_sources.headers} external/spirv-headers'';
+  src = fetchFromGitHub {
+    owner = "KhronosGroup";
+    repo = "SPIRV-Tools";
+    rev = "v${version}";
+    sha256 = "0vddjzhkrhrm3l3i57nxmq2smv3r1s0ka5ff2kziaahr4hqb479r";
+  };
   enableParallelBuilding = true;
 
   buildInputs = [ cmake python ];
 
-  passthru = {
-    headers = spirv_sources.headers;
-  };
+  cmakeFlags = [ "-DSPIRV-Headers_SOURCE_DIR=${spirv-headers.src}" ];
 
   meta = with stdenv.lib; {
     inherit (src.meta) homepage;
diff --git a/pkgs/development/tools/vulkan-validation-layers/default.nix b/pkgs/development/tools/vulkan-validation-layers/default.nix
index c76c670739e1..702b7a564b22 100644
--- a/pkgs/development/tools/vulkan-validation-layers/default.nix
+++ b/pkgs/development/tools/vulkan-validation-layers/default.nix
@@ -1,16 +1,15 @@
-{ stdenv, fetchFromGitHub, cmake, writeText, python3
+{ stdenv, callPackage, fetchFromGitHub, cmake, writeText, python3
 , vulkan-headers, vulkan-loader, glslang
 , pkgconfig, xlibsWrapper, libxcb, libXrandr, wayland }:
-
 stdenv.mkDerivation rec {
   name = "vulkan-validation-layers-${version}";
-  version = "1.1.85.0";
+  version = "1.1.101.0"; # WARNING: glslang overrides in all-packages.nix must be updated to match known-good.json!
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "Vulkan-ValidationLayers";
     rev = "sdk-${version}";
-    sha256 = "1y5ny587h62139fxnz760hsyv1dmw29m1a9vq096sn8qafh3jzbz";
+    sha256 = "00gz72m393i3m3rh5hv9d0znzlz39cpw35ifchzb4cr11bi4mzyz";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/tools/yarn2nix/bin/yarn2nix.js b/pkgs/development/tools/yarn2nix/bin/yarn2nix.js
deleted file mode 100755
index 3eadea559032..000000000000
--- a/pkgs/development/tools/yarn2nix/bin/yarn2nix.js
+++ /dev/null
@@ -1,144 +0,0 @@
-#!/usr/bin/env node
-"use strict";
-
-const crypto = require('crypto');
-const fs = require("fs");
-const https = require("https");
-const path = require("path");
-const util = require("util");
-
-const lockfile = require("@yarnpkg/lockfile")
-const docopt = require("docopt").docopt;
-
-////////////////////////////////////////////////////////////////////////////////
-
-const USAGE = `
-Usage: yarn2nix [options]
-
-Options:
-  -h --help        Shows this help.
-  --no-nix         Hide the nix output
-  --no-patch       Don't patch the lockfile if hashes are missing
-  --lockfile=FILE  Specify path to the lockfile [default: ./yarn.lock].
-`
-
-const HEAD = `
-{fetchurl, linkFarm}: rec {
-  offline_cache = linkFarm "offline" packages;
-  packages = [
-`.trim();
-
-////////////////////////////////////////////////////////////////////////////////
-
-function generateNix(lockedDependencies) {
-  let found = {};
-
-  console.log(HEAD)
-
-  for (var depRange in lockedDependencies) {
-    let dep = lockedDependencies[depRange];
-
-    let depRangeParts = depRange.split('@');
-    let [url, sha1] = dep["resolved"].split("#");
-    let file_name = path.basename(url)
-
-    if (found.hasOwnProperty(file_name)) {
-      continue;
-    } else {
-      found[file_name] = null;
-    }
-
-
-    console.log(`
-    {
-      name = "${file_name}";
-      path = fetchurl {
-        name = "${file_name}";
-        url  = "${url}";
-        sha1 = "${sha1}";
-      };
-    }`)
-  }
-
-  console.log("  ];")
-  console.log("}")
-}
-
-
-function getSha1(url) {
-  return new Promise((resolve, reject) => {
-    https.get(url, (res) => {
-      const { statusCode } = res;
-      const hash = crypto.createHash('sha1');
-      if (statusCode !== 200) {
-        const err = new Error('Request Failed.\n' +
-                          `Status Code: ${statusCode}`);
-        // consume response data to free up memory
-        res.resume();
-        reject(err);
-      }
-
-      res.on('data', (chunk) => { hash.update(chunk); });
-      res.on('end', () => { resolve(hash.digest('hex')) });
-      res.on('error', reject);
-    });
-  });
-};
-
-function updateResolvedSha1(pkg) {
-  // local dependency
-  if (!pkg.resolved) { return Promise.resolve(); }
-  let [url, sha1] = pkg.resolved.split("#", 2)
-  if (!sha1) {
-    return new Promise((resolve, reject) => {
-      getSha1(url).then(sha1 => {
-        pkg.resolved = `${url}#${sha1}`;
-        resolve();
-      }).catch(reject);
-    });
-  } else {
-    // nothing to do
-    return Promise.resolve();
-  };
-}
-
-function values(obj) {
-  var entries = [];
-  for (let key in obj) {
-    entries.push(obj[key]);
-  }
-  return entries;
-}
-
-////////////////////////////////////////////////////////////////////////////////
-// Main
-////////////////////////////////////////////////////////////////////////////////
-
-var options = docopt(USAGE);
-
-let data = fs.readFileSync(options['--lockfile'], 'utf8')
-let json = lockfile.parse(data)
-if (json.type != "success") {
-  throw new Error("yarn.lock parse error")
-}
-
-// Check fore missing hashes in the yarn.lock and patch if necessary
-var pkgs = values(json.object);
-Promise.all(pkgs.map(updateResolvedSha1)).then(() => {
-  let newData = lockfile.stringify(json.object);
-
-  if (newData != data) {
-    console.error("found changes in the lockfile", options["--lockfile"]);
-
-    if (options["--no-patch"]) {
-      console.error("...aborting");
-      process.exit(1);
-    }
-
-    fs.writeFileSync(options['--lockfile'], newData);
-  }
-
-  if (!options['--no-nix']) {
-    generateNix(json.object);
-  }
-})
diff --git a/pkgs/development/tools/yarn2nix/default.nix b/pkgs/development/tools/yarn2nix/default.nix
deleted file mode 100644
index e86c0aac2c99..000000000000
--- a/pkgs/development/tools/yarn2nix/default.nix
+++ /dev/null
@@ -1,199 +0,0 @@
-{ stdenv, lib, fetchurl, linkFarm, runCommand, nodejs, yarn }:
-
-let
-  unlessNull = item: alt:
-    if item == null then alt else item;
-
-  yarn2nix = mkYarnPackage {
-    src = ./.;
-    yarnNix = ./yarn.nix;
-
-    passthru = {
-      inherit
-        defaultYarnFlags
-        linkNodeModulesHook
-        mkYarnModules
-        mkYarnNix
-        mkYarnPackage
-        # Export yarn again to make it easier to find out which yarn was used.
-        yarn
-        ;
-    };
-
-    meta = with lib; {
-      description = "generate nix expressions from a yarn.lock file";
-      homepage = "https://github.com/moretea/yarn2nix";
-      license = licenses.gpl3;
-      maintainers = with maintainers; [ manveru zimbatm ];
-    };
-  };
-
-  # Generates the yarn.nix from the yarn.lock file
-  mkYarnNix = yarnLock:
-    runCommand "yarn.nix" {}
-      "${yarn2nix}/bin/yarn2nix --lockfile ${yarnLock} --no-patch > $out";
-
-  # Loads the generated offline cache. This will be used by yarn as
-  # the package source.
-  importOfflineCache = yarnNix:
-    let
-      pkg = import yarnNix { inherit fetchurl linkFarm; };
-    in
-      pkg.offline_cache;
-
-  defaultYarnFlags = [
-    "--offline"
-    "--frozen-lockfile"
-    "--ignore-engines"
-    "--ignore-scripts"
-  ];
-
-  mkYarnModules = {
-    name,
-    packageJSON,
-    yarnLock,
-    yarnNix ? mkYarnNix yarnLock,
-    yarnFlags ? defaultYarnFlags,
-    pkgConfig ? {},
-    preBuild ? "",
-  }:
-    let
-      offlineCache = importOfflineCache yarnNix;
-      extraBuildInputs = (lib.flatten (builtins.map (key:
-        pkgConfig.${key} . buildInputs or []
-      ) (builtins.attrNames pkgConfig)));
-      postInstall = (builtins.map (key:
-        if (pkgConfig.${key} ? postInstall) then
-          ''
-            for f in $(find -L -path '*/node_modules/${key}' -type d); do
-              (cd "$f" && (${pkgConfig.${key}.postInstall}))
-            done
-          ''
-        else
-          ""
-      ) (builtins.attrNames pkgConfig));
-    in
-    stdenv.mkDerivation {
-      inherit name preBuild;
-      phases = ["configurePhase" "buildPhase"];
-      buildInputs = [ yarn nodejs ] ++ extraBuildInputs;
-
-      configurePhase = ''
-        # Yarn writes cache directories etc to $HOME.
-        export HOME=$PWD/yarn_home
-      '';
-
-      buildPhase = ''
-        runHook preBuild
-
-        cp ${packageJSON} ./package.json
-        cp ${yarnLock} ./yarn.lock
-        chmod +w ./yarn.lock
-
-        yarn config --offline set yarn-offline-mirror ${offlineCache}
-
-        # Do not look up in the registry, but in the offline cache.
-        # TODO: Ask upstream to fix this mess.
-        sed -i -E 's|^(\s*resolved\s*")https?://.*/|\1|' yarn.lock
-        yarn install ${lib.escapeShellArgs yarnFlags}
-
-        ${lib.concatStringsSep "\n" postInstall}
-
-        mkdir $out
-        mv node_modules $out/
-        patchShebangs $out
-      '';
-    };
-
-  # This can be used as a shellHook in mkYarnPackage. It brings the built node_modules into
-  # the shell-hook environment.
-  linkNodeModulesHook = ''
-    if [[ -d node_modules || -L node_modules ]]; then
-      echo "./node_modules is present. Replacing."
-      rm -rf node_modules
-    fi
-
-    ln -s "$node_modules" node_modules
-  '';
-
-  mkYarnPackage = {
-    name ? null,
-    src,
-    packageJSON ? src + "/package.json",
-    yarnLock ? src + "/yarn.lock",
-    yarnNix ? mkYarnNix yarnLock,
-    yarnFlags ? defaultYarnFlags,
-    yarnPreBuild ? "",
-    pkgConfig ? {},
-    extraBuildInputs ? [],
-    publishBinsFor ? null,
-    ...
-  }@attrs:
-    let
-      package = lib.importJSON packageJSON;
-      pname = package.name;
-      version = package.version;
-      deps = mkYarnModules {
-        name = "${pname}-modules-${version}";
-        preBuild = yarnPreBuild;
-        inherit packageJSON yarnLock yarnNix yarnFlags pkgConfig;
-      };
-      publishBinsFor_ = unlessNull publishBinsFor [pname];
-    in stdenv.mkDerivation (builtins.removeAttrs attrs ["pkgConfig"] // {
-      inherit src;
-
-      name = unlessNull name "${pname}-${version}";
-
-      buildInputs = [ yarn nodejs ] ++ extraBuildInputs;
-
-      node_modules = deps + "/node_modules";
-
-      configurePhase = attrs.configurePhase or ''
-        runHook preConfigure
-
-        if [ -d npm-packages-offline-cache ]; then
-          echo "npm-pacakges-offline-cache dir present. Removing."
-          rm -rf npm-packages-offline-cache
-        fi
-
-        if [[ -d node_modules || -L node_modules ]]; then
-          echo "./node_modules is present. Removing."
-          rm -rf node_modules
-        fi
-
-        mkdir -p node_modules
-        ln -s $node_modules/* node_modules/
-        ln -s $node_modules/.bin node_modules/
-
-        if [ -d node_modules/${pname} ]; then
-          echo "Error! There is already an ${pname} package in the top level node_modules dir!"
-          exit 1
-        fi
-
-        runHook postConfigure
-      '';
-
-      # Replace this phase on frontend packages where only the generated
-      # files are an interesting output.
-      installPhase = attrs.installPhase or ''
-        runHook preInstall
-
-        mkdir -p $out
-        cp -r node_modules $out/node_modules
-        cp -r . $out/node_modules/${pname}
-        rm -rf $out/node_modules/${pname}/node_modules
-
-        mkdir $out/bin
-        node ${./fixup_bin.js} $out ${lib.concatStringsSep " " publishBinsFor_}
-
-        runHook postInstall
-      '';
-
-      passthru = {
-        inherit package deps;
-      } // (attrs.passthru or {});
-
-      # TODO: populate meta automatically
-    });
-in
-  yarn2nix
diff --git a/pkgs/development/tools/yarn2nix/fixup_bin.js b/pkgs/development/tools/yarn2nix/fixup_bin.js
deleted file mode 100644
index dab1759c2046..000000000000
--- a/pkgs/development/tools/yarn2nix/fixup_bin.js
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/usr/bin/env node
-"use strict";
-
-/* Usage:
- * node fixup_bin.js <output_dir> [<bin_pkg_1>, <bin_pkg_2> ... ]
- */
-
-const fs = require("fs");
-const path = require("path");
-
-const output = process.argv[2];
-const packages_to_publish_bin = process.argv.slice(3);
-const derivation_bin_path = output + "/bin";
-
-function processPackage(name) {
-  console.log("Processing ", name);
-  const package_path = output + "/node_modules/" + name;
-  const package_json_path = package_path + "/package.json";
-  const package_json = JSON.parse(fs.readFileSync(package_json_path));
-
-  if (!package_json.bin) {
-    console.log("No binaries provided");
-    return;
-  }
-
-  // There are two alternative syntaxes for `bin`
-  // a) just a plain string, in which case the name of the package is the name of the binary.
-  // b) an object, where key is the name of the eventual binary, and the value the path to that binary.
-  if (typeof package_json.bin == "string") {
-    let bin_name = package_json.bin;
-    package_json.bin = { };
-    package_json.bin[package_json.name] = bin_name;
-  }
-
-  for (let binName in package_json.bin) {
-    const bin_path = package_json.bin[binName];
-    const full_bin_path = path.normalize(package_path + "/" + bin_path);
-    fs.symlinkSync(full_bin_path, derivation_bin_path + "/"+ binName);
-    console.log("Linked", binName);
-  }
-}
-
-packages_to_publish_bin.forEach((pkg) => {
-  processPackage(pkg);
-});
diff --git a/pkgs/development/tools/yarn2nix/package.json b/pkgs/development/tools/yarn2nix/package.json
deleted file mode 100644
index 130eee67c560..000000000000
--- a/pkgs/development/tools/yarn2nix/package.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
-  "name": "yarn2nix",
-  "version": "1.0.0",
-  "description": "Convert packages.json and yarn.lock into a Nix expression that downloads all the dependencies",
-  "main": "index.js",
-  "repository": ".",
-  "author": "Maarten Hoogendoorn <maarten@moretea.nl>",
-  "license": "MIT",
-  "scripts": {
-    "yarn2nix": "bin/yarn2nix.js"
-  },
-  "bin": {
-    "yarn2nix": "bin/yarn2nix.js"
-  },
-  "dependencies": {
-    "@yarnpkg/lockfile": "^1.0.0",
-    "docopt": "^0.6.2"
-  }
-}
diff --git a/pkgs/development/tools/yarn2nix/yarn.lock b/pkgs/development/tools/yarn2nix/yarn.lock
deleted file mode 100644
index 976d2c530e1e..000000000000
--- a/pkgs/development/tools/yarn2nix/yarn.lock
+++ /dev/null
@@ -1,11 +0,0 @@
-# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
-# yarn lockfile v1
-
-
-"@yarnpkg/lockfile@^1.0.0":
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.0.0.tgz#33d1dbb659a23b81f87f048762b35a446172add3"
-
-docopt@^0.6.2:
-  version "0.6.2"
-  resolved "https://registry.yarnpkg.com/docopt/-/docopt-0.6.2.tgz#b28e9e2220da5ec49f7ea5bb24a47787405eeb11"
\ No newline at end of file
diff --git a/pkgs/development/tools/yarn2nix/yarn.nix b/pkgs/development/tools/yarn2nix/yarn.nix
deleted file mode 100644
index a9e42e7d986c..000000000000
--- a/pkgs/development/tools/yarn2nix/yarn.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{fetchurl, linkFarm}: rec {
-  offline_cache = linkFarm "offline" packages;
-  packages = [
-
-    {
-      name = "lockfile-1.0.0.tgz";
-      path = fetchurl {
-        name = "lockfile-1.0.0.tgz";
-        url  = "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.0.0.tgz";
-        sha1 = "33d1dbb659a23b81f87f048762b35a446172add3";
-      };
-    }
-
-    {
-      name = "docopt-0.6.2.tgz";
-      path = fetchurl {
-        name = "docopt-0.6.2.tgz";
-        url  = "https://registry.yarnpkg.com/docopt/-/docopt-0.6.2.tgz";
-        sha1 = "b28e9e2220da5ec49f7ea5bb24a47787405eeb11";
-      };
-    }
-  ];
-}
diff --git a/pkgs/development/web/mailcatcher/Gemfile.lock b/pkgs/development/web/mailcatcher/Gemfile.lock
index c953a311077e..560213897c91 100644
--- a/pkgs/development/web/mailcatcher/Gemfile.lock
+++ b/pkgs/development/web/mailcatcher/Gemfile.lock
@@ -1,11 +1,11 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    daemons (1.2.4)
+    daemons (1.3.1)
     eventmachine (1.0.9.1)
-    mail (2.6.6)
-      mime-types (>= 1.16, < 4)
-    mailcatcher (0.6.5)
+    mail (2.7.1)
+      mini_mime (>= 0.1.1)
+    mailcatcher (0.7.1)
       eventmachine (= 1.0.9.1)
       mail (~> 2.3)
       rack (~> 1.5)
@@ -13,11 +13,9 @@ GEM
       skinny (~> 0.2.3)
       sqlite3 (~> 1.3)
       thin (~> 1.5.0)
-    mime-types (3.1)
-      mime-types-data (~> 3.2015)
-    mime-types-data (3.2016.0521)
+    mini_mime (1.0.1)
     rack (1.6.11)
-    rack-protection (1.5.3)
+    rack-protection (1.5.5)
       rack
     sinatra (1.4.8)
       rack (~> 1.5)
@@ -26,12 +24,12 @@ GEM
     skinny (0.2.4)
       eventmachine (~> 1.0.0)
       thin (>= 1.5, < 1.7)
-    sqlite3 (1.3.13)
+    sqlite3 (1.4.0)
     thin (1.5.1)
       daemons (>= 1.0.9)
       eventmachine (>= 0.12.6)
       rack (>= 1.0.0)
-    tilt (2.0.7)
+    tilt (2.0.9)
 
 PLATFORMS
   ruby
@@ -40,4 +38,4 @@ DEPENDENCIES
   mailcatcher
 
 BUNDLED WITH
-   1.16.4
+   1.17.2
diff --git a/pkgs/development/web/mailcatcher/gemset.nix b/pkgs/development/web/mailcatcher/gemset.nix
index 75e1336b1c3c..7603e8ff2ef1 100644
--- a/pkgs/development/web/mailcatcher/gemset.nix
+++ b/pkgs/development/web/mailcatcher/gemset.nix
@@ -1,13 +1,17 @@
 {
   daemons = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1bmb4qrd95b5gl3ym5j3q6mf090209f4vkczggn49n56w6s6zldz";
+      sha256 = "0l5gai3vd4g7aqff0k1mp41j9zcsvm2rbwmqn115a325k9r7pf4w";
       type = "gem";
     };
-    version = "1.2.4";
+    version = "1.3.1";
   };
   eventmachine = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "17jr1caa3ggg696dd02g2zqzdjqj9x9q2nl7va82l36f7c5v6k4z";
@@ -16,41 +20,40 @@
     version = "1.0.9.1";
   };
   mail = {
-    dependencies = ["mime-types"];
+    dependencies = ["mini_mime"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0d7lhj2dw52ycls6xigkfz6zvfhc6qggply9iycjmcyj9760yvz9";
+      sha256 = "00wwz6ys0502dpk8xprwcqfwyf3hmnx6lgxaiq6vj43mkx43sapc";
       type = "gem";
     };
-    version = "2.6.6";
+    version = "2.7.1";
   };
   mailcatcher = {
     dependencies = ["eventmachine" "mail" "rack" "sinatra" "skinny" "sqlite3" "thin"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0h6gk8n18i5f651f244al1hscjzl27fpma4vqw0qhszqqpd5p3bx";
+      sha256 = "02w1ycyfv7x0sh9799lz7xa65p5qvl5z4pa8a7prb68h2zwkfq0n";
       type = "gem";
     };
-    version = "0.6.5";
+    version = "0.7.1";
   };
-  mime-types = {
-    dependencies = ["mime-types-data"];
+  mini_mime = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m";
+      sha256 = "1q4pshq387lzv9m39jv32vwb8wrq3wc4jwgl4jk209r4l33v09d3";
       type = "gem";
     };
-    version = "3.1";
-  };
-  mime-types-data = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "04my3746hwa4yvbx1ranhfaqkgf6vavi1kyijjnw8w3dy37vqhkm";
-      type = "gem";
-    };
-    version = "3.2016.0521";
+    version = "1.0.1";
   };
   rack = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1g9926ln2lw12lfxm4ylq1h6nl0rafl10za3xvjzc87qvnqic87f";
@@ -60,15 +63,19 @@
   };
   rack-protection = {
     dependencies = ["rack"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0cvb21zz7p9wy23wdav63z5qzfn4nialik22yqp6gihkgfqqrh5r";
+      sha256 = "0my0wlw4a5l3hs79jkx2xzv7djhajgf8d28k8ai1ddlnxxb0v7ss";
       type = "gem";
     };
-    version = "1.5.3";
+    version = "1.5.5";
   };
   sinatra = {
     dependencies = ["rack" "rack-protection" "tilt"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0byxzl7rx3ki0xd7aiv1x8mbah7hzd8f81l65nq8857kmgzj1jqq";
@@ -78,6 +85,8 @@
   };
   skinny = {
     dependencies = ["eventmachine" "thin"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1y3yvx88ylgz4d2s1wskjk5rkmrcr15q3ibzp1q88qwzr5y493a9";
@@ -86,15 +95,19 @@
     version = "0.2.4";
   };
   sqlite3 = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "01ifzp8nwzqppda419c9wcvr8n82ysmisrs0hph9pdmv1lpa4f5i";
+      sha256 = "0pmgpqx2sg8pms54rk7kjjy8jwsw21g1f7mb02fggbdcqy8jk3fx";
       type = "gem";
     };
-    version = "1.3.13";
+    version = "1.4.0";
   };
   thin = {
     dependencies = ["daemons" "eventmachine" "rack"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0hrq9m3hb6pm8yrqshhg0gafkphdpvwcqmr7k722kgdisp3w91ga";
@@ -103,11 +116,13 @@
     version = "1.5.1";
   };
   tilt = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1is1ayw5049z8pd7slsk870bddyy5g2imp4z78lnvl8qsl8l0s7b";
+      sha256 = "0ca4k0clwf0rkvy7726x4nxpjxkpv67w043i39saxgldxd97zmwz";
       type = "gem";
     };
-    version = "2.0.7";
+    version = "2.0.9";
   };
 }
\ No newline at end of file
diff --git a/pkgs/development/web/nodejs/v11.nix b/pkgs/development/web/nodejs/v11.nix
index 3858061eaee3..5f2931e9b27d 100644
--- a/pkgs/development/web/nodejs/v11.nix
+++ b/pkgs/development/web/nodejs/v11.nix
@@ -5,6 +5,6 @@ let
 in
   buildNodejs {
     inherit enableNpm;
-    version = "11.11.0";
-    sha256 = "1732jv95xza8813wk7qy22jxh2x9lnc9lr0rqkql7ggf03wymn56";
+    version = "11.13.0";
+    sha256 = "12n3bm21q8nm6wn116c0af8fpmxhaa7xd4srrba36q0zl4nra4bl";
   }
diff --git a/pkgs/development/web/postman/default.nix b/pkgs/development/web/postman/default.nix
index 5466bb8c7c84..a09a84e4bf75 100644
--- a/pkgs/development/web/postman/default.nix
+++ b/pkgs/development/web/postman/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "postman-${version}";
-  version = "6.7.3";
+  version = "7.0.7";
 
   src = fetchurl {
     url = "https://dl.pstmn.io/download/version/${version}/linux64";
-    sha256 = "04gfdb2pk2y8yv9ixq4ac5pk0rdfspd0810izij3hjnyqlv32hfg";
+    sha256 = "47be1b955759520f3a2c7dcdecb85b4c52c38df717da294ba184f46f2058014a";
     name = "${name}.tar.gz";
   };
 
@@ -36,9 +36,11 @@ stdenv.mkDerivation rec {
     mkdir -p $out/share/applications
     ln -s ${desktopItem}/share/applications/* $out/share/applications/
 
-    iconDir=$out/share/icons/hicolor/128x128/apps
-    mkdir -p $iconDir
-    ln -s $out/share/postman/resources/app/assets/icon.png $iconDir/postman.png
+    iconRootDir=$out/share/icons
+    iconSizeDir=$out/share/icons/hicolor/128x128/apps
+    mkdir -p $iconSizeDir
+    ln -s $out/share/postman/resources/app/assets/icon.png $iconRootDir/postman.png
+    ln -s $out/share/postman/resources/app/assets/icon.png $iconSizeDir/postman.png
   '';
 
   preFixup = let
diff --git a/pkgs/games/assaultcube/assaultcube-next.patch b/pkgs/games/assaultcube/assaultcube-next.patch
deleted file mode 100644
index 92fc79966707..000000000000
--- a/pkgs/games/assaultcube/assaultcube-next.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- 1.1.0.4/source/src/Makefile
-+++ 1.1.0.4/source/src/Makefile
-@@ -6,7 +6,7 @@
- # found to have been caused by the g++ compiler in the past. This seems to have
- # been fixed now by relaxing the optimization that g++ does, so although we'll
- # continue using clang++ (just in case), you can use g++ if you prefer.
--CXX=clang++
-+#CXX=clang++
-
- # Changing this to ACDEBUG=yes will compile a debug version of AssaultCube.
- ACDEBUG=no
diff --git a/pkgs/games/assaultcube/default.nix b/pkgs/games/assaultcube/default.nix
index 71e885a04d34..593622c3008b 100644
--- a/pkgs/games/assaultcube/default.nix
+++ b/pkgs/games/assaultcube/default.nix
@@ -1,5 +1,5 @@
 { fetchFromGitHub, stdenv, makeDesktopItem, openal, pkgconfig, libogg,
-  libvorbis, SDL, SDL_image, makeWrapper, zlib,
+  libvorbis, SDL, SDL_image, makeWrapper, zlib, file,
   client ? true, server ? true }:
 
 with stdenv.lib;
@@ -8,38 +8,21 @@ stdenv.mkDerivation rec {
 
   # master branch has legacy (1.2.0.2) protocol 1201 and gcc 6 fix.
   pname = "assaultcube";
-  version = "unstable-2017-05-01";
-
-  meta = {
-    description = "Fast and fun first-person-shooter based on the Cube fps";
-    homepage = https://assault.cubers.net;
-    maintainers = [ maintainers.genesis ];
-    platforms = platforms.linux; # should work on darwin with a little effort.
-    license = stdenv.lib.licenses.zlib;
-  };
+  version = "unstable-2018-05-20";
 
   src = fetchFromGitHub {
     owner = "assaultcube";
     repo  = "AC";
-    rev = "9f537b0876a39d7686e773040469fbb1417de18b";
-    sha256 = "0nvckn67mmfaa7x3j41xyxjllxqzfx1dxg8pnqsaak3kkzds34pl";
+    rev = "f58ea22b46b5013a520520670434b3c235212371";
+    sha256 = "1vfn3d55vmmipdykrcfvgk6dddi9y95vlclsliirm7jdp20f15hd";
   };
 
-  # ${branch} not accepted as a value ?
-  # TODO: write a functional BUNDLED_ENET option and restore it in deps.
-  patches = [ ./assaultcube-next.patch ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  # add optional for server only ?
-  buildInputs = [ makeWrapper openal SDL SDL_image libogg libvorbis zlib ];
+  nativeBuildInputs = [ makeWrapper pkgconfig ];
 
-  #makeFlags = [ "CXX=g++" ];
+  buildInputs = [ file zlib ] ++ optionals client [ openal SDL SDL_image libogg libvorbis ];
 
   targets = (optionalString server "server") + (optionalString client " client");
-  buildPhase = ''
-    make -C source/src ${targets}
-  '';
+  makeFlags = [ "-C source/src" "CXX=c++" "${targets}" ];
 
   desktop = makeDesktopItem {
     name = "AssaultCube";
@@ -61,21 +44,29 @@ stdenv.mkDerivation rec {
 
     cp -r config packages $out/$gamedatadir
 
-    # install custom script
-    substituteAll ${./launcher.sh} $bindir/assaultcube
-    chmod +x $bindir/assaultcube
-
     if (test -e source/src/ac_client) then
       cp source/src/ac_client $bindir
       mkdir -p $out/share/applications
       cp ${desktop}/share/applications/* $out/share/applications
       install -Dpm644 packages/misc/icon.png $out/share/icons/assaultcube.png
       install -Dpm644 packages/misc/icon.png $out/share/pixmaps/assaultcube.png
+      
+      makeWrapper $out/bin/ac_client $out/bin/${pname} \
+        --run "cd $out/$gamedatadir" --add-flags "--home=\$HOME/.assaultcube/v1.2next --init"
     fi
 
     if (test -e source/src/ac_server) then
       cp source/src/ac_server $bindir
-      ln -s $bindir/${pname} $bindir/${pname}-server
+      makeWrapper $out/bin/ac_server $out/bin/${pname}-server \
+        --run "cd $out/$gamedatadir" --add-flags "-Cconfig/servercmdline.txt"
     fi
     '';
+
+  meta = {
+    description = "Fast and fun first-person-shooter based on the Cube fps";
+    homepage = https://assault.cubers.net;
+    maintainers = [ maintainers.genesis ];
+    platforms = platforms.linux; # should work on darwin with a little effort.
+    license = stdenv.lib.licenses.zlib;
+  };
 }
diff --git a/pkgs/games/assaultcube/launcher.sh b/pkgs/games/assaultcube/launcher.sh
deleted file mode 100644
index 331cb861f66c..000000000000
--- a/pkgs/games/assaultcube/launcher.sh
+++ /dev/null
@@ -1,20 +0,0 @@
-#!@shell@
-# original scripts are very awful
-
-CUBE_DIR=@out@@gamedatadir@
-
-case $(basename "$0") in
-  assaultcube-server)
-    CUBE_OPTIONS="-Cconfig/servercmdline.txt"
-    BINARYPATH=@out@/bin/ac_server
-    ;;
-  assaultcube)
-    CUBE_OPTIONS="--home=${HOME}/.assaultcube/v1.2next --init"
-    BINARYPATH=@out@/bin/ac_client
-    ;;
-  *) echo "$0" is not supported.
-     exit 1
-esac
-
-cd $CUBE_DIR
-exec "${BINARYPATH}" ${CUBE_OPTIONS} "$@"
diff --git a/pkgs/games/crispy-doom/default.nix b/pkgs/games/crispy-doom/default.nix
index 730c7f764cc2..8b549d93fb22 100644
--- a/pkgs/games/crispy-doom/default.nix
+++ b/pkgs/games/crispy-doom/default.nix
@@ -1,10 +1,10 @@
 { stdenv, autoreconfHook, pkgconfig, SDL2, SDL2_mixer, SDL2_net, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "crispy-doom-5.4";
+  name = "crispy-doom-5.5.1";
   src = fetchurl {
     url = "https://github.com/fabiangreffrath/crispy-doom/archive/${name}.tar.gz";
-    sha256 = "0kks7vzp6cwmfv2s39z09vl9w897i8xijg1s8lfbg17viq8azb3x";
+    sha256 = "0qnqyyjnclmwls34m7nk8lpvpaffdmhxshlarsiggcsn9py96kns";
   };
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
   buildInputs = [ SDL2 SDL2_mixer SDL2_net ];
diff --git a/pkgs/games/eduke32/default.nix b/pkgs/games/eduke32/default.nix
index c51f014b179d..3407659d977b 100644
--- a/pkgs/games/eduke32/default.nix
+++ b/pkgs/games/eduke32/default.nix
@@ -1,76 +1,78 @@
-{ stdenv, fetchurl, flac, gtk2, libvorbis, libvpx, makeDesktopItem, libGLU_combined, nasm
-, pkgconfig, SDL2, SDL2_mixer, runtimeShell }:
+{ stdenv, fetchurl, makeWrapper, pkgconfig, nasm, makeDesktopItem
+, flac, gtk2, libvorbis, libvpx, libGLU_combined
+, SDL2, SDL2_mixer }:
 
 let
-  year = "2015";
-  date = "20150420";
-  rev = "5160";
-in stdenv.mkDerivation rec {
+  version = "20190330";
+  rev = "7470";
+
+  desktopItem = makeDesktopItem {
+    name = "eduke32";
+    exec = "@out@/bin/${wrapper}";
+    comment = "Duke Nukem 3D port";
+    desktopName = "Enhanced Duke Nukem 3D";
+    genericName = "Duke Nukem 3D port";
+    categories = "Application;Game;";
+  };
+
+  wrapper = "eduke32-wrapper";
+
+in stdenv.mkDerivation {
   name = "eduke32-${version}";
-  version = "${date}-${rev}";
 
   src = fetchurl {
-    url = "http://dukeworld.duke4.net/eduke32/synthesis/old/${year}/${version}/eduke32_src_${version}.tar.xz";
-    sha256 = "1nlq5jbglg00c1z1vsyl627fh0mqfxvk5qyxav5vzla2b4svik2v";
+    url = "http://dukeworld.duke4.net/eduke32/synthesis/latest/eduke32_src_${version}-${rev}.tar.xz";
+    sha256 = "09a7l23i6sygicc82w1in9hjw0jvivlf7q0vw8kcx9j98lm23mkn";
   };
 
-  buildInputs = [ flac gtk2 libvorbis libvpx libGLU_combined SDL2 SDL2_mixer ]
+  buildInputs = [ flac gtk2 libvorbis libvpx libGLU_combined SDL2 SDL2_mixer ];
+
+  nativeBuildInputs = [ makeWrapper pkgconfig ]
     ++ stdenv.lib.optional (stdenv.hostPlatform.system == "i686-linux") nasm;
-  nativeBuildInputs = [ pkgconfig ];
 
   postPatch = ''
-    substituteInPlace build/src/glbuild.c \
-      --replace libGL.so	${libGLU_combined}/lib/libGL.so \
-      --replace libGLU.so	${libGLU_combined}/lib/libGLU.so
+    substituteInPlace source/build/src/glbuild.cpp \
+      --replace libGLU.so ${libGLU_combined}/lib/libGLU.so
+
+    for f in glad.c glad_wgl.c ; do
+      substituteInPlace source/glad/src/$f \
+        --replace libGL.so ${libGLU_combined}/lib/libGL.so
+    done
   '';
 
-  NIX_CFLAGS_COMPILE = "-I${SDL2.dev}/include/SDL2 -I${SDL2_mixer}/include/SDL2";
-  NIX_LDFLAGS = "-L${SDL2}/lib";
+  NIX_CFLAGS_COMPILE = [
+    "-I${SDL2.dev}/include/SDL2"
+    "-I${SDL2_mixer}/include/SDL2"
+  ];
 
   makeFlags = [
-    "LINKED_GTK=1"
     "SDLCONFIG=${SDL2}/bin/sdl2-config"
-    "VC_REV=${rev}"
   ];
 
-  desktopItem = makeDesktopItem {
-    name = "eduke32";
-    exec = "eduke32-wrapper";
-    comment = "Duke Nukem 3D port";
-    desktopName = "Enhanced Duke Nukem 3D";
-    genericName = "Duke Nukem 3D port";
-    categories = "Application;Game;";
-  };
+  enableParallelBuilding = true;
 
   installPhase = ''
-    # Make wrapper script
-    cat > eduke32-wrapper <<EOF
-    #!${runtimeShell}
-
-    if [ "$EDUKE32_DATA_DIR" = "" ]; then
-        EDUKE32_DATA_DIR=/var/lib/games/eduke32
-    fi
-    if [ "$EDUKE32_GRP_FILE" = "" ]; then
-        EDUKE32_GRP_FILE=\$EDUKE32_DATA_DIR/DUKE3D.GRP
-    fi
-
-    cd \$EDUKE32_DATA_DIR
-    exec $out/bin/eduke32 -g \$EDUKE32_GRP_FILE
-    EOF
-
-    # Install binaries
-    mkdir -p $out/bin
-    install -Dm755 eduke32{,-wrapper} mapster32 $out/bin
-
-    # Install desktop item
+    runHook preInstall
+
+    install -Dm755 -t $out/bin eduke32 mapster32
+
+    makeWrapper $out/bin/eduke32 $out/bin/${wrapper} \
+      --set-default EDUKE32_DATA_DIR /var/lib/games/eduke32 \
+      --add-flags '-g "$EDUKE32_DATA_DIR/DUKE3D.GRP"'
+
     cp -rv ${desktopItem}/share $out
+    substituteInPlace $out/share/applications/eduke32.desktop \
+      --subst-var out
+
+    runHook postInstall
   '';
 
   meta = with stdenv.lib; {
     description = "Enhanched port of Duke Nukem 3D for various platforms";
-    license = licenses.gpl2Plus;
     homepage = http://eduke32.com;
+    license = licenses.gpl2Plus;
     maintainers = with maintainers; [ sander ];
-    platforms = with platforms; linux;
+    # Darwin is untested (supported by upstream)
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/games/gscrabble/default.nix b/pkgs/games/gscrabble/default.nix
new file mode 100644
index 000000000000..fc73f89f66c0
--- /dev/null
+++ b/pkgs/games/gscrabble/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, buildPythonApplication, fetchFromGitHub
+, gtk3, wrapGAppsHook, gst_all_1, gobject-introspection
+, python3Packages, gnome3, hicolor-icon-theme }:
+
+buildPythonApplication rec {
+  pname = "gscrabble";
+  version = "unstable-2019-03-11";
+
+  src = fetchFromGitHub {
+    owner = "RaaH";
+    repo = "gscrabble";
+    rev = "4b6e4e151a4cd4a4f66a5be2c8616becac3f2a29";
+    sha256 = "0a89kqh04x52q7qyv1rfa7xif0pdw3zc0dw5a24msala919g90q2";
+  };
+
+  doCheck = false;
+
+  nativeBuildInputs = [ wrapGAppsHook ];
+
+  buildInputs = with gst_all_1; [
+    gst-plugins-base gst-plugins-good gst-plugins-ugly gst-plugins-bad
+    hicolor-icon-theme gnome3.adwaita-icon-theme gtk3 gobject-introspection
+  ];
+
+  propagatedBuildInputs = with python3Packages; [ gst-python pygobject3 ];
+
+  preFixup = ''
+    gappsWrapperArgs+=(
+      --prefix PYTHONPATH : "$out/share/GScrabble/modules"
+      )
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Golden Scrabble crossword puzzle game";
+    homepage = https://github.com/RaaH/gscrabble/;
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.genesis ];
+  };
+}
diff --git a/pkgs/games/leela-zero/default.nix b/pkgs/games/leela-zero/default.nix
index c1238b7b3bbb..efe7a6a76e98 100644
--- a/pkgs/games/leela-zero/default.nix
+++ b/pkgs/games/leela-zero/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "leela-zero-${version}";
-  version = "0.16";
+  version = "0.17";
 
   src = fetchFromGitHub {
     owner = "gcp";
     repo = "leela-zero";
     rev = "v${version}";
-    sha256 = "1px7wqvlv414gklzgrmppp8wzc2mkskinm1p75j4snbqr8qpbn5s";
+    sha256 = "1k04ld1ysabxb8ivci3ji5by9vb3yvnflkf2fscs1x0bp7d6j101";
     fetchSubmodules = true;
   };
 
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
     description = "Go engine modeled after AlphaGo Zero";
     homepage    = https://github.com/gcp/leela-zero;
     license     = licenses.gpl3;
-    maintainers = [ maintainers.averelld ];
+    maintainers = [ maintainers.averelld maintainers.omnipotententity ];
     platforms   = platforms.linux;
   };
 }
diff --git a/pkgs/games/lugaru/default.nix b/pkgs/games/lugaru/default.nix
new file mode 100644
index 000000000000..cad98650c24e
--- /dev/null
+++ b/pkgs/games/lugaru/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitLab, cmake, openal, pkgconfig, libogg,
+  libvorbis, SDL2, makeWrapper, libpng, libjpeg_turbo, libGLU }:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+
+  pname = "lugaru";
+  version = "1.2";
+
+  src = fetchFromGitLab {
+    owner = "osslugaru";
+    repo = "lugaru";
+    rev = version;
+    sha256 = "089rblf8xw3c6dq96vnfla6zl8gxcpcbc1bj5jysfpq63hhdpypz";
+  };
+
+  nativeBuildInputs = [ makeWrapper cmake pkgconfig ];
+
+  buildInputs = [ libGLU openal SDL2 libogg libvorbis libpng libjpeg_turbo ];
+
+  cmakeFlags = [ "-DSYSTEM_INSTALL=ON" ];
+
+  meta = {
+    description = "Lugaru HD: Third person ninja rabbit fighting game";
+    homepage = https://osslugaru.gitlab.io;
+    maintainers = [ maintainers.genesis ];
+    platforms = platforms.linux;
+    license = stdenv.lib.licenses.gpl2Plus;
+  };
+}
diff --git a/pkgs/games/minetest/default.nix b/pkgs/games/minetest/default.nix
index 217697e1b104..cf20651aa3ea 100644
--- a/pkgs/games/minetest/default.nix
+++ b/pkgs/games/minetest/default.nix
@@ -72,9 +72,9 @@ let
   };
 
   v5 = {
-    version = "5.0.0";
-    sha256 = "1b8n8nzlvmld1hl3zgs1xg4jbc1nsf1m2bn7fi794vdr06s6n911";
-    dataSha256 = "186i1pna2f3fwa2001y8mw5131h0sndhfdxzfqq2gnr1m83sjm0w";
+    version = "5.0.1";
+    sha256 = "11i8fqjpdggqfdlx440k5758zy0nbf9phxan9r63mavc7mph88ay";
+    dataSha256 = "1hw3n7qqpasq6bivxhq01kr0d58w0gp46s0baxixp1fakd79p8a7";
   };
 
 in {
diff --git a/pkgs/games/openmw/default.nix b/pkgs/games/openmw/default.nix
index 47527a13b7b7..c57fe642dc3d 100644
--- a/pkgs/games/openmw/default.nix
+++ b/pkgs/games/openmw/default.nix
@@ -11,14 +11,14 @@ let
     };
   });
 in stdenv.mkDerivation rec {
-  version = "0.44.0";
+  version = "0.45.0";
   name = "openmw-${version}";
 
   src = fetchFromGitHub {
     owner = "OpenMW";
     repo = "openmw";
     rev = name;
-    sha256 = "0rxkw0bzag7qffifg28dyyga47aaaf5ziiccpv7p8yax1wglvymh";
+    sha256 = "1r87zrsnza2v9brksh809zzqj6zhk5xj15qs8iq11v1bscm2a2j4";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/games/openrct2/default.nix b/pkgs/games/openrct2/default.nix
index e41caa3db978..926e360a1b4c 100644
--- a/pkgs/games/openrct2/default.nix
+++ b/pkgs/games/openrct2/default.nix
@@ -5,20 +5,20 @@
 
 let
   name = "openrct2-${version}";
-  version = "0.2.1";
+  version = "0.2.2";
 
   openrct2-src = fetchFromGitHub {
     owner = "OpenRCT2";
     repo = "OpenRCT2";
     rev = "v${version}";
-    sha256 = "0dl1f0gvq0ifaii66c7bwp8k822krcdn9l44prnyds6smrdmd3dq";
+    sha256 = "1bfqmb6cbmsjcvj77vppy5lw1m4lkvxd1w3f218ah4788xnkysq2";
   };
 
   objects-src = fetchFromGitHub {
     owner = "OpenRCT2";
     repo = "objects";
-    rev = "v1.0.6";
-    sha256 = "1yhyafsk2lyasgj1r7h2n4k7vp5q792aj86ggpbmd6bcp4kk6hbm";
+    rev = "v1.0.9";
+    sha256 = "1kng0mz8dsdbfd3g6qsk69ap2nq75aizw76j4a6lkfygnbcv8m3j";
   };
 
   title-sequences-src = fetchFromGitHub {
diff --git a/pkgs/games/openttd/default.nix b/pkgs/games/openttd/default.nix
index 237021e98010..d0e880f5f2cc 100644
--- a/pkgs/games/openttd/default.nix
+++ b/pkgs/games/openttd/default.nix
@@ -6,8 +6,8 @@
 
 let
   opengfx = fetchzip {
-    url = "http://binaries.openttd.org/extra/opengfx/0.5.2/opengfx-0.5.2-all.zip";
-    sha256 = "1sjzwl8wfdj0izlx2qdq15bqiy1vzq7gq7drydfwwryk173ig5sa";
+    url = "http://binaries.openttd.org/extra/opengfx/0.5.5/opengfx-0.5.5-all.zip";
+    sha256 = "065l0g5nawcd6fkfbsfgviwgq9610y7gxzkpmd19i423d0lrq6d8";
   };
 
   opensfx = fetchzip {
@@ -29,11 +29,11 @@ let
 in
 stdenv.mkDerivation rec {
   name = "openttd-${version}";
-  version = "1.8.0";
+  version = "1.9.0";
 
   src = fetchurl {
-    url = "http://binaries.openttd.org/releases/${version}/${name}-source.tar.xz";
-    sha256 = "0zq8xdg0k92p3s4j9x76591zaqz7k9ra69q008m209vdfffjvly2";
+    url = "http://proxy.binaries.openttd.org/openttd-releases/${version}/${name}-source.tar.xz";
+    sha256 = "06blx844q6a248jwzqlgi82692vvkmvb00bfdx4jhcwp9mayvza5";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper ];
diff --git a/pkgs/games/torcs/default.nix b/pkgs/games/torcs/default.nix
index f1718201998c..7497084f8d02 100644
--- a/pkgs/games/torcs/default.nix
+++ b/pkgs/games/torcs/default.nix
@@ -12,15 +12,15 @@ stdenv.mkDerivation rec {
 
   patches = [
     (fetchpatch {
-      url = "https://anonscm.debian.org/git/pkg-games/torcs.git/plain/debian/patches/gcc6-isnan.patch";
+      url = "https://salsa.debian.org/games-team/torcs/raw/master/debian/patches/gcc6-isnan.patch";
       sha256 = "16scmq30vwb8429ah9d4ws0v1w6ai59lvn7hcgnvfzyap42ry876";
     })
     (fetchpatch {
-      url = "https://anonscm.debian.org/git/pkg-games/torcs.git/plain/debian/patches/format-argument.patch";
+      url = "https://salsa.debian.org/games-team/torcs/raw/master/debian/patches/format-argument.patch";
       sha256 = "04advcx88yh23ww767iysydzhp370x7cqp2wf9hk2y1qvw7mxsja";
     })
     (fetchpatch {
-      url = "https://anonscm.debian.org/git/pkg-games/torcs.git/plain/debian/patches/glibc-default-source.patch";
+      url = "https://salsa.debian.org/games-team/torcs/raw/master/debian/patches/glibc-default-source.patch";
       sha256 = "0k4hgpddnhv68mdc9ics7ah8q54j60g394d7zmcmzg6l3bjd9pyp";
     })
   ];
diff --git a/pkgs/misc/acpilight/default.nix b/pkgs/misc/acpilight/default.nix
index 20efe6342859..e36e41885008 100644
--- a/pkgs/misc/acpilight/default.nix
+++ b/pkgs/misc/acpilight/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, python36, udev, coreutils }:
+{ stdenv, fetchgit, python3, udev, coreutils }:
 
 stdenv.mkDerivation rec {
   pname = "acpilight";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "0kykrl71fb146vaq8207c3qp03h2djkn8hn6psryykk8gdzkv3xd";
   };
 
-  pyenv = python36.withPackages (pythonPackages: with pythonPackages; [
+  pyenv = python3.withPackages (pythonPackages: with pythonPackages; [
     ConfigArgParse
   ]);
 
diff --git a/pkgs/misc/cups/filters.nix b/pkgs/misc/cups/filters.nix
index 34761df5ea14..d063ec912b97 100644
--- a/pkgs/misc/cups/filters.nix
+++ b/pkgs/misc/cups/filters.nix
@@ -9,11 +9,11 @@ let
 
 in stdenv.mkDerivation rec {
   name = "cups-filters-${version}";
-  version = "1.22.1";
+  version = "1.22.2";
 
   src = fetchurl {
     url = "https://openprinting.org/download/cups-filters/${name}.tar.xz";
-    sha256 = "08szgpmac7xlf6vqkvg3pbphnrk2mal3gy382q2y3cm7k4plys3y";
+    sha256 = "06gy3wv6p7kswz3mjn17f17mqpadvqj2riwc42kksnvp8x0h08cw";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper ];
diff --git a/pkgs/misc/drivers/hplip/default.nix b/pkgs/misc/drivers/hplip/default.nix
index 789cb6fc4de0..ea9554288091 100644
--- a/pkgs/misc/drivers/hplip/default.nix
+++ b/pkgs/misc/drivers/hplip/default.nix
@@ -77,6 +77,7 @@ pythonPackages.buildPythonApplication {
     sip
   ] ++ stdenv.lib.optionals withQt5 [
     pyqt5
+    enum-compat
   ];
 
   makeWrapperArgs = [ "--prefix" "PATH" ":" "${nettools}/bin" ];
diff --git a/pkgs/misc/emulators/cdemu/analyzer.nix b/pkgs/misc/emulators/cdemu/analyzer.nix
index 87893a931363..a57fda56ddd4 100644
--- a/pkgs/misc/emulators/cdemu/analyzer.nix
+++ b/pkgs/misc/emulators/cdemu/analyzer.nix
@@ -1,15 +1,20 @@
-{ callPackage, gtk3, glib, libxml2, gnuplot, makeWrapper, gnome3, gdk_pixbuf, librsvg, intltool }:
+{ callPackage, makeWrapper, gobject-introspection, cmake
+, python3Packages, gtk3, glib, libxml2, gnuplot, gnome3, gdk_pixbuf, librsvg, intltool, libmirage }:
 let pkg = import ./base.nix {
-  version = "3.1.0";
+  version = "3.2.2";
   pkgName = "image-analyzer";
-  pkgSha256 = "1pr23kxx83xp83h27fkdv86f3bxclkx056f9jx8jhnpn113xp7r2";
+  pkgSha256 = "0by3nd5c413cvk3jmv3md6q0axbiidy061g9dhf37qzwgcakcx8j";
 };
 in callPackage pkg {
-  buildInputs = [ glib gtk3 libxml2 gnuplot (callPackage ./libmirage.nix {}) makeWrapper
-                  gnome3.adwaita-icon-theme gdk_pixbuf librsvg intltool ];
+  buildInputs = [ glib gtk3 libxml2 gnuplot libmirage makeWrapper
+                  gnome3.adwaita-icon-theme gdk_pixbuf librsvg intltool
+                  python3Packages.python python3Packages.pygobject3 python3Packages.matplotlib ];
   drvParams = {
+    nativeBuildInputs = [ gobject-introspection cmake ];
     postFixup = ''
       wrapProgram $out/bin/image-analyzer \
+        --set PYTHONPATH "$PYTHONPATH" \
+        --set GI_TYPELIB_PATH "$GI_TYPELIB_PATH" \
         --prefix XDG_DATA_DIRS : "$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
     '';
   };
diff --git a/pkgs/misc/emulators/cdemu/client.nix b/pkgs/misc/emulators/cdemu/client.nix
index ec4341a29459..dbf471d35d1d 100644
--- a/pkgs/misc/emulators/cdemu/client.nix
+++ b/pkgs/misc/emulators/cdemu/client.nix
@@ -1,11 +1,11 @@
-{ callPackage, pythonPackages, intltool, makeWrapper }:
+{ callPackage, python3Packages, intltool, makeWrapper }:
 let pkg = import ./base.nix {
-  version = "3.1.0";
+  version = "3.2.1";
   pkgName = "cdemu-client";
-  pkgSha256 = "0s6q923g5vkahw5fki6c7a25f68y78zfx4pfsy0xww0z1f5hfsik";
+  pkgSha256 = "1d8m24qvv62xcwafw5zs4yf39vs64kxl4idqcngd8yyjhrb2ykg5";
 };
 in callPackage pkg {
-  buildInputs = [ pythonPackages.python pythonPackages.dbus-python pythonPackages.pygobject3
+  buildInputs = [ python3Packages.python python3Packages.dbus-python python3Packages.pygobject3
                   intltool makeWrapper ];
   drvParams = {
     postFixup = ''
diff --git a/pkgs/misc/emulators/cdemu/daemon.nix b/pkgs/misc/emulators/cdemu/daemon.nix
index 587224e71d78..a80327ce91c0 100644
--- a/pkgs/misc/emulators/cdemu/daemon.nix
+++ b/pkgs/misc/emulators/cdemu/daemon.nix
@@ -1,9 +1,9 @@
-{ callPackage, glib, libao, intltool }:
+{ callPackage, glib, libao, intltool, libmirage }:
 let pkg = import ./base.nix {
-  version = "3.1.0";
+  version = "3.2.2";
   pkgName = "cdemu-daemon";
-  pkgSha256 = "0kxwhwjvcr40sjlrvln9gasjwkkfc3wxpcz0rxmffp92w8phz3s9";
+  pkgSha256 = "0himyrhhfjsr4ff5aci7240bpm9x34h20pid412ci8fm16nk929b";
 };
 in callPackage pkg {
-  buildInputs = [ glib libao (callPackage ./libmirage.nix {}) intltool ];
+  buildInputs = [ glib libao libmirage intltool ];
 }
diff --git a/pkgs/misc/emulators/cdemu/gui.nix b/pkgs/misc/emulators/cdemu/gui.nix
index 14560919b71a..331ad0ded248 100644
--- a/pkgs/misc/emulators/cdemu/gui.nix
+++ b/pkgs/misc/emulators/cdemu/gui.nix
@@ -1,15 +1,17 @@
-{ callPackage, pythonPackages, gtk3, glib, libnotify, intltool, makeWrapper, gnome3, gdk_pixbuf, librsvg }:
+{ callPackage, makeWrapper, gobject-introspection, cmake
+, python3Packages, gtk3, glib, libnotify, intltool, gnome3, gdk_pixbuf, librsvg }:
 let
   pkg = import ./base.nix {
-    version = "3.1.0";
+    version = "3.2.1";
     pkgName = "gcdemu";
-    pkgSha256 = "0rmnw302fk9vli22v54qx19lqxy23syxi154klxz2vma009q0p02";
+    pkgSha256 = "0lmyvhbf57wcm8k2a33j2dhy4gblaiycy33q070gdrxi37xk7w5g";
   };
-  inherit (pythonPackages) python pygobject3;
+  inherit (python3Packages) python pygobject3;
 in callPackage pkg {
   buildInputs = [ python pygobject3 gtk3 glib libnotify intltool makeWrapper
                   gnome3.adwaita-icon-theme gdk_pixbuf librsvg ];
   drvParams = {
+    nativeBuildInputs = [ gobject-introspection cmake ];
     postFixup = ''
       wrapProgram $out/bin/gcdemu \
         --set PYTHONPATH "$PYTHONPATH" \
diff --git a/pkgs/misc/emulators/cdemu/libmirage.nix b/pkgs/misc/emulators/cdemu/libmirage.nix
index 3813ceef6115..0ead78305cd0 100644
--- a/pkgs/misc/emulators/cdemu/libmirage.nix
+++ b/pkgs/misc/emulators/cdemu/libmirage.nix
@@ -1,9 +1,18 @@
-{ callPackage, glib, libsndfile, zlib, bzip2, lzma, libsamplerate, intltool }:
+{ callPackage, gobject-introspection, cmake, pkgconfig
+, glib, libsndfile, zlib, bzip2, lzma, libsamplerate, intltool
+, pcre, utillinux, libselinux, libsepol }:
+
 let pkg = import ./base.nix {
-  version = "3.1.0";
+  version = "3.2.2";
   pkgName = "libmirage";
-  pkgSha256 = "0qvkvnvxqx8hqzcqzh7sqjzgbc1nrd91lzv33lr8c6fgaq8cqzmn";
+  pkgSha256 = "0gwrfia0fyhi0b3p2pfyyvrcfcb0qysfzgpdqsqjqbx4xaqx5wpi";
 };
 in callPackage pkg {
   buildInputs = [ glib libsndfile zlib bzip2 lzma libsamplerate intltool ];
+  drvParams = {
+    PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_GIRDIR = "${placeholder "out"}/share/gir-1.0";
+    PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_TYPELIBDIR = "${placeholder "out"}/lib/girepository-1.0";
+    nativeBuildInputs = [ cmake gobject-introspection pkgconfig ];
+    propagatedBuildInputs = [ pcre utillinux libselinux libsepol ];
+  };
 }
diff --git a/pkgs/misc/emulators/cdemu/vhba.nix b/pkgs/misc/emulators/cdemu/vhba.nix
index 73ef7bc6a180..2ce3f606d733 100644
--- a/pkgs/misc/emulators/cdemu/vhba.nix
+++ b/pkgs/misc/emulators/cdemu/vhba.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "vhba-${version}";
-  version = "20170610";
+  version = "20190302";
 
   src  = fetchurl {
     url = "mirror://sourceforge/cdemu/vhba-module-${version}.tar.bz2";
-    sha256 = "1v6r0bgx0a65vlh36b1l2965xybngbpga6rp54k4z74xk0zwjw3r";
+    sha256 = "0wvxxc064i8czza91gh0dhmh55x2nbs7szzyh4g30w0c98hmc1n5";
   };
 
   makeFlags = [ "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" "INSTALL_MOD_PATH=$(out)" ];
diff --git a/pkgs/misc/emulators/hatari/default.nix b/pkgs/misc/emulators/hatari/default.nix
index 287df4db01be..3cb0f787ce76 100644
--- a/pkgs/misc/emulators/hatari/default.nix
+++ b/pkgs/misc/emulators/hatari/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, zlib, SDL, cmake }:
 
 stdenv.mkDerivation rec {
-  name = "hatari-2.1.0";
+  name = "hatari-2.2.1";
 
   src = fetchurl {
-    url = "https://download.tuxfamily.org/hatari/2.1.0/${name}.tar.bz2";
-    sha256 = "0909l9fq20ninf8xgv5qf0a5y64cpk5ja1rsk2iaid1dx5h98agb";
+    url = "https://download.tuxfamily.org/hatari/2.2.1/${name}.tar.bz2";
+    sha256 = "0q3g23vnx58w666723v76ilh9j353md3sn48cmlq9gkll8qfzbqi";
   };
 
   # For pthread_cancel
diff --git a/pkgs/misc/emulators/libdsk/default.nix b/pkgs/misc/emulators/libdsk/default.nix
index a3177b07f08b..32201c48ee98 100644
--- a/pkgs/misc/emulators/libdsk/default.nix
+++ b/pkgs/misc/emulators/libdsk/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "libdsk-${version}";
-  version = "1.5.9";
+  version = "1.5.10";
 
   src = fetchurl {
     url = "https://www.seasip.info/Unix/LibDsk/${name}.tar.gz";
-    sha256 = "1r0y07qd3zixi53vql5yqakvv77qm86s6qjwypk9ckggrp5r3w60";
+    sha256 = "0ndkwyf8dp252v4yhqphvi32gmz9m5kkdqwv0aw92cz7mfbnp36g";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/misc/emulators/vbam/default.nix b/pkgs/misc/emulators/vbam/default.nix
index 59f0252259cc..66e17fd3a7a3 100644
--- a/pkgs/misc/emulators/vbam/default.nix
+++ b/pkgs/misc/emulators/vbam/default.nix
@@ -15,12 +15,12 @@
 
 stdenv.mkDerivation rec {
   name = "visualboyadvance-m-${version}";
-  version = "2.1.0";
+  version = "2.1.1";
   src = fetchFromGitHub {
     owner = "visualboyadvance-m";
     repo = "visualboyadvance-m";
     rev = "v${version}";
-    sha256 = "1dppfvy24rgg3h84gv33l1y7zznkv3zxn2hf98w85pca6k1y2afz";
+    sha256 = "03cs7wn01flx925sxhpz1j5sxa6s7wfxq71955kasn7a3xr1kxwn";
   };
 
   buildInputs = [
diff --git a/pkgs/misc/ghostscript/default.nix b/pkgs/misc/ghostscript/default.nix
index 10481c217851..a12d7d7d5acd 100644
--- a/pkgs/misc/ghostscript/default.nix
+++ b/pkgs/misc/ghostscript/default.nix
@@ -1,6 +1,6 @@
 { config, stdenv, lib, fetchurl, pkgconfig, zlib, expat, openssl, autoconf
 , libjpeg, libpng, libtiff, freetype, fontconfig, libpaper, jbig2dec
-, libiconv, ijs, lcms2
+, libiconv, ijs, lcms2, fetchpatch
 , cupsSupport ? config.ghostscript.cups or (!stdenv.isDarwin), cups ? null
 , x11Support ? cupsSupport, xlibsWrapper ? null # with CUPS, X11 only adds very little
 }:
@@ -46,6 +46,11 @@ stdenv.mkDerivation rec {
   patches = [
     ./urw-font-files.patch
     ./doc-no-ref.diff
+    (fetchpatch {
+      name = "CVE-2019-6116";
+      url = "http://git.ghostscript.com/?p=ghostpdl.git;a=patch;h=d3537a54740d78c5895ec83694a07b3e4f616f61";
+      sha256 = "1hr8bpi87bbg1kvv28kflmfh1dhzxw66p9q0ddvbrj72qd86p3kx";
+    })
   ];
 
   outputs = [ "out" "man" "doc" ];
diff --git a/pkgs/misc/scrcpy/default.nix b/pkgs/misc/scrcpy/default.nix
index 87762eb4b258..20ba1295c422 100644
--- a/pkgs/misc/scrcpy/default.nix
+++ b/pkgs/misc/scrcpy/default.nix
@@ -9,33 +9,30 @@
 }:
 
 let
-  version = "1.5";
+  version = "1.8";
   prebuilt_server = fetchurl {
-    url = "https://github.com/Genymobile/scrcpy/releases/download/v${version}-fixversion/scrcpy-server-v${version}.jar";
-    sha256 = "1pi47khfrs9pygs32l9rj8l927z0sdm8bhkrzzkk6ki9c1psnynr";
+    url = "https://github.com/Genymobile/scrcpy/releases/download/v${version}/scrcpy-server-v${version}.jar";
+    sha256 = "1h755k5xpchlm7wq2yk5mlwjnh7y4yhviffixacby0srj3pmb443";
   };
 in
 stdenv.mkDerivation rec {
-  name = "scrcpy-${version}";
+  pname = "scrcpy";
   inherit version;
+
   src = fetchFromGitHub {
     owner = "Genymobile";
-    repo = "scrcpy";
-    rev = "v${version}-fixversion";
-    sha256 = "0magmc44pahw1f4jhzkhjlfc31mk3qq43hzn9513idcl4kh4sb8i";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1cx7y3w699s3i8s53l1mb7lkrnbix457hf17liwh00jzb0i7aga7";
   };
 
   # postPatch:
   #   screen.c: When run without a hardware accelerator, this allows the command to continue working rather than failing unexpectedly.
   #   This can happen when running on non-NixOS because then scrcpy seems to have a hard time using the host OpenGL-supporting hardware.
   #   It would be better to fix the OpenGL problem, but that seems much more intrusive.
-  #
-  #   command.c: When copying over the prebuilt binary to mobile, it also copies the permissions of the nix store, and thus it cannot delete normally.
   postPatch = ''
     substituteInPlace app/src/screen.c \
       --replace "SDL_RENDERER_ACCELERATED" "SDL_RENDERER_ACCELERATED || SDL_RENDERER_SOFTWARE"
-    substituteInPlace app/src/command.c \
-      --replace 'const char *const adb_cmd[] = {"shell", "rm", path};' 'const char *const adb_cmd[] = {"shell", "rm", "-f", path};'
   '';
 
   nativeBuildInputs = [ makeWrapper meson ninja pkgconfig ];
diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix
index dddb99f75d63..d66a79e4df91 100644
--- a/pkgs/misc/vim-plugins/generated.nix
+++ b/pkgs/misc/vim-plugins/generated.nix
@@ -61,12 +61,12 @@ let
 
   ale = buildVimPluginFrom2Nix {
     pname = "ale";
-    version = "2019-03-13";
+    version = "2019-04-04";
     src = fetchFromGitHub {
       owner = "w0rp";
       repo = "ale";
-      rev = "80ef7ea2d0b22f0d8de7387a3d5bf6e9e5b72e9d";
-      sha256 = "1i767mxfgwn804hwr088n9n9xmj49bwrvb8nv8qjxynqzp3hxsfb";
+      rev = "cdf89f8269aec31d0dfddf3a2769027d72d38155";
+      sha256 = "13zj7sahhan1w50jkncina979cyk3kca5ly68571bzccyzm8dazi";
     };
   };
 
@@ -127,12 +127,12 @@ let
 
   awesome-vim-colorschemes = buildVimPluginFrom2Nix {
     pname = "awesome-vim-colorschemes";
-    version = "2019-02-16";
+    version = "2019-03-29";
     src = fetchFromGitHub {
       owner = "rafi";
       repo = "awesome-vim-colorschemes";
-      rev = "88d883cc89b2d13b3bae60aa294cef57067e17e2";
-      sha256 = "0f6xa50r9fv9qhw8slfqq0g0p8y2zc08bpg09f2g0lp69gidi7rg";
+      rev = "dec452fcf71c8d09c4029fe28d9ac12af935f6ac";
+      sha256 = "1gsh0dibbwz7vypvc23h230x56n7i8a5y6c872lqflf2as62x0xr";
     };
   };
 
@@ -248,12 +248,12 @@ let
 
   command-t = buildVimPluginFrom2Nix {
     pname = "command-t";
-    version = "2018-09-19";
+    version = "2019-03-31";
     src = fetchFromGitHub {
       owner = "wincent";
       repo = "command-t";
-      rev = "7364a410bc4f0d7febc183678cd565066dfd1e73";
-      sha256 = "1a14ddq6jkfklicdgkpbizzlrx2r4isxarbav5q86w86rwkx3jfi";
+      rev = "792d6079d32f1973c142c6fab89d2fdc94019ac8";
+      sha256 = "0bi2bmx0k6fwi1jwajgafbb750ajlzz1jncvvg0cssv6h5syxvpk";
       fetchSubmodules = true;
     };
   };
@@ -381,34 +381,34 @@ let
 
   denite-extra = buildVimPluginFrom2Nix {
     pname = "denite-extra";
-    version = "2018-09-20";
+    version = "2019-03-29";
     src = fetchFromGitHub {
       owner = "chemzqm";
       repo = "denite-extra";
-      rev = "57ab8e6d8756e294c12a6177bef0155b736eaf1f";
-      sha256 = "0in7dg23gh6h39jjn84b2sqkcyd02dvv8pvnp6c3413dnjzmiryz";
+      rev = "af18257544027ce89269dba70c12aba1f5b9e23c";
+      sha256 = "0bmq9yhylfd3v6bfwvakw3pbsz5kk8wlmmql0yllqayp6410w25a";
     };
   };
 
   denite-git = buildVimPluginFrom2Nix {
     pname = "denite-git";
-    version = "2018-07-19";
+    version = "2019-03-29";
     src = fetchFromGitHub {
       owner = "chemzqm";
       repo = "denite-git";
-      rev = "edd2c202e05c3f84e31b94a841fef236b923d559";
-      sha256 = "0x8nf4x49859lgyi83vhqvpdhb1mxv55a9l8vbdflfagagj0gnzd";
+      rev = "c86a6b2b22ac16544a8bccbefb608604f9252349";
+      sha256 = "19rx46xd9hi7z1n9adxa9yf4ljv38jhwinplsszwlpcq518ac4i6";
     };
   };
 
   denite-nvim = buildVimPluginFrom2Nix {
     pname = "denite-nvim";
-    version = "2019-03-21";
+    version = "2019-04-02";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "denite.nvim";
-      rev = "3e5bfab6bd773b3270800cfc30d830a8b7a992e0";
-      sha256 = "18c78gq49ijcc9gml35xfns8gbafpfn6n3vz4vzg4pigpmnf7f71";
+      rev = "280ea09f278d7301910e7b6abefccd75400bec0b";
+      sha256 = "0dcmbmwh29svin6gn4x5carlgy9plax64p4w0f0cx69440zhl4r0";
     };
   };
 
@@ -494,12 +494,12 @@ let
 
   deoplete-nvim = buildVimPluginFrom2Nix {
     pname = "deoplete-nvim";
-    version = "2019-03-21";
+    version = "2019-03-31";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "deoplete.nvim";
-      rev = "78d29a3539adf21e862ceeba3659d176ba0bfeb1";
-      sha256 = "0svprrdslsdwm6mfara6ffmpskvgxn55lyyv57sk0va0rasbx543";
+      rev = "19f1dc07f382534d16e5e21f2dddf5109d64ae68";
+      sha256 = "1l9zpvh9hwbd32l2g8h0pq3xh5cixbmqdqznwrksx1da12v2w7aa";
     };
   };
 
@@ -527,12 +527,12 @@ let
 
   echodoc-vim = buildVimPluginFrom2Nix {
     pname = "echodoc-vim";
-    version = "2019-03-15";
+    version = "2019-04-04";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "echodoc.vim";
-      rev = "fbbf01311cec8aa8741564b361341c722379e9a8";
-      sha256 = "1p0zx4r6v25qbq1avl2gyc4s3nsi9vkrp6vrq8kb3q2y1sx6r3p3";
+      rev = "1dfd4d45eb169bba4a5d5a3a4210e663e4a18dfe";
+      sha256 = "021qx04ka3w3w7wlv0p3lrpwxnlvxn0xkv7qwx6fk6594xfbaxi7";
     };
   };
 
@@ -550,12 +550,12 @@ let
 
   elm-vim = buildVimPluginFrom2Nix {
     pname = "elm-vim";
-    version = "2018-11-13";
+    version = "2019-04-05";
     src = fetchFromGitHub {
       owner = "elmcast";
       repo = "elm-vim";
-      rev = "d22c0ba13afb554257a8c176962e2216cc18edd1";
-      sha256 = "03lmbv4zkjdnyzrna7g9pqdgf3jqhi9g59fzjnay4af59hijs1v3";
+      rev = "165107a9fd2b20c8f050fc4f977b4e41c790b1e7";
+      sha256 = "0gf7b49by0ybx3ndz7sz5dwcfnps4sz6wsr02lyarj8f8116ysy5";
     };
   };
 
@@ -584,23 +584,23 @@ let
 
   falcon = buildVimPluginFrom2Nix {
     pname = "falcon";
-    version = "2019-03-20";
+    version = "2019-03-25";
     src = fetchFromGitHub {
       owner = "fenetikm";
       repo = "falcon";
-      rev = "2db6bb451669c145079500d8f9176ba50f433a8a";
-      sha256 = "04ssiwnd8chha6ajmqsfzpx80xilfd0l4f6jdhli9kr361p0p264";
+      rev = "5526c8e9345f3c3953757bb13511e4bb49878456";
+      sha256 = "18drq44lnh4d0pq6b30jiinlkylaq68llc0gyxvgpy6gy0k77gyk";
     };
   };
 
   fastfold = buildVimPluginFrom2Nix {
     pname = "fastfold";
-    version = "2019-01-13";
+    version = "2019-03-28";
     src = fetchFromGitHub {
       owner = "konfekt";
       repo = "fastfold";
-      rev = "6de79db47e6990c075ea0d05442a5cd4b6a650f2";
-      sha256 = "1blsy9xfklviflnh2psn9xgnh1v9x4nnibfibmzsa0parpyczsfb";
+      rev = "69d455dcf1ee40bf050a0d1e94f49f02bb2f4832";
+      sha256 = "1hk9ir47c7rds3fya9vd2rsvc2mfj602fhqvz1h0acvxkqy34lsk";
     };
   };
 
@@ -1081,12 +1081,12 @@ let
 
   neocomplete-vim = buildVimPluginFrom2Nix {
     pname = "neocomplete-vim";
-    version = "2018-11-19";
+    version = "2019-03-28";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "neocomplete.vim";
-      rev = "d3b4d2860ec34648a2d6df4631718a6a7cfa5d40";
-      sha256 = "0fqlnh2786wc9barmfz42z7qcp3cly82jhzrwhrx15z4sw4sbjsq";
+      rev = "5f3e213c629b7fe1aa3723bf56fe3ead5555a526";
+      sha256 = "1x5hnh7riv50c7ywnn2mch0rgks5r2y4k32y8bb616ld0xndaa4b";
     };
   };
 
@@ -1103,12 +1103,12 @@ let
 
   neoformat = buildVimPluginFrom2Nix {
     pname = "neoformat";
-    version = "2019-03-22";
+    version = "2019-03-28";
     src = fetchFromGitHub {
       owner = "sbdchd";
       repo = "neoformat";
-      rev = "d8f9aa8dcfd131818d9abd725c3a49c7046edb5b";
-      sha256 = "1ffj9qvq5qbfwdszp35zyc4x1cmd9pj50h6x8fpjcl0wfx8pd695";
+      rev = "8db90526af3655e32f803e18176150f593cd08a6";
+      sha256 = "0vv81hxc2f53299xvb8m0px6f0kpmmr4h5h6h5wzqyg7xixfjg0i";
     };
   };
 
@@ -1125,23 +1125,23 @@ let
 
   neomake = buildVimPluginFrom2Nix {
     pname = "neomake";
-    version = "2019-03-21";
+    version = "2019-03-28";
     src = fetchFromGitHub {
       owner = "benekastah";
       repo = "neomake";
-      rev = "3644194d8b75c20e6c2c4139f2817f96cadcf791";
-      sha256 = "0f0wn1xj55nzpcz51g0c716hhzknlmp2rw7ns6rnpi6cmh1gyv93";
+      rev = "36c91c3b8f0f731b3ab6a3a01a9eb2e1be15ab86";
+      sha256 = "0fkkssy38hcp23mgbwgkcnmhlnxj7iqn2iq39k8g7fbhhmnbixik";
     };
   };
 
   neomru-vim = buildVimPluginFrom2Nix {
     pname = "neomru-vim";
-    version = "2019-03-02";
+    version = "2019-03-24";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "neomru.vim";
-      rev = "8ad581e0925ecefb94a7d2251803e9b3ba78818e";
-      sha256 = "0nwvx6416z1vhp7wyh862ifzid1fmj6ld5nyj4inn7b9njg9v8p5";
+      rev = "d3d47938fb3f3205bbb9eb8796a5da33f1d7c2cc";
+      sha256 = "0cvj2y6i55x04rcv8cpvgy7grgc0rq7z2sxjxn6xxi0ligqpvjp7";
     };
   };
 
@@ -1191,12 +1191,12 @@ let
 
   neoyank-vim = buildVimPluginFrom2Nix {
     pname = "neoyank-vim";
-    version = "2018-12-03";
+    version = "2019-03-27";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "neoyank.vim";
-      rev = "9ff9d9df82a7671c3ffd7735953d6cf269bac213";
-      sha256 = "1jaiw86gvb6dnzwnzq7hp04cc3b9yibzw0z868izpnc1696hkb3d";
+      rev = "6a41fd651c00b1ff6a6298cb2be088e8d27d3629";
+      sha256 = "1p084xbycwkghfih41z1sc6nn2xi7471vj8zgc9jgw0qkxbmbcnn";
     };
   };
 
@@ -1213,12 +1213,12 @@ let
 
   nerdtree = buildVimPluginFrom2Nix {
     pname = "nerdtree";
-    version = "2019-03-07";
+    version = "2019-03-26";
     src = fetchFromGitHub {
       owner = "scrooloose";
       repo = "nerdtree";
-      rev = "288669db1fa888947deaf715d7469233f476909f";
-      sha256 = "0k5420f8y311c717ifamyhqhqzlca2y9sy7qw3z2np9z7ms5dask";
+      rev = "7513f256aa1d59b6a749cefe5ac505375b1b8a6a";
+      sha256 = "0163bvsmnnw598x2nyi9lzdk6akzj62cbsldp8prhl6d7x3gdmaf";
     };
   };
 
@@ -1466,12 +1466,12 @@ let
 
   Recover-vim = buildVimPluginFrom2Nix {
     pname = "Recover-vim";
-    version = "2019-02-02";
+    version = "2019-03-26";
     src = fetchFromGitHub {
       owner = "chrisbra";
       repo = "Recover.vim";
-      rev = "493d80ef7a4f16926d10b8c3923cf69c5209fe34";
-      sha256 = "0nqs98g6lq45yrrlwgxckkgq90n73s7nibih2906s0zvsr1x95s8";
+      rev = "abc1073aac08279523c35546e4a2c85cbd8d656d";
+      sha256 = "11y6ha65j35cb73x6wdcwqs7k12lcdd38ygirsmhk4216mnl2p7f";
     };
   };
 
@@ -1532,12 +1532,12 @@ let
 
   rust-vim = buildVimPluginFrom2Nix {
     pname = "rust-vim";
-    version = "2019-02-18";
+    version = "2019-03-28";
     src = fetchFromGitHub {
       owner = "rust-lang";
       repo = "rust.vim";
-      rev = "fdb2d39fb04b139fcdb9b707f9b2ccc219566632";
-      sha256 = "0vamhy95gkjybikcf5cifdd66scjf4wmjh2nw67f65n4narw1lps";
+      rev = "2234f0d3f8204b44f30ff6eb3b6f7345c23aef92";
+      sha256 = "1s0v14na6vlzazw95ssfcqkpylnqxaj7kh1qyni97ixiqqw7vrjw";
     };
   };
 
@@ -1774,12 +1774,12 @@ let
 
   traces-vim = buildVimPluginFrom2Nix {
     pname = "traces-vim";
-    version = "2019-02-18";
+    version = "2019-04-04";
     src = fetchFromGitHub {
       owner = "markonm";
       repo = "traces.vim";
-      rev = "2bfc63174002903e350de418006eea83efcc8901";
-      sha256 = "0k88j7k4jnjql98v55r70kw1igg2s2jaw5lvf9adi3pprsypszf8";
+      rev = "1220a0ca044ce9a1622ec2aa60d0d9ef5e801cb4";
+      sha256 = "0j7yhhgfl1ymqkl5lp9vqm3w9l2jkf863xpffw9f0ddmjmk3b7am";
     };
   };
 
@@ -1840,12 +1840,12 @@ let
 
   unite-vim = buildVimPluginFrom2Nix {
     pname = "unite-vim";
-    version = "2019-02-02";
+    version = "2019-03-29";
     src = fetchFromGitHub {
       owner = "Shougo";
       repo = "unite.vim";
-      rev = "b55994a18b19499f8de19cf7ea48670113a45e4f";
-      sha256 = "1mcspmnd7qvscf1zxn0i7gzb4yxa5xcpg7piyvssx9nbb8w57jr1";
+      rev = "e1d3bb9f836a8645807b790345b69666bf22bb2f";
+      sha256 = "0i0lys3926s7n6iq03fg0flsp2rmvzwvfjmldcv31vjjrhzlbqmx";
     };
   };
 
@@ -1862,12 +1862,12 @@ let
 
   vim = buildVimPluginFrom2Nix {
     pname = "vim";
-    version = "2019-03-20";
+    version = "2019-04-02";
     src = fetchFromGitHub {
       owner = "dracula";
       repo = "vim";
-      rev = "d8d75f8a12f6a6135c0069d37c4eb0fc35a1e360";
-      sha256 = "0bg33h75fzp18w4y80mw12lgnhwqh3knmfsj1n81f1k2r080ndqd";
+      rev = "9b856347b905dc616baf02b48d7631bc3084726e";
+      sha256 = "0w9aj42hb8x7601gbgf0ggs7p3sm5wrv23bnvrjgdlf3mapg6dwy";
     };
   };
 
@@ -2093,12 +2093,12 @@ let
 
   vim-airline = buildVimPluginFrom2Nix {
     pname = "vim-airline";
-    version = "2019-03-19";
+    version = "2019-03-26";
     src = fetchFromGitHub {
       owner = "vim-airline";
       repo = "vim-airline";
-      rev = "45205aa4a393ab7eee2656e6e35eb61016ec81c2";
-      sha256 = "1ln9di5dm8wj9v103jbj43az9whpax7zbvqwpad5v432rvnkqn2g";
+      rev = "86e73cade71651263715f21e58eed87cfed4518e";
+      sha256 = "0xlvnzsnfkzg9qz5n87gvm75xlhgihf3y300zxvsyhk6ihnajyzp";
     };
   };
 
@@ -2214,12 +2214,12 @@ let
 
   vim-codefmt = buildVimPluginFrom2Nix {
     pname = "vim-codefmt";
-    version = "2018-12-29";
+    version = "2019-03-27";
     src = fetchFromGitHub {
       owner = "google";
       repo = "vim-codefmt";
-      rev = "54d1eacb2e96f6862894bff53a48846b6470e870";
-      sha256 = "1j88my182dwlvwrnfpkdgda4qgam28l7hdmmfgjh6h745ax0mghg";
+      rev = "b4aafd5b0f7e5c2b44ba6d92a18196331ac1003a";
+      sha256 = "0plr53xaavwwxvzk1rb724i1cpknh6z09zvbg2y0bgl5cj51b665";
     };
   };
 
@@ -2324,12 +2324,12 @@ let
 
   vim-devicons = buildVimPluginFrom2Nix {
     pname = "vim-devicons";
-    version = "2019-02-22";
+    version = "2019-04-05";
     src = fetchFromGitHub {
       owner = "ryanoasis";
       repo = "vim-devicons";
-      rev = "83808e891068490f2b2325e39edcde5c585bd4ea";
-      sha256 = "18j3sa36zz5vx6hamdmjl25n7ilvh1q2fqfqs6casbdnqmmds1dy";
+      rev = "3a23ac26fd68a2db158cbe3c2ebbae2c142861ce";
+      sha256 = "1n324w9dxp9h7k1bg1hhad5f7pva05kns6mqd5d3yhsidfsxshlb";
     };
   };
 
@@ -2346,23 +2346,23 @@ let
 
   vim-dirvish = buildVimPluginFrom2Nix {
     pname = "vim-dirvish";
-    version = "2019-03-20";
+    version = "2019-04-01";
     src = fetchFromGitHub {
       owner = "justinmk";
       repo = "vim-dirvish";
-      rev = "a49d846ff641182e6cfb4bd675ddfc301e7fb378";
-      sha256 = "0knjkjz0msz4b6j4ggwbjxj7mihqq1mdfw287zx5p5rjwpdfdfb0";
+      rev = "ae60a79106dd32d75d3c5cf4dfe44fd658d634ec";
+      sha256 = "1dpyavqhsn7japg5li2fflhn4rq5y5c5m24772550awzd5nx0bif";
     };
   };
 
   vim-dispatch = buildVimPluginFrom2Nix {
     pname = "vim-dispatch";
-    version = "2019-02-28";
+    version = "2019-03-26";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-dispatch";
-      rev = "929e0d0aa1139d483c070e4ee2a05f4a3425b0af";
-      sha256 = "05js06pvrvjxpwhdp68hmzxskfacmkj2i15khav75f93rsih75dw";
+      rev = "178acd05aaf26b14afd0a29f8e1c318ca96637f5";
+      sha256 = "1qxblrwm8zssg8zavfxq3a43yz69fk4ylqgxbi6mq3hvz3bnkb6k";
     };
   };
 
@@ -2401,12 +2401,12 @@ let
 
   vim-easymotion = buildVimPluginFrom2Nix {
     pname = "vim-easymotion";
-    version = "2018-06-04";
+    version = "2019-03-23";
     src = fetchFromGitHub {
       owner = "easymotion";
       repo = "vim-easymotion";
-      rev = "1a0244c90c3ff46219cf9597bb13662be4232407";
-      sha256 = "1gsfn4fgivfg821wmnrdzpmqdimjkvkqi3gwr0nwf07ygjbr2csy";
+      rev = "85e90c9759e14633d878ed534ef313876ab96555";
+      sha256 = "1n5rlqh685ba96mwi407x3r7vlxd34awlyb2wjmz6j8m0ld3skrq";
     };
   };
 
@@ -2500,12 +2500,12 @@ let
 
   vim-flake8 = buildVimPluginFrom2Nix {
     pname = "vim-flake8";
-    version = "2019-01-10";
+    version = "2019-04-03";
     src = fetchFromGitHub {
       owner = "nvie";
       repo = "vim-flake8";
-      rev = "c6b43f88e4cbce052843e8cbd9593cc7753208fe";
-      sha256 = "0z4c2n8b9vi19qqdmljyms173dmkiarlf4yxx1ix1wvqmnpcr6zf";
+      rev = "ce9ac790430699d346aa074d7f339f2e738284e3";
+      sha256 = "1dlpmsads32c8v49dqgnz1d06bh0aikgl1xq2whiimm2va9vfjng";
     };
   };
 
@@ -2522,12 +2522,12 @@ let
 
   vim-fugitive = buildVimPluginFrom2Nix {
     pname = "vim-fugitive";
-    version = "2019-03-01";
+    version = "2019-04-04";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-fugitive";
-      rev = "bd0b87d36ad80e8acd94f22028d15ebb441b1c28";
-      sha256 = "0ira81j7n2gvrpracag8393yxs5ya4wl8g5ygngl65qrk7y0bj0j";
+      rev = "1b3668b89fee230c6025dc47c01c82fc1e282ac0";
+      sha256 = "0b2z44cw71c0awlajcsln4b43kchhwlb90l461vq7ipmwp3wm8r1";
     };
   };
 
@@ -2588,34 +2588,34 @@ let
 
   vim-go = buildVimPluginFrom2Nix {
     pname = "vim-go";
-    version = "2019-03-21";
+    version = "2019-03-31";
     src = fetchFromGitHub {
       owner = "fatih";
       repo = "vim-go";
-      rev = "cf0b9c919ef1e6e312bc471495d989abb42a5eea";
-      sha256 = "09q7fvgvr0252hrn5amwls3bfzq0w6v5maf7jjnxi6g5gqmkh8m1";
+      rev = "f04098811b8a7aba3dba699ed98f6f6e39b7d7ac";
+      sha256 = "01fsyyqlf1kygy4l3kbb1jcydgaqjmhhzbdf2liv3hx42signcqw";
     };
   };
 
   vim-grammarous = buildVimPluginFrom2Nix {
     pname = "vim-grammarous";
-    version = "2018-09-13";
+    version = "2019-03-30";
     src = fetchFromGitHub {
       owner = "rhysd";
       repo = "vim-grammarous";
-      rev = "65e01dd1f19a4cbaade139754d6e8c8cdf45c33a";
-      sha256 = "14sjvspnfj5jxghh1vndaxfglr0ypnn59nzrhxnymf6q3g930vcl";
+      rev = "083cbee6094c9ec347d7c75af421be27d2ec7e70";
+      sha256 = "1cxycr2ijzxn9d5xgp9ri4f2i4d87a3100nsc11iwa2bzir4xsiz";
     };
   };
 
   vim-grepper = buildVimPluginFrom2Nix {
     pname = "vim-grepper";
-    version = "2019-03-15";
+    version = "2019-04-02";
     src = fetchFromGitHub {
       owner = "mhinz";
       repo = "vim-grepper";
-      rev = "e638f75a211885e4b48abe1809db18b108208ce0";
-      sha256 = "150ijh9qpvvas9njb0nva58s91g06nbd2zxv9glvbirk75j9d3bc";
+      rev = "1b31eeed2fd672300dc0c52ffbb23397c7243215";
+      sha256 = "18i241a6v0mdzyznwr0al00zvnr0rqfz0khpjx730w6vk1whrp52";
     };
   };
 
@@ -2819,12 +2819,12 @@ let
 
   vim-javascript = buildVimPluginFrom2Nix {
     pname = "vim-javascript";
-    version = "2019-02-25";
+    version = "2019-03-26";
     src = fetchFromGitHub {
       owner = "pangloss";
       repo = "vim-javascript";
-      rev = "8450f06ec2c22bf33934728953b722a3847bbc18";
-      sha256 = "0k6zxqd20n003baczgvqfvscblh4qg9lymc0w91pyz7lk336050h";
+      rev = "24c896e13d9241024bdb79f48e811748654d7ba2";
+      sha256 = "1c89n4rzjdq12h6wjz04np14hnd33i7fyrxlxv3yyl3hdcvs8bk1";
     };
   };
 
@@ -2941,12 +2941,12 @@ let
 
   vim-localvimrc = buildVimPluginFrom2Nix {
     pname = "vim-localvimrc";
-    version = "2018-11-06";
+    version = "2019-03-24";
     src = fetchFromGitHub {
       owner = "embear";
       repo = "vim-localvimrc";
-      rev = "e84959d05472ce2000883b1f73ea34302894bdb9";
-      sha256 = "1w421wbshxic9yd5862i8c02a9xhnfidrkrj1xi7lxjh71r0kdlw";
+      rev = "08f1389285902473a8b2de045c2d916fcc5affbc";
+      sha256 = "1sfcq50f5gkpwa2c5szi8aa7h2x50ki87knba8rsq58h58pgbnq1";
     };
   };
 
@@ -2963,12 +2963,12 @@ let
 
   vim-lsc = buildVimPluginFrom2Nix {
     pname = "vim-lsc";
-    version = "2019-03-18";
+    version = "2019-03-29";
     src = fetchFromGitHub {
       owner = "natebosch";
       repo = "vim-lsc";
-      rev = "66ee01ef003efb5595b357b4b0a2414685ace85f";
-      sha256 = "1cq19bs4gxga53v4ydvvnwgzp9s6c5csz7qwfhy6m9mmwgmmfddq";
+      rev = "b02690e167a1b49373245aabbedecd29aa470309";
+      sha256 = "0gaqcjdq7rykp4hbac7ibfd3lr19vy9pnzwkn2cmnv18b5sjpbm1";
     };
   };
 
@@ -2985,12 +2985,12 @@ let
 
   vim-markdown = buildVimPluginFrom2Nix {
     pname = "vim-markdown";
-    version = "2019-02-28";
+    version = "2019-03-26";
     src = fetchFromGitHub {
       owner = "plasticboy";
       repo = "vim-markdown";
-      rev = "691d961a643064ee1feddba8371ff12e44678f5a";
-      sha256 = "0yhqszqjfbgyyqkw5ayl2732kdw71dq6s3yg3szcilz2h6z21m7c";
+      rev = "a15334cac67237835e62c9dd1470f6162769779f";
+      sha256 = "1bdi69ni1mgc9x67k8l886bch70jhi4hi5ram1habml4vklr82np";
     };
   };
 
@@ -3018,12 +3018,12 @@ let
 
   vim-multiple-cursors = buildVimPluginFrom2Nix {
     pname = "vim-multiple-cursors";
-    version = "2019-02-21";
+    version = "2019-03-25";
     src = fetchFromGitHub {
       owner = "terryma";
       repo = "vim-multiple-cursors";
-      rev = "9d40797a352b4e9e4ca36026ccb92fc379f0cffa";
-      sha256 = "0pvmij11b5vdxl2dxpsf4qfyl3fify36npbphwl4jq664dz5akdz";
+      rev = "8cb8e83ffb040f25cefa597f21608ca6a64aed70";
+      sha256 = "1mdi0kbc1k4q8mw8f4anl819mgsll1sj38dd2w1a1lscg179j062";
     };
   };
 
@@ -3238,12 +3238,12 @@ let
 
   vim-polyglot = buildVimPluginFrom2Nix {
     pname = "vim-polyglot";
-    version = "2019-03-11";
+    version = "2019-03-29";
     src = fetchFromGitHub {
       owner = "sheerun";
       repo = "vim-polyglot";
-      rev = "1d45a6d4f094127b113470d7710695b280224933";
-      sha256 = "1lcvj5q8x0vmx8rnsn4aa2js7ihz99i1b5lj13vlws04rlaf3iga";
+      rev = "a55b6aa3aa797c989a4979a13a5bd2ae11cfd4a5";
+      sha256 = "0mgxbyz1yimavay54s6a5hv88d497qngp4i06g248d0qf3ivyvrv";
     };
   };
 
@@ -3348,12 +3348,12 @@ let
 
   vim-ruby = buildVimPluginFrom2Nix {
     pname = "vim-ruby";
-    version = "2019-03-13";
+    version = "2019-04-04";
     src = fetchFromGitHub {
       owner = "vim-ruby";
       repo = "vim-ruby";
-      rev = "4abc4340abff09698fc5c8fe91dec87e3c3e2255";
-      sha256 = "0nfhan8gwkv30k7wln2a5b4a144jihnl2hmb8jwrlhw11hh5nrlx";
+      rev = "96d5db458f868255393fdc2732d6bef21a45c68f";
+      sha256 = "1nv51c441d44igjcb3hlib1zbd65h98ywkjyp50hbz5rjkx17mvv";
     };
   };
 
@@ -3425,12 +3425,12 @@ let
 
   vim-signify = buildVimPluginFrom2Nix {
     pname = "vim-signify";
-    version = "2019-03-21";
+    version = "2019-04-05";
     src = fetchFromGitHub {
       owner = "mhinz";
       repo = "vim-signify";
-      rev = "192d5734b18a3534e6db971036854ad0c4b2c586";
-      sha256 = "1vk026gsjxr2954yn8zm179dvxrbmyc073mk78ghy473n9482np1";
+      rev = "f34fea0eff09d0fb4ec54aec3c07345e6c4486d9";
+      sha256 = "0486sqmz33qcvizdicssp4lajgh2rv0sskz6rndpd7qnm54mn968";
     };
   };
 
@@ -3447,12 +3447,12 @@ let
 
   vim-slime = buildVimPluginFrom2Nix {
     pname = "vim-slime";
-    version = "2019-02-08";
+    version = "2019-04-02";
     src = fetchFromGitHub {
       owner = "jpalardy";
       repo = "vim-slime";
-      rev = "1ff17cc7e8eeaf660daa5efee9e66ef83e00e686";
-      sha256 = "1mrgpkyarc6igd7anzlwpbis6cwsy759ssxapfxmj1q69hyvmdl6";
+      rev = "9035bef4c91fd730d76b5fdc994f1dcdcef49405";
+      sha256 = "1f65nq1hgvblm074hbqy647vixzhkimr1yhqjlrqg7mjiffrkr43";
     };
   };
 
@@ -3480,12 +3480,12 @@ let
 
   vim-snippets = buildVimPluginFrom2Nix {
     pname = "vim-snippets";
-    version = "2019-03-22";
+    version = "2019-04-03";
     src = fetchFromGitHub {
       owner = "honza";
       repo = "vim-snippets";
-      rev = "cbbf1559166f9c308ae0f4634c11bdf282ddafba";
-      sha256 = "1hyn8fxaa7r55s51q9axm1awd10xmw29bmsfizy92vs3a8dxcqny";
+      rev = "4214407a5eda0d49ad591e41b6eb91f4682fa81f";
+      sha256 = "1jvbjnfwpqc53vp5plwyvqnkabi4h6d67sg4dg3byrfs3d0rpzmx";
     };
   };
 
@@ -3557,12 +3557,12 @@ let
 
   vim-surround = buildVimPluginFrom2Nix {
     pname = "vim-surround";
-    version = "2018-07-23";
+    version = "2019-03-26";
     src = fetchFromGitHub {
       owner = "tpope";
       repo = "vim-surround";
-      rev = "597068870b8f093a8b2d11536c62ff31222ee8d0";
-      sha256 = "080kcgb5ayxs49q1p1cms6k1byf2fzzy8bglnspr511m9fql5a9x";
+      rev = "ca58a2d886cc18734c90c9665da4775d444b0c04";
+      sha256 = "0d4jxp1ahwrwsk277yvkbk76jrhmv3bml83fivlxpj01224kdr2n";
     };
   };
 
@@ -3612,23 +3612,23 @@ let
 
   vim-terraform = buildVimPluginFrom2Nix {
     pname = "vim-terraform";
-    version = "2019-03-13";
+    version = "2019-03-31";
     src = fetchFromGitHub {
       owner = "hashivim";
       repo = "vim-terraform";
-      rev = "e7cd4746946205ab03039f2d0d0af3c0d55d4c4d";
-      sha256 = "0fv9w5hadyzp871p739mrjsfj0m4xang3lkz3gsv1cxw3iglkfld";
+      rev = "a44bf0b1a142bb39e84e5d525f7d98b5d3a66057";
+      sha256 = "12wyjfmwz3lsd45vv4ava361ph6gravggi9vvvr9qgf5zc1shd3b";
     };
   };
 
   vim-test = buildVimPluginFrom2Nix {
     pname = "vim-test";
-    version = "2019-03-12";
+    version = "2019-03-29";
     src = fetchFromGitHub {
       owner = "janko-m";
       repo = "vim-test";
-      rev = "d6ef5871ad7cbc73ee9b1bf1ff3a2b694aa3e3d4";
-      sha256 = "0r36q8qqlpkv28byv62f0sqkj1pvnn58ay2c45mzh9awvc47qs76";
+      rev = "3c151018ce62b526e0bb4261b416a892c3945dc1";
+      sha256 = "0w4lh9l3fh3vfggy6am34vhh1844v3lqhv9fm22y9yvdjf995aa3";
     };
   };
 
@@ -3645,12 +3645,12 @@ let
 
   vim-themis = buildVimPluginFrom2Nix {
     pname = "vim-themis";
-    version = "2017-12-27";
+    version = "2019-03-26";
     src = fetchFromGitHub {
       owner = "thinca";
       repo = "vim-themis";
-      rev = "691cd3912ba318dbd8d9fa0035fee629b424766d";
-      sha256 = "1mrdaah3iyg35v6cgvr3jav3386czialfcinwa3y9jy14basbqhd";
+      rev = "f95b4a888a91cc9373cf2f801658287ff984592f";
+      sha256 = "149zspfxdnp10lj8vv7lvbck8bascpxc1kxjqpn00wslw7rjs5yg";
     };
   };
 
@@ -3744,23 +3744,23 @@ let
 
   vim-wakatime = buildVimPluginFrom2Nix {
     pname = "vim-wakatime";
-    version = "2019-03-17";
+    version = "2019-03-31";
     src = fetchFromGitHub {
       owner = "wakatime";
       repo = "vim-wakatime";
-      rev = "e287f95b596b832585439f77fad4b1e039d6d217";
-      sha256 = "19all4i5f1kxf092qjnbxwcg18w1zllpnhf2ma9idj0ccbpl2ds5";
+      rev = "fdd56e0e1b0f9cafc0268076c4636f97ccd081dc";
+      sha256 = "1b1m4d1dn1ymqrj6bbl44hnmf0rh93jipjlrrbk9gr3fc0x99xmh";
     };
   };
 
   vim-watchdogs = buildVimPluginFrom2Nix {
     pname = "vim-watchdogs";
-    version = "2017-12-03";
+    version = "2019-04-03";
     src = fetchFromGitHub {
       owner = "osyo-manga";
       repo = "vim-watchdogs";
-      rev = "a6415c2d928af8c1aacdbce9b1ed8d315891eb03";
-      sha256 = "0n6aqsgn0q1qgpj4yznqwbsbbk2a077gnjlq86ii3jhkzh5fzcff";
+      rev = "33d74aaeb1ef71512baff9eea20a42e06f4f0bc4";
+      sha256 = "0jkkrlw9x524vvsggq51z0yyvys75dv2h21ijxzdqni49kf4vyhk";
     };
   };
 
@@ -3788,12 +3788,12 @@ let
 
   vim-xkbswitch = buildVimPluginFrom2Nix {
     pname = "vim-xkbswitch";
-    version = "2017-03-27";
+    version = "2019-03-28";
     src = fetchFromGitHub {
       owner = "lyokha";
       repo = "vim-xkbswitch";
-      rev = "a85ebddb9038e6b05138c48868a319a9e13d1868";
-      sha256 = "0v0wckkvsj3pd3a5lj35dqwlvgr1kfz0x6rpnx28mzrcg05p19fr";
+      rev = "3c968fd4fd83d3631dec4c0caf289c85917d8ca9";
+      sha256 = "17ncq06al2pzqxpx45bmh4b66d48y3kklxcd1f80jfsp9hh5v0vm";
     };
   };
 
@@ -3865,12 +3865,12 @@ let
 
   vimtex = buildVimPluginFrom2Nix {
     pname = "vimtex";
-    version = "2019-03-21";
+    version = "2019-04-02";
     src = fetchFromGitHub {
       owner = "lervag";
       repo = "vimtex";
-      rev = "cc3b26ae923a0877b6c504a19f76bea4e3cb3e0c";
-      sha256 = "1c4rkqlh7aknnmq12n889kwn7brkwa07bk4ydmhlagqvsjmwql5m";
+      rev = "068ef61e6e9364093272edc4f0cf997a349c0a98";
+      sha256 = "1p81l2ckl1s2xddzhd9fxjsv9a6vhz77gn5jxwlp0in284v2lp2i";
     };
   };
 
@@ -3887,12 +3887,12 @@ let
 
   vimwiki = buildVimPluginFrom2Nix {
     pname = "vimwiki";
-    version = "2019-03-20";
+    version = "2019-03-24";
     src = fetchFromGitHub {
       owner = "vimwiki";
       repo = "vimwiki";
-      rev = "a5ef4787505cb0c10544ef0a76fe9efbbc546972";
-      sha256 = "0dh13ixkxp3fbbysxxd0rpmm5g7gaj0sa2d2bihlba8pf4dw3iv1";
+      rev = "6766c37ce09a623b3de7ddb86ca30278eea37a82";
+      sha256 = "0qz4yx8l0mmwv3s3s4l03af32dymj4b1sz2x4fpdx42g04k1avy2";
     };
   };
 
@@ -3997,12 +3997,12 @@ let
 
   yats-vim = buildVimPluginFrom2Nix {
     pname = "yats-vim";
-    version = "2019-03-07";
+    version = "2019-03-31";
     src = fetchFromGitHub {
       owner = "HerringtonDarkholme";
       repo = "yats.vim";
-      rev = "cad825d5af13a59a17fb10369c2d89508f4cae3e";
-      sha256 = "197p0gs6x50kiwf6p4r3r5a1paz2lm089xb8zq0xvlab8fb6mfyy";
+      rev = "2126e8306cd21a58fb5e089376af8272abe36bb5";
+      sha256 = "08pdwq3cw7fszw75450z404ylcb5nni0p350jxsd7bd3vikdfxp9";
       fetchSubmodules = true;
     };
   };
@@ -4054,12 +4054,12 @@ let
 
   zig-vim = buildVimPluginFrom2Nix {
     pname = "zig-vim";
-    version = "2019-02-22";
+    version = "2019-03-25";
     src = fetchFromGitHub {
       owner = "zig-lang";
       repo = "zig.vim";
-      rev = "1036ba58daceb4df155f4b14485eb4864b4c7827";
-      sha256 = "0023rdin6n4d1hyxslp3cdag41y4yby9b7ckxf14yxg66v5ylm54";
+      rev = "d9b8d83369dac67214097fa79c9c504d6e1ede41";
+      sha256 = "1nxlvaxnspmf5gwjm3scqhpj4a7y1db1062dskpxqjp5qnixacp2";
     };
   };
 
diff --git a/pkgs/misc/vim-plugins/overrides.nix b/pkgs/misc/vim-plugins/overrides.nix
index 23914e02c01c..c3865fa1e00f 100644
--- a/pkgs/misc/vim-plugins/overrides.nix
+++ b/pkgs/misc/vim-plugins/overrides.nix
@@ -2,7 +2,7 @@
 , python, cmake, meson, vim, ruby
 , which, fetchgit, fetchurl
 , llvmPackages, rustPlatform
-, xkb-switch, fzf, skim
+, xkb-switch, fzf, skim, stylish-haskell
 , python3, boost, icu, ncurses
 , ycmd, rake
 , gobject-introspection, glib, wrapGAppsHook
@@ -405,4 +405,12 @@ self: super: {
     };
   });
 
+  vim-stylish-haskell = super.vim-stylish-haskell.overrideAttrs (old: {
+    postPatch = old.postPatch or "" + ''
+      substituteInPlace ftplugin/haskell/stylish-haskell.vim --replace \
+        'g:stylish_haskell_command = "stylish-haskell"' \
+        'g:stylish_haskell_command = "${stylish-haskell}/bin/stylish-haskell"'
+    '';
+  });
+
 }
diff --git a/pkgs/misc/vscode-extensions/default.nix b/pkgs/misc/vscode-extensions/default.nix
index 9117364b8205..f62c7f5906ee 100644
--- a/pkgs/misc/vscode-extensions/default.nix
+++ b/pkgs/misc/vscode-extensions/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, callPackage, vscode-utils }:
+{ stdenv, callPackage, vscode-utils, llvmPackages_8 }:
 
 let
   inherit (vscode-utils) buildVscodeMarketplaceExtension;
@@ -52,5 +52,19 @@ rec {
 
   ms-python.python = callPackage ./python {};
 
+  vscodevim.vim = buildVscodeMarketplaceExtension {
+    mktplcRef = {
+      name = "vim";
+      publisher = "vscodevim";
+      version = "1.2.0";
+      sha256 = "0c7nv3razc3xjjzmb0q9a89dgry77h79rbkmc8nbfpa1if7lsvcp";
+    };
+    meta = {
+      license = stdenv.lib.licenses.mit;
+    };
+  };
+
+  llvm-org.lldb-vscode = llvmPackages_8.lldb;
+
   WakaTime.vscode-wakatime = callPackage ./wakatime {};
 }
diff --git a/pkgs/os-specific/linux/batman-adv/alfred.nix b/pkgs/os-specific/linux/batman-adv/alfred.nix
index 1227d22916c9..671b13c4d79c 100644
--- a/pkgs/os-specific/linux/batman-adv/alfred.nix
+++ b/pkgs/os-specific/linux/batman-adv/alfred.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, pkgconfig, gpsd, libcap, libnl }:
 
 let
-  ver = "2019.0";
+  ver = "2019.1";
 in
 stdenv.mkDerivation rec {
   name = "alfred-${ver}";
 
   src = fetchurl {
     url = "https://downloads.open-mesh.org/batman/releases/batman-adv-${ver}/${name}.tar.gz";
-    sha256 = "0sml6z90kpchmn61597j7yag97gk59fscz4xjxdfh9zycd3nfsn0";
+    sha256 = "0nsi5g77zsl0s683r0hqz91xs2bz91ic9c1qdsa3ikd46z8s8lkj";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/os-specific/linux/batman-adv/batctl.nix b/pkgs/os-specific/linux/batman-adv/batctl.nix
index b84338ed258b..44c975b8dcc1 100644
--- a/pkgs/os-specific/linux/batman-adv/batctl.nix
+++ b/pkgs/os-specific/linux/batman-adv/batctl.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, pkgconfig, libnl }:
 
 let
-  ver = "2019.0";
+  ver = "2019.1";
 in
 stdenv.mkDerivation rec {
   name = "batctl-${ver}";
 
   src = fetchurl {
     url = "https://downloads.open-mesh.org/batman/releases/batman-adv-${ver}/${name}.tar.gz";
-    sha256 = "0cdmb3zkjh8xcsicwyrimwzj8f4x3rjsfzk9im7695pkdw4j2xwr";
+    sha256 = "14wp8rvm2m1r5qz7p1m08bzg2gmqyldkw1p6gk8rkdyqb3q0abg8";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/os-specific/linux/batman-adv/default.nix b/pkgs/os-specific/linux/batman-adv/default.nix
index 52ef018cbfeb..c6e23be8b89d 100644
--- a/pkgs/os-specific/linux/batman-adv/default.nix
+++ b/pkgs/os-specific/linux/batman-adv/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, kernel }:
 
-let base = "batman-adv-2019.0"; in
+let base = "batman-adv-2019.1"; in
 
 stdenv.mkDerivation rec {
   name = "${base}-${kernel.version}";
 
   src = fetchurl {
     url = "http://downloads.open-mesh.org/batman/releases/${base}/${base}.tar.gz";
-    sha256 = "1h5xxf6nkdhk9dxf3d4fsasmiahy0y7bhlicyhnppgfdf6kxi5ry";
+    sha256 = "1af5q4631b72q0gg0xmhxx2k3adky2ahk4dq97k0436a0rg617dr";
   };
 
   nativeBuildInputs = kernel.moduleBuildDependencies;
diff --git a/pkgs/os-specific/linux/cgmanager/default.nix b/pkgs/os-specific/linux/cgmanager/default.nix
index 9acb011b4633..6ba86036a52a 100644
--- a/pkgs/os-specific/linux/cgmanager/default.nix
+++ b/pkgs/os-specific/linux/cgmanager/default.nix
@@ -1,15 +1,16 @@
-{ stdenv, fetchurl, pkgconfig, libnih, dbus, pam }:
+{ stdenv, fetchurl, pkgconfig, libnih, dbus, pam, popt }:
 
 stdenv.mkDerivation rec {
-  name = "cgmanager-0.41";
+  pname = "cgmanager";
+  version = "0.42";
 
   src = fetchurl {
-    url = "https://linuxcontainers.org/downloads/cgmanager/${name}.tar.gz";
-    sha256 = "0n5l4g78ifvyfnj8x9xz06mqn4y8j73sgg4xsbak7hiszfz5bc99";
+    url = "https://linuxcontainers.org/downloads/${pname}/${pname}-${version}.tar.gz";
+    sha256 = "15np08h9jrvc1y1iafr8v654mzgsv5hshzc0n4p3pbf0rkra3h7c";
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ libnih dbus pam ];
+  buildInputs = [ libnih dbus pam popt ];
 
   configureFlags = [
     "--with-init-script=systemd"
diff --git a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
index df917888dc77..ee0a02763d14 100644
--- a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
+++ b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "firmware-linux-nonfree-${version}";
-  version = "2019-02-13";
+  version = "2019-03-12";
 
   src = fetchgit {
     url = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git";
-    rev = "710963fe53ee3f227556d36839df3858daf6e232";
-    sha256 = "1q3jvlqqxba08s2mrh9hwl0d5w6nhkwj63j0m6amxqpf10k49jxp";
+    rev = "20190312";
+    sha256 = "1wk8l75rg7idvsyli29a1fii4xwz3vnm8d65fjw8d3azihdrhbyy";
   };
 
   installFlags = [ "DESTDIR=$(out)" ];
@@ -15,10 +15,6 @@ stdenv.mkDerivation rec {
   # Firmware blobs do not need fixing and should not be modified
   dontFixup = true;
 
-  outputHashMode = "recursive";
-  outputHashAlgo = "sha256";
-  outputHash = "13gqnr6gm7336pm48v5p37clphwwdmgbrcipsg3w44wdwgc7fa2f";
-
   meta = with stdenv.lib; {
     description = "Binary firmware collection packaged by kernel.org";
     homepage = http://packages.debian.org/sid/firmware-linux-nonfree;
diff --git a/pkgs/os-specific/linux/iputils/build-ninfod-with-openssl.patch b/pkgs/os-specific/linux/iputils/build-ninfod-with-openssl.patch
new file mode 100644
index 000000000000..7ce1b4f527ec
--- /dev/null
+++ b/pkgs/os-specific/linux/iputils/build-ninfod-with-openssl.patch
@@ -0,0 +1,13 @@
+diff --git a/ninfod/meson.build b/ninfod/meson.build
+index ea7ec1b..fada05b 100644
+--- a/ninfod/meson.build
++++ b/ninfod/meson.build
+@@ -10,7 +10,7 @@ ninfod_sources = files('''
+ 	ninfod_name.c
+ '''.split())
+ executable('ninfod', [ninfod_sources, git_version_h],
+-	dependencies : [cap_dep, crypto_dep, rt_dep, threads],
++	dependencies : [cap_dep, dependency('openssl'), rt_dep, threads],
+ 	link_with : [libcommon],
+ 	include_directories : inc,
+ 	install: true,
diff --git a/pkgs/os-specific/linux/iputils/default.nix b/pkgs/os-specific/linux/iputils/default.nix
index 2248f0329c60..223d5c4fe0fb 100644
--- a/pkgs/os-specific/linux/iputils/default.nix
+++ b/pkgs/os-specific/linux/iputils/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchFromGitHub, fetchpatch
-, libxslt, docbook_xsl, docbook_xml_dtd_44
-, libcap, nettle, libidn2, openssl
+, meson, ninja, pkgconfig, gettext, libxslt, docbook_xsl_ns
+, libcap, nettle, libidn2, openssl, systemd
 }:
 
 with stdenv.lib;
 
 let
-  time = "20180629";
+  time = "20190324";
   # ninfod probably could build on cross, but the Makefile doesn't pass --host
   # etc to the sub configure...
   withNinfod = stdenv.hostPlatform == stdenv.buildPlatform;
@@ -21,63 +21,37 @@ in stdenv.mkDerivation {
     owner = "iputils";
     repo = "iputils";
     rev = "s${time}";
-    sha256 = "19rpl48pjgmyqlm4h7sml5gy7yg4cxciadxcs24q1zj40c05jls0";
+    sha256 = "0b755gv3370c0rrphx14mrsqjb396zqnsm9lsws842a4k4zrqmvi";
   };
 
-  patches = [
-    (fetchpatch {
-      name = "dont-hardcode-the-location-of-xsltproc.patch";
-      url = "https://github.com/iputils/iputils/commit/d0ff83e87ea9064d9215a18e93076b85f0f9e828.patch";
-      sha256 = "05wrwf0bfmax69bsgzh3b40n7rvyzw097j8z5ix0xsg0kciygjvx";
-    })
-    (fetchpatch {
-      name = "add-missing-idn-declarations.patch";
-      url = "https://github.com/iputils/iputils/commit/5007d7067918fb3d950d34c01d059e5222db679a.patch";
-      sha256 = "0dhgxdhjcbb2q6snm3mjp38l066knykmrx4k8rn167cizn7akpdx";
-    })
-    (fetchpatch {
-      name = "fix-ping-idn.patch";
-      url = "https://github.com/iputils/iputils/commit/25899e849aa3abc1ad29ebf0b830262a859eaed5.patch";
-      sha256 = "1bqjcdjjnc2j6indcli7s7gbbhkcaligvh94asixfrmjzkbn533n";
-    })
-  ];
-
-  prePatch = ''
-    substituteInPlace doc/custom-man.xsl \
-      --replace "http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" "${docbook_xsl}/xml/xsl/docbook/manpages/docbook.xsl"
-    for xmlFile in doc/*.xml; do
-      substituteInPlace $xmlFile \
-        --replace "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" "${docbook_xml_dtd_44}/xml/dtd/docbook/docbookx.dtd"
-    done
-  '';
-
-  # Disable idn usage w/musl: https://github.com/iputils/iputils/pull/111
-  makeFlags = optional stdenv.hostPlatform.isMusl "USE_IDN=no";
-
-  nativeBuildInputs = [ libxslt.bin ];
-  buildInputs = [ libcap nettle ]
+  # ninfod cannot be build with nettle yet:
+  patches =
+    [ ./build-ninfod-with-openssl.patch
+      (fetchpatch { # tracepath: fix musl build, again
+        url = "https://github.com/iputils/iputils/commit/c9aca1b53324bcd1b5a2de5c645813f80eccd016.patch";
+        sha256 = "0faqgkqbi57cyx1zgzzy6xgd24xr0iawix7mjs47j92ra9gw90cz";
+      })
+      (fetchpatch { # doc: Use namespace correctly
+        url = "https://github.com/iputils/iputils/commit/c503834519d21973323980850431101f90e663ef.patch";
+        sha256 = "1yp6b6403ddccbhfzsb36cscxd36d4xb8syc1g02a18xkswiwf09";
+      })
+    ];
+
+  mesonFlags =
+    [ "-DUSE_CRYPTO=nettle"
+      "-DBUILD_RARPD=true"
+      "-DBUILD_TRACEROUTE6=true"
+      "-Dsystemdunitdir=etc/systemd/system"
+    ]
+    ++ optional (!withNinfod) "-DBUILD_NINFOD=false"
+    # Disable idn usage w/musl (https://github.com/iputils/iputils/pull/111):
+    ++ optional stdenv.hostPlatform.isMusl "-DUSE_IDN=false";
+
+  nativeBuildInputs = [ meson ninja pkgconfig gettext libxslt.bin docbook_xsl_ns libcap ];
+  buildInputs = [ libcap nettle systemd ]
     ++ optional (!stdenv.hostPlatform.isMusl) libidn2
     ++ optional withNinfod openssl; # TODO: Build with nettle
 
-  buildFlags = "man all" + optionalString withNinfod " ninfod";
-
-  installPhase = ''
-    mkdir -p $out/bin
-    mkdir -p $out/share/man/man8
-
-    for tool in arping clockdiff ping rarpd rdisc tftpd tracepath traceroute6; do
-      cp $tool $out/bin/
-      cp doc/$tool.8 $out/share/man/man8/
-    done
-
-    # TODO: Requires kernel module pg3
-    cp ipg $out/bin/
-    cp doc/pg3.8 $out/share/man/man8/
-  '' + optionalString withNinfod ''
-    cp ninfod/ninfod $out/bin/
-    cp doc/ninfod.8 $out/share/man/man8/
-  '';
-
   meta = {
     homepage = https://github.com/iputils/iputils;
     description = "A set of small useful utilities for Linux networking";
diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix
index 189110445792..5711e019f95b 100644
--- a/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/pkgs/os-specific/linux/kernel/common-config.nix
@@ -240,7 +240,7 @@ let
       FANOTIFY        = yes;
       TMPFS           = yes;
       TMPFS_POSIX_ACL = yes;
-      FS_ENCRYPTION   = { optional = true; tristate = whenAtLeast "4.9" "m"; };
+      FS_ENCRYPTION   = if (versionAtLeast version "5.1") then yes else whenAtLeast "4.9" (option module);
 
       EXT2_FS_XATTR     = yes;
       EXT2_FS_POSIX_ACL = yes;
@@ -681,6 +681,9 @@ let
       HOTPLUG_PCI_ACPI = yes; # PCI hotplug using ACPI
       HOTPLUG_PCI_PCIE = yes; # PCI-Expresscard hotplug support
 
+      # Enable AMD's ROCm GPU compute stack
+      HSA_AMD = whenAtLeast "4.20" yes;
+
     } // optionalAttrs (stdenv.hostPlatform.system == "x86_64-linux" || stdenv.hostPlatform.system == "aarch64-linux") {
       # Enable memory hotplug support
       # Allows you to dynamically add & remove memory to a VM client running NixOS without requiring a reboot
diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix
index d913b974e559..89639d34a6c3 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.108";
+  version = "4.14.110";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${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 = "0m6liqxbyfsy2xx01blsw383zaqpbjc4h7wn9y9i7k96gxl3rqxn";
+    sha256 = "0wlysm6j8mmfwcja8pxg6a5c611m3x597591hswpm2nwcja3bslr";
   };
 } // (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 a5cd732727d0..d043a18844b1 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.31";
+  version = "4.19.33";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${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 = "02r822zhs1xcjy6jpf9fv0h4br47drd3xssxapr2b45y8anr1aks";
+    sha256 = "14yk5hli62q1g8vghjjghbxjkpxns8zp0l2wmyhlx0v21bx2v89r";
   };
 } // (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 a62d69f6c895..1698c9d70942 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.177";
+  version = "4.4.178";
   extraMeta.branch = "4.4";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1gy0xm9hpfl8x3rxgm461yd4pnigbsgyxjb69bdpl3sqgz2225sj";
+    sha256 = "0g84g808v7zjnfm1nh7ba0swa4n2bfw8m7h5qgmknjwrnwi8qnf3";
   };
 } // (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 1c9440494552..f583ced1a631 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.165";
+  version = "4.9.167";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0g045xvmal9px4acadjgbwih1bvphj9whrgk2y204dsbymm93827";
+    sha256 = "130a7z31sdha84w67vfx0j1sq68v15aksfkcshz219p75y561f52";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-5.0.nix b/pkgs/os-specific/linux/kernel/linux-5.0.nix
index 6b9d7bde1145..4038a89f6c63 100644
--- a/pkgs/os-specific/linux/kernel/linux-5.0.nix
+++ b/pkgs/os-specific/linux/kernel/linux-5.0.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 buildLinux (args // rec {
-  version = "5.0.4";
+  version = "5.0.6";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${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 = "0s7appc167gxamy08ky2n9y49avgqmscmq555m2jfvj9bjh3m1cg";
+    sha256 = "04zl3xqgr6rlkc44raz3rz74ag7l5j16wkvkdmlzrdq7ia6rljly";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix
index 375a71789bee..fde9e560c46f 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing.nix
@@ -1,13 +1,13 @@
 { stdenv, buildPackages, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args:
 
 buildLinux (args // rec {
-  version = "5.0-rc8";
-  modDirVersion = "5.0.0-rc8";
-  extraMeta.branch = "5.0";
+  version = "5.1-rc3";
+  modDirVersion = "5.1.0-rc3";
+  extraMeta.branch = "5.1";
 
   src = fetchurl {
     url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
-    sha256 = "1i58jljwc2y58ggahmh5643h3nckf3k00d0qnni4s9z1xw3w143p";
+    sha256 = "1nc5h0rfd40wfp8ld0d6n90haxp4xqcapwkg4vgn2m0c6dcspl2n";
   };
 
   # Should the testing kernels ever be built on Hydra?
diff --git a/pkgs/os-specific/linux/libratbag/default.nix b/pkgs/os-specific/linux/libratbag/default.nix
index edba8b090df8..5dab4b34f466 100644
--- a/pkgs/os-specific/linux/libratbag/default.nix
+++ b/pkgs/os-specific/linux/libratbag/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "libratbag-${version}";
-  version = "0.9.904";
+  version = "0.9.905";
 
   src = fetchFromGitHub {
     owner  = "libratbag";
     repo   = "libratbag";
     rev    = "v${version}";
-    sha256 = "0d2gw4bviy6zf1q9a18chlsbqylhppbby336fznh6nkpdl3jckfd";
+    sha256 = "0bh1nf9sv7wka0vh5bz9krf2cfxz0rr64hrpdm7imsb6cn39k01y";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/os-specific/linux/logitech-udev-rules/default.nix b/pkgs/os-specific/linux/logitech-udev-rules/default.nix
new file mode 100644
index 000000000000..c215d9401940
--- /dev/null
+++ b/pkgs/os-specific/linux/logitech-udev-rules/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, solaar }:
+
+# ltunifi and solaar both provide udev rules but solaar's rules are more
+# up-to-date so we simply use that instead of having to maintain our own rules
+
+stdenv.mkDerivation rec {
+  name = "logitech-udev-rules-${version}";
+  inherit (solaar) version;
+
+  buildCommand = ''
+    install -Dm644 -t $out/etc/udev/rules.d ${solaar.src}/rules.d/*.rules
+  '';
+
+  meta = with stdenv.lib; {
+    description = "udev rules for Logitech devices";
+    inherit (solaar.meta) homepage license platforms;
+    maintainers = with maintainers; [ peterhoeg ];
+  };
+}
diff --git a/pkgs/os-specific/linux/mcelog/default.nix b/pkgs/os-specific/linux/mcelog/default.nix
index c0e8e1292330..394dbf63f170 100644
--- a/pkgs/os-specific/linux/mcelog/default.nix
+++ b/pkgs/os-specific/linux/mcelog/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "mcelog-${version}";
-  version = "161";
+  version = "162";
 
   src = fetchFromGitHub {
     owner  = "andikleen";
     repo   = "mcelog";
     rev    = "v${version}";
-    sha256 = "1bqz53xgvwab3r487ihri3nvk7nsgjykdv8m993983vxsi2bgjmz";
+    sha256 = "1zxj545wslp92npll0411grc49l53cgp8dqqn3zb4vcxrvfc4vh9";
   };
 
   postPatch = ''
diff --git a/pkgs/os-specific/linux/microcode/intel.nix b/pkgs/os-specific/linux/microcode/intel.nix
index cbcab06f56ad..2af0e60b9c1a 100644
--- a/pkgs/os-specific/linux/microcode/intel.nix
+++ b/pkgs/os-specific/linux/microcode/intel.nix
@@ -1,18 +1,18 @@
-{ stdenv, fetchurl, libarchive, iucode-tool }:
+{ stdenv, fetchFromGitHub, libarchive, iucode-tool }:
 
 stdenv.mkDerivation rec {
-  name = "microcode-intel-${version}";
-  version = "20180807a";
-
-  src = fetchurl {
-    url = "https://downloadmirror.intel.com/28087/eng/microcode-${version}.tgz";
-    sha256 = "0dw1akgzdqk95pwmc8gfdmv7kabw9pn4c67f076bcbn4krliias6";
+  pname = "microcode-intel";
+  version = "20190312";
+
+  src = fetchFromGitHub {
+    owner = "intel";
+    repo = "Intel-Linux-Processor-Microcode-Data-Files";
+    rev = "microcode-${version}";
+    sha256 = "0n381dai2mv9indsbbr4nfbmp4y4qhshgflr095fyvq5a8acw94m";
   };
 
   nativeBuildInputs = [ iucode-tool libarchive ];
 
-  sourceRoot = ".";
-
   installPhase = ''
     runHook preInstall
 
diff --git a/pkgs/os-specific/linux/rdma-core/default.nix b/pkgs/os-specific/linux/rdma-core/default.nix
index ea52fbf08e78..192e1d61e43e 100644
--- a/pkgs/os-specific/linux/rdma-core/default.nix
+++ b/pkgs/os-specific/linux/rdma-core/default.nix
@@ -3,7 +3,7 @@
 } :
 
 let
-  version = "22.1";
+  version = "23";
 
 in stdenv.mkDerivation {
   name = "rdma-core-${version}";
@@ -12,7 +12,7 @@ in stdenv.mkDerivation {
     owner = "linux-rdma";
     repo = "rdma-core";
     rev = "v${version}";
-    sha256 = "04772rsn5a0gr4yss63fk35zfl05hz2l27q9yva922i8qq38f90a";
+    sha256 = "1n0v075ndczwrc87b70vxhx42nv1p953cqycmgnz334790zg002g";
   };
 
   nativeBuildInputs = [ cmake pkgconfig pandoc ];
diff --git a/pkgs/servers/apache-kafka/default.nix b/pkgs/servers/apache-kafka/default.nix
index 348a9a88566b..8b65fa65f22b 100644
--- a/pkgs/servers/apache-kafka/default.nix
+++ b/pkgs/servers/apache-kafka/default.nix
@@ -34,9 +34,14 @@ let
       sha256 = "0i62q3542cznf711kiskaa30l06gq9ckszlxja4k1vs1flxz5khl";
     };
     "2.1" = {
-      kafkaVersion = "2.1.0";
+      kafkaVersion = "2.1.1";
       scalaVersion = "2.12";
-      sha256 = "11jgxyqxsw4hc85ba2czc8wdzlnywyb4ab8qd5f2y27mhak482x7";
+      sha256 = "1gm7xiqkbg415mbj9mlazcndmky81xvg4wmz0h94yv1whp7fslr0";
+    };
+    "2.2" = {
+      kafkaVersion = "2.2.0";
+      scalaVersion = "2.12";
+      sha256 = "09q028kagpkzrvfdb040z8q9mspv8n7f2igrd1cs73v7mr7n42d0";
     };
   };
 in
diff --git a/pkgs/servers/dns/nsd/default.nix b/pkgs/servers/dns/nsd/default.nix
index 8c0fc7377661..4b86ccbdfe6e 100644
--- a/pkgs/servers/dns/nsd/default.nix
+++ b/pkgs/servers/dns/nsd/default.nix
@@ -15,11 +15,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "nsd-4.1.26";
+  name = "nsd-4.1.27";
 
   src = fetchurl {
     url = "https://www.nlnetlabs.nl/downloads/nsd/${name}.tar.gz";
-    sha256 = "1x0mvj4872dzj1rr9adnchdm4dhn41xmc459p5j4s0r13m1l32lz";
+    sha256 = "1sjfbwr4vq25304hr9vmd9j821g2vzv8lpy95hpsravc80q5zaqv";
   };
 
   prePatch = ''
diff --git a/pkgs/servers/dns/pdns-recursor/default.nix b/pkgs/servers/dns/pdns-recursor/default.nix
index e8603d249421..0e5ea98f30e8 100644
--- a/pkgs/servers/dns/pdns-recursor/default.nix
+++ b/pkgs/servers/dns/pdns-recursor/default.nix
@@ -8,11 +8,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "pdns-recursor-${version}";
-  version = "4.1.11";
+  version = "4.1.12";
 
   src = fetchurl {
     url = "https://downloads.powerdns.com/releases/pdns-recursor-${version}.tar.bz2";
-    sha256 = "0w6nyjiid8d9rv6qsq42x210val6lqrm9shpid4s8gjxahmxbiwy";
+    sha256 = "1j5hrpz4c9dqd30piqd8xyjmirdxp4dy71nx9rwq8l4i4nc0l774";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/servers/home-assistant/appdaemon.nix b/pkgs/servers/home-assistant/appdaemon.nix
index 42faa01db480..ca8ddbc7af33 100644
--- a/pkgs/servers/home-assistant/appdaemon.nix
+++ b/pkgs/servers/home-assistant/appdaemon.nix
@@ -23,6 +23,14 @@ let
         };
       });
 
+      jinja2 = super.jinja2.overridePythonAttrs (oldAttrs: rec {
+        version = "2.10";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "f84be1bb0040caca4cea721fcbbbbd61f9be9464ca236387158b0feea01914a4";
+        };
+      });
+
       aiohttp-jinja2 = super.aiohttp-jinja2.overridePythonAttrs (oldAttrs: rec {
         version = "0.15.0";
         src = oldAttrs.src.override {
@@ -31,16 +39,24 @@ let
         };
       });
 
+      pyyaml = super.pyyaml.overridePythonAttrs (oldAttrs: rec {
+        version = "5.1";
+        src = oldAttrs.src.override {
+          inherit version;
+          sha256 = "436bc774ecf7c103814098159fbb84c2715d25980175292c648f2da143909f95";
+        };
+      });
+
     };
   };
 
 in python.pkgs.buildPythonApplication rec {
   pname = "appdaemon";
-  version = "3.0.2";
+  version = "3.0.4";
 
   src = python.pkgs.fetchPypi {
     inherit pname version;
-    sha256 = "c32d9139566cc8147c39196a18c317accd1f0b2ef8e6c0ff31bddd4bc0f80bd3";
+    sha256 = "e2393b5e0bb34e94e61f5debc95ad74c1c6929635b74bf8ba15c22b40cbdec69";
   };
 
   propagatedBuildInputs = with python.pkgs; [
diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix
index 9a41fdb880a9..26dd0fa877b6 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.90.1";
+  version = "0.91.1";
   components = {
     "abode" = ps: with ps; [  ];
     "abode.alarm_control_panel" = ps: with ps; [  ];
@@ -13,33 +13,29 @@
     "abode.lock" = ps: with ps; [  ];
     "abode.sensor" = ps: with ps; [  ];
     "abode.switch" = ps: with ps; [  ];
+    "acer_projector" = ps: with ps; [  ];
+    "acer_projector.switch" = ps: with ps; [ pyserial ];
+    "actiontec" = ps: with ps; [  ];
+    "actiontec.device_tracker" = ps: with ps; [  ];
     "ads" = ps: with ps; [  ];
     "ads.binary_sensor" = ps: with ps; [  ];
     "ads.light" = ps: with ps; [  ];
     "ads.sensor" = ps: with ps; [  ];
     "ads.switch" = ps: with ps; [  ];
+    "aftership" = ps: with ps; [  ];
+    "aftership.sensor" = ps: with ps; [  ];
     "air_quality" = ps: with ps; [  ];
-    "air_quality.demo" = ps: with ps; [  ];
-    "air_quality.nilu" = ps: with ps; [  ];
-    "air_quality.norway_air" = ps: with ps; [  ];
-    "air_quality.opensensemap" = ps: with ps; [  ];
+    "airvisual" = ps: with ps; [  ];
+    "airvisual.sensor" = ps: with ps; [ pyairvisual ];
+    "aladdin_connect" = ps: with ps; [  ];
+    "aladdin_connect.cover" = ps: with ps; [  ];
     "alarm_control_panel" = ps: with ps; [  ];
-    "alarm_control_panel.alarmdotcom" = ps: with ps; [  ];
-    "alarm_control_panel.canary" = ps: with ps; [  ];
-    "alarm_control_panel.concord232" = ps: with ps; [  ];
-    "alarm_control_panel.demo" = ps: with ps; [  ];
-    "alarm_control_panel.ialarm" = ps: with ps; [  ];
-    "alarm_control_panel.manual" = ps: with ps; [  ];
-    "alarm_control_panel.manual_mqtt" = ps: with ps; [ paho-mqtt ];
-    "alarm_control_panel.ness_alarm" = ps: with ps; [  ];
-    "alarm_control_panel.nx584" = ps: with ps; [  ];
-    "alarm_control_panel.spc" = ps: with ps; [  ];
-    "alarm_control_panel.totalconnect" = ps: with ps; [  ];
-    "alarm_control_panel.yale_smart_alarm" = ps: with ps; [  ];
     "alarmdecoder" = ps: with ps; [  ];
     "alarmdecoder.alarm_control_panel" = ps: with ps; [  ];
     "alarmdecoder.binary_sensor" = ps: with ps; [  ];
     "alarmdecoder.sensor" = ps: with ps; [  ];
+    "alarmdotcom" = ps: with ps; [  ];
+    "alarmdotcom.alarm_control_panel" = ps: with ps; [  ];
     "alert" = ps: with ps; [  ];
     "alexa" = ps: with ps; [ aiohttp-cors ];
     "alexa.auth" = ps: with ps; [  ];
@@ -47,6 +43,10 @@
     "alexa.flash_briefings" = ps: with ps; [  ];
     "alexa.intent" = ps: with ps; [  ];
     "alexa.smart_home" = ps: with ps; [  ];
+    "alpha_vantage" = ps: with ps; [  ];
+    "alpha_vantage.sensor" = ps: with ps; [  ];
+    "amazon_polly" = ps: with ps; [  ];
+    "amazon_polly.tts" = ps: with ps; [ boto3 ];
     "ambient_station" = ps: with ps; [  ];
     "ambient_station.binary_sensor" = ps: with ps; [  ];
     "ambient_station.config_flow" = ps: with ps; [  ];
@@ -62,34 +62,59 @@
     "android_ip_webcam.switch" = ps: with ps; [  ];
     "androidtv" = ps: with ps; [  ];
     "androidtv.media_player" = ps: with ps; [  ];
+    "anel_pwrctrl" = ps: with ps; [  ];
+    "anel_pwrctrl.switch" = ps: with ps; [  ];
+    "anthemav" = ps: with ps; [  ];
+    "anthemav.media_player" = ps: with ps; [  ];
     "apcupsd" = ps: with ps; [  ];
     "apcupsd.binary_sensor" = ps: with ps; [  ];
     "apcupsd.sensor" = ps: with ps; [  ];
     "api" = ps: with ps; [ aiohttp-cors ];
+    "api_streams" = ps: with ps; [  ];
+    "apns" = ps: with ps; [  ];
+    "apns.notify" = ps: with ps; [  ];
     "apple_tv" = ps: with ps; [ pyatv ];
     "apple_tv.media_player" = ps: with ps; [ pyatv ];
     "apple_tv.remote" = ps: with ps; [ pyatv ];
     "aqualogic" = ps: with ps; [  ];
     "aqualogic.sensor" = ps: with ps; [  ];
     "aqualogic.switch" = ps: with ps; [  ];
+    "aquostv" = ps: with ps; [  ];
+    "aquostv.media_player" = ps: with ps; [  ];
     "arduino" = ps: with ps; [  ];
     "arduino.sensor" = ps: with ps; [  ];
     "arduino.switch" = ps: with ps; [  ];
+    "arest" = ps: with ps; [  ];
+    "arest.binary_sensor" = ps: with ps; [  ];
+    "arest.sensor" = ps: with ps; [  ];
+    "arest.switch" = ps: with ps; [  ];
     "arlo" = ps: with ps; [  ];
     "arlo.alarm_control_panel" = ps: with ps; [  ];
     "arlo.camera" = ps: with ps; [ ha-ffmpeg ];
     "arlo.sensor" = ps: with ps; [  ];
+    "aruba" = ps: with ps; [  ];
+    "aruba.device_tracker" = ps: with ps; [ pexpect ];
+    "arwn" = ps: with ps; [  ];
+    "arwn.sensor" = ps: with ps; [ paho-mqtt ];
+    "asterisk_cdr" = ps: with ps; [  ];
+    "asterisk_cdr.mailbox" = ps: with ps; [  ];
     "asterisk_mbox" = ps: with ps; [  ];
     "asterisk_mbox.mailbox" = ps: with ps; [  ];
     "asuswrt" = ps: with ps; [  ];
+    "asuswrt.device_tracker" = ps: with ps; [  ];
+    "asuswrt.sensor" = ps: with ps; [  ];
     "august" = ps: with ps; [  ];
     "august.binary_sensor" = ps: with ps; [  ];
     "august.camera" = ps: with ps; [  ];
     "august.lock" = ps: with ps; [  ];
+    "aurora" = ps: with ps; [  ];
+    "aurora.binary_sensor" = ps: with ps; [  ];
     "auth" = ps: with ps; [ aiohttp-cors ];
     "auth.indieauth" = ps: with ps; [  ];
     "auth.login_flow" = ps: with ps; [  ];
     "auth.mfa_setup_flow" = ps: with ps; [  ];
+    "automatic" = ps: with ps; [  ];
+    "automatic.device_tracker" = ps: with ps; [ aiohttp-cors ];
     "automation" = ps: with ps; [  ];
     "automation.event" = ps: with ps; [  ];
     "automation.geo_location" = ps: with ps; [  ];
@@ -104,108 +129,129 @@
     "automation.time_pattern" = ps: with ps; [  ];
     "automation.webhook" = ps: with ps; [ aiohttp-cors ];
     "automation.zone" = ps: with ps; [  ];
+    "avion" = ps: with ps; [  ];
+    "avion.light" = ps: with ps; [  ];
+    "awair" = ps: with ps; [  ];
+    "awair.sensor" = ps: with ps; [  ];
+    "aws" = ps: with ps; [  ];
+    "aws.config_flow" = ps: with ps; [  ];
+    "aws.const" = ps: with ps; [  ];
+    "aws.notify" = ps: with ps; [  ];
+    "aws_lambda" = ps: with ps; [  ];
+    "aws_lambda.notify" = ps: with ps; [ boto3 ];
+    "aws_sns" = ps: with ps; [  ];
+    "aws_sns.notify" = ps: with ps; [ boto3 ];
+    "aws_sqs" = ps: with ps; [  ];
+    "aws_sqs.notify" = ps: with ps; [ boto3 ];
     "axis" = ps: with ps; [  ];
     "axis.binary_sensor" = ps: with ps; [  ];
     "axis.camera" = ps: with ps; [  ];
+    "axis.config_flow" = ps: with ps; [  ];
+    "axis.const" = ps: with ps; [  ];
+    "axis.device" = ps: with ps; [  ];
+    "axis.errors" = ps: with ps; [  ];
+    "baidu" = ps: with ps; [  ];
+    "baidu.tts" = ps: with ps; [  ];
+    "bayesian" = ps: with ps; [  ];
+    "bayesian.binary_sensor" = ps: with ps; [  ];
     "bbb_gpio" = ps: with ps; [  ];
     "bbb_gpio.binary_sensor" = ps: with ps; [  ];
     "bbb_gpio.switch" = ps: with ps; [  ];
+    "bbox" = ps: with ps; [  ];
+    "bbox.device_tracker" = ps: with ps; [  ];
+    "bbox.sensor" = ps: with ps; [  ];
+    "bh1750" = ps: with ps; [  ];
+    "bh1750.sensor" = ps: with ps; [  ];
     "binary_sensor" = ps: with ps; [  ];
-    "binary_sensor.arest" = ps: with ps; [  ];
-    "binary_sensor.aurora" = ps: with ps; [  ];
-    "binary_sensor.bayesian" = ps: with ps; [  ];
-    "binary_sensor.command_line" = ps: with ps; [  ];
-    "binary_sensor.concord232" = ps: with ps; [  ];
-    "binary_sensor.demo" = ps: with ps; [  ];
-    "binary_sensor.ffmpeg_motion" = ps: with ps; [ ha-ffmpeg ];
-    "binary_sensor.ffmpeg_noise" = ps: with ps; [ ha-ffmpeg ];
-    "binary_sensor.flic" = ps: with ps; [  ];
-    "binary_sensor.hikvision" = ps: with ps; [  ];
-    "binary_sensor.iss" = ps: with ps; [  ];
-    "binary_sensor.mystrom" = ps: with ps; [ aiohttp-cors ];
-    "binary_sensor.ness_alarm" = ps: with ps; [  ];
-    "binary_sensor.nx584" = ps: with ps; [  ];
-    "binary_sensor.ping" = ps: with ps; [  ];
-    "binary_sensor.random" = ps: with ps; [  ];
-    "binary_sensor.rest" = ps: with ps; [  ];
-    "binary_sensor.rflink" = ps: with ps; [  ];
-    "binary_sensor.ring" = ps: with ps; [  ];
-    "binary_sensor.sleepiq" = ps: with ps; [  ];
-    "binary_sensor.spc" = ps: with ps; [  ];
-    "binary_sensor.tapsaff" = ps: with ps; [  ];
-    "binary_sensor.tcp" = ps: with ps; [  ];
-    "binary_sensor.template" = ps: with ps; [  ];
-    "binary_sensor.threshold" = ps: with ps; [  ];
-    "binary_sensor.tod" = ps: with ps; [  ];
-    "binary_sensor.trend" = ps: with ps; [ numpy ];
-    "binary_sensor.uptimerobot" = ps: with ps; [  ];
-    "binary_sensor.vultr" = ps: with ps; [ vultr ];
-    "binary_sensor.workday" = ps: with ps; [  ];
+    "bitcoin" = ps: with ps; [  ];
+    "bitcoin.sensor" = ps: with ps; [  ];
+    "blackbird" = ps: with ps; [  ];
+    "blackbird.media_player" = ps: with ps; [  ];
     "blink" = ps: with ps; [  ];
     "blink.alarm_control_panel" = ps: with ps; [  ];
     "blink.binary_sensor" = ps: with ps; [  ];
     "blink.camera" = ps: with ps; [  ];
     "blink.sensor" = ps: with ps; [  ];
+    "blinksticklight" = ps: with ps; [  ];
+    "blinksticklight.light" = ps: with ps; [ BlinkStick ];
+    "blinkt" = ps: with ps; [  ];
+    "blinkt.light" = ps: with ps; [  ];
+    "blockchain" = ps: with ps; [  ];
+    "blockchain.sensor" = ps: with ps; [  ];
     "bloomsky" = ps: with ps; [  ];
     "bloomsky.binary_sensor" = ps: with ps; [  ];
     "bloomsky.camera" = ps: with ps; [  ];
     "bloomsky.sensor" = ps: with ps; [  ];
+    "bluesound" = ps: with ps; [  ];
+    "bluesound.media_player" = ps: with ps; [ xmltodict ];
+    "bluetooth_le_tracker" = ps: with ps; [  ];
+    "bluetooth_le_tracker.device_tracker" = ps: with ps; [  ];
+    "bluetooth_tracker" = ps: with ps; [  ];
+    "bluetooth_tracker.device_tracker" = ps: with ps; [ bt_proximity ];
+    "bme280" = ps: with ps; [  ];
+    "bme280.sensor" = ps: with ps; [  ];
+    "bme680" = ps: with ps; [  ];
+    "bme680.sensor" = ps: with ps; [  ];
     "bmw_connected_drive" = ps: with ps; [  ];
     "bmw_connected_drive.binary_sensor" = ps: with ps; [  ];
     "bmw_connected_drive.device_tracker" = ps: with ps; [  ];
     "bmw_connected_drive.lock" = ps: with ps; [  ];
     "bmw_connected_drive.sensor" = ps: with ps; [  ];
+    "bom" = ps: with ps; [  ];
+    "bom.sensor" = ps: with ps; [  ];
+    "bom.weather" = ps: with ps; [  ];
+    "braviatv" = ps: with ps; [  ];
+    "braviatv.media_player" = ps: with ps; [  ];
+    "broadlink" = ps: with ps; [  ];
+    "broadlink.sensor" = ps: with ps; [ broadlink ];
+    "broadlink.switch" = ps: with ps; [ broadlink ];
+    "brottsplatskartan" = ps: with ps; [  ];
+    "brottsplatskartan.sensor" = ps: with ps; [  ];
     "browser" = ps: with ps; [  ];
+    "brunt" = ps: with ps; [  ];
+    "brunt.cover" = ps: with ps; [  ];
+    "bt_home_hub_5" = ps: with ps; [  ];
+    "bt_home_hub_5.device_tracker" = ps: with ps; [  ];
+    "bt_smarthub" = ps: with ps; [  ];
+    "bt_smarthub.device_tracker" = ps: with ps; [  ];
+    "buienradar" = ps: with ps; [  ];
+    "buienradar.sensor" = ps: with ps; [  ];
+    "buienradar.weather" = ps: with ps; [  ];
+    "caldav" = ps: with ps; [  ];
+    "caldav.calendar" = ps: with ps; [  ];
     "calendar" = ps: with ps; [ aiohttp-cors ];
-    "calendar.caldav" = ps: with ps; [  ];
-    "calendar.demo" = ps: with ps; [  ];
-    "calendar.todoist" = ps: with ps; [ todoist ];
     "camera" = ps: with ps; [ aiohttp-cors ];
-    "camera.canary" = ps: with ps; [ ha-ffmpeg ];
-    "camera.demo" = ps: with ps; [  ];
-    "camera.familyhub" = ps: with ps; [  ];
-    "camera.ffmpeg" = ps: with ps; [ ha-ffmpeg ];
-    "camera.foscam" = ps: with ps; [  ];
-    "camera.generic" = ps: with ps; [  ];
-    "camera.local_file" = ps: with ps; [  ];
-    "camera.mjpeg" = ps: with ps; [  ];
-    "camera.onvif" = ps: with ps; [ ha-ffmpeg ];
-    "camera.proxy" = ps: with ps; [ pillow ];
-    "camera.push" = ps: with ps; [ aiohttp-cors ];
-    "camera.ring" = ps: with ps; [ ha-ffmpeg ];
-    "camera.rpi_camera" = ps: with ps; [  ];
-    "camera.synology" = ps: with ps; [  ];
-    "camera.uvc" = ps: with ps; [  ];
-    "camera.xeoma" = ps: with ps; [  ];
-    "camera.xiaomi" = ps: with ps; [ ha-ffmpeg ];
-    "camera.yi" = ps: with ps; [ ha-ffmpeg ];
+    "camera.const" = ps: with ps; [  ];
+    "camera.prefs" = ps: with ps; [  ];
     "canary" = ps: with ps; [  ];
+    "canary.alarm_control_panel" = ps: with ps; [  ];
+    "canary.camera" = ps: with ps; [ ha-ffmpeg ];
+    "canary.sensor" = ps: with ps; [  ];
     "cast" = ps: with ps; [ PyChromecast ];
     "cast.media_player" = ps: with ps; [ PyChromecast ];
+    "cert_expiry" = ps: with ps; [  ];
+    "cert_expiry.sensor" = ps: with ps; [  ];
+    "channels" = ps: with ps; [  ];
+    "channels.media_player" = ps: with ps; [  ];
+    "cisco_ios" = ps: with ps; [  ];
+    "cisco_ios.device_tracker" = ps: with ps; [ pexpect ];
     "cisco_mobility_express" = ps: with ps; [  ];
     "cisco_mobility_express.device_tracker" = ps: with ps; [  ];
+    "ciscospark" = ps: with ps; [  ];
+    "ciscospark.notify" = ps: with ps; [  ];
+    "citybikes" = ps: with ps; [  ];
+    "citybikes.sensor" = ps: with ps; [  ];
+    "clementine" = ps: with ps; [  ];
+    "clementine.media_player" = ps: with ps; [  ];
+    "clickatell" = ps: with ps; [  ];
+    "clickatell.notify" = ps: with ps; [  ];
+    "clicksend" = ps: with ps; [  ];
+    "clicksend.notify" = ps: with ps; [  ];
+    "clicksend_tts" = ps: with ps; [  ];
+    "clicksend_tts.notify" = ps: with ps; [  ];
     "climate" = ps: with ps; [  ];
     "climate.const" = ps: with ps; [  ];
-    "climate.coolmaster" = ps: with ps; [  ];
-    "climate.demo" = ps: with ps; [  ];
-    "climate.dyson" = ps: with ps; [  ];
-    "climate.ephember" = ps: with ps; [  ];
-    "climate.eq3btsmart" = ps: with ps; [ construct ];
-    "climate.flexit" = ps: with ps; [  ];
-    "climate.generic_thermostat" = ps: with ps; [  ];
-    "climate.heatmiser" = ps: with ps; [  ];
-    "climate.honeywell" = ps: with ps; [  ];
-    "climate.melissa" = ps: with ps; [  ];
-    "climate.mill" = ps: with ps; [  ];
-    "climate.nuheat" = ps: with ps; [  ];
-    "climate.oem" = ps: with ps; [  ];
-    "climate.proliphix" = ps: with ps; [  ];
-    "climate.radiotherm" = ps: with ps; [  ];
     "climate.reproduce_state" = ps: with ps; [  ];
-    "climate.sensibo" = ps: with ps; [  ];
-    "climate.touchline" = ps: with ps; [  ];
-    "climate.venstar" = ps: with ps; [  ];
-    "climate.zhong_hong" = ps: with ps; [  ];
     "cloud" = ps: with ps; [ aiohttp-cors ];
     "cloud.binary_sensor" = ps: with ps; [ aiohttp-cors ];
     "cloud.const" = ps: with ps; [  ];
@@ -213,10 +259,28 @@
     "cloud.prefs" = ps: with ps; [  ];
     "cloud.utils" = ps: with ps; [  ];
     "cloudflare" = ps: with ps; [  ];
+    "cmus" = ps: with ps; [  ];
+    "cmus.media_player" = ps: with ps; [  ];
+    "co2signal" = ps: with ps; [  ];
+    "co2signal.sensor" = ps: with ps; [  ];
     "coinbase" = ps: with ps; [  ];
+    "coinbase.sensor" = ps: with ps; [  ];
+    "coinmarketcap" = ps: with ps; [  ];
+    "coinmarketcap.sensor" = ps: with ps; [ coinmarketcap ];
+    "comed_hourly_pricing" = ps: with ps; [  ];
+    "comed_hourly_pricing.sensor" = ps: with ps; [  ];
     "comfoconnect" = ps: with ps; [  ];
     "comfoconnect.fan" = ps: with ps; [  ];
     "comfoconnect.sensor" = ps: with ps; [  ];
+    "command_line" = ps: with ps; [  ];
+    "command_line.binary_sensor" = ps: with ps; [  ];
+    "command_line.cover" = ps: with ps; [  ];
+    "command_line.notify" = ps: with ps; [  ];
+    "command_line.sensor" = ps: with ps; [  ];
+    "command_line.switch" = ps: with ps; [  ];
+    "concord232" = ps: with ps; [  ];
+    "concord232.alarm_control_panel" = ps: with ps; [  ];
+    "concord232.binary_sensor" = ps: with ps; [  ];
     "config" = ps: with ps; [ aiohttp-cors ];
     "config.area_registry" = ps: with ps; [  ];
     "config.auth" = ps: with ps; [  ];
@@ -232,31 +296,36 @@
     "configurator" = ps: with ps; [  ];
     "conversation" = ps: with ps; [ aiohttp-cors ];
     "conversation.util" = ps: with ps; [  ];
+    "coolmaster" = ps: with ps; [  ];
+    "coolmaster.climate" = ps: with ps; [  ];
     "counter" = ps: with ps; [  ];
     "cover" = ps: with ps; [  ];
-    "cover.aladdin_connect" = ps: with ps; [  ];
-    "cover.brunt" = ps: with ps; [  ];
-    "cover.command_line" = ps: with ps; [  ];
-    "cover.demo" = ps: with ps; [  ];
-    "cover.garadget" = ps: with ps; [  ];
-    "cover.gogogate2" = ps: with ps; [  ];
-    "cover.group" = ps: with ps; [  ];
-    "cover.myq" = ps: with ps; [  ];
-    "cover.opengarage" = ps: with ps; [  ];
-    "cover.rflink" = ps: with ps; [  ];
-    "cover.template" = ps: with ps; [  ];
     "cppm_tracker" = ps: with ps; [  ];
     "cppm_tracker.device_tracker" = ps: with ps; [  ];
+    "cpuspeed" = ps: with ps; [  ];
+    "cpuspeed.sensor" = ps: with ps; [ py-cpuinfo ];
+    "crimereports" = ps: with ps; [  ];
+    "crimereports.sensor" = ps: with ps; [  ];
+    "cups" = ps: with ps; [  ];
+    "cups.sensor" = ps: with ps; [ pycups ];
+    "currencylayer" = ps: with ps; [  ];
+    "currencylayer.sensor" = ps: with ps; [  ];
     "daikin" = ps: with ps; [  ];
     "daikin.climate" = ps: with ps; [  ];
     "daikin.config_flow" = ps: with ps; [  ];
     "daikin.const" = ps: with ps; [  ];
     "daikin.sensor" = ps: with ps; [  ];
+    "daikin.switch" = ps: with ps; [  ];
     "danfoss_air" = ps: with ps; [  ];
     "danfoss_air.binary_sensor" = ps: with ps; [  ];
     "danfoss_air.sensor" = ps: with ps; [  ];
     "danfoss_air.switch" = ps: with ps; [  ];
+    "darksky" = ps: with ps; [  ];
+    "darksky.sensor" = ps: with ps; [ python-forecastio ];
+    "darksky.weather" = ps: with ps; [ python-forecastio ];
     "datadog" = ps: with ps; [ datadog ];
+    "ddwrt" = ps: with ps; [  ];
+    "ddwrt.device_tracker" = ps: with ps; [  ];
     "deconz" = ps: with ps; [  ];
     "deconz.binary_sensor" = ps: with ps; [  ];
     "deconz.climate" = ps: with ps; [  ];
@@ -264,68 +333,77 @@
     "deconz.const" = ps: with ps; [  ];
     "deconz.cover" = ps: with ps; [  ];
     "deconz.deconz_device" = ps: with ps; [  ];
+    "deconz.errors" = ps: with ps; [  ];
     "deconz.gateway" = ps: with ps; [  ];
     "deconz.light" = ps: with ps; [  ];
     "deconz.scene" = ps: with ps; [  ];
     "deconz.sensor" = ps: with ps; [  ];
     "deconz.switch" = ps: with ps; [  ];
+    "decora" = ps: with ps; [  ];
+    "decora.light" = ps: with ps; [  ];
+    "decora_wifi" = ps: with ps; [  ];
+    "decora_wifi.light" = ps: with ps; [  ];
     "default_config" = ps: with ps; [ pynacl aiohttp-cors distro sqlalchemy zeroconf ];
+    "deluge" = ps: with ps; [  ];
+    "deluge.sensor" = ps: with ps; [ deluge-client ];
+    "deluge.switch" = ps: with ps; [ deluge-client ];
     "demo" = ps: with ps; [ aiohttp-cors ];
+    "demo.air_quality" = ps: with ps; [  ];
+    "demo.alarm_control_panel" = ps: with ps; [  ];
+    "demo.binary_sensor" = ps: with ps; [  ];
+    "demo.calendar" = ps: with ps; [  ];
+    "demo.camera" = ps: with ps; [  ];
+    "demo.climate" = ps: with ps; [  ];
+    "demo.cover" = ps: with ps; [  ];
+    "demo.device_tracker" = ps: with ps; [  ];
+    "demo.fan" = ps: with ps; [  ];
+    "demo.geo_location" = ps: with ps; [  ];
+    "demo.image_processing" = ps: with ps; [  ];
+    "demo.light" = ps: with ps; [  ];
+    "demo.lock" = ps: with ps; [  ];
+    "demo.mailbox" = ps: with ps; [  ];
+    "demo.media_player" = ps: with ps; [  ];
+    "demo.notify" = ps: with ps; [  ];
     "demo.remote" = ps: with ps; [  ];
+    "demo.sensor" = ps: with ps; [  ];
+    "demo.switch" = ps: with ps; [  ];
+    "demo.tts" = ps: with ps; [  ];
+    "demo.vacuum" = ps: with ps; [  ];
+    "demo.water_heater" = ps: with ps; [  ];
+    "demo.weather" = ps: with ps; [  ];
+    "denon" = ps: with ps; [  ];
+    "denon.media_player" = ps: with ps; [  ];
+    "denonavr" = ps: with ps; [  ];
+    "denonavr.media_player" = ps: with ps; [  ];
+    "deutsche_bahn" = ps: with ps; [  ];
+    "deutsche_bahn.sensor" = ps: with ps; [  ];
     "device_sun_light_trigger" = ps: with ps; [  ];
     "device_tracker" = ps: with ps; [  ];
-    "device_tracker.actiontec" = ps: with ps; [  ];
-    "device_tracker.aruba" = ps: with ps; [ pexpect ];
-    "device_tracker.asuswrt" = ps: with ps; [  ];
-    "device_tracker.automatic" = ps: with ps; [ aiohttp-cors ];
-    "device_tracker.bbox" = ps: with ps; [  ];
-    "device_tracker.bluetooth_le_tracker" = ps: with ps; [  ];
-    "device_tracker.bluetooth_tracker" = ps: with ps; [ bt_proximity ];
-    "device_tracker.bt_home_hub_5" = ps: with ps; [  ];
-    "device_tracker.bt_smarthub" = ps: with ps; [  ];
-    "device_tracker.cisco_ios" = ps: with ps; [ pexpect ];
-    "device_tracker.ddwrt" = ps: with ps; [  ];
-    "device_tracker.demo" = ps: with ps; [  ];
-    "device_tracker.ee_brightbox" = ps: with ps; [  ];
-    "device_tracker.fritz" = ps: with ps; [ fritzconnection ];
-    "device_tracker.google_maps" = ps: with ps; [  ];
-    "device_tracker.hitron_coda" = ps: with ps; [  ];
-    "device_tracker.huawei_router" = ps: with ps; [  ];
-    "device_tracker.icloud" = ps: with ps; [  ];
-    "device_tracker.keenetic_ndms2" = ps: with ps; [  ];
-    "device_tracker.linksys_ap" = ps: with ps; [ beautifulsoup4 ];
-    "device_tracker.linksys_smart" = ps: with ps; [  ];
-    "device_tracker.luci" = ps: with ps; [  ];
-    "device_tracker.meraki" = ps: with ps; [ aiohttp-cors ];
-    "device_tracker.mikrotik" = ps: with ps; [  ];
-    "device_tracker.mqtt_json" = ps: with ps; [ paho-mqtt ];
-    "device_tracker.netgear" = ps: with ps; [  ];
-    "device_tracker.nmap_tracker" = ps: with ps; [  ];
-    "device_tracker.ping" = ps: with ps; [  ];
-    "device_tracker.quantum_gateway" = ps: with ps; [  ];
-    "device_tracker.ritassist" = ps: with ps; [  ];
-    "device_tracker.sky_hub" = ps: with ps; [  ];
-    "device_tracker.snmp" = ps: with ps; [ pysnmp ];
-    "device_tracker.swisscom" = ps: with ps; [  ];
-    "device_tracker.synology_srm" = ps: with ps; [  ];
-    "device_tracker.thomson" = ps: with ps; [  ];
-    "device_tracker.tile" = ps: with ps; [  ];
-    "device_tracker.tomato" = ps: with ps; [  ];
-    "device_tracker.tplink" = ps: with ps; [  ];
-    "device_tracker.traccar" = ps: with ps; [  ];
-    "device_tracker.trackr" = ps: with ps; [  ];
-    "device_tracker.ubee" = ps: with ps; [  ];
-    "device_tracker.ubus" = ps: with ps; [  ];
-    "device_tracker.unifi" = ps: with ps; [ pyunifi ];
-    "device_tracker.unifi_direct" = ps: with ps; [ pexpect ];
-    "device_tracker.upc_connect" = ps: with ps; [ defusedxml ];
-    "device_tracker.xfinity" = ps: with ps; [  ];
-    "device_tracker.xiaomi" = ps: with ps; [  ];
+    "dht" = ps: with ps; [  ];
+    "dht.sensor" = ps: with ps; [  ];
     "dialogflow" = ps: with ps; [ aiohttp-cors ];
     "digital_ocean" = ps: with ps; [ digital-ocean ];
     "digital_ocean.binary_sensor" = ps: with ps; [ digital-ocean ];
     "digital_ocean.switch" = ps: with ps; [ digital-ocean ];
+    "digitalloggers" = ps: with ps; [  ];
+    "digitalloggers.switch" = ps: with ps; [  ];
+    "directv" = ps: with ps; [  ];
+    "directv.media_player" = ps: with ps; [  ];
+    "discogs" = ps: with ps; [  ];
+    "discogs.sensor" = ps: with ps; [ discogs_client ];
+    "discord" = ps: with ps; [  ];
+    "discord.notify" = ps: with ps; [ discordpy ];
     "discovery" = ps: with ps; [ netdisco ];
+    "dlib_face_detect" = ps: with ps; [  ];
+    "dlib_face_detect.image_processing" = ps: with ps; [ face_recognition ];
+    "dlib_face_identify" = ps: with ps; [  ];
+    "dlib_face_identify.image_processing" = ps: with ps; [ face_recognition ];
+    "dlink" = ps: with ps; [  ];
+    "dlink.switch" = ps: with ps; [  ];
+    "dlna_dmr" = ps: with ps; [  ];
+    "dlna_dmr.media_player" = ps: with ps; [  ];
+    "dnsip" = ps: with ps; [  ];
+    "dnsip.sensor" = ps: with ps; [ aiodns ];
     "dominos" = ps: with ps; [ aiohttp-cors ];
     "doorbird" = ps: with ps; [  ];
     "doorbird.camera" = ps: with ps; [  ];
@@ -334,10 +412,28 @@
     "dovado.notify" = ps: with ps; [  ];
     "dovado.sensor" = ps: with ps; [  ];
     "downloader" = ps: with ps; [  ];
+    "dsmr" = ps: with ps; [  ];
+    "dsmr.sensor" = ps: with ps; [  ];
+    "dte_energy_bridge" = ps: with ps; [  ];
+    "dte_energy_bridge.sensor" = ps: with ps; [  ];
+    "dublin_bus_transport" = ps: with ps; [  ];
+    "dublin_bus_transport.sensor" = ps: with ps; [  ];
     "duckdns" = ps: with ps; [  ];
+    "duke_energy" = ps: with ps; [  ];
+    "duke_energy.sensor" = ps: with ps; [  ];
+    "dunehd" = ps: with ps; [  ];
+    "dunehd.media_player" = ps: with ps; [  ];
+    "dwd_weather_warnings" = ps: with ps; [  ];
+    "dwd_weather_warnings.sensor" = ps: with ps; [  ];
     "dweet" = ps: with ps; [  ];
     "dweet.sensor" = ps: with ps; [  ];
     "dyson" = ps: with ps; [  ];
+    "dyson.climate" = ps: with ps; [  ];
+    "dyson.fan" = ps: with ps; [  ];
+    "dyson.sensor" = ps: with ps; [  ];
+    "dyson.vacuum" = ps: with ps; [  ];
+    "ebox" = ps: with ps; [  ];
+    "ebox.sensor" = ps: with ps; [  ];
     "ebusd" = ps: with ps; [  ];
     "ebusd.const" = ps: with ps; [  ];
     "ebusd.sensor" = ps: with ps; [  ];
@@ -350,17 +446,29 @@
     "ecobee.notify" = ps: with ps; [  ];
     "ecobee.sensor" = ps: with ps; [  ];
     "ecobee.weather" = ps: with ps; [  ];
+    "econet" = ps: with ps; [  ];
+    "econet.water_heater" = ps: with ps; [  ];
     "ecovacs" = ps: with ps; [  ];
     "ecovacs.vacuum" = ps: with ps; [  ];
+    "eddystone_temperature" = ps: with ps; [  ];
+    "eddystone_temperature.sensor" = ps: with ps; [ construct ];
+    "edimax" = ps: with ps; [  ];
+    "edimax.switch" = ps: with ps; [  ];
     "edp_redy" = ps: with ps; [  ];
     "edp_redy.sensor" = ps: with ps; [  ];
     "edp_redy.switch" = ps: with ps; [  ];
+    "ee_brightbox" = ps: with ps; [  ];
+    "ee_brightbox.device_tracker" = ps: with ps; [  ];
+    "efergy" = ps: with ps; [  ];
+    "efergy.sensor" = ps: with ps; [  ];
     "egardia" = ps: with ps; [  ];
     "egardia.alarm_control_panel" = ps: with ps; [  ];
     "egardia.binary_sensor" = ps: with ps; [  ];
     "eight_sleep" = ps: with ps; [  ];
     "eight_sleep.binary_sensor" = ps: with ps; [  ];
     "eight_sleep.sensor" = ps: with ps; [  ];
+    "eliqonline" = ps: with ps; [  ];
+    "eliqonline.sensor" = ps: with ps; [  ];
     "elkm1" = ps: with ps; [  ];
     "elkm1.alarm_control_panel" = ps: with ps; [  ];
     "elkm1.climate" = ps: with ps; [  ];
@@ -368,6 +476,10 @@
     "elkm1.scene" = ps: with ps; [  ];
     "elkm1.sensor" = ps: with ps; [  ];
     "elkm1.switch" = ps: with ps; [  ];
+    "emby" = ps: with ps; [  ];
+    "emby.media_player" = ps: with ps; [  ];
+    "emoncms" = ps: with ps; [  ];
+    "emoncms.sensor" = ps: with ps; [  ];
     "emoncms_history" = ps: with ps; [  ];
     "emulated_hue" = ps: with ps; [ aiohttp-cors ];
     "emulated_hue.hue_api" = ps: with ps; [  ];
@@ -383,31 +495,60 @@
     "enocean.light" = ps: with ps; [  ];
     "enocean.sensor" = ps: with ps; [  ];
     "enocean.switch" = ps: with ps; [  ];
+    "enphase_envoy" = ps: with ps; [  ];
+    "enphase_envoy.sensor" = ps: with ps; [  ];
+    "entur_public_transport" = ps: with ps; [  ];
+    "entur_public_transport.sensor" = ps: with ps; [  ];
+    "envirophat" = ps: with ps; [  ];
+    "envirophat.sensor" = ps: with ps; [  ];
     "envisalink" = ps: with ps; [  ];
     "envisalink.alarm_control_panel" = ps: with ps; [  ];
     "envisalink.binary_sensor" = ps: with ps; [  ];
     "envisalink.sensor" = ps: with ps; [  ];
-    "esphome" = ps: with ps; [  ];
-    "esphome.binary_sensor" = ps: with ps; [  ];
+    "ephember" = ps: with ps; [  ];
+    "ephember.climate" = ps: with ps; [  ];
+    "epson" = ps: with ps; [  ];
+    "epson.media_player" = ps: with ps; [  ];
+    "eq3btsmart" = ps: with ps; [  ];
+    "eq3btsmart.climate" = ps: with ps; [ construct ];
+    "esphome" = ps: with ps; [ aioesphomeapi ];
+    "esphome.binary_sensor" = ps: with ps; [ aioesphomeapi ];
+    "esphome.camera" = ps: with ps; [ aioesphomeapi ];
     "esphome.config_flow" = ps: with ps; [  ];
-    "esphome.cover" = ps: with ps; [  ];
-    "esphome.fan" = ps: with ps; [  ];
-    "esphome.light" = ps: with ps; [  ];
-    "esphome.sensor" = ps: with ps; [  ];
-    "esphome.switch" = ps: with ps; [  ];
+    "esphome.cover" = ps: with ps; [ aioesphomeapi ];
+    "esphome.fan" = ps: with ps; [ aioesphomeapi ];
+    "esphome.light" = ps: with ps; [ aioesphomeapi ];
+    "esphome.sensor" = ps: with ps; [ aioesphomeapi ];
+    "esphome.switch" = ps: with ps; [ aioesphomeapi ];
+    "etherscan" = ps: with ps; [  ];
+    "etherscan.sensor" = ps: with ps; [  ];
     "eufy" = ps: with ps; [  ];
     "eufy.light" = ps: with ps; [  ];
     "eufy.switch" = ps: with ps; [  ];
+    "everlights" = ps: with ps; [  ];
+    "everlights.light" = ps: with ps; [  ];
     "evohome" = ps: with ps; [  ];
     "evohome.climate" = ps: with ps; [  ];
+    "facebook" = ps: with ps; [  ];
+    "facebook.notify" = ps: with ps; [  ];
+    "facebox" = ps: with ps; [  ];
+    "facebox.image_processing" = ps: with ps; [  ];
+    "fail2ban" = ps: with ps; [  ];
+    "fail2ban.sensor" = ps: with ps; [  ];
+    "familyhub" = ps: with ps; [  ];
+    "familyhub.camera" = ps: with ps; [  ];
     "fan" = ps: with ps; [  ];
-    "fan.demo" = ps: with ps; [  ];
-    "fan.dyson" = ps: with ps; [  ];
-    "fan.template" = ps: with ps; [  ];
     "fastdotcom" = ps: with ps; [  ];
     "fastdotcom.sensor" = ps: with ps; [  ];
+    "fedex" = ps: with ps; [  ];
+    "fedex.sensor" = ps: with ps; [  ];
     "feedreader" = ps: with ps; [  ];
     "ffmpeg" = ps: with ps; [ ha-ffmpeg ];
+    "ffmpeg.camera" = ps: with ps; [ ha-ffmpeg ];
+    "ffmpeg_motion" = ps: with ps; [  ];
+    "ffmpeg_motion.binary_sensor" = ps: with ps; [ ha-ffmpeg ];
+    "ffmpeg_noise" = ps: with ps; [  ];
+    "ffmpeg_noise.binary_sensor" = ps: with ps; [ ha-ffmpeg ];
     "fibaro" = ps: with ps; [  ];
     "fibaro.binary_sensor" = ps: with ps; [  ];
     "fibaro.cover" = ps: with ps; [  ];
@@ -415,30 +556,100 @@
     "fibaro.scene" = ps: with ps; [  ];
     "fibaro.sensor" = ps: with ps; [  ];
     "fibaro.switch" = ps: with ps; [  ];
+    "fido" = ps: with ps; [  ];
+    "fido.sensor" = ps: with ps; [  ];
+    "file" = ps: with ps; [  ];
+    "file.notify" = ps: with ps; [  ];
+    "file.sensor" = ps: with ps; [  ];
+    "filesize" = ps: with ps; [  ];
+    "filesize.sensor" = ps: with ps; [  ];
+    "filter" = ps: with ps; [  ];
+    "filter.sensor" = ps: with ps; [  ];
+    "fints" = ps: with ps; [  ];
+    "fints.sensor" = ps: with ps; [ fints ];
+    "fitbit" = ps: with ps; [  ];
+    "fitbit.sensor" = ps: with ps; [ aiohttp-cors ];
+    "fixer" = ps: with ps; [  ];
+    "fixer.sensor" = ps: with ps; [  ];
+    "flexit" = ps: with ps; [  ];
+    "flexit.climate" = ps: with ps; [  ];
+    "flic" = ps: with ps; [  ];
+    "flic.binary_sensor" = ps: with ps; [  ];
+    "flock" = ps: with ps; [  ];
+    "flock.notify" = ps: with ps; [  ];
+    "flunearyou" = ps: with ps; [  ];
+    "flunearyou.sensor" = ps: with ps; [  ];
+    "flux" = ps: with ps; [  ];
+    "flux.switch" = ps: with ps; [  ];
+    "flux_led" = ps: with ps; [  ];
+    "flux_led.light" = ps: with ps; [  ];
+    "folder" = ps: with ps; [  ];
+    "folder.sensor" = ps: with ps; [  ];
     "folder_watcher" = ps: with ps; [ watchdog ];
+    "foobot" = ps: with ps; [  ];
+    "foobot.sensor" = ps: with ps; [  ];
+    "foscam" = ps: with ps; [  ];
+    "foscam.camera" = ps: with ps; [  ];
     "foursquare" = ps: with ps; [ aiohttp-cors ];
+    "free_mobile" = ps: with ps; [  ];
+    "free_mobile.notify" = ps: with ps; [  ];
     "freebox" = ps: with ps; [  ];
     "freebox.device_tracker" = ps: with ps; [  ];
     "freebox.sensor" = ps: with ps; [  ];
+    "freebox.switch" = ps: with ps; [  ];
     "freedns" = ps: with ps; [  ];
+    "fritz" = ps: with ps; [  ];
+    "fritz.device_tracker" = ps: with ps; [ fritzconnection ];
     "fritzbox" = ps: with ps; [  ];
     "fritzbox.binary_sensor" = ps: with ps; [  ];
     "fritzbox.climate" = ps: with ps; [  ];
     "fritzbox.sensor" = ps: with ps; [  ];
     "fritzbox.switch" = ps: with ps; [  ];
+    "fritzbox_callmonitor" = ps: with ps; [  ];
+    "fritzbox_callmonitor.sensor" = ps: with ps; [ fritzconnection ];
+    "fritzbox_netmonitor" = ps: with ps; [  ];
+    "fritzbox_netmonitor.sensor" = ps: with ps; [ fritzconnection ];
+    "fritzdect" = ps: with ps; [  ];
+    "fritzdect.switch" = ps: with ps; [  ];
     "frontend" = ps: with ps; [ aiohttp-cors ];
     "frontend.storage" = ps: with ps; [  ];
+    "frontier_silicon" = ps: with ps; [  ];
+    "frontier_silicon.media_player" = ps: with ps; [  ];
+    "futurenow" = ps: with ps; [  ];
+    "futurenow.light" = ps: with ps; [  ];
+    "garadget" = ps: with ps; [  ];
+    "garadget.cover" = ps: with ps; [  ];
     "gc100" = ps: with ps; [  ];
     "gc100.binary_sensor" = ps: with ps; [  ];
     "gc100.switch" = ps: with ps; [  ];
+    "gearbest" = ps: with ps; [  ];
+    "gearbest.sensor" = ps: with ps; [  ];
+    "geizhals" = ps: with ps; [  ];
+    "geizhals.sensor" = ps: with ps; [  ];
+    "generic" = ps: with ps; [  ];
+    "generic.camera" = ps: with ps; [  ];
+    "generic_thermostat" = ps: with ps; [  ];
+    "generic_thermostat.climate" = ps: with ps; [  ];
+    "geo_json_events" = ps: with ps; [  ];
+    "geo_json_events.geo_location" = ps: with ps; [  ];
     "geo_location" = ps: with ps; [  ];
-    "geo_location.demo" = ps: with ps; [  ];
-    "geo_location.geo_json_events" = ps: with ps; [  ];
-    "geo_location.nsw_rural_fire_service_feed" = ps: with ps; [  ];
-    "geo_location.usgs_earthquakes_feed" = ps: with ps; [  ];
+    "geo_rss_events" = ps: with ps; [  ];
+    "geo_rss_events.sensor" = ps: with ps; [  ];
     "geofency" = ps: with ps; [ aiohttp-cors ];
     "geofency.device_tracker" = ps: with ps; [ aiohttp-cors ];
+    "github" = ps: with ps; [  ];
+    "github.sensor" = ps: with ps; [ PyGithub ];
+    "gitlab_ci" = ps: with ps; [  ];
+    "gitlab_ci.sensor" = ps: with ps; [ python-gitlab ];
+    "gitter" = ps: with ps; [  ];
+    "gitter.sensor" = ps: with ps; [  ];
+    "glances" = ps: with ps; [  ];
+    "glances.sensor" = ps: with ps; [  ];
+    "gntp" = ps: with ps; [  ];
+    "gntp.notify" = ps: with ps; [  ];
     "goalfeed" = ps: with ps; [  ];
+    "gogogate2" = ps: with ps; [  ];
+    "gogogate2.cover" = ps: with ps; [  ];
     "google" = ps: with ps; [ google_api_python_client httplib2 oauth2client ];
     "google.calendar" = ps: with ps; [  ];
     "google.tts" = ps: with ps; [  ];
@@ -449,16 +660,38 @@
     "google_assistant.smart_home" = ps: with ps; [  ];
     "google_assistant.trait" = ps: with ps; [  ];
     "google_domains" = ps: with ps; [  ];
+    "google_maps" = ps: with ps; [  ];
+    "google_maps.device_tracker" = ps: with ps; [  ];
     "google_pubsub" = ps: with ps; [ google_cloud_pubsub ];
+    "google_travel_time" = ps: with ps; [  ];
+    "google_travel_time.sensor" = ps: with ps; [  ];
+    "google_wifi" = ps: with ps; [  ];
+    "google_wifi.sensor" = ps: with ps; [  ];
     "googlehome" = ps: with ps; [  ];
     "googlehome.device_tracker" = ps: with ps; [  ];
     "googlehome.sensor" = ps: with ps; [  ];
+    "gpmdp" = ps: with ps; [  ];
+    "gpmdp.media_player" = ps: with ps; [ websocket_client ];
+    "gpsd" = ps: with ps; [  ];
+    "gpsd.sensor" = ps: with ps; [  ];
     "gpslogger" = ps: with ps; [ aiohttp-cors ];
     "gpslogger.device_tracker" = ps: with ps; [ aiohttp-cors ];
     "graphite" = ps: with ps; [  ];
     "greeneye_monitor" = ps: with ps; [  ];
+    "greeneye_monitor.sensor" = ps: with ps; [  ];
+    "greenwave" = ps: with ps; [  ];
+    "greenwave.light" = ps: with ps; [  ];
     "group" = ps: with ps; [  ];
+    "group.cover" = ps: with ps; [  ];
+    "group.light" = ps: with ps; [  ];
+    "group.notify" = ps: with ps; [  ];
     "group.reproduce_state" = ps: with ps; [  ];
+    "gstreamer" = ps: with ps; [  ];
+    "gstreamer.media_player" = ps: with ps; [  ];
+    "gtfs" = ps: with ps; [  ];
+    "gtfs.sensor" = ps: with ps; [  ];
+    "gtt" = ps: with ps; [  ];
+    "gtt.sensor" = ps: with ps; [  ];
     "habitica" = ps: with ps; [  ];
     "habitica.sensor" = ps: with ps; [  ];
     "hangouts" = ps: with ps; [  ];
@@ -467,6 +700,8 @@
     "hangouts.hangouts_bot" = ps: with ps; [  ];
     "hangouts.intents" = ps: with ps; [  ];
     "hangouts.notify" = ps: with ps; [  ];
+    "harman_kardon_avr" = ps: with ps; [  ];
+    "harman_kardon_avr.media_player" = ps: with ps; [  ];
     "harmony" = ps: with ps; [  ];
     "harmony.remote" = ps: with ps; [  ];
     "hassio" = ps: with ps; [ aiohttp-cors ];
@@ -475,11 +710,28 @@
     "hassio.discovery" = ps: with ps; [  ];
     "hassio.handler" = ps: with ps; [  ];
     "hassio.http" = ps: with ps; [  ];
+    "hassio.ingress" = ps: with ps; [  ];
+    "haveibeenpwned" = ps: with ps; [  ];
+    "haveibeenpwned.sensor" = ps: with ps; [  ];
+    "hddtemp" = ps: with ps; [  ];
+    "hddtemp.sensor" = ps: with ps; [  ];
     "hdmi_cec" = ps: with ps; [  ];
     "hdmi_cec.media_player" = ps: with ps; [  ];
     "hdmi_cec.switch" = ps: with ps; [  ];
+    "heatmiser" = ps: with ps; [  ];
+    "heatmiser.climate" = ps: with ps; [  ];
+    "hikvision" = ps: with ps; [  ];
+    "hikvision.binary_sensor" = ps: with ps; [  ];
+    "hikvisioncam" = ps: with ps; [  ];
+    "hikvisioncam.switch" = ps: with ps; [  ];
+    "hipchat" = ps: with ps; [  ];
+    "hipchat.notify" = ps: with ps; [  ];
     "history" = ps: with ps; [ aiohttp-cors sqlalchemy ];
     "history_graph" = ps: with ps; [ aiohttp-cors sqlalchemy ];
+    "history_stats" = ps: with ps; [  ];
+    "history_stats.sensor" = ps: with ps; [ aiohttp-cors sqlalchemy ];
+    "hitron_coda" = ps: with ps; [  ];
+    "hitron_coda.device_tracker" = ps: with ps; [  ];
     "hive" = ps: with ps; [  ];
     "hive.binary_sensor" = ps: with ps; [  ];
     "hive.climate" = ps: with ps; [  ];
@@ -488,6 +740,8 @@
     "hive.switch" = ps: with ps; [  ];
     "hlk_sw16" = ps: with ps; [  ];
     "hlk_sw16.switch" = ps: with ps; [  ];
+    "homeassistant" = ps: with ps; [  ];
+    "homeassistant.scene" = ps: with ps; [  ];
     "homekit" = ps: with ps; [  ];
     "homekit.const" = ps: with ps; [  ];
     "homekit.util" = ps: with ps; [  ];
@@ -528,6 +782,16 @@
     "homematicip_cloud.weather" = ps: with ps; [  ];
     "homeworks" = ps: with ps; [  ];
     "homeworks.light" = ps: with ps; [  ];
+    "honeywell" = ps: with ps; [  ];
+    "honeywell.climate" = ps: with ps; [  ];
+    "hook" = ps: with ps; [  ];
+    "hook.switch" = ps: with ps; [  ];
+    "horizon" = ps: with ps; [  ];
+    "horizon.media_player" = ps: with ps; [  ];
+    "hp_ilo" = ps: with ps; [  ];
+    "hp_ilo.sensor" = ps: with ps; [  ];
+    "html5" = ps: with ps; [  ];
+    "html5.notify" = ps: with ps; [ aiohttp-cors ];
     "http" = ps: with ps; [ aiohttp-cors ];
     "http.auth" = ps: with ps; [  ];
     "http.ban" = ps: with ps; [  ];
@@ -537,23 +801,39 @@
     "http.real_ip" = ps: with ps; [  ];
     "http.static" = ps: with ps; [  ];
     "http.view" = ps: with ps; [  ];
+    "htu21d" = ps: with ps; [  ];
+    "htu21d.sensor" = ps: with ps; [  ];
     "huawei_lte" = ps: with ps; [  ];
     "huawei_lte.device_tracker" = ps: with ps; [  ];
     "huawei_lte.notify" = ps: with ps; [  ];
     "huawei_lte.sensor" = ps: with ps; [  ];
+    "huawei_router" = ps: with ps; [  ];
+    "huawei_router.device_tracker" = ps: with ps; [  ];
     "hue" = ps: with ps; [ aiohue ];
     "hue.bridge" = ps: with ps; [  ];
     "hue.config_flow" = ps: with ps; [  ];
     "hue.const" = ps: with ps; [  ];
     "hue.errors" = ps: with ps; [  ];
     "hue.light" = ps: with ps; [ aiohue ];
+    "hunterdouglas_powerview" = ps: with ps; [  ];
+    "hunterdouglas_powerview.scene" = ps: with ps; [  ];
     "hydrawise" = ps: with ps; [  ];
     "hydrawise.binary_sensor" = ps: with ps; [  ];
     "hydrawise.sensor" = ps: with ps; [  ];
     "hydrawise.switch" = ps: with ps; [  ];
+    "hydroquebec" = ps: with ps; [  ];
+    "hydroquebec.sensor" = ps: with ps; [  ];
+    "hyperion" = ps: with ps; [  ];
+    "hyperion.light" = ps: with ps; [  ];
+    "ialarm" = ps: with ps; [  ];
+    "ialarm.alarm_control_panel" = ps: with ps; [  ];
+    "icloud" = ps: with ps; [  ];
+    "icloud.device_tracker" = ps: with ps; [  ];
     "idteck_prox" = ps: with ps; [  ];
     "ifttt" = ps: with ps; [ aiohttp-cors pyfttt ];
     "ifttt.alarm_control_panel" = ps: with ps; [ aiohttp-cors pyfttt ];
+    "iglo" = ps: with ps; [  ];
+    "iglo.light" = ps: with ps; [  ];
     "ihc" = ps: with ps; [ defusedxml ];
     "ihc.binary_sensor" = ps: with ps; [ defusedxml ];
     "ihc.const" = ps: with ps; [  ];
@@ -563,19 +843,12 @@
     "ihc.switch" = ps: with ps; [ defusedxml ];
     "ihc.util" = ps: with ps; [  ];
     "image_processing" = ps: with ps; [ aiohttp-cors ];
-    "image_processing.demo" = ps: with ps; [  ];
-    "image_processing.dlib_face_detect" = ps: with ps; [ face_recognition ];
-    "image_processing.dlib_face_identify" = ps: with ps; [ face_recognition ];
-    "image_processing.facebox" = ps: with ps; [  ];
-    "image_processing.microsoft_face_detect" = ps: with ps; [ aiohttp-cors ];
-    "image_processing.microsoft_face_identify" = ps: with ps; [ aiohttp-cors ];
-    "image_processing.openalpr_cloud" = ps: with ps; [  ];
-    "image_processing.openalpr_local" = ps: with ps; [  ];
-    "image_processing.opencv" = ps: with ps; [ numpy ];
-    "image_processing.qrcode" = ps: with ps; [ pillow ];
-    "image_processing.seven_segments" = ps: with ps; [  ];
-    "image_processing.tensorflow" = ps: with ps; [ numpy pillow protobuf ];
+    "imap" = ps: with ps; [  ];
+    "imap.sensor" = ps: with ps; [  ];
+    "imap_email_content" = ps: with ps; [  ];
+    "imap_email_content.sensor" = ps: with ps; [  ];
     "influxdb" = ps: with ps; [ influxdb ];
+    "influxdb.sensor" = ps: with ps; [ influxdb ];
     "input_boolean" = ps: with ps; [  ];
     "input_datetime" = ps: with ps; [  ];
     "input_number" = ps: with ps; [  ];
@@ -590,6 +863,8 @@
     "insteon.switch" = ps: with ps; [  ];
     "insteon_local" = ps: with ps; [  ];
     "insteon_plm" = ps: with ps; [  ];
+    "integration" = ps: with ps; [  ];
+    "integration.sensor" = ps: with ps; [  ];
     "intent_script" = ps: with ps; [  ];
     "introduction" = ps: with ps; [  ];
     "ios" = ps: with ps; [ aiohttp-cors zeroconf ];
@@ -603,6 +878,12 @@
     "ipma.config_flow" = ps: with ps; [  ];
     "ipma.const" = ps: with ps; [  ];
     "ipma.weather" = ps: with ps; [  ];
+    "irish_rail_transport" = ps: with ps; [  ];
+    "irish_rail_transport.sensor" = ps: with ps; [  ];
+    "islamic_prayer_times" = ps: with ps; [  ];
+    "islamic_prayer_times.sensor" = ps: with ps; [  ];
+    "iss" = ps: with ps; [  ];
+    "iss.binary_sensor" = ps: with ps; [  ];
     "isy994" = ps: with ps; [  ];
     "isy994.binary_sensor" = ps: with ps; [  ];
     "isy994.cover" = ps: with ps; [  ];
@@ -613,15 +894,25 @@
     "isy994.switch" = ps: with ps; [  ];
     "itach" = ps: with ps; [  ];
     "itach.remote" = ps: with ps; [  ];
+    "itunes" = ps: with ps; [  ];
+    "itunes.media_player" = ps: with ps; [  ];
+    "jewish_calendar" = ps: with ps; [  ];
+    "jewish_calendar.sensor" = ps: with ps; [  ];
     "joaoapps_join" = ps: with ps; [  ];
     "joaoapps_join.notify" = ps: with ps; [  ];
     "juicenet" = ps: with ps; [  ];
     "juicenet.sensor" = ps: with ps; [  ];
+    "kankun" = ps: with ps; [  ];
+    "kankun.switch" = ps: with ps; [  ];
+    "keenetic_ndms2" = ps: with ps; [  ];
+    "keenetic_ndms2.device_tracker" = ps: with ps; [  ];
     "keyboard" = ps: with ps; [  ];
     "keyboard_remote" = ps: with ps; [ evdev ];
     "kira" = ps: with ps; [  ];
     "kira.remote" = ps: with ps; [  ];
     "kira.sensor" = ps: with ps; [  ];
+    "kiwi" = ps: with ps; [  ];
+    "kiwi.lock" = ps: with ps; [  ];
     "knx" = ps: with ps; [  ];
     "knx.binary_sensor" = ps: with ps; [  ];
     "knx.climate" = ps: with ps; [  ];
@@ -631,80 +922,91 @@
     "knx.scene" = ps: with ps; [  ];
     "knx.sensor" = ps: with ps; [  ];
     "knx.switch" = ps: with ps; [  ];
+    "kodi" = ps: with ps; [  ];
+    "kodi.media_player" = ps: with ps; [ jsonrpc-async jsonrpc-websocket ];
+    "kodi.notify" = ps: with ps; [ jsonrpc-async ];
     "konnected" = ps: with ps; [ aiohttp-cors ];
     "konnected.binary_sensor" = ps: with ps; [ aiohttp-cors ];
     "konnected.const" = ps: with ps; [  ];
     "konnected.handlers" = ps: with ps; [  ];
     "konnected.sensor" = ps: with ps; [ aiohttp-cors ];
     "konnected.switch" = ps: with ps; [ aiohttp-cors ];
+    "kwb" = ps: with ps; [  ];
+    "kwb.sensor" = ps: with ps; [  ];
+    "lacrosse" = ps: with ps; [  ];
+    "lacrosse.sensor" = ps: with ps; [  ];
     "lametric" = ps: with ps; [  ];
     "lametric.notify" = ps: with ps; [  ];
+    "lannouncer" = ps: with ps; [  ];
+    "lannouncer.notify" = ps: with ps; [  ];
+    "lastfm" = ps: with ps; [  ];
+    "lastfm.sensor" = ps: with ps; [ pylast ];
+    "launch_library" = ps: with ps; [  ];
+    "launch_library.sensor" = ps: with ps; [  ];
     "lcn" = ps: with ps; [  ];
     "lcn.const" = ps: with ps; [  ];
     "lcn.cover" = ps: with ps; [  ];
     "lcn.light" = ps: with ps; [  ];
+    "lcn.sensor" = ps: with ps; [  ];
     "lcn.switch" = ps: with ps; [  ];
+    "lg_netcast" = ps: with ps; [  ];
+    "lg_netcast.media_player" = ps: with ps; [  ];
+    "lg_soundbar" = ps: with ps; [  ];
+    "lg_soundbar.media_player" = ps: with ps; [  ];
     "lifx" = ps: with ps; [ aiolifx ];
     "lifx.light" = ps: with ps; [ aiolifx aiolifx-effects ];
+    "lifx_cloud" = ps: with ps; [  ];
+    "lifx_cloud.scene" = ps: with ps; [  ];
+    "lifx_legacy" = ps: with ps; [  ];
+    "lifx_legacy.light" = ps: with ps; [  ];
     "light" = ps: with ps; [  ];
-    "light.avion" = ps: with ps; [  ];
-    "light.blinksticklight" = ps: with ps; [ BlinkStick ];
-    "light.blinkt" = ps: with ps; [  ];
-    "light.decora" = ps: with ps; [  ];
-    "light.decora_wifi" = ps: with ps; [  ];
-    "light.demo" = ps: with ps; [  ];
-    "light.everlights" = ps: with ps; [  ];
-    "light.flux_led" = ps: with ps; [  ];
-    "light.futurenow" = ps: with ps; [  ];
-    "light.greenwave" = ps: with ps; [  ];
-    "light.group" = ps: with ps; [  ];
-    "light.hyperion" = ps: with ps; [  ];
-    "light.iglo" = ps: with ps; [  ];
-    "light.lifx_legacy" = ps: with ps; [  ];
-    "light.limitlessled" = ps: with ps; [ limitlessled ];
-    "light.litejet" = ps: with ps; [  ];
-    "light.lw12wifi" = ps: with ps; [  ];
-    "light.mystrom" = ps: with ps; [  ];
-    "light.nanoleaf" = ps: with ps; [  ];
-    "light.niko_home_control" = ps: with ps; [  ];
-    "light.opple" = ps: with ps; [  ];
-    "light.osramlightify" = ps: with ps; [  ];
-    "light.piglow" = ps: with ps; [  ];
-    "light.rflink" = ps: with ps; [  ];
-    "light.rpi_gpio_pwm" = ps: with ps; [  ];
-    "light.sensehat" = ps: with ps; [  ];
-    "light.switch" = ps: with ps; [  ];
-    "light.template" = ps: with ps; [  ];
-    "light.tikteck" = ps: with ps; [  ];
-    "light.x10" = ps: with ps; [  ];
-    "light.yeelight" = ps: with ps; [  ];
-    "light.yeelightsunflower" = ps: with ps; [  ];
-    "light.zengge" = ps: with ps; [  ];
     "lightwave" = ps: with ps; [  ];
     "lightwave.light" = ps: with ps; [  ];
     "lightwave.switch" = ps: with ps; [  ];
+    "limitlessled" = ps: with ps; [  ];
+    "limitlessled.light" = ps: with ps; [ limitlessled ];
+    "linksys_ap" = ps: with ps; [  ];
+    "linksys_ap.device_tracker" = ps: with ps; [ beautifulsoup4 ];
+    "linksys_smart" = ps: with ps; [  ];
+    "linksys_smart.device_tracker" = ps: with ps; [  ];
+    "linky" = ps: with ps; [  ];
+    "linky.sensor" = ps: with ps; [  ];
     "linode" = ps: with ps; [ linode-api ];
     "linode.binary_sensor" = ps: with ps; [ linode-api ];
     "linode.switch" = ps: with ps; [ linode-api ];
+    "linux_battery" = ps: with ps; [  ];
+    "linux_battery.sensor" = ps: with ps; [ batinfo ];
     "lirc" = ps: with ps; [  ];
     "litejet" = ps: with ps; [  ];
+    "litejet.light" = ps: with ps; [  ];
+    "litejet.scene" = ps: with ps; [  ];
+    "litejet.switch" = ps: with ps; [  ];
+    "liveboxplaytv" = ps: with ps; [  ];
+    "liveboxplaytv.media_player" = ps: with ps; [  ];
+    "llamalab_automate" = ps: with ps; [  ];
+    "llamalab_automate.notify" = ps: with ps; [  ];
+    "local_file" = ps: with ps; [  ];
+    "local_file.camera" = ps: with ps; [  ];
     "locative" = ps: with ps; [ aiohttp-cors ];
     "locative.device_tracker" = ps: with ps; [ aiohttp-cors ];
     "lock" = ps: with ps; [  ];
-    "lock.demo" = ps: with ps; [  ];
-    "lock.kiwi" = ps: with ps; [  ];
-    "lock.lockitron" = ps: with ps; [  ];
-    "lock.nello" = ps: with ps; [  ];
-    "lock.nuki" = ps: with ps; [  ];
-    "lock.sesame" = ps: with ps; [  ];
-    "lock.template" = ps: with ps; [  ];
+    "lockitron" = ps: with ps; [  ];
+    "lockitron.lock" = ps: with ps; [  ];
     "logbook" = ps: with ps; [ aiohttp-cors sqlalchemy ];
     "logentries" = ps: with ps; [  ];
     "logger" = ps: with ps; [  ];
     "logi_circle" = ps: with ps; [  ];
     "logi_circle.camera" = ps: with ps; [  ];
     "logi_circle.sensor" = ps: with ps; [  ];
+    "london_air" = ps: with ps; [  ];
+    "london_air.sensor" = ps: with ps; [  ];
+    "london_underground" = ps: with ps; [  ];
+    "london_underground.sensor" = ps: with ps; [  ];
+    "loopenergy" = ps: with ps; [  ];
+    "loopenergy.sensor" = ps: with ps; [  ];
     "lovelace" = ps: with ps; [  ];
+    "luci" = ps: with ps; [  ];
+    "luci.device_tracker" = ps: with ps; [  ];
     "luftdaten" = ps: with ps; [ luftdaten ];
     "luftdaten.config_flow" = ps: with ps; [  ];
     "luftdaten.const" = ps: with ps; [  ];
@@ -723,12 +1025,24 @@
     "lutron_caseta.light" = ps: with ps; [  ];
     "lutron_caseta.scene" = ps: with ps; [  ];
     "lutron_caseta.switch" = ps: with ps; [  ];
+    "lw12wifi" = ps: with ps; [  ];
+    "lw12wifi.light" = ps: with ps; [  ];
+    "lyft" = ps: with ps; [  ];
+    "lyft.sensor" = ps: with ps; [  ];
+    "magicseaweed" = ps: with ps; [  ];
+    "magicseaweed.sensor" = ps: with ps; [  ];
     "mailbox" = ps: with ps; [ aiohttp-cors ];
-    "mailbox.asterisk_cdr" = ps: with ps; [  ];
-    "mailbox.demo" = ps: with ps; [  ];
     "mailgun" = ps: with ps; [ aiohttp-cors ];
     "mailgun.notify" = ps: with ps; [ aiohttp-cors ];
+    "manual" = ps: with ps; [  ];
+    "manual.alarm_control_panel" = ps: with ps; [  ];
+    "manual_mqtt" = ps: with ps; [  ];
+    "manual_mqtt.alarm_control_panel" = ps: with ps; [ paho-mqtt ];
     "map" = ps: with ps; [  ];
+    "marytts" = ps: with ps; [  ];
+    "marytts.tts" = ps: with ps; [  ];
+    "mastodon" = ps: with ps; [  ];
+    "mastodon.notify" = ps: with ps; [  ];
     "matrix" = ps: with ps; [ matrix-client ];
     "matrix.notify" = ps: with ps; [ matrix-client ];
     "maxcube" = ps: with ps; [  ];
@@ -736,76 +1050,55 @@
     "maxcube.climate" = ps: with ps; [  ];
     "media_extractor" = ps: with ps; [ aiohttp-cors youtube-dl-light ];
     "media_player" = ps: with ps; [ aiohttp-cors ];
-    "media_player.anthemav" = ps: with ps; [  ];
-    "media_player.aquostv" = ps: with ps; [  ];
-    "media_player.blackbird" = ps: with ps; [  ];
-    "media_player.bluesound" = ps: with ps; [ xmltodict ];
-    "media_player.braviatv" = ps: with ps; [  ];
-    "media_player.channels" = ps: with ps; [  ];
-    "media_player.clementine" = ps: with ps; [  ];
-    "media_player.cmus" = ps: with ps; [  ];
     "media_player.const" = ps: with ps; [  ];
-    "media_player.demo" = ps: with ps; [  ];
-    "media_player.denon" = ps: with ps; [  ];
-    "media_player.denonavr" = ps: with ps; [  ];
-    "media_player.directv" = ps: with ps; [  ];
-    "media_player.dlna_dmr" = ps: with ps; [  ];
-    "media_player.dunehd" = ps: with ps; [  ];
-    "media_player.emby" = ps: with ps; [  ];
-    "media_player.epson" = ps: with ps; [  ];
-    "media_player.frontier_silicon" = ps: with ps; [  ];
-    "media_player.gpmdp" = ps: with ps; [ websocket_client ];
-    "media_player.gstreamer" = ps: with ps; [  ];
-    "media_player.harman_kardon_avr" = ps: with ps; [  ];
-    "media_player.horizon" = ps: with ps; [  ];
-    "media_player.itunes" = ps: with ps; [  ];
-    "media_player.kodi" = ps: with ps; [ jsonrpc-async jsonrpc-websocket ];
-    "media_player.lg_netcast" = ps: with ps; [  ];
-    "media_player.lg_soundbar" = ps: with ps; [  ];
-    "media_player.liveboxplaytv" = ps: with ps; [  ];
-    "media_player.mediaroom" = ps: with ps; [  ];
-    "media_player.monoprice" = ps: with ps; [  ];
-    "media_player.mpchc" = ps: with ps; [  ];
-    "media_player.mpd" = ps: with ps; [ mpd2 ];
-    "media_player.nad" = ps: with ps; [  ];
-    "media_player.onkyo" = ps: with ps; [ onkyo-eiscp ];
-    "media_player.openhome" = ps: with ps; [  ];
-    "media_player.panasonic_bluray" = ps: with ps; [  ];
-    "media_player.panasonic_viera" = ps: with ps; [ wakeonlan ];
-    "media_player.pandora" = ps: with ps; [ pexpect ];
-    "media_player.philips_js" = ps: with ps; [  ];
-    "media_player.pioneer" = ps: with ps; [  ];
-    "media_player.pjlink" = ps: with ps; [  ];
-    "media_player.plex" = ps: with ps; [  ];
     "media_player.reproduce_state" = ps: with ps; [  ];
-    "media_player.russound_rio" = ps: with ps; [  ];
-    "media_player.russound_rnet" = ps: with ps; [  ];
-    "media_player.samsungtv" = ps: with ps; [ wakeonlan ];
-    "media_player.snapcast" = ps: with ps; [ snapcast ];
-    "media_player.songpal" = ps: with ps; [  ];
-    "media_player.soundtouch" = ps: with ps; [ libsoundtouch ];
-    "media_player.spotify" = ps: with ps; [ aiohttp-cors ];
-    "media_player.squeezebox" = ps: with ps; [  ];
-    "media_player.ue_smart_radio" = ps: with ps; [  ];
-    "media_player.universal" = ps: with ps; [  ];
-    "media_player.vizio" = ps: with ps; [  ];
-    "media_player.vlc" = ps: with ps; [  ];
-    "media_player.volumio" = ps: with ps; [  ];
-    "media_player.xiaomi_tv" = ps: with ps; [  ];
-    "media_player.yamaha" = ps: with ps; [  ];
-    "media_player.yamaha_musiccast" = ps: with ps; [  ];
-    "media_player.ziggo_mediabox_xl" = ps: with ps; [  ];
+    "mediaroom" = ps: with ps; [  ];
+    "mediaroom.media_player" = ps: with ps; [  ];
     "melissa" = ps: with ps; [  ];
+    "melissa.climate" = ps: with ps; [  ];
+    "meraki" = ps: with ps; [  ];
+    "meraki.device_tracker" = ps: with ps; [ aiohttp-cors ];
+    "message_bird" = ps: with ps; [  ];
+    "message_bird.notify" = ps: with ps; [  ];
+    "met" = ps: with ps; [  ];
+    "met.weather" = ps: with ps; [  ];
     "meteo_france" = ps: with ps; [  ];
     "meteo_france.sensor" = ps: with ps; [  ];
     "meteo_france.weather" = ps: with ps; [  ];
+    "metoffice" = ps: with ps; [  ];
+    "metoffice.sensor" = ps: with ps; [  ];
+    "metoffice.weather" = ps: with ps; [  ];
+    "mfi" = ps: with ps; [  ];
+    "mfi.sensor" = ps: with ps; [  ];
+    "mfi.switch" = ps: with ps; [  ];
+    "mhz19" = ps: with ps; [  ];
+    "mhz19.sensor" = ps: with ps; [  ];
+    "microsoft" = ps: with ps; [  ];
+    "microsoft.tts" = ps: with ps; [  ];
     "microsoft_face" = ps: with ps; [ aiohttp-cors ];
+    "microsoft_face_detect" = ps: with ps; [  ];
+    "microsoft_face_detect.image_processing" = ps: with ps; [ aiohttp-cors ];
+    "microsoft_face_identify" = ps: with ps; [  ];
+    "microsoft_face_identify.image_processing" = ps: with ps; [ aiohttp-cors ];
+    "miflora" = ps: with ps; [  ];
+    "miflora.sensor" = ps: with ps; [  ];
+    "mikrotik" = ps: with ps; [  ];
+    "mikrotik.device_tracker" = ps: with ps; [  ];
+    "mill" = ps: with ps; [  ];
+    "mill.climate" = ps: with ps; [  ];
+    "min_max" = ps: with ps; [  ];
+    "min_max.sensor" = ps: with ps; [  ];
+    "mitemp_bt" = ps: with ps; [  ];
+    "mitemp_bt.sensor" = ps: with ps; [  ];
+    "mjpeg" = ps: with ps; [  ];
+    "mjpeg.camera" = ps: with ps; [  ];
     "mobile_app" = ps: with ps; [ pynacl aiohttp-cors ];
     "mobile_app.binary_sensor" = ps: with ps; [ pynacl aiohttp-cors ];
     "mobile_app.const" = ps: with ps; [  ];
     "mobile_app.entity" = ps: with ps; [  ];
     "mobile_app.helpers" = ps: with ps; [  ];
     "mobile_app.http_api" = ps: with ps; [  ];
+    "mobile_app.notify" = ps: with ps; [ pynacl aiohttp-cors ];
     "mobile_app.sensor" = ps: with ps; [ pynacl aiohttp-cors ];
     "mobile_app.webhook" = ps: with ps; [  ];
     "mobile_app.websocket_api" = ps: with ps; [  ];
@@ -817,6 +1110,22 @@
     "modbus.climate" = ps: with ps; [  ];
     "modbus.sensor" = ps: with ps; [  ];
     "modbus.switch" = ps: with ps; [  ];
+    "modem_callerid" = ps: with ps; [  ];
+    "modem_callerid.sensor" = ps: with ps; [  ];
+    "mold_indicator" = ps: with ps; [  ];
+    "mold_indicator.sensor" = ps: with ps; [  ];
+    "monoprice" = ps: with ps; [  ];
+    "monoprice.media_player" = ps: with ps; [  ];
+    "moon" = ps: with ps; [  ];
+    "moon.sensor" = ps: with ps; [  ];
+    "mopar" = ps: with ps; [  ];
+    "mopar.lock" = ps: with ps; [  ];
+    "mopar.sensor" = ps: with ps; [  ];
+    "mopar.switch" = ps: with ps; [  ];
+    "mpchc" = ps: with ps; [  ];
+    "mpchc.media_player" = ps: with ps; [  ];
+    "mpd" = ps: with ps; [  ];
+    "mpd.media_player" = ps: with ps; [ mpd2 ];
     "mqtt" = ps: with ps; [ paho-mqtt ];
     "mqtt.alarm_control_panel" = ps: with ps; [ paho-mqtt ];
     "mqtt.binary_sensor" = ps: with ps; [ paho-mqtt ];
@@ -836,11 +1145,20 @@
     "mqtt.switch" = ps: with ps; [ paho-mqtt ];
     "mqtt.vacuum" = ps: with ps; [ paho-mqtt ];
     "mqtt_eventstream" = ps: with ps; [ paho-mqtt ];
+    "mqtt_json" = ps: with ps; [  ];
+    "mqtt_json.device_tracker" = ps: with ps; [ paho-mqtt ];
+    "mqtt_room" = ps: with ps; [  ];
+    "mqtt_room.sensor" = ps: with ps; [ paho-mqtt ];
     "mqtt_statestream" = ps: with ps; [ paho-mqtt ];
+    "mvglive" = ps: with ps; [  ];
+    "mvglive.sensor" = ps: with ps; [ PyMVGLive ];
     "mychevy" = ps: with ps; [  ];
     "mychevy.binary_sensor" = ps: with ps; [  ];
     "mychevy.sensor" = ps: with ps; [  ];
     "mycroft" = ps: with ps; [  ];
+    "mycroft.notify" = ps: with ps; [  ];
+    "myq" = ps: with ps; [  ];
+    "myq.cover" = ps: with ps; [  ];
     "mysensors" = ps: with ps; [  ];
     "mysensors.binary_sensor" = ps: with ps; [  ];
     "mysensors.climate" = ps: with ps; [  ];
@@ -855,13 +1173,27 @@
     "mysensors.notify" = ps: with ps; [  ];
     "mysensors.sensor" = ps: with ps; [  ];
     "mysensors.switch" = ps: with ps; [  ];
+    "mystrom" = ps: with ps; [  ];
+    "mystrom.binary_sensor" = ps: with ps; [ aiohttp-cors ];
+    "mystrom.light" = ps: with ps; [  ];
+    "mystrom.switch" = ps: with ps; [  ];
     "mythicbeastsdns" = ps: with ps; [  ];
+    "nad" = ps: with ps; [  ];
+    "nad.media_player" = ps: with ps; [  ];
     "namecheapdns" = ps: with ps; [ defusedxml ];
+    "nanoleaf" = ps: with ps; [  ];
+    "nanoleaf.light" = ps: with ps; [  ];
     "neato" = ps: with ps; [ pybotvac ];
     "neato.camera" = ps: with ps; [ pybotvac ];
     "neato.switch" = ps: with ps; [ pybotvac ];
     "neato.vacuum" = ps: with ps; [ pybotvac ];
+    "nederlandse_spoorwegen" = ps: with ps; [  ];
+    "nederlandse_spoorwegen.sensor" = ps: with ps; [  ];
+    "nello" = ps: with ps; [  ];
+    "nello.lock" = ps: with ps; [  ];
     "ness_alarm" = ps: with ps; [  ];
+    "ness_alarm.alarm_control_panel" = ps: with ps; [  ];
+    "ness_alarm.binary_sensor" = ps: with ps; [  ];
     "nest" = ps: with ps; [  ];
     "nest.binary_sensor" = ps: with ps; [  ];
     "nest.camera" = ps: with ps; [  ];
@@ -875,70 +1207,93 @@
     "netatmo.camera" = ps: with ps; [ aiohttp-cors ];
     "netatmo.climate" = ps: with ps; [ aiohttp-cors ];
     "netatmo.sensor" = ps: with ps; [ aiohttp-cors ];
+    "netatmo_public" = ps: with ps; [  ];
+    "netatmo_public.sensor" = ps: with ps; [ aiohttp-cors ];
+    "netdata" = ps: with ps; [  ];
+    "netdata.sensor" = ps: with ps; [  ];
+    "netgear" = ps: with ps; [  ];
+    "netgear.device_tracker" = ps: with ps; [  ];
     "netgear_lte" = ps: with ps; [  ];
     "netgear_lte.notify" = ps: with ps; [  ];
     "netgear_lte.sensor" = ps: with ps; [  ];
+    "netgear_lte.sensor_types" = ps: with ps; [  ];
+    "netio" = ps: with ps; [  ];
+    "netio.switch" = ps: with ps; [ aiohttp-cors ];
+    "neurio_energy" = ps: with ps; [  ];
+    "neurio_energy.sensor" = ps: with ps; [  ];
+    "nfandroidtv" = ps: with ps; [  ];
+    "nfandroidtv.notify" = ps: with ps; [  ];
+    "niko_home_control" = ps: with ps; [  ];
+    "niko_home_control.light" = ps: with ps; [  ];
+    "nilu" = ps: with ps; [  ];
+    "nilu.air_quality" = ps: with ps; [  ];
     "nissan_leaf" = ps: with ps; [  ];
     "nissan_leaf.binary_sensor" = ps: with ps; [  ];
     "nissan_leaf.device_tracker" = ps: with ps; [  ];
     "nissan_leaf.sensor" = ps: with ps; [  ];
     "nissan_leaf.switch" = ps: with ps; [  ];
+    "nmap_tracker" = ps: with ps; [  ];
+    "nmap_tracker.device_tracker" = ps: with ps; [  ];
+    "nmbs" = ps: with ps; [  ];
+    "nmbs.sensor" = ps: with ps; [  ];
     "no_ip" = ps: with ps; [  ];
+    "noaa_tides" = ps: with ps; [  ];
+    "noaa_tides.sensor" = ps: with ps; [  ];
+    "norway_air" = ps: with ps; [  ];
+    "norway_air.air_quality" = ps: with ps; [  ];
     "notify" = ps: with ps; [  ];
-    "notify.apns" = ps: with ps; [  ];
-    "notify.aws_lambda" = ps: with ps; [ boto3 ];
-    "notify.aws_sns" = ps: with ps; [ boto3 ];
-    "notify.aws_sqs" = ps: with ps; [ boto3 ];
-    "notify.ciscospark" = ps: with ps; [  ];
-    "notify.clickatell" = ps: with ps; [  ];
-    "notify.clicksend" = ps: with ps; [  ];
-    "notify.clicksend_tts" = ps: with ps; [  ];
-    "notify.command_line" = ps: with ps; [  ];
-    "notify.demo" = ps: with ps; [  ];
-    "notify.discord" = ps: with ps; [ discordpy ];
-    "notify.facebook" = ps: with ps; [  ];
-    "notify.file" = ps: with ps; [  ];
-    "notify.flock" = ps: with ps; [  ];
-    "notify.free_mobile" = ps: with ps; [  ];
-    "notify.gntp" = ps: with ps; [  ];
-    "notify.group" = ps: with ps; [  ];
-    "notify.hipchat" = ps: with ps; [  ];
-    "notify.html5" = ps: with ps; [ aiohttp-cors ];
-    "notify.kodi" = ps: with ps; [ jsonrpc-async ];
-    "notify.lannouncer" = ps: with ps; [  ];
-    "notify.llamalab_automate" = ps: with ps; [  ];
-    "notify.mastodon" = ps: with ps; [  ];
-    "notify.message_bird" = ps: with ps; [  ];
-    "notify.mycroft" = ps: with ps; [  ];
-    "notify.nfandroidtv" = ps: with ps; [  ];
-    "notify.prowl" = ps: with ps; [  ];
-    "notify.pushbullet" = ps: with ps; [ pushbullet ];
-    "notify.pushetta" = ps: with ps; [  ];
-    "notify.pushover" = ps: with ps; [ python-pushover ];
-    "notify.pushsafer" = ps: with ps; [  ];
-    "notify.rest" = ps: with ps; [  ];
-    "notify.rocketchat" = ps: with ps; [  ];
-    "notify.sendgrid" = ps: with ps; [  ];
-    "notify.simplepush" = ps: with ps; [  ];
-    "notify.slack" = ps: with ps; [  ];
-    "notify.smtp" = ps: with ps; [  ];
-    "notify.stride" = ps: with ps; [  ];
-    "notify.synology_chat" = ps: with ps; [  ];
-    "notify.syslog" = ps: with ps; [  ];
-    "notify.telegram" = ps: with ps; [ python-telegram-bot ];
-    "notify.twilio_call" = ps: with ps; [ aiohttp-cors twilio ];
-    "notify.twilio_sms" = ps: with ps; [ aiohttp-cors twilio ];
-    "notify.twitter" = ps: with ps; [  ];
-    "notify.xmpp" = ps: with ps; [ slixmpp ];
-    "notify.yessssms" = ps: with ps; [  ];
+    "nsw_fuel_station" = ps: with ps; [  ];
+    "nsw_fuel_station.sensor" = ps: with ps; [  ];
+    "nsw_rural_fire_service_feed" = ps: with ps; [  ];
+    "nsw_rural_fire_service_feed.geo_location" = ps: with ps; [  ];
     "nuheat" = ps: with ps; [  ];
+    "nuheat.climate" = ps: with ps; [  ];
     "nuimo_controller" = ps: with ps; [  ];
+    "nuki" = ps: with ps; [  ];
+    "nuki.lock" = ps: with ps; [  ];
+    "nut" = ps: with ps; [  ];
+    "nut.sensor" = ps: with ps; [  ];
+    "nx584" = ps: with ps; [  ];
+    "nx584.alarm_control_panel" = ps: with ps; [  ];
+    "nx584.binary_sensor" = ps: with ps; [  ];
+    "nzbget" = ps: with ps; [  ];
+    "nzbget.sensor" = ps: with ps; [  ];
     "octoprint" = ps: with ps; [  ];
     "octoprint.binary_sensor" = ps: with ps; [  ];
     "octoprint.sensor" = ps: with ps; [  ];
+    "oem" = ps: with ps; [  ];
+    "oem.climate" = ps: with ps; [  ];
+    "ohmconnect" = ps: with ps; [  ];
+    "ohmconnect.sensor" = ps: with ps; [ defusedxml ];
     "onboarding" = ps: with ps; [ aiohttp-cors ];
     "onboarding.const" = ps: with ps; [  ];
     "onboarding.views" = ps: with ps; [  ];
+    "onewire" = ps: with ps; [  ];
+    "onewire.sensor" = ps: with ps; [  ];
+    "onkyo" = ps: with ps; [  ];
+    "onkyo.media_player" = ps: with ps; [ onkyo-eiscp ];
+    "onvif" = ps: with ps; [  ];
+    "onvif.camera" = ps: with ps; [ ha-ffmpeg ];
+    "openalpr_cloud" = ps: with ps; [  ];
+    "openalpr_cloud.image_processing" = ps: with ps; [  ];
+    "openalpr_local" = ps: with ps; [  ];
+    "openalpr_local.image_processing" = ps: with ps; [  ];
+    "opencv" = ps: with ps; [  ];
+    "opencv.image_processing" = ps: with ps; [ numpy ];
+    "openevse" = ps: with ps; [  ];
+    "openevse.sensor" = ps: with ps; [  ];
+    "openexchangerates" = ps: with ps; [  ];
+    "openexchangerates.sensor" = ps: with ps; [  ];
+    "opengarage" = ps: with ps; [  ];
+    "opengarage.cover" = ps: with ps; [  ];
+    "openhardwaremonitor" = ps: with ps; [  ];
+    "openhardwaremonitor.sensor" = ps: with ps; [  ];
+    "openhome" = ps: with ps; [  ];
+    "openhome.media_player" = ps: with ps; [  ];
+    "opensensemap" = ps: with ps; [  ];
+    "opensensemap.air_quality" = ps: with ps; [  ];
+    "opensky" = ps: with ps; [  ];
+    "opensky.sensor" = ps: with ps; [  ];
     "opentherm_gw" = ps: with ps; [  ];
     "opentherm_gw.binary_sensor" = ps: with ps; [  ];
     "opentherm_gw.climate" = ps: with ps; [  ];
@@ -948,6 +1303,17 @@
     "openuv.config_flow" = ps: with ps; [  ];
     "openuv.const" = ps: with ps; [  ];
     "openuv.sensor" = ps: with ps; [  ];
+    "openweathermap" = ps: with ps; [  ];
+    "openweathermap.sensor" = ps: with ps; [ pyowm ];
+    "openweathermap.weather" = ps: with ps; [ pyowm ];
+    "opple" = ps: with ps; [  ];
+    "opple.light" = ps: with ps; [  ];
+    "orvibo" = ps: with ps; [  ];
+    "orvibo.switch" = ps: with ps; [  ];
+    "osramlightify" = ps: with ps; [  ];
+    "osramlightify.light" = ps: with ps; [  ];
+    "otp" = ps: with ps; [  ];
+    "otp.sensor" = ps: with ps; [ pyotp ];
     "owlet" = ps: with ps; [  ];
     "owlet.binary_sensor" = ps: with ps; [  ];
     "owlet.const" = ps: with ps; [  ];
@@ -955,30 +1321,95 @@
     "owntracks" = ps: with ps; [ pynacl aiohttp-cors ];
     "owntracks.config_flow" = ps: with ps; [  ];
     "owntracks.device_tracker" = ps: with ps; [ pynacl aiohttp-cors ];
+    "panasonic_bluray" = ps: with ps; [  ];
+    "panasonic_bluray.media_player" = ps: with ps; [  ];
+    "panasonic_viera" = ps: with ps; [  ];
+    "panasonic_viera.media_player" = ps: with ps; [ wakeonlan ];
+    "pandora" = ps: with ps; [  ];
+    "pandora.media_player" = ps: with ps; [ pexpect ];
     "panel_custom" = ps: with ps; [ aiohttp-cors ];
     "panel_iframe" = ps: with ps; [ aiohttp-cors ];
+    "pencom" = ps: with ps; [  ];
+    "pencom.switch" = ps: with ps; [  ];
     "persistent_notification" = ps: with ps; [  ];
     "person" = ps: with ps; [  ];
+    "philips_js" = ps: with ps; [  ];
+    "philips_js.media_player" = ps: with ps; [  ];
+    "pi_hole" = ps: with ps; [  ];
+    "pi_hole.sensor" = ps: with ps; [  ];
+    "picotts" = ps: with ps; [  ];
+    "picotts.tts" = ps: with ps; [  ];
+    "piglow" = ps: with ps; [  ];
+    "piglow.light" = ps: with ps; [  ];
     "pilight" = ps: with ps; [  ];
     "pilight.binary_sensor" = ps: with ps; [  ];
     "pilight.sensor" = ps: with ps; [  ];
     "pilight.switch" = ps: with ps; [  ];
+    "ping" = ps: with ps; [  ];
+    "ping.binary_sensor" = ps: with ps; [  ];
+    "ping.device_tracker" = ps: with ps; [  ];
+    "pioneer" = ps: with ps; [  ];
+    "pioneer.media_player" = ps: with ps; [  ];
+    "pjlink" = ps: with ps; [  ];
+    "pjlink.media_player" = ps: with ps; [  ];
     "plant" = ps: with ps; [  ];
+    "plex" = ps: with ps; [  ];
+    "plex.media_player" = ps: with ps; [  ];
+    "plex.sensor" = ps: with ps; [  ];
     "plum_lightpad" = ps: with ps; [  ];
     "plum_lightpad.light" = ps: with ps; [  ];
+    "pocketcasts" = ps: with ps; [  ];
+    "pocketcasts.sensor" = ps: with ps; [  ];
     "point" = ps: with ps; [ aiohttp-cors ];
     "point.alarm_control_panel" = ps: with ps; [  ];
     "point.binary_sensor" = ps: with ps; [  ];
     "point.config_flow" = ps: with ps; [  ];
     "point.const" = ps: with ps; [  ];
     "point.sensor" = ps: with ps; [  ];
+    "pollen" = ps: with ps; [  ];
+    "pollen.sensor" = ps: with ps; [ numpy ];
+    "postnl" = ps: with ps; [  ];
+    "postnl.sensor" = ps: with ps; [  ];
+    "prezzibenzina" = ps: with ps; [  ];
+    "prezzibenzina.sensor" = ps: with ps; [  ];
+    "proliphix" = ps: with ps; [  ];
+    "proliphix.climate" = ps: with ps; [  ];
     "prometheus" = ps: with ps; [ aiohttp-cors prometheus_client ];
+    "prowl" = ps: with ps; [  ];
+    "prowl.notify" = ps: with ps; [  ];
     "proximity" = ps: with ps; [  ];
+    "proxy" = ps: with ps; [  ];
+    "proxy.camera" = ps: with ps; [ pillow ];
     "ps4" = ps: with ps; [  ];
     "ps4.config_flow" = ps: with ps; [  ];
     "ps4.const" = ps: with ps; [  ];
     "ps4.media_player" = ps: with ps; [  ];
+    "pulseaudio_loopback" = ps: with ps; [  ];
+    "pulseaudio_loopback.switch" = ps: with ps; [  ];
+    "push" = ps: with ps; [  ];
+    "push.camera" = ps: with ps; [ aiohttp-cors ];
+    "pushbullet" = ps: with ps; [  ];
+    "pushbullet.notify" = ps: with ps; [ pushbullet ];
+    "pushbullet.sensor" = ps: with ps; [ pushbullet ];
+    "pushetta" = ps: with ps; [  ];
+    "pushetta.notify" = ps: with ps; [  ];
+    "pushover" = ps: with ps; [  ];
+    "pushover.notify" = ps: with ps; [ python-pushover ];
+    "pushsafer" = ps: with ps; [  ];
+    "pushsafer.notify" = ps: with ps; [  ];
+    "pvoutput" = ps: with ps; [  ];
+    "pvoutput.sensor" = ps: with ps; [  ];
+    "pyload" = ps: with ps; [  ];
+    "pyload.sensor" = ps: with ps; [  ];
     "python_script" = ps: with ps; [  ];
+    "qbittorrent" = ps: with ps; [  ];
+    "qbittorrent.sensor" = ps: with ps; [  ];
+    "qnap" = ps: with ps; [  ];
+    "qnap.sensor" = ps: with ps; [  ];
+    "qrcode" = ps: with ps; [  ];
+    "qrcode.image_processing" = ps: with ps; [ pillow ];
+    "quantum_gateway" = ps: with ps; [  ];
+    "quantum_gateway.device_tracker" = ps: with ps; [  ];
     "qwikswitch" = ps: with ps; [  ];
     "qwikswitch.binary_sensor" = ps: with ps; [  ];
     "qwikswitch.light" = ps: with ps; [  ];
@@ -987,7 +1418,13 @@
     "rachio" = ps: with ps; [  ];
     "rachio.binary_sensor" = ps: with ps; [  ];
     "rachio.switch" = ps: with ps; [  ];
+    "radarr" = ps: with ps; [  ];
+    "radarr.sensor" = ps: with ps; [  ];
+    "radiotherm" = ps: with ps; [  ];
+    "radiotherm.climate" = ps: with ps; [  ];
     "rainbird" = ps: with ps; [  ];
+    "rainbird.sensor" = ps: with ps; [  ];
+    "rainbird.switch" = ps: with ps; [  ];
     "raincloud" = ps: with ps; [  ];
     "raincloud.binary_sensor" = ps: with ps; [  ];
     "raincloud.sensor" = ps: with ps; [  ];
@@ -998,20 +1435,41 @@
     "rainmachine.const" = ps: with ps; [  ];
     "rainmachine.sensor" = ps: with ps; [  ];
     "rainmachine.switch" = ps: with ps; [  ];
+    "random" = ps: with ps; [  ];
+    "random.binary_sensor" = ps: with ps; [  ];
+    "random.sensor" = ps: with ps; [  ];
     "raspihats" = ps: with ps; [  ];
     "raspihats.binary_sensor" = ps: with ps; [  ];
     "raspihats.switch" = ps: with ps; [  ];
+    "raspyrfm" = ps: with ps; [  ];
+    "raspyrfm.switch" = ps: with ps; [  ];
+    "recollect_waste" = ps: with ps; [  ];
+    "recollect_waste.sensor" = ps: with ps; [  ];
     "recorder" = ps: with ps; [ sqlalchemy ];
     "recorder.const" = ps: with ps; [  ];
     "recorder.migration" = ps: with ps; [  ];
     "recorder.purge" = ps: with ps; [  ];
     "recorder.util" = ps: with ps; [  ];
+    "recswitch" = ps: with ps; [  ];
+    "recswitch.switch" = ps: with ps; [  ];
     "reddit" = ps: with ps; [  ];
     "reddit.sensor" = ps: with ps; [ praw ];
+    "rejseplanen" = ps: with ps; [  ];
+    "rejseplanen.sensor" = ps: with ps; [  ];
     "remember_the_milk" = ps: with ps; [ httplib2 ];
     "remote" = ps: with ps; [  ];
+    "rest" = ps: with ps; [  ];
+    "rest.binary_sensor" = ps: with ps; [  ];
+    "rest.notify" = ps: with ps; [  ];
+    "rest.sensor" = ps: with ps; [  ];
+    "rest.switch" = ps: with ps; [  ];
     "rest_command" = ps: with ps; [  ];
     "rflink" = ps: with ps; [  ];
+    "rflink.binary_sensor" = ps: with ps; [  ];
+    "rflink.cover" = ps: with ps; [  ];
+    "rflink.light" = ps: with ps; [  ];
+    "rflink.sensor" = ps: with ps; [  ];
+    "rflink.switch" = ps: with ps; [  ];
     "rfxtrx" = ps: with ps; [  ];
     "rfxtrx.binary_sensor" = ps: with ps; [  ];
     "rfxtrx.cover" = ps: with ps; [  ];
@@ -1019,280 +1477,122 @@
     "rfxtrx.sensor" = ps: with ps; [  ];
     "rfxtrx.switch" = ps: with ps; [  ];
     "ring" = ps: with ps; [  ];
+    "ring.binary_sensor" = ps: with ps; [  ];
+    "ring.camera" = ps: with ps; [ ha-ffmpeg ];
+    "ring.sensor" = ps: with ps; [  ];
+    "ripple" = ps: with ps; [  ];
+    "ripple.sensor" = ps: with ps; [  ];
+    "ritassist" = ps: with ps; [  ];
+    "ritassist.device_tracker" = ps: with ps; [  ];
+    "rmvtransport" = ps: with ps; [  ];
+    "rmvtransport.sensor" = ps: with ps; [  ];
+    "rocketchat" = ps: with ps; [  ];
+    "rocketchat.notify" = ps: with ps; [  ];
     "roku" = ps: with ps; [  ];
     "roku.media_player" = ps: with ps; [  ];
     "roku.remote" = ps: with ps; [  ];
+    "roomba" = ps: with ps; [  ];
+    "roomba.vacuum" = ps: with ps; [  ];
     "route53" = ps: with ps; [ boto3 ];
+    "rova" = ps: with ps; [  ];
+    "rova.sensor" = ps: with ps; [  ];
+    "rpi_camera" = ps: with ps; [  ];
+    "rpi_camera.camera" = ps: with ps; [  ];
     "rpi_gpio" = ps: with ps; [  ];
     "rpi_gpio.binary_sensor" = ps: with ps; [  ];
     "rpi_gpio.cover" = ps: with ps; [  ];
     "rpi_gpio.switch" = ps: with ps; [  ];
+    "rpi_gpio_pwm" = ps: with ps; [  ];
+    "rpi_gpio_pwm.light" = ps: with ps; [  ];
     "rpi_pfio" = ps: with ps; [  ];
     "rpi_pfio.binary_sensor" = ps: with ps; [  ];
     "rpi_pfio.switch" = ps: with ps; [  ];
+    "rpi_rf" = ps: with ps; [  ];
+    "rpi_rf.switch" = ps: with ps; [  ];
     "rss_feed_template" = ps: with ps; [ aiohttp-cors ];
+    "rtorrent" = ps: with ps; [  ];
+    "rtorrent.sensor" = ps: with ps; [  ];
+    "russound_rio" = ps: with ps; [  ];
+    "russound_rio.media_player" = ps: with ps; [  ];
+    "russound_rnet" = ps: with ps; [  ];
+    "russound_rnet.media_player" = ps: with ps; [  ];
+    "ruter" = ps: with ps; [  ];
+    "ruter.sensor" = ps: with ps; [  ];
     "sabnzbd" = ps: with ps; [  ];
     "sabnzbd.sensor" = ps: with ps; [  ];
+    "samsungtv" = ps: with ps; [  ];
+    "samsungtv.media_player" = ps: with ps; [ wakeonlan ];
     "satel_integra" = ps: with ps; [  ];
     "satel_integra.alarm_control_panel" = ps: with ps; [  ];
     "satel_integra.binary_sensor" = ps: with ps; [  ];
     "scene" = ps: with ps; [  ];
-    "scene.homeassistant" = ps: with ps; [  ];
-    "scene.hunterdouglas_powerview" = ps: with ps; [  ];
-    "scene.lifx_cloud" = ps: with ps; [  ];
-    "scene.litejet" = ps: with ps; [  ];
+    "scrape" = ps: with ps; [  ];
+    "scrape.sensor" = ps: with ps; [ beautifulsoup4 ];
     "script" = ps: with ps; [  ];
     "scsgate" = ps: with ps; [  ];
     "scsgate.cover" = ps: with ps; [  ];
     "scsgate.light" = ps: with ps; [  ];
     "scsgate.switch" = ps: with ps; [  ];
+    "season" = ps: with ps; [  ];
+    "season.sensor" = ps: with ps; [ ephem ];
+    "sendgrid" = ps: with ps; [  ];
+    "sendgrid.notify" = ps: with ps; [  ];
     "sense" = ps: with ps; [  ];
     "sense.binary_sensor" = ps: with ps; [  ];
     "sense.sensor" = ps: with ps; [  ];
+    "sensehat" = ps: with ps; [  ];
+    "sensehat.light" = ps: with ps; [  ];
+    "sensehat.sensor" = ps: with ps; [  ];
+    "sensibo" = ps: with ps; [  ];
+    "sensibo.climate" = ps: with ps; [  ];
     "sensor" = ps: with ps; [  ];
-    "sensor.aftership" = ps: with ps; [  ];
-    "sensor.airvisual" = ps: with ps; [ pyairvisual ];
-    "sensor.alpha_vantage" = ps: with ps; [  ];
-    "sensor.api_streams" = ps: with ps; [  ];
-    "sensor.arest" = ps: with ps; [  ];
-    "sensor.arwn" = ps: with ps; [ paho-mqtt ];
-    "sensor.asuswrt" = ps: with ps; [  ];
-    "sensor.awair" = ps: with ps; [  ];
-    "sensor.bbox" = ps: with ps; [  ];
-    "sensor.bh1750" = ps: with ps; [  ];
-    "sensor.bitcoin" = ps: with ps; [  ];
-    "sensor.blockchain" = ps: with ps; [  ];
-    "sensor.bme280" = ps: with ps; [  ];
-    "sensor.bme680" = ps: with ps; [  ];
-    "sensor.bom" = ps: with ps; [  ];
-    "sensor.broadlink" = ps: with ps; [ broadlink ];
-    "sensor.brottsplatskartan" = ps: with ps; [  ];
-    "sensor.buienradar" = ps: with ps; [  ];
-    "sensor.canary" = ps: with ps; [  ];
-    "sensor.cert_expiry" = ps: with ps; [  ];
-    "sensor.citybikes" = ps: with ps; [  ];
-    "sensor.co2signal" = ps: with ps; [  ];
-    "sensor.coinbase" = ps: with ps; [  ];
-    "sensor.coinmarketcap" = ps: with ps; [ coinmarketcap ];
-    "sensor.comed_hourly_pricing" = ps: with ps; [  ];
-    "sensor.command_line" = ps: with ps; [  ];
-    "sensor.cpuspeed" = ps: with ps; [ py-cpuinfo ];
-    "sensor.crimereports" = ps: with ps; [  ];
-    "sensor.cups" = ps: with ps; [ pycups ];
-    "sensor.currencylayer" = ps: with ps; [  ];
-    "sensor.darksky" = ps: with ps; [ python-forecastio ];
-    "sensor.deluge" = ps: with ps; [ deluge-client ];
-    "sensor.demo" = ps: with ps; [  ];
-    "sensor.deutsche_bahn" = ps: with ps; [  ];
-    "sensor.dht" = ps: with ps; [  ];
-    "sensor.discogs" = ps: with ps; [ discogs_client ];
-    "sensor.dnsip" = ps: with ps; [ aiodns ];
-    "sensor.dsmr" = ps: with ps; [  ];
-    "sensor.dte_energy_bridge" = ps: with ps; [  ];
-    "sensor.dublin_bus_transport" = ps: with ps; [  ];
-    "sensor.duke_energy" = ps: with ps; [  ];
-    "sensor.dwd_weather_warnings" = ps: with ps; [  ];
-    "sensor.dyson" = ps: with ps; [  ];
-    "sensor.ebox" = ps: with ps; [  ];
-    "sensor.eddystone_temperature" = ps: with ps; [ construct ];
-    "sensor.efergy" = ps: with ps; [  ];
-    "sensor.eliqonline" = ps: with ps; [  ];
-    "sensor.emoncms" = ps: with ps; [  ];
-    "sensor.enphase_envoy" = ps: with ps; [  ];
-    "sensor.entur_public_transport" = ps: with ps; [  ];
-    "sensor.envirophat" = ps: with ps; [  ];
-    "sensor.etherscan" = ps: with ps; [  ];
-    "sensor.fail2ban" = ps: with ps; [  ];
-    "sensor.fedex" = ps: with ps; [  ];
-    "sensor.fido" = ps: with ps; [  ];
-    "sensor.file" = ps: with ps; [  ];
-    "sensor.filesize" = ps: with ps; [  ];
-    "sensor.filter" = ps: with ps; [  ];
-    "sensor.fints" = ps: with ps; [ fints ];
-    "sensor.fitbit" = ps: with ps; [ aiohttp-cors ];
-    "sensor.fixer" = ps: with ps; [  ];
-    "sensor.flunearyou" = ps: with ps; [  ];
-    "sensor.folder" = ps: with ps; [  ];
-    "sensor.foobot" = ps: with ps; [  ];
-    "sensor.fritzbox_callmonitor" = ps: with ps; [ fritzconnection ];
-    "sensor.fritzbox_netmonitor" = ps: with ps; [ fritzconnection ];
-    "sensor.gearbest" = ps: with ps; [  ];
-    "sensor.geizhals" = ps: with ps; [  ];
-    "sensor.geo_rss_events" = ps: with ps; [  ];
-    "sensor.github" = ps: with ps; [ PyGithub ];
-    "sensor.gitlab_ci" = ps: with ps; [ python-gitlab ];
-    "sensor.gitter" = ps: with ps; [  ];
-    "sensor.glances" = ps: with ps; [  ];
-    "sensor.google_travel_time" = ps: with ps; [  ];
-    "sensor.google_wifi" = ps: with ps; [  ];
-    "sensor.gpsd" = ps: with ps; [  ];
-    "sensor.greeneye_monitor" = ps: with ps; [  ];
-    "sensor.gtfs" = ps: with ps; [  ];
-    "sensor.gtt" = ps: with ps; [  ];
-    "sensor.haveibeenpwned" = ps: with ps; [  ];
-    "sensor.hddtemp" = ps: with ps; [  ];
-    "sensor.history_stats" = ps: with ps; [ aiohttp-cors sqlalchemy ];
-    "sensor.hp_ilo" = ps: with ps; [  ];
-    "sensor.htu21d" = ps: with ps; [  ];
-    "sensor.hydroquebec" = ps: with ps; [  ];
-    "sensor.iliad_italy" = ps: with ps; [  ];
-    "sensor.imap" = ps: with ps; [  ];
-    "sensor.imap_email_content" = ps: with ps; [  ];
-    "sensor.influxdb" = ps: with ps; [ influxdb ];
-    "sensor.integration" = ps: with ps; [  ];
-    "sensor.irish_rail_transport" = ps: with ps; [  ];
-    "sensor.islamic_prayer_times" = ps: with ps; [  ];
-    "sensor.jewish_calendar" = ps: with ps; [  ];
-    "sensor.kwb" = ps: with ps; [  ];
-    "sensor.lacrosse" = ps: with ps; [  ];
-    "sensor.lastfm" = ps: with ps; [ pylast ];
-    "sensor.launch_library" = ps: with ps; [  ];
-    "sensor.linky" = ps: with ps; [  ];
-    "sensor.linux_battery" = ps: with ps; [ batinfo ];
-    "sensor.london_air" = ps: with ps; [  ];
-    "sensor.london_underground" = ps: with ps; [  ];
-    "sensor.loopenergy" = ps: with ps; [  ];
-    "sensor.lyft" = ps: with ps; [  ];
-    "sensor.magicseaweed" = ps: with ps; [  ];
-    "sensor.metoffice" = ps: with ps; [  ];
-    "sensor.mfi" = ps: with ps; [  ];
-    "sensor.mhz19" = ps: with ps; [  ];
-    "sensor.miflora" = ps: with ps; [  ];
-    "sensor.min_max" = ps: with ps; [  ];
-    "sensor.mitemp_bt" = ps: with ps; [  ];
-    "sensor.modem_callerid" = ps: with ps; [  ];
-    "sensor.mold_indicator" = ps: with ps; [  ];
-    "sensor.moon" = ps: with ps; [  ];
-    "sensor.mopar" = ps: with ps; [  ];
-    "sensor.mqtt_room" = ps: with ps; [ paho-mqtt ];
-    "sensor.mvglive" = ps: with ps; [ PyMVGLive ];
-    "sensor.nederlandse_spoorwegen" = ps: with ps; [  ];
-    "sensor.netatmo_public" = ps: with ps; [ aiohttp-cors ];
-    "sensor.netdata" = ps: with ps; [  ];
-    "sensor.neurio_energy" = ps: with ps; [  ];
-    "sensor.nmbs" = ps: with ps; [  ];
-    "sensor.noaa_tides" = ps: with ps; [  ];
-    "sensor.nsw_fuel_station" = ps: with ps; [  ];
-    "sensor.nut" = ps: with ps; [  ];
-    "sensor.nzbget" = ps: with ps; [  ];
-    "sensor.ohmconnect" = ps: with ps; [ defusedxml ];
-    "sensor.onewire" = ps: with ps; [  ];
-    "sensor.openevse" = ps: with ps; [  ];
-    "sensor.openexchangerates" = ps: with ps; [  ];
-    "sensor.openhardwaremonitor" = ps: with ps; [  ];
-    "sensor.opensky" = ps: with ps; [  ];
-    "sensor.openweathermap" = ps: with ps; [ pyowm ];
-    "sensor.otp" = ps: with ps; [ pyotp ];
-    "sensor.pi_hole" = ps: with ps; [  ];
-    "sensor.plex" = ps: with ps; [  ];
-    "sensor.pocketcasts" = ps: with ps; [  ];
-    "sensor.pollen" = ps: with ps; [ numpy ];
-    "sensor.postnl" = ps: with ps; [  ];
-    "sensor.prezzibenzina" = ps: with ps; [  ];
-    "sensor.pushbullet" = ps: with ps; [ pushbullet ];
-    "sensor.pvoutput" = ps: with ps; [  ];
-    "sensor.pyload" = ps: with ps; [  ];
-    "sensor.qbittorrent" = ps: with ps; [  ];
-    "sensor.qnap" = ps: with ps; [  ];
-    "sensor.radarr" = ps: with ps; [  ];
-    "sensor.rainbird" = ps: with ps; [  ];
-    "sensor.random" = ps: with ps; [  ];
-    "sensor.recollect_waste" = ps: with ps; [  ];
-    "sensor.rejseplanen" = ps: with ps; [  ];
-    "sensor.rest" = ps: with ps; [  ];
-    "sensor.rflink" = ps: with ps; [  ];
-    "sensor.ring" = ps: with ps; [  ];
-    "sensor.ripple" = ps: with ps; [  ];
-    "sensor.rmvtransport" = ps: with ps; [  ];
-    "sensor.rova" = ps: with ps; [  ];
-    "sensor.rtorrent" = ps: with ps; [  ];
-    "sensor.ruter" = ps: with ps; [  ];
-    "sensor.scrape" = ps: with ps; [ beautifulsoup4 ];
-    "sensor.season" = ps: with ps; [ ephem ];
-    "sensor.sensehat" = ps: with ps; [  ];
-    "sensor.serial" = ps: with ps; [  ];
-    "sensor.serial_pm" = ps: with ps; [  ];
-    "sensor.seventeentrack" = ps: with ps; [  ];
-    "sensor.shodan" = ps: with ps; [ shodan ];
-    "sensor.sht31" = ps: with ps; [  ];
-    "sensor.sigfox" = ps: with ps; [  ];
-    "sensor.simulated" = ps: with ps; [  ];
-    "sensor.skybeacon" = ps: with ps; [  ];
-    "sensor.sleepiq" = ps: with ps; [  ];
-    "sensor.sma" = ps: with ps; [  ];
-    "sensor.snmp" = ps: with ps; [ pysnmp ];
-    "sensor.sochain" = ps: with ps; [  ];
-    "sensor.socialblade" = ps: with ps; [  ];
-    "sensor.solaredge" = ps: with ps; [  ];
-    "sensor.sonarr" = ps: with ps; [  ];
-    "sensor.spotcrime" = ps: with ps; [  ];
-    "sensor.sql" = ps: with ps; [ sqlalchemy ];
-    "sensor.srp_energy" = ps: with ps; [  ];
-    "sensor.starlingbank" = ps: with ps; [  ];
-    "sensor.startca" = ps: with ps; [ xmltodict ];
-    "sensor.statistics" = ps: with ps; [  ];
-    "sensor.steam_online" = ps: with ps; [  ];
-    "sensor.supervisord" = ps: with ps; [  ];
-    "sensor.swiss_hydrological_data" = ps: with ps; [  ];
-    "sensor.swiss_public_transport" = ps: with ps; [  ];
-    "sensor.syncthru" = ps: with ps; [  ];
-    "sensor.synologydsm" = ps: with ps; [  ];
-    "sensor.systemmonitor" = ps: with ps; [ psutil ];
-    "sensor.sytadin" = ps: with ps; [ beautifulsoup4 ];
-    "sensor.tank_utility" = ps: with ps; [  ];
-    "sensor.tautulli" = ps: with ps; [  ];
-    "sensor.tcp" = ps: with ps; [  ];
-    "sensor.ted5000" = ps: with ps; [ xmltodict ];
-    "sensor.teksavvy" = ps: with ps; [  ];
-    "sensor.temper" = ps: with ps; [  ];
-    "sensor.template" = ps: with ps; [  ];
-    "sensor.thermoworks_smoke" = ps: with ps; [  ];
-    "sensor.time_date" = ps: with ps; [  ];
-    "sensor.torque" = ps: with ps; [ aiohttp-cors ];
-    "sensor.trafikverket_weatherstation" = ps: with ps; [  ];
-    "sensor.transport_nsw" = ps: with ps; [  ];
-    "sensor.travisci" = ps: with ps; [  ];
-    "sensor.twitch" = ps: with ps; [  ];
-    "sensor.uber" = ps: with ps; [  ];
-    "sensor.uk_transport" = ps: with ps; [  ];
-    "sensor.ups" = ps: with ps; [  ];
-    "sensor.uptime" = ps: with ps; [  ];
-    "sensor.uscis" = ps: with ps; [  ];
-    "sensor.vasttrafik" = ps: with ps; [  ];
-    "sensor.version" = ps: with ps; [  ];
-    "sensor.viaggiatreno" = ps: with ps; [  ];
-    "sensor.volkszaehler" = ps: with ps; [  ];
-    "sensor.vultr" = ps: with ps; [ vultr ];
-    "sensor.waqi" = ps: with ps; [  ];
-    "sensor.waze_travel_time" = ps: with ps; [ WazeRouteCalculator ];
-    "sensor.whois" = ps: with ps; [  ];
-    "sensor.worldclock" = ps: with ps; [  ];
-    "sensor.worldtidesinfo" = ps: with ps; [  ];
-    "sensor.worxlandroid" = ps: with ps; [  ];
-    "sensor.wsdot" = ps: with ps; [  ];
-    "sensor.wunderground" = ps: with ps; [  ];
-    "sensor.xbox_live" = ps: with ps; [  ];
-    "sensor.yr" = ps: with ps; [ xmltodict ];
-    "sensor.yweather" = ps: with ps; [ yahooweather ];
-    "sensor.zamg" = ps: with ps; [  ];
-    "sensor.zestimate" = ps: with ps; [ xmltodict ];
+    "serial" = ps: with ps; [  ];
+    "serial.sensor" = ps: with ps; [  ];
+    "serial_pm" = ps: with ps; [  ];
+    "serial_pm.sensor" = ps: with ps; [  ];
+    "sesame" = ps: with ps; [  ];
+    "sesame.lock" = ps: with ps; [  ];
+    "seven_segments" = ps: with ps; [  ];
+    "seven_segments.image_processing" = ps: with ps; [  ];
+    "seventeentrack" = ps: with ps; [  ];
+    "seventeentrack.sensor" = ps: with ps; [  ];
     "shell_command" = ps: with ps; [  ];
     "shiftr" = ps: with ps; [ paho-mqtt ];
+    "shodan" = ps: with ps; [  ];
+    "shodan.sensor" = ps: with ps; [ shodan ];
     "shopping_list" = ps: with ps; [ aiohttp-cors ];
+    "sht31" = ps: with ps; [  ];
+    "sht31.sensor" = ps: with ps; [  ];
+    "sigfox" = ps: with ps; [  ];
+    "sigfox.sensor" = ps: with ps; [  ];
+    "simplepush" = ps: with ps; [  ];
+    "simplepush.notify" = ps: with ps; [  ];
     "simplisafe" = ps: with ps; [  ];
     "simplisafe.alarm_control_panel" = ps: with ps; [  ];
     "simplisafe.config_flow" = ps: with ps; [  ];
     "simplisafe.const" = ps: with ps; [  ];
+    "simulated" = ps: with ps; [  ];
+    "simulated.sensor" = ps: with ps; [  ];
     "sisyphus" = ps: with ps; [  ];
     "sisyphus.light" = ps: with ps; [  ];
     "sisyphus.media_player" = ps: with ps; [  ];
+    "sky_hub" = ps: with ps; [  ];
+    "sky_hub.device_tracker" = ps: with ps; [  ];
+    "skybeacon" = ps: with ps; [  ];
+    "skybeacon.sensor" = ps: with ps; [  ];
     "skybell" = ps: with ps; [  ];
     "skybell.binary_sensor" = ps: with ps; [  ];
     "skybell.camera" = ps: with ps; [  ];
     "skybell.light" = ps: with ps; [  ];
     "skybell.sensor" = ps: with ps; [  ];
     "skybell.switch" = ps: with ps; [  ];
+    "slack" = ps: with ps; [  ];
+    "slack.notify" = ps: with ps; [  ];
     "sleepiq" = ps: with ps; [  ];
+    "sleepiq.binary_sensor" = ps: with ps; [  ];
+    "sleepiq.sensor" = ps: with ps; [  ];
+    "sma" = ps: with ps; [  ];
+    "sma.sensor" = ps: with ps; [  ];
     "smappee" = ps: with ps; [  ];
     "smappee.sensor" = ps: with ps; [  ];
     "smappee.switch" = ps: with ps; [  ];
@@ -1313,11 +1613,35 @@
     "smhi.config_flow" = ps: with ps; [  ];
     "smhi.const" = ps: with ps; [  ];
     "smhi.weather" = ps: with ps; [  ];
+    "smtp" = ps: with ps; [  ];
+    "smtp.notify" = ps: with ps; [  ];
+    "snapcast" = ps: with ps; [  ];
+    "snapcast.media_player" = ps: with ps; [ snapcast ];
     "snips" = ps: with ps; [ paho-mqtt ];
+    "snmp" = ps: with ps; [  ];
+    "snmp.device_tracker" = ps: with ps; [ pysnmp ];
+    "snmp.sensor" = ps: with ps; [ pysnmp ];
+    "snmp.switch" = ps: with ps; [ pysnmp ];
+    "sochain" = ps: with ps; [  ];
+    "sochain.sensor" = ps: with ps; [  ];
+    "socialblade" = ps: with ps; [  ];
+    "socialblade.sensor" = ps: with ps; [  ];
+    "solaredge" = ps: with ps; [  ];
+    "solaredge.sensor" = ps: with ps; [  ];
+    "sonarr" = ps: with ps; [  ];
+    "sonarr.sensor" = ps: with ps; [  ];
+    "songpal" = ps: with ps; [  ];
+    "songpal.media_player" = ps: with ps; [  ];
     "sonos" = ps: with ps; [  ];
     "sonos.media_player" = ps: with ps; [  ];
+    "sony_projector" = ps: with ps; [  ];
+    "sony_projector.switch" = ps: with ps; [  ];
+    "soundtouch" = ps: with ps; [  ];
+    "soundtouch.media_player" = ps: with ps; [ libsoundtouch ];
     "spaceapi" = ps: with ps; [ aiohttp-cors ];
     "spc" = ps: with ps; [  ];
+    "spc.alarm_control_panel" = ps: with ps; [  ];
+    "spc.binary_sensor" = ps: with ps; [  ];
     "speedtestdotnet" = ps: with ps; [ speedtest-cli ];
     "speedtestdotnet.const" = ps: with ps; [  ];
     "speedtestdotnet.sensor" = ps: with ps; [ speedtest-cli ];
@@ -1325,53 +1649,66 @@
     "spider.climate" = ps: with ps; [  ];
     "spider.switch" = ps: with ps; [  ];
     "splunk" = ps: with ps; [  ];
+    "spotcrime" = ps: with ps; [  ];
+    "spotcrime.sensor" = ps: with ps; [  ];
+    "spotify" = ps: with ps; [  ];
+    "spotify.media_player" = ps: with ps; [ aiohttp-cors ];
+    "sql" = ps: with ps; [  ];
+    "sql.sensor" = ps: with ps; [ sqlalchemy ];
+    "squeezebox" = ps: with ps; [  ];
+    "squeezebox.media_player" = ps: with ps; [  ];
+    "srp_energy" = ps: with ps; [  ];
+    "srp_energy.sensor" = ps: with ps; [  ];
+    "starlingbank" = ps: with ps; [  ];
+    "starlingbank.sensor" = ps: with ps; [  ];
+    "startca" = ps: with ps; [  ];
+    "startca.sensor" = ps: with ps; [ xmltodict ];
+    "statistics" = ps: with ps; [  ];
+    "statistics.sensor" = ps: with ps; [  ];
     "statsd" = ps: with ps; [ statsd ];
+    "steam_online" = ps: with ps; [  ];
+    "steam_online.sensor" = ps: with ps; [  ];
     "stream" = ps: with ps; [ aiohttp-cors av ];
     "stream.const" = ps: with ps; [  ];
     "stream.core" = ps: with ps; [  ];
     "stream.hls" = ps: with ps; [  ];
+    "stream.recorder" = ps: with ps; [  ];
     "stream.worker" = ps: with ps; [  ];
+    "stride" = ps: with ps; [  ];
+    "stride.notify" = ps: with ps; [  ];
     "sun" = ps: with ps; [  ];
+    "supervisord" = ps: with ps; [  ];
+    "supervisord.sensor" = ps: with ps; [  ];
+    "swiss_hydrological_data" = ps: with ps; [  ];
+    "swiss_hydrological_data.sensor" = ps: with ps; [  ];
+    "swiss_public_transport" = ps: with ps; [  ];
+    "swiss_public_transport.sensor" = ps: with ps; [  ];
+    "swisscom" = ps: with ps; [  ];
+    "swisscom.device_tracker" = ps: with ps; [  ];
     "switch" = ps: with ps; [  ];
-    "switch.acer_projector" = ps: with ps; [ pyserial ];
-    "switch.anel_pwrctrl" = ps: with ps; [  ];
-    "switch.arest" = ps: with ps; [  ];
-    "switch.broadlink" = ps: with ps; [ broadlink ];
-    "switch.command_line" = ps: with ps; [  ];
-    "switch.deluge" = ps: with ps; [ deluge-client ];
-    "switch.demo" = ps: with ps; [  ];
-    "switch.digitalloggers" = ps: with ps; [  ];
-    "switch.dlink" = ps: with ps; [  ];
-    "switch.edimax" = ps: with ps; [  ];
-    "switch.flux" = ps: with ps; [  ];
-    "switch.fritzdect" = ps: with ps; [  ];
-    "switch.hikvisioncam" = ps: with ps; [  ];
-    "switch.hook" = ps: with ps; [  ];
-    "switch.kankun" = ps: with ps; [  ];
-    "switch.litejet" = ps: with ps; [  ];
-    "switch.mfi" = ps: with ps; [  ];
-    "switch.mystrom" = ps: with ps; [  ];
-    "switch.netio" = ps: with ps; [ aiohttp-cors ];
-    "switch.orvibo" = ps: with ps; [  ];
-    "switch.pencom" = ps: with ps; [  ];
-    "switch.pulseaudio_loopback" = ps: with ps; [  ];
-    "switch.rainbird" = ps: with ps; [  ];
-    "switch.raspyrfm" = ps: with ps; [  ];
-    "switch.recswitch" = ps: with ps; [  ];
-    "switch.rest" = ps: with ps; [  ];
-    "switch.rflink" = ps: with ps; [  ];
-    "switch.rpi_rf" = ps: with ps; [  ];
-    "switch.snmp" = ps: with ps; [ pysnmp ];
-    "switch.sony_projector" = ps: with ps; [  ];
-    "switch.switchbot" = ps: with ps; [  ];
-    "switch.switchmate" = ps: with ps; [  ];
-    "switch.telnet" = ps: with ps; [  ];
-    "switch.template" = ps: with ps; [  ];
-    "switch.vesync" = ps: with ps; [  ];
-    "switch.vultr" = ps: with ps; [ vultr ];
-    "switch.wake_on_lan" = ps: with ps; [ wakeonlan ];
+    "switch.light" = ps: with ps; [  ];
+    "switchbot" = ps: with ps; [  ];
+    "switchbot.switch" = ps: with ps; [  ];
+    "switchmate" = ps: with ps; [  ];
+    "switchmate.switch" = ps: with ps; [  ];
+    "syncthru" = ps: with ps; [  ];
+    "syncthru.sensor" = ps: with ps; [  ];
+    "synology" = ps: with ps; [  ];
+    "synology.camera" = ps: with ps; [  ];
+    "synology_chat" = ps: with ps; [  ];
+    "synology_chat.notify" = ps: with ps; [  ];
+    "synology_srm" = ps: with ps; [  ];
+    "synology_srm.device_tracker" = ps: with ps; [  ];
+    "synologydsm" = ps: with ps; [  ];
+    "synologydsm.sensor" = ps: with ps; [  ];
+    "syslog" = ps: with ps; [  ];
+    "syslog.notify" = ps: with ps; [  ];
     "system_health" = ps: with ps; [ aiohttp-cors ];
     "system_log" = ps: with ps; [ aiohttp-cors ];
+    "systemmonitor" = ps: with ps; [  ];
+    "systemmonitor.sensor" = ps: with ps; [ psutil ];
+    "sytadin" = ps: with ps; [  ];
+    "sytadin.sensor" = ps: with ps; [ beautifulsoup4 ];
     "tado" = ps: with ps; [  ];
     "tado.climate" = ps: with ps; [  ];
     "tado.device_tracker" = ps: with ps; [  ];
@@ -1382,6 +1719,21 @@
     "tahoma.scene" = ps: with ps; [  ];
     "tahoma.sensor" = ps: with ps; [  ];
     "tahoma.switch" = ps: with ps; [  ];
+    "tank_utility" = ps: with ps; [  ];
+    "tank_utility.sensor" = ps: with ps; [  ];
+    "tapsaff" = ps: with ps; [  ];
+    "tapsaff.binary_sensor" = ps: with ps; [  ];
+    "tautulli" = ps: with ps; [  ];
+    "tautulli.sensor" = ps: with ps; [  ];
+    "tcp" = ps: with ps; [  ];
+    "tcp.binary_sensor" = ps: with ps; [  ];
+    "tcp.sensor" = ps: with ps; [  ];
+    "ted5000" = ps: with ps; [  ];
+    "ted5000.sensor" = ps: with ps; [ xmltodict ];
+    "teksavvy" = ps: with ps; [  ];
+    "teksavvy.sensor" = ps: with ps; [  ];
+    "telegram" = ps: with ps; [  ];
+    "telegram.notify" = ps: with ps; [ python-telegram-bot ];
     "telegram_bot" = ps: with ps; [ python-telegram-bot ];
     "telegram_bot.broadcast" = ps: with ps; [  ];
     "telegram_bot.polling" = ps: with ps; [  ];
@@ -1400,6 +1752,20 @@
     "tellstick.light" = ps: with ps; [  ];
     "tellstick.sensor" = ps: with ps; [  ];
     "tellstick.switch" = ps: with ps; [  ];
+    "telnet" = ps: with ps; [  ];
+    "telnet.switch" = ps: with ps; [  ];
+    "temper" = ps: with ps; [  ];
+    "temper.sensor" = ps: with ps; [  ];
+    "template" = ps: with ps; [  ];
+    "template.binary_sensor" = ps: with ps; [  ];
+    "template.cover" = ps: with ps; [  ];
+    "template.fan" = ps: with ps; [  ];
+    "template.light" = ps: with ps; [  ];
+    "template.lock" = ps: with ps; [  ];
+    "template.sensor" = ps: with ps; [  ];
+    "template.switch" = ps: with ps; [  ];
+    "tensorflow" = ps: with ps; [  ];
+    "tensorflow.image_processing" = ps: with ps; [ numpy pillow protobuf ];
     "tesla" = ps: with ps; [  ];
     "tesla.binary_sensor" = ps: with ps; [  ];
     "tesla.climate" = ps: with ps; [  ];
@@ -1407,47 +1773,78 @@
     "tesla.lock" = ps: with ps; [  ];
     "tesla.sensor" = ps: with ps; [  ];
     "tesla.switch" = ps: with ps; [  ];
+    "tfiac" = ps: with ps; [  ];
+    "tfiac.climate" = ps: with ps; [  ];
+    "thermoworks_smoke" = ps: with ps; [  ];
+    "thermoworks_smoke.sensor" = ps: with ps; [  ];
     "thethingsnetwork" = ps: with ps; [  ];
     "thethingsnetwork.sensor" = ps: with ps; [  ];
     "thingspeak" = ps: with ps; [  ];
     "thinkingcleaner" = ps: with ps; [  ];
     "thinkingcleaner.sensor" = ps: with ps; [  ];
     "thinkingcleaner.switch" = ps: with ps; [  ];
+    "thomson" = ps: with ps; [  ];
+    "thomson.device_tracker" = ps: with ps; [  ];
+    "threshold" = ps: with ps; [  ];
+    "threshold.binary_sensor" = ps: with ps; [  ];
     "tibber" = ps: with ps; [  ];
     "tibber.notify" = ps: with ps; [  ];
     "tibber.sensor" = ps: with ps; [  ];
+    "tikteck" = ps: with ps; [  ];
+    "tikteck.light" = ps: with ps; [  ];
+    "tile" = ps: with ps; [  ];
+    "tile.device_tracker" = ps: with ps; [  ];
+    "time_date" = ps: with ps; [  ];
+    "time_date.sensor" = ps: with ps; [  ];
     "timer" = ps: with ps; [  ];
+    "tod" = ps: with ps; [  ];
+    "tod.binary_sensor" = ps: with ps; [  ];
+    "todoist" = ps: with ps; [  ];
+    "todoist.calendar" = ps: with ps; [ todoist ];
     "tof" = ps: with ps; [  ];
     "tof.sensor" = ps: with ps; [  ];
+    "tomato" = ps: with ps; [  ];
+    "tomato.device_tracker" = ps: with ps; [  ];
     "toon" = ps: with ps; [  ];
     "toon.binary_sensor" = ps: with ps; [  ];
     "toon.climate" = ps: with ps; [  ];
     "toon.config_flow" = ps: with ps; [  ];
     "toon.const" = ps: with ps; [  ];
     "toon.sensor" = ps: with ps; [  ];
+    "torque" = ps: with ps; [  ];
+    "torque.sensor" = ps: with ps; [ aiohttp-cors ];
+    "totalconnect" = ps: with ps; [  ];
+    "totalconnect.alarm_control_panel" = ps: with ps; [  ];
+    "touchline" = ps: with ps; [  ];
+    "touchline.climate" = ps: with ps; [  ];
     "tplink" = ps: with ps; [  ];
+    "tplink.device_tracker" = ps: with ps; [  ];
     "tplink.light" = ps: with ps; [  ];
     "tplink.switch" = ps: with ps; [  ];
     "tplink_lte" = ps: with ps; [  ];
     "tplink_lte.notify" = ps: with ps; [  ];
+    "traccar" = ps: with ps; [  ];
+    "traccar.device_tracker" = ps: with ps; [  ];
+    "trackr" = ps: with ps; [  ];
+    "trackr.device_tracker" = ps: with ps; [  ];
     "tradfri" = ps: with ps; [  ];
     "tradfri.config_flow" = ps: with ps; [  ];
     "tradfri.const" = ps: with ps; [  ];
     "tradfri.light" = ps: with ps; [  ];
     "tradfri.sensor" = ps: with ps; [  ];
     "tradfri.switch" = ps: with ps; [  ];
+    "trafikverket_weatherstation" = ps: with ps; [  ];
+    "trafikverket_weatherstation.sensor" = ps: with ps; [  ];
     "transmission" = ps: with ps; [ transmissionrpc ];
     "transmission.sensor" = ps: with ps; [ transmissionrpc ];
     "transmission.switch" = ps: with ps; [ transmissionrpc ];
+    "transport_nsw" = ps: with ps; [  ];
+    "transport_nsw.sensor" = ps: with ps; [  ];
+    "travisci" = ps: with ps; [  ];
+    "travisci.sensor" = ps: with ps; [  ];
+    "trend" = ps: with ps; [  ];
+    "trend.binary_sensor" = ps: with ps; [ numpy ];
     "tts" = ps: with ps; [ aiohttp-cors mutagen ];
-    "tts.amazon_polly" = ps: with ps; [ boto3 ];
-    "tts.baidu" = ps: with ps; [  ];
-    "tts.demo" = ps: with ps; [  ];
-    "tts.marytts" = ps: with ps; [  ];
-    "tts.microsoft" = ps: with ps; [  ];
-    "tts.picotts" = ps: with ps; [  ];
-    "tts.voicerss" = ps: with ps; [  ];
-    "tts.yandextts" = ps: with ps; [  ];
     "tuya" = ps: with ps; [  ];
     "tuya.climate" = ps: with ps; [  ];
     "tuya.cover" = ps: with ps; [  ];
@@ -1456,11 +1853,36 @@
     "tuya.scene" = ps: with ps; [  ];
     "tuya.switch" = ps: with ps; [  ];
     "twilio" = ps: with ps; [ aiohttp-cors twilio ];
+    "twilio_call" = ps: with ps; [  ];
+    "twilio_call.notify" = ps: with ps; [ aiohttp-cors twilio ];
+    "twilio_sms" = ps: with ps; [  ];
+    "twilio_sms.notify" = ps: with ps; [ aiohttp-cors twilio ];
+    "twitch" = ps: with ps; [  ];
+    "twitch.sensor" = ps: with ps; [  ];
+    "twitter" = ps: with ps; [  ];
+    "twitter.notify" = ps: with ps; [  ];
+    "ubee" = ps: with ps; [  ];
+    "ubee.device_tracker" = ps: with ps; [  ];
+    "uber" = ps: with ps; [  ];
+    "uber.sensor" = ps: with ps; [  ];
+    "ubus" = ps: with ps; [  ];
+    "ubus.device_tracker" = ps: with ps; [  ];
+    "ue_smart_radio" = ps: with ps; [  ];
+    "ue_smart_radio.media_player" = ps: with ps; [  ];
+    "uk_transport" = ps: with ps; [  ];
+    "uk_transport.sensor" = ps: with ps; [  ];
     "unifi" = ps: with ps; [ aiounifi ];
     "unifi.const" = ps: with ps; [  ];
     "unifi.controller" = ps: with ps; [  ];
+    "unifi.device_tracker" = ps: with ps; [ pyunifi ];
     "unifi.errors" = ps: with ps; [  ];
     "unifi.switch" = ps: with ps; [ aiounifi ];
+    "unifi_direct" = ps: with ps; [  ];
+    "unifi_direct.device_tracker" = ps: with ps; [ pexpect ];
+    "universal" = ps: with ps; [  ];
+    "universal.media_player" = ps: with ps; [  ];
+    "upc_connect" = ps: with ps; [  ];
+    "upc_connect.device_tracker" = ps: with ps; [ defusedxml ];
     "upcloud" = ps: with ps; [  ];
     "upcloud.binary_sensor" = ps: with ps; [  ];
     "upcloud.switch" = ps: with ps; [  ];
@@ -1469,16 +1891,27 @@
     "upnp.const" = ps: with ps; [  ];
     "upnp.device" = ps: with ps; [  ];
     "upnp.sensor" = ps: with ps; [  ];
+    "ups" = ps: with ps; [  ];
+    "ups.sensor" = ps: with ps; [  ];
+    "uptime" = ps: with ps; [  ];
+    "uptime.sensor" = ps: with ps; [  ];
+    "uptimerobot" = ps: with ps; [  ];
+    "uptimerobot.binary_sensor" = ps: with ps; [  ];
+    "uscis" = ps: with ps; [  ];
+    "uscis.sensor" = ps: with ps; [  ];
+    "usgs_earthquakes_feed" = ps: with ps; [  ];
+    "usgs_earthquakes_feed.geo_location" = ps: with ps; [  ];
     "usps" = ps: with ps; [  ];
     "usps.camera" = ps: with ps; [  ];
     "usps.sensor" = ps: with ps; [  ];
     "utility_meter" = ps: with ps; [  ];
     "utility_meter.const" = ps: with ps; [  ];
     "utility_meter.sensor" = ps: with ps; [  ];
+    "uvc" = ps: with ps; [  ];
+    "uvc.camera" = ps: with ps; [  ];
     "vacuum" = ps: with ps; [  ];
-    "vacuum.demo" = ps: with ps; [  ];
-    "vacuum.dyson" = ps: with ps; [  ];
-    "vacuum.roomba" = ps: with ps; [  ];
+    "vasttrafik" = ps: with ps; [  ];
+    "vasttrafik.sensor" = ps: with ps; [  ];
     "velbus" = ps: with ps; [  ];
     "velbus.binary_sensor" = ps: with ps; [  ];
     "velbus.climate" = ps: with ps; [  ];
@@ -1488,6 +1921,8 @@
     "velux" = ps: with ps; [  ];
     "velux.cover" = ps: with ps; [  ];
     "velux.scene" = ps: with ps; [  ];
+    "venstar" = ps: with ps; [  ];
+    "venstar.climate" = ps: with ps; [  ];
     "vera" = ps: with ps; [  ];
     "vera.binary_sensor" = ps: with ps; [  ];
     "vera.climate" = ps: with ps; [  ];
@@ -1504,6 +1939,22 @@
     "verisure.lock" = ps: with ps; [  ];
     "verisure.sensor" = ps: with ps; [  ];
     "verisure.switch" = ps: with ps; [  ];
+    "version" = ps: with ps; [  ];
+    "version.sensor" = ps: with ps; [  ];
+    "vesync" = ps: with ps; [  ];
+    "vesync.switch" = ps: with ps; [  ];
+    "viaggiatreno" = ps: with ps; [  ];
+    "viaggiatreno.sensor" = ps: with ps; [  ];
+    "vizio" = ps: with ps; [  ];
+    "vizio.media_player" = ps: with ps; [  ];
+    "vlc" = ps: with ps; [  ];
+    "vlc.media_player" = ps: with ps; [  ];
+    "voicerss" = ps: with ps; [  ];
+    "voicerss.tts" = ps: with ps; [  ];
+    "volkszaehler" = ps: with ps; [  ];
+    "volkszaehler.sensor" = ps: with ps; [  ];
+    "volumio" = ps: with ps; [  ];
+    "volumio.media_player" = ps: with ps; [  ];
     "volvooncall" = ps: with ps; [  ];
     "volvooncall.binary_sensor" = ps: with ps; [  ];
     "volvooncall.device_tracker" = ps: with ps; [  ];
@@ -1511,25 +1962,22 @@
     "volvooncall.sensor" = ps: with ps; [  ];
     "volvooncall.switch" = ps: with ps; [  ];
     "vultr" = ps: with ps; [ vultr ];
+    "vultr.binary_sensor" = ps: with ps; [ vultr ];
+    "vultr.sensor" = ps: with ps; [ vultr ];
+    "vultr.switch" = ps: with ps; [ vultr ];
     "w800rf32" = ps: with ps; [  ];
     "w800rf32.binary_sensor" = ps: with ps; [  ];
     "wake_on_lan" = ps: with ps; [ wakeonlan ];
+    "wake_on_lan.switch" = ps: with ps; [ wakeonlan ];
+    "waqi" = ps: with ps; [  ];
+    "waqi.sensor" = ps: with ps; [  ];
     "water_heater" = ps: with ps; [  ];
-    "water_heater.demo" = ps: with ps; [  ];
-    "water_heater.econet" = ps: with ps; [  ];
     "waterfurnace" = ps: with ps; [  ];
     "waterfurnace.sensor" = ps: with ps; [  ];
     "watson_iot" = ps: with ps; [  ];
+    "waze_travel_time" = ps: with ps; [  ];
+    "waze_travel_time.sensor" = ps: with ps; [ WazeRouteCalculator ];
     "weather" = ps: with ps; [  ];
-    "weather.bom" = ps: with ps; [  ];
-    "weather.buienradar" = ps: with ps; [  ];
-    "weather.darksky" = ps: with ps; [ python-forecastio ];
-    "weather.demo" = ps: with ps; [  ];
-    "weather.met" = ps: with ps; [  ];
-    "weather.metoffice" = ps: with ps; [  ];
-    "weather.openweathermap" = ps: with ps; [ pyowm ];
-    "weather.yweather" = ps: with ps; [ yahooweather ];
-    "weather.zamg" = ps: with ps; [  ];
     "webhook" = ps: with ps; [ aiohttp-cors ];
     "weblink" = ps: with ps; [  ];
     "webostv" = ps: with ps; [  ];
@@ -1545,11 +1993,14 @@
     "websocket_api.http" = ps: with ps; [  ];
     "websocket_api.messages" = ps: with ps; [  ];
     "websocket_api.permissions" = ps: with ps; [  ];
+    "websocket_api.sensor" = ps: with ps; [  ];
     "wemo" = ps: with ps; [  ];
     "wemo.binary_sensor" = ps: with ps; [  ];
     "wemo.fan" = ps: with ps; [  ];
     "wemo.light" = ps: with ps; [  ];
     "wemo.switch" = ps: with ps; [  ];
+    "whois" = ps: with ps; [  ];
+    "whois.sensor" = ps: with ps; [  ];
     "wink" = ps: with ps; [  ];
     "wink.alarm_control_panel" = ps: with ps; [  ];
     "wink.binary_sensor" = ps: with ps; [  ];
@@ -1566,7 +2017,30 @@
     "wirelesstag.binary_sensor" = ps: with ps; [  ];
     "wirelesstag.sensor" = ps: with ps; [  ];
     "wirelesstag.switch" = ps: with ps; [  ];
+    "workday" = ps: with ps; [  ];
+    "workday.binary_sensor" = ps: with ps; [  ];
+    "worldclock" = ps: with ps; [  ];
+    "worldclock.sensor" = ps: with ps; [  ];
+    "worldtidesinfo" = ps: with ps; [  ];
+    "worldtidesinfo.sensor" = ps: with ps; [  ];
+    "worxlandroid" = ps: with ps; [  ];
+    "worxlandroid.sensor" = ps: with ps; [  ];
+    "wsdot" = ps: with ps; [  ];
+    "wsdot.sensor" = ps: with ps; [  ];
+    "wunderground" = ps: with ps; [  ];
+    "wunderground.sensor" = ps: with ps; [  ];
     "wunderlist" = ps: with ps; [  ];
+    "x10" = ps: with ps; [  ];
+    "x10.light" = ps: with ps; [  ];
+    "xbox_live" = ps: with ps; [  ];
+    "xbox_live.sensor" = ps: with ps; [  ];
+    "xeoma" = ps: with ps; [  ];
+    "xeoma.camera" = ps: with ps; [  ];
+    "xfinity" = ps: with ps; [  ];
+    "xfinity.device_tracker" = ps: with ps; [  ];
+    "xiaomi" = ps: with ps; [  ];
+    "xiaomi.camera" = ps: with ps; [ ha-ffmpeg ];
+    "xiaomi.device_tracker" = ps: with ps; [  ];
     "xiaomi_aqara" = ps: with ps; [  ];
     "xiaomi_aqara.binary_sensor" = ps: with ps; [  ];
     "xiaomi_aqara.cover" = ps: with ps; [  ];
@@ -1582,13 +2056,46 @@
     "xiaomi_miio.sensor" = ps: with ps; [ construct ];
     "xiaomi_miio.switch" = ps: with ps; [ construct ];
     "xiaomi_miio.vacuum" = ps: with ps; [ construct ];
+    "xiaomi_tv" = ps: with ps; [  ];
+    "xiaomi_tv.media_player" = ps: with ps; [  ];
+    "xmpp" = ps: with ps; [  ];
+    "xmpp.notify" = ps: with ps; [ slixmpp ];
     "xs1" = ps: with ps; [  ];
     "xs1.climate" = ps: with ps; [  ];
     "xs1.sensor" = ps: with ps; [  ];
     "xs1.switch" = ps: with ps; [  ];
+    "yale_smart_alarm" = ps: with ps; [  ];
+    "yale_smart_alarm.alarm_control_panel" = ps: with ps; [  ];
+    "yamaha" = ps: with ps; [  ];
+    "yamaha.media_player" = ps: with ps; [  ];
+    "yamaha_musiccast" = ps: with ps; [  ];
+    "yamaha_musiccast.media_player" = ps: with ps; [  ];
+    "yandextts" = ps: with ps; [  ];
+    "yandextts.tts" = ps: with ps; [  ];
+    "yeelight" = ps: with ps; [  ];
+    "yeelight.binary_sensor" = ps: with ps; [  ];
+    "yeelight.light" = ps: with ps; [  ];
+    "yeelightsunflower" = ps: with ps; [  ];
+    "yeelightsunflower.light" = ps: with ps; [  ];
+    "yessssms" = ps: with ps; [  ];
+    "yessssms.notify" = ps: with ps; [  ];
+    "yi" = ps: with ps; [  ];
+    "yi.camera" = ps: with ps; [ ha-ffmpeg ];
+    "yr" = ps: with ps; [  ];
+    "yr.sensor" = ps: with ps; [ xmltodict ];
+    "yweather" = ps: with ps; [  ];
+    "yweather.sensor" = ps: with ps; [ yahooweather ];
+    "yweather.weather" = ps: with ps; [ yahooweather ];
     "zabbix" = ps: with ps; [  ];
     "zabbix.sensor" = ps: with ps; [  ];
+    "zamg" = ps: with ps; [  ];
+    "zamg.sensor" = ps: with ps; [  ];
+    "zamg.weather" = ps: with ps; [  ];
+    "zengge" = ps: with ps; [  ];
+    "zengge.light" = ps: with ps; [  ];
     "zeroconf" = ps: with ps; [ aiohttp-cors zeroconf ];
+    "zestimate" = ps: with ps; [  ];
+    "zestimate.sensor" = ps: with ps; [ xmltodict ];
     "zha" = ps: with ps; [  ];
     "zha.api" = ps: with ps; [  ];
     "zha.binary_sensor" = ps: with ps; [  ];
@@ -1601,11 +2108,15 @@
     "zha.light" = ps: with ps; [  ];
     "zha.sensor" = ps: with ps; [  ];
     "zha.switch" = ps: with ps; [  ];
+    "zhong_hong" = ps: with ps; [  ];
+    "zhong_hong.climate" = ps: with ps; [  ];
     "zigbee" = ps: with ps; [  ];
     "zigbee.binary_sensor" = ps: with ps; [  ];
     "zigbee.light" = ps: with ps; [  ];
     "zigbee.sensor" = ps: with ps; [  ];
     "zigbee.switch" = ps: with ps; [  ];
+    "ziggo_mediabox_xl" = ps: with ps; [  ];
+    "ziggo_mediabox_xl.media_player" = ps: with ps; [  ];
     "zone" = ps: with ps; [  ];
     "zone.config_flow" = ps: with ps; [  ];
     "zone.const" = ps: with ps; [  ];
diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix
index 1de084c84ea5..85aa4caf0833 100644
--- a/pkgs/servers/home-assistant/default.nix
+++ b/pkgs/servers/home-assistant/default.nix
@@ -48,8 +48,8 @@ let
       "3ef3092145e9b70e3ddd2c7ad59bdd0252a94dfe3949721633e41344de00a6bf")
     (mkOverride "requests" "2.21.0"
       "502a824f31acdacb3a35b6690b5fbf0bc41d63a24a45c4004352b0242707598e")
-    (mkOverride "ruamel_yaml" "0.15.88"
-      "ac56193c47a31c9efa151064a9e921865cdad0f7a991d229e7197e12fe8e0cd7")
+    (mkOverride "ruamel_yaml" "0.15.89"
+      "86d034aa9e2ab3eacc5f75f5cd6a469a2af533b6d9e60ea92edbba540d21b9b7")
     (mkOverride "voluptuous" "0.11.5"
       "567a56286ef82a9d7ae0628c5842f65f516abcb496e74f3f59f1d7b28df314ef")
     (mkOverride "voluptuous-serialize" "2.1.0"
@@ -97,7 +97,7 @@ let
   extraBuildInputs = extraPackages py.pkgs;
 
   # Don't forget to run parse-requirements.py after updating
-  hassVersion = "0.90.1";
+  hassVersion = "0.91.1";
 
 in with py.pkgs; buildPythonApplication rec {
   pname = "homeassistant";
@@ -112,7 +112,7 @@ in with py.pkgs; buildPythonApplication rec {
     owner = "home-assistant";
     repo = "home-assistant";
     rev = version;
-    sha256 = "1w8mbrzr760867a342jyihxbkx3i9pdsdxdv2ck15fy4axd3wbsh";
+    sha256 = "1y2sv9qq7zmb85n2f5b3csnc60xi87ccpkmhz8ii9gkjw6swikyh";
   };
 
   propagatedBuildInputs = [
@@ -133,7 +133,7 @@ in with py.pkgs; buildPythonApplication rec {
     # Some basic components should be tested however
     py.test \
       tests/components/{api,config,configurator,demo,discovery,frontend,group,history,history_graph} \
-      tests/components/{http,init,introduction,logger,script,shell_command,system_log,websocket_api}
+      tests/components/{homeassistant,http,introduction,logger,script,shell_command,system_log,websocket_api}
   '';
 
   makeWrapperArgs = lib.optional skipPip "--add-flags --skip-pip";
diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix
index a011e35ae64e..f8349c24f7fb 100644
--- a/pkgs/servers/home-assistant/frontend.nix
+++ b/pkgs/servers/home-assistant/frontend.nix
@@ -2,11 +2,11 @@
 
 buildPythonPackage rec {
   pname = "home-assistant-frontend";
-  version = "20190321.0";
+  version = "20190331.0";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0sk96mnmvsbcqjjcrlgfsxkywms0zmajjgn3ibvk4sfn5wn53bg7";
+    sha256 = "2d266a4d3d31af9a50debb99b0e9e9650044698f9157753bec785785057264cf";
   };
 
   propagatedBuildInputs = [ user-agents ];
diff --git a/pkgs/servers/http/apache-httpd/2.4.nix b/pkgs/servers/http/apache-httpd/2.4.nix
index 64e57f64236e..5933a71e5159 100644
--- a/pkgs/servers/http/apache-httpd/2.4.nix
+++ b/pkgs/servers/http/apache-httpd/2.4.nix
@@ -16,12 +16,12 @@ assert ldapSupport -> aprutil.ldapSupport && openldap != null;
 assert http2Support -> nghttp2 != null;
 
 stdenv.mkDerivation rec {
-  version = "2.4.38";
+  version = "2.4.39";
   name = "apache-httpd-${version}";
 
   src = fetchurl {
     url = "mirror://apache/httpd/httpd-${version}.tar.bz2";
-    sha256 = "0jiriyyf3pm6axf4mrz6c2z08yhs21hb4d23viq87jclm5bmiikx";
+    sha256 = "18ngvsjq65qxk3biggnkhkq8jlll9dsg9n3csra9p99sfw2rvjml";
   };
 
   # FIXME: -dev depends on -doc
diff --git a/pkgs/servers/http/nginx/generic.nix b/pkgs/servers/http/nginx/generic.nix
index 691ca014257b..02bef43c184f 100644
--- a/pkgs/servers/http/nginx/generic.nix
+++ b/pkgs/servers/http/nginx/generic.nix
@@ -9,6 +9,17 @@
 
 with stdenv.lib;
 
+let
+
+  mapModules = attrPath: flip concatMap modules
+    (mod:
+      let supports = mod.supports or (_: true);
+      in
+        if supports version then mod.${attrPath} or []
+        else throw "Module at ${toString mod.src} does not support nginx version ${version}!");
+
+in
+
 stdenv.mkDerivation {
   name = "nginx-${version}";
 
@@ -18,7 +29,7 @@ stdenv.mkDerivation {
   };
 
   buildInputs = [ openssl zlib pcre libxml2 libxslt gd geoip ]
-    ++ concatMap (mod: mod.inputs or []) modules;
+    ++ mapModules "inputs";
 
   configureFlags = [
     "--with-http_ssl_module"
@@ -77,7 +88,7 @@ stdenv.mkDerivation {
       url = "https://raw.githubusercontent.com/openwrt/packages/master/net/nginx/patches/103-sys_nerr.patch";
       sha256 = "0s497x6mkz947aw29wdy073k8dyjq8j99lax1a1mzpikzr4rxlmd";
     })
-  ];
+  ] ++ mapModules "patches";
 
   hardeningEnable = optional (!stdenv.isDarwin) "pie";
 
diff --git a/pkgs/servers/http/nginx/mainline.nix b/pkgs/servers/http/nginx/mainline.nix
index d86a78187e5f..d7ee0a0af0a9 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.15.9";
-  sha256 = "0hxfsz1117r91b9fb5hjddyrf1czvb36lh1z7zalqqdskfcbmkz4";
+  version = "1.15.10";
+  sha256 = "0g3wadbf9r730p0j5c0pnsmbmbrwvvnpyzhgbmsf9g2jplx78rdq";
 })
diff --git a/pkgs/servers/http/nginx/modules.nix b/pkgs/servers/http/nginx/modules.nix
index 57884bcfdb96..6a0114a6ba55 100644
--- a/pkgs/servers/http/nginx/modules.nix
+++ b/pkgs/servers/http/nginx/modules.nix
@@ -1,5 +1,22 @@
 { fetchFromGitHub, lib, pkgs }:
 
+let
+
+  http_proxy_connect_module_generic = patchName: rec {
+    src = fetchFromGitHub {
+      owner = "chobits";
+      repo = "ngx_http_proxy_connect_module";
+      rev = "8201639082cba702211585b03d4cc7bc51c65167";
+      sha256 = "0z71x3xnlczrr2kq43w3drxj9g14fkk4jz66x921v0yb8r9mnn5a";
+    };
+
+    patches = [
+      "${src}/patch/${patchName}.patch"
+    ];
+  };
+
+in
+
 {
   brotli = {
     src = let gitsrc = pkgs.fetchFromGitHub {
@@ -318,4 +335,12 @@
       sha256 = "1jq2s9k7hah3b317hfn9y3g1q4g4x58k209psrfsqs718a9sw8c7";
     };
   };
+
+  http_proxy_connect_module_v15 = http_proxy_connect_module_generic "proxy_connect_rewrite_1015" // {
+    supports = with lib.versions; version: major version == "1" && minor version == "15";
+  };
+
+  http_proxy_connect_module_v14 = http_proxy_connect_module_generic "proxy_connect_rewrite_1014" // {
+    supports = with lib.versions; version: major version == "1" && minor version == "14";
+  };
 }
diff --git a/pkgs/servers/irc/ngircd/default.nix b/pkgs/servers/irc/ngircd/default.nix
index f3b67741c191..5194ab278bf7 100644
--- a/pkgs/servers/irc/ngircd/default.nix
+++ b/pkgs/servers/irc/ngircd/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, zlib, openssl, pam, libiconv }:
 
 stdenv.mkDerivation rec {
-  name = "ngircd-24";
+  name = "ngircd-25";
 
   src = fetchurl {
     url = "https://ngircd.barton.de/pub/ngircd/${name}.tar.xz";
-    sha256 = "020h9d1awyxqr0l42x1fhs47q7cmm17fdxzjish8p2kq23ma0gqp";
+    sha256 = "0kpf5qi98m9f833r4rx9n6h9p31biwk798jwc1mgzmix7sp7r6f4";
   };
 
   configureFlags = [
diff --git a/pkgs/servers/mail/dovecot/default.nix b/pkgs/servers/mail/dovecot/default.nix
index 7528c4c8c035..802c6698df64 100644
--- a/pkgs/servers/mail/dovecot/default.nix
+++ b/pkgs/servers/mail/dovecot/default.nix
@@ -9,7 +9,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "dovecot-2.3.5";
+  name = "dovecot-2.3.5.1";
 
   nativeBuildInputs = [ perl pkgconfig ];
   buildInputs =
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://dovecot.org/releases/2.3/${name}.tar.gz";
-    sha256 = "1zxa9banams9nmk99sf1rqahr11cdqxhwi7hyz3ddxqidpn15qdz";
+    sha256 = "0gy3qzwbp6zsyn44pcfq8iiv9iy9q7z6py30h60alb1vkr3rv3yp";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix b/pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix
index 73d6b5d593c9..0dc037a06ca7 100644
--- a/pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix
+++ b/pkgs/servers/mail/dovecot/plugins/pigeonhole/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "dovecot-pigeonhole-${version}";
-  version = "0.5.4";
+  version = "0.5.5";
 
   src = fetchurl {
     url = "https://pigeonhole.dovecot.org/releases/2.3/dovecot-2.3-pigeonhole-${version}.tar.gz";
-    sha256 = "05l5y0gc8ycswdbl58j7kbx5gq1z7mjkazjccmgbq6h0gbk9jyal";
+    sha256 = "19a9a6rdvdlrm00k2npprj6lrikjhngnmpgg412848rb3ip11anb";
   };
 
   buildInputs = [ dovecot openssl ];
diff --git a/pkgs/servers/mail/postfix/default.nix b/pkgs/servers/mail/postfix/default.nix
index 4c1420b1ae20..634bba2e57c9 100644
--- a/pkgs/servers/mail/postfix/default.nix
+++ b/pkgs/servers/mail/postfix/default.nix
@@ -26,11 +26,11 @@ in stdenv.mkDerivation rec {
 
   name = "postfix-${version}";
 
-  version = "3.4.3";
+  version = "3.4.5";
 
   src = fetchurl {
     url = "ftp://ftp.cs.uu.nl/mirror/postfix/postfix-release/official/${name}.tar.gz";
-    sha256 = "1c4ga3p0jshs9xyfq07j6jl9hj42p47q6nbmy42cijax90bhayz3";
+    sha256 = "17riwr21i9p1h17wpagfiwkpx9bbx7dy4gpdl219a11akm7saawb";
   };
 
   nativeBuildInputs = [ makeWrapper m4 ];
diff --git a/pkgs/servers/mail/rspamd/default.nix b/pkgs/servers/mail/rspamd/default.nix
index fda7a1a80ef7..a8c09945fa92 100644
--- a/pkgs/servers/mail/rspamd/default.nix
+++ b/pkgs/servers/mail/rspamd/default.nix
@@ -14,13 +14,13 @@ in
 
 stdenv.mkDerivation rec {
   name = "rspamd-${version}";
-  version = "1.8.3";
+  version = "1.9.0";
 
   src = fetchFromGitHub {
     owner = "rspamd";
     repo = "rspamd";
     rev = version;
-    sha256 = "1aikmscb3hywac4sf4xkl4kw0x3syzphfrmxhigz2jjqzxn8f50k";
+    sha256 = "0n5abzs2i3mz65p5dwbph5bdamqv28wc1iw4gc4f84m0cda1vs0r";
   };
 
   nativeBuildInputs = [ cmake pkgconfig perl ];
diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix
index 783c0b5bde82..d942e5fa8d31 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 = "0.99.2";
+  version = "0.99.3";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0y6vic0fjx9k8178vsns0ab4ngqx8qhiyampqnil0b1biqcd68bw";
+    sha256 = "03300dplzckydwfvbn4w1sfc77b461cvgpi3qkhbv9jnnzz5y28g";
   };
 
   patches = [
diff --git a/pkgs/servers/mattermost/default.nix b/pkgs/servers/mattermost/default.nix
index 02aa4fbab7da..2fc8232f0a28 100644
--- a/pkgs/servers/mattermost/default.nix
+++ b/pkgs/servers/mattermost/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, fetchFromGitHub, buildGoPackage, buildEnv }:
 
 let
-  version = "5.7.1";
+  version = "5.9.0";
 
   mattermost-server = buildGoPackage rec {
     name = "mattermost-server-${version}";
@@ -10,7 +10,7 @@ let
       owner = "mattermost";
       repo = "mattermost-server";
       rev = "v${version}";
-      sha256 = "1k4rd8383bz9q23wgxnqcp69hcixaa0zd256h54wmwqw6fdn3bc0";
+      sha256 = "08h7n9smv6f1njazn4pl6pwkfmqxn93rzg69h6asicp9c4vad3m2";
     };
 
     goPackagePath = "github.com/mattermost/mattermost-server";
@@ -27,7 +27,7 @@ let
 
     src = fetchurl {
       url = "https://releases.mattermost.com/${version}/mattermost-${version}-linux-amd64.tar.gz";
-      sha256 = "0rxbgd3cb9m7rf0yg1vpd1af6x6bn0jilb0pfqr46dg42a70dx09";
+      sha256 = "19ys5mwmw99fbj44gd00vrl2qj09lrwvj1ihic0fsn6nd3hnx3mw";
     };
 
     installPhase = ''
diff --git a/pkgs/servers/mautrix-whatsapp/default.nix b/pkgs/servers/mautrix-whatsapp/default.nix
index ea3fbd58e2eb..f6526ab1f715 100644
--- a/pkgs/servers/mautrix-whatsapp/default.nix
+++ b/pkgs/servers/mautrix-whatsapp/default.nix
@@ -2,15 +2,15 @@
 
 buildGoPackage rec {
   name = "mautrix-unstable-${version}";
-  version = "2019-02-11";
+  version = "2019-02-24";
 
   goPackagePath = "maunium.net/go/mautrix-whatsapp";
 
   src = fetchFromGitHub {
     owner = "tulir";
     repo = "mautrix-whatsapp";
-    rev = "f689297ba6704265a938951f307b365e829fcfa1";
-    sha256 = "1658bika9ylhm64k9lxavp43dxilygn6vx7yn6y1l10j8by2akxk";
+    rev = "485acf6de654b8fb70007876c074fb004eb9717b";
+    sha256 = "1v7h3s8h0aiq6g06h9j1sidw8y5aiw24sgdh9knr1c90pvvc7pmv";
   };
 
   goDeps = ./deps.nix;
diff --git a/pkgs/servers/mautrix-whatsapp/deps.nix b/pkgs/servers/mautrix-whatsapp/deps.nix
index 8a1543ac012f..8624889e3468 100644
--- a/pkgs/servers/mautrix-whatsapp/deps.nix
+++ b/pkgs/servers/mautrix-whatsapp/deps.nix
@@ -14,8 +14,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/Rhymen/go-whatsapp";
-      rev = "2ca6af00572c";
-      sha256 = "0lrscj59n9nmd5z0h9r2c952m0da672r3aj33bi443ap0h97w19i";
+      rev = "c1173899de99";
+      sha256 = "1f46zpbfgv3k38lgdrcwqf4cm34dgqxlfs9qzg380in61460lcri";
     };
   }
   {
@@ -41,8 +41,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/gorilla/mux";
-      rev = "v1.6.2";
-      sha256 = "0pvzm23hklxysspnz52mih6h1q74vfrdhjfm1l3sa9r8hhqmmld2";
+      rev = "v1.7.0";
+      sha256 = "09cn5v1gxrrrydzyllp1asbhgm5xsawb92as7cg9jqg6iyqajvlc";
     };
   }
   {
@@ -59,8 +59,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/mattn/go-colorable";
-      rev = "v0.0.9";
-      sha256 = "1nwjmsppsjicr7anq8na6md7b1z84l9ppnlr045hhxjvbkqwalvx";
+      rev = "v0.1.1";
+      sha256 = "0l640974j804c1yyjfgyxqlsivz0yrzmbql4mhcw2azryigkp08p";
     };
   }
   {
@@ -68,8 +68,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/mattn/go-isatty";
-      rev = "v0.0.4";
-      sha256 = "0zs92j2cqaw9j8qx1sdxpv3ap0rgbs0vrvi72m40mg8aa36gd39w";
+      rev = "v0.0.5";
+      sha256 = "114d5xm8rfxplzd7nxz97gfngb4bhqy102szl084d1afcxsvm4aa";
     };
   }
   {
@@ -113,8 +113,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/crypto";
-      rev = "ff983b9c42bc";
-      sha256 = "1hpr06kzn8jnn3gvzp0p9zn4fz4l9h69f7x66idx142w4xdlaanz";
+      rev = "ffb98f73852f";
+      sha256 = "0hil543q2zq8wxsz6ljrfnrhhxg5j0mrjfwskf2x6q0ppqizsa4h";
     };
   }
   {
@@ -140,8 +140,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sys";
-      rev = "48ac38b7c8cb";
-      sha256 = "037vs8sdvq310j3b6z9k62zlby1mzmsr9ha01rcy98dv5v8bkhin";
+      rev = "cd391775e71e";
+      sha256 = "12wk5ylx0jjajipr68yn50wcd0c9shzhq9y4an40ldnv4bsdp2rj";
     };
   }
   {
diff --git a/pkgs/servers/misc/airsonic/default.nix b/pkgs/servers/misc/airsonic/default.nix
index 059a6b8f0aaa..8dd294bcdf84 100644
--- a/pkgs/servers/misc/airsonic/default.nix
+++ b/pkgs/servers/misc/airsonic/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "airsonic-${version}";
-  version = "10.1.2";
+  version = "10.2.1";
 
   src = fetchurl {
     url = "https://github.com/airsonic/airsonic/releases/download/v${version}/airsonic.war";
-    sha256 = "0hpk801dipmzsswgx0y6m0xhwn5iz97agnb2bzbr5xhkl4a0d33k";
+    sha256 = "1gjyg9qnrckm2gmym13yhlvw0iaspl8x0534zdw558gi3mjykm4v";
   };
 
   buildCommand = ''
diff --git a/pkgs/servers/monitoring/grafana/default.nix b/pkgs/servers/monitoring/grafana/default.nix
index bda717b2afb1..7021b2210bd5 100644
--- a/pkgs/servers/monitoring/grafana/default.nix
+++ b/pkgs/servers/monitoring/grafana/default.nix
@@ -1,7 +1,7 @@
 { lib, buildGoPackage, fetchurl, fetchFromGitHub, phantomjs2 }:
 
 buildGoPackage rec {
-  version = "6.0.1";
+  version = "6.1.1";
   name = "grafana-${version}";
   goPackagePath = "github.com/grafana/grafana";
 
@@ -11,12 +11,12 @@ buildGoPackage rec {
     rev = "v${version}";
     owner = "grafana";
     repo = "grafana";
-    sha256 = "0dh4yjcg0spv8g0xqxaljwix6yh98lnkd2fwv6rgw5w84j95h9br";
+    sha256 = "1n7wr89sbpdi1zpqvmyidp9y0mjdnxgdv7bj6gc9kkp6dskqk1r8";
   };
 
   srcStatic = fetchurl {
     url = "https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-${version}.linux-amd64.tar.gz";
-    sha256 = "0kfi9v0w43nwci575xph3lxa96w8li50jsa1n9pjvz31cjs7hyy2";
+    sha256 = "0dbqqm3z2z4bxgq9y2lbjx6znjgqmsyz8qih2b4z6j3fvixfa5sw";
   };
 
   postPatch = ''
diff --git a/pkgs/servers/rippled/default.nix b/pkgs/servers/rippled/default.nix
index 75aced300ed3..3dcb6605a61e 100644
--- a/pkgs/servers/rippled/default.nix
+++ b/pkgs/servers/rippled/default.nix
@@ -101,13 +101,13 @@ let
   };
 in stdenv.mkDerivation rec {
   name = "rippled-${version}";
-  version = "1.2.0";
+  version = "1.2.1";
 
   src = fetchFromGitHub {
     owner = "ripple";
     repo = "rippled";
     rev = version;
-    sha256 = "1zx8qs32v5ibkwm9nm6m0qh0gcr0vcigr2wbxpd40pqqk73cqb3q";
+    sha256 = "1lm0zzz0hi2sh2f4iqq3scapzdjbxcjgr700fgham9wqgaj2ash5";
   };
 
   hardeningDisable = ["format"];
diff --git a/pkgs/servers/sabnzbd/default.nix b/pkgs/servers/sabnzbd/default.nix
index 2e68944c00d0..12253d740b7b 100644
--- a/pkgs/servers/sabnzbd/default.nix
+++ b/pkgs/servers/sabnzbd/default.nix
@@ -4,7 +4,7 @@ let
   pythonEnv = python2.withPackages(ps: with ps; [ cryptography cheetah yenc sabyenc ]);
   path = stdenv.lib.makeBinPath [ par2cmdline unrar unzip p7zip ];
 in stdenv.mkDerivation rec {
-  version = "2.3.7";
+  version = "2.3.8";
   pname = "sabnzbd";
   name = "${pname}-${version}";
 
@@ -12,7 +12,7 @@ in stdenv.mkDerivation rec {
     owner = pname;
     repo = pname;
     rev = version;
-    sha256 = "08bk2ignm50ki2bqwwl0q9pia7v91cixr5b1yibz6qxsyfprk0mj";
+    sha256 = "1kdm2gv4mpdmyzfm9mfv26yxvjks8ii7c12hprp1zrmcindxg03g";
   };
 
   buildInputs = [ pythonEnv makeWrapper ];
diff --git a/pkgs/servers/sonarr/default.nix b/pkgs/servers/sonarr/default.nix
index 7405f716933b..12cd3bfaad93 100644
--- a/pkgs/servers/sonarr/default.nix
+++ b/pkgs/servers/sonarr/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "sonarr-${version}";
-  version = "2.0.0.5301";
+  version = "2.0.0.5322";
 
   src = fetchurl {
     url = "https://download.sonarr.tv/v2/master/mono/NzbDrone.master.${version}.mono.tar.gz";
-    sha256 = "16jjxs0gj5jdy0r4ynhck36b2balphqj24n2gfabrlgxsc6g20jv";
+    sha256 = "0vwljxnlrrssbdzxqq4yr93v323gr3x6jmg30gki58anf012q9pw";
   };
 
   buildInputs = [
diff --git a/pkgs/servers/web-apps/matomo/default.nix b/pkgs/servers/web-apps/matomo/default.nix
index 89de25008113..17cb8be739f6 100644
--- a/pkgs/servers/web-apps/matomo/default.nix
+++ b/pkgs/servers/web-apps/matomo/default.nix
@@ -2,13 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "matomo-${version}";
-  version = "3.8.1";
+  version = "3.9.1";
 
   src = fetchurl {
-    # TODO: As soon as the tarballs are renamed as well on future releases, this should be enabled again
-    # url = "https://builds.matomo.org/${name}.tar.gz";
-    url = "https://builds.matomo.org/piwik-${version}.tar.gz";
-    sha256 = "0ca4fkg2jpkfg0r9hxl45ad5xzz0gxhf404i96j059bn3c41kfi0";
+    url = "https://builds.matomo.org/matomo-${version}.tar.gz";
+    sha256 = "1y406dnwn4jyrjr2d5qfsg3b4v7nfbh09v74dm1vlcy3mkbhv2bp";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/audio/abcmidi/default.nix b/pkgs/tools/audio/abcmidi/default.nix
index 7a6d4e6d3ab9..36def731afc7 100644
--- a/pkgs/tools/audio/abcmidi/default.nix
+++ b/pkgs/tools/audio/abcmidi/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "abcMIDI-${version}";
-  version = "2019.02.08";
+  version = "2019.03.30";
 
   src = fetchzip {
     url = "https://ifdo.ca/~seymour/runabc/${name}.zip";
-    sha256 = "14j2vgcck7c6x8bplhfng7mmqcmh7h98jggi30d5xa0anx1271sb";
+    sha256 = "05a2n3l6l4ds9vi05hldw7fc6hx9avdh8jbiakazzmyvcsysr12x";
   };
 
   # There is also a file called "makefile" which seems to be preferred by the standard build phase
diff --git a/pkgs/tools/audio/picotts/default.nix b/pkgs/tools/audio/picotts/default.nix
new file mode 100644
index 000000000000..d1b055f1d5f4
--- /dev/null
+++ b/pkgs/tools/audio/picotts/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchFromGitHub, autoconf, automake, libtool, popt }:
+
+stdenv.mkDerivation {
+  name = "picotts-unstable-2018-10-19";
+  src = fetchFromGitHub {
+    repo = "picotts";
+    owner = "naggety";
+    rev = "2f86050dc5da9ab68fc61510b594d8e6975c4d2d";
+    sha256 = "1k2mdv9llkh77jr4qr68yf0zgjqk87np35fgfmnc3rpdp538sccl";
+  };
+  nativeBuildInputs = [ autoconf automake ];
+  buildInputs = [ libtool popt ];
+  sourceRoot = "source/pico";
+  preConfigure = "./autogen.sh";
+  meta = {
+    description = "Text to speech voice sinthesizer from SVox.";
+    homepage = https://github.com/naggety/picotts;
+    license = stdenv.lib.licenses.asl20;
+    maintainers = [ stdenv.lib.maintainers.canndrew ];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
+
+
diff --git a/pkgs/tools/backup/bacula/default.nix b/pkgs/tools/backup/bacula/default.nix
index 759e2606e198..05d8a7177768 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.4.1";
+  name = "bacula-9.4.2";
 
   src = fetchurl {
     url    = "mirror://sourceforge/bacula/${name}.tar.gz";
-    sha256 = "0hpxk0f81yx4p1xndsjbwnj7hvvplqlgrw74gv1scq6krabn2pvb";
+    sha256 = "1878jk541b8gvqbh15f0k3bvki1mx02q8mxnxhn9fdc1qk9083d4";
   };
 
   buildInputs = [ postgresql sqlite zlib ncurses openssl readline ]
diff --git a/pkgs/tools/backup/dar/default.nix b/pkgs/tools/backup/dar/default.nix
index 6bdcad9a21a5..ea9ccdc36e1b 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.2";
+  version = "2.6.3";
   name = "dar-${version}";
 
   src = fetchurl {
     url = "mirror://sourceforge/dar/${name}.tar.gz";
-    sha256 = "0bjrv6pxrzmb4d09yikl5wg6hz3llc30xl0ldzik4jzjrr8bcfpn";
+    sha256 = "00jlmbg80xam3xg1vvrbi5wl6cwij5bz8w80d4k0bmmk4rrwq4rc";
   };
 
   buildInputs = [ zlib bzip2 openssl lzo libgcrypt gpgme xz ]
diff --git a/pkgs/tools/bluetooth/bluez-alsa/default.nix b/pkgs/tools/bluetooth/bluez-alsa/default.nix
index 70bf187a2283..f13db4572e08 100644
--- a/pkgs/tools/bluetooth/bluez-alsa/default.nix
+++ b/pkgs/tools/bluetooth/bluez-alsa/default.nix
@@ -13,13 +13,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "bluez-alsa-${version}";
-  version = "1.3.1";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "Arkq";
     repo = "bluez-alsa";
     rev = "v${version}";
-    sha256 = "1rzcl65gipszsmlcg24gh1xkjkyk4929xhakn6y2smrgwv1zjqdh";
+    sha256 = "12kc2896rbir8viywd6bjwcklkwf46j4svh9viryn6kmk084nb49";
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
diff --git a/pkgs/tools/graphics/blur-effect/default.nix b/pkgs/tools/graphics/blur-effect/default.nix
new file mode 100644
index 000000000000..5bb209984396
--- /dev/null
+++ b/pkgs/tools/graphics/blur-effect/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, fetchFromGitHub, pkgconfig, cmake, gdk_pixbuf, libGL, mesa }:
+
+stdenv.mkDerivation rec {
+  pname = "blur-effect";
+  version = "1.1.3";
+
+  src = fetchFromGitHub {
+    owner = "sonald";
+    repo = pname;
+    rev = version;
+    sha256 = "0cjw7iz0p7x1bi4vmwrivfidry5wlkgfgdl9wly88cm3z9ib98jj";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    cmake
+  ];
+
+  buildInputs = [
+    gdk_pixbuf
+    libGL
+    mesa
+  ];
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/sonald/blur-effect;
+    description = "Off-screen image blurring utility using OpenGL ES 3.0";
+    license = licenses.gpl3;
+    platforms = platforms.unix;
+    broken = stdenv.hostPlatform.isDarwin; # packages 'libdrm' and 'gbm' not found
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/tools/graphics/oxipng/default.nix b/pkgs/tools/graphics/oxipng/default.nix
index 0fdabfe35888..130019c1bc2a 100644
--- a/pkgs/tools/graphics/oxipng/default.nix
+++ b/pkgs/tools/graphics/oxipng/default.nix
@@ -1,17 +1,17 @@
 { stdenv, fetchFromGitHub, rustPlatform }:
 
 rustPlatform.buildRustPackage rec {
-  version = "2.2.0";
-  name = "oxipng-${version}";
+  version = "2.2.1";
+  pname = "oxipng";
 
   src = fetchFromGitHub {
     owner = "shssoichiro";
-    repo = "oxipng";
+    repo = pname;
     rev = "v${version}";
-    sha256 = "00ys1dy8r1g84j04w50qcjas0qnfw4vphazvbfasd9q2b1p5z69l";
+    sha256 = "1r195x3wdkshjwy23fpqsyyrw7iaj7yb39nhcnx9d4nhgq8w0pcl";
   };
 
-  cargoSha256 = "125r3jmgwcq8qddm8hjpyzaam96kkifaxixksyaw2iqk9xq0nrpm";
+  cargoSha256 = "08mw937s61r4fj9bqrg492ss13zkik9557n9yk90r97a81972zbn";
 
   # https://crates.io/crates/cloudflare-zlib#arm-vs-nightly-rust
   cargoBuildFlags = [ "--features=cloudflare-zlib/arm-always" ];
diff --git a/pkgs/tools/graphics/vulkan-tools/default.nix b/pkgs/tools/graphics/vulkan-tools/default.nix
index 7d5283b3133e..66efb936aa4c 100644
--- a/pkgs/tools/graphics/vulkan-tools/default.nix
+++ b/pkgs/tools/graphics/vulkan-tools/default.nix
@@ -3,13 +3,13 @@
 
 stdenv.mkDerivation rec {
   name = "vulkan-tools-${version}";
-  version = "1.1.92";
+  version = "1.1.101.0";
 
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "Vulkan-Tools";
     rev = "sdk-${version}";
-    sha256 = "1khbfxp2mha7h0vqs0fkqscxm76gn3zlia8yya11lkhk7sn3h0d3";
+    sha256 = "03227qxa8q19qgzk30h0h49sh03idr6vh9srnrhiziw2vzmahmpp";
   };
 
   nativeBuildInputs = [ cmake pkgconfig ];
diff --git a/pkgs/tools/graphics/xcur2png/default.nix b/pkgs/tools/graphics/xcur2png/default.nix
new file mode 100644
index 000000000000..1e3da5dddecf
--- /dev/null
+++ b/pkgs/tools/graphics/xcur2png/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchFromGitHub, pkgconfig, libpng, xorg }:
+
+stdenv.mkDerivation rec {
+  pname = "xcur2png";
+  version = "0.7.1";
+
+  src = fetchFromGitHub {
+    owner = "eworm-de";
+    repo = pname;
+    rev = version;
+    sha256 = "0858wn2p14bxpv9lvaz2bz1rk6zk0g8zgxf8iy595m8fqv4q2fya";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+  ];
+
+  buildInputs = [
+    libpng
+    xorg.libX11
+    xorg.libXcursor
+    xorg.xorgproto
+  ];
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/eworm-de/xcur2png/releases;
+    description = "Convert X cursors to PNG images";
+    license = licenses.gpl3;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ romildo ];
+  };
+}
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix b/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix
index aab7563cb020..6d6c6d5d5769 100644
--- a/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/default.nix
@@ -13,13 +13,13 @@ in
 
 stdenv.mkDerivation rec {
   name = "ibus-typing-booster-${version}";
-  version = "2.5.3";
+  version = "2.6.0";
 
   src = fetchFromGitHub {
     owner = "mike-fabian";
     repo = "ibus-typing-booster";
     rev = version;
-    sha256 = "124a6yd7g6ws8s6p5146rhvyjswk001fqncc32jsfmjjgmgisqn2";
+    sha256 = "1d32p9k9vp64rpmj2cs3552ak9jn54vyi2hqdpzag33v16cydsl4";
   };
 
   patches = [ ./hunspell-dirs.patch ];
diff --git a/pkgs/tools/misc/bdf2psf/default.nix b/pkgs/tools/misc/bdf2psf/default.nix
index 655cbf3bc656..8c310310d43f 100644
--- a/pkgs/tools/misc/bdf2psf/default.nix
+++ b/pkgs/tools/misc/bdf2psf/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, perl, dpkg }:
 
 stdenv.mkDerivation rec {
-  name = "bdf2psf-${version}";
-  version = "1.190";
+  pname = "bdf2psf";
+  version = "1.191";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/c/console-setup/bdf2psf_${version}_all.deb";
-    sha256 = "1dm1lwlnr3ikbl2nkmvj60n9qj5qa0g4dyszrv3qx88m2f6zq99w";
+    sha256 = "0bqhn9rwrjipj7wd6c8i7rq39fc5jj5nc3mir931mfakknakkimk";
   };
 
   buildInputs = [ dpkg ];
diff --git a/pkgs/tools/misc/chafa/default.nix b/pkgs/tools/misc/chafa/default.nix
new file mode 100644
index 000000000000..00ab4cd75d0c
--- /dev/null
+++ b/pkgs/tools/misc/chafa/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, fetchFromGitHub, autoconf, automake, libtool, pkgconfig, which, libxslt, libxml2, docbook_xml_dtd_412, docbook_xsl, glib, imagemagick, darwin }:
+
+
+stdenv.mkDerivation rec{
+  version = "1.0.1";
+  pname = "chafa";
+
+  src = fetchFromGitHub {
+    owner = "hpjansson";
+    repo = "chafa";
+    rev = version;
+    sha256 = "1i1cnzmb12pxldc7y4q1xdmybv9xkhzrjyhdvmk3qsn02p859q04";
+  };
+
+  nativeBuildInputs = [ autoconf
+                        automake
+                        libtool
+                        pkgconfig
+                        which
+                        libxslt
+                        libxml2
+                        docbook_xml_dtd_412
+                        docbook_xsl
+                      ];
+
+  buildInputs = [ glib imagemagick ] ++ stdenv.lib.optional stdenv.isDarwin [ darwin.apple_sdk.frameworks.ApplicationServices ];
+
+  patches = [ ./xmlcatalog_patch.patch ];
+
+  preConfigure = ''
+    ./autogen.sh
+  '';
+
+  configureFlags = [ "--enable-man"
+                     "--with-xml-catalog=${docbook_xml_dtd_412}/xml/dtd/docbook/catalog.xml"
+                   ];
+
+  meta = with stdenv.lib; {
+    description = "Terminal graphics for the 21st century.";
+    homepage = https://hpjansson.org/chafa/;
+    license = licenses.lgpl3Plus;
+    platforms = platforms.all;
+    maintainers = [ maintainers.mog ];
+  };
+}
diff --git a/pkgs/tools/misc/chafa/xmlcatalog_patch.patch b/pkgs/tools/misc/chafa/xmlcatalog_patch.patch
new file mode 100644
index 000000000000..6bf988d6117f
--- /dev/null
+++ b/pkgs/tools/misc/chafa/xmlcatalog_patch.patch
@@ -0,0 +1,23 @@
+diff --git a/configure.ac b/configure.ac
+index 0055a70..fd4a905 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -111,18 +111,6 @@ AS_IF([ test "$enable_man" != no ], [
+   ])
+ ])
+ 
+-AS_IF([test "$enable_man" != no], [
+-  dnl check for DocBook XSL stylesheets in the local catalog
+-  JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
+-     [DocBook XSL Stylesheets], [have_docbook_style=yes],[have_docbook_style=no])
+-  AS_IF([ test "$have_docbook_style" != yes ], [
+-    AS_IF([ test "$enable_man" = yes ], [
+-      AC_MSG_ERROR([DocBook XSL Stylesheets are required for --enable-man])
+-    ])
+-    enable_man=no
+-  ])
+-])
+-
+ AM_CONDITIONAL(ENABLE_MAN, test "$enable_man" != no)
+ 
+ AC_MSG_CHECKING([whether to generate man pages])
diff --git a/pkgs/tools/misc/colord/default.nix b/pkgs/tools/misc/colord/default.nix
index e89f93a4a821..0719fb36164b 100644
--- a/pkgs/tools/misc/colord/default.nix
+++ b/pkgs/tools/misc/colord/default.nix
@@ -56,6 +56,7 @@ stdenv.mkDerivation rec {
     "-Dlibcolordcompat=true"
     "-Dsane=true"
     "-Dvapi=true"
+    "-Ddaemon_user=colord"
   ];
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/misc/direnv/default.nix b/pkgs/tools/misc/direnv/default.nix
index de8130ff3f1f..4a56e6465e62 100644
--- a/pkgs/tools/misc/direnv/default.nix
+++ b/pkgs/tools/misc/direnv/default.nix
@@ -2,14 +2,14 @@
 
 buildGoPackage rec {
   name = "direnv-${version}";
-  version = "2.19.2";
+  version = "2.20.0";
   goPackagePath = "github.com/direnv/direnv";
 
   src = fetchFromGitHub {
     owner = "direnv";
     repo = "direnv";
     rev = "v${version}";
-    sha256 = "1iq9wmc63x1c7g1ixdhd6q3w1sx8xl8kf1bprxwq26n9zpd0g13g";
+    sha256 = "0ds8abwasymbsn9vak2105gczfgka4mz1i6kf1lvc3zm27v55cij";
   };
 
   postConfigure = ''
diff --git a/pkgs/tools/misc/ffsend/default.nix b/pkgs/tools/misc/ffsend/default.nix
index 0ba3472ae702..c59ddd084983 100644
--- a/pkgs/tools/misc/ffsend/default.nix
+++ b/pkgs/tools/misc/ffsend/default.nix
@@ -2,34 +2,39 @@
 , darwin
 
 , x11Support ? stdenv.isLinux
-, xclip ? null
+, xclip ? null, xsel ? null
+, preferXsel ? false # if true and xsel is non-null, use it instead of xclip
 }:
 
-assert x11Support -> xclip != null;
+assert (x11Support && stdenv.isLinux) -> xclip != null || xsel != null;
 
 with rustPlatform;
 
 buildRustPackage rec {
   name = "ffsend-${version}";
-  version = "0.2.39";
+  version = "0.2.42";
 
   src = fetchFromGitLab {
     owner = "timvisee";
     repo = "ffsend";
     rev = "v${version}";
-    sha256 = "0109g2h8673q6kx1lbci59zg9iczj676fvbip3sf1xfypvca22j9";
+    sha256 = "0lsdn967rq6hf3fmkynznsvj8fcka5wi1mpcl3wfa7hf58r266yq";
   };
 
-  cargoSha256 = "0yf9zfilj2whhnmbvh8p8vz4gkd8ds21gshylwp4ykqwv5p59nqq";
+  cargoSha256 = "1f1npdr8v9vlv3xdraq1qang4l0j0w9slbws4da5ylw195nb4qx5";
 
   nativeBuildInputs = [ cmake pkgconfig ];
   buildInputs = [ openssl ]
   ++ stdenv.lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ CoreFoundation CoreServices Security AppKit ])
   ;
 
-  preBuild = if x11Support then ''
-    export XCLIP_PATH="${xclip}/bin/xclip"
-  '' else null;
+  preBuild = stdenv.lib.optionalString (x11Support && stdenv.isLinux) (
+    if preferXsel && xsel != null then ''
+      export XSEL_PATH="${xsel}/bin/xsel"
+    '' else ''
+      export XCLIP_PATH="${xclip}/bin/xclip"
+    ''
+  );
 
   postInstall = ''
     install -Dm644 contrib/completions/_ffsend "$out/share/zsh/site-functions/_ffsend"
diff --git a/pkgs/tools/misc/flashrom/default.nix b/pkgs/tools/misc/flashrom/default.nix
index 21a126b04f3b..b45df3f57b56 100644
--- a/pkgs/tools/misc/flashrom/default.nix
+++ b/pkgs/tools/misc/flashrom/default.nix
@@ -1,19 +1,19 @@
 { lib, stdenv, fetchurl, pkgconfig, libftdi, pciutils }:
 
-let version = "1.0"; in
 stdenv.mkDerivation rec {
   name = "flashrom-${version}";
+  version = "1.0.1";
 
   src = fetchurl {
-    url = "https://download.flashrom.org/releases/${name}.tar.bz2";
-    sha256 = "0i9wg1lyfg99bld7d00zqjm9f0lk6m0q3h3n9c195c9yysq5ccfb";
+    url = "https://download.flashrom.org/releases/flashrom-v${version}.tar.bz2";
+    sha256 = "0i6yrrl69hrqmwd7azj7x3j46m0qpvzmk3b5basym7mnlpfzhyfm";
   };
 
   # Newer versions of libusb deprecate some API flashrom uses.
-  postPatch = ''
-    substituteInPlace Makefile \
-      --replace "-Werror" "-Werror -Wno-error=deprecated-declarations -Wno-error=unused-const-variable="
-  '';
+  #postPatch = ''
+  #  substituteInPlace Makefile \
+  #    --replace "-Werror" "-Werror -Wno-error=deprecated-declarations -Wno-error=unused-const-variable="
+  #'';
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ libftdi pciutils ];
diff --git a/pkgs/tools/misc/graylog/default.nix b/pkgs/tools/misc/graylog/default.nix
index 238a60211c81..846fa8e8aca0 100644
--- a/pkgs/tools/misc/graylog/default.nix
+++ b/pkgs/tools/misc/graylog/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, makeWrapper, jre_headless }:
 
 stdenv.mkDerivation rec {
-  version = "3.0.0";
+  version = "3.0.1";
   name = "graylog-${version}";
 
   src = fetchurl {
     url = "https://packages.graylog2.org/releases/graylog/graylog-${version}.tgz";
-    sha256 = "1jcc254z4xqybm1f5r0g4dfyd9ji0z5g45hcnds32w9h8zqk391k";
+    sha256 = "07a003c2d9hj6aczlbai279z9bw50yk0a6qx1cw44f8p08y6dnqi";
   };
 
   dontBuild = true;
diff --git a/pkgs/tools/misc/html-proofer/Gemfile.lock b/pkgs/tools/misc/html-proofer/Gemfile.lock
index c7ae194e426b..139863d36ecb 100644
--- a/pkgs/tools/misc/html-proofer/Gemfile.lock
+++ b/pkgs/tools/misc/html-proofer/Gemfile.lock
@@ -1,42 +1,42 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    activesupport (5.2.0)
+    activesupport (5.2.3)
       concurrent-ruby (~> 1.0, >= 1.0.2)
       i18n (>= 0.7, < 2)
       minitest (~> 5.1)
       tzinfo (~> 1.1)
-    addressable (2.5.2)
+    addressable (2.6.0)
       public_suffix (>= 2.0.2, < 4.0)
     colorize (0.8.1)
-    concurrent-ruby (1.0.5)
-    ethon (0.11.0)
+    concurrent-ruby (1.1.5)
+    ethon (0.12.0)
       ffi (>= 1.3.0)
-    ffi (1.9.23)
-    html-proofer (3.8.0)
+    ffi (1.10.0)
+    html-proofer (3.10.2)
       activesupport (>= 4.2, < 6.0)
       addressable (~> 2.3)
       colorize (~> 0.8)
       mercenary (~> 0.3.2)
-      nokogiri (~> 1.8.1)
+      nokogiri (~> 1.9)
       parallel (~> 1.3)
       typhoeus (~> 1.3)
       yell (~> 2.0)
-    i18n (1.0.1)
+    i18n (1.6.0)
       concurrent-ruby (~> 1.0)
     mercenary (0.3.6)
-    mini_portile2 (2.3.0)
+    mini_portile2 (2.4.0)
     minitest (5.11.3)
-    nokogiri (1.8.2)
-      mini_portile2 (~> 2.3.0)
-    parallel (1.12.1)
-    public_suffix (3.0.2)
+    nokogiri (1.10.2)
+      mini_portile2 (~> 2.4.0)
+    parallel (1.17.0)
+    public_suffix (3.0.3)
     thread_safe (0.3.6)
-    typhoeus (1.3.0)
+    typhoeus (1.3.1)
       ethon (>= 0.9.0)
     tzinfo (1.2.5)
       thread_safe (~> 0.1)
-    yell (2.0.7)
+    yell (2.1.0)
 
 PLATFORMS
   ruby
@@ -45,4 +45,4 @@ DEPENDENCIES
   html-proofer
 
 BUNDLED WITH
-   1.14.6
+   1.17.2
diff --git a/pkgs/tools/misc/html-proofer/gemset.nix b/pkgs/tools/misc/html-proofer/gemset.nix
index 7043c9e355b0..6a6e62b726ed 100644
--- a/pkgs/tools/misc/html-proofer/gemset.nix
+++ b/pkgs/tools/misc/html-proofer/gemset.nix
@@ -1,23 +1,29 @@
 {
   activesupport = {
     dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nkzg31x501l8d1hbygyh1lr4c3vnw88a3c1rxz5ifvvzb10i6zm";
+      sha256 = "110vp4frgkw3mpzlmshg2f2ig09cknls2w68ym1r1s39d01v0mi8";
       type = "gem";
     };
-    version = "5.2.0";
+    version = "5.2.3";
   };
   addressable = {
     dependencies = ["public_suffix"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
+      sha256 = "0bcm2hchn897xjhqj9zzsxf3n9xhddymj4lsclz508f4vw3av46l";
       type = "gem";
     };
-    version = "2.5.2";
+    version = "2.6.0";
   };
   colorize = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "133rqj85n400qk6g3dhf2bmfws34mak1wqihvh3bgy9jhajw580b";
@@ -26,49 +32,61 @@
     version = "0.8.1";
   };
   concurrent-ruby = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "183lszf5gx84kcpb779v6a2y0mx9sssy8dgppng1z9a505nj1qcf";
+      sha256 = "1x07r23s7836cpp5z9yrlbpljcxpax14yw4fy4bnp6crhr6x24an";
       type = "gem";
     };
-    version = "1.0.5";
+    version = "1.1.5";
   };
   ethon = {
     dependencies = ["ffi"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0y70szwm2p0b9qfvpqrzjrgm3jz0ig65vlbfr6ppc3z0m1h7kv48";
+      sha256 = "0gggrgkcq839mamx7a8jbnp2h7x2ykfn34ixwskwb0lzx2ak17g9";
       type = "gem";
     };
-    version = "0.11.0";
+    version = "0.12.0";
   };
   ffi = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0zw6pbyvmj8wafdc7l5h7w20zkp1vbr2805ql5d941g2b20pk4zr";
+      sha256 = "0j8pzj8raxbir5w5k6s7a042sb5k02pg0f8s4na1r5lan901j00p";
       type = "gem";
     };
-    version = "1.9.23";
+    version = "1.10.0";
   };
   html-proofer = {
     dependencies = ["activesupport" "addressable" "colorize" "mercenary" "nokogiri" "parallel" "typhoeus" "yell"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06ggsx2fhsis1iw0sw12a709h99ksbs9kbmv0j05kvbak7b9m51a";
+      sha256 = "0qwy5cdl5l6rl9cqpcydl4126rwv1f4l9ixf3z6j2rdy979l2jaf";
       type = "gem";
     };
-    version = "3.8.0";
+    version = "3.10.2";
   };
   i18n = {
     dependencies = ["concurrent-ruby"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1milplpsdpxlvn23q6pvir4jgxsphq2ps2jgdb3i29kzpc55gm7y";
+      sha256 = "1hfxnlyr618s25xpafw9mypa82qppjccbh292c4l3bj36az7f6wl";
       type = "gem";
     };
-    version = "1.0.1";
+    version = "1.6.0";
   };
   mercenary = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "10la0xw82dh5mqab8bl0dk21zld63cqxb1g16fk8cb39ylc4n21a";
@@ -77,14 +95,18 @@
     version = "0.3.6";
   };
   mini_portile2 = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "13d32jjadpjj6d2wdhkfpsmy68zjx90p49bgf8f7nkpz86r1fr11";
+      sha256 = "15zplpfw3knqifj9bpf604rb3wc1vhq6363pd6lvhayng8wql5vy";
       type = "gem";
     };
-    version = "2.3.0";
+    version = "2.4.0";
   };
   minitest = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0icglrhghgwdlnzzp4jf76b0mbc71s80njn5afyfjn4wqji8mqbq";
@@ -94,30 +116,38 @@
   };
   nokogiri = {
     dependencies = ["mini_portile2"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05fm3xh462glvs0rwnfmc1spmgl4ljg2giifynbmwwqvl42zaaiq";
+      sha256 = "0sy96cc8i5y4p67fhf4d9c6sg8ymrrva21zyvzw55l0pa1582wx2";
       type = "gem";
     };
-    version = "1.8.2";
+    version = "1.10.2";
   };
   parallel = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "01hj8v1qnyl5ndrs33g8ld8ibk0rbcqdpkpznr04gkbxd11pqn67";
+      sha256 = "1x1gzgjrdlkm1aw0hfpyphsxcx90qgs3y4gmp9km3dvf4hc4qm8r";
       type = "gem";
     };
-    version = "1.12.1";
+    version = "1.17.0";
   };
   public_suffix = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1x5h1dh1i3gwc01jbg01rly2g6a1qwhynb1s8a30ic507z1nh09s";
+      sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
       type = "gem";
     };
-    version = "3.0.2";
+    version = "3.0.3";
   };
   thread_safe = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
@@ -127,15 +157,19 @@
   };
   typhoeus = {
     dependencies = ["ethon"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "01pd16n6bvknyip42r1r7js0j8x8ly37gmr72z3695zcczh1blyq";
+      sha256 = "0cni8b1idcp0dk8kybmxydadhfpaj3lbs99w5kjibv8bsmip2zi5";
       type = "gem";
     };
-    version = "1.3.0";
+    version = "1.3.1";
   };
   tzinfo = {
     dependencies = ["thread_safe"];
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
       sha256 = "1fjx9j327xpkkdlxwmkl3a8wqj7i4l4jwlrv3z13mg95z9wl253z";
@@ -144,11 +178,13 @@
     version = "1.2.5";
   };
   yell = {
+    groups = ["default"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1m3q1l33sznrl86myjhd2l7chma1wdcdrdmnf2fi7aydapwd4vib";
+      sha256 = "161kfwyv7aq983m2gd90c67sqcs0p1z6nhjall2mdr7iz0gqf9wn";
       type = "gem";
     };
-    version = "2.0.7";
+    version = "2.1.0";
   };
 }
\ No newline at end of file
diff --git a/pkgs/tools/misc/ltunify/default.nix b/pkgs/tools/misc/ltunify/default.nix
index cf28fa051326..cb594391e2a1 100644
--- a/pkgs/tools/misc/ltunify/default.nix
+++ b/pkgs/tools/misc/ltunify/default.nix
@@ -1,12 +1,17 @@
-{ stdenv, fetchgit }:
+{ stdenv, fetchFromGitHub }:
+
+# Although we copy in the udev rules here, you probably just want to use logitech-udev-rules instead of
+# adding this to services.udev.packages on NixOS
 
 stdenv.mkDerivation rec {
-  name = "ltunify-20140331";
+  name = "ltunify-${version}";
+  version = "unstable-20180330";
 
-  src = fetchgit {
-    url = "https://git.lekensteyn.nl/ltunify.git";
-    rev = "c3a263ff97bcd31e96abbfed33d066f8d2778f58";
-    sha256 = "04g7mmljkx8643k53yd9x4k2ndrr98w7fbq10qn8ll6didkph3v8";
+  src = fetchFromGitHub {
+    owner  = "Lekensteyn";
+    repo   = "ltunify";
+    rev    = "f664d1d41d5c4beeac5b81e485c3498f13109db7";
+    sha256 = "07sqhih9jmm7vgiwqsjzihd307cj7l096sxjl25p7nwr1q4180wv";
   };
 
   makeFlags = [ "DESTDIR=$(out)" "bindir=/bin" ];
@@ -15,7 +20,7 @@ stdenv.mkDerivation rec {
     description = "Tool for working with Logitech Unifying receivers and devices";
     homepage = https://lekensteyn.nl/logitech-unifying.html;
     license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ abbradar ];
     platforms = platforms.linux;
-    maintainers = [ maintainers.abbradar ];
   };
 }
diff --git a/pkgs/tools/misc/minicom/default.nix b/pkgs/tools/misc/minicom/default.nix
index 326a3b053ed1..3c2ed1352257 100644
--- a/pkgs/tools/misc/minicom/default.nix
+++ b/pkgs/tools/misc/minicom/default.nix
@@ -1,17 +1,20 @@
-{ stdenv, fetchurl, autoreconfHook, pkgconfig
-, ncurses, libiconv }:
+{ stdenv, fetchgit, autoreconfHook, makeWrapper, pkgconfig
+, lrzsz, ncurses, libiconv }:
 
 stdenv.mkDerivation rec {
-  name = "minicom-2.7.1";
-
-  src = fetchurl {
-    url    = "https://alioth.debian.org/frs/download.php/latestfile/3/${name}.tar.gz";
-    sha256 = "1wa1l36fa4npd21xa9nz60yrqwkk5cq713fa3p5v0zk7g9mq6bsk";
+  name = "minicom-${version}";
+  version = "2.7.1";
+
+  # The repository isn't tagged properly, so we need to use commit refs
+  src = fetchgit {
+    url    = "https://salsa.debian.org/minicom-team/minicom.git";
+    rev    = "6ea8033b6864aa35d14fb8b87e104e4f783635ce";
+    sha256 = "0j95727xni4r122dalp09963gvc1nqa18l1d4wzz8746kw5s2rrb";
   };
 
   buildInputs = [ ncurses ] ++ stdenv.lib.optional stdenv.isDarwin libiconv;
 
-  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+  nativeBuildInputs = [ autoreconfHook makeWrapper pkgconfig ];
 
   enableParallelBuilding = true;
 
@@ -26,18 +29,22 @@ stdenv.mkDerivation rec {
     # Have `configure' assume that the lock directory exists.
     substituteInPlace configure \
       --replace 'test -d $UUCPLOCK' true
+  '';
 
-    substituteInPlace src/rwconf.c \
-      --replace /usr/bin/ascii-xfr $out/bin/ascii-xfr
+  postInstall = ''
+    for f in $out/bin/*minicom ; do
+      wrapProgram $f \
+        --prefix PATH : ${stdenv.lib.makeBinPath [ lrzsz ]}:$out/bin
+    done
   '';
 
   meta = with stdenv.lib; {
     description = "Modem control and terminal emulation program";
-    homepage = https://alioth.debian.org/projects/minicom/;
+    homepage = https://salsa.debian.org/minicom-team/minicom;
     license = licenses.gpl2;
     longDescription = ''
-      Minicom is a menu driven communications program.  It emulates ANSI
-      and VT102 terminals.  It has a dialing directory and auto zmodem
+      Minicom is a menu driven communications program. It emulates ANSI
+      and VT102 terminals. It has a dialing directory and auto zmodem
       download.
     '';
     maintainers = with maintainers; [ peterhoeg ];
diff --git a/pkgs/tools/misc/ms-sys/default.nix b/pkgs/tools/misc/ms-sys/default.nix
index 4a50f7200bbb..04271b610699 100644
--- a/pkgs/tools/misc/ms-sys/default.nix
+++ b/pkgs/tools/misc/ms-sys/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "ms-sys-${version}";
-  version = "2.5.3";
+  version = "2.6.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/ms-sys/${name}.tar.gz";
-    sha256 = "0mijf82cbji4laip6hiy3l5ka5mzq5sivjvyv7wxnc2fd3v7hgp0";
+    sha256 = "06xqpm2s9cg8fj7a1822wmh3p4arii0sifssazg1gr6i7xg7kbjz";
   };
 
   nativeBuildInputs = [ gettext ];
diff --git a/pkgs/tools/misc/nginx-config-formatter/default.nix b/pkgs/tools/misc/nginx-config-formatter/default.nix
index 37218f848684..e19eac1c51e5 100644
--- a/pkgs/tools/misc/nginx-config-formatter/default.nix
+++ b/pkgs/tools/misc/nginx-config-formatter/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, python3 }:
 
 stdenv.mkDerivation rec {
-  version = "2016-06-16";
+  version = "2019-02-13";
   name = "nginx-config-formatter-${version}";
 
   src = fetchFromGitHub {
     owner = "1connect";
     repo = "nginx-config-formatter";
-    rev = "fe5c77d2a503644bebee2caaa8b222c201c0603d";
-    sha256 = "0akpkbq5136k1i1z1ls6yksis35hbr70k8vd10laqwvr1jj41bga";
+    rev = "4ea6bbc1bdeb1d28419548aeca90f323e64e0e05";
+    sha256 = "0h6pj9i0wim9pzkafi92l1nhlnl2a530vnm7qqi3n2ra8iwfyw4f";
   };
 
   buildInputs = [ python3 ];
diff --git a/pkgs/tools/misc/paps/default.nix b/pkgs/tools/misc/paps/default.nix
new file mode 100644
index 000000000000..521bebf47a3b
--- /dev/null
+++ b/pkgs/tools/misc/paps/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub
+, autoconf, automake, pkgconfig, pango }:
+
+stdenv.mkDerivation rec {
+  pname = "paps";
+  version = "0.7.0";
+
+  src = fetchFromGitHub {
+    owner = "dov";
+    repo = pname;
+    rev = version;
+    sha256 = "1f0qcawak76zk2xypipb6sy4bd8mixlrjby851x216a7f6z8fd4y";
+  };
+
+  nativeBuildInputs = [ autoconf automake pkgconfig ];
+  buildInputs = [ pango ];
+
+  preConfigure = ''
+    ./autogen.sh
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Pango to PostScript converter";
+    homepage = https://github.com/dov/paps;
+    license = licenses.lgpl2;
+    maintainers = with maintainers; [ etu ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/misc/parallel/default.nix b/pkgs/tools/misc/parallel/default.nix
index 4807f5df99b7..a6a4d35b7fe4 100644
--- a/pkgs/tools/misc/parallel/default.nix
+++ b/pkgs/tools/misc/parallel/default.nix
@@ -1,11 +1,11 @@
 { fetchurl, stdenv, perl, makeWrapper, procps }:
 
 stdenv.mkDerivation rec {
-  name = "parallel-20190222";
+  name = "parallel-20190322";
 
   src = fetchurl {
     url = "mirror://gnu/parallel/${name}.tar.bz2";
-    sha256 = "073bj0ji9liq07j6a7y9i4kxfkv06kvavhh7654f2bgfavfbmcc6";
+    sha256 = "12q0ys0dp019wykx7jcqbrilz8798hgb66k97aj2s2m7xdpw41ym";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/misc/smenu/default.nix b/pkgs/tools/misc/smenu/default.nix
index ae2e15225415..f5e1fd7b1b4d 100644
--- a/pkgs/tools/misc/smenu/default.nix
+++ b/pkgs/tools/misc/smenu/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, ncurses }:
 
 stdenv.mkDerivation rec {
-  version = "0.9.14";
+  version = "0.9.15";
   name = "smenu-${version}";
 
   src = fetchFromGitHub {
     owner  = "p-gen";
     repo   = "smenu";
     rev    = "v${version}";
-    sha256 = "1q2jvzia5ggkifkawm791p2nkmnpm6cmd5x3al7zf76gpdm6j87d";
+    sha256 = "0s9qhg6dln33x8r2g8igvgkyrv8g1z26wf8gcnqp3kbp6fw12izi";
   };
 
   buildInputs = [ ncurses ];
diff --git a/pkgs/tools/misc/snapper/default.nix b/pkgs/tools/misc/snapper/default.nix
index 87fda19a75fe..cc37326cc5eb 100644
--- a/pkgs/tools/misc/snapper/default.nix
+++ b/pkgs/tools/misc/snapper/default.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   name = "snapper-${version}";
-  version = "0.8.2";
+  version = "0.8.3";
 
   src = fetchFromGitHub {
     owner = "openSUSE";
     repo = "snapper";
     rev = "v${version}";
-    sha256 = "0f3xvvmyln7rjvv4w0zsd4b4d1mzcdx0xrgcscqj2v18xgwwcc4p";
+    sha256 = "0f3nsqk8820jh08qdh23n01vxbigsfcn9s5qvgqz6jf4pwin6j0x";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/misc/ttyplot/default.nix b/pkgs/tools/misc/ttyplot/default.nix
index d82c7dda96a4..53a0e0a2992b 100644
--- a/pkgs/tools/misc/ttyplot/default.nix
+++ b/pkgs/tools/misc/ttyplot/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "ttyplot-${version}";
-  version = "1.1";
+  version = "1.2";
 
   src = fetchFromGitHub {
     owner = "tenox7";
     repo = "ttyplot";
     rev = version;
-    sha256 = "0icv40fmf8z3a00csjh4c4svq3y6s6j70jgxjd6zqlxyks9wj7mr";
+    sha256 = "1xaqzm71w2n0q532wpa3w818mvjvch3h34m2aq7pldkyk09frjxh";
   };
 
   buildInputs = [ ncurses ];
diff --git a/pkgs/tools/misc/vdirsyncer/default.nix b/pkgs/tools/misc/vdirsyncer/default.nix
index af8d0862d1bb..603492718d0e 100644
--- a/pkgs/tools/misc/vdirsyncer/default.nix
+++ b/pkgs/tools/misc/vdirsyncer/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, python3Packages, fetchFromGitHub, fetchpatch, glibcLocales, rustPlatform, pkgconfig, openssl, Security }:
+{ stdenv, python3Packages, fetchFromGitHub, fetchpatch, rustPlatform, pkgconfig, openssl, Security }:
 
 # Packaging documentation at:
 # https://github.com/untitaker/vdirsyncer/blob/master/docs/packaging.rst
@@ -32,9 +32,9 @@ python3Packages.buildPythonApplication rec {
     shippai
   ];
 
-  buildInputs = with python3Packages; [ setuptools_scm ];
+  nativeBuildInputs = with python3Packages; [ setuptools_scm ];
 
-  checkInputs = with python3Packages; [ hypothesis pytest pytest-localserver pytest-subtesthack ] ++ [ glibcLocales ];
+  checkInputs = with python3Packages; [ hypothesis pytest pytest-localserver pytest-subtesthack ];
 
   patches = [
     # Fixes for hypothesis: https://github.com/pimutils/vdirsyncer/pull/779
@@ -66,11 +66,8 @@ python3Packages.buildPythonApplication rec {
     ln -s ${native}/lib/libvdirsyncer_rustext* rust/target/release/
   '';
 
-  LC_ALL = "en_US.utf8";
-
   checkPhase = ''
     rm -rf vdirsyncer
-    export PYTHONPATH=$out/${python3Packages.python.sitePackages}:$PYTHONPATH
     make DETERMINISTIC_TESTS=true test
   '';
 
@@ -78,7 +75,6 @@ python3Packages.buildPythonApplication rec {
     homepage = https://github.com/pimutils/vdirsyncer;
     description = "Synchronize calendars and contacts";
     maintainers = with maintainers; [ matthiasbeyer ];
-    platforms = platforms.all;
     license = licenses.mit;
   };
 }
diff --git a/pkgs/tools/misc/vimpager/build.nix b/pkgs/tools/misc/vimpager/build.nix
new file mode 100644
index 000000000000..e9733c7ef799
--- /dev/null
+++ b/pkgs/tools/misc/vimpager/build.nix
@@ -0,0 +1,39 @@
+{ stdenv
+, fetchFromGitHub
+, coreutils
+, sharutils
+, version
+, sha256
+}:
+
+stdenv.mkDerivation rec {
+  inherit version;
+  name = "vimpager-${version}";
+
+  src = fetchFromGitHub {
+    inherit sha256;
+
+    owner  = "rkitover";
+    repo   = "vimpager";
+    rev    = "${version}";
+  };
+
+  buildInputs = [ coreutils sharutils ]; # for uuencode
+
+  makeFlags = [
+    "PREFIX=$(out)"
+  ];
+
+  buildPhase = ''
+    sed -i 's,/bin/cat,${coreutils}/bin/cat,g' vimpager
+    make
+  '';
+
+
+  meta = with stdenv.lib; {
+    description = "Use Vim as PAGER";
+    homepage    = "https://www.vim.org/scripts/script.php?script_id = 1723";
+    license     = with licenses; [ bsd2 mit vim ];
+    platforms   = platforms.unix;
+  };
+}
diff --git a/pkgs/tools/misc/vimpager/default.nix b/pkgs/tools/misc/vimpager/default.nix
new file mode 100644
index 000000000000..1b1512db3cfe
--- /dev/null
+++ b/pkgs/tools/misc/vimpager/default.nix
@@ -0,0 +1,6 @@
+{ callPackage }:
+
+callPackage ./build.nix {
+  version = "2.06";
+  sha256  = "05yr7j72bw64nx7a0y6w9fjmz54zd4g46fn1qjfbbqvbc19fjpl8";
+}
diff --git a/pkgs/tools/misc/vimpager/latest.nix b/pkgs/tools/misc/vimpager/latest.nix
new file mode 100644
index 000000000000..c98b9a000147
--- /dev/null
+++ b/pkgs/tools/misc/vimpager/latest.nix
@@ -0,0 +1,7 @@
+{ callPackage }:
+
+callPackage ./build.nix {
+  version = "a4da4dfac44d1bbc6986c5c76fea45a60ebdd8e5";
+  sha256  = "0gcjpw2q263hh8w2sjvq3f3k2d28qpkkv0jnl8hw1l7v604i8zxg";
+}
+
diff --git a/pkgs/tools/misc/websocat/default.nix b/pkgs/tools/misc/websocat/default.nix
index 2e91c5c3b63a..dc0280846854 100644
--- a/pkgs/tools/misc/websocat/default.nix
+++ b/pkgs/tools/misc/websocat/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, rustPlatform
+{ stdenv, fetchFromGitHub, rustPlatform, Security
 }:
 
 rustPlatform.buildRustPackage rec {
@@ -14,6 +14,8 @@ rustPlatform.buildRustPackage rec {
 
   cargoSha256 = "0vkb3jmyb3zg3xiig5vlxhh74m27rvqbkgrwdqzprifn9vcj17ir";
 
+  buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
+
   meta = with stdenv.lib; {
     description = "Command-line client for WebSockets (like netcat/socat)";
     homepage    = https://github.com/vi/websocat;
diff --git a/pkgs/tools/misc/xtitle/default.nix b/pkgs/tools/misc/xtitle/default.nix
index 708675fb651c..fb4257b35e6b 100644
--- a/pkgs/tools/misc/xtitle/default.nix
+++ b/pkgs/tools/misc/xtitle/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libxcb, xcbutil, xcbutilwm, git }:
 
 stdenv.mkDerivation rec {
-   name = "xtitle-0.4.3";
+   name = "xtitle-0.4.4";
 
    src = fetchurl {
-     url = "https://github.com/baskerville/xtitle/archive/0.4.3.tar.gz";
-     sha256 = "0bk4mxx0vky37f66b2y34nggi1f7fnrmsprkxyc8mskj6qcrbm5h";
+     url = "https://github.com/baskerville/xtitle/archive/0.4.4.tar.gz";
+     sha256 = "0w490a6ki90si1ri48jzhma473a598l1b12j8dp4ckici41z9yy2";
    };
 
 
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index 7796bb8cab0a..b5bb97ce5724 100644
--- a/pkgs/tools/misc/youtube-dl/default.nix
+++ b/pkgs/tools/misc/youtube-dl/default.nix
@@ -19,11 +19,11 @@ 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 = "2019.03.18";
+  version = "2019.04.01";
 
   src = fetchurl {
     url = "https://yt-dl.org/downloads/${version}/${pname}-${version}.tar.gz";
-    sha256 = "0r31q7j3gg2zfw3b45jancxl7mmr2gin8dyfx5dgyyp92ss8hih7";
+    sha256 = "0srh04k0p088rxbyxvnhngqyymwqhykqv02sdaqvkl9jhp43r0sm";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/networking/dnscrypt-proxy/2.x/default.nix b/pkgs/tools/networking/dnscrypt-proxy/2.x/default.nix
index a7b564be868e..7cedd0f23b41 100644
--- a/pkgs/tools/networking/dnscrypt-proxy/2.x/default.nix
+++ b/pkgs/tools/networking/dnscrypt-proxy/2.x/default.nix
@@ -2,15 +2,15 @@
 
 buildGoPackage rec {
   name = "dnscrypt-proxy2-${version}";
-  version = "2.0.21";
+  version = "2.0.22";
 
   goPackagePath = "github.com/jedisct1/dnscrypt-proxy";
 
   src = fetchFromGitHub {
     owner = "jedisct1";
     repo = "dnscrypt-proxy";
-    rev = "${version}";
-    sha256 = "00sz5gn4l56rp4xcvxfpq6c64inpgzbwpqy1yc5sima6ijrayi9g";
+    rev = version;
+    sha256 = "0rmiyqxbbc3gjnfvyggf2lckckliiijq528993gv0n875r7ahkix";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/tools/networking/i2p/default.nix b/pkgs/tools/networking/i2p/default.nix
index ceadc231143f..2745c8c1d84d 100644
--- a/pkgs/tools/networking/i2p/default.nix
+++ b/pkgs/tools/networking/i2p/default.nix
@@ -27,10 +27,10 @@ let wrapper = stdenv.mkDerivation rec {
 in
 
 stdenv.mkDerivation rec {
-  name = "i2p-0.9.38";
+  name = "i2p-0.9.39";
   src = fetchurl {
     url = "https://github.com/i2p/i2p.i2p/archive/${name}.tar.gz";
-    sha256 = "0fxn8q6ccpjxr41s97nmjxg7hx12dzwrm5a7gyxgr44r7l77qlv6";
+    sha256 = "0d6g0ffv2b0ghjjp3ndal8n9maw5y0n36vqrylhh5zr1hffvxx9i";
   };
   buildInputs = [ jdk ant gettext which ];
   patches = [ ./i2p.patch ];
diff --git a/pkgs/tools/networking/network-manager/l2tp/default.nix b/pkgs/tools/networking/network-manager/l2tp/default.nix
index 5fc591f0a43d..352b88f39354 100644
--- a/pkgs/tools/networking/network-manager/l2tp/default.nix
+++ b/pkgs/tools/networking/network-manager/l2tp/default.nix
@@ -1,17 +1,18 @@
 { stdenv, substituteAll, fetchFromGitHub, autoreconfHook, libtool, intltool, pkgconfig
+, file, findutils
 , gtk3, networkmanager, ppp, xl2tpd, strongswan, libsecret
 , withGnome ? true, gnome3, networkmanagerapplet }:
 
 stdenv.mkDerivation rec {
   name = "${pname}${if withGnome then "-gnome" else ""}-${version}";
   pname = "NetworkManager-l2tp";
-  version = "1.2.10";
+  version = "1.2.12";
 
   src = fetchFromGitHub {
     owner = "nm-l2tp";
     repo = "network-manager-l2tp";
     rev = "${version}";
-    sha256 = "1vm004nj2n5abpywr7ji6r28scf7xs45zw4rqrm8jn7mysf96h0x";
+    sha256 = "0cq07kvlm98s8a7l4a3zmqnif8x3307kv7n645zx3f1r7x72b8m4";
   };
 
   patches = [
@@ -24,7 +25,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ networkmanager ppp ]
     ++ stdenv.lib.optionals withGnome [ gtk3 libsecret networkmanagerapplet ];
 
-  nativeBuildInputs = [ autoreconfHook libtool intltool pkgconfig ];
+  nativeBuildInputs = [ autoreconfHook libtool intltool pkgconfig file findutils ];
 
   preConfigure = ''
     intltoolize -f
diff --git a/pkgs/tools/networking/network-manager/l2tp/fix-paths.patch b/pkgs/tools/networking/network-manager/l2tp/fix-paths.patch
index 0a068ee800c6..531672c39362 100644
--- a/pkgs/tools/networking/network-manager/l2tp/fix-paths.patch
+++ b/pkgs/tools/networking/network-manager/l2tp/fix-paths.patch
@@ -1,6 +1,8 @@
---- a/src/nm-l2tp-service.c
-+++ b/src/nm-l2tp-service.c
-@@ -480,7 +480,7 @@
+diff --git a/shared/utils.c b/shared/utils.c
+index c978a1f..d2c36cd 100644
+--- a/shared/utils.c
++++ b/shared/utils.c
+@@ -52,7 +52,7 @@ nm_find_ipsec (void)
  {
  	static const char *ipsec_binary_paths[] =
  		{
@@ -9,7 +11,7 @@
  			"/usr/sbin/ipsec",
  			"/usr/local/sbin/ipsec",
  			"/sbin/strongswan",
-@@ -505,7 +505,7 @@
+@@ -77,7 +77,7 @@ nm_find_l2tpd (void)
  {
  	static const char *l2tp_binary_paths[] =
  		{
diff --git a/pkgs/tools/networking/openvpn/default.nix b/pkgs/tools/networking/openvpn/default.nix
index 358c53f453bb..44bbb3779d04 100644
--- a/pkgs/tools/networking/openvpn/default.nix
+++ b/pkgs/tools/networking/openvpn/default.nix
@@ -10,11 +10,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "openvpn-${version}";
-  version = "2.4.6";
+  version = "2.4.7";
 
   src = fetchurl {
     url = "https://swupdate.openvpn.net/community/releases/${name}.tar.xz";
-    sha256 = "09lck4wmkas3iyrzaspin9gn3wiclqb1m9sf8diy7j8wakx38r2g";
+    sha256 = "0j7na936isk9j8nsdrrbw7wmy09inmjqvsb8mw8az7k61xbm6bx4";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/networking/p2p/tahoe-lafs/default.nix b/pkgs/tools/networking/p2p/tahoe-lafs/default.nix
index 6d4c77d51987..3e9d1f9f5f7e 100644
--- a/pkgs/tools/networking/p2p/tahoe-lafs/default.nix
+++ b/pkgs/tools/networking/p2p/tahoe-lafs/default.nix
@@ -59,7 +59,7 @@ pythonPackages.buildPythonApplication rec {
     service-identity pyyaml magic-wormhole treq
   ];
 
-  checkInputs = with pythonPackages; [ hypothesis ];
+  checkInputs = with pythonPackages; [ hypothesis twisted ];
 
   # Install the documentation.
   postInstall = ''
diff --git a/pkgs/tools/networking/shadowsocks-libev/default.nix b/pkgs/tools/networking/shadowsocks-libev/default.nix
index de4fbbd365db..a51f911b40bf 100644
--- a/pkgs/tools/networking/shadowsocks-libev/default.nix
+++ b/pkgs/tools/networking/shadowsocks-libev/default.nix
@@ -4,15 +4,15 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "shadowsocks-libev-${version}";
-  version = "3.2.3";
+  pname = "shadowsocks-libev";
+  version = "3.2.5";
 
   # Git tag includes CMake build files which are much more convenient.
   src = fetchFromGitHub {
     owner = "shadowsocks";
-    repo = "shadowsocks-libev";
+    repo = pname;
     rev = "refs/tags/v${version}";
-    sha256 = "1nj2z3j41lqd6gvj6j7xc8g7jbn2f8b75phlkgwvw0j3zsqnbq30";
+    sha256 = "09z20y35zjzsx5fd5cnnxxgbfcrh2bp0z7m15l59wlmlsfp7r2pw";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/tools/networking/whois/default.nix b/pkgs/tools/networking/whois/default.nix
index 6b944ee3ffc4..d13dd8517fe9 100644
--- a/pkgs/tools/networking/whois/default.nix
+++ b/pkgs/tools/networking/whois/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, perl, gettext, pkgconfig, libidn2, libiconv }:
 
 stdenv.mkDerivation rec {
-  version = "5.4.1";
+  version = "5.4.2";
   name = "whois-${version}";
 
   src = fetchFromGitHub {
     owner = "rfc1036";
     repo = "whois";
     rev = "v${version}";
-    sha256 = "01pfil456q3241awilszx5iq1x6kr1rddkraj8yyxyab45l2ssk9";
+    sha256 = "17i9620gm100plza0qdzfx9nvkvgyb6jcc5g412y5r7wvh7q19mh";
   };
 
   nativeBuildInputs = [ perl gettext pkgconfig ];
diff --git a/pkgs/tools/security/browserpass/2.nix b/pkgs/tools/security/browserpass/2.nix
new file mode 100644
index 000000000000..fdbd757449a6
--- /dev/null
+++ b/pkgs/tools/security/browserpass/2.nix
@@ -0,0 +1,43 @@
+# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+{ stdenv, buildGoPackage, fetchFromGitHub, gnupg }:
+
+buildGoPackage rec {
+  name = "browserpass-${version}";
+  version = "2.0.22";
+
+  goPackagePath = "github.com/dannyvankooten/browserpass";
+
+  goDeps = ./2deps.nix;
+
+  src = fetchFromGitHub {
+    repo = "browserpass";
+    owner = "dannyvankooten";
+    rev = version;
+    sha256 = "05cacrx08k99c5zra7ksdik9xxn3vih3x6in7536zs5gm55mkbfx";
+  };
+
+  postPatch = ''
+    substituteInPlace browserpass.go                                           \
+      --replace /usr/local/bin/gpg ${gnupg}/bin/gpg
+  '';
+
+  postInstall = ''
+      host_file="$bin/bin/browserpass"
+      mkdir -p "$bin/etc"
+
+      sed -e "s!%%replace%%!$host_file!" go/src/${goPackagePath}/chrome/host.json > chrome-host.json
+      sed -e "s!%%replace%%!$host_file!" go/src/${goPackagePath}/firefox/host.json > firefox-host.json
+
+      install chrome-host.json $bin/etc/
+      install -D firefox-host.json $bin/lib/mozilla/native-messaging-hosts/com.dannyvankooten.browserpass.json
+      install go/src/${goPackagePath}/chrome/policy.json $bin/etc/chrome-policy.json
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A Chrome & Firefox extension for zx2c4's pass";
+    homepage = https://github.com/dannyvankooten/browserpass;
+    license = licenses.mit;
+    platforms = with platforms; linux ++ darwin ++ openbsd;
+    maintainers = with maintainers; [ rvolosatovs ];
+  };
+}
diff --git a/pkgs/tools/security/browserpass/2deps.nix b/pkgs/tools/security/browserpass/2deps.nix
new file mode 100644
index 000000000000..631463a69d11
--- /dev/null
+++ b/pkgs/tools/security/browserpass/2deps.nix
@@ -0,0 +1,39 @@
+# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+[
+  {
+    goPackagePath = "github.com/gokyle/twofactor";
+    fetch = {
+      type = "git";
+      url = "https://github.com/gokyle/twofactor";
+      rev = "eaad1884d40f9cabff98a57a524c17afd00c9fe7";
+      sha256 = "07kvga6f2b56kpy52a3xk16garvlqz950s350dax97x7cayba95g";
+    };
+  }
+  {
+    goPackagePath = "github.com/mattn/go-zglob";
+    fetch = {
+      type = "git";
+      url = "https://github.com/mattn/go-zglob";
+      rev = "4959821b481786922ac53e7ef25c61ae19fb7c36";
+      sha256 = "0rwkdw143kphpmingsrw1zp030zf3p08f64h347jpdm4lz8z5449";
+    };
+  }
+  {
+    goPackagePath = "github.com/sahilm/fuzzy";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sahilm/fuzzy";
+      rev = "a154b19bb758dcdd6ede58dc11ea53c2950527b2";
+      sha256 = "0jkw6474d5ik2fq2zznqxj4y3p42z47r7mbg856ln5wyara2sg0l";
+    };
+  }
+  {
+    goPackagePath = "rsc.io/qr";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rsc/qr";
+      rev = "48b2ede4844e13f1a2b7ce4d2529c9af7e359fc5";
+      sha256 = "1npxy32glnkvsp0871972jzjzgkwaqmbv6jsj9wgqsa1s2jr004p";
+    };
+  }
+]
diff --git a/pkgs/tools/security/browserpass/default.nix b/pkgs/tools/security/browserpass/default.nix
index dd797fb9348f..c1c9e679f22c 100644
--- a/pkgs/tools/security/browserpass/default.nix
+++ b/pkgs/tools/security/browserpass/default.nix
@@ -1,43 +1,65 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
-{ stdenv, buildGoPackage, fetchFromGitHub, gnupg }:
-
-buildGoPackage rec {
-  name = "browserpass-${version}";
-  version = "2.0.22";
-
-  goPackagePath = "github.com/dannyvankooten/browserpass";
-
-  goDeps = ./deps.nix;
+{ lib, callPackage, buildGoPackage, fetchFromGitHub, makeWrapper, gnupg }:
+let
+  # For backwards compatibility with v2 of the browser extension, we embed v2
+  # of the native host in v3. Because the extension will auto-update when it
+  # is released, this code can be removed from that point on.
+  # Don't forget to remove v2 references down below and the v2 files in this
+  # folder
+  v2 = callPackage ./2.nix {};
+in buildGoPackage rec {
+  pname = "browserpass";
+  version = "3.0.1";
 
   src = fetchFromGitHub {
-    repo = "browserpass";
-    owner = "dannyvankooten";
+    owner = "browserpass";
+    repo = "browserpass-native";
     rev = version;
-    sha256 = "05cacrx08k99c5zra7ksdik9xxn3vih3x6in7536zs5gm55mkbfx";
+    sha256 = "1i3xxysiiapz9y2v0gp13inx7j0d7n0khpmcsy9k95pzn53526dx";
   };
 
+  nativeBuildInputs = [ makeWrapper ];
+
+  goPackagePath = "github.com/browserpass/browserpass-native";
+  goDeps = ./deps.nix;
+
   postPatch = ''
-    substituteInPlace browserpass.go                                           \
-      --replace /usr/local/bin/gpg ${gnupg}/bin/gpg
+    # Because this Makefile will be installed to be used by the user, patch
+    # variables to be valid by default
+    substituteInPlace Makefile \
+      --replace "PREFIX ?= /usr" ""
   '';
 
-  postInstall = ''
-      host_file="$bin/bin/browserpass"
-      mkdir -p "$bin/etc"
+  DESTDIR = placeholder "bin";
+
+  postConfigure = ''
+    cd "go/src/$goPackagePath"
+    make configure
+  '';
+
+  buildPhase = ''
+    make
+  '';
+
+  installPhase = ''
+    make install
+
+    wrapProgram $bin/bin/browserpass \
+      --suffix PATH : ${lib.makeBinPath [ gnupg ]}
 
-      sed -e "s!%%replace%%!$host_file!" go/src/${goPackagePath}/chrome/host.json > chrome-host.json
-      sed -e "s!%%replace%%!$host_file!" go/src/${goPackagePath}/firefox/host.json > firefox-host.json
+    # This path is used by our firefox wrapper for finding native messaging hosts
+    mkdir -p $bin/lib/mozilla/native-messaging-hosts
+    ln -s $bin/lib/browserpass/hosts/firefox/*.json $bin/lib/mozilla/native-messaging-hosts
 
-      install chrome-host.json $bin/etc/
-      install -D firefox-host.json $bin/lib/mozilla/native-messaging-hosts/com.dannyvankooten.browserpass.json
-      install go/src/${goPackagePath}/chrome/policy.json $bin/etc/chrome-policy.json
+    # These can be removed too, see comment up top
+    ln -s ${lib.getBin v2}/etc $bin/etc
+    ln -s ${lib.getBin v2}/lib/mozilla/native-messaging-hosts/* $bin/lib/mozilla/native-messaging-hosts
   '';
 
-  meta = with stdenv.lib; {
-    description = "A Chrome & Firefox extension for zx2c4's pass";
-    homepage = https://github.com/dannyvankooten/browserpass;
-    license = licenses.mit;
-    platforms = with platforms; linux ++ darwin ++ openbsd;
-    maintainers = with maintainers; [ rvolosatovs ];
+  meta = with lib; {
+    description = "Browserpass native client app";
+    homepage = https://github.com/browserpass/browserpass-native;
+    license = licenses.isc;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ rvolosatovs infinisil ];
   };
 }
diff --git a/pkgs/tools/security/browserpass/deps.nix b/pkgs/tools/security/browserpass/deps.nix
index 631463a69d11..334a189ad404 100644
--- a/pkgs/tools/security/browserpass/deps.nix
+++ b/pkgs/tools/security/browserpass/deps.nix
@@ -1,12 +1,21 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix)
 [
   {
-    goPackagePath = "github.com/gokyle/twofactor";
+    goPackagePath = "github.com/davecgh/go-spew";
     fetch = {
       type = "git";
-      url = "https://github.com/gokyle/twofactor";
-      rev = "eaad1884d40f9cabff98a57a524c17afd00c9fe7";
-      sha256 = "07kvga6f2b56kpy52a3xk16garvlqz950s350dax97x7cayba95g";
+      url = "https://github.com/davecgh/go-spew";
+      rev = "v1.1.1";
+      sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y";
+    };
+  }
+  {
+    goPackagePath = "github.com/konsorten/go-windows-terminal-sequences";
+    fetch = {
+      type = "git";
+      url = "https://github.com/konsorten/go-windows-terminal-sequences";
+      rev = "v1.0.2";
+      sha256 = "09mn209ika7ciy87xf2x31dq5fnqw39jidgaljvmqxwk7ff1hnx7";
     };
   }
   {
@@ -14,26 +23,71 @@
     fetch = {
       type = "git";
       url = "https://github.com/mattn/go-zglob";
-      rev = "4959821b481786922ac53e7ef25c61ae19fb7c36";
-      sha256 = "0rwkdw143kphpmingsrw1zp030zf3p08f64h347jpdm4lz8z5449";
+      rev = "v0.0.1";
+      sha256 = "1sncdyq5fbd42al4amyy91h7vlzm3wm6c9vl8za2pjgfgsd581fz";
+    };
+  }
+  {
+    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/rifflock/lfshook";
+    fetch = {
+      type = "git";
+      url = "https://github.com/rifflock/lfshook";
+      rev = "b9218ef580f5";
+      sha256 = "0wxqjcjfg8c0klmdgmbw3ckagby3wg9rkga9ihd4fsf05x5scxrc";
+    };
+  }
+  {
+    goPackagePath = "github.com/sirupsen/logrus";
+    fetch = {
+      type = "git";
+      url = "https://github.com/sirupsen/logrus";
+      rev = "v1.4.0";
+      sha256 = "1y1qjcg19z7q9sy32rhc148kdql2aw7xkcm9d6r1blrl0mdgpx0w";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/objx";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/objx";
+      rev = "v0.1.1";
+      sha256 = "0iph0qmpyqg4kwv8jsx6a56a7hhqq8swrazv40ycxk9rzr0s8yls";
+    };
+  }
+  {
+    goPackagePath = "github.com/stretchr/testify";
+    fetch = {
+      type = "git";
+      url = "https://github.com/stretchr/testify";
+      rev = "v1.3.0";
+      sha256 = "0wjchp2c8xbgcbbq32w3kvblk6q6yn533g78nxl6iskq6y95lxsy";
     };
   }
   {
-    goPackagePath = "github.com/sahilm/fuzzy";
+    goPackagePath = "golang.org/x/crypto";
     fetch = {
       type = "git";
-      url = "https://github.com/sahilm/fuzzy";
-      rev = "a154b19bb758dcdd6ede58dc11ea53c2950527b2";
-      sha256 = "0jkw6474d5ik2fq2zznqxj4y3p42z47r7mbg856ln5wyara2sg0l";
+      url = "https://go.googlesource.com/crypto";
+      rev = "c2843e01d9a2";
+      sha256 = "01xgxbj5r79nmisdvpq48zfy8pzaaj90bn6ngd4nf33j9ar1dp8r";
     };
   }
   {
-    goPackagePath = "rsc.io/qr";
+    goPackagePath = "golang.org/x/sys";
     fetch = {
       type = "git";
-      url = "https://github.com/rsc/qr";
-      rev = "48b2ede4844e13f1a2b7ce4d2529c9af7e359fc5";
-      sha256 = "1npxy32glnkvsp0871972jzjzgkwaqmbv6jsj9wgqsa1s2jr004p";
+      url = "https://go.googlesource.com/sys";
+      rev = "fead79001313";
+      sha256 = "12vwl6sv6w7q0dyvynjhbp67242rhh77d6nlsb22ajr8rf17c63i";
     };
   }
 ]
diff --git a/pkgs/tools/security/bundler-audit/Gemfile b/pkgs/tools/security/bundler-audit/Gemfile
new file mode 100644
index 000000000000..f9fb0e329bd4
--- /dev/null
+++ b/pkgs/tools/security/bundler-audit/Gemfile
@@ -0,0 +1,2 @@
+source 'https://rubygems.org'
+gem 'bundler-audit'
diff --git a/pkgs/tools/security/bundler-audit/Gemfile.lock b/pkgs/tools/security/bundler-audit/Gemfile.lock
new file mode 100644
index 000000000000..28cbcf5a9a66
--- /dev/null
+++ b/pkgs/tools/security/bundler-audit/Gemfile.lock
@@ -0,0 +1,16 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    bundler-audit (0.6.1)
+      bundler (>= 1.2.0, < 3)
+      thor (~> 0.18)
+    thor (0.20.3)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  bundler-audit
+
+BUNDLED WITH
+   1.14.6
diff --git a/pkgs/tools/security/bundler-audit/default.nix b/pkgs/tools/security/bundler-audit/default.nix
new file mode 100644
index 000000000000..8b19b6103d4a
--- /dev/null
+++ b/pkgs/tools/security/bundler-audit/default.nix
@@ -0,0 +1,26 @@
+{ bundlerEnv, ruby, lib }:
+
+bundlerEnv rec {
+  name = "${pname}-${version}";
+  pname = "bundler-audit";
+  version = (import ./gemset.nix).bundler-audit.version;
+
+  inherit ruby;
+  gemdir = ./.;
+
+  meta = with lib; {
+    description = "Patch-level verification for Bundler";
+    longDescription = ''
+      Features:
+      - Checks for vulnerable versions of gems in Gemfile.lock.
+      - Checks for insecure gem sources (http://).
+      - Allows ignoring certain advisories that have been manually worked around.
+      - Prints advisory information.
+      - Does not require a network connection.
+    '';
+    homepage    = https://github.com/rubysec/bundler-audit;
+    license     = licenses.gpl3Plus;
+    maintainers = with maintainers; [ primeos ];
+    platforms   = platforms.unix;
+  };
+}
diff --git a/pkgs/tools/security/bundler-audit/gemset.nix b/pkgs/tools/security/bundler-audit/gemset.nix
new file mode 100644
index 000000000000..56d78b3e8f16
--- /dev/null
+++ b/pkgs/tools/security/bundler-audit/gemset.nix
@@ -0,0 +1,19 @@
+{
+  bundler-audit = {
+    dependencies = ["thor"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0pm22xpn3xyymsainixnrk8v3l3xi9bzwkjkspx00cfzp84xvxbq";
+      type = "gem";
+    };
+    version = "0.6.1";
+  };
+  thor = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1yhrnp9x8qcy5vc7g438amd5j9sw83ih7c30dr6g6slgw9zj3g29";
+      type = "gem";
+    };
+    version = "0.20.3";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/tools/security/clamav/default.nix b/pkgs/tools/security/clamav/default.nix
index 8e641ba4a0ed..4d9beb654ece 100644
--- a/pkgs/tools/security/clamav/default.nix
+++ b/pkgs/tools/security/clamav/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "clamav-${version}";
-  version = "0.101.1";
+  version = "0.101.2";
 
   src = fetchurl {
     url = "https://www.clamav.net/downloads/production/${name}.tar.gz";
-    sha256 = "01mq3z04fjbq5iq8wfwfim72iv3dn04d3ishc5lkhxpmnalqydps";
+    sha256 = "0d3n4y8i5q594h4cjglmvpk4jd73r9ajpp1bvq5lr9zpdzgyn4ha";
   };
 
   # don't install sample config files into the absolute sysconfdir folder
diff --git a/pkgs/tools/security/lynis/default.nix b/pkgs/tools/security/lynis/default.nix
index c72f75e24e27..ceff23911c7e 100644
--- a/pkgs/tools/security/lynis/default.nix
+++ b/pkgs/tools/security/lynis/default.nix
@@ -2,14 +2,14 @@
 
 stdenv.mkDerivation rec {
   pname = "lynis";
-  version = "2.7.1";
+  version = "2.7.2";
   name = "${pname}-${version}";
 
   src = fetchFromGitHub {
     owner = "CISOfy";
     repo = "${pname}";
     rev = "${version}";
-    sha256 = "1nv2dqd2k2n8mcdr6xl5g713xxkgvja6487by1wn4k0b416jij9i";
+    sha256 = "0dbbfk47dpxx7zpb98n4w3ls3z5di57qnr2nsgxjvp49gk9j3f6k";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/security/modsecurity/default.nix b/pkgs/tools/security/modsecurity/default.nix
index 09f8c63973c7..6ec90cd15a85 100644
--- a/pkgs/tools/security/modsecurity/default.nix
+++ b/pkgs/tools/security/modsecurity/default.nix
@@ -11,11 +11,11 @@ in
 
 stdenv.mkDerivation rec {
   name = "modsecurity-${version}";
-  version = "2.9.2";
+  version = "2.9.3";
 
   src = fetchurl {
     url = "https://www.modsecurity.org/tarball/${version}/${name}.tar.gz";
-    sha256 = "41a8f73476ec891f3a9e8736b98b64ea5c2105f1ce15ea57a1f05b4bf2ffaeb5";
+    sha256 = "0611nskd2y6yagrciqafxdn4rxbdk2v4swf45kc1sgwx2sfh34j1";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/security/sslscan/default.nix b/pkgs/tools/security/sslscan/default.nix
index 0484e8e069ab..d3a8f35d9148 100644
--- a/pkgs/tools/security/sslscan/default.nix
+++ b/pkgs/tools/security/sslscan/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "sslscan-${version}";
-  version = "1.11.12";
+  version = "1.11.13";
 
   src = fetchFromGitHub {
     owner = "rbsec";
     repo = "sslscan";
     rev = "${version}-rbsec";
-    sha256 = "0wa0z6my6aqjp8si6x522ivk0yy55izbs3ch298gxjw5r15f4jb1";
+    sha256 = "0sa8iw91wi3515lw761j84wagab1x9rxr0mn8m08qj300z2044yk";
   };
 
   buildInputs = [ openssl ];
diff --git a/pkgs/tools/security/zzuf/default.nix b/pkgs/tools/security/zzuf/default.nix
new file mode 100644
index 000000000000..dc2cfe81746a
--- /dev/null
+++ b/pkgs/tools/security/zzuf/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchFromGitHub, autoconf, automake, libtool, pkgconfig }:
+
+stdenv.mkDerivation rec {
+  pname = "zzuf";
+  version = "0.15";
+
+  src = fetchFromGitHub {
+    owner = "samhocevar";
+    repo = "zzuf";
+    rev = "v${version}";
+    sha256 = "0li1s11xf32dafxq1jbnc8c63313hy9ry09dja2rymk9mza4x2n9";
+  };
+
+  buildInputs = [ autoconf automake libtool pkgconfig ];
+
+  preConfigure = "./bootstrap";
+
+  meta = with stdenv.lib; {
+    description = "Transparent application input fuzzer.";
+    homepage = http://caca.zoy.org/wiki/zzuf;
+    license = licenses.wtfpl;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ lihop ];
+  };
+}
diff --git a/pkgs/tools/system/hwinfo/default.nix b/pkgs/tools/system/hwinfo/default.nix
index 6a4a09f4790a..4b0150735e8f 100644
--- a/pkgs/tools/system/hwinfo/default.nix
+++ b/pkgs/tools/system/hwinfo/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "hwinfo-${version}";
-  version = "21.63";
+  version = "21.64";
 
   src = fetchFromGitHub {
     owner = "opensuse";
     repo = "hwinfo";
     rev = "${version}";
-    sha256 = "0rwc30vs7clhl0kmniw4vms1ngx3xl6l1a979hywszvzhgmdclxh";
+    sha256 = "0jdwd6xvcsyyk03hv0kyz6pn4nzmgn2ynj8gqai1fxh3l8hv48w8";
   };
 
   patchPhase = ''
diff --git a/pkgs/tools/system/inxi/default.nix b/pkgs/tools/system/inxi/default.nix
index d69398e64f14..17680de86f0d 100644
--- a/pkgs/tools/system/inxi/default.nix
+++ b/pkgs/tools/system/inxi/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "inxi-${version}";
-  version = "3.0.32-1";
+  version = "3.0.33-1";
 
   src = fetchFromGitHub {
     owner = "smxi";
     repo = "inxi";
     rev = version;
-    sha256 = "171xdip2alkp3g0k0sanaavvdcz6d0wlldj9lgj11xsdbhaaknnv";
+    sha256 = "19bfdid4zp39irsdq3m6yyqf2336c30da35qgslrzcr2vh815g8c";
   };
 
   buildInputs = [ perl ];
diff --git a/pkgs/tools/system/logcheck/default.nix b/pkgs/tools/system/logcheck/default.nix
index 25a9660aed90..4ec34a68122c 100644
--- a/pkgs/tools/system/logcheck/default.nix
+++ b/pkgs/tools/system/logcheck/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "logcheck-${version}";
-  version = "1.3.19";
+  version = "1.3.20";
   _name    = "logcheck_${version}";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/l/logcheck/${_name}.tar.xz";
-    sha256 = "1a9ccy92lg1lnx86di6i1wpdv4ccf5w7gials2iyq5915c4lqa86";
+    sha256 = "1rmkvxhcwr9gb6z4dlgr6rrx5l70hshlxdggs6qx0w1ljcmx1dlz";
   };
 
   prePatch = ''
diff --git a/pkgs/tools/system/rsyslog/default.nix b/pkgs/tools/system/rsyslog/default.nix
index 0ce6cb12a638..a907225914c4 100644
--- a/pkgs/tools/system/rsyslog/default.nix
+++ b/pkgs/tools/system/rsyslog/default.nix
@@ -11,11 +11,11 @@ let
   mkFlag = cond: name: if cond then "--enable-${name}" else "--disable-${name}";
 in
 stdenv.mkDerivation rec {
-  name = "rsyslog-8.39.0";
+  name = "rsyslog-8.1903.0";
 
   src = fetchurl {
     url = "https://www.rsyslog.com/files/download/rsyslog/${name}.tar.gz";
-    sha256 = "1d3ac448b8gj58vg7n99ffv2rvpnhhin1ni5vyby73aksvz9c7y7";
+    sha256 = "0vq50k9n3dlb02431zy2c0vhzvb4x27bp887d1xlrinf7m4kmlnh";
   };
 
   #patches = [ ./fix-gnutls-detection.patch ];
diff --git a/pkgs/tools/system/syslog-ng/default.nix b/pkgs/tools/system/syslog-ng/default.nix
index 7283819f14bf..c906d430d8f6 100644
--- a/pkgs/tools/system/syslog-ng/default.nix
+++ b/pkgs/tools/system/syslog-ng/default.nix
@@ -11,11 +11,11 @@ in
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
-  version = "3.19.1";
+  version = "3.20.1";
 
   src = fetchurl {
     url = "https://github.com/balabit/${pname}/releases/download/${name}/${name}.tar.gz";
-    sha256 = "0y2ixmbl4af4yf0a56pmg1c00nh0yvlfwr9ck9nhxbdysylk3yaw";
+    sha256 = "185xixf48rp6isg2bs2y0hm6kf6a8ncncqgz4fd12jf6x6pmhn56";
   };
 
   nativeBuildInputs = [ pkgconfig which ];
diff --git a/pkgs/tools/text/poedit/default.nix b/pkgs/tools/text/poedit/default.nix
index 53d8cf8a8a24..a5864fbc051c 100644
--- a/pkgs/tools/text/poedit/default.nix
+++ b/pkgs/tools/text/poedit/default.nix
@@ -1,20 +1,46 @@
-{ stdenv, fetchurl, wxGTK29, boost }:
+{ stdenv, fetchurl, autoconf, automake, libtool, gettext, pkgconfig, wxGTK30,
+  boost, icu, lucenepp, asciidoc, libxslt, xmlto, gtk2, gtkspell2, pugixml,
+  nlohmann_json, hicolor-icon-theme, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
-  name = "poedit-1.5.7";
+  name = "poedit-${version}";
+  version = "2.2.1";
 
   src = fetchurl {
-    url = "mirror://sourceforge/poedit/${name}.tar.gz";
-    sha256 = "0y0gbkb1jvp61qhh8sh7ar8849mwirizc42pk57zpxy84an5qlr4";
+    url = "https://github.com/vslavik/poedit/archive/v${version}-oss.tar.gz";
+    sha256 = "0brj6ysisxng2xn8l9ii2rngsj5b4rk27hzfjbp3zwb2caagd3vq";
   };
 
-  buildInputs = [ wxGTK29 boost ];
+  nativeBuildInputs = [ autoconf automake asciidoc wrapGAppsHook 
+    libxslt xmlto boost libtool pkgconfig ];
+
+  buildInputs = [ lucenepp nlohmann_json wxGTK30 icu pugixml gtk2 gtkspell2 hicolor-icon-theme ];
+
+  propagatedBuildInputs = [ gettext ];
+  
+  preConfigure = "
+    patchShebangs bootstrap
+    ./bootstrap
+  ";
+
+  configureFlags = [
+    "--without-cld2"
+    "--without-cpprest"
+    "--with-boost-libdir=${boost.out}/lib"
+    "CPPFLAGS=-I${nlohmann_json}/include/nlohmann/"
+  ];
+ 
+  preFixup = ''
+    gappsWrapperArgs+=(--prefix PATH : "${stdenv.lib.makeBinPath [ gettext ]}")
+  '';
+ 
+  enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
     description = "Cross-platform gettext catalogs (.po files) editor";
-    homepage = http://www.poedit.net/;
+    homepage = https://www.poedit.net/;
     license = licenses.mit;
     platforms = platforms.unix;
-    maintainers = with maintainers; [ domenkozar ];
+    maintainers = with maintainers; [ domenkozar genesis ];
   };
 }
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 690169095f95..cea186d5f776 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -979,6 +979,8 @@ in
 
   bluemix-cli = callPackage ../tools/admin/bluemix-cli { };
 
+  blur-effect = callPackage ../tools/graphics/blur-effect { };
+
   charles = charles4;
   inherit (callPackage ../applications/networking/charles {})
     charles3
@@ -997,6 +999,8 @@ in
     cudnn = cudnn_cudatoolkit_9_0;
   };
 
+  behdad-fonts = callPackage ../data/fonts/behdad-fonts { };
+
   blink1-tool = callPackage ../tools/misc/blink1-tool { };
 
   bliss = callPackage ../applications/science/math/bliss { };
@@ -1176,6 +1180,8 @@ in
 
   cfdyndns = callPackage ../applications/networking/dyndns/cfdyndns { };
 
+  charliecloud = callPackage ../applications/virtualization/charliecloud { };
+
   chelf = callPackage ../tools/misc/chelf { };
 
   cht-sh = callPackage ../tools/misc/cht.sh { };
@@ -1947,7 +1953,7 @@ in
 
   cksfv = callPackage ../tools/networking/cksfv { };
 
-  clementine = callPackage ../applications/audio/clementine {
+  clementine = libsForQt5.callPackage ../applications/audio/clementine {
     gst_plugins =
       with gst_all_1; [ gst-plugins-base gst-plugins-good gst-plugins-ugly gst-libav ];
   };
@@ -2124,6 +2130,8 @@ in
 
   cfssl = callPackage ../tools/security/cfssl { };
 
+  chafa = callPackage ../tools/misc/chafa { };
+
   checkbashisms = callPackage ../development/tools/misc/checkbashisms { };
 
   civetweb = callPackage ../development/libraries/civetweb { };
@@ -2345,6 +2353,8 @@ in
     inherit (pythonPackages) mutagen python wrapPython;
   };
 
+  picotts = callPackage ../tools/audio/picotts { };
+
   wgetpaste = callPackage ../tools/text/wgetpaste { };
 
   dirmngr = callPackage ../tools/security/dirmngr { };
@@ -2505,6 +2515,8 @@ in
 
   zabbix-cli = callPackage ../tools/misc/zabbix-cli { };
 
+  zzuf = callPackage ../tools/security/zzuf { };
+
   ### DEVELOPMENT / EMSCRIPTEN
 
   buildEmscriptenPackage = callPackage ../development/em-modules/generic { };
@@ -2900,6 +2912,8 @@ in
 
   gandi-cli = callPackage ../tools/networking/gandi-cli { };
 
+  gandom-fonts = callPackage ../data/fonts/gandom-fonts { };
+
   garmin-plugin = callPackage ../applications/misc/garmin-plugin {};
 
   garmintools = callPackage ../development/libraries/garmintools {};
@@ -4095,6 +4109,8 @@ in
 
   libpointmatcher = callPackage ../development/libraries/libpointmatcher { };
 
+  libmicrodns = callPackage ../development/libraries/libmicrodns { };
+
   libnids = callPackage ../tools/networking/libnids { };
 
   libtorrent = callPackage ../tools/networking/p2p/libtorrent { };
@@ -4809,9 +4825,7 @@ in
 
   pagmo2 = callPackage ../development/libraries/pagmo2 { };
 
-  pakcs = callPackage ../development/compilers/pakcs {
-    haskellPackages = haskell.packages.ghc844;
-  };
+  pakcs = callPackage ../development/compilers/pakcs { };
 
   pal = callPackage ../tools/misc/pal { };
 
@@ -4832,6 +4846,8 @@ in
 
   parallel = callPackage ../tools/misc/parallel { };
 
+  parastoo-fonts = callPackage ../data/fonts/parastoo-fonts { };
+
   parcellite = callPackage ../tools/misc/parcellite { };
 
   patchutils = callPackage ../tools/text/patchutils { };
@@ -5420,10 +5436,14 @@ in
 
   safeeyes = callPackage ../applications/misc/safeeyes { };
 
+  sahel-fonts = callPackage ../data/fonts/sahel-fonts { };
+
   salt = callPackage ../tools/admin/salt {};
 
   salut_a_toi = callPackage ../applications/networking/instant-messengers/salut-a-toi {};
 
+  samim-fonts = callPackage ../data/fonts/samim-fonts {};
+
   saml2aws = callPackage ../tools/security/saml2aws {};
 
   samplicator = callPackage ../tools/networking/samplicator { };
@@ -5744,6 +5764,8 @@ in
   strongswanTNC = strongswan.override { enableTNC = true; };
   strongswanNM  = strongswan.override { enableNetworkManager = true; };
 
+  stylish-haskell = haskell.lib.justStaticExecutables haskellPackages.stylish-haskell;
+
   su = shadow.su;
 
   subsonic = callPackage ../servers/misc/subsonic { };
@@ -6131,6 +6153,9 @@ in
 
   vimer = callPackage ../tools/misc/vimer { };
 
+  vimpager = callPackage ../tools/misc/vimpager { };
+  vimpager-latest = callPackage ../tools/misc/vimpager/latest.nix { };
+
   visidata = (newScope python3Packages) ../applications/misc/visidata {
   };
 
@@ -6474,6 +6499,8 @@ in
 
   xclip = callPackage ../tools/misc/xclip { };
 
+  xcur2png = callPackage ../tools/graphics/xcur2png { };
+
   xcwd = callPackage ../tools/X11/xcwd { };
 
   xtitle = callPackage ../tools/misc/xtitle { };
@@ -6553,8 +6580,8 @@ in
 
   yarn = callPackage ../development/tools/yarn  { };
 
-  yarn2nix = callPackage ../development/tools/yarn2nix { };
-  inherit (yarn2nix) mkYarnPackage;
+  yarn2nix = throw "Use upstream https://github.com/moretea/yarn2nix";
+  mkYarnPackage = yarn2nix;
 
   yasr = callPackage ../applications/audio/yasr { };
 
@@ -7210,7 +7237,24 @@ in
 
   dotnetPackages = recurseIntoAttrs (callPackage ./dotnet-packages.nix {});
 
-  glslang = callPackage ../development/compilers/glslang { };
+  glslang = callPackage ../development/compilers/glslang {
+    spirv-tools = spirv-tools.overrideAttrs (_: {
+      src = fetchFromGitHub {
+        owner = "KhronosGroup";
+        repo = "SPIRV-Tools";
+        rev = "117a1fd11f11e9bef9faa563c3d5156cc6ab529c";
+        sha256 = "1w5hb6sgy71g279wsghixxc75r7rsm7wki011mpz039q66827sym";
+      };
+    });
+    spirv-headers = spirv-tools.overrideAttrs (_: {
+      src = fetchFromGitHub {
+        owner = "KhronosGroup";
+        repo = "SPIRV-Tools";
+        rev = "79b6681aadcb53c27d1052e5f8a0e82a981dbf2f";
+        sha256 = "0flng2rdmc4ndq3j71h6wk1ibcjvhjrg2rzd6rv445vcsf0jh2pj";
+      };
+    });
+  };
 
   go_bootstrap = if stdenv.isAarch64 then
     srcOnly {
@@ -7890,6 +7934,8 @@ in
 
   j = callPackage ../development/interpreters/j {};
 
+  janet = callPackage ../development/interpreters/janet {};
+
   jimtcl = callPackage ../development/interpreters/jimtcl {};
 
   jmeter = callPackage ../applications/networking/jmeter {};
@@ -8241,6 +8287,8 @@ in
   bundlerEnv = callPackage ../development/ruby-modules/bundler-env { };
   bundlerApp = callPackage ../development/ruby-modules/bundler-app { };
 
+  bundler-audit = callPackage ../tools/security/bundler-audit { };
+
   solargraph = callPackage ../development/ruby-modules/solargraph { };
 
   inherit (callPackage ../development/interpreters/ruby {
@@ -8373,6 +8421,16 @@ in
     binutils-arm-embedded = pkgsCross.arm-embedded.buildPackages.binutils;
   };
 
+  msp430GccSupport = callPackage ../development/misc/msp430/gcc-support.nix { };
+
+  msp430Newlib      = callPackage ../development/misc/msp430/newlib.nix { };
+  msp430NewlibCross = callPackage ../development/misc/msp430/newlib.nix {
+    inherit (buildPackages.xorg) lndir;
+    newlib = newlibCross;
+  };
+
+  mspdebug = callPackage ../development/misc/msp430/mspdebug.nix { };
+
   pharo-vms = callPackage ../development/pharo/vm { };
   pharo = pharo-vms.multi-vm-wrapper;
   pharo-cog32 = pharo-vms.cog32;
@@ -8423,7 +8481,7 @@ in
   apacheAnt_1_9 = callPackage ../development/tools/build-managers/apache-ant/1.9.nix { };
   ant = apacheAnt;
 
-  apacheKafka = apacheKafka_2_1;
+  apacheKafka = apacheKafka_2_2;
   apacheKafka_0_9 = callPackage ../servers/apache-kafka { majorVersion = "0.9"; };
   apacheKafka_0_10 = callPackage ../servers/apache-kafka { majorVersion = "0.10"; };
   apacheKafka_0_11 = callPackage ../servers/apache-kafka { majorVersion = "0.11"; };
@@ -8431,6 +8489,7 @@ in
   apacheKafka_1_1 = callPackage ../servers/apache-kafka { majorVersion = "1.1"; };
   apacheKafka_2_0 = callPackage ../servers/apache-kafka { majorVersion = "2.0"; };
   apacheKafka_2_1 = callPackage ../servers/apache-kafka { majorVersion = "2.1"; };
+  apacheKafka_2_2 = callPackage ../servers/apache-kafka { majorVersion = "2.2"; };
 
   kt = callPackage ../tools/misc/kt {};
 
@@ -9220,6 +9279,8 @@ in
 
   selendroid = callPackage ../development/tools/selenium/selendroid { };
 
+  semver-tool = callPackage ../development/tools/misc/semver-tool { };
+
   sconsPackages = dontRecurseIntoAttrs (callPackage ../development/tools/build-managers/scons { });
   scons = sconsPackages.scons_latest;
 
@@ -9270,6 +9331,7 @@ in
 
   spin = callPackage ../development/tools/analysis/spin { };
 
+  spirv-headers = callPackage ../development/libraries/spirv-headers { };
   spirv-tools = callPackage ../development/tools/spirv-tools { };
 
   splint = callPackage ../development/tools/analysis/splint {
@@ -9601,11 +9663,7 @@ in
 
   c-blosc = callPackage ../development/libraries/c-blosc { };
 
-  cachix = (callPackage ../development/tools/cachix { }).overrideAttrs (drv: {
-    meta = drv.meta // {
-      hydraPlatforms = stdenv.lib.platforms.unix;
-    };
-  });
+  cachix = callPackage ../development/tools/cachix { };
 
   capnproto = callPackage ../development/libraries/capnproto { };
 
@@ -10145,6 +10203,7 @@ in
     else if name == "bionic" then targetPackages.bionic or bionic
     else if name == "uclibc" then targetPackages.uclibcCross or uclibcCross
     else if name == "avrlibc" then targetPackages.avrlibcCross or avrlibcCross
+    else if name == "newlib" && stdenv.targetPlatform.isMsp430 then targetPackages.msp430NewlibCross or msp430NewlibCross
     else if name == "newlib" then targetPackages.newlibCross or newlibCross
     else if name == "musl" then targetPackages.muslCross or muslCross
     else if name == "msvcrt" then targetPackages.windows.mingw_w64 or windows.mingw_w64
@@ -11695,6 +11754,8 @@ in
       };
   });
 
+  libykclient = callPackage ../development/libraries/libykclient { };
+
   libykneomgr = callPackage ../development/libraries/libykneomgr { };
 
   libytnef = callPackage ../development/libraries/libytnef { };
@@ -11917,6 +11978,8 @@ in
     nix = nixUnstable;
   };
 
+  nika-fonts = callPackage ../data/fonts/nika-fonts { };
+
   nlohmann_json = callPackage ../development/libraries/nlohmann_json { };
 
   nntp-proxy = callPackage ../applications/networking/nntp-proxy { };
@@ -13102,7 +13165,33 @@ in
   vulkan-headers = callPackage ../development/libraries/vulkan-headers { };
   vulkan-loader = callPackage ../development/libraries/vulkan-loader { };
   vulkan-tools = callPackage ../tools/graphics/vulkan-tools { };
-  vulkan-validation-layers = callPackage ../development/tools/vulkan-validation-layers { };
+  vulkan-validation-layers = callPackage ../development/tools/vulkan-validation-layers {
+    glslang = (glslang.override {
+      spirv-tools = spirv-tools.overrideAttrs (_: {
+        src = fetchFromGitHub {
+          owner = "KhronosGroup";
+          repo = "SPIRV-Tools";
+          rev = "5994ae2a045015004cce24802dc47c33736486ea";
+          sha256 = "1w1zkql03aggma31nz4xb1b5waxxf2jcg99slzvmihg9ngmmlbm6";
+        };
+      });
+      spirv-headers = spirv-tools.overrideAttrs (_: {
+        src = fetchFromGitHub {
+          owner = "KhronosGroup";
+          repo = "SPIRV-Headers";
+          rev = "79b6681aadcb53c27d1052e5f8a0e82a981dbf2f";
+          sha256 = "0flng2rdmc4ndq3j71h6wk1ibcjvhjrg2rzd6rv445vcsf0jh2pj";
+        };
+      });
+    }).overrideAttrs (_: {
+      src = fetchFromGitHub {
+        owner = "KhronosGroup";
+        repo = "glslang";
+        rev = "5432f0dd8f331f15182681664d7486681e8514e6";
+        sha256 = "0spdm93qkx83z8bks61am2g3ary7fkibvhqq706nj4z9wx4k0cbm";
+      };
+    });
+  };
 
   vtkWithQt4 = vtk.override { qtLib = qt4; };
 
@@ -13252,6 +13341,8 @@ in
 
   yubioath-desktop = libsForQt5.callPackage ../applications/misc/yubioath-desktop { };
 
+  yubico-pam = callPackage ../development/libraries/yubico-pam { };
+
   yubico-piv-tool = callPackage ../tools/misc/yubico-piv-tool { };
 
   yubikey-manager = callPackage ../tools/misc/yubikey-manager { };
@@ -15846,6 +15937,8 @@ in
 
   lobster-two = callPackage ../data/fonts/lobster-two {};
 
+  logitech-udev-rules = callPackage ../os-specific/linux/logitech-udev-rules {};
+
   # lohit-fonts.assamese lohit-fonts.bengali lohit-fonts.devanagari lohit-fonts.gujarati lohit-fonts.gurmukhi
   # lohit-fonts.kannada lohit-fonts.malayalam lohit-fonts.marathi lohit-fonts.nepali lohit-fonts.odia
   # lohit-fonts.tamil-classical lohit-fonts.tamil lohit-fonts.telugu
@@ -15862,6 +15955,8 @@ in
 
   man-pages = callPackage ../data/documentation/man-pages { };
 
+  manrope = callPackage ../data/fonts/manrope { };
+
   matcha = callPackage ../data/themes/matcha { };
 
   materia-theme = callPackage ../data/themes/materia-theme { };
@@ -15953,6 +16048,8 @@ in
 
   papis = callPackage ../tools/misc/papis { };
 
+  paps = callPackage ../tools/misc/paps { };
+
   pecita = callPackage ../data/fonts/pecita {};
 
   paratype-pt-mono = callPackage ../data/fonts/paratype-pt/mono.nix {};
@@ -16084,6 +16181,8 @@ in
   source-han-serif-simplified-chinese = sourceHanSerifPackages.simplified-chinese;
   source-han-serif-traditional-chinese = sourceHanSerifPackages.traditional-chinese;
 
+  spleen = callPackage ../data/fonts/spleen { };
+
   sudo-font = callPackage ../data/fonts/sudo { };
 
   inherit (callPackages ../data/fonts/tai-languages { }) tai-ahom;
@@ -16487,7 +16586,7 @@ in
 
   notmuch-bower = callPackage ../applications/networking/mailreaders/notmuch-bower { };
 
-  brig = callPackages ../applications/networking/brig { };
+  brig = callPackage ../applications/networking/brig { };
 
   bristol = callPackage ../applications/audio/bristol { };
 
@@ -16513,6 +16612,7 @@ in
   calligra = libsForQt5.callPackage ../applications/office/calligra {
     inherit (kdeApplications) akonadi-calendar akonadi-contacts;
     openjpeg = openjpeg_1;
+    poppler = poppler_0_61;
   };
 
   perkeep = callPackage ../applications/misc/perkeep { };
@@ -17633,7 +17733,7 @@ in
 
   graphicsmagick-imagemagick-compat = callPackage ../applications/graphics/graphicsmagick/compat.nix { };
 
-  grisbi = callPackage ../applications/office/grisbi { gtk = gtk2; };
+  grisbi = callPackage ../applications/office/grisbi { gtk = gtk3; };
 
   gtkpod = callPackage ../applications/audio/gtkpod { };
 
@@ -18116,7 +18216,13 @@ in
 
   kipi-plugins = libsForQt5.callPackage ../applications/graphics/kipi-plugins { };
 
-  kitty = callPackage ../applications/misc/kitty { };
+  kitty = callPackage ../applications/misc/kitty {
+    harfbuzz = if stdenv.isDarwin then harfbuzz.override {
+      withCoreText = true;
+    } else harfbuzz;
+    inherit (darwin) cf-private;
+    inherit (darwin.apple_sdk.frameworks) Cocoa CoreGraphics Foundation IOKit Kernel OpenGL;
+  };
 
   kiwix = callPackage ../applications/misc/kiwix { };
 
@@ -19085,6 +19191,10 @@ in
 
   protonmail-bridge = libsForQt511.callPackage ../applications/networking/protonmail-bridge { };
 
+  protonvpn-cli = callPackage ../applications/networking/protonvpn-cli { };
+
+  ps2client = callPackage ../applications/networking/ps2client { };
+
   psi = callPackage ../applications/networking/instant-messengers/psi { };
 
   psi-plus = callPackage ../applications/networking/instant-messengers/psi-plus { };
@@ -20896,6 +21006,8 @@ in
 
   gogui = callPackage ../games/gogui {};
 
+  gscrabble = python3Packages.callPackage ../games/gscrabble {};
+
   gshogi = python3Packages.callPackage ../games/gshogi {};
 
   gtetrinet = callPackage ../games/gtetrinet {
@@ -20959,6 +21071,8 @@ in
   liquidwar5 = callPackage ../games/liquidwar/5.nix {
   };
 
+  lugaru = callPackage ../games/lugaru {};
+
   macopix = callPackage ../games/macopix {
     gtk = gtk2;
   };
@@ -21656,7 +21770,7 @@ in
   igv = callPackage ../applications/science/biology/igv { };
 
   inormalize = callPackage ../applications/science/biology/inormalize { };
-  
+
   itsx = callPackage ../applications/science/biology/itsx { };
 
   iv = callPackage ../applications/science/biology/iv {
@@ -21683,6 +21797,8 @@ in
 
   mrbayes = callPackage ../applications/science/biology/mrbayes { };
 
+  megahit = callPackage ../applications/science/biology/megahit { };
+
   messer-slim = callPackage ../applications/science/biology/messer-slim { };
 
   minc_tools = callPackage ../applications/science/biology/minc-tools { };
@@ -21726,6 +21842,8 @@ in
 
   somatic-sniper = callPackage ../applications/science/biology/somatic-sniper { };
 
+  stacks = callPackage ../applications/science/biology/stacks { };
+
   star = callPackage ../applications/science/biology/star { };
 
   strelka = callPackage ../applications/science/biology/strelka { };
@@ -22592,7 +22710,9 @@ in
     inherit (darwin.apple_sdk.frameworks) Security;
   };
 
-  websocat = callPackage ../tools/misc/websocat { };
+  websocat = callPackage ../tools/misc/websocat {
+    inherit (darwin.apple_sdk.frameworks) Security;
+  };
 
   epkowa = callPackage ../misc/drivers/epkowa { };
 
@@ -23339,6 +23459,10 @@ in
     inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL;
   };
 
+  bullet-roboschool = callPackage ../development/libraries/bullet/roboschool-fork.nix {
+    inherit (darwin.apple_sdk.frameworks) Cocoa OpenGL;
+  };
+
   inherit (callPackages ../development/libraries/spdlog { })
     spdlog_0 spdlog_1;
 
diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix
index 5f55d88cb772..f08f2eacc23c 100644
--- a/pkgs/top-level/coq-packages.nix
+++ b/pkgs/top-level/coq-packages.nix
@@ -19,6 +19,7 @@ let
       coq-ext-lib = callPackage ../development/coq-modules/coq-ext-lib {};
       coq-extensible-records = callPackage ../development/coq-modules/coq-extensible-records {};
       coq-haskell = callPackage ../development/coq-modules/coq-haskell { };
+      coqhammer = callPackage ../development/coq-modules/coqhammer {};
       coqprime = callPackage ../development/coq-modules/coqprime {};
       coquelicot = callPackage ../development/coq-modules/coquelicot {};
       corn = callPackage ../development/coq-modules/corn {};
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 044fff3dedbc..598197888b61 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -1752,6 +1752,18 @@ let
     propagatedBuildInputs = [ CGI ];
   };
 
+  CGIMinimal = buildPerlPackage rec {
+    name = "CGI-Minimal-1.29";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/S/SN/SNOWHARE/${name}.tar.gz";
+      sha256 = "36c785ffacf5cdee4f1a7219ca1848b7e1700bdd71cd9116e1f00545ec88475d";
+    };
+    meta = {
+      description = "A lightweight CGI form processing package";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   CGIPSGI = buildPerlPackage {
     name = "CGI-PSGI-0.15";
     src = fetchurl {
@@ -4030,6 +4042,8 @@ let
 
   DBDmysql = callPackage ../development/perl-modules/DBD-mysql { };
 
+  DBDOracle = callPackage ../development/perl-modules/DBD-Oracle { };
+
   DBDPg = callPackage ../development/perl-modules/DBD-Pg { };
 
   DBDsybase = callPackage ../development/perl-modules/DBD-sybase { };
diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix
index ba4ce18f04df..e7763bc557b6 100644
--- a/pkgs/top-level/php-packages.nix
+++ b/pkgs/top-level/php-packages.nix
@@ -369,12 +369,12 @@ let
   };
 
   phpcs = pkgs.stdenv.mkDerivation rec {
-    name = "phpcs-${version}";
-    version = "3.4.0";
+    pname = "phpcs";
+    version = "3.4.1";
 
     src = pkgs.fetchurl {
       url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcs.phar";
-      sha256 = "1d6zf0ab76r5ibb80q46silhy87hrwh50gfvhd0i25wzad7r09mw";
+      sha256 = "07zwj8msy0awnrwmv3gcilbsj9jyrvxw0q523yf16ydv55422pl0";
     };
 
     phases = [ "installPhase" ];
@@ -396,12 +396,12 @@ let
   };
 
   phpcbf = pkgs.stdenv.mkDerivation rec {
-    name = "phpcbf-${version}";
-    version = "3.4.0";
+    pname = "phpcbf";
+    version = "3.4.1";
 
     src = pkgs.fetchurl {
       url = "https://github.com/squizlabs/PHP_CodeSniffer/releases/download/${version}/phpcbf.phar";
-      sha256 = "0iscs4hg1msk8198pmkdmbxn1g53gbq3i5qgszs0bi6hz3ng9ag9";
+      sha256 = "052fsgzc39mfjy34mv1ip2qdghypsy218wfp8vh3a593pzkmzdcv";
     };
 
     phases = [ "installPhase" ];
@@ -423,12 +423,12 @@ let
   };
 
   phpstan = pkgs.stdenv.mkDerivation rec {
-    name = "phpstan-${version}";
-    version = "0.11.3";
+    pname = "phpstan";
+    version = "0.11.5";
 
     src = pkgs.fetchurl {
       url = "https://github.com/phpstan/phpstan/releases/download/${version}/phpstan.phar";
-      sha256 = "0wiyrjymnhh0bzf0di27k59j2dprczwxiq19spj9gyfkbfw8fgci";
+      sha256 = "13akllfr5dav0y61i4ym5ww8z32ynwj5lpvsfiwx6z52avmcrc29";
     };
 
     phases = [ "installPhase" ];
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index d3463a6a5ed1..1cabba8ea42f 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -274,6 +274,8 @@ in {
     bap = pkgs.ocamlPackages.bap;
   };
 
+  baselines = callPackage ../development/python-modules/baselines { };
+
   bash_kernel = callPackage ../development/python-modules/bash_kernel { };
 
   bayespy = callPackage ../development/python-modules/bayespy { };
@@ -615,6 +617,8 @@ in {
 
   pybind11 = callPackage ../development/python-modules/pybind11 { };
 
+  pybullet = callPackage ../development/python-modules/pybullet { };
+
   pycairo = callPackage ../development/python-modules/pycairo {
     inherit (pkgs) pkgconfig;
   };
@@ -1363,7 +1367,10 @@ in {
 
   cheetah = callPackage ../development/python-modules/cheetah { };
 
-  cherrypy = callPackage ../development/python-modules/cherrypy {};
+  cherrypy = if isPy3k then
+    callPackage ../development/python-modules/cherrypy { }
+  else
+    callPackage ../development/python-modules/cherrypy/17.nix { };
 
   cfgv = callPackage ../development/python-modules/cfgv { };
 
@@ -3185,6 +3192,8 @@ in {
 
   minimock = callPackage ../development/python-modules/minimock { };
 
+  minio = callPackage ../development/python-modules/minio { };
+
   moviepy = callPackage ../development/python-modules/moviepy { };
 
   mozterm = callPackage ../development/python-modules/mozterm { };
@@ -4025,6 +4034,10 @@ in {
 
   retry_decorator = callPackage ../development/python-modules/retry_decorator { };
 
+  roboschool = callPackage ../development/python-modules/roboschool {
+    inherit (pkgs) pkgconfig; # use normal pkgconfig, not the python package
+  };
+
   qdarkstyle = callPackage ../development/python-modules/qdarkstyle { };
 
   quamash = callPackage ../development/python-modules/quamash { };
@@ -4725,6 +4738,8 @@ in {
 
   zfec = callPackage ../development/python-modules/zfec { };
 
+  zipp = callPackage ../development/python-modules/zipp { };
+
   zope_broken = callPackage ../development/python-modules/zope_broken { };
 
   zope_component = callPackage ../development/python-modules/zope_component { };
@@ -5445,6 +5460,8 @@ in {
   lzstring = callPackage ../development/python-modules/lzstring { };
 
   flickrapi = callPackage ../development/python-modules/flickrapi { };
+
+  aioesphomeapi = callPackage ../development/python-modules/aioesphomeapi { };
 });
 
 in fix' (extends overrides packages)
diff --git a/pkgs/top-level/release-cross.nix b/pkgs/top-level/release-cross.nix
index b06bb5393bea..f4210fcfc72e 100644
--- a/pkgs/top-level/release-cross.nix
+++ b/pkgs/top-level/release-cross.nix
@@ -140,6 +140,7 @@ in
   android64 = mapTestOnCross lib.systems.examples.aarch64-android-prebuilt (linuxCommon // {
   });
 
+  msp430 = mapTestOnCross lib.systems.examples.msp430 embedded;
   avr = mapTestOnCross lib.systems.examples.avr embedded;
   arm-embedded = mapTestOnCross lib.systems.examples.arm-embedded embedded;
   powerpc-embedded = mapTestOnCross lib.systems.examples.ppc-embedded embedded;